blog:pushbx:2026:0518_early_mid_may_work
Table of Contents
Early mid May work
2026-05-17
This week I worked some on debugging DR-DOS v9. The relevant updates to the debugger and loader are listed in yesterday's blog post dedicated to that. Except for Sunday's update to the manual to list nreserve.eld more completely.
The only other changes concern the list and WarpLink.
WarpLink
- Display a warning if a subsequent object file defines an entrypoint after it was already defined by a prior object file. The previous behaviour would silently ignore subsequent entrypoints.
- Enable /XC switch for linking the linker itself, and add wlcalc mmacro (copied from lDebug source texts).
- Zero initialise the entire _BSS section, obsoleting the prior two specific areas that were zero-initialised. String counter for the
rep stoswis calculated using wlcalc. - Move some mlglobal.mac variables that want to be zero-initialised into _BSS section.
- Delete a useless all-zeroes paragraph before the executable entrypoint. This was used to identicalise the output, but serves no purpose.
- Replace the NASM at and iend mmacros so they use
db ?to pad instead ofdb 0, allowing them to not change _BSS structures into progbits. - Move most zero-initialised variables across the program into the _BSS section.
- Increment ecm release to r22, 2026 May.
The on-disk linker executable shrank from 82_121 Bytes to 81_467 Bytes, saving 654 Bytes. Not a lot, but it did come at no cost. Besides, it insures that no other bugs like the uninitialised data_fixup_count variable (2026-02-04 changeset) will crop up.
The List
ecm 2026-05c: Add version information returned by current DR-DOS v9 build.
You could leave a comment if you were logged in.
blog/pushbx/2026/0518_early_mid_may_work.txt · Last modified: by ecm
