--- np2/io/iocore.h 2003/10/16 17:57:49 1.1 +++ np2/io/iocore.h 2005/02/12 12:40:39 1.12 @@ -1,10 +1,4 @@ -#if 0 -#define I286_OUT void -typedef BYTE I286_INB; -typedef UINT16 I286_INW; -#endif - #ifndef IOOUTCALL #define IOOUTCALL #endif @@ -12,11 +6,12 @@ typedef UINT16 I286_INW; #define IOINPCALL #endif -typedef void (IOOUTCALL *IOOUT)(UINT port, BYTE val); -typedef BYTE (IOINPCALL *IOINP)(UINT port); +typedef void (IOOUTCALL *IOOUT)(UINT port, REG8 val); +typedef REG8 (IOINPCALL *IOINP)(UINT port); typedef void (*IOCBFN)(void); +#include "lsidef.h" #include "artic.h" #include "cgrom.h" @@ -25,16 +20,17 @@ typedef void (*IOCBFN)(void); #include "dipsw.h" #include "dmac.h" #include "egc.h" -#include "extmem.h" +#include "epsonio.h" +#include "emsio.h" #include "fdc.h" #include "fdd320.h" #include "gdc.h" #include "gdc_cmd.h" -#include "gdc_sub.h" -#include "itf.h" #include "mouseif.h" +#include "necio.h" #include "nmiio.h" #include "np2sysp.h" +#include "pcidev.h" #include "pic.h" #include "pit.h" #include "printif.h" @@ -50,18 +46,18 @@ extern "C" { extern _ARTIC artic; extern _CGROM cgrom; extern _CGWINDOW cgwindow; -extern _CPUIO cpuio; extern _CRTC crtc; extern _DMAC dmac; extern _EGC egc; -extern _EXTMEM extmem; +extern _EPSONIO epsonio; +extern _EMSIO emsio; extern _FDC fdc; extern _GDC gdc; extern _GDCS gdcs; extern _GRCG grcg; -extern _ITF itf; -extern _KEYB keyb; +extern _KEYBRD keybrd; extern _MOUSEIF mouseif; +extern _NECIO necio; extern _NMIIO nmiio; extern _NP2SYSP np2sysp; extern _PIC pic; @@ -70,6 +66,10 @@ extern _RS232C rs232c; extern _SYSPORT sysport; extern _UPD4990 uPD4990; +#if defined(SUPPORT_PC9821) +extern _PCIDEV pcidev; +#endif + // I/O - 8bit decode void iocore_attachcmnout(UINT port, IOOUT func); @@ -88,26 +88,29 @@ void iocore_attachsysinpex(UINT port, UI const IOINP *func, UINT funcs); // サウンドI/O - 12bit decode -BOOL iocore_attachsndout(UINT port, IOOUT func); -BOOL iocore_attachsndinp(UINT port, IOINP func); +BRESULT iocore_attachsndout(UINT port, IOOUT func); +BRESULT iocore_attachsndinp(UINT port, IOINP func); // 拡張I/O - 16bit decode -BOOL iocore_attachout(UINT port, IOOUT func); -BOOL iocore_attachinp(UINT port, IOINP func); +BRESULT iocore_attachout(UINT port, IOOUT func); +BRESULT iocore_attachinp(UINT port, IOINP func); void iocore_create(void); void iocore_destroy(void); -BOOL iocore_build(void); +BRESULT iocore_build(void); void iocore_cb(const IOCBFN *cbfn, UINT count); void iocore_reset(void); void iocore_bind(void); -void IOOUTCALL iocore_out8(UINT port, BYTE val); -BYTE IOINPCALL iocore_inp8(UINT port); +void IOOUTCALL iocore_out8(UINT port, REG8 dat); +REG8 IOINPCALL iocore_inp8(UINT port); + +void IOOUTCALL iocore_out16(UINT port, REG16 dat); +REG16 IOINPCALL iocore_inp16(UINT port); -void IOOUTCALL iocore_out16(UINT port, UINT16 dat); -UINT16 IOINPCALL iocore_inp16(UINT port); +void IOOUTCALL iocore_out32(UINT port, UINT32 dat); +UINT32 IOINPCALL iocore_inp32(UINT port); #ifdef __cplusplus }