diff --git a/Processors/65816/Implementation/65816Storage.cpp b/Processors/65816/Implementation/65816Storage.cpp index 677fd496b..ddd9202ec 100644 --- a/Processors/65816/Implementation/65816Storage.cpp +++ b/Processors/65816/Implementation/65816Storage.cpp @@ -479,7 +479,11 @@ struct CPU::WDC65816::ProcessorStorageConstructor { target(CycleFetchData); // AAH. target(OperationCopyDataToInstruction); - target(OperationConstructAbsoluteYRead); + if(type == AccessType::Read) { + target(OperationConstructAbsoluteYRead); // Calculate data address, potentially skipping the next fetch. + } else { + target(OperationConstructAbsoluteY); // Calculate data address. + } target(CycleFetchIncorrectDataAddress); // IO. read_write(type, is8bit, target);