implement more effects
- C64: set fine duty and filter - Neo Geo: slide SSG envelope
This commit is contained in:
parent
69b56e6d4c
commit
651db5784e
7 changed files with 67 additions and 0 deletions
|
|
@ -195,6 +195,11 @@ int DivPlatformC64::dispatch(DivCommand c) {
|
|||
rWrite(c.chan*7+2,chan[c.chan].duty&0xff);
|
||||
rWrite(c.chan*7+3,chan[c.chan].duty>>8);
|
||||
break;
|
||||
case DIV_CMD_C64_FINE_DUTY:
|
||||
chan[c.chan].duty=c.value;
|
||||
rWrite(c.chan*7+2,chan[c.chan].duty&0xff);
|
||||
rWrite(c.chan*7+3,chan[c.chan].duty>>8);
|
||||
break;
|
||||
case DIV_CMD_WAVE:
|
||||
chan[c.chan].wave=c.value;
|
||||
rWrite(c.chan*7+4,(chan[c.chan].wave<<4)|(chan[c.chan].ring<<2)|(chan[c.chan].sync<<1)|chan[c.chan].active);
|
||||
|
|
@ -220,6 +225,10 @@ int DivPlatformC64::dispatch(DivCommand c) {
|
|||
filtCut=c.value*2047/100;
|
||||
updateFilter();
|
||||
break;
|
||||
case DIV_CMD_C64_FINE_CUTOFF:
|
||||
filtCut=c.value;
|
||||
updateFilter();
|
||||
break;
|
||||
case DIV_CMD_C64_RESONANCE:
|
||||
if (c.value>15) c.value=15;
|
||||
filtRes=c.value;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue