Crashes & Aborts

From Color 64 BBS Wiki

BBS Operation - System Aborts & Crashes

The Crash Routine

If you answered "Y" to the question "Rerun on errors" question in SETUP, then another routine has also been enabled that will automatically keep track of where errors occur. If the program crashes, then a line will be put in the caller log in the following format: <error><line no.>:<overlay name>

For example, if a syntax error occurred at line 12000 in the overlay √bbs.init, the message would appear as "syntax12000:√bbs.ini*". Note that the STOP key is disabled when "Rerun on errors" is enabled to prevent an accidental stopping of the BASIC program.


Stopping the Program

There are times when it may be desirable to "break" the BBS program, even though the STOP key is disabled. Maybe you have a programming error and need to examine variables, maybe your modem locked up and the program is waiting for it to clear, etc. If you ever get into this situation, just press, and hold the SHIFT, COMMODORE, and CONTROL keys all at once. If this does not seem to work, try hitting the STOP key again (sometimes hitting SHIFT/COMMODORE/CONTROL will re-enable the STOP key). If this does not help then possibly you have experienced some type of power or hardware problem, locking up your computer.


Once the Program is Stopped

If the BBS program is ever stopped for any reason, then there are a few procedures that should be followed. First, you can look at the contents of different BASIC variables using the PRINT command, but you should never under any circumstance edit the BASIC program currently in memory. This would cause all BASIC variables to be lost (including the message index information) and would necessitate a full BBS reboot. Another point to note is that saving an overlay after the BBS is in a stopped condition (without typing the NEW statement) will cause a saved file to become a size equivalent of √bbs.init and will lead to LOAD OVERFLOW errors the next time you try to run the BBS.

If all variables are intact, then you can type “GOTO9991” and press RETURN to cause the system to save the message index, save the variables, and update the caller log. Once this shutdown operation is completed then it is safe to load another BASIC program and edit it, or from this point you can type RUN and press RETURN to restart the system because the √bbs.init program will be in memory.

If you use GOTO9991 to shut down, then the error message put in the caller log will always be "BREAK", even if the system crashed on an error. The only way for the exact error message to be included in the caller log is if the "Rerun on errors" option is on and the BBS automatically restarts the system.

Next Section: Color 64 Network

BBS Operation