deco16 games speed fix
This commit is contained in:
parent
28789c00e8
commit
97edd16806
|
@ -708,7 +708,7 @@ static INT32 DrvFrame()
|
|||
}
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 14000000 / 58, 8055000 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -723,7 +723,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 248) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
if (pBurnSoundOut) {
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
|
|
|
@ -600,7 +600,7 @@ static INT32 DrvFrame()
|
|||
}
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 12000000 / 58, 8055000 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -617,7 +617,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 240) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
INT16* pSoundBuf = SoundBuffer + (nSoundBufferPos << 1);
|
||||
|
@ -639,8 +639,8 @@ static INT32 DrvFrame()
|
|||
}
|
||||
|
||||
for (INT32 i = 0; i < nBurnSoundLen; i++) {
|
||||
pBurnSoundOut[(i << 1) + 0] += SoundBuffer[(i << 1) + 0];
|
||||
pBurnSoundOut[(i << 1) + 1] += SoundBuffer[(i << 1) + 1];
|
||||
pBurnSoundOut[(i << 1) + 0] = BURN_SND_CLIP(pBurnSoundOut[(i << 1) + 0] + SoundBuffer[(i << 1) + 0]);
|
||||
pBurnSoundOut[(i << 1) + 1] = BURN_SND_CLIP(pBurnSoundOut[(i << 1) + 1] + SoundBuffer[(i << 1) + 1]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -636,7 +636,7 @@ static INT32 DrvFrame()
|
|||
}
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 12000000 / 58, 8055000 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -654,7 +654,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 7) vblank = 0;
|
||||
if (i == 247) vblank = 8;
|
||||
if (i == 206) vblank = 8;
|
||||
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
INT16* pSoundBuf = SoundBuffer + (nSoundBufferPos << 1);
|
||||
|
@ -676,8 +676,8 @@ static INT32 DrvFrame()
|
|||
}
|
||||
|
||||
for (INT32 i = 0; i < nBurnSoundLen; i++) {
|
||||
pBurnSoundOut[(i << 1) + 0] += SoundBuffer[(i << 1) + 0];
|
||||
pBurnSoundOut[(i << 1) + 1] += SoundBuffer[(i << 1) + 1];
|
||||
pBurnSoundOut[(i << 1) + 0] = BURN_SND_CLIP(pBurnSoundOut[(i << 1) + 0] + SoundBuffer[(i << 1) + 0]);
|
||||
pBurnSoundOut[(i << 1) + 1] = BURN_SND_CLIP(pBurnSoundOut[(i << 1) + 1] + SoundBuffer[(i << 1) + 1]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -559,7 +559,7 @@ static INT32 DrvFrame()
|
|||
DrvInputs[2] = (DrvDips[1] << 8) | (DrvDips[0] << 0);
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 14000000 / 58, 8055000 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -576,7 +576,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 248) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
if (pBurnSoundOut) {
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
|
|
|
@ -1610,7 +1610,7 @@ static INT32 DrvFrame()
|
|||
DrvInputs[2] = (DrvDips[1] << 8) | (DrvDips[0] << 0);
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 14000000 / 58, 2685000 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -1627,7 +1627,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 240) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
if (pBurnSoundOut) {
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
|
|
|
@ -482,7 +482,7 @@ static INT32 DrvFrame()
|
|||
}
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 14000000 / 58, 4027500 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -499,7 +499,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 240) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
if (pBurnSoundOut) {
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
|
|
|
@ -443,7 +443,7 @@ static INT32 DrvFrame()
|
|||
}
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 14000000 / 58, 4027500 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -458,7 +458,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 240) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
if (pBurnSoundOut) {
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
|
|
|
@ -537,7 +537,7 @@ static INT32 DrvFrame()
|
|||
}
|
||||
}
|
||||
|
||||
INT32 nInterleave = 256;
|
||||
INT32 nInterleave = 232;
|
||||
INT32 nSoundBufferPos = 0;
|
||||
INT32 nCyclesTotal[2] = { 12000000 / 58, 8055000 / 58 };
|
||||
INT32 nCyclesDone[2] = { 0, 0 };
|
||||
|
@ -554,7 +554,7 @@ static INT32 DrvFrame()
|
|||
nCyclesDone[0] += SekRun(nCyclesTotal[0] / nInterleave);
|
||||
nCyclesDone[1] += h6280Run(nCyclesTotal[1] / nInterleave);
|
||||
|
||||
if (i == 248) deco16_vblank = 0x08;
|
||||
if (i == 206) deco16_vblank = 0x08;
|
||||
|
||||
INT32 nSegmentLength = nBurnSoundLen / nInterleave;
|
||||
INT16* pSoundBuf = SoundBuffer + (nSoundBufferPos << 1);
|
||||
|
@ -577,8 +577,8 @@ static INT32 DrvFrame()
|
|||
}
|
||||
|
||||
for (INT32 i = 0; i < nBurnSoundLen; i++) {
|
||||
pBurnSoundOut[(i << 1) + 0] += SoundBuffer[(i << 1) + 0];
|
||||
pBurnSoundOut[(i << 1) + 1] += SoundBuffer[(i << 1) + 1];
|
||||
pBurnSoundOut[(i << 1) + 0] = BURN_SND_CLIP(pBurnSoundOut[(i << 1) + 0] + SoundBuffer[(i << 1) + 0]);
|
||||
pBurnSoundOut[(i << 1) + 1] = BURN_SND_CLIP(pBurnSoundOut[(i << 1) + 1] + SoundBuffer[(i << 1) + 1]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue