--- xmil/sound/opmgenc.c 2004/08/01 05:31:31 1.1 +++ xmil/sound/opmgenc.c 2004/08/10 10:17:39 1.5 @@ -2,12 +2,6 @@ #include #include "sound.h" #include "sndctrl.h" -#include "juliet.h" -#include "x1f.h" - - -extern int s_cnt; -extern DWORD basedclk; #define OPM_ARRATE 399128L @@ -23,7 +17,6 @@ extern DWORD basedclk; OPMCFG opmcfg; - UINT8 fmop[256]; static SINT32 detunetable[8][32]; static SINT32 attacktable[94]; static SINT32 decaytable[94]; @@ -182,16 +175,20 @@ static void set_algorithm(OPMCH *ch, REG ch->feedback = 0; } - switch(value & 0xc0) { - case 0x40: + switch((value >> 6) & 3) { + case 0: + outd = &opmgen.feedback4; + break; + + case 1: outd = &opmgen.outdl; break; - case 0x80: + case 2: outd = &opmgen.outdr; break; - default: + case 3: outd = &opmgen.outdc; break; } @@ -353,9 +350,6 @@ void opmgen_reset(void) { OPMSLOT *slot; UINT j; - juliet_YM2151Reset(); - juliet_YMF288Reset(); - opmgen.mode = 0; ch = opmch; for(i=0; islot + fmslot[(reg >> 3) & 3];