Reduce duplicates of channel struct
Add/Fix custom clock limit defines (for YMF278B)
This commit is contained in:
parent
fd3f381bc3
commit
2ec4237076
69 changed files with 457 additions and 1151 deletions
|
|
@ -26,38 +26,26 @@
|
|||
#include "sound/nes_nsfplay/nes_apu.h"
|
||||
|
||||
class DivPlatformNES: public DivDispatch {
|
||||
struct Channel {
|
||||
int freq, baseFreq, pitch, pitch2, prevFreq, note, ins;
|
||||
struct Channel: public SharedChannelFreq, public SharedChannelVolume<signed char> {
|
||||
int prevFreq;
|
||||
unsigned char duty, sweep, envMode, len;
|
||||
bool active, insChanged, freqChanged, sweepChanged, keyOn, keyOff, inPorta, furnaceDac;
|
||||
signed char vol, outVol, wave;
|
||||
bool sweepChanged, furnaceDac;
|
||||
signed char wave;
|
||||
DivMacroInt std;
|
||||
void macroInit(DivInstrument* which) {
|
||||
std.init(which);
|
||||
pitch2=0;
|
||||
}
|
||||
Channel():
|
||||
freq(0),
|
||||
baseFreq(0),
|
||||
pitch(0),
|
||||
pitch2(0),
|
||||
SharedChannelFreq(),
|
||||
SharedChannelVolume<signed char>(15),
|
||||
prevFreq(65535),
|
||||
note(0),
|
||||
ins(-1),
|
||||
duty(0),
|
||||
sweep(8),
|
||||
envMode(3),
|
||||
len(0x1f),
|
||||
active(false),
|
||||
insChanged(true),
|
||||
freqChanged(false),
|
||||
sweepChanged(false),
|
||||
keyOn(false),
|
||||
keyOff(false),
|
||||
inPorta(false),
|
||||
furnaceDac(false),
|
||||
vol(15),
|
||||
outVol(15),
|
||||
wave(-1) {}
|
||||
};
|
||||
Channel chan[5];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue