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
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
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.
Two other errors of a potentially disastrous nature are treated as
recoverable by BDOSZ. These are disk directory full and disk full. In the