Breakpoints may not serve the purpose fully, it may be easier to use Testpoints and incremental coding.
When we build Electronic Circuits with many Interacting Blocks or Modules, We put a small 5mm Tall Copper Pin in the PCB or a PAD without masking. This is a Test or Troubleshooting Point. This is where you can probe with a scope, dmm or logic analyzer.
In embedded program development, i tried a similar way, a Testpoint in software, but only that the card would light a led in a certain pattern or send a "all ok" and progress status to the serial port connected to PC.
In Script programming we can use a GUI element, just a Textbox as a Scope monitoring the Testpoint. When the program goes beyond the Testpoint, The GUI Text window will hold the Status. Just like you move the probes of the same DMM, you can keep shifting the Testpoints or Multiplex the same Scope, as the program becomes bigger.
So, before you build the Next big Program, Build the Test Equipment and the First Testpoint. The first few lines of code is written around the First Test point. Like it is done in PCBs, incremental Building-Testing.
Lastly Break Big Jobs to Small Pieces. Like the Plugin Modules in a Oscilloscope, The Components or Modules should be built and tested independently and then Combined to Form one Big System. Then they can be maintained and reused easily.
Dec-07 from 2003 delabs notes