--- xmil/pccore.h 2004/08/01 05:31:29 1.1 +++ xmil/pccore.h 2004/08/07 07:19:56 1.5 @@ -1,14 +1,9 @@ -// #include "z80core.h" -// #include "x1_io.h" - - typedef struct { UINT8 KEY_MODE; UINT8 SOUND_SW; UINT8 SKIP_LINE; - UINT8 NOWAIT; - UINT8 DRAW_SKIP; + UINT8 ROM_TYPE; UINT8 CPU8MHz; UINT8 DIP_SW; @@ -28,8 +23,6 @@ typedef struct { UINT8 TEXT400L; UINT8 LINETEXT; - UINT8 SOUNDPLY; - UINT8 DISPSYNC; UINT8 MOUSE_SW; } XMILCFG; @@ -37,33 +30,19 @@ typedef struct { typedef struct { UINT16 HSYNC_CLK; UINT8 ROM_TYPE; - UINT8 ROM_SW; UINT8 DIP_SW; UINT8 SOUND_SW; } PCCORE; - -#define GRAM_SIZE 0x10000 -#define GRAM_BANK0 0x00000 -#define GRAM_BANK1 0x10000 - -#define GRAM_BANK0L 0x00000 -#define GRAM_BANK0H 0x08000 -#define GRAM_BANK1L 0x10000 -#define GRAM_BANK1H 0x18000 - -#define GRAM_HALFSTEP 0x08000 - -#define TEXT_ANK 0x0000 -#define TEXT_ATR 0x0800 -#define TEXT_KNJ 0x1000 - -#define PLANE_B 8 -#define PLANE_R 16 -#define PLANE_G 24 - -#define DIP_RESOLUTE 1 -#define DIP_BOOTMEDIA 4 +typedef struct { + UINT8 drawframe; + UINT8 soundrenewal; +} CORESTAT; + +enum { + DIPSW_RESOLUTE = 0x01, + DIPSW_BOOTMEDIA = 0x04 +}; #ifdef __cplusplus @@ -72,31 +51,27 @@ extern "C" { extern const OEMCHAR xmilversion[]; -extern XMILCFG xmilcfg; -extern PCCORE pccore; +extern XMILCFG xmilcfg; +extern PCCORE pccore; +extern CORESTAT corestat; extern BYTE *RAM0r; extern BYTE *RAM0w; -extern BYTE lastmem; extern DWORD h_cntbase; extern BYTE mMAIN[0x10000]; extern BYTE mBIOS[0x8000]; extern BYTE mBANK[16][0x8000]; -extern BYTE GRP_RAM[0x20000]; -extern BYTE TXT_RAM[0x01800]; - -extern BRESULT soundrenewal; #define h_cnt Z80_ICOUNT extern WORD v_cnt; // BYTE reset_x1(BYTE ROM_TYPE, BYTE SOUND_SW, BYTE DIP_SW); - -void x1r_exec(void); +// void x1r_exec(void); void pccore_initialize(void); void pccore_reset(void); void pccore_deinitialize(void); +void pccore_exec(BRESULT draw); #ifdef __cplusplus }