Hi Henk.

HELLO_1.PRG was assembled with no debug symbols
HELLO_2.PRG was assembled with normal debug symbols (8 char limit)
HELLO_3.PRG was assembled with extended debug symbols (22 char limit)

Both kinds of symbol table are stored in the legal way, inside the table
area reserved for such things, immediately before the relocation fixup
table.

From what I can see, each extended symbol is stored in two parts.  First
is a part that is compatible with normal symbols, except that there is a
difference in the code that follows the string (eg: $A248 instead of $A200),
but after the long value there comes a dummy symbol, which does not use the
standard coding, but instead allows all 14 bytes to be used as 'refill' for
the preceding symbol, so that a total of 22 bytes (8 + 14) is supported.
The 'extra' string is padded with NUL bytes if less than 14 characters long.

DevPac also supports 2 kinds of 'line debug' info, but that will be
padded onto the end of the last 'legal' section of the program file.
That means it will come after the relocation fixup table, so any
disassembler can simply ignore any stuff there.

HELLO_4.PRG was assembled with extended debug symbols and standard
'line debug' information.  (A 'standard' I normally never use. :-)
I included this one just four your information.  I don't see any
useful purpose to treat that extra data in any way at all in TTD,
so you can just ignore it.

That is also what I recommend, as it is mostly intended for use with
DevPac's debugger (MON).  The 'line debug' information is not much
use unless the source code is available, and then it is not an issue
that concerns a disassembler anyway.
----- EOF -----
