Early to mid 2023 July work (lDebug)

2023-07-16

This week little development happened, owing to the heat, much to do, and several days of headaches.

lDebug

The RH mode and command got its own test function with dozens of tests.

Enabling RH mode empties the silent/RH buffer.

A bugfix to an earlier change to terminate_silent_dump involving an anonymous label.

The terminator is written more consistently to the RH buffer for T, TP, P, and G outputs, including for the PRA and int 19h hook outputs.

QA command no longer requests use of auxiliary buffer.

Allow to use WHILE buffer for S and RC.REPLACE commands if it isn't already in use, fall back to auxiliary buffer else.

Add RH IN command form with match ranges. A match range is interpreted "backwards" however.

S command will set COUNT variable to length of its search pattern, to aid the searchd.sld Script for lDebug example.

lDebugX S command bugfix: In a 64 KiB segment, the S result data dump will no longer try to access bytes beyond offset 0FFFFh if the search result ends near the segment boundary.

The RH mode got documented. Two omissions so far: The two parameter form is not documented, and it is left ambiguous how indices above the oldest saved step are handled.

We are considering to add a variable which reads out as the amount of RH steps currently in the buffer.

We also want to modify the boot Y script file reading so it will fail somewhat gracefully in RH mode, rather than looping infinitely as it probably does now (if RH mode is enabled in a Y script).