If you can use (or convert) python, you might get some mileage out of the
testsuite in Mike's
py65 emulator. A typical test looks like this [I've cut a few lines]
Code:
def test_adc_bcd_off_absolute_carry_clear_in_accumulator_zeroes(self):
mpu.a = 0
self._write(mpu.memory, 0x0000, (0x6D, 0x00, 0xC0)) #=> $0000 ADC $C000
mpu.memory[0xC000] = 0x00
mpu.step()
self.assertEquals(0x0003, mpu.pc)
self.assertEquals(0x00, mpu.a)
self.assertEquals(0, mpu.flags & mpu.CARRY)
self.assertEquals(0, mpu.flags & mpu.NEGATIVE)
self.assertEquals(mpu.ZERO, mpu.flags & mpu.ZERO)
At the end of
this 2006 thread "stable, tested 6502 core" (also found
here) MikeJ says
Quote:
Quote:
It might be a fun project to run two cores in lock step running the same program and see how far they get before they get a different result.
I maintain the cores on fpgaarcade. That trick is how I found most of the problems in the T80 core, and is the reason it is more accurate than the T65 core which I have never got around to doing the same thing
after a discussion that indicates there is no good verification suite to be found. (Emulators are usually tested by running game code.)