Table of Contents

Early October work on Extensions for lDebug

2023-10-08

This week was spent on greatly adding to the utility of the Extension for lDebug ecology. One change was needed in the lmacros collection to support an ELD.

lmacros section types

The lmacros3.mac family of sectioning directives, addsection and usesection, gained the "section type" defines. A new third parameter to addsection can be specified to explicitly set a section type. If it is not specified then the section name doubles as type, which is required to assemble old sources with macros expecting the new types.

The macros using the types previously compared only the section name, which is obviously limited. Rather than only detecting the exact name "DATA" they now work with the type "DATA", enabling to match multiple sections with minimal hassle.

lDebug ELD work

Build environment

The sources for all ELDs moved into the source/eld/ subdirectory, except for include files used by both the main debugger assembly and any of the ELDs.

A mak.sh and cfg.sh were created in the subdirectory to build all non-test ELDs. (The eldcomp ELD is included here albeit it is useful only for ELD developers.)

The default ELD code section size was increased to 16 KiB for application and device mode to match the boot loaded mode. Extensions for lDebug are still not supported in the default builds.

Infrastructure

I define ELD infrastructure to refer mainly to the debugger parts of the ELD interfaces. Therefore, parts that are always loaded and not specific to each ELD. These are the additions:

The specific ELDs

These are the ELDs I added:

Misc

The manual gained two sections on ELDs. Those are the description of the EXT command as well as the ELD format chapter which details some of the interfaces available to ELDs.