--- np2/vram/vram.h 2003/10/16 17:58:13 1.1.1.1 +++ np2/vram/vram.h 2005/02/16 09:31:55 1.8 @@ -6,41 +6,61 @@ typedef struct { UINT operate; +#if !defined(CPUSTRUC_MEMWAIT) UINT tramwait; UINT vramwait; UINT grcgwait; -} VRAM_T; +#endif +#if defined(SUPPORT_PC9821) + UINT8 mio1[4]; + UINT8 mio2[0x40]; +#endif +} _VRAMOP, *VRAMOP; // operate: bit0 access page // bit1 egc enable // bit2 grcg bit6 // bit3 grcg bit7 // bit4 analog enable +// bit5 pc9821 vga enum { - VOP_ACCESSBIT = 0x01, - VOP_EGCBIT = 0x02, - VOP_GRCGBIT = 0x0c, - VOP_ANALOGBIT = 0x10, - - VOP_ACCESSMASK = ~(0x01), - VOP_EGCMASK = ~(0x02), - VOP_GRCGMASK = ~(0x0c), - VOP_ANALOGMASK = ~(0x10) + VOPBIT_ACCESS = 0, + VOPBIT_EGC = 1, + VOPBIT_GRCG = 2, + VOPBIT_ANALOG = 4, + VOPBIT_VGA = 5 }; +// VOP_ACCESSBIT = 0x01, +// VOP_EGCBIT = 0x02, +// VOP_GRCGBIT = 0x0c, +// VOP_ANALOGBIT = 0x10, + +// VOP_ACCESSMASK = ~(0x01), +// VOP_EGCMASK = ~(0x02), +// VOP_GRCGMASK = ~(0x0c), +// VOP_ANALOGMASK = ~(0x10) + #ifdef __cplusplus extern "C" { #endif -extern const UINT32 vramplaneseg[4]; +extern _VRAMOP vramop; +extern UINT8 tramupdate[0x1000]; +extern UINT8 vramupdate[0x8000]; +#if defined(SUPPORT_PC9821) +extern UINT8 vramex[0x80000]; +#endif -extern VRAM_T vramop; -extern BYTE tramupdate[0x1000]; -extern BYTE vramupdate[0x8000]; +void vram_initialize(void); -void vram_init(void); +#if !defined(CPUSTRUC_MEMWAIT) +#define MEMWAIT_TRAM vramop.tramwait +#define MEMWAIT_VRAM vramop.vramwait +#define MEMWAIT_GRCG vramop.grcgwait +#endif #ifdef __cplusplus }