--- np2/cbus/mpu98ii.h 2003/10/16 17:57:58 1.1 +++ np2/cbus/mpu98ii.h 2004/02/07 21:23:21 1.3 @@ -10,58 +10,63 @@ enum { #define MPUCHDATAS 4 typedef struct { - BYTE step; - BYTE datas; - BYTE remain; - BYTE rstat; - BYTE recv; - BYTE padding[2]; + UINT8 step; + UINT8 datas; + UINT8 remain; + UINT8 rstat; + UINT8 recv; + UINT8 padding[2]; BYTE data[MPUCHDATAS]; } MPUCH; typedef struct { - BYTE step; - BYTE cmd; - BYTE padding[2]; + UINT8 step; + UINT8 cmd; + UINT8 padding[2]; UINT16 remain; UINT16 datas; BYTE data[MPU98_EXCVBUFS]; } MPUF9CH; typedef struct { - MPUCH ch[8]; - MPUF9CH f9; - - BYTE buf[MPU98_RECVBUFS]; - - SINT32 clock; int cnt; int pos; + BYTE buf[MPU98_RECVBUFS]; +} MPURECV; + +typedef struct { + UINT16 port; + UINT8 irqnum; + UINT8 data; + + UINT32 xferclock; + SINT32 stepclock; + + UINT8 intch; + UINT8 intreq; + UINT8 fd_remain; + UINT8 fd_cnt; + UINT8 fd_step[4]; + + UINT8 status; + UINT8 mode; + UINT8 cmd; + UINT8 timebase; + + UINT8 tempo; + UINT8 tempos; + UINT8 recvevent; + UINT8 remainstep; + + UINT8 timing; + UINT8 avail; + UINT8 bar; + UINT8 flag1; - UINT16 port; // ver0.28 - BYTE irqnum; - BYTE data; - - BYTE intch; - BYTE intreq; - - BYTE fd_remain; - BYTE fd_cnt; - BYTE fd_step[4]; - - BYTE status; - BYTE mode; - BYTE cmd; - BYTE timebase; - BYTE tempo; - BYTE tempos; - BYTE recvevent; - BYTE remainstep; - BYTE timing; - BYTE avail; - BYTE bar; + MPURECV r; - BYTE flag1; + MPUCH ch[8]; + MPUF9CH f9; } _MPU98II, *MPU98II; @@ -69,7 +74,7 @@ typedef struct { extern "C" { #endif -extern _MPU98II mpu98; // ver0.28 +extern _MPU98II mpu98; void midiint(NEVENTITEM item); void midiwaitout(NEVENTITEM item);