Hi there -
I have the same problem - in my case, it's an emulator for the 65816 in Forth (
https://github.com/scotws/crude65816) - and so far have not found a test suite.
I'm attempting to solve the problem by first running the known 6502 test routines for the emulated mode of the 65816; first runs produced a weird error which I think has to do with the break flag, but couldn't pin down without actual hardware. So the next step has been to buy a W65C265SXB (
http://wdc65xx.com/65xx-store/sxb-board ... nt-system/) which has a 65816. Unfortunately, it basically doesn't have any documentation, so Andrew and I are putting that together (
https://github.com/scotws/265SXB-Guide) and he has also written a tool to access the Flash memory, since there are no such routines in WDC's Mensch Monitor (
https://github.com/andrew-jacobs/w65c265sxb-hacker).
I've gotten to the point where I can load programs to the 265SXB's RAM via S28 under Linux (
viewtopic.php?f=1&t=3616). Now I'm adding fake versions of the utility routines from the Mensch Monitor (PUT_CHR, etc) to my emulator. Once that is done, I can -
phew - start writing little test routines for the emulator and run them on actual hardware for comparison. However, I'll probably do something fun first - a line editor like ed? - instead of starting with systematic tests, because all work and no play makes Jack a Z80 user. That should also catch any really basic bugs in the emulator.
Rough plan for the real tests is to pick one subject at the time - say, the stack index addressing stuff - develop a little test that goes through all aspects of that, and then in the end combine these little routines all to something larger. The 6502 tests are so good that I probably am just going to use those for emulated mode and concentrate on native. That will be enough work.
Hope some of that helps, and let me say that I really like the idea of an ARM emulation. There is a forum thread for discussions on emulating the 65816 (
viewtopic.php?f=8&t=3459) for the ugly details, by the way.