This post is constantly growing, it’s mainly for me remembering not making some fu**ups again… but it might be useful for you, too 😉

Debugging the server

Booting Helios with server.exe you can provide a couple of debugging switches to see what’s going on:

  • A – All. Either enable all debugging, or disable any debugging which is currently active.
  • B – Boot. Give a progress report while the root processor is being booted.
  • C – Communications. Monitor transmissions to and from serial lines and similar devices.
  • D – Delete. List all files and directories being deleted.
  • E – Errors. Report any error messages generated by the I/O server.
  • F – File I/O. Give details of miscellaneous file I/O activities such as renaming files.
  • G – Graphics. Report any graphics transactions.
  • H – Raw disc. List sector reads and writes on a raw disc device.
  • I – Initialisation. Give a progress report as the I/O server initialises its various component servers.
  • J – Directory. Show details of any directory accesses.
  • K – Keyboard. Report any key presses.
  • L – Logger. Cycle the error logging destination between screen-only, file-only, and both screen and file.
  • M – Message. Report all messages sent to and from the I/O server.
  • N – Names. Show the names of objects Helios is trying to access.
  • O – Open. List all files that Helios is trying to open.
  • P – Close. Report any file close requests sent by Helios.
  • Q – Quit. Give a progress report when the I/O server tries to exit.
  • R – Read. Monitor any file reads.
  • S – Search. Report all distributed searches arriving at the I/O server.
  • T – Timeouts. Report any stream timeouts that may occur.
  • U – Nopop. In the Server windows system, toggle between pop and nopop mode.
  • V – OpenReply. Give details of replies to Open, Create, and Locate requests.
  • W – Write. Monitor any file writes.
  • X – Resources. Produce a snap shot of what the I/O server is currently doing.
  • Y – List. Give details of all debugging options.
  • Z – Reconfigure. Re-read the configuration file host.con

Those switches can be combined, e.g. server -rw

Cool: If the debug-output becomes too much to read (i.e. on screen) you can toggle the setting by pressing ctrl-shift plus the corresponding character. E.g. “c” to mute all the traffic on the serial line.


Now that we get some info about what’s going on internally, it might be a bit too much to follow on the screen (and you can’t redirect the output with “server > output.txt”). But don’t despair, there’s a way to define a logfile in HOST.CON:

logging_destination = [screen | file | both]
logfile = logbook

So simply define where you want the logging to go (screen or file or both) and define a logfile name. In this case it will be written inlogbook in the Helios root directory.
Please mind that the logfile will be overwritten (not appended) each time you reboot!


I cannot repeat it often enough: ALL config files (but HOST.CON) are Unix-Formatted, ie. LF instead of LF+CR. So each time something is behaving strange, check your config files for proper formatting!
I’ve spent hours of debugging just to find out I had (again) “tainted” a config file by quickly having a look with edit.exe :-/

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.