Fix tester branch PC check.

This commit is contained in:
Toni Wilen 2020-05-17 12:18:40 +03:00
parent 580b3f2dad
commit a6fbd6a62d
2 changed files with 5 additions and 1 deletions

View File

@ -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) {

View File

@ -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.