--- np2/sound/psggen.h 2003/10/16 17:58:04 1.1.1.1 +++ np2/sound/psggen.h 2003/12/08 00:55:33 1.6 @@ -16,7 +16,8 @@ typedef struct { SINT32 count; BYTE *pvol; UINT16 puchi; - UINT16 padding; + BYTE pan; + BYTE padding; } PSGTONE; typedef struct { @@ -29,9 +30,7 @@ typedef struct { BYTE tune[3][2]; // 0 BYTE noise; // 6 BYTE mixer; // 7 - BYTE vol0; // 8 - BYTE vol1; // 9 - BYTE vol2; // a + BYTE vol[3]; // 8 BYTE envtime[2]; // b BYTE env; // d BYTE io1; @@ -44,10 +43,11 @@ typedef struct { PSGREG reg; UINT16 envcnt; UINT16 envmax; + BYTE mixer; BYTE envmode; BYTE envvol; char envvolcnt; - BYTE mixer; + UINT puchicount; } _PSGGEN, *PSGGEN; typedef struct { @@ -67,8 +67,9 @@ void psggen_initialize(UINT rate); void psggen_setvol(UINT vol); void psggen_reset(PSGGEN psg); -void psggen_setreg(PSGGEN psg, BYTE reg, BYTE val); -BYTE psggen_getreg(PSGGEN psg, BYTE reg); +void psggen_setreg(PSGGEN psg, REG8 reg, REG8 val); +REG8 psggen_getreg(PSGGEN psg, REG8 reg); +void psggen_setpan(PSGGEN psg, UINT ch, REG8 pan); void SOUNDCALL psggen_getpcm(PSGGEN psg, SINT32 *pcm, UINT count);