Tenberry Home
Consulting Services
Order DOS/4G
DOS/4G(W) FAQ
Release Notes
DPMI Spec
* * *
DOS/4GW
DOS/16M
|
DOS/4G and DOS/4GW FAQ - Index and Questions
This is the HTML edition of the FAQ for the
DOS/4G and
DOS/4GW DOS extenders from
Tenberry Software.
It was last updated on April 8, 2003.
For further technical support on DOS/4G from Tenberry Software,
send email to <4gsupport@tenberry.com>.
For further technical support on DOS/4Gw from Tenberry Software,
send email to <4gwhelp@tenberry.com>.
This FAQ is also accessible as a
single 71KB text file at ftp://ftp.tenberry.com/pub/4gfaq.txt,
or as a
25KB zip file at ftp://ftp.tenberry.com/pub/4gfaq.zip.
List of Topic Areas:
- What are DOS/4G and DOS/4GW?
- Upgrading DOS/4GW
- Known Bugs and Problems
- BIOS Upgrade Errors
- Pointer and Address Conversions
- Memory Management
- Interrupt Handling
- Virtual Memory Management
- Debugging
- Compatibility
- File I/O
- Mouse Callbacks
- Video Support
- Interpreting Error 2001
- Interpreting Error 2002
- DMA Addressing
- Performance
- Hardware I/O
- Watcom Compatibility
- Year 2000 compliance
- Executable File Format(s)
List of Questions in each Topic Area:
- What are DOS/4G and DOS/4GW?
-
What are DOS/4G and DOS/4GW?
-
Is DOS/4G(W) a replacement for DOS?
-
What is a DOS extender?
-
What is Protected Mode?
-
What is Real Mode?
-
How Does a DOS Extender Work?
-
What happens when my program makes a DOS request -- does
DOS/4G(W) handle it?
-
How about BIOS requests?
-
How about TSR or device driver calls?
-
All this seems complicated -- why bother?
-
All this seems complicated -- will my program slow down?
-
Can I use my existing 32-bit compiler?
- Upgrading DOS/4GW
-
Is the version 2.01a update a direct replacement for my version 1.97?
-
Can we still substitute our own
WSTUB.C in version 2.01a?
-
Can we still freely redistribute our product if we use DOS/4GW 2.01a?
-
Will my application run faster if I upgrade DOS/4GW from version 1.97 to 2.01?
-
Will my application run faster if I upgrade from DOS/4GW version 1.97
to DOS/4G for Watcom or full DOS/4G?
- Known Bugs and Problems
-
What is the 'PATH too large' bug?
-
Is there any work-around for the 'PATH too large' bug?
-
Is there a way to run games that use DOS/4G(W) under Windows/NT/2K/XP?
- BIOS Upgrade Errors
-
Why am I getting a 'Error 2 - File does not exist' error
when I try to update my BIOS?
-
Why does your BIOS update program AMINF386.EXE return
'Error 2 -- File does not exist' when I run it in DOS?
- Pointer and Address Conversions
-
What is a linear address?
-
What is a physical address?
-
How do I convert between pointers and linear addresses?
-
How do I convert between code and data pointers?
-
How do I convert between pointers and low memory addresses?
-
How do I convert between linear and physical addresses?
-
How do I convert between real and linear addresses?
-
Does DOS/4G provide null pointer checking?
- Memory Management
-
I'm using WATCOM 9.5 and DOS/4G 1.96. Are there
problems with the malloc() and realloc() functions? They seem to be
failing prematurely.
-
Why can't I access all 128MB of physical memory
available on my machine?
-
How can I allocate a block of memory in protected mode that doesn't
cross a page boundary?
- Interrupt Handling
-
My program installs a hardware interrupt handler.
The program runs fine under plain DOS but crashes under DPMI. What might
be happening?
-
Why can't I get the WATCOM library signal()
function to work with Ctrl-Break?
-
I'm writing a hardware interrupt handler.
Can you give me some tips?
-
Does DOS/4G support VESA Int 10h Function 4F00?
-
Is it true that the Watcom function _disable()
only disables interrupts for the process, and not the processor?
-
Is there any way around this, for example, using an asm 'cli' call?
-
Can all published DOS interrupts be emulated with protected-mode code?
-
So, what DOS interrupts are handled by protected-mode code?
- Virtual Memory Management
-
Is there a way that my program can check for the
presence of a virtual memory manager?
-
Are there any precautions I need to take when
spawning a DOS/4G program from another DOS/4G program in a virtual memory
environment?
-
My program runs fine without VMM but crashes when
VMM is running. What should I be looking for?
-
My program is running out of memory, even though I
have a huge virtual address space. What could be wrong?
-
Is there an advantage to creating a permanent swap file?
-
>How do I specify a directory name for the swap file?
-
>How should I configure VMM for best performance?
-
I've tried various things to speed up my program,
but it still seems sluggish. Are there any other factors that affect VMM
performance?
-
Why do I need such a big swap file?
-
Can you have virtual memory for one DOS/4G
program, and not for the other DOS/4G programs that it spawns?
- Debugging
-
Can I debug a bound application?
-
What versions of WVIDEO are supported?
- Compatibility
-
Is DOS/4G(W) compatible with Windows 95?
-
Is DOS/4G(W) compatible with Windows 98?
-
Is DOS/4G(W) compatible with Windows ME?
-
Is DOS/4G(W) compatible with Windows NT?
-
Is DOS/4G(W) compatible with Windows 2000?
-
Is DOS/4G(W) compatible with Windows XP?
-
Can DOS/4GW be used with Borland Turbo C/C++?
-
I'm experiencing problems trying to run my DOS/4G
application with Novell. Any idea what might be happening?
-
Is DOS/4G compatible with Windows NT, Windows for
Workgroups and Windows 95?
-
Is 32-bit development with Microsoft supported by DOS/4G?
-
Is DOS/4G compatible with Linux DOS emulation?
-
Why does my DOS/4G program run perfectly on some
machines and hang on others?
-
Are you aware of any compatibility problems
between a DOS/4G program and a Novell/Eagle NE3210 EISA NIC which uses a
shared RAM area at address D000h-D7FFFh? Is there some way I can exclude
this area from DOS/4G?
-
My game's video hangs at the same spot after
several hours playing. The game manufacturer says that the DOS extender
(version 1.97) might be incompatible with my IBM 6x86 166+ CPU. Could
this be possible?
-
Is DOS/4G compatible with the Metaware Compiler?
-
When we try to run our protected mode application
under Windows 95 in the same DOS session as Btrieve, Windows tells us that
protected mode cannot be entered. Any idea what might be the
problem?
-
I'm getting the following error: 'DPMI host error:
cannot lock stack'. What does this error mean?
-
Are there problems when repeatedly spawning DOS/4G
applications under OS/2 2.1?
-
Is there a problem with resizing a DOS box window
under OS/2 Warp while a DOS/4G application is running?
-
Why am I having trouble running my DOS/4G application
from inside Lotus 1-2-3?
- File I/O
-
Do you have any suggestions for speeding up file I/O?
- Mouse Callbacks
-
Must I do anything special to handle mouse callbacks?
- Video Support
-
Can I under Windows XX switch between screen
resolutions like 800x600 and 1024x768?
-
Does DOS/4G automatically translate VESA extensions?
- Interpreting Error 2001
-
My program generates an error (2001). How do I tell what's going on?
- Interpreting Error 2002
-
I'm getting an error 2002 (transfer stack overflow). What shoud I do?
- DMA Addressing
-
My TSR currently uses 26K of conventional memory.
I can reduce this number even more by allocating the sound card DMA buffer
from extended memory. Is this worth the effort?
- Performance
-
Will my application run faster if I upgrade DOS/4GW from version 1.97 to 2.01?
-
Will my application run faster if I upgrade from DOS/4GW version 1.97
to DOS/4G for Watcom or full DOS/4G?
-
What impact does running in protected mode have on my program?
-
Assuming the machines are of equal speed (MHz),
will DOS/4GW run faster on a PPro or a normal Pentium?
-
I'm worried about the time spent switching between modes.
Can I do all my execution in protected mode and eliminate switching
to real mode?
-
What is the fastest way to handle an interrupt?
-
Can I reduce mode switching by using a particular compiler?
-
Do calls to the standard C library cause mode switches?
- Hardware I/O
-
Can I virtualize I/O ports under DOS/4G?
-
Is there any restriction on using the I/O address
space access functions, such as
inp(), with DOS/4G?
- Watcom Compatibility
-
What versions of Watcom are you compatible with?
-
Why doesn't my program work with Watcom 11.0 when
DOS4GW.EXE is situated in the same directory as the executing program?
-
Isn't Watcom out of business?
-
Doesn't that mean that the Watcom compiler is no longer available?
-
Doesn't that mean that the Watcom compiler is no longer supported?
- Year 2000 compliance
-
Is DOS/4GW Year 2000 compliant?
-
Is DOS/4G Year 2000 compliant?
-
Will my DOS/4G(W) program be Year 2000 compliant?
- Executable File Format(s)
-
What is the format of DOS/4GW executables?
-
What are the differences between the LE and LX formats?
-
Where can I get details about the LE/LX formats?
-
What is the format of DOS/4G executables?
-
Where can I get details about the PE format?
-
Why don't you have the definition of the PE format available online?
|