[comp.sys.ibm.pc] Device driver help for ibm-pc

mugc@utecfa.UUCP (ModemUserGroupChairman) (12/02/86)

{!?*\ for the line-eater...

This question is being posted for a friend who does not have usenet
access. You may mail him at the address given at the end of the
message.  Thanks.


---[enclosed text begins]--

	As part of my fourth year thesis, 
	I am trying to write a program that would allow a PC user to
	have transparent access to a pseudo DOS disk on a mainframe
	computer. This would allow a PC user while working under DOS
	to use the mainframe as offline storage (say for a big data base
	file).  Because the interface to the user should be transparent,
	I would like to write a driver (on the PC end) that might handle
	commands such as    A> copy a:file.a d:        where the "d:"
	would represent the DOS disk on the mainframe.

	Question:
		 In reading through the DOS technical reference, I have
		 come across the fact that device drivers are non reentrant,
		 meaning that the device drivers, after having been initialized,
		 cannot use DOS function calls.  If this is the case, then it
		 implies that my device driver cannot make use of DOS interrupts
		 03h and 04h ( auxiliary input and output respectively).  If I
		 am right on this, then I wonder if I must rewrite the AUX
		 driver as part of my own driver. Is this correct?  Finally,
		 if this is in fact the case, then how can I get source for
		 the AUX driver?
			Anybody got any suggestions?

Thanks,
Jeff Skoll
...utzoo!utcsri!utecfb!skoll

[-- end of enclosed text. --]

rde@ukc.ac.uk (R.D.Eager) (12/05/86)

You wouldn't want to use the AUX driver (even if you could). It won`t
work at speed and is not interrupt driven (given the rest of DOS, that may
not matter).

The AUX driver is tiny. All it does is call the BIOS (not useful). You
need to write a COM port driver - oneidea might be to borrow one out
of something else (e.g. Kermit).
-- 
           Bob Eager

           rde@ukc.UUCP
           rde@ukc
           ...!mcvax!ukc!rde

           Phone: +44 227 66822 ext 7589