|
|
| version 1.1, 2003/10/16 17:57:50 | version 1.9, 2005/02/07 14:46:11 |
|---|---|
| Line 5 | Line 5 |
| enum { | enum { |
| DMA_CH00 = 0, | |
| DMA_CH01 = 1, | |
| DMA_2HD = 2, | |
| DMA_2DD = 3, | |
| DMAEXT_START = 0, | DMAEXT_START = 0, |
| DMAEXT_END = 1, | DMAEXT_END = 1, |
| DMAEXT_BREAK = 2, | DMAEXT_BREAK = 2, |
| DMA_INITSIGNALONLY = 1 | DMA_INITSIGNALONLY = 1, |
| DMADEV_NONE = 0, | |
| DMADEV_2HD = 1, | |
| DMADEV_2DD = 2, | |
| DMADEV_SASI = 3, | |
| DMADEV_SCSI = 4, | |
| DMADEV_CS4231 = 5 | |
| }; | }; |
| #if defined(BYTESEX_LITTLE) | #if defined(BYTESEX_LITTLE) |
| Line 34 enum { | Line 36 enum { |
| #endif | #endif |
| typedef struct { | typedef struct { |
| void (DMACCALL * outproc)(REG8 data); | |
| REG8 (DMACCALL * inproc)(void); | |
| REG8 (DMACCALL * extproc)(REG8 action); | |
| } DMAPROC; | |
| typedef struct { | |
| union { | union { |
| BYTE b[4]; | UINT8 b[4]; |
| UINT16 w[2]; | UINT16 w[2]; |
| UINT32 d; | UINT32 d; |
| } adrs; | } adrs; |
| union { | union { |
| BYTE b[2]; | UINT8 b[2]; |
| UINT16 w; | UINT16 w; |
| } leng; | } leng; |
| union { | union { |
| BYTE b[2]; | UINT8 b[2]; |
| UINT16 w; | UINT16 w; |
| } adrsorg; | } adrsorg; |
| union { | union { |
| BYTE b[2]; | UINT8 b[2]; |
| UINT16 w; | UINT16 w; |
| } lengorg; | } lengorg; |
| UINT16 action; | UINT8 bound; |
| void (DMACCALL * outproc)(BYTE data); | UINT8 action; |
| BYTE (DMACCALL * inproc)(void); | DMAPROC proc; |
| BYTE (DMACCALL * extproc)(BYTE action); | UINT8 mode; |
| BYTE mode; | UINT8 sreq; |
| BYTE sreq; | UINT8 ready; |
| BYTE ready; | UINT8 mask; |
| BYTE mask; | |
| } _DMACH, *DMACH; | } _DMACH, *DMACH; |
| typedef struct { | typedef struct { |
| UINT8 device; | |
| UINT8 channel; | |
| } DMADEV; | |
| typedef struct { | |
| _DMACH dmach[4]; | _DMACH dmach[4]; |
| int lh; | int lh; |
| UINT work; | UINT8 work; |
| UINT working; | UINT8 working; |
| BYTE mask; | UINT8 mask; |
| BYTE stat; | UINT8 stat; |
| UINT devices; | |
| DMADEV device[8]; | |
| } _DMAC, *DMAC; | } _DMAC, *DMAC; |
| Line 75 typedef struct { | Line 89 typedef struct { |
| extern "C" { | extern "C" { |
| #endif | #endif |
| void DMACCALL dma_dummyout(BYTE data); | void DMACCALL dma_dummyout(REG8 data); |
| BYTE DMACCALL dma_dummyin(void); | REG8 DMACCALL dma_dummyin(void); |
| BYTE DMACCALL dma_dummyproc(BYTE func); | REG8 DMACCALL dma_dummyproc(REG8 func); |
| void dmac_reset(void); | void dmac_reset(void); |
| void dmac_bind(void); | void dmac_bind(void); |
| void dmac_extbind(void); | |
| void dmac_check(void); | void dmac_check(void); |
| UINT dmac_getdatas(DMACH dmach, UINT8 *buf, UINT size); | |
| void dmac_procset(void); | |
| void dmac_attach(REG8 device, REG8 channel); | |
| void dmac_detach(REG8 device); | |
| #ifdef __cplusplus | #ifdef __cplusplus |
| } | } |