ID:NO QRAM and "Nothing Useful To Do"
Quarterdeck Technical Note #147 Filename: QRAMNOTH.TEC
by Bob Perry CompuServe: QRAMNO.TEC
Last revised: 12/14/91 Category: QEMM
Subject: A discussion of QRAM's "Nothing Useful to Do" message, why you might
get it, and things to check to resolve it.
A. As described on page 1 of your QRAM manual, QRAM has been written to
perform the following four basic functions on your 80286, 8086 or 8088-based
1. On PC's with EMS 4 or EEMS expanded memory hardware,
QRAM converts any EXTRA memory spaces your system may have
within the high memory address range (640K to 1024K, or
A000-FFFF hex) into High RAM so you can load and run
programs there with LOADHI, as described in Chapter 4 of
your QRAM manual.
2. On 80286 PC's with Chips & Technologies NEAT CHIPSet
shadow RAM, QRAM will do the same as item #1 above, as
described on page 9 of your QRAM manual, even if you don't
have an expanded memory card.
3. QRAM enables a user willing to forgo the enhanced
graphics capabilities permitted by EGA and VGA adapter
cards, or users with monochrome or CGA adapters, to
increase the memory used by DOS by as much as 96K. For
more information on this feature refer to page 11 (the
NOVIDEOFILL parameter) and page 25 (the VIDRAM program),
in your QRAM manual.
4. On machines that have one, QRAM automatically moves the
eXtended BIOS Data Area (XBDA), which is normally at 639K,
into another address space. Doing so usually enables other
memory management features, such as extending the memory
available to DOS using the VIDRAM.COM program, and allowing
larger programs to run in the background in DESQview.
B. If QRAM determines that none of the above four functions of the program can
be performed on your system, it will display a "nothing useful to do" message
to the user. What can the user do about this message? After reading Appendix
A in your QRAM manual, page 37, consider the following:
1. In order for QRAM to "find something useful to do", there
must be MORE THAN 64K of memory spaces available within the
640K to 1024K memory address range. The first 64K is used
for the "page frame", or port hole into the expanded memory
pool, and cannot, by default, be used by QRAM. See pages
11, 37, and 46 or your QRAM manual, and section "C" of this
technical note on the subject of using the FRAMELENGTH=0
2. Perhaps you have not configured your expanded memory card
correctly to allow more than 64K of memory space above
640K. Consult the documentation which came with your memory
board, or the memory board manufacturer, and be sure all
switch settings or software setup options have been
correctly enabled. If you use Manifest to examine the
expanded memory, you can compare your Expanded Pages map
with those listed in Appendix D of the QRAM manual.
3. Some memory managers (and early versions of other
managers) will only allow CONTIGUOUS memory areas to be
mapped. With these drivers, moving their page frame as
LOW as possible, C000 for example, will allow the rest of
the memory regions to be used by QRAM. Consult your
documentation and/or memory board manufacturer.
4. Another possibility is that your shadow RAM has not been
enabled. Again, your documentation or manufacturer might
be of assistance here. If your Shadow RAM is not enabled,
then QRAM can't use it.
5. QRAM works with your Expanded Memory Manager
(EMM.SYS). Often a simple typographical error in your
CONFIG.SYS can prevent your expanded memory manager
from loading. Be certain your CONFIG.SYS file
contains a line:
where the spelling of the EMM driver matches the one you
have installed on your system. Watch carefully for a
banner or statement on the screen saying that it has been
loaded when you reboot your system.
6. Some expanded memory boards, and motherboards with
expanded memory hardware, supply an EMS 4 driver even
though the expanded memory hardware cannot provide more
that 64K of expanded memory at a time. These systems
give software applications the ability to access expanded
memory, but the hardware cannot provide the extra support
for more mappable pages. QRAM needs more mappable pages.
Some board manufacturers offer upgrade option chips which
will enhance their hardware support. Contact your board
manufacturer to see whether this is an option for you.
C. If you are NOT going to be using expanded memory in your programs, QRAM can
be made to use your single 64K page frame as an area of High RAM. This is
done using the FRAMELENGTH=0 parameter, as described in your QRAM manual.
Other programs will no longer be able to detect expanded memory, but you will
be able to use LOADHI to get about 64K of resident programs out of your
conventional memory (below 640K).
*This technical note may be copied and distributed freely as long as it*
*is distributed in its entirety and it is not distributed for profit. *
* Copyright (C) 1991 by Quarterdeck Office Systems *
************************ E N D O F F I L E *************************