From a6fbd6a62d76694bc9b259ad2ec4195d2a89aacb Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Sun, 17 May 2020 12:18:40 +0300 Subject: [PATCH] Fix tester branch PC check. --- cputest/main.c | 2 +- cputest/readme.txt | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/cputest/main.c b/cputest/main.c index 44313251..b88b721f 100644 --- a/cputest/main.c +++ b/cputest/main.c @@ -2276,7 +2276,7 @@ static uae_u8 *validate_test(uae_u8 *p, short ignore_errors, short ignore_sr, st } if (exc == 0 && cpuexc == 4) { // successful complete generates exception 4 with matching PC - if (lregs->pc + opcodeendsizeextra != tregs->pc && dooutput) { + if (lregs->pc + opcodeendsizeextra != tregs->pc && lregs->pc != tregs->pc && dooutput) { sprintf(outbp, "PC: expected %08x but got %08x\n", lregs->pc, tregs->pc); outbp += strlen(outbp); if (tregs->pc == opcode_memory_addr) { diff --git a/cputest/readme.txt b/cputest/readme.txt index c3208b7d..b7b9a71f 100644 --- a/cputest/readme.txt +++ b/cputest/readme.txt @@ -131,6 +131,10 @@ If mismatch is detected, opcode word(s), instruction disassembly, registers befo Change log: +17.05.2020 + +- Rewritten disassembler to use indirect and validated opword reads, now it is safe to use when testing bus errors. + 09.05.2020 - dat format changed, now it is possible to continue running test if previous test reported error. -- 2.47.3