|
|
| version 1.4, 2004/01/05 14:16:35 | version 1.5, 2004/03/29 14:19:25 |
|---|---|
| Line 1 | Line 1 |
| typedef REG8 (*CS4231DMA)(DMACH dmach); | |
| enum { | enum { |
| CS4231_BUFFERS = (1 << 6), | CS4231_BUFFERS = (1 << 9), |
| CS4231_BUFBYTES = (CS4231_BUFFERS * 4) | CS4231_BUFMASK = (CS4231_BUFFERS - 1) |
| }; | }; |
| typedef struct { | typedef struct { |
| Line 16 typedef struct { | Line 14 typedef struct { |
| BYTE dac_l; // 6 | BYTE dac_l; // 6 |
| BYTE dac_r; // 7 | BYTE dac_r; // 7 |
| BYTE datafmt; // 8 | BYTE datafmt; // 8 |
| BYTE intconfig; // 9 | BYTE iface; // 9 |
| BYTE pinctrl; // a | BYTE pinctrl; // a |
| BYTE errorstatus; | BYTE errorstatus; |
| BYTE mode_id; | BYTE mode_id; |
| Line 40 typedef struct { | Line 38 typedef struct { |
| typedef struct { | typedef struct { |
| UINT bufsize; | UINT bufsize; |
| UINT readpos; | UINT bufdatas; |
| UINT writepos; | UINT bufpos; |
| UINT32 curtime; | // UINT32 curtime; |
| UINT32 step; | // UINT32 step; |
| SINT16 pcmdata[2]; | // SINT32 pcmdata[2]; |
| CS4231DMA proc; | UINT32 pos12; |
| UINT32 step12; | |
| BYTE enable; | UINT8 enable; |
| BYTE portctrl; | UINT8 portctrl; |
| UINT16 port; | UINT16 port; |
| BYTE dmairq; | UINT8 dmairq; |
| BYTE dmach; | UINT8 dmach; |
| BYTE adrs; | UINT8 adrs; |
| BYTE index; | UINT8 index; |
| BYTE intflag; | UINT8 intflag; |
| BYTE outenable; | UINT8 outenable; |
| BYTE extfunc; | UINT8 extfunc; |
| BYTE padding; | UINT8 padding; |
| CS4231REG reg; | CS4231REG reg; |
| BYTE buffer[CS4231_BUFBYTES]; | BYTE buffer[CS4231_BUFFERS]; |
| } _CS4231, *CS4231; | } _CS4231, *CS4231; |
| typedef struct { | typedef struct { |
| Line 72 typedef struct { | Line 71 typedef struct { |
| extern "C" { | extern "C" { |
| #endif | #endif |
| extern const CS4231DMA cs4231dec[16]; | |
| REG8 cs4231_nodecode(DMACH dmach); | |
| void cs4231_dma(NEVENTITEM item); | void cs4231_dma(NEVENTITEM item); |
| REG8 DMACCALL cs4231dmafunc(REG8 func); | REG8 DMACCALL cs4231dmafunc(REG8 func); |
| void cs4231_datasend(REG8 dat); | |
| void cs4231_initialize(UINT rate); | void cs4231_initialize(UINT rate); |
| void cs4231_setvol(UINT vol); | void cs4231_setvol(UINT vol); |
| void cs4231_reset(void); | void cs4231_reset(void); |
| void cs4231_update(void); | void cs4231_update(void); |
| void cs4231_control(UINT index, REG8 value); | void cs4231_control(UINT index, REG8 dat); |
| void SOUNDCALL cs4231_getpcm(CS4231 cs, SINT32 *pcm, UINT count); | void SOUNDCALL cs4231_getpcm(CS4231 cs, SINT32 *pcm, UINT count); |