--- np2/sound/adpcmc.c 2003/12/08 00:55:33 1.3 +++ np2/sound/adpcmc.c 2004/02/06 17:10:32 1.5 @@ -6,7 +6,6 @@ ADPCMCFG adpcmcfg; - void adpcm_initialize(UINT rate) { adpcmcfg.rate = rate; @@ -21,7 +20,7 @@ void adpcm_reset(ADPCM ad) { ZeroMemory(ad, sizeof(_ADPCM)); ad->mask = 0; // (BYTE)~0x1c; - ad->delta = 128; + ad->delta = 127; STOREINTELWORD(ad->reg.stop, 0x0002); STOREINTELWORD(ad->reg.limit, 0xffff); ad->stop = 0x000060; @@ -50,6 +49,7 @@ void adpcm_setreg(ADPCM ad, REG8 reg, RE UINT32 addr; + sound_sync(); ((BYTE *)(&ad->reg))[reg] = value; switch(reg) { case 0x00: // control1 @@ -57,7 +57,7 @@ void adpcm_setreg(ADPCM ad, REG8 reg, RE ad->play = 0x20; ad->pos = ad->start; ad->samp = 0; - ad->delta = 128; + ad->delta = 127; ad->remain = 0; } if (value & 1) {