--- xmil/io/iocore.h 2004/08/07 10:53:01 1.6 +++ xmil/io/iocore.h 2004/08/08 15:14:08 1.7 @@ -9,31 +9,19 @@ typedef void (IOOUTCALL *IOOUT)(UINT port, REG8 dat); typedef REG8 (IOINPCALL *IOINP)(UINT port); -typedef void (*IOCBFN)(void); +typedef struct { + UINT8 mode; + UINT8 padding[7]; +} IOSTAT; -enum { - IOCORE_OUTHTBL = 0x01, - IOCORE_INPHTBL = 0x02 -}; - -typedef union { - IOOUT fn; - IOOUT *tbl; -} OUTHTBL; - -typedef union { - IOINP fn; - IOINP *tbl; -} INPHTBL; +typedef struct { + IOINP inpfn[0x20]; + IOOUT outfn[0x20]; +} IOEXT; typedef struct { - UINT8 mode; - UINT8 padding[15]; -// IOINP inpt[4]; -// IOOUT outt[4]; -// UINT8 iofg[0x20]; - INPHTBL inph[0x20]; - OUTHTBL outh[0x20]; + IOSTAT s; + IOEXT e; } IOCORE;