Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
# Conflicts: # CMakeLists.txt # papers/doc/7-systems/README.md # src/engine/dispatch.h # src/engine/dispatchContainer.cpp # src/engine/playback.cpp # src/engine/sysDef.cpp # src/gui/gui.cpp
This commit is contained in:
commit
2e6cc9fc7c
30 changed files with 1572 additions and 230 deletions
|
|
@ -124,6 +124,9 @@ const char* cmdName[DIV_CMD_MAX]={
|
|||
"X1_010_ENVELOPE_SLIDE",
|
||||
"X1_010_AUTO_ENVELOPE",
|
||||
|
||||
"WS_SWEEP_TIME",
|
||||
"WS_SWEEP_AMOUNT",
|
||||
|
||||
"ALWAYS_SET_VOLUME"
|
||||
};
|
||||
|
||||
|
|
@ -273,6 +276,27 @@ bool DivEngine::perSystemEffect(int ch, unsigned char effect, unsigned char effe
|
|||
return false;
|
||||
}
|
||||
break;
|
||||
case DIV_SYSTEM_SWAN:
|
||||
switch (effect) {
|
||||
case 0x10: // select waveform
|
||||
dispatchCmd(DivCommand(DIV_CMD_WAVE,ch,effectVal));
|
||||
break;
|
||||
case 0x11: // noise mode
|
||||
dispatchCmd(DivCommand(DIV_CMD_STD_NOISE_MODE,ch,effectVal));
|
||||
break;
|
||||
case 0x12: // sweep period
|
||||
dispatchCmd(DivCommand(DIV_CMD_WS_SWEEP_TIME,ch,effectVal));
|
||||
break;
|
||||
case 0x13: // sweep amount
|
||||
dispatchCmd(DivCommand(DIV_CMD_WS_SWEEP_AMOUNT,ch,effectVal));
|
||||
break;
|
||||
case 0x17: // PCM enable
|
||||
dispatchCmd(DivCommand(DIV_CMD_SAMPLE_MODE,ch,(effectVal>0)));
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue