2024-07-07
Not yet: Allow to combine fixup information from .rel files with that obtained from a patched JWasm (either with my original Pull Request or with the updated JWasm 2.18) or an unpatched JWasm without any reloc markers
The group base subtraction is done to make use of WarpLink's odd format. The segmented addresses often appear to be of the form SSSS:000O (offset is below 10h). This doesn't mean the object file's segment is addressed with a very low offset; the true offset it is addressed at is obtained by calculating a linear address and subtracting the linear address of the group base. This change allows to create a useful trace listing file for the DRDOS kernel module.
Not yet: Merge all conversion scripts into one.
Not yet: Detect when trace listing source name is the trace listing name with s/.tls/.lst/
and hide it then.
This scriptlet creates the DRDOS module's trace listing file:
~/proj/tractest/convedr.pl drdos/bin/drdos.map $( cat drdos/wldrdos.lnk | grep -Eoi '.\\bin\\[0-9a-zA-Z]+\.obj' | sed -re 's/\.\\bin\\/drdos\/bin\//g;s/\.obj/\.lst/g' ) > drdos.tls
This is the scriptlet for the DRBIO module:
bash -c ' for file; do ./ltools/fixupp drbio/"$file".obj /dev/null reloc > drbio/"$file".rel; done' scriptlet $( grep JWASM drbio/make.bat | grep -Eio '\-Fo[^ ]+' | sed -re 's/-Fo//g;s/\\/\//g;s/\/BIN\//\/bin\//g' ) && ~/proj/tractest/convedr.pl drbio/bin/bios.map $( grep JWASM drbio/make.bat | grep -Eio '\-Fo[^ ]+' | sed -re 's/-Fo//g;s/\\/\//g;s/\/BIN\//\/bin\//g;s/^\.\//drbio\//g;s/$/\.rel/g' ) $( cat drbio/wlbios.lnk | grep -Eoi '.\\bin\\[0-9a-zA-Z]+\.obj' | sed -re 's/\.\\bin\\/drbio\/bin\//g;s/\.obj/\.lst/g' ) > drbio.tls
This does some additional things:
Test updates. Most tests can run in DPMI with either a 16-bit or 32-bit CS now. All Extension for lDebug tests are included in this, and many of the earlier tests. Not included: