parent
f0207011da
commit
a36d78305a
|
@ -256,8 +256,9 @@ void DivPlatformGenesis::acquire_ymfm(short** buf, size_t len) {
|
|||
if (delay>0) delay--;
|
||||
|
||||
os[0]=0; os[1]=0;
|
||||
if (delay<=0 && !writes.empty()) {
|
||||
if (!writes.empty()) {
|
||||
QueuedWrite& w=writes.front();
|
||||
if (delay<=0 || w.urgent) {
|
||||
if (w.addr==0xfffffffe) {
|
||||
delay=w.val;
|
||||
} else {
|
||||
|
@ -276,6 +277,17 @@ void DivPlatformGenesis::acquire_ymfm(short** buf, size_t len) {
|
|||
canWriteDAC=writes.empty();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (dacWrite>=0) {
|
||||
if (!canWriteDAC) {
|
||||
canWriteDAC=true;
|
||||
} else {
|
||||
urgentWrite(0x2a,dacWrite);
|
||||
dacWrite=-1;
|
||||
canWriteDAC=writes.empty();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
canWriteDAC=true;
|
||||
if (dacWrite>=0) {
|
||||
|
@ -414,8 +426,9 @@ void DivPlatformGenesis::acquire_nuked276(short** buf, size_t len) {
|
|||
|
||||
if (delay>0) delay--;
|
||||
|
||||
if (delay<=0 && !writes.empty()) {
|
||||
if (!writes.empty()) {
|
||||
QueuedWrite& w=writes.front();
|
||||
if (delay<=0 || w.urgent) {
|
||||
if (w.addr==0xfffffffe) {
|
||||
delay=w.val;
|
||||
writes.pop_front();
|
||||
|
@ -564,6 +577,17 @@ void DivPlatformGenesis::acquire_nuked276(short** buf, size_t len) {
|
|||
} else {
|
||||
w.addrOrVal=true;
|
||||
}
|
||||
} else {
|
||||
if (dacWrite>=0) {
|
||||
if (!canWriteDAC) {
|
||||
canWriteDAC=true;
|
||||
} else {
|
||||
urgentWrite(0x2a,dacWrite);
|
||||
dacWrite=-1;
|
||||
canWriteDAC=writes.empty();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
canWriteDAC=true;
|
||||
if (dacWrite>=0) {
|
||||
|
|
Loading…
Reference in a new issue