msch...@uhc.com (Mike Schwarz)
I am looking for some deep technical info on DR-DOS (specifcally version 6,
but any info should be helpful). In versions of MS-DOS greater than 3.0
there is a hook in the system to implement a network redirector. This
allows a file system to be implmented simply by initializing a Current-Dir
structure and then providing code for roughly twenty file system primitive
calls. The other means used to implement DOS networks and simulated drives
have traditionally been to trap the far more complicated Int 21h calls, or
to implement device-drivers which require that a FAT file system be
simulated.
At any rate, I have implemented such a system for the purpose of mapping
foreign file systems to DOS via a serial or parallel port. I have so far
written servers for DOS and UNIX. It seems to work quite well. (Obviously,
this is aimed at the user who wants to easily bulk swap files and who
doesn't have a real network).
Here's my problem. The client program must actually implement the network
redirector interface. I've had great success with this on real MS-DOS, but
I've found a frustration trying to implment under DR-DOS. DR-DOS does in
fact implement the redirector system. Most of the functions appear to work
as they should. The make/change/remove directory functions appear to work.
The file open, write, read, and close calls appear to work. The find-first
and find-next calls DO NOT.
This is how they work in DOS: (The "SDA" is a portion of the DOS data seg
that is the the part which must be saved for reentrancy. This may be
obtained via Int 21h function 5d06h for DOS 3, and Int 21h function 5d0bh
for DOS 4+)
Int 2fh, Function 11h Network Redirector
Subfunction 1bh - Find first matching file
Inputs:
SDA (File Name 1) Filespec for search
SDA (struct ffblk) Search Data Block
SDA (Current DTA) Dir info for found file
SDA (Attributes) Search attribute mask
Outputs:
Carry Set + Error code in AX on error
struct ffblk Initialized on success
Subfunction 1ch - Find next matching file
Inputs:
SDA (struct ffblk) Search Data Block
SDA (Current DTA) Dir info for found file
Outputs:
Carry set + AX = 12h if no more files
Basically, it seems that DR-DOS does not provide the same inputs, or they
are located at different positions in the DOS data segment for these calls.
Where might these be? All other calls seem to work...
--
"MINIX costs $169, but the license allows | Rick Odeen
making two backup copies, so the effective | richar...@umn.edu
price can be under $60." | rod...@buddha.ncc.umn.edu
- a...@cs.vu.nl (Andy Tanenbaum) |