What techniques were used for implementing breakpoints on the ZX81? Traditionally for the 8086 int 3h
is used, for the 8080 on CP/M with DDT RST 7
as single byte replacements, 6502 has the BRK
instruction.
I can't figure out what would be used for the ZX81 (or Spectrum) as it's barely possible to hook any of the interrupt vectors.
Obviously this could be done by physical hardware or by single stepping each instruction and intercepting call / jr / jp
etc but this would run much slower (but would also allow debugging ROM routines)
Sadly none of the online documentation I can find for the various debuggers / monitors explains how exactly they work. (I suspect from the ZXDB documentation it's using the single step instruction approach)