From a23b0f5122695eb3d836988035851c92f667c296 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Thu, 23 Jun 2022 20:57:47 -0400 Subject: [PATCH] Map `STA (d), y` to correct calculator. --- Processors/65816/Implementation/65816Storage.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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);