--- np2/io/gdc.h 2003/10/16 17:57:52 1.1.1.1 +++ np2/io/gdc.h 2004/02/19 06:10:13 1.6 @@ -5,41 +5,47 @@ typedef struct { BYTE para[256]; UINT16 fifo[GDCCMD_MAX]; UINT16 cnt; - BYTE ptr; - BYTE rcv; - BYTE snd; - BYTE cmd; // ver0.29 - BYTE paracb; // ver0.29 - BYTE reserved[3]; + UINT8 ptr; + UINT8 rcv; + UINT8 snd; + UINT8 cmd; + UINT8 paracb; + UINT8 reserved; } _GDCDATA, *GDCDATA; typedef struct { _GDCDATA m; _GDCDATA s; - BYTE mode1; - BYTE mode2; - BYTE vsync; - BYTE vsyncint; + UINT8 mode1; + UINT8 mode2; + UINT8 clock; + UINT8 crt15khz; + UINT8 m_drawing; + UINT8 s_drawing; + UINT8 vsync; + UINT8 vsyncint; + UINT8 display; + UINT8 bitac; + UINT8 reserved[2]; int analog; int palnum; - BYTE degpal[4]; + UINT8 degpal[4]; RGB32 anapal[16]; - BYTE clock; - BYTE display; - BYTE bitac; - BYTE m_drawing; - BYTE s_drawing; - BYTE reserved[3]; + + UINT32 dispclock; + UINT32 vsyncclock; + UINT32 rasterclock; + UINT32 hsyncclock; } _GDC, *GDC; typedef struct { - BYTE access; - BYTE disp; - BYTE textdisp; - BYTE msw_accessable; - BYTE grphdisp; - BYTE palchange; - BYTE mode2; + UINT8 access; + UINT8 disp; + UINT8 textdisp; + UINT8 msw_accessable; + UINT8 grphdisp; + UINT8 palchange; + UINT8 mode2; } _GDCS, *GDCS; enum { @@ -49,7 +55,6 @@ enum { GDCSCRN_ENABLE = 0x80, GDCSCRN_EXT = 0x40, - GDCSCRN_ATR = 0x10, GDCSCRN_ALLDRAW = 0x04, GDCSCRN_REDRAW = 0x01, GDCSCRN_ALLDRAW2 = 0x0c, @@ -68,14 +73,16 @@ extern "C" { void gdc_reset(void); void gdc_bind(void); +void gdc_vectreset(GDCDATA item); void gdc_work(int id); void gdc_forceready(GDCDATA item); void gdc_paletteinit(void); -void gdc_setdegitalpal(int color, BYTE value); -void gdc_setanalogpal(int color, int rgb, BYTE value); -void gdc_setdegpalpack(int color, BYTE value); +void gdc_setdegitalpal(int color, REG8 value); +void gdc_setanalogpal(int color, int rgb, REG8 value); +void gdc_setdegpalpack(int color, REG8 value); +void gdc_updateclock(void); void gdc_restorekacmode(void); #ifdef __cplusplus