[comp.sys.ibm.pc.hardware] How to get 384K RAM back

wuwei@stealth.acf.nyu.edu ( ) (12/05/90)

I have a 386 25Mhz clone. The motherboard is chip and technology
chipset. It does shadow rom for you. I can disable the shadow rom.
But the 384K Ram between 640K and 1M is still not available after 
I disable it.

Is it possible to get the 384K ram back as extended memory ?

                         Wei Wu 

grege@gold.gvg.tek.com (Greg Ebert) (12/05/90)

 wuwei@stealth.acf.nyu.edu ( ) writes:

#I have a 386 25Mhz clone. The motherboard is chip and technology
#chipset. It does shadow rom for you. I can disable the shadow rom.
#But the 384K Ram between 640K and 1M is still not available after 
#I disable it.
#
#Is it possible to get the 384K ram back as extended memory ?
#
#                         Wei Wu 

Maybe you're looking for it in the wrong place. Everything from 640k - 1M is
reserved for video ram, BIOS, etc. The RAM *should* appear between 1M and 
1.384M. You should use the shadow ROM; I've seen shadowed video BIOS and it
is *damn* fast. 

shwake@raysnec.UUCP (Ray Shwake) (12/05/90)

grege@gold.gvg.tek.com (Greg Ebert) writes:

>Maybe you're looking for it in the wrong place. Everything from 640k - 1M is
>reserved for video ram, BIOS, etc. The RAM *should* appear between 1M and 
>1.384M. You should use the shadow ROM; I've seen shadowed video BIOS and it
>is *damn* fast. 

	That appears to be the case with many systems (like our own NEC 386)
but not with all systems. Northgate reportedly does not claim this memory
resource, nor does our IBM PS/2 80. Our AST 386/33 uses only a portion of this
memory, leaving the rest as extended memory.

slin@campanile.berkeley.edu (Steven Lin) (12/09/90)

In article <167@raysnec.UUCP> shwake@raysnec.UUCP (Ray Shwake) writes:
>grege@gold.gvg.tek.com (Greg Ebert) writes:
>
>>Maybe you're looking for it in the wrong place. Everything from 640k - 1M is
>>reserved for video ram, BIOS, etc. The RAM *should* appear between 1M and 
>>1.384M. You should use the shadow ROM; I've seen shadowed video BIOS and it
>>is *damn* fast. 
>
>	That appears to be the case with many systems (like our own NEC 386)
>but not with all systems. 

All motherboards manufactured by Micronics put the 384k way up at the
16M (yes, 16 Megabyte) boundary.  Quarterdeck's expanded memory manager
(QEMM) will automatically recover this 384k for use as expanded memory,
provided you disable hardware shadowing.  Note QEMM will shadow for you
if you want it.

I do not work for Quarterdeck.

liberato@dri.com (Jimmy Liberato) (12/23/90)

In article <9590@pasteur.Berkeley.EDU> slin@campanile.berkeley.edu (Steven Lin) writes:

>All motherboards manufactured by Micronics put the 384k way up at the
>16M (yes, 16 Megabyte) boundary.  Quarterdeck's expanded memory manager
>(QEMM) will automatically recover this 384k for use as expanded memory,
>provided you disable hardware shadowing.  Note QEMM will shadow for you
>if you want it.

This is an area I would like more elaboration on.  Norton's book mentions
this in a diagram but does not elaborate.  

1. OK, if the ram that is to be used for rom shadowing is put at the top of
extended memory how is it at the same time mapped to AAAA-FFFF?

2. On advanced boards like the Micronics, if hardware shadowing is disabled
isn't the equivalent amount of ram now available as extended memory?  I guess
this might be what was meant above when it was said that QEMM could now recover
it as expanded.  Even if I have no memory manager to emulate EMS it should be 
visible as extended.  Right?

3. On a 386 is there any advantage to have shadowing be done at the motherboard
instead of with a software memory manager (QEMM)?

4. Manifest, in the extended memory section, says something like: "[memory 
available], used from the top."  What does "used from the top" mean?  Does
this have any relation to the 16M boundary mentioned above? 


Thanks for any comments!

--
Jimmy Liberato   liberato@dri.com
                 ...uunet!drivax!liberato

silver@xrtll.uucp (Hi Ho Silver) (12/26/90)

In article <WYQVJY1@dri.com> liberato@dri.com (Jimmy Liberato) writes:
$2. On advanced boards like the Micronics, if hardware shadowing is disabled
$isn't the equivalent amount of ram now available as extended memory?  I guess
$this might be what was meant above when it was said that QEMM could now recover
$it as expanded.  Even if I have no memory manager to emulate EMS it should be 
$visible as extended.  Right?

   It depends on the chipset.  Some chipsets let you use the memory if you're
not shadowing.  Some chipsets don't.  Some let you use it if you have less
than a certain amount of RAM, and not if you have more than that amount.  I
know it sounds silly, but that's the way things are.

   As for visibility as extended ... it depends on where it is in the memory
space.  We'll ignore programs such as QEMM for the moment, since they're
designed to handle just about any memory configuration you can throw at them.
Other programs which use extended memory generally assume that it starts at
the 1M mark and continues upwards from there.  If your memory does this,
then you'll be able to use it.  Otherwise, your machine will appear to have
no extended memory.

$3. On a 386 is there any advantage to have shadowing be done at the motherboard
$instead of with a software memory manager (QEMM)?

   If you're using QEMM for other tasks, then it doesn't make any difference.
But if you're not going to use QEMM at all, then it's probably slightly faster
to do it in hardware.  Why?  Well, to put it simply, you're asking the 386
to do extra work for you (because QEMM's telling it to run addresses through
its mapping hardware rather than using them directly).  Just a guess ...

$4. Manifest, in the extended memory section, says something like: "[memory 
$available], used from the top."  What does "used from the top" mean?  Does
$this have any relation to the 16M boundary mentioned above? 

   "Used from the top" dates back to the days when the AT came out and there
was no standard for managing extended memory.  There was a counter in memory
that said how much extended memory the machine had, and this memory started
at 1M and worked upwards.  If a smart program wanted some of it, but didn't
want to be clobbered by other programs that also wanted extended memory, here's
what it would do.

   Let's say the machine has 384K of extended memory, and you (the program)
want to use 128K of it.  You use the upper 128K, leaving the lower 256K free.
You also adjust the counter in low memory to say that the machine only has
256K of extended memory.  Now, other programs think your memory doesn't exist
and they won't try to use it themselves.  This is what's meant by "used from
the top".

   For more information on the 16M boundary, look in the Manifest manual.
-- 
 __            __  _  | ...!nexus.yorku.edu!xrtll!silver |  always
(__  | | |  | |_  |_) >----------------------------------< searching
 __) | |_ \/  |__ | \ | if you don't like my posts, type |    for
_____________________/  find / -print|xargs cat|compress |   SNTF