Diff for /np2/sound/fmboard.c between versions 1.8 and 1.11

version 1.8, 2004/01/25 05:41:29 version 1.11, 2004/02/04 03:52:12
Line 100  void fmboard_extenable(REG8 enable) { Line 100  void fmboard_extenable(REG8 enable) {
   
 // ----  // ----
   
   static void setfmregs(BYTE *reg) {
   
           FillMemory(reg + 0x30, 0x60, 0xff);
           FillMemory(reg + 0x90, 0x20, 0x00);
           FillMemory(reg + 0xb0, 0x04, 0x00);
           FillMemory(reg + 0xb4, 0x04, 0xc0);
   }
   
 void fmboard_reset(UINT32 type) {  void fmboard_reset(UINT32 type) {
   
         BYTE    cross;          BYTE    cross;
Line 110  void fmboard_reset(UINT32 type) { Line 118  void fmboard_reset(UINT32 type) {
   
         extfn = NULL;          extfn = NULL;
         ZeroMemory(&opn, sizeof(opn));          ZeroMemory(&opn, sizeof(opn));
         opn.channels = 3;          setfmregs(opn.reg + 0x000);
         opn.adpcmmask = (BYTE)~(0x1c);          setfmregs(opn.reg + 0x100);
           setfmregs(opn.reg + 0x200);
           setfmregs(opn.reg + 0x300);
         opn.reg[0xff] = 0x01;          opn.reg[0xff] = 0x01;
           opn.channels = 3;
           opn.adpcmmask = (UINT8)~(0x1c);
   
         ZeroMemory(&musicgen, sizeof(musicgen));          ZeroMemory(&musicgen, sizeof(musicgen));
         ZeroMemory(&amd98, sizeof(amd98));          ZeroMemory(&amd98, sizeof(amd98));
Line 218  void fmboard_bind(void) { Line 230  void fmboard_bind(void) {
         sound_streamregist(&beep, (SOUNDCB)beep_getpcm);          sound_streamregist(&beep, (SOUNDCB)beep_getpcm);
 }  }
   
   
   // ----
   
   void fmboard_fmrestore(REG8 chbase, UINT bank) {
   
           REG8    i;
   const BYTE      *reg;
   
           reg = opn.reg + (bank * 0x100);
           for (i=0x30; i<0xa0; i++) {
                   opngen_setreg(chbase, i, reg[i]);
           }
           for (i=0xb7; i>=0xa0; i--) {
                   opngen_setreg(chbase, i, reg[i]);
           }
           for (i=0; i<3; i++) {
                   opngen_keyon(chbase + i, opngen.keyreg[chbase + i]);
           }
   }
   
   void fmboard_rhyrestore(RHYTHM rhy, UINT bank) {
   
   const BYTE      *reg;
   
           reg = opn.reg + (bank * 0x100);
           rhythm_setreg(rhy, 0x11, reg[0x11]);
           rhythm_setreg(rhy, 0x18, reg[0x18]);
           rhythm_setreg(rhy, 0x19, reg[0x19]);
           rhythm_setreg(rhy, 0x1a, reg[0x1a]);
           rhythm_setreg(rhy, 0x1b, reg[0x1b]);
           rhythm_setreg(rhy, 0x1c, reg[0x1c]);
           rhythm_setreg(rhy, 0x1d, reg[0x1d]);
   }
   

Removed from v.1.8  
changed lines
  Added in v.1.11


RetroPC.NET-CVS <cvs@retropc.net>