The Color Disk EDTASM assembler has the option of writing a symbol table to the end of binaries it produces. You enable the feature by including the /WS switch during assembly to disk. The symbol table can be used by the stand alone ZBUG debugger.
Invoking the switch will add extra data after the LOADM post-amble. Here is how that data is formatted. First is the header. This is always 5 bytes in length.
Length | Example Value | Description |
---|---|---|
1 Byte | 01 | Seems to be constant |
2 Bytes | 0019 | The total length of the symbols and values, plus one |
2 Bytes | 0000 | Seems to be constant |
Next you will find a table entry for each symbol and value pair.
Length | Example Value | Description |
---|---|---|
1 Byte | 84 | Length of the symbol text, with the high bit set |
n Bytes | DONE | Symbol name, ASCII encoded |
2 Bytes | 0004 | Symbol value |
And finally is the footer. a single constant byte:
Length | Example Value | Description |
---|---|---|
1 Byte | 0 | Seems to be constant |
It should be noted the Assembler and ZBUG pair can only handle symbols with a maximum of six characters.