--- xmil/io/crtc.h 2004/08/04 17:09:25 1.1 +++ xmil/io/crtc.h 2004/08/08 15:14:08 1.3 @@ -34,17 +34,28 @@ extern "C" { #define SCRN64_320x100x4096 10 -#define SCRN_24KHZ 0x01 // 0:15KHz 1:24KHz -#define SCRN_200LINE 0x02 // 0:400line 1:200line -#define SCRN_TEXTYx2 0x04 // 0:ノーマル 1:縦に拡大 -#define SCRN_DISPVRAM 0x08 // 0:表 1:裏 -#define SCRN_ACCESSVRAM 0x10 // 0:表 1:裏 -#define SCRN_PCGMODE 0x20 // 0:互換 1:高速 -#define SCRN_CPUFONT 0x40 // 0:8ラスタ 1:16ラスタ -#define SCRN_UNDERLINE 0x80 // 0:なし 1:あり -#define SCRN_DISPCHANGE (SCRN_24KHZ | SCRN_200LINE | \ - SCRN_TEXTYx2 | SCRN_UNDERLINE) +// SCRN_24KHZ 0x01 // 0:15KHz 1:24KHz +// SCRN_200LINE 0x02 // 0:400line 1:200line +// SCRN_TEXTYx2 0x04 // 0:ノーマル 1:縦に拡大 +// SCRN_DISPVRAM 0x08 // 0:表 1:裏 +// SCRN_ACCESSVRAM 0x10 // 0:表 1:裏 +// SCRN_PCGMODE 0x20 // 0:互換 1:高速 +// SCRN_CPUFONT 0x40 // 0:8ラスタ 1:16ラスタ +// SCRN_UNDERLINE 0x80 // 0:なし 1:あり + +enum { + SCRN_24KHZ = 0x01, + SCRN_200LINE = 0x02, + SCRN_TEXTYx2 = 0x04, + SCRN_DISPVRAM = 0x08, + SCRN_ACCESSVRAM = 0x10, + SCRN_PCGMODE = 0x20, + SCRN_CPUFONT = 0x40, + SCRN_UNDERLINE = 0x80, + + SCRN_DISPCHANGE = SCRN_24KHZ|SCRN_200LINE|SCRN_TEXTYx2|SCRN_UNDERLINE +}; typedef struct { @@ -52,7 +63,7 @@ typedef struct { UINT8 PAL_R; UINT8 PAL_G; UINT8 PLY; - UINT8 TEXT_PAL[8]; +// UINT8 TEXT_PAL[8]; UINT8 SCRN_BITS; UINT8 CRTC_NUM; @@ -64,8 +75,8 @@ typedef struct { BYTE TXT_YS; WORD GRP_XL; WORD GRP_YL; - BYTE CPU_BANK; - BYTE CRT_BANK; +// BYTE CPU_BANK; +// BYTE CRT_BANK; WORD CRT_YL; WORD CRT_VS; @@ -91,17 +102,19 @@ typedef struct { } CRTCEXT; typedef struct { + UINT8 text[8]; + UINT16 grph[2][64]; + UINT16 grph4096[4096]; +} CRTCPAL; + +typedef struct { CRTCSTAT s; CRTCEXT e; + CRTCPAL p; } CRTC; -extern BYTE crtc_TEXTPAL[8]; -extern WORD crtc_GRPHPAL[2][64]; -extern WORD crtc_PAL4096[4096]; - - -//********************************************************************** +// ---- void vrambank_patch(void);