diff --git a/source/Joystick.cpp b/source/Joystick.cpp index 30e77c23..a7edb82a 100644 --- a/source/Joystick.cpp +++ b/source/Joystick.cpp @@ -643,7 +643,7 @@ void JoyReset() } //=========================================================================== -BYTE __stdcall JoyResetPosition(WORD, WORD, BYTE, BYTE, ULONG nExecutedCycles) +void JoyResetPosition(ULONG nExecutedCycles) { CpuCalcCycles(nExecutedCycles); g_nJoyCntrResetCycle = g_nCumulativeCycles; @@ -652,8 +652,6 @@ BYTE __stdcall JoyResetPosition(WORD, WORD, BYTE, BYTE, ULONG nExecutedCycles) CheckJoystick0(); if((joyinfo[joytype[1]] == DEVICE_JOYSTICK) || (joyinfo[joytype[1]] == DEVICE_JOYSTICK_THUMBSTICK2)) CheckJoystick1(); - - return MemReadFloatingBus(nExecutedCycles); } //=========================================================================== diff --git a/source/Joystick.h b/source/Joystick.h index 09f322c9..668d650a 100644 --- a/source/Joystick.h +++ b/source/Joystick.h @@ -30,4 +30,4 @@ void JoyLoadSnapshot(class YamlLoadHelper& yamlLoadHelper); BYTE __stdcall JoyReadButton(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG nExecutedCycles); BYTE __stdcall JoyReadPosition(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG nExecutedCycles); -BYTE __stdcall JoyResetPosition(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG nExecutedCycles); +void JoyResetPosition(ULONG nExecutedCycles); diff --git a/source/Memory.cpp b/source/Memory.cpp index 5c551104..5457e991 100644 --- a/source/Memory.cpp +++ b/source/Memory.cpp @@ -552,12 +552,12 @@ static BYTE __stdcall IOWrite_C06x(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULON static BYTE __stdcall IORead_C07x(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG nExecutedCycles) { - // Apple//e TRM, pg-258: "Reading or writing any address in the range $C070-$C07F also triggers the paddle time and resets the VBLINT(*)." (*) //c only! - JoyResetPosition(pc, addr, bWrite, d, nExecutedCycles); //$C07X Analog input reset + // Apple//e TRM, pg-258: "Reading or writing any address in the range $C070-$C07F also triggers the paddle timer and resets the VBLINT(*)." (*) //c only! + JoyResetPosition(nExecutedCycles); //$C07X Analog input reset switch (addr & 0xf) { - case 0x0: break; + case 0x0: return IO_Null(pc, addr, bWrite, d, nExecutedCycles); case 0x1: return IO_Null(pc, addr, bWrite, d, nExecutedCycles); case 0x2: return IO_Null(pc, addr, bWrite, d, nExecutedCycles); case 0x3: return IO_Null(pc, addr, bWrite, d, nExecutedCycles); @@ -582,8 +582,8 @@ static BYTE __stdcall IORead_C07x(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG static BYTE __stdcall IOWrite_C07x(WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG nExecutedCycles) { - // Apple//e TRM, pg-258: "Reading or writing any address in the range $C070-$C07F also triggers the paddle time and resets the VBLINT(*)." (*) //c only! - JoyResetPosition(pc, addr, bWrite, d, nExecutedCycles); //$C07X Analog input reset + // Apple//e TRM, pg-258: "Reading or writing any address in the range $C070-$C07F also triggers the paddle timer and resets the VBLINT(*)." (*) //c only! + JoyResetPosition(nExecutedCycles); //$C07X Analog input reset switch (addr & 0xf) {