80-Bus News


January–February 1984, Volume 3, Issue 1

Page 10 of 55

After the usual amount of swearing and cursing, it was finished and working, the results of this are now available at a very modest price.

Now for what it does:

Users of CP/M will have realised by now that the BDOS’s error trapping and reporting leave a lot to be desired. How many times have you tried to erase or change a file only to find that either the disk or file is read only? Worse still, if after 6 hours processing, your latest masterpiece tries to update its data file and finds it read only. Unless you have the facility to change the attributes, all of that time has been wasted because you can only reboot, set the file to R/W and start again. Finally, have you got any source files that you would like to assemble, producing listing files to disk, but the PRN file is larger than the capacity of your disk? Infuriating isn’t it that you can’t just change the disk and carry on?

BDOSZ attempts to overcome these and other problems so that your valuable time is not wasted and your trusty Nascom or Gemini isn’t kicked around the floor in temper. An example of each of the BDOS error types and BDOSZ’s actions in these cases are given below:

BDOS Err On x: Select

In this case, BDOSZ outputs the message “Drive x: select error” followed on a new line by “Enter valid drive or ^C”. The BDOS will then wait for a key press and either log in the selected drive or perform a warm boot as appropriate. This facility is useful if a program being debugged causes a select error and the user wishes to continue testing it.

BDOS Err On x: R/O

In the case of a R/O disk, BDOSZ will print the message “Disk x: is set R/O” followed by “Do it anyway? (Y/N/^C)”. If the user types “Y” then the disk will be reset and the function completed as though the error had never existed.

BDOS Err On x: File R/O

Under CP/M, if the command “ERA *.*” is given and one of the files to be deleted is R/O then the above message will be displayed. The CP/M BDOS doesn’t tell you which file it is referring to. Under BDOSZ, the message “File FILENAME.TYP is set R/O” followed by the message “Do it anyway? (Y/N/^C)”. If the user types “Y”, the files R/O attribute bit is cleared and the file will be deleted, renamed or written to as requested as though the file had been R/W. If the user types “N” then the queried file will be left unchanged and still R/O. If, as in the above example, the command ERA *.* was issued, this facility allows the deletion of all R/W files and selected R/O files in the same command.

NOTE. BDOSZ will not query a file unless it is R/O.

BDOS Err On x: Bad Sector

This error is not considered recoverable and most BIOS’s these days contain facilities to re-try. If your BIOS can’t sort out the problem, then the BDOS has no chance. However, in an attempt to provide meaningful error messages, BDOSZ will display either “Disk x: read error” or “Disk x: write error”. In either case, if ^C is pressed, a warm boot will be performed. Pressing any other key will cause the error to be ignored.

Other Errors

Two other errors of a potentially disastrous nature are treated as recoverable by BDOSZ. These are disk directory full and disk full. In the

Page 10 of 55