Amiga: better emulation, part 6

This commit is contained in:
tildearrow 2023-03-11 01:42:13 -05:00
parent 8fc6a71882
commit 1a80fb262d
2 changed files with 2 additions and 14 deletions

View File

@ -338,7 +338,6 @@ void DivPlatformAmiga::tick(bool sysTick) {
if (chan[i].wave!=chan[i].std.wave.val || chan[i].ws.activeChanged()) {
chan[i].wave=chan[i].std.wave.val;
chan[i].ws.changeWave1(chan[i].wave);
if (!chan[i].keyOff) chan[i].keyOn=true;
}
}
if (chan[i].useWave && chan[i].active) {
@ -585,7 +584,8 @@ void DivPlatformAmiga::forceIns() {
chan[i].insChanged=true;
chan[i].freqChanged=true;
chan[i].audPos=131072;
chan[i].audDat=0;
chan[i].keyOn=false;
chan[i].keyOff=false;
chan[i].sample=-1;
}
}

View File

@ -26,33 +26,21 @@
class DivPlatformAmiga: public DivDispatch {
struct Channel: public SharedChannel<signed char> {
unsigned int audLoc;
unsigned short audLen;
unsigned int audPos;
unsigned int dmaLoc;
unsigned short dmaLen;
int audSub;
signed char audDat;
signed char audDat2;
unsigned char volPos;
int sample, wave;
int busClock;
bool useWave, setPos, useV, useP, dmaOn, audDatClock, writeVol;
DivWaveSynth ws;
Channel():
SharedChannel<signed char>(64),
audLoc(0),
audLen(0),
audPos(0),
dmaLoc(0),
dmaLen(0),
audSub(0),
audDat(0),
audDat2(0),
volPos(0),
sample(-1),
wave(-1),
busClock(0),
useWave(false),
setPos(false),
useV(false),