M/C break 2



Was sent in by Ray Reeves and is an amendment of an earlier

program by A. Vellacott.

   This program is useful when programming in machine code

should you inadvertently set up an infinite loop. The key-

board is scanned by using the interrupt and if BREAK is

pressed then it returns to BASIC. So far this is the same

as the program we used previously, but what Ray has done is

add some code so that the address at which the program was

broken is printed in the top right hand corner. This is

much more useful as you now have some idea of where to look

in your program to debug the problem loop.



[ Attentive readers will have noticed that there is no men-

  tion of the address you need to call to get this routine

  to work. You might try to call the loading address, but

  that will not work - it's the address of the interrupt

  routine itself. The set-up address is 65316. What this

  article also forgets to mention, though the original one

  did, is that you have to call the set-up address again

  every time you break while it is active. It turns itself

  off when it is triggered, presumably for safety reasons.

  Note also that, once active, BREAK triggers the routine

  not just from machine code, but also from BASIC   - RLB ]