POKEY: per-chan osc
This commit is contained in:
parent
15dc663a15
commit
210a002ae4
|
@ -74,6 +74,14 @@ void DivPlatformPOKEY::acquire(short* bufL, short* bufR, size_t start, size_t le
|
||||||
}
|
}
|
||||||
|
|
||||||
mzpokeysnd_process_16(&pokey,&bufL[h],1);
|
mzpokeysnd_process_16(&pokey,&bufL[h],1);
|
||||||
|
|
||||||
|
if (++oscBufDelay>=14) {
|
||||||
|
oscBufDelay=0;
|
||||||
|
oscBuf[0]->data[oscBuf[0]->needle++]=pokey.outvol_0<<11;
|
||||||
|
oscBuf[1]->data[oscBuf[1]->needle++]=pokey.outvol_1<<11;
|
||||||
|
oscBuf[2]->data[oscBuf[2]->needle++]=pokey.outvol_2<<11;
|
||||||
|
oscBuf[3]->data[oscBuf[3]->needle++]=pokey.outvol_3<<11;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -408,7 +416,7 @@ void DivPlatformPOKEY::setFlags(const DivConfig& flags) {
|
||||||
CHECK_CUSTOM_CLOCK;
|
CHECK_CUSTOM_CLOCK;
|
||||||
rate=chipClock;
|
rate=chipClock;
|
||||||
for (int i=0; i<4; i++) {
|
for (int i=0; i<4; i++) {
|
||||||
oscBuf[i]->rate=rate/16;
|
oscBuf[i]->rate=rate/14;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -424,6 +432,7 @@ int DivPlatformPOKEY::init(DivEngine* p, int channels, int sugRate, const DivCon
|
||||||
parent=p;
|
parent=p;
|
||||||
dumpWrites=false;
|
dumpWrites=false;
|
||||||
skipRegisterWrites=false;
|
skipRegisterWrites=false;
|
||||||
|
oscBufDelay=0;
|
||||||
for (int i=0; i<4; i++) {
|
for (int i=0; i<4; i++) {
|
||||||
isMuted[i]=false;
|
isMuted[i]=false;
|
||||||
oscBuf[i]=new DivDispatchOscBuffer;
|
oscBuf[i]=new DivDispatchOscBuffer;
|
||||||
|
|
|
@ -47,6 +47,7 @@ class DivPlatformPOKEY: public DivDispatch {
|
||||||
std::queue<QueuedWrite> writes;
|
std::queue<QueuedWrite> writes;
|
||||||
unsigned char audctl;
|
unsigned char audctl;
|
||||||
bool audctlChanged;
|
bool audctlChanged;
|
||||||
|
unsigned char oscBufDelay;
|
||||||
PokeyState pokey;
|
PokeyState pokey;
|
||||||
unsigned char regPool[16];
|
unsigned char regPool[16];
|
||||||
friend void putDispatchChip(void*,int);
|
friend void putDispatchChip(void*,int);
|
||||||
|
|
Loading…
Reference in New Issue