Z80 is 4-22 clock cycles per instruction.
The longer ones are the are in the groups that increment or decrement
and repeat.
For Z80 the simple way is a RST (one byte call) to one of 8 locations.
The common one is RST-6 (call to location 0x0030)? I use the 8080
instruction form. Z80 form would be RST 30H.? That also works for
8080 and 8085.
Once at location 30H save the stack pointer, save the registers
and return to monitor calling point for single step.??
Cost in code is small and zero hardware.
Works best if the RST points to the same location as push button
interrupt (not reset). as then you can recover from a runaway program
or one caught in a loop.
Allison