[comp.os.msdos.programmer] IBM & MS DOS 5.0 - loadhigh on ATs

richard@iesd.auc.dk (Richard Flamsholt S0rensen) (03/21/91)

  I've tried a beta version of the new DOS (MSDOS 500.409e I think...)
because I'd heard, that it could load device drivers and TSRs high
even on 286-based ATs. My machine is a two year old AT with 384Kb of
plain extended RAM (no shadow, chip&techologies, NEAT or whatever).

  I tried so (using "loadhigh <program>"), and it didn't complain
(i.e. no "Machine too old for this trick" error message or the like),
but it didn't load anything high: a look at the memory using MAPMEM
revealed, that it had been put into low DOS memory (both device
drivers and TSRs).

  I've permuted the device driver lines in my config.sys quite heavily
and don't think there's any combination I haven't tried. Currently, it
reads
	device = c:\dos\dos500\himem.sys
	dos = high
	[other devices, shell, break, etc ... nothing using extended RAM]

  My question is: does anybody know, if this "you can load drivers and
TSRs high also on 286 ATs"-tale belongs in alt.folklore.urban or, if
not, what I should do to make it behave?

  Thanks in advance - Richard

  [ObPCstuff: I haven't tried it extensively. Compared to 3.30, which
I usually use, there are *many* new commands (like undelete and
unformat), some enhancements of the old ones (eg FC, which is now more
DIFF-like) and a online help. I think the command.com is ~45Kb]

--
/Richard Flamsholt
richard@iesd.auc.dk

valley@uchicago (Doug Dougherty) (03/21/91)

richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:


>  I've tried a beta version of the new DOS (MSDOS 500.409e I think...)
>because I'd heard, that it could load device drivers and TSRs high
>even on 286-based ATs. My machine is a two year old AT with 384Kb of
>plain extended RAM (no shadow, chip&techologies, NEAT or whatever).
...
>  My question is: does anybody know, if this "you can load drivers and
>TSRs high also on 286 ATs"-tale belongs in alt.folklore.urban or, if
>not, what I should do to make it behave?

I don't know anything about DRDOS or MSDOS 500 or whatever, but I do
know that yes, you can loadhi on a 286, provided you can configure the
high memory as expanded.  If not, you are SOL.  If so, try something like
HRAM, available at all FTP sites.

Upon re-reading your post, I think you may be in that spot (extended
only, no expanded)  I seriously don't think it can be done with straight
extended (Maybe the HMA via an XMS driver?  Nah.  Too weird).  Also, 
those emulators that allow you to emulate expanded in extended don't
work for loading high.  More's the pity...

mstr@vipunen.hut.fi (Markus Strand) (03/21/91)

In article <RICHARD.91Mar20164814@alpha.iesd.auc.dk> richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:
>

>  I've permuted the device driver lines in my config.sys quite heavily
>and don't think there's any combination I haven't tried. Currently, it
>reads
>	device = c:\dos\dos500\himem.sys
>	dos = high
>	[other devices, shell, break, etc ... nothing using extended RAM]

You should load the other devices with

devicehigh=....

in order to load them above the 640 limit.

>  My question is: does anybody know, if this "you can load drivers and
>TSRs high also on 286 ATs"-tale belongs in alt.folklore.urban or, if
>not, what I should do to make it behave?

Yes, you can load devices high on ATs. 


//Markus 

gerardis@cs.mcgill.ca (Tony GERARDIS) (03/21/91)

In article <RICHARD.91Mar20164814@alpha.iesd.auc.dk> richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:
>
>  I've tried a beta version of the new DOS (MSDOS 500.409e I think...)
>because I'd heard, that it could load device drivers and TSRs high
>
>  I tried so (using "loadhigh <program>"), and it didn't complain
>(i.e. no "Machine too old for this trick" error message or the like),
>but it didn't load anything high: a look at the memory using MAPMEM
>revealed, that it had been put into low DOS memory (both device
>drivers and TSRs).
>[stuff deleted.....]
>--
>/Richard Flamsholt
>richard@iesd.auc.dk

I have installed 'MSDOS 5.0 release candidate 3" and seem to have the
same problem. I tried to load my mouse driver into high memory, and also
didn't get an error but it was still loaded into low memory!
- Fine I  get more mem but thats only because the resident part of DOS
is shoved into high mem.  I would also like to know if anyone has any
idea will microsoft be releasing different versions of smartdrv and
ramdrive so that they will contain switches in order to load the driver
into himem (The resident part of the driver, not the actual memory it
sets aside for the cacheing etc.. purpose).

In general however This version of MSDOS is a major upgrade to any
previous one. So far I've been 'Punishing' it and it seems to be quite
stable.

There is no switching back now!!!!
BTW: I'm running off a 386-20DX with 4MB, V-RAM VGA, and 105MB HD.

--------------------------------------------------------------------
 gerardis@quiche.cs.mcgill.ca  | The sun is the same in a relative way,
			       | but you're older
			       | And shorter of breath and one day 
			       | closer to DEATH.       -Floyd

hollen@megatek.UUCP (Dion Hollenbeck) (03/21/91)

In article <RICHARD.91Mar20164814@alpha.iesd.auc.dk> richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:
> 
>   I've tried a beta version of the new DOS (MSDOS 500.409e I think...)
> because I'd heard, that it could load device drivers and TSRs high
> even on 286-based ATs. My machine is a two year old AT with 384Kb of
> plain extended RAM (no shadow, chip&techologies, NEAT or whatever).
>   I tried so (using "loadhigh <program>"), and it didn't complain
> but it didn't load anything high
>   My question is: does anybody know, if this "you can load drivers and
> TSRs high also on 286 ATs"-tale belongs in alt.folklore.urban or, if
> not, what I should do to make it behave?
> 
The key here is that you don't have a NEAT chipset and you also 
probably don't have something like an INTEL AboveBoard.  You need
the HARDWARE capability to support XMS or you cannot load device
drivers high.  I went through this for several months and finally
ended up getting a 386 with REAL MMU capabilities.  Software with
the ability to load device drivers into upper memory will not
work unless the underlying HARDWARE support is present.

--
-----
	Dion Hollenbeck             (619) 455-5590 x2814
	Megatek Corporation, 9645 Scranton Road, San Diego, CA  92121
        uunet!megatek!hollen       or  hollen@megatek.uucp

d37645h@saha.hut.fi (Marko Kohtala) (03/23/91)

In article <RICHARD.91Mar20164814@alpha.iesd.auc.dk> richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:
>  I've tried a beta version of the new DOS (MSDOS 500.409e I think...)
>because I'd heard, that it could load device drivers and TSRs high
>even on 286-based ATs. My machine is a two year old AT with 384Kb of
>plain extended RAM (no shadow, chip&techologies, NEAT or whatever).
>
>  I tried so (using "loadhigh <program>"), and it didn't complain
>(i.e. no "Machine too old for this trick" error message or the
>like), but it didn't load anything high: a look at the memory using
>MAPMEM revealed, that it had been put into low DOS memory (both
>device drivers and TSRs).

I have been able to load device drivers and TSRs 'high'. The problem
here seems to be that loading 'high' means loading programs into the
memory area from 640K to 1M (into UMBs, Upper Memory Blocks) instead
of the memory above 1M.

For this you need 1) RAM in that memory area and 2) UMB driver. 

HIMEM is supposed by the XMS standard version 2.0 to provide the UMB
services, but the current version lacks them. For 386 machines there
comes this EMM386.EXE which can be installed in config.sys using
DEVICE= line to add the two UMB functions to previously installed
HIMEM.SYS. Read the text files that come with the DOS 5 beta.

For my 286 I found an exellent shareware utility package called The
Last Byte (TLB-V118.* includes the newest demo version). This package
was written for DOS versions older than 5.0 for the loadhigh
functions, but included the two drivers I needed: a driver to find and
enable all the RAM I had hidden (it was not activated during starup)
in the 640K-1M area and a driver to add the UMB functions to the XMS
driver.

But, as you have only plain extended memory ie. no RAM in 640K-1M nor
any chipsets the TLB needs, I believe you are unable to load anything
high. The most you can get, is loading the DOS resident to HMA (the
64K above 1M accessible in segment 0FFFFh).

Sorry.
---
 * Via me - not on behalf of any organisation
Marko Kohtala - INTERNET:d37645h@saha.hut.fi, mkohtala@otax.tky.hut.fi

bytehead@bluemoon.uucp (Bryan Price) (03/24/91)

richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:

>   I tried so (using "loadhigh <program>"), and it didn't complain
> (i.e. no "Machine too old for this trick" error message or the like),
> but it didn't load anything high: a look at the memory using MAPMEM
> revealed, that it had been put into low DOS memory (both device
> drivers and TSRs).
> 
>   I've permuted the device driver lines in my config.sys quite heavily
> and don't think there's any combination I haven't tried. Currently, it
> reads
> 	device = c:\dos\dos500\himem.sys
> 	dos = high
> 	[other devices, shell, break, etc ... nothing using extended RAM]

Weeeeeell, it's like this.  You are using himem.sys which is giving you a 
high memory area of 64K.  Your next line tells DOS to load itself (i.e. 
buffers, MSDOS.SYS, etc) into that 64K area.  In my case, I think I have 
7K left, but your mileage may vary.  If your TSR is smaller than the free 
space left, then it should load high, otherwise it will load low.  If you 
had memory in the upper 384K area, then with UMB you could load your 
drivers/tsrs, etc.  Since you only have this 64K area to work with, I 
doubt that you could fit much into it.

> 
>   My question is: does anybody know, if this "you can load drivers and
> TSRs high also on 286 ATs"-tale belongs in alt.folklore.urban or, if
> not, what I should do to make it behave?
> 
>   Thanks in advance - Richard
> 
>   [ObPCstuff: I haven't tried it extensively. Compared to 3.30, which
> I usually use, there are *many* new commands (like undelete and
> unformat), some enhancements of the old ones (eg FC, which is now more
> DIFF-like) and a online help. I think the command.com is ~45Kb]

You have to realize that the reason COMMAND.COM grew was due to the online 
help text.....

> 
> --
> /Richard Flamsholt
> richard@iesd.auc.dk

orenalex@bimacs.BITNET (oren alex) (03/25/91)

In article <RICHARD.91Mar20164814@alpha.iesd.auc.dk> richard@iesd.auc.dk (Richard Flamsholt S0rensen) writes:
>
>  I've tried a beta version of the new DOS (MSDOS 500.409e I think...)
>because I'd heard, that it could load device drivers and TSRs high
>even on 286-based ATs. My machine is a two year old AT with 384Kb of
>plain extended RAM (no shadow, chip&techologies, NEAT or whatever).
>
>  I tried so (using "loadhigh <program>"), and it didn't complain
>(i.e. no "Machine too old for this trick" error message or the like),
>but it didn't load anything high: a look at the memory using MAPMEM
>revealed, that it had been put into low DOS memory (both device
>drivers and TSRs).
>
>  I've permuted the device driver lines in my config.sys quite heavily
>and don't think there's any combination I haven't tried. Currently, it
>reads
>       device = c:\dos\dos500\himem.sys
>       dos = high
>       [other devices, shell, break, etc ... nothing using extended RAM]
>
>  My question is: does anybody know, if this "you can load drivers and
>TSRs high also on 286 ATs"-tale belongs in alt.folklore.urban or, if
>not, what I should do to make it behave?
>

OK, by "loading high" dos 5 means two different things
1) the "dos=high" in config.sys tells dos to load in the HMA (High Mem
   Area) which is the first 64K-16 bytes after 1M.
   works on 2/3/4-86 if you have an XMS device driver.
   use device=himem.sys or better yet - QEMM.
2) using the "loadhigh" command (can be abbreviated as "lh") assumes
   that the address range between 640K and 1M contains system RAM and
   so - programs can be loaded there into "Upper Mem Blocks".
   This is true if you have mapped some extended RAM into that area
   trivial on 3/4-86 which have internal support for this but cannot
   be done on a 286 (at least without external support).
   if you have the hardware - use dos={high/low},UMB in your
   config.sys, you must use an EMS driver so add device=emm386.exe
   or better yet - QEMM.
   viola: you may use loadhigh... and devicehigh=...

Hope it helps,
        Alex.