On 06/28/2015 06:12 PM, Alexis Kotlowy wrote:
Yes, they work fine under existing systems. I'm trying to figure out why
it doesn't work on the system I'm implementing. I'm emulating the
current record data in the FCB so even if a program modifies the extent
or current record without a random access call, it still loads the
correct sector from the file. So far, it works with WordStar 3. I'm
still implementing write support.
I've compared my emulated FCB to the one generated by a CP/M system and
from what I can tell, the CR/EX/S2 data is the same. I've had a look at
the CP/M source, I don't see anything unusual there. Really, the only
thing that's different is the allocation data.
I'm following the CP/M-86 convention for converting between FAT file
system data and CP/M FCB's. It's documented here:
http://www.seasip.info/Cpm/dosplus_fat.html
Knowing me, it's something silly or trivial, but until I find it... :)
So what does your FCB look like when CLOSE is invoked by the program?
It was almost 30 years ago, but I recall that 22NICE translates FCB
actions in ordinary handle calls--with a heckuva lot of code translating
FCB actions into handle-type file actions. So probably of no particular
help. WordStar is largely CP/M 1.4 compatible, IIRC.
--Chucj