home *** CD-ROM | disk | FTP | other *** search
- Quarterdeck Technical Note
- by Don Carroll
-
- Virtual DMA Services (VDS) Interface
-
- Q: Why do I need a VDS driver ?
-
- A: All software running in Virtual 8086 mode (i.e. QEMM) on
- a system with a bus-mastering device such as a SCSI Hard
- disk controller , Network card etc. will experience the
- inability to determine the correct address of the
- DIRECT MEMORY ACCESS (DMA) region for that software.
-
-
- The problem of QEMM running with a bus-mastering device,
- such as a SCSI hard disk controller, is that the device
- will not put the data in the correct memory address. This is
- because QEMM moves the physical address. One of the
- features of QEMM is its VDS interface. This is the part of
- QEMM that the VDS driver makes a request to so the correct
- address can be determined.
-
-
- Examples using Adaptec 1542 SCSI VDS driver & QEMM.
- There are 3 potential ways to make this work
-
- 1) ASPI4DOS is only 5K in size. That is not much to worry
- about on most systems. If you have the room then leave it
- in conventional memory.
- (Note: ASPI4DOS must be loaded before QEMM!)
-
- 2) The next method is to set the QEMM parameter DISKBUF=1
- and have QEMM load ASPI4DOS into HIGHRAM. This only uses
- 1K of Conventional memory. This lets ASPI4DOS load and
- start running. ASPI4DOS then takes over control of QEMM's
- DISKBUF Function.
-
- 3) If you are running on a system that is tight on memory
- and you need all the conventional memory you can get, then
- the following is a way that you can get the ASPI4DOS driver
- loaded into HIGHRAM and not use any conventional memory.
- You have to have a 386 with C&T Shadow Ram Hardware and
- also buy QRAM . You load QRAM so that it uses 16k of
- shadow ram , I used B000-B3FF Because I am running a VGA
- card . You then Loadhi ASPI4DOS.SYS and any other SYS
- drivers that will fit , for example I loaded VDISK.SYS .
- This used 6k out of 16k. Next comes QEMM which you have
- EXCLUDE the 16k area used by QRAM or if you know how much
- memory the drivers are using then only EXCLUDE that amount
- . In my case it was 8k (B000-B1FF). You can now load
- everything normally
-
- * * * E N D O F F I L E * * *