ndeng@EULER.BERKELEY.EDU (Nan Deng) (09/17/89)
Recently I have seen a number of 386 motherboards all using PHEONIX BIOS. (MICRONICS, GENE, etc.) All boards have 4MB memory chips installed. All boards reported 640KB of base memory and 3072KB extended memory when boot up. My question is: where is the additional 384KB?
michelbi@oregon.uoregon.edu (Michel Biedermann) (09/17/89)
In article <8909170749.AA26779@euler.Berkeley.EDU>, ndeng@EULER.BERKELEY.EDU (Nan Deng) writes: > Recently I have seen a number of 386 motherboards all using PHEONIX BIOS. > (MICRONICS, GENE, etc.) All boards have 4MB memory chips installed. All > boards reported 640KB of base memory and 3072KB extended memory when boot up. > > My question is: where is the additional 384KB? The mistery of the disappearing 384K is one of DOS's problems. Extended memory only starts at 1Mb. The 384K between base memory (640K) and extended memory (> 1Mb) is used by DOS as video system memory. Certain computer manufacturers allow part or all of this memory to be used as EMS (expanded memory), for BIOS shadowing, or for printspooler or RAM disk. I hope this helps! Michel Biedermann michelbi@oregon.uoregon.edu U. of Oregon
cs4g6ag@maccs.dcss.mcmaster.ca (Stephen M. Dunn) (09/18/89)
In article <8909170749.AA26779@euler.Berkeley.EDU> ndeng@EULER.BERKELEY.EDU (Nan Deng) writes:
$Recently I have seen a number of 386 motherboards all using PHEONIX BIOS.
$(MICRONICS, GENE, etc.) All boards have 4MB memory chips installed. All
$boards reported 640KB of base memory and 3072KB extended memory when boot up.
$My question is: where is the additional 384KB?
My guess is that it's between 640K and 1M. Some programs (and the BIOS is
a program) will say this is extended memory, and some won't. In general, I
believe, most won't.
A sort-of related thought: over the summer, I was using a lot of PS/2
machines, mostly model 30 286s. In almost all cases, these machines were
reported by DOS to have 639K of memory (?!) Such utilities as PCTools and
Norton's SI reported similar to the following:
DOS reports 639K conventional memory
I find 640K
This occured on virtually all of the PS/2s (running DOS 3.30 or 4.01).
Any ideas why?
--
Stephen M. Dunn cs4g6ag@maccs.McMaster.CA
**********************************************************************
<std_disclaimer.h> = "\nI'm only an undergraduate!!!\n";
"VM is like an orgasm: the less you have to fake, the better." - S.C.
freak@cbnewsc.ATT.COM (c.e.malloy..iii) (09/18/89)
In article <8909170749.AA26779@euler.Berkeley.EDU>, ndeng@EULER.BERKELEY.EDU (Nan Deng) writes: > > Recently I have seen a number of 386 motherboards all using PHEONIX BIOS. > (MICRONICS, GENE, etc.) All boards have 4MB memory chips installed. All > boards reported 640KB of base memory and 3072KB extended memory when boot up. > > My question is: where is the additional 384KB? On my AT&T 6386E WGS system the additional 384K is listed at startup as dedicated memory. However the new AT&T MS-DOS 4.01 operating system recovered that memory. Now at start-up the system shows 640K base memory and 5504 extended memory (I have 6Mb). Clancy Malloy AT&T Bell Labs att!ihlpf!cem
schow@bmers58.UUCP (Stanley Chow) (09/18/89)
In article <8909170749.AA26779@euler.Berkeley.EDU>, ndeng@EULER.BERKELEY.EDU (Nan Deng) writes: > Recently I have seen a number of 386 motherboards all using PHEONIX BIOS. > (MICRONICS, GENE, etc.) All boards have 4MB memory chips installed. All > boards reported 640KB of base memory and 3072KB extended memory when boot up. > > My question is: where is the additional 384KB? > The standard PC memory map has this 384KB reserved for BIOS ROM, I/O card ROM/RAM, etc. What happens to it is complicated and depends on the chip set, BIOS. I have AMI BIOS with the NEAT chip set so that is what I will talk about. The Chips & Technology NEAT chip set acts as a traffic cop for memory references to that address range. It can map the references to the mother board DRAM, mother board ROM, expansion I/O bus, etc. All this is under program control (by writing to registers on the chips). The intention is that on boot up, all references are to ROM, then BIOS copies itself to DRAM, BIOS will then tell NEAT to map BIOS references to DRAM. Simalar thing for EGA ROM. (This is known at ROM shadowing). Note that Video RAM must be left alone and not mapped out, otherwise the program will run real fast, but nothing will show on the screen! The NEAT chip set can map individual 16K blocks as well as write-protect each block. AMI BIOS (at least mine) chooses to map the lower 640K to motherboard DRAM, and the upper 384K is mapped to a combination of: - Protected DRAM, for BIOS ROM shadowing or Video ROM shadowing - I/O bus for Video RAM or other cards Unfortunately, all the unused address range is protected. This means eventhough the DRAM is sitting on the motherboard, no program will find it. There is nothing to stop me from writing a program to fiddle the registers so that NEAT will map the unused address range back to unprotected DRAM. But looking at the address map, there is not that much that can be recovered: 64K BIOS ROM Shadowing 32K Video ROM Shadowing (remember 16K block size) 64K EMS page frame 128K Video RAM (at least I think it is 128K) -------- 288K used. So the most that can be recovered is around 96K. (Hmm, I remember the days when 48K was the maximum for an Apple II). -- Stanley Chow BitNet: schow@BNR.CA BNR UUCP: ..!psuvax1!BNR.CA.bitnet!schow (613) 763-2831 ..!utgpu!bnr-vpa!bnr-fos!schow%bmers58 Me? Represent other people? Don't make them laugh so hard.
mlord@bmers58.UUCP (Mark Lord) (09/19/89)
In article <240@bmers58.UUCP> schow%BNR.CA.bitnet@relay.cs.net (Stanley Chow) writes: >In article <8909170749.AA26779@euler.Berkeley.EDU>, ndeng@EULER.BERKELEY.EDU (Nan Deng) writes: >> Recently I have seen a number of 386 motherboards all using PHEONIX BIOS. >> (MICRONICS, GENE, etc.) All boards have 4MB memory chips installed. All >> boards reported 640KB of base memory and 3072KB extended memory when boot up. >> My question is: where is the additional 384KB? > >The standard PC memory map has this 384KB reserved for BIOS ROM, I/O card >ROM/RAM, etc. What happens to it is complicated and depends on the chip >set, BIOS. I have AMI BIOS with the NEAT chip set so that is what I will >talk about. > ...lots of good stuff deleted... > >Unfortunately, all the unused address range is protected. This means >eventhough the DRAM is sitting on the motherboard, no program will >find it. There is nothing to stop me from writing a program to fiddle >the registers so that NEAT will map the unused address range back to >unprotected DRAM. But looking at the address map, there is not that >much that can be recovered: > 64K BIOS ROM Shadowing > 32K Video ROM Shadowing (remember 16K block size) > 64K EMS page frame > 128K Video RAM (at least I think it is 128K) >-------- > 288K used. >So the most that can be recovered is around 96K. (Hmm, I remember the >days when 48K was the maximum for an Apple II). Hmm.. well, that tells us lots about the *address space* but not much about the missing 384K of *physical memory* that is still hidden away somewhere. In the above example, we have 64K+32K used for shadowing, but that is only 96K of the missing 384K, leaving 288K unaccounted for. There have been several postings recently about how to *recover* that last 288K as useable extended/expanded memory. On some systems, 386MAX can find it and remap it into XMS/EMS for use by Windows/DOS4/DesqView/Caches etc. Apparantly this memory actually does exist way up high in the extended memory map when not being used by the NEAT/BIOS, and 386MAX knows where to look for it. QEMM on the other hand, can only find contiguous extended memory from the 1024K boundary (it isn't smart enough to skip over *holes*.. not even a command line option for this -- too bad). My 386sx motherboard uses an Intel ChipSet instead of NEAT, and the AWARD bios remaps the unused portions of the famous 384K as extended memory begining after the end of the rest of the motherboard (extended) memory. The board currently has 6Meg installed, with room for another 2Meg. I get 640K, some shadowing (which can be disabled to free up more memory), and 5Meg extended, plus up to another 384K extended tacked onto the end. What might be needed for NEAT board users is a little program to fiddle the NEAT registers to remap the rest of the RAM onto the end of the "normal" extended memory (plus fiddle the BIOS so it knows it is there). Any takers ? -Mark
dmurdoch@watstat.waterloo.edu (Duncan Murdoch) (09/19/89)
In article <241@bmers58.UUCP> mlord@bmers58.UUCP (Mark Lord) writes: > >Apparantly this memory actually does exist way up high in the extended memory >map when not being used by the NEAT/BIOS, and 386MAX knows where to look for it. ... >What might be needed for NEAT board users is a little program to fiddle the >NEAT registers to remap the rest of the RAM onto the end of the "normal" >extended memory (plus fiddle the BIOS so it knows it is there). According to my reading of the NEAT documentation, mapping can only be done in 1 Meg chunks. By "mapping", I mean changing the physical address. Since you have to have some memory physically addressed in the first megabyte, with this chipset you have to have a whole megabyte there. The only way to avoid conflicts is to disable the parts needed for video, EMS, etc. The disabling is done in 16K blocks. Duncan Murdoch