|
|
| version 1.2, 2004/08/07 07:19:56 | version 1.10, 2004/08/15 11:14:42 |
|---|---|
| Line 3 | Line 3 |
| extern "C" { | extern "C" { |
| #endif | #endif |
| enum { | |
| CRTC_PALB = 0, | |
| CRTC_PALR = 1, | |
| CRTC_PALG = 2, | |
| CRTC_PLY = 3 | |
| }; | |
| #define PAL_NORMAL 0x00 | #define PAL_NORMAL 0x00 |
| #define PAL_HIGHRESO 0x01 | #define PAL_HIGHRESO 0x01 |
| Line 57 enum { | Line 64 enum { |
| SCRN_DISPCHANGE = SCRN_24KHZ|SCRN_200LINE|SCRN_TEXTYx2|SCRN_UNDERLINE | SCRN_DISPCHANGE = SCRN_24KHZ|SCRN_200LINE|SCRN_TEXTYx2|SCRN_UNDERLINE |
| }; | }; |
| enum { | |
| CRTCREG_HSIZE = 0, | |
| CRTCREG_HDISP = 1, | |
| CRTCREG_HSYNC = 2, | |
| CRTCREG_PULSE = 3, | |
| CRTCREG_VSIZE = 4, | |
| CRTCREG_VSIZEA = 5, | |
| CRTCREG_VDISP = 6, | |
| CRTCREG_VSYNC = 7, | |
| CRTCREG_CHRCY = 9, | |
| CRTCREG_POSH = 12, | |
| CRTCREG_POSL = 13, | |
| typedef struct { | CRTCREG_MAX = 18 |
| UINT8 PAL_B; | }; |
| UINT8 PAL_R; | |
| UINT8 PAL_G; | |
| UINT8 PLY; | |
| UINT8 TEXT_PAL[8]; | |
| UINT8 SCRN_BITS; | |
| UINT8 CRTC_NUM; | |
| WORD DISP_PAGE; | |
| WORD FNT_XL; | |
| WORD FNT_YL; | |
| BYTE TXT_XL; | |
| BYTE TXT_YL; | |
| BYTE TXT_YS; | |
| WORD GRP_XL; | |
| WORD GRP_YL; | |
| BYTE CPU_BANK; | |
| BYTE CRT_BANK; | |
| WORD CRT_YL; | |
| WORD CRT_VS; | |
| WORD CRT_VL; | |
| BYTE TXT_VL; | |
| BYTE TXT_VLA; | |
| WORD TXT_TOP; | |
| WORD fnty; | |
| typedef struct { | |
| UINT8 SCRN_BITS; | |
| UINT8 width40; | |
| UINT8 regnum; | |
| UINT8 padding; | |
| UINT8 rgbp[4]; | |
| UINT8 reg[CRTCREG_MAX]; | |
| UINT8 BLACKPAL; | UINT8 BLACKPAL; |
| UINT8 EXTPALMODE; | UINT8 EXTPALMODE; |
| UINT8 EXTGRPHPAL; | UINT8 EXTGRPHPAL; |
| Line 96 typedef struct { | Line 96 typedef struct { |
| } CRTCSTAT; | } CRTCSTAT; |
| typedef struct { | typedef struct { |
| SINT32 rasterclock8; | |
| SINT32 rasterdisp8; | |
| UINT fonty; | |
| UINT yl; | |
| SINT32 frameclock; | |
| UINT8 *gram; // curvram | UINT8 *gram; // curvram |
| UINT updatemask; // updatemsk | UINT updatemask; // updatemsk |
| UINT8 updatebit; // curupdt | UINT8 updatebit; // curupdt |
| UINT8 dispmode; | |
| UINT8 pal_bank; | |
| UINT8 pal_disp; | |
| UINT pos; | |
| SINT32 dispclock; | |
| SINT32 vsyncstart; | |
| SINT32 vpulseclock; | |
| } CRTCEXT; | } CRTCEXT; |
| typedef struct { | typedef struct { |
| UINT8 text[8]; | |
| UINT16 grph[2][64]; | |
| UINT16 grph4096[4096]; | |
| } CRTCPAL; | |
| typedef struct { | |
| CRTCSTAT s; | CRTCSTAT s; |
| CRTCEXT e; | CRTCEXT e; |
| CRTCPAL p; | |
| } CRTC; | } CRTC; |
| extern BYTE crtc_TEXTPAL[8]; | // ---- |
| extern WORD crtc_GRPHPAL[2][64]; | |
| extern WORD crtc_PAL4096[4096]; | |
| //********************************************************************** | |
| void vrambank_patch(void); | void crtc_setwidth(REG8 width40); |
| void crtc_update(void); | |
| // void crtc_bankupdate(void); // vrambank_patch | |
| // void crtc_regupdate(void); | |
| void IOOUTCALL crtc_o(UINT port, REG8 value); // x1_crtc_w | void IOOUTCALL crtc_o(UINT port, REG8 value); // x1_crtc_w |
| Line 144 REG8 IOINPCALL blackctrl_i(UINT port); | Line 164 REG8 IOINPCALL blackctrl_i(UINT port); |
| void crtc_initialize(void); | void crtc_initialize(void); |
| void crtc_reset(void); | void crtc_reset(void); |
| void crtc_forcesetwidth(REG8 width); | |
| #ifdef __cplusplus | #ifdef __cplusplus |
| } | } |