Mail Archives: opendos/2002/08/14/23:39:09
On 2002-08-13, Joe Smith wrote:
> However DRDOS 7.03 only seems to recognise 64MB of RAM.
> Is this normal? Is there an explanation? What do I need to do?
This is normal.
As a 32-bit implementation, DR-DOS 7.03 EMM386 will support much
more memory, but since it does not query the new BIOS API for more
than 64 Mb, it will not be able to detect more memory by itself.
More memory was not common when DR-DOS 7.03 was released.
You can easily circumvent this by loading an external XMS provider,
which supports more than 64 Mb of memory, before EMM386.EXE.
For example, the MS-DOS 7+ HIMEM.SYS will work fine.
EMM386 will display a non-fatal warning, that this would be a
sub-optimal solution. In fact it is compared to having the
detection code built into EMM386 itself, however, it is the
only way to get it working with the published driver.
Depending on the other EMM386 options you use, you may be
able to suppress the warning with the /QUIET=HIMEM option.
In case this gives you a fatal error message instead of
removing the non-fatal-message, you will have to remove
that option again and live with the warning.
Search the archives of this list at http://www.delorie.com,
the memory manager tech docs at http://www.freedos.org,
or DR-DOS related sites like http://www.drdos.org and
http://www.drdos.net, where this is explained in
all details.
> Also I am seeing EMM386.EXE protection errors from time to time...
> Any assistance on EMM386.EXE set up would be appreciated.
Protection faults are usually due to some memory or driver conflict.
In many cases the reason is some hardware using memory mapped I/O
in the adapter range, which is difficult to detect by the memory
manager, so it might need some help in order to include and exclude
the right areas.
Without more detailed information about your system and your
current configuration files ([D]CONFIG.SYS and AUTOEXEC.BAT/AUTODOS7.BAT)
and a memory map (MEM /A), we won't be able to help you much beyond
general tips, which you can also find discussed at great length in
the above mentioned places.
For a start, try excluding the whole adapter range /EXCLUDE=C800-EFFF.
If this helps, you can successively reduce the excluded area downto
a minimum. You may also compare the memory map under DR-DOS EMM386
with that under MS-DOS/PC DOS EMM386 and in case, MS-DOS/PC DOS
EMM386 does not use an area, the DR-DOS memory manager uses, you
may try to exlcude this area under DR-DOS.
If the crashes occur in specific situations, for example, only
when loading a specific program, check if the program is using
any kind of DOS extender.
Some DOS extenders may require special EMM386 configuration options
like /PIC=ON|OFF /DPMI=ON|OFF /MULTI=ON|OFF. Some DOS extenders
(for example older versions of the CauseWay DOS extender) require
restubbing (can be done in the field) before they will work under
DR-DOS EMM386.
Hope it helps,
Matthias
--
<mailto:Matthias DOT Paul AT post DOT rwth-aachen DOT de>; <mailto:mpaul AT drdos DOT org>
http://www.uni-bonn.de/~uzs180/mpdokeng.html; http://mpaul.drdos.org
"Programs are poems for computers."
- Raw text -