Fix implementation of BCD mode quirks on 6502 and 65c02 #55
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes the remaining issues with BCD compatibility discussed in #33 (but not the additional opcodes). This leans heavily on the following resources:
I have added a few things here that were useful in development:
added the ability to trace execution with a flag to mpu.step(). This was critical when trying to debug the behaviour of 6502 functional test code. At this point it is not necessary for the patch though, so I could remove or reimplement it.
helpers for executing test cases that are implemented as 6502 binary code
wired up Bruce Clark's BCD test suite, which now passes
added a test harness for executing Klaus Dormann's test suite, if the binary object files are separately provided (they are skipped if not present). These tests also now pass, with the exception of: