Barnacle's thread on
Single stepping by inserting BRKs into RAM got me thinking. Rather than trying to insert the BRK opcode into the correct location following the current instruction why not insert the BRK op-code into databus when the op-code is being fetched*. It's solves the stepping into ROM problem quite neatly. And I suspect a bit of fiddling with the PC on the stack could make RTI return to exactly where the BRK was inserted.
But then I realised it seemed like I was describing the '816's abort feature. Does it seem feasible to single step the '816 by ABORTing it during the op-code fetch? It would be kinda satisfying to finally find a use for ABORTB.
Still very much a thought experiment and using abort might require more hardware to make it work compared to inserting a BRK. And if hardware modifications can't be made then I guess neither are workable and it's back to inserting BRKs into memory.
Just wondering if anyone has tried this or thought about it before?
* i.e. when VPA and VDA are high or when SYNC is high on the 6502