|
|
| version 1.2, 2004/08/05 11:30:12 | version 1.5, 2004/08/10 10:17:39 |
|---|---|
| Line 4 | Line 4 |
| #include "sndctrl.h" | #include "sndctrl.h" |
| // extern int s_cnt; | |
| // extern DWORD basedclk; | |
| #define OPM_ARRATE 399128L | #define OPM_ARRATE 399128L |
| #define OPM_DRRATE 5514396L | #define OPM_DRRATE 5514396L |
| Line 179 static void set_algorithm(OPMCH *ch, REG | Line 175 static void set_algorithm(OPMCH *ch, REG |
| ch->feedback = 0; | ch->feedback = 0; |
| } | } |
| switch(value & 0xc0) { | switch((value >> 6) & 3) { |
| case 0x40: | case 0: |
| outd = &opmgen.feedback4; | |
| break; | |
| case 1: | |
| outd = &opmgen.outdl; | outd = &opmgen.outdl; |
| break; | break; |
| case 0x80: | case 2: |
| outd = &opmgen.outdr; | outd = &opmgen.outdr; |
| break; | break; |
| default: | case 3: |
| outd = &opmgen.outdc; | outd = &opmgen.outdc; |
| break; | break; |
| } | } |
| Line 381 void opmgen_setreg(REG8 reg, REG8 value) | Line 381 void opmgen_setreg(REG8 reg, REG8 value) |
| OPMCH *ch; | OPMCH *ch; |
| OPMSLOT *slot; | OPMSLOT *slot; |
| // if (romeo_exist) { | sound_sync(); |
| // juliet2_YM2151W(reg, value, (basedclk * s_cnt / 1600)); | |
| // return; | |
| // } | |
| c = reg & 7; | c = reg & 7; |
| ch = opmch + c; | ch = opmch + c; |
| slot = ch->slot + fmslot[(reg >> 3) & 3]; | slot = ch->slot + fmslot[(reg >> 3) & 3]; |