###   Projekte und Informationen rund um den KC85   ### 

 

 

CFOG's PIP, March 1988, Volume 7 No. 2, Whole No. 64, page 19

NSWP $$$ Problem Fixed

[The following message was posted on CFOG II RCPM after reports in PIP that users of NSWP207 who attempted to log onto a drive which had a $$$.SUB file on it (and sometimes other files with a "$" as the first character) received a message "No files" or a listing of the files on the previously logged drive. CFOGger Roy Lipscomb, programmer par excellance, and proprietor of Logic Associates, purveyor of a number of excellent commercial programs for CP/M -- write Logic Associates at 1433 W. Thome, Chicago, IL 60660, for a catalog -- tells what the problem is and how to fix it. -- BHC]

Msg #975 by Roy Lipscomb

   To: Benjamin Cohen
About: Fix for NSWP207 with "$"

Ben, the fix for the NSWP207 problem you mentioned in PIP is as follows:

DDT NSWP207.COM
A1D7B
DCR A
.
SAVE 46 NS.COM

[Don't miss the period on the fourth line of this set of instructions. -- bhc]

The problem is that the disk-select function of the BDOS returns either register A=0h or A=FFh. Both codes indicate a successful disk select, but the latter indicates that a filename beginning with '$' was found on the drive. (This is probably a shorthand way of determining during warm boot whether a $$$.SUB is active on drive A.)

However, CP/M documentation says nothing about a value being returned in register A. Since FFh indicates "error" in almost all other disk functions, the author of NSWP understandably assumed it meant the same for disk select. But in fact, selecting a non-existent drive under NSWP207 will simply cause a BDOS error, and as a result NSWP won't even be around to get the bad news!

The modification above makes both 0h and FFh say "successful disk select." As in the unmodified NSWP207, selecting a non-existent drive will cause a BDOS error.

 

[It works. I kept NS.COM and the old version on my RAM disk for a while. The first time I had the problem I tried NS.COM. No problem. I then tried the unpatched version and the problem was still there. -- BHC]