I have a monitor command for my WDC65c02 that is called "quit" and is supposed to stop everything before I pull the plug (not necessary, but it feels less cruel and I can print a silly goodbye message). The first version used the STP instruction ($DB), based on the interrupt primer, which says that both the WDC65c816 and the WDC65c02 have it. And lo and behold, it assembled fine with Ophis (produces $DB as expected), and seemed to run on the prototype hardware (no more output, though I haven't checked any pins).
However, on the py65mon, the same code jumps all over the place, and direct assembly produces an error ("Syntax?"). I went back and checked the WDC Programming Manual, and it says that STP is a 65c816 instruction only, not the 65c02.
Obviously, something is not right here. Is this an undocumented function? I figure the way to solve this is to figure out if the 65c02 is actually doing what it is supposed with when it gets a $DB, or if it is just going off into nirvana. Maybe somebody has tested this already? I'm out of breadboard space at the moment
.