mirror of
https://github.com/RetroDECK/Supermodel.git
synced 2025-02-16 17:35:39 +00:00
Stretch the time the ping_pong bit flips a bit to bump writes into correct frame. Otherwise they end up getting written at like 99.8% of the frame and overlapping with the next.
This commit is contained in:
parent
ed2816cea4
commit
e1827cfd13
|
@ -553,7 +553,6 @@ UINT8 CModel3::ReadInputs(unsigned reg)
|
||||||
adc[1] = (UINT8)Inputs->analogGunX[1]->value;
|
adc[1] = (UINT8)Inputs->analogGunX[1]->value;
|
||||||
adc[3] = (UINT8)Inputs->analogGunY[1]->value;
|
adc[3] = (UINT8)Inputs->analogGunY[1]->value;
|
||||||
|
|
||||||
/*
|
|
||||||
// Unclear why this is necessary or how to cleanly fix it, so I'm
|
// Unclear why this is necessary or how to cleanly fix it, so I'm
|
||||||
// disabling it but leaving it here for future reference. The proper fix is
|
// disabling it but leaving it here for future reference. The proper fix is
|
||||||
// probably to allow users to define inverted controls for this game only,
|
// probably to allow users to define inverted controls for this game only,
|
||||||
|
@ -566,7 +565,6 @@ UINT8 CModel3::ReadInputs(unsigned reg)
|
||||||
adc[2] = (UINT8)Inputs->analogGunX[1]->value;
|
adc[2] = (UINT8)Inputs->analogGunX[1]->value;
|
||||||
adc[3] = 255 - (UINT8)Inputs->analogGunY[1]->value;
|
adc[3] = 255 - (UINT8)Inputs->analogGunY[1]->value;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((m_game.inputs & Game::INPUT_SKI))
|
if ((m_game.inputs & Game::INPUT_SKI))
|
||||||
|
@ -2083,7 +2081,7 @@ void CModel3::RunMainBoardFrame(void)
|
||||||
unsigned gapCycles = (unsigned)((float)frameCycles * 2.5f / 100.0f); // we need a gap between asserting irq2 & irq 0x40
|
unsigned gapCycles = (unsigned)((float)frameCycles * 2.5f / 100.0f); // we need a gap between asserting irq2 & irq 0x40
|
||||||
unsigned offsetCycles = (unsigned)((float)frameCycles * 33.f / 100.0f);
|
unsigned offsetCycles = (unsigned)((float)frameCycles * 33.f / 100.0f);
|
||||||
unsigned dispCycles = frameCycles - gapCycles - offsetCycles;
|
unsigned dispCycles = frameCycles - gapCycles - offsetCycles;
|
||||||
unsigned statusCycles = (unsigned)((float)frameCycles * (0.001f));
|
unsigned statusCycles = (unsigned)((float)frameCycles * (0.005f));
|
||||||
|
|
||||||
// we think a frame looks like this on the model 2
|
// we think a frame looks like this on the model 2
|
||||||
// 66% of frame
|
// 66% of frame
|
||||||
|
|
Loading…
Reference in a new issue