Image Map Image Map
Page 1 of 2 12 LastLast
Results 1 to 10 of 15

Thread: WIN 3.0 and DR-DOS 5.0 EMM386.SYS issues

  1. #1

    Default WIN 3.0 and DR-DOS 5.0 EMM386.SYS issues

    Can anyone point me to a guide to installing Win 3.0 on DR-DOS 5. I've been having a hard time dealing with emm386.sys from DR-DOS and Windows. So far I've got himem.sys from windows to load followed by emm386.sys.

    After some LAN Mangaer drivers are loaded high, I end up with 576K RAM. But Win 3.0 refuses to load in 386 enhanced mode (even if forced with "win /3"). It keeps trying to use the EMS RAM. If I don't load EMM386.SYS I get like 409K.

    Here's the CONFIG.SYS:

    SHELL=C:\COMMAND.COM C:\ /P /E:512
    HISTORY=ON, 256, ON
    ?"Load MS HIMEM.SYS (Y/N) "device=C:\HIMEM.SYS
    ?"Load MemoryMAX software (Y/N) "DEVICE=C:\DRDOS\EMM386.SYS /F=AUTO /K=1024 /B=AUTO /R=AUTO

    ?"Load Lan Manager 2.0 drivers (Y/N)" GOTO LANMAN

    Love that you can set each driver to load with a Y/N in DR-DOS.

    Also is there a DR-DOS 5.0 Manual online somewhere? The Caldera 7.02 User Guide has been helpful, but it keeps making references to stuff not in v5.
    Looking for: OMTI SMS Scientific Micro Systems 8610 or 8627 ESDI ISA drive controller, May also be branded Core HC, Please PM me if you want to part with one.

  2. #2


    When I use emm386.sys I use the noems switch.
    PM me if you're looking for 3" or 5" floppy disks. EMail For everything else, Take Another Step

  3. #3


    You might also try MS Client 3.0 instead of Lanman. I’ve found MS Client uses a lot less conventional RAM than Lanman; MS Client will even load each component into UMB by itself if it can, without the need for LoadHigh (assuming you’ve got at least 100k free). On my setups, MS Client with TCP/IP only and the basic redirector takes up less than 20k conventional memory. Lanman took a minimum of 60k.

    Also, why are you using the MS Himem.sys and the DR EMM386? I believe DR-DOS 5’s EMM386 already includes XMS functionality (I know 6 and 7’s do). I’d either stick with MS’s HIMEM and EMM386 or DR-DOS’s, but not both. You could also try grabbing EMM386 from DR DOS 7 and running that, it has quite a bit of improvements. (Again, no need to explicitly call HIMEM in that case.)

  4. #4


    And, if you've not seen it already, you might want to review these:

    If memory serves, there were ways around the roadblock MS put in place, but danged if I can find what they were....

  5. #5


    I doubt the AARD code has anything to do with Mr. Slug's problem, because it only exists in the beta version of Windows 3.1, only generated a "non-fatal" error during Windows setup, after which the user could choose to continue installation, and was bypassed (although not removed) in the final production version of Windows 3.1.

    To Mr. Slug -- try using the EMM386 that came with Windows 3.x or MS-DOS instead of DR-DOS's version of it.

  6. #6


    Does DR-DOS's EMM386.sys support the "Global EMM Import Specification"? Its needed for Windows 3.x in 386 Enhanced Mode to take control of the system from a memory manager running the system in protected mode. The JEMM family of memory managers don't support this either, but QEMM does. As stated above, try running Microsoft's EMM386 that came with Windows 3.0 and see if it starts in 386 Enhanced Mode. I wouldn't be surprised if Windows 3.0 detects the incompatible memory manager and silently forces itself to running in Standard Mode instead. WfW 3.11 (which only supports 386 Enhanced Mode) will simply not load at all if an incompatible memory manager is loaded.

    wiki has details on this along with source links:

  7. #7


    Thanks for your responses. I've done a bit more digging. According to this (page 64), In reference to MS-DOS 5.0:

    "EMM386.EXE will work with Windows 3.0 in 386 enhanced mode, but DR DOS's EMM386.SYS will not."
    It then mentions QEMM.

    Anyone else played with third-party memory manager on DR-DOS?

    Yes Windows 3.0's emm386.sys works with windows in 386 enhanced mode, but there seems to be no point using it on DR DOS. Skipping AUTOEXEC.BAT altogether,

    DR-DOS with no memory manager loaded gives: 573K
    DR-DOS with Lanman Drivers loaded gives: 527K
    DR-DOS with LM Drivers loaded high + himem & Ms's emm386.sys gives: 518K
    DR-DOS with LM Drivers loaded high + DR's EMM386 gives 580K (with HIDOS=ON)

    So basically MS's emm386 is incompatible with DR-DOS.

    "MICROSOFT Expanded Memory Manager 386 Version 4.10.0419" (EMM386.SYS) that ships with windows 3.0 doesn't have the NOEMS option, I think that's later in EMM386.EXE.

    I'm not quite sure how to set DR's to not use an EMS window, or if it would help. I don't know what windows checks, is it the gate A20 handler?

    <Side note>
    MS Client 3.0 is probably better overall. The problem is I'm trying to setup a system as it was in 1990. So anything later I wont use. I may end up using Netware.

    I thought that Lan manager 2.0 supported TCP/IP, thought the Server* version I got from winworld, doesn't seem to include TCP/IP, only NetBEUI. I've searched thru the OS/2 install disks and can't find any TCP/IP protocol in there either. Also tried google. the 2.2 client has it, but thats from '94. It all works fine with NetBEUI with one exception. When I load windows (With built in Lan manager services) I get:

    "Network error on drive A:"

    I can't find anything on this error.

    *The server version runs on OS/2 1.3, it includes a client for MS-DOS.
    </side note>

    I'll have to read up on "Global EMM Import Specification", and some the the other memory managers. It's easy to stick DOS 6.22/PC-DOS 2000 etc with MS net client on an old system, load all the stuff high etc. The thing is in 1990 none of this existed. I think QEMM and 386MAX etc are worth investigating. I'm not sure If I'll track down TCP/IP support. I mean what would you use it for in 1990? Were most people still accessing Usenet via UUCP?.
    Looking for: OMTI SMS Scientific Micro Systems 8610 or 8627 ESDI ISA drive controller, May also be branded Core HC, Please PM me if you want to part with one.

  8. #8
    Join Date
    Jan 2017
    Galicia, Spain


    DR DOS 5.0 EMM386.SYS (version 1.2x) does not support XMS and Windows 3.0 does not support VCPI (Windows 3.1 does) so it's not compatible with it in 386 extended mode. EMM386.SYS version 2.xx (included with DR DOS 6.0) added XMS support and it is the minimum version you need for use with Windows 3.0

    DR DOS 5.0 itself does not use or take advantage of EMS memory for anything but their (not so good) disk cache.

    QEMM 5.x works fine with DR DOS 5.0 but later versions do not.

    Try disabling FASTOPEN and use HILOAD to load LM TSRs from AUTOEXEC.BAT

    NOTE: HIDOS.SYS does not put the processor in protected mode and supports XMS so it's compatible with Windows 3.x and will allow DR DOS kernel to move to high memory. You can also have UMBs if you have of the few supported (Chips & Technologies) chipsetS but it cannot emulate EMS memory.
    Last edited by dieymir; May 21st, 2018 at 09:16 AM.

  9. #9


    In short QEMM 5.11 + DR-DOS 5.0 + Windows 3.00a work together. I haven't done extensive testing, but so far so good.
    Thanks for everyone's help.

    dieymir, thanks for clearing up a few details on DR-DOS. I wonder if HILOAD.SYS and QEMM will work together. QEMM does actually load part of DR-DOS high but 10K less.

    I can probably tweak both the QEMM and DR-DOS EMM386.SYS (MEMORYMAX) configurations more but I have a couple of bits of hardware to change. I'm 90% there though.

    Now I just need to track down that annoying "Network error for drive A:" in Windows 3.0.

    I've included all this, as there's not really anything on the net about it. It probably wont be of much interest unless you're trying to do the same thing.

    On Sunday I spent much of the day trying to hunt down QEMM 5.10 or 5.11. 5.1 or 5.10 is the first version to work with windows 3.0 correctly according to this:

    I found version 5.0 at vetusware quite quickly. I searched through various versions of DESQview to see if it was included with them, looked all over the internet, and gave up. So I though I'd give v5.0 a go. After installing it, and despite it's readme file reporting it as v5.0, it turned out to be v5.11! Literally hours wasted searching for something I'd already found. Anyway I've had some real issues getting it to work with lanmanager. The optimize program is very clever in it's process, but really didn't know how to cope with DR-DOS's conditional config.sys. So I'm currently running three different config.sys. One with no memory manager (NONE), one with DR's EMM386.SYS (MEMORYMAX) and one for (QEMM).

    First, currently I have a config.sys entry for a HDD driver (DOS4E.SYS), which allows second partition (h/w limitation). And a disk cache utility DCE376DR.EXE. (You can think of these together as equivalent to smartdrv.sys).

    DR-DOS's MEMORYMAX could not load DOS4E.SYS high. I haven't tried to load the DCE376DR.EXE tsr high using MEMORYMAX. QEMM was able to load both these high.

    QEMM does work with Windows 386 enhanced mode. Although I did have to add:
    to the 386 Enhanced version of the SYSTEM.INI file, otherwise it crashes on exit, and had some minor hdd corruption.
    I may need to change the range now.

    I let QEMM's optimize my config.sys (based on the "none" version using the optimize program. It unfortunately totally balked on the lanman part. It runs the config.sys through some kind of debugger. Loading LAN manager's NETBIND crashed the debugger. It gives you option to terminate or continue etc, but the system would often lock up. I did eventually get it to complete. I seemed to have more luck when i set the EMS window to start at C800. Once I figured out the basics of how QEMM loads stuff into different regions, I was able to fine tune thing a bit more.

    In each case both the disk programs (DOS4E.SYS & DCE376DR.EXE) are loaded. (Only QEMM can load them high)

    In each case three config.sys entry's for the Lanman are loaded as well as NETBIND, "NET START WORKSTATION" and
    "NET USE Z: \\SERVER\SHARE" A fairly basic setup. BTW Im using NetBEUI, TCP/IP probably takes more RAM.

    These are the reports from the MFT.EXE program from QEMM:
    (I've adjusted the tables slightly so entry's line up better.)
      None:                                   MEMORYMAX:                               QEMM:
      Memory Area   Size   Description        Memory Area   Size   Description         Memory Area   Size   Description      
      0000 - 003F     1K   Interrupt Area	  0000 - 003F     1K   Interrupt Area  	   0000 - 003F     1K   Interrupt Area  
      0040 - 004F   0.3K   BIOS Data Area	  0040 - 004F   0.3K   BIOS Data Area  	   0040 - 004F   0.3K   BIOS Data Area  
      0050 - 006F   0.5K   System Data	  0050 - 006F   0.5K   System Data     	   0050 - 006F   0.5K   System Data     
      0070 - 1BE4   109K   DOS		  0070 - 0D87    52K   DOS	     	   0070 - 102C    62K   DOS	      
      1BE5 - 38F8   116K   Program Area       0D88 - 1DCF    65K   Program Area    	   102D - 1EE4    58K   Program Area    
      38F9 - 9FFF   412K   [Available]	  1DD0 - 9FFE   520K   [Available]     	   1EE5 - 9FFF   516K   [Available]     
    					 [                                 ]    
      ===Conventional memory ends at 640K==== ===Conventional memory ends at 640K====  ===Conventional memory ends at 640K====   	  	   
      A000 - AFFF    64K   VGA Graphics	 [                                 ]	   A000 - AFFF    64K   VGA Graphics	   
      B000 - B7FF    32K   Unused		 [9FFF - C7FF   160K   Program Area]	   B000 - B7FF    32K   High RAM		   
      B800 - BFFF    32K   VGA Text		 [ 		  		   ]	   B800 - BFFF    32K   VGA Text		   
      C000 - C7FF    32K   Video ROM	 [                                 ]	   C000 - C7FF    32K   Video ROM		   
     [                           	 ]	  C800 - D7FF    64K   Page Frame	   C800 - D7FF    64K   Page Frame	   
     [C800 - EFFF   160K   Unused    ]        D800 - E5FF    56K   Program Area	   D800 - EFFF    96K   High RAM		   
     [                               ]     	  E600 - EFFF    40K   Unused		   	    
     [                               ]	 [                               ]	   F000 - F6FF    28K   System ROM  		    
     [F000 - FFFF    64K   System ROM]	 [F000 - FFFF    64K   System ROM] 	   F700 - FAFF    16K   High RAM             
     [                               ]	 [                               ]   	   FB00 - FFFF    20K   System ROM
    MEMORYMAX wins by a bit, I think this is because DR-DOS knows how to load even more of itself high.

    QEMM has a bit of a steep learning curve, but I've found a manual now.

    Hopefully this will be helpful to someone in the future.
    Looking for: OMTI SMS Scientific Micro Systems 8610 or 8627 ESDI ISA drive controller, May also be branded Core HC, Please PM me if you want to part with one.

  10. #10


    I've got this set for QEMM 386 v6.0:

    1) QEMM 386 manual

    2) Quarterdeck Manifest manual

    3) PASSPORT Quarterdeck

    No software, just the paperwork.
    PM me if you're looking for 3" or 5" floppy disks. EMail For everything else, Take Another Step


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts