mirror of
https://github.com/tildearrow/furnace.git
synced 2024-11-27 06:53:01 +00:00
genesis: implement 10xx command
This commit is contained in:
parent
c519b84c91
commit
0b8fcc6e8d
3 changed files with 9 additions and 0 deletions
|
@ -18,6 +18,7 @@ enum DivDispatchCmds {
|
|||
|
||||
DIV_CMD_SAMPLE_MODE,
|
||||
|
||||
DIV_CMD_FM_LFO,
|
||||
DIV_CMD_FM_TL,
|
||||
DIV_CMD_FM_AR,
|
||||
DIV_CMD_FM_FB,
|
||||
|
|
|
@ -279,6 +279,10 @@ int DivPlatformGenesis::dispatch(DivCommand c) {
|
|||
chan[c.chan].freqChanged=true;
|
||||
break;
|
||||
}
|
||||
case DIV_CMD_FM_LFO: {
|
||||
rWrite(0x22,(c.value&7)|((c.value>>4)<<3));
|
||||
break;
|
||||
}
|
||||
case DIV_CMD_FM_MULT: {
|
||||
unsigned short baseAddr=chanOffs[c.chan]|opOffs[orderedOps[c.value]];
|
||||
DivInstrument* ins=parent->getIns(chan[c.chan].ins);
|
||||
|
|
|
@ -26,6 +26,7 @@ const char* cmdName[DIV_CMD_MAX]={
|
|||
|
||||
"SAMPLE_MODE",
|
||||
|
||||
"FM_LFO",
|
||||
"FM_TL",
|
||||
"FM_AR",
|
||||
"FM_FB",
|
||||
|
@ -119,6 +120,9 @@ bool DivEngine::perSystemPostEffect(int ch, unsigned char effect, unsigned char
|
|||
case DIV_SYSTEM_GENESIS:
|
||||
case DIV_SYSTEM_GENESIS_EXT:
|
||||
switch (effect) {
|
||||
case 0x10: // LFO
|
||||
dispatchCmd(DivCommand(DIV_CMD_FM_LFO,ch,effectVal));
|
||||
break;
|
||||
case 0x11: // FB
|
||||
dispatchCmd(DivCommand(DIV_CMD_FM_FB,ch,effectVal&7));
|
||||
break;
|
||||
|
|
Loading…
Reference in a new issue