cmd2d.h revision bdcaa8d0
1bdcaa8d0Smrg#ifndef __CMD2D_H__ 2bdcaa8d0Smrg#define __CMD2D_H__ 3bdcaa8d0Smrg 4bdcaa8d0Smrg/* 5bdcaa8d0Smrg * commands the 2d microcode offers 6bdcaa8d0Smrg */ 7bdcaa8d0Smrg/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/cmd2d.h,v 1.2 1999/10/14 04:43:14 dawes Exp $ */ 8bdcaa8d0Smrg 9bdcaa8d0Smrg#define CMD_SETUP 32 10bdcaa8d0Smrg#define CMD_SET_PIX_REG 2 11bdcaa8d0Smrg#define CMD_RECT_SOLID 1 12bdcaa8d0Smrg#define CMD_RECT_SOLID_ROP 41 13bdcaa8d0Smrg#define CMD_SET_FGCOLOR 50 14bdcaa8d0Smrg#define CMD_DD_RECT_SOLID 38 15bdcaa8d0Smrg#define CMD_SCREEN_BLT 12 16bdcaa8d0Smrg#define CMD_DD_SCREEN_BLT 37 17bdcaa8d0Smrg#define CMD_BITBLT_MS_COLOR 7 18bdcaa8d0Smrg#define CMD_BITBLT_MS_MONO 22 19bdcaa8d0Smrg#define CMD_LOAD_COLOR_BRUSH 5 20bdcaa8d0Smrg#define CMD_RECT_COLOR_BRUSH 6 21bdcaa8d0Smrg#define CMD_RECT_COLOR_BRUSH_ROP 24 22bdcaa8d0Smrg#define CMD_LOAD_MONO_BRUSH 4 23bdcaa8d0Smrg#define CMD_RECT_MONO_BRUSH 3 24bdcaa8d0Smrg#define CMD_RECT_MONO_BRUSH_ROP 42 25bdcaa8d0Smrg#define CMD_SET_PIXEL 34 26bdcaa8d0Smrg#define CMD_GET_PIXEL 9 27bdcaa8d0Smrg#define CMD_LINE_SOLID 20 28bdcaa8d0Smrg#define CMD_LINE_STYLE 21 29bdcaa8d0Smrg#define CMD_SCAN_LINE_SOLID 15 30bdcaa8d0Smrg#define CMD_BSCAN_SOLID 19 31bdcaa8d0Smrg#define CMD_BSCAN_COLOR 14 32bdcaa8d0Smrg#define CMD_BSCAN_MONO 13 33bdcaa8d0Smrg#define CMD_ENDSCAN 18 34bdcaa8d0Smrg#define CMD_SCANLINE_COLOR_BRUSH 17 35bdcaa8d0Smrg#define CMD_SCANLINE_MONO_BRUSH 16 36bdcaa8d0Smrg#define CMD_STRETCH_BLT 23 37bdcaa8d0Smrg#define CMD_DD_STRETCH_BLT 39 38bdcaa8d0Smrg#define CMD_LOAD_COLOR_TABLE 25 39bdcaa8d0Smrg#define CMD_BLTDIB1 26 40bdcaa8d0Smrg#define CMD_BLTDIB4 27 41bdcaa8d0Smrg#define CMD_BLTDIB8 28 42bdcaa8d0Smrg#define CMD_BLTRLE4 30 43bdcaa8d0Smrg#define CMD_BLTRLE8 31 44bdcaa8d0Smrg#define CMD_SET_PALETTE 33 45bdcaa8d0Smrg#define CMD_SETCLIPPING 36 46bdcaa8d0Smrg#define CMD_DRAWGLYPHS 35 47bdcaa8d0Smrg#define CMD_DD_YUV2RGB 43 48bdcaa8d0Smrg#define CMD_DD_YUV2RGBCk 44 49bdcaa8d0Smrg 50bdcaa8d0Smrg 51bdcaa8d0Smrg 52bdcaa8d0Smrg/* 53bdcaa8d0Smrg * pixel formats (R: red, G: green, B: blue, I: intensity/index, A: alpha) 54bdcaa8d0Smrg * 55bdcaa8d0Smrg * <ml>: this is redundant; one should use the enums in vtypes.h. 56bdcaa8d0Smrg */ 57bdcaa8d0Smrg 58bdcaa8d0Smrg#define FMT_SOURCE 0 59bdcaa8d0Smrg#define FMT_8_332_RGB 1 60bdcaa8d0Smrg#define FMT_8_I 2 61bdcaa8d0Smrg#define FMT_8_A 3 62bdcaa8d0Smrg#define FMT_16_565_RGB 4 63bdcaa8d0Smrg#define FMT_16_4444_ARGB 5 64bdcaa8d0Smrg#define FMT_16_1555_ARGB 6 65bdcaa8d0Smrg#define FMT_4I_565_RGB 8 66bdcaa8d0Smrg#define FMT_4I_444_ARGB 9 67bdcaa8d0Smrg#define FMT_4I_1555_ARGB 0xa 68bdcaa8d0Smrg#define FMT_32_8888_ARGB 0xc 69bdcaa8d0Smrg#define FMT_32_888_Y0CrY1Cb 0xd 70bdcaa8d0Smrg 71bdcaa8d0Smrg 72bdcaa8d0Smrg 73bdcaa8d0Smrg/* 74bdcaa8d0Smrg * stride values for address calculation 75bdcaa8d0Smrg */ 76bdcaa8d0Smrg 77bdcaa8d0Smrg#define STRIDE0_0 0 78bdcaa8d0Smrg#define STRIDE0_8 1 79bdcaa8d0Smrg#define STRIDE0_9 2 80bdcaa8d0Smrg#define STRIDE0_10 3 81bdcaa8d0Smrg#define STRIDE0_2 4 82bdcaa8d0Smrg#define STRIDE1_0 0 83bdcaa8d0Smrg#define STRIDE1_4 1 84bdcaa8d0Smrg#define STRIDE1_5 2 85bdcaa8d0Smrg#define STRIDE1_6 3 86bdcaa8d0Smrg#define STRIDE1_7 4 87bdcaa8d0Smrg#define STRIDE1_10 5 88bdcaa8d0Smrg#define STRIDE1_11 6 89bdcaa8d0Smrg#define STRIDE1_12 7 90bdcaa8d0Smrg 91bdcaa8d0Smrg 92bdcaa8d0Smrg 93bdcaa8d0Smrg/* 94bdcaa8d0Smrg * raster operations (S: source, D: destination, N: not) 95bdcaa8d0Smrg */ 96bdcaa8d0Smrg 97bdcaa8d0Smrg#define ROP_ALLBITS0 0 98bdcaa8d0Smrg#define ROP_NOR_SD 1 99bdcaa8d0Smrg#define ROP_AND_NSD 2 100bdcaa8d0Smrg#define ROP_NOT_S 3 101bdcaa8d0Smrg#define ROP_AND_SND 4 102bdcaa8d0Smrg#define ROP_NOT_D 5 103bdcaa8d0Smrg#define ROP_XOR_SD 6 104bdcaa8d0Smrg#define ROP_NAND_SD 7 105bdcaa8d0Smrg#define ROP_AND_SD 8 106bdcaa8d0Smrg#define ROP_XNOR_SD 9 107bdcaa8d0Smrg#define ROP_D 0xa 108bdcaa8d0Smrg#define ROP_OR_NSD 0xb 109bdcaa8d0Smrg#define ROP_S 0xc 110bdcaa8d0Smrg#define ROP_OR_SND 0xd 111bdcaa8d0Smrg#define ROP_OR_SD 0xe 112bdcaa8d0Smrg#define ROP_ALLBITS1 0xf 113bdcaa8d0Smrg 114bdcaa8d0Smrg 115bdcaa8d0Smrg 116bdcaa8d0Smrg/* 117bdcaa8d0Smrg * ... modes 118bdcaa8d0Smrg */ 119bdcaa8d0Smrg 120bdcaa8d0Smrg#define MODE_TRANSPARENT 0 121bdcaa8d0Smrg#define MODE_OPAQUE 1 122bdcaa8d0Smrg 123bdcaa8d0Smrg 124bdcaa8d0Smrg 125bdcaa8d0Smrg/* 126bdcaa8d0Smrg * 8x8 predefined monochrome brushes 127bdcaa8d0Smrg */ 128bdcaa8d0Smrg 129bdcaa8d0Smrg#define HS_HORIZONTAL 0 130bdcaa8d0Smrg#define HS_VERTICAL 1 131bdcaa8d0Smrg#define HS_FDIAGONAL 2 132bdcaa8d0Smrg#define HS_BDIAGONAL 3 133bdcaa8d0Smrg#define HS_CROSS 4 134bdcaa8d0Smrg#define HS_DIAGCROSS 5 135bdcaa8d0Smrg 136bdcaa8d0Smrg 137bdcaa8d0Smrg 138bdcaa8d0Smrg/* 139bdcaa8d0Smrg * pen styles for styled lined 140bdcaa8d0Smrg */ 141bdcaa8d0Smrg 142bdcaa8d0Smrg#define PS_DASH 1 143bdcaa8d0Smrg#define PS_DOT 2 144bdcaa8d0Smrg#define PS_DASHDOT 3 145bdcaa8d0Smrg#define PS_DASHDOTDOT 4 146bdcaa8d0Smrg 147bdcaa8d0Smrg/* end of __CMD2D_H__ */ 148bdcaa8d0Smrg#endif 149