My soft-core passes all of the vectors *except* for the self-modifying JSR instruction that has a stack that points into the middle of the instruction stream and pushes the return address atop the partially fetched instruction. I think I'll ignore that one for now... https://github.com/SingleStepTests/65x02/issues/18
And the softcore passes the most important test: it seems to run BattleZone correctly! Time to get the hardware out of storage for testing on the oscilloscope.
@th When the program counter is 2 bytes away from the rapidly aproaching stack pointer, you are in a world of software pain. The subroutine will return to a non-meaningful instruction. It's a test of whether you have exactly emulated the device but a terrible behaviour to ever encounter in real execution.