--- xmil/pccore.h 2004/08/05 04:53:15 1.3 +++ xmil/pccore.h 2004/08/20 12:09:20 1.17 @@ -1,42 +1,46 @@ typedef struct { - UINT8 KEY_MODE; - UINT8 SOUND_SW; - UINT8 SKIP_LINE; - UINT8 NOWAIT; - UINT8 DRAW_SKIP; UINT8 ROM_TYPE; - UINT8 CPU8MHz; UINT8 DIP_SW; + UINT8 fddequip; + + UINT8 DISPSYNC; + UINT8 RASTER; + UINT8 skipline; + UINT16 skiplight; UINT16 samplingrate; UINT16 delayms; + UINT8 SOUND_SW; + UINT8 vol_fm; + UINT8 vol_ssg; UINT8 MOTOR; UINT8 MOTORVOL; + UINT8 MOUSE_SW; + UINT8 KEY_MODE; UINT8 BTN_RAPID; UINT8 BTN_MODE; - - UINT8 LINEDEPTH; - UINT8 BLKLIGHT; - - UINT8 TEXTMODE; - UINT8 TEXT400L; - UINT8 LINETEXT; - - UINT8 SOUNDPLY; - - UINT8 DISPSYNC; - UINT8 MOUSE_SW; } XMILCFG; typedef struct { - UINT16 HSYNC_CLK; + UINT32 baseclock; + UINT multiple; + UINT32 realclock; + UINT8 ROM_TYPE; UINT8 DIP_SW; UINT8 SOUND_SW; } PCCORE; +typedef struct { + SINT32 dispclock; + SINT32 syncclock; + UINT8 vsync; + UINT8 drawframe; + UINT8 soundrenewal; +} CORESTAT; + enum { DIPSW_RESOLUTE = 0x01, DIPSW_BOOTMEDIA = 0x04 @@ -49,28 +53,25 @@ extern "C" { extern const OEMCHAR xmilversion[]; -extern XMILCFG xmilcfg; -extern PCCORE pccore; -extern BYTE *RAM0r; -extern BYTE *RAM0w; -extern DWORD h_cntbase; - -extern BYTE mMAIN[0x10000]; -extern BYTE mBIOS[0x8000]; -extern BYTE mBANK[16][0x8000]; - -extern BRESULT soundrenewal; - -#define h_cnt Z80_ICOUNT -extern WORD v_cnt; - -// BYTE reset_x1(BYTE ROM_TYPE, BYTE SOUND_SW, BYTE DIP_SW); +extern XMILCFG xmilcfg; +extern PCCORE pccore; +extern CORESTAT corestat; +extern UINT8 *RAM0r; +extern UINT8 *RAM0w; + +extern UINT8 mMAIN[0x10000]; +extern UINT8 mBIOS[0x8000]; +#if defined(SUPPORT_BANKMEM) +extern UINT8 mBANK[16][0x8000]; +#endif -void x1r_exec(void); +void neitem_disp(UINT id); +void neitem_vsync(UINT id); void pccore_initialize(void); void pccore_reset(void); void pccore_deinitialize(void); +void pccore_exec(BRESULT draw); #ifdef __cplusplus }