On 2/21/2023 5:05 PM, Yll Buzoku wrote:
Hi Aitor,

Preface:

The following holds true for PC-DOS 3.3, though I have no reason to suspect anything I say holds any different for any DOS version from 3.1 onwards. My understanding of what is expected of the redirector interface is due to having disassembled the DOS 3.3 kernel to understand how it works and may not be 100% accurate. Also, DOS 3.0 has some unique quirks but as far as the following is concerned, I suspect it works more or less the same as later DOS versions. DOS versions before that had no redirector interface.

DOS has two 128-byte buffers in the Swappable Data Area. Initially, on a file-based request, such as AH=3Dh (OPEN), DOS will parse the passed filename into one of these buffers and place a pointer to it in another SDA variable. This parsing routine expects 8.3 names at all stages in the pathname except at the very beginning where if the pathname begins with \\ DOS understands this as referencing a path on a network machine and allows a valid MS-NET machine name as the first component of the path.

FCB functions work like this too, but the way DOS handles them is a bit more convoluted, though you can imagine FCB handling by DOS as converting the FCB request to a normal file request, then proceeding as normal and at the end synchronising the FCB fields before returning control back to the application. Of course, you can only act upon files on drives with drive letters when using FCBs.

The use of FCBs was obsolete by the time DOS 2.0 and the use of file handles came around...

Ralf

_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to