Skip to main content

DEBUGGER'S GALORE by Richard Karsmakers

Anyone  who  programs  on a computer has a need  for  a  specific
programmer's  tool called a 'debugger'.  In this  article,  I  am
going  to  have a look at two good debuggers for the Atari  ST  -
"RAID" and the Public Domain program "Templemon".

- Templemon

In one of the very earliest issues of ST NEWS,  Volume 1 Issue  4
to be more precise, I already published a software review of this
useful PD program in an earlier version.  I think it's about time
that  a  full review should appear of  version  1.6,  the  latest
version available as far as I know.

After executing "Templemon",  nothing seems to have happened. The
desktop appears like it usually does and no apparent things  seem
to  have happened.  But just try pressing ALT-HELP  (you  needn't
worry  about inflicting your printer to produce a  hardcopy)  and
you'll notice the strange thing about "Templemon":  It's  entered
through the hardcopy routine vector!

Obviously,  Thomas Tempelmann has examined his TOS once and found
out that there happens to be a non-documented system variable  on
$502  that  comprises a vector to the routine to be  executed  on
ALT-HELP.  Anyway,  he  made a machinelanguage  debugger  working
through  that vector which is quite good - "Templemon"  was  thus
born.

"Templemon" can disassemble, fill, copy, load and save, and there
are  a lots of more features.  It is,  for example,  possible  to
change register contents,  trace, save bytes or strings to memory
and  lots  more.  The only few things that I really  find  to  be
missing  are  options  to assemble and an  option  to  'load  for
execution'.  A  very  nice option is that it is possible  to  use
combined commands:  D R PC, for example, disassembles memory from
the  contents  of  the  program  counter  register.   Concluding,
"Templemon" is one of the best debuggers currently available  for
the  ST,  written  by  one of the 'fastest' people  back  on  the
Commodore 64.

- RAID

Larry Bank and Adam Scherer of 'It Works! Software' have recently
developed  a  debugger  called RAID.  It offers  about  the  same
options as "Templemon",  but also includes an option to  assemble
and - yes! - an option to load a file for execution.

Unlike "Templemon",  "RAID" is normally executed and entered from
the desktop - no pressing of ALT-HELP or such. If you want a file
to be debugged,  you can simply 'load it for execution' and  jump
to the text base address, after which it starts. Not all programs
can be debugged using this method,  however. The most interesting
thing about "RAID" is that it is possible to get back into "RAID"
after a file is being executed from "RAID".  The way this is done
is much more full-proof than Thomas' way - "RAID" uses the  RS232
ringer interrupt to detect if the user wants to re-enter  "RAID".
If pins 20 and 22 of the RS232 port or connected,  POP!, the user
is  back  in "RAID".  All interrupts  continue,  and  the  actual
program  screen is not affected (just  like  "Templemon",  "RAID"
uses a seperate workscreen).  This way is also not full-proof, as
some  programs shut down all interrupt vectors - also  the  RS232
ringer interrupt vector.
Principally, I like "Templemon" more than "RAID", and it would be
better  than the latter if it had the de-luxe  trace  option,  an
assemble  option  and  a  'load  for  execution'  option.   Also,
"Templemon" is Public Domain (can be ordered through the ST  NEWS
PD  service as well - refer to the article about our  PD  library
for that).

Disclaimer
The text of the articles is identical to the originals like they appeared in old ST NEWS issues. Please take into consideration that the author(s) was (were) a lot younger and less responsible back then. So bad jokes, bad English, youthful arrogance, insults, bravura, over-crediting and tastelessness should be taken with at least a grain of salt. Any contact and/or payment information, as well as deadlines/release dates of any kind should be regarded as outdated. Due to the fact that these pages are not actually contained in an Atari executable here, references to scroll texts, featured demo screens and hidden articles may also be irrelevant.