IBM.h revision a5e7ae69e440f6816420fc99599f044e79e716b6
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
1f48f8236de7de97be1c6b9d06bef50b379c8801jenkins#include <xf86RamDac.h>
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT RamDacHelperRecPtr IBMramdacProbe(ScrnInfoPtr pScrn,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk RamDacSupportedInfoRecPtr
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk ramdacs);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT void IBMramdacSave(ScrnInfoPtr pScrn, RamDacRecPtr RamDacRec,
54df19ee6525730717441d625c476fbe32448945Peter Major RamDacRegRecPtr RamDacRegRec);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT void IBMramdacRestore(ScrnInfoPtr pScrn,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk RamDacRecPtr RamDacRec,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk RamDacRegRecPtr RamDacRegRec);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT void IBMramdac526SetBpp(ScrnInfoPtr pScrn,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk RamDacRegRecPtr RamDacRegRec);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT void IBMramdac640SetBpp(ScrnInfoPtr pScrn,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk RamDacRegRecPtr RamDacRegRec);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT unsigned long IBMramdac526CalculateMNPCForClock(unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk RefClock,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk ReqClock,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk char
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk IsPixClock,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk MinClock,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk MaxClock,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk *rM,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk *rN,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk *rP,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk *rC);
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenkextern _X_EXPORT unsigned long IBMramdac640CalculateMNPCForClock(unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk RefClock,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk ReqClock,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk char
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk IsPixClock,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk MinClock,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk MaxClock,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk *rM,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk *rN,
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk unsigned long
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk *rP,
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk unsigned long
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk *rC);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT void IBMramdac526HWCursorInit(xf86CursorInfoPtr infoPtr);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT void IBMramdac640HWCursorInit(xf86CursorInfoPtr infoPtr);
a277eacba0534b81b8bd19173f7060a3971d03dajeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenktypedef void IBMramdac526SetBppProc(ScrnInfoPtr, RamDacRegRecPtr);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenkextern _X_EXPORT IBMramdac526SetBppProc *IBMramdac526SetBppWeak(void);
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
247203cf5bb5bc7e81871318633899d2c44416b0Mark Craig#define IBM524_RAMDAC ((VENDOR_IBM << 16) | 0x00)
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major#define IBM524A_RAMDAC ((VENDOR_IBM << 16) | 0x01)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM525_RAMDAC ((VENDOR_IBM << 16) | 0x02)
a149d11dfee7bcc667e71ec330b7566dd0437c1fjeff.schenk#define IBM526_RAMDAC ((VENDOR_IBM << 16) | 0x03)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM526DB_RAMDAC ((VENDOR_IBM << 16) | 0x04)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM528_RAMDAC ((VENDOR_IBM << 16) | 0x05)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM528A_RAMDAC ((VENDOR_IBM << 16) | 0x06)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM624_RAMDAC ((VENDOR_IBM << 16) | 0x07)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM624DB_RAMDAC ((VENDOR_IBM << 16) | 0x08)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_RAMDAC ((VENDOR_IBM << 16) | 0x09)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/*
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk * IBM Ramdac registers
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_REF_FREQ_1 14.31818
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_REF_FREQ_2 50.00000
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_rev 0x00
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_id 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_misc_clock 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sync 0x03
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_hsync_pos 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_pwr_mgmt 0x05
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_dac_op 0x06
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_pal_ctrl 0x07
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk 0x08 /* not RGB525 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_pix_fmt 0x0a
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_8bpp 0x0b
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_16bpp 0x0c
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_24bpp 0x0d
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_32bpp 0x0e
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_pll_ctrl1 0x10
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_pll_ctrl2 0x11
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_pll_ref_div_fix 0x14
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk_ref_div 0x15 /* not RGB525 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk_vco_div 0x16 /* not RGB525 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* #define IBMRGB_f0 0x20 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk_n 0x15
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk_m 0x16
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk_p 0x17
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_sysclk_c 0x18
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_m0 0x20
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_n0 0x21
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_p0 0x22
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_c0 0x23
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_m1 0x24
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_n1 0x25
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_p1 0x26
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_c1 0x27
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_m2 0x28
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_n2 0x29
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_p2 0x2a
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_c2 0x2b
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_m3 0x2c
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_n3 0x2d
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_p3 0x2e
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_c3 0x2f
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define IBMRGB_curs 0x30
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_curs_xl 0x31
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_curs_xh 0x32
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_curs_yl 0x33
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_curs_yh 0x34
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_curs_hot_x 0x35
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_curs_hot_y 0x36
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_curs_col1_r 0x40
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_curs_col1_g 0x41
66f6c6680ec1673ff6f1094a9e2b74967dd6bfb7jeff.schenk#define IBMRGB_curs_col1_b 0x42
133bed8ec2ccc857a62d6301f67c3ef3d36aa333Peter Major#define IBMRGB_curs_col2_r 0x43
66f6c6680ec1673ff6f1094a9e2b74967dd6bfb7jeff.schenk#define IBMRGB_curs_col2_g 0x44
16651a2450d2672ea2eb2751bd775918497432d7Phill Cunnington#define IBMRGB_curs_col2_b 0x45
79943d71bcf8d4933e74f29a1b0e87f8898508cbPeter Major#define IBMRGB_curs_col3_r 0x46
79943d71bcf8d4933e74f29a1b0e87f8898508cbPeter Major#define IBMRGB_curs_col3_g 0x47
79943d71bcf8d4933e74f29a1b0e87f8898508cbPeter Major#define IBMRGB_curs_col3_b 0x48
64d3fa08513695d9a3c20bdd22593aa9d0d900b4Alin Brici#define IBMRGB_border_col_r 0x60
f720a6e4cf0eab17d4a0fc5177e85bb34fbfd74dPhill Cunnington#define IBMRGB_border_col_g 0x61
a277eacba0534b81b8bd19173f7060a3971d03dajeff.schenk#define IBMRGB_botder_col_b 0x62
5ce76bd49525a07b4cd6e6558bc44a8a8eae47b7Jason Lemay#define IBMRGB_key 0x68
0701f265e9184ff9b1231d191d007322fc133bdbjeff.schenk#define IBMRGB_key_mask 0x6C
40b03a530836fb4b75141456a5ad991d7130d91djeff.schenk#define IBMRGB_misc1 0x70
247203cf5bb5bc7e81871318633899d2c44416b0Mark Craig#define IBMRGB_misc2 0x71
247203cf5bb5bc7e81871318633899d2c44416b0Mark Craig#define IBMRGB_misc3 0x72
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_misc4 0x73 /* not RGB525 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBMRGB_key_control 0x78
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_dac_sense 0x82
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_misr_r 0x84
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_misr_g 0x86
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_misr_b 0x88
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_pll_vco_div_in 0x8e
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_pll_ref_div_in 0x8f
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_vram_mask_0 0x90
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_vram_mask_1 0x91
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_vram_mask_2 0x92
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_vram_mask_3 0x93
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define IBMRGB_curs_array 0x100
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk/* Constants rgb525.h */
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk/* RGB525_REVISION_LEVEL */
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define RGB525_PRODUCT_REV_LEVEL 0xf0
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk/* RGB525_ID */
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define RGB525_PRODUCT_ID 0x01
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk/* RGB525_MISC_CTRL_1 */
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define MISR_CNTL_ENABLE 0x80
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define VMSK_CNTL_ENABLE 0x40
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define PADR_RDMT_RDADDR 0x0
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define PADR_RDMT_PAL_STATE 0x20
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define SENS_DSAB_DISABLE 0x10
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define SENS_SEL_BIT3 0x0
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define SENS_SEL_BIT7 0x08
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define VRAM_SIZE_32 0x0
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define VRAM_SIZE_64 0x01
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major/* RGB525_MISC_CTRL_2 */
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define PCLK_SEL_LCLK 0x0
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define PCLK_SEL_PLL 0x40
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define PCLK_SEL_EXT 0x80
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define INTL_MODE_ENABLE 0x20
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define BLANK_CNTL_ENABLE 0x10
725ea03dc2bbc656d209dc7b143c795be153cd10Peter Major#define COL_RES_6BIT 0x0
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define COL_RES_8BIT 0x04
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define PORT_SEL_VGA 0x0
2feee3bd4482cbe7e4a8cf1a228bf17723b13934jeff.schenk#define PORT_SEL_VRAM 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk/* RGB525_MISC_CTRL_3 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SWAP_RB 0x80
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SWAP_WORD_LOHI 0x0
617b034302efb4a2ad6c7c02083c15679a3b710cPeter Major#define SWAP_WORD_HILO 0x10
133bed8ec2ccc857a62d6301f67c3ef3d36aa333Peter Major#define SWAP_NIB_HILO 0x0
4a48635cccc646ac479830fd4df0ee8e10c5bd8djeff.schenk#define SWAP_NIB_LOHI 0x02
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk/* RGB525_MISC_CLK_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DDOT_CLK_ENABLE 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DDOT_CLK_DISABLE 0x80
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SCLK_ENABLE 0x0
13cf991efe018d84db08f3aaecf99bc62d97ecbejeff.schenk#define SCLK_DISABLE 0x40
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B24P_DDOT_PLL 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B24P_DDOT_SCLK 0x20
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk#define DDOT_DIV_PLL_1 0x0
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk#define DDOT_DIV_PLL_2 0x02
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk#define DDOT_DIV_PLL_4 0x04
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk#define DDOT_DIV_PLL_8 0x06
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk#define DDOT_DIV_PLL_16 0x08
d41212f2bd058e5d3d82771d9bbdb94481982f2bjeff.schenk#define PLL_DISABLE 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_ENABLE 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_SYNC_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DLY_CNTL_ADD 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DLY_SYNC_NOADD 0x80
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define CSYN_INVT_DISABLE 0x0
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#define CSYN_INVT_ENABLE 0x40
98c66589f6124f17c492667c095aefc61dd51eccAlin Brici#define VSYN_INVT_DISABLE 0x0
158fc9aecce3a390fbb2ed473e9e29215fca99b5Allan Foster#define VSYN_INVT_ENABLE 0x20
3a1076834ccd4b3ecf4fac754b7ba662d4251020Allan Foster#define HSYN_INVT_DISABLE 0x0
3a1076834ccd4b3ecf4fac754b7ba662d4251020Allan Foster#define HSYN_INVT_ENABLE 0x10
e8721886dbfd32e88cc7077cbee4b6bb1b44b443Peter Major#define VSYN_CNTL_NORMAL 0x0
e8721886dbfd32e88cc7077cbee4b6bb1b44b443Peter Major#define VSYN_CNTL_HIGH 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define VSYN_CNTL_LOW 0x08
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define VSYN_CNTL_DISABLE 0x0C
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define HSYN_CNTL_NORMAL 0x0
f720a6e4cf0eab17d4a0fc5177e85bb34fbfd74dPhill Cunnington#define HSYN_CNTL_HIGH 0x01
f720a6e4cf0eab17d4a0fc5177e85bb34fbfd74dPhill Cunnington#define HSYN_CNTL_LOW 0x02
f720a6e4cf0eab17d4a0fc5177e85bb34fbfd74dPhill Cunnington#define HSYN_CNTL_DISABLE 0x03
80ca0b9f5ad61b2335af25d4dcf25a04ebfcbc91Peter Major
80ca0b9f5ad61b2335af25d4dcf25a04ebfcbc91Peter Major/* RGB525_HSYNC_CTRL */
80ca0b9f5ad61b2335af25d4dcf25a04ebfcbc91Peter Major#define HSYN_POS(n) (n)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_POWER_MANAGEMENT */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SCLK_PWR_NORMAL 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SCLK_PWR_DISABLE 0x10
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DDOT_PWR_NORMAL 0x0
84c335df5b56662ff61ec440ad718e29fca8460ajeff.schenk#define DDOT_PWR_DISABLE 0x08
84c335df5b56662ff61ec440ad718e29fca8460ajeff.schenk#define SYNC_PWR_NORMAL 0x0
f58c87ece2202b8f85310d8885c7e39a7f435c09Jason Lemay#define SYNC_PWR_DISABLE 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define ICLK_PWR_NORMAL 0x0
25e37495f2591ee8f2c057f2644ed5570b4c078dPeter Major#define ICLK_PWR_DISABLE 0x02
25e37495f2591ee8f2c057f2644ed5570b4c078dPeter Major#define DAC_PWR_NORMAL 0x0
25e37495f2591ee8f2c057f2644ed5570b4c078dPeter Major#define DAC_PWR_DISABLE 0x01
64d3fa08513695d9a3c20bdd22593aa9d0d900b4Alin Brici
762dbed51cb99a0bddaa30954aaf41704f347b9fJake Feasel/* RGB525_DAC_OPERATION */
25e37495f2591ee8f2c057f2644ed5570b4c078dPeter Major#define SOG_DISABLE 0x0
e8721886dbfd32e88cc7077cbee4b6bb1b44b443Peter Major#define SOG_ENABLE 0x08
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#define BRB_NORMAL 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define BRB_ALWAYS 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DSR_DAC_SLOW 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DSR_DAC_FAST 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DPE_DISABLE 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define DPE_ENABLE 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_PALETTE_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SIXBIT_LINEAR_ENABLE 0x0
1ce4d22afc82efd412af0045b2e8ee005982ecb6Peter Major#define SIXBIT_LINEAR_DISABLE 0x80
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PALETTE_PARITION(n) (n)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
ee24b491b9c8127b749e705bbef662b2ed8874dbjeff.schenk/* RGB525_PIXEL_FORMAT */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PIXEL_FORMAT_4BPP 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PIXEL_FORMAT_8BPP 0x03
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PIXEL_FORMAT_16BPP 0x04
bd563314e425c4bf7675643269f2b4633ad39f42Allan Foster#define PIXEL_FORMAT_24BPP 0x05
bd563314e425c4bf7675643269f2b4633ad39f42Allan Foster#define PIXEL_FORMAT_32BPP 0x06
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
386650a8957e131311273ee84a4a4113ad5e3fe2Peter Major/* RGB525_8BPP_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B8_DCOL_INDIRECT 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B8_DCOL_DIRECT 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_16BPP_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_DCOL_INDIRECT 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_DCOL_DYNAMIC 0x40
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_DCOL_DIRECT 0xC0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_POL_FORCE_BYPASS 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_POL_FORCE_LOOKUP 0x20
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_ZIB 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_LINEAR 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_555 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_565 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B16_SPARSE 0x0
a9dea14408d95f7c52d3ef9c1d2b86a36b5a0766jeff.schenk#define B16_CONTIGUOUS 0x01
863460956f3c5be928bd9bd5973933b7658c95a7jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_24BPP_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B24_DCOL_INDIRECT 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B24_DCOL_DIRECT 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_32BPP_CTRL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B32_POL_FORCE_BYPASS 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B32_POL_FORCE_LOOKUP 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B32_DCOL_INDIRECT 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B32_DCOL_DYNAMIC 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define B32_DCOL_DIRECT 0x03
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_PLL_CTRL_1 */
a9dea14408d95f7c52d3ef9c1d2b86a36b5a0766jeff.schenk#define REF_SRC_REFCLK 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define REF_SRC_EXTCLK 0x10
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_EXT_FS_3_0 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_EXT_FS_2_0 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_CNTL2_3_0 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_CNTL2_2_0 0x03
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_PLL_CTRL_2 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_INT_FS_3_0(n) (n)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PLL_INT_FS_2_0(n) (n)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_PLL_REF_DIV_COUNT */
a9dea14408d95f7c52d3ef9c1d2b86a36b5a0766jeff.schenk#define REF_DIV_COUNT(n) (n)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_F0 - RGB525_F15 */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define VCO_DIV_COUNT(n) (n)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_PLL_REFCLK values */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB525_PLL_REFCLK_MHz(n) ((n)/2)
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk/* RGB525_CURSOR_CONTROL */
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SMLC_PART_0 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SMLC_PART_1 0x40
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SMLC_PART_2 0x80
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define SMLC_PART_3 0xC0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PIX_ORDER_RL 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define PIX_ORDER_LR 0x20
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define LOC_READ_LAST 0x0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define LOC_READ_ACTUAL 0x10
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define UPDT_CNTL_DELAYED 0x0
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define UPDT_CNTL_IMMEDIATE 0x08
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define CURSOR_SIZE_32 0x0
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define CURSOR_SIZE_64 0x40
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define CURSOR_MODE_OFF 0x0
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define CURSOR_MODE_3_COLOR 0x01
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define CURSOR_MODE_2_COLOR_HL 0x02
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define CURSOR_MODE_2_COLOR 0x03
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk/* RGB525_REVISION_LEVEL */
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define REVISION_LEVEL 0xF0 /* predefined */
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk/* RGB525_ID */
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define ID_CODE 0x01 /* predefined */
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk/* MISR status */
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB525_MISR_DONE 0x01
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk/* the IBMRGB640 is rather different from the rest of the RAMDACs,
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk so we define a completely new set of register names for it */
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB640_SER_07_00 0x02
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB640_SER_15_08 0x03
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB640_SER_23_16 0x04
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB640_SER_31_24 0x05
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB640_SER_WID_03_00 0x06
a38150e4c84a0fb97d522595925684e82aeaebf7jeff.schenk#define RGB640_SER_WID_07_04 0x07
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_SER_MODE 0x08
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_SER_2_1 0x00
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_SER_4_1 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_SER_8_1 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_SER_16_1 0x03
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_SER_16_3 0x05
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_SER_5_1 0x06
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_PIXEL_INTERLEAVE 0x09
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_MISC_CONF 0x0a
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PCLK 0x00
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PCLK_2 0x40
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PCLK_4 0x80
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PCLK_8 0xc0
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PSIZE10 0x10
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_LCI 0x08
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_WIDCTL_MASK 0x07
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define RGB640_VGA_CONTROL 0x0b
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_RDBK 0x04
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PSIZE8 0x02
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_VRAM 0x01
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define RGB640_DAC_CONTROL 0x0d
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_MONO 0x08
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_DACENBL 0x04
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_SHUNT 0x02
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_SLOWSLEW 0x01
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define RGB640_OUTPUT_CONTROL 0x0e
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_RDAI 0x04
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_WDAI 0x02
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_WATCTL 0x01
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define RGB640_SYNC_CONTROL 0x0f
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_PWR 0x20
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_VSP 0x10
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_HSP 0x08
6ee60ad4ab4c8f9e97de533a60c32f7e5c61912bjeff.schenk#define IBM640_CSE 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_CSG 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_BPE 0x01
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_PLL_N 0x10
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_PLL_M 0x11
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_PLL_P 0x12
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_PLL_CTL 0x13
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define IBM640_PLL_EN 0x04
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define IBM640_PLL_HIGH 0x10
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define IBM640_PLL_LOW 0x01
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_AUX_PLL_CTL 0x17
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define IBM640_AUXPLL 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_AUX_HI 0x02
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define IBM640_AUX_LO 0x01
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_CHROMA_KEY0 0x20
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_CHROMA_MASK0 0x21
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_CURS_X_LOW 0x40
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_CURS_X_HIGH 0x41
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_CURS_Y_LOW 0x42
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define RGB640_CURS_Y_HIGH 0x43
79943d71bcf8d4933e74f29a1b0e87f8898508cbPeter Major#define RGB640_CURS_OFFSETX 0x44
79943d71bcf8d4933e74f29a1b0e87f8898508cbPeter Major#define RGB640_CURS_OFFSETY 0x45
79943d71bcf8d4933e74f29a1b0e87f8898508cbPeter Major#define RGB640_CURSOR_CONTROL 0x4B
b61df94db8e71c225d3c3d9870894e4f6744ec69jeff.schenk#define IBM640_CURS_OFF 0x00
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_CURS_MODE0 0x01
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_CURS_MODE1 0x02
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_CURS_MODE2 0x03
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define IBM640_CURS_ADV 0x04
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_CROSSHAIR_CONTROL 0x57
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_VRAM_MASK0 0xf0
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_VRAM_MASK1 0xf1
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_VRAM_MASK2 0xf2
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_DIAGS 0xfa
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_CURS_WRITE 0x1000
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_CURS_COL0 0x4800
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_CURS_COL1 0x4801
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_CURS_COL2 0x4802
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk#define RGB640_CURS_COL3 0x4803
3133cf1b294fb4042826d58b24e4a2d0216d0349jeff.schenk