[comp.sys.ibm.pc] What's Extented memory good for??

umhudso7@ccu.umanitoba.ca (09/18/89)

  I have a Wells American Compustar with 2 MB, most of which is called
EXTENDED memory, so I'm told, and that it can't really be used as is.
THEY say that it must be used only by specialized programs or with 
LIM emulation software.  What I really want to do is use that EXTENDED
memory as CONVENTIONAL memory.
  I'm constantly running short of memory (I'm looking at buying more,
but it's EXPENSIVE!!) and when I check, there's all this EXTENDED
memory just sitting there, humming to itself.  Isn't there ANY way
(official or not) that I can _use_ this memory for everything I run
from DOS, not just specialized programs.  I like the disk caching,
but I'd like to put that memory to more (if not BETTER) use.

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|  - Wayne Hudson (BITNET - umhudso7@CCU.UMANITOBA.CA)                 |
| "[The author] is currently not certain where he lives, or with whom" |
|                 - Douglas Adams, THE LONG DARK TEA-TIME OF THE SOUL  |

glen@sunscreen.UUCP (Glen Ivey) (09/20/89)

    Ok, a few definitions:

Extended Memory == Memory at addresses above 1Mb.  This was introduced
w/ the advent of the PC-AT and the '286, because the '86/'88
processors only had 20 address bits.  (2 ** 20 = 1M)

Expanded Memory == Memory that lies bellow 1Mb, and is accessed by
bank switching using the LIM protocol.  (If there is something called
"expanded" that does not use LIM, I'd be interested in hearing about
it.)

    Now, many add-in memory cards have configuration options that
allow extended or expanded addressing.  If you're extra Mb is
implemented like this, you may be able to get around your problem.

    The other catch is that there is no way to convince vanilla DOS
software that the extra memory exists.  Extended memory, because it
relies on the "Virtual Protected Mode" addressing provided by the '286
(and follow ons), can not be used by DOS programs unless they contain
the software to constantly change the processor mode.  Many RAM disk
drivers, and a few applications use this method.  Expanded memory also
requires software that knows about the memory configuration.  Because
LIM is a bank switched system, only a small portion of the total
expanded memory is available at any one time, and the memory
management in the application must be designed to accommodate this.

>                         What I really want to do is use that EXTENDED
>memory as CONVENTIONAL memory.

    Your problem basically comes down to the fact that "conventional"
memory (by which, I assume you mean memory accessible to a program
that doesn't make a special effort to accommodate expanded/extended
memory) is limited by the original MS-DOS/8086 architecture, and,
short of moving to OS/2 (which has a software memory management
architecture based on the '286 virtual protected mode) and replacing
your software, there's nothing to do about it.

===============================================================================
Glen Ivey        {ames,uunet,amdahl}!oliveb!cirrusl!glen
Cirrus Logic     glen%cirrusl%oliveb@ames.arc.nasa.gov
--Not only are my opinions not necessarily my companies, they aren't
always mine either.
===============================================================================

liberato@drivax.UUCP (Jimmy Liberato) (09/20/89)

glen@sunscreen.UUCP (Glen Ivey) writes:

>Expanded Memory == Memory that lies below 1Mb, and is accessed by
 
 Right. It's initially confusing to think I might have a 2 Meg expanded
 memory board that "lies below 1Mb."  It is the paged "window" that resides
 at that address.

>bank switching using the LIM protocol.  (If there is something called
>"expanded" that does not use LIM, I'd be interested in hearing about
>it.)

 Well, there also is the AQA (AST/Quadram/um um...Ashton-Tate?) protocol 
 in addition to the mentioned Lotus/Intel/Microsoft one.  This is what 
 those great Rampage boards used. (REMM.SYS instead of EMM.SYS).  The main
 advantage was one of speed over the earlier LIM standard.  The question is
 moot, however, with the advent of the LIM 4.0 standard which I believe they
 have all agreed (thankfully) to subscribe.

--
Jimmy Liberato   ...!amdahl!drivax!liberato                              
     "My life is conventional and uneventful.  It allows me to think with
      passion and violence." -John Updike
  

cs4g6ag@maccs.dcss.mcmaster.ca (Stephen M. Dunn) (09/20/89)

umhudso7@ccu.umanitoba.ca () writes:
$  I have a Wells American Compustar with 2 MB, most of which is called
$EXTENDED memory, so I'm told, and that it can't really be used as is.
$THEY say that it must be used only by specialized programs or with 
$LIM emulation software.  What I really want to do is use that EXTENDED
$memory as CONVENTIONAL memory.

   If you already have 640K of conventional memory, that's it.  Anything in
excess must be used as either extended or as expanded memory (with a very
few exceptions).  You can use extended memory to emulate expanded with such
programs as PC Magazine's EMS40.SYS; however, this eats up about 70K of
conventional memory and is exceptionally slow.

   If you have a 386-based machine, you can use two programs which come with
DOS 4 that utilize the memory-mapping capabilities of the 386 to make the
extra memory behave as if it was expanded without losing either the space
in your conventional memory space or speed.

   One thing to check out, though, is your motherboard.  Many motherboards
these days allow memory in excess of 640K to be used as either extended or
as expanded memory.  Mine does; I don't know if Wells American's m/bs do.
Check out your documentation to see if there's a switch on the motherboard
that selects either extended or expanded memory.  If there is, set it to the
expanded position and add the expanded memory driver for your motherboard to
the config.sys file (if you don't have the driver, contact the retailer who
sold you the computer).

$  I'm constantly running short of memory (I'm looking at buying more,
$but it's EXPENSIVE!!) and when I check, there's all this EXTENDED
$memory just sitting there, humming to itself.  Isn't there ANY way
$(official or not) that I can _use_ this memory for everything I run
$from DOS, not just specialized programs.  I like the disk caching,
$but I'd like to put that memory to more (if not BETTER) use.

   In general, no, you can't use extended memory for too much.  Some disk-
caching programs use extended; VDISK/RAMDRIVE.SYS does, too.  OS/2 and
Windows/286 and 386 use extended memory.  Lotus 1-2-3 release 3 requires the
presence of extended memory.  Other than that, however, you aren't likely
to find many programs that will use it.

   But beware!  Even if you set it up as expanded memory, you still can't use
it with everything you run from DOS.  Access to expanded memory is not done
the same wasy as access to conventional memory!  Any program wishing to use
expanded memory must be specifically written to check for the presence of
EMS and must also know how to use it.  1-2-3, Symphony, WordPerfect 5, and
many other programs will use expanded memory if you have it.  Many other
programs, however, won't.  So don't expect all software to use any more
than 640K, even if you load your machine to the gills with memory.  Check out
the documentation on each piece of software to see if it will use EMS.  If
it doesn't say anything, it won't.


-- 
Stephen M. Dunn                         cs4g6ag@maccs.dcss.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.

pajerek@isctsse.UUCP (Don Pajerek) (09/21/89)

In article <1989Sep18.165750.11540@ccu.umanitoba.ca> umhudso7@ccu.umanitoba.ca () writes:
>
>  I have a Wells American Compustar with 2 MB, most of which is called
>EXTENDED memory, so I'm told, and that it can't really be used as is.
>THEY say that it must be used only by specialized programs or with 
>LIM emulation software.  What I really want to do is use that EXTENDED
>memory as CONVENTIONAL memory.
>
>  - Wayne Hudson

ExTENded (as opposed to exPANded) memory has not been very useful
until recently.  It is now being used effectively by programs such
as Microsoft Windows/286 and Lotus 1-2-3 v3.0.

You should also be able to find some sort of software that will allow
the extended memory to emulate LIM expanded memory.



djp

cs4g6ag@maccs.dcss.mcmaster.ca (Stephen M. Dunn) (09/21/89)

In article <25171E6E.2EC3@drivax.UUCP> liberato@drivax.UUCP writes:
$glen@sunscreen.UUCP (Glen Ivey) writes:
$>bank switching using the LIM protocol.  (If there is something called
$>"expanded" that does not use LIM, I'd be interested in hearing about
$>it.)
$ Well, there also is the AQA (AST/Quadram/um um...Ashton-Tate?) protocol 
$ in addition to the mentioned Lotus/Intel/Microsoft one.  This is what 
$ those great Rampage boards used. (REMM.SYS instead of EMM.SYS).  The main
$ advantage was one of speed over the earlier LIM standard.  The question is
$ moot, however, with the advent of the LIM 4.0 standard which I believe they
$ have all agreed (thankfully) to subscribe.

   AQA was an extension to LIM EMS 3.2 designed by AST, Quadram and Ashton-
Tate.  I'm not entirely sure of what differences it had; however, there
were extra calls available (perhaps AQA is where the idea of more than 4
logical pages came from?).

   Fortunately, LIM included AQA in the EMS 4.0 specification, so programs
written to require AQA will work under EMS 4.0.

   BTW, are there any programs out there (common ones, I mean) that require
either AQA or EMS 4.0?


-- 
Stephen M. Dunn                         cs4g6ag@maccs.dcss.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.

Ralf.Brown@B.GP.CS.CMU.EDU (09/22/89)

In article <2518F275.22253@maccs.dcss.mcmaster.ca>, cs4g6ag@maccs.dcss.mcmaster.ca (Stephen M. Dunn) wrote:
 >   AQA was an extension to LIM EMS 3.2 designed by AST, Quadram and Ashton-
 >Tate.  I'm not entirely sure of what differences it had; however, there
 >were extra calls available (perhaps AQA is where the idea of more than 4
 >logical pages came from?).

Yes.  Also the idea of multiple sets of mapping registers (AQA had two).
And the idea of backfilling the low 640K with mappable memory (which is
what lets DESQview really fly).

 >   Fortunately, LIM included AQA in the EMS 4.0 specification, so programs
 >written to require AQA will work under EMS 4.0.

Unfortunately, the calls are different, even though EMS 4.0 provides a
superset of the AQA functionality.  Programs that were written for AQA
must be modified to use the different calls in the LIM4 API (hopefully
while retaining AQA compatibility).

 >   BTW, are there any programs out there (common ones, I mean) that require
 >either AQA or EMS 4.0?

Yep.  DESQview through version 2.00 requires AQA, versions 2.01 and up
support both AQA and EMS4.
--
UUCP: {ucbvax,harvard}!cs.cmu.edu!ralf -=-=-=-=- Voice: (412) 268-3053 (school)
ARPA: ralf@cs.cmu.edu  BIT: ralf%cs.cmu.edu@CMUCCVMA  FIDO: Ralf Brown 1:129/46
FAX: available on request                      Disclaimer? I claimed something?
"All through human history, tyrannies have tried to enforce obedience by
 prohibiting disrespect for the symbols of their power.  The swastika is
 only one example of many in recent history."
-- American Bar Association task force on flag burning

nebakke@ndsuvax.UUCP (Jeff Bakke) (09/25/89)

In the reply to the original article, there was a statement that said something	like, "AQA was required by Desqview through version 2.0" and that I did not
support LIM EMS 4.0.  If I remember correctly, I have used Desqview since version 1.0 (currently using 2.2) and I used to run Expanded memory (straight expandedmemory on my AT, no EEMS) using desqview and it would reconqnize and use it.	
	
Am I deluded or was I doing something different???		

Jeff Bakke
nebakke@plains.NoDak.edu
nu113738@ndsuvm1.bitnet