Fixed bug with SRQ line preventing the cassette from working.

This commit is contained in:
Stephen White 2018-10-21 22:01:59 +11:00
parent bc559f4291
commit db692407c3
2 changed files with 11 additions and 0 deletions

View File

@ -310,6 +310,12 @@ public:
RPI_GpioBase->GPPUDCLK0 = 0;
}
static inline void LetSRQBePulledHigh()
{
SRQSetToOut = IEC_Bus::invertIECInputs;
RefreshOuts1581();
}
static inline void UpdateButton(int index, unsigned gplev0)
{
bool inputcurrent = (gplev0 & ButtonPinFlags[index]) == 0;

View File

@ -660,6 +660,8 @@ EXIT_TYPE Emulate1541(FileBrowser* fileBrowser)
IEC_Bus::port = pi1541.VIA[0].GetPortB();
pi1541.Reset(); // will call IEC_Bus::Reset();
IEC_Bus::LetSRQBePulledHigh();
ctBefore = read32(ARM_SYSTIMER_CLO);
//resetWhileEmulating = false;
@ -1002,6 +1004,9 @@ void emulator()
IEC_Bus::port = 0;
IEC_Bus::Reset();
IEC_Bus::LetSRQBePulledHigh();
// workaround for occasional oled curruption
if (screenLCD)
screenLCD->ClearInit(0);