VOGONS

Common searches


Reply 21 of 36, by LoneCrusader

User metadata
Rank Newbie
Rank
Newbie

I tracked down an updated version of DOS4G (2.01a) and experimented with it and DOS32A.
Replacing DOS4GW 1.97 in WAR2.EXE with either of these now allows the game to run in pure DOS, but when run in a DOS Box inside Windows it still crashes the same way as before.

So apparently there are some incompatibilities between DOS4GW 1.97 and the X850 XT card and possibly others.

stillwin9598msfnsq1.PNG
Author of FIX95CPU - Run Windows 95 on >2.1GHz Processors!
Author of XUSBSUPP - "NUSB for Windows 95!"

Reply 23 of 36, by LoneCrusader

User metadata
Rank Newbie
Rank
Newbie

DOS32A comes with SB.EXE which can be used to replace DOS4GW inside WAR2.EXE with DOS32A. Place DOS32A.EXE and SB.EXE in your WAR2 folder, backup your original WAR2.EXE, and run SB /R WAR2.EXE. DOS32A still throws irrelevant? errors when exiting the program though.

For DOS4GW it's more complicated, you will have to track down a package that includes 4GWBIND.EXE. Google is your friend, I'm not sure if the link I found it at is OK to post here. Search for DOS4GW 2.01a and thank mother Russia... 🤣 😈

And yes, I can now run the game in pure DOS on the X850 XT PE, but not in a Windows DOS Box.

stillwin9598msfnsq1.PNG
Author of FIX95CPU - Run Windows 95 on >2.1GHz Processors!
Author of XUSBSUPP - "NUSB for Windows 95!"

Reply 25 of 36, by F2bnp

User metadata
Rank l33t
Rank
l33t

You have a very specific and hard to track bug.

My suggestion would to just play the Battle.net Edition, as it's practically identical to the DOS version, besides the fact that it runs natively under Windows and is fully patched. It doesn't really mess with the gameplay.

Another suggestion would be to run DOSBox under Win98 and play the game that way. The Pentium 4 should be fast enough to emulate an early Pentium's performance, which should be ideal for Warcraft II. Unless you want to use some fancy MIDI synthesizer, which might pose a problem, I think this may be the way to go if you're hellbent on not playing the Battle.net Edition.

You could also try using an Nvidia card, preferably a 6800GT or something similar. Depending on the game, I believe it will trade punches with the X850 XT PE, although the ATi card is usually faster. The Nvidia cards are a bit more compatible though.

Reply 26 of 36, by Sammy

User metadata
Rank Oldbie
Rank
Oldbie

I have an dual boot installation (98/XP) and warcraft2 runs fine under xp with doxbox and ati x850 xt pe.

In real dos i am able to run the game, but without sound (sblive sb16 emulation did not work - is known not working on nforce2 chipsets)

Even in win98 the sb16 emulation did not work (maybe conflicting with the sb pro 2.0 emulation from the nforce drivers)

Maybe there is a dosbox version that run on 9x... but most versions need xp or higher.

So a dual boot with 9x/xp is very needfull.

Reply 29 of 36, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
LoneCrusader wrote:

Replacing DOS4GW 1.97 in WAR2.EXE with either of these now allows the game to run in pure DOS, but when run in a DOS Box inside Windows it still crashes the same way as before.

Is that still happening with only 512 MB and the DPMI limiter patch removed?

Sammy wrote:

Even on XP there are some dosbox versions which don't run.

If they don't run under XP, where do they run?

Reply 31 of 36, by LoneCrusader

User metadata
Rank Newbie
Rank
Newbie
Sammy wrote:

Maybe there is a dosbox version that run on 9x... but most versions need xp or higher.

F2bnp wrote:

I'm pretty sure DOSBox 0.74 runs fine under Win98SE. Am I mistaken? I remember using it to run 8088 speed sensitive games.
Perhaps it needs KernelEX to run, but I'm fairly certain it doesn't.

Sammy wrote:
i never tryed... But dosbox svn daum did not. Even on XP there are some dosbox versions which don't run. The just close 1 second […]
Show full quote

i never tryed...
But dosbox svn daum did not.
Even on XP there are some dosbox versions which don't run.
The just close 1 second after starting.

I think this comes down to compiler options that are set and what tools are used to build the source code. Building the source code with newer compilers will produce a version incompatible with 9x. In order to work under 9x it needs to be built with Visual C++ 6 or so. (I'm no programmer so don't quote me on this.)

Sammy wrote:

I can confirm that warcraft2 starts in real DOS now when patched with DOS32a.
In win98 it starts, did not crash to desktop, but only a black screen is displayed and nothing more happens.

Same here with DOS32A. With the updated DOS4GW it crashes back to the desktop as before.

Jorpho wrote:
LoneCrusader wrote:

Replacing DOS4GW 1.97 in WAR2.EXE with either of these now allows the game to run in pure DOS, but when run in a DOS Box inside Windows it still crashes the same way as before.

Is that still happening with only 512 MB and the DPMI limiter patch removed?

Yes, I left the machine in that state for testing. I will add back the RAM and reapply the patches when I get this bug straightened out or when/if I decide to take another route for running the game.

I redirected the output from both my DOS32A and DOS4GW 2.01A updated WAR2.EXE's into a text file in a Windows DOS Box to attempt to capture an error like I did before in DOS. Got results with both - both printed an error that is never seen in Windows due to the crash. Interestingly enough both have the same crash address. But who can make any use of such an error, it's all Greek to me. 😕

DOS32A Patched WAR2 wrote:
DOS/32A run-time (6001): exception 0Eh Identity: page fault at 00C7:83BF9580 Unrelocated crash address 1:00019580, error code pu […]
Show full quote

DOS/32A run-time (6001): exception 0Eh
Identity: page fault at 00C7:83BF9580
Unrelocated crash address 1:00019580, error code pushed on stack 00000006
Module name: "C:\BLIZZARD\WAR2\WAR2_32.EXE", ProcessId=0000
========================================================================APP/32=
EFLAGS = 00010206 [00000010.00000110] CS:[EIP] = F2 A5 8A C8 80 E1 03 F2 A4 5F
EAX = 00000300 ESI = 83C5FFFF DR6 = 00000000 SS:[ESP+00] = 01E601E5
EBX = 83C5CE70 EDI = 01E601E5 CR0 = 00000000 SS:[ESP+04] = 83C40E01
ECX = 000000C0 EBP = 83C7830C CR2 = 00000000 SS:[ESP+08] = 83C78328
EDX = 00000100 ESP = 83C78304 CR3 = 00000000 SS:[ESP+0C] = 83C5CFD0
CS: = 00C7 Base=00000000 Limit=000FFFFF Gr=PAGE Seg=CODE/32bit Type=5 Acc=CFFB
DS: = 00CF Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
ES: = 00CF Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
SS: = 00CF Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
FS: = 00B7 Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
GS: = 008F Base=000094C0 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3

DOS4GW 2.01A Patched WAR2 wrote:
DOS/4GW Professional error (2001): exception 0Eh (page fault) at 2CF:83C8D580 TSF32: prev_tsf32 80D0 SS 2D7 DS 2D7 E […]
Show full quote

DOS/4GW Professional error (2001): exception 0Eh (page fault) at 2CF:83C8D580
TSF32: prev_tsf32 80D0
SS 2D7 DS 2D7 ES 2D7 FS 0 GS 87
EAX 300 EBX 83CF1E70 ECX C0 EDX 100
ESI 83CFFFFF EDI 1E601E5 EBP 83D0D2EC ESP 83D0D2E4
CS:IP 2CF:83C8D580 ID 0E COD 6 FLG 210206
CS= 2CF, USE32, page granular, limit FFFFFFFF, base 0, acc CFFB
SS= 2D7, USE32, page granular, limit FFFFFFFF, base 0, acc CFF3
DS= 2D7, USE32, page granular, limit FFFFFFFF, base 0, acc CFF3
ES= 2D7, USE32, page granular, limit FFFFFFFF, base 0, acc CFF3
FS= 0, USE16, byte granular, limit 0, base 0, acc 0
GS= 87, USE16, byte granular, limit FFFF, base 8F40, acc F3
CR0: unavailable
Crash address (unrelocated) = 1:00019580

stillwin9598msfnsq1.PNG
Author of FIX95CPU - Run Windows 95 on >2.1GHz Processors!
Author of XUSBSUPP - "NUSB for Windows 95!"

Reply 32 of 36, by Jorpho

User metadata
Rank l33t++
Rank
l33t++

DOS32a does come with a bunch of options that are probably worth a try. (VERBOSE if nothing else might be useful in comparing what happens in DOS versus what happens in Windows.)
http://dos32a.narechk.net/manual/html/user/4.htm

Reply 33 of 36, by LoneCrusader

User metadata
Rank Newbie
Rank
Newbie

In order to rule out any help that might have come from game patches I installed the Expansion Set and updated the game to version 1.5. The resulting new WAR2.EXE crashes in both Windows and DOS just like the original one.

I updated DOS4GW and applied DOS32A to this new .EXE as I did with the original one and repeated the previous tests with the same results. Running in pure DOS but not running in a Windows DOS Box.

I tried running DOS32A in VERBOSE mode, but it doesn't seem to have generated much more information. Here are the DOS and Windows outputs:

DOS32A VERBOSE in DOS wrote:
DOS/32A warning (9004): mouse initialization failed Processor: 1586, System: XMS, Memory: DOS=556KB, DPMI=510MB Loading program […]
Show full quote

DOS/32A warning (9004): mouse initialization failed
Processor: 1586, System: XMS, Memory: DOS=556KB, DPMI=510MB
Loading program "C:\BLIZZARD\WAR2\WAR2_32.EXE", LE-style
Object #1 loaded at 00111010, V/Psize: 00071000/000708E0, Flags=2045, Sel=0838
Object #2 loaded at 00181900, V/Psize: 00010000/0002C530, Flags=2043, Sel=0830
Startup CS:EIP=0838:00164E58, SS:ESP=0830:001ADE30, Unrelocated EIP=1:00053E48
Memory left: DOS=556KB, DPMI=510MB. PSP_Sel=0068, Env_Sel=0060, Env_Seg=07AF
>
Warcraft 2X RETAIL v1.50
DOS/32A warning (9003): real mode interrupt vector has been modified: INT 00h
DOS/32A warning (9003): real mode interrupt vector has been modified: INT 03h
DOS/32A warning (9003): real mode interrupt vector has been modified: INT 04h
DOS/32A warning (9003): real mode interrupt vector has been modified: INT 05h
DOS/32A warning (9003): real mode interrupt vector has been modified: INT 06h
DOS/32A warning (9003): real mode interrupt vector has been modified: INT 24h

^Note the "irrelevant" errors thrown when exiting the program that I mentioned before.

DOS32A VERBOSE in WINDOWS wrote:
Processor: 1586, System: DPMI, Memory: DOS=571KB, DPMI=509MB Loading program "C:\BLIZZARD\WAR2\WAR2_32.EXE", LE-style Object #1 […]
Show full quote

Processor: 1586, System: DPMI, Memory: DOS=571KB, DPMI=509MB
Loading program "C:\BLIZZARD\WAR2\WAR2_32.EXE", LE-style
Object #1 loaded at 83BDD000, V/Psize: 00071000/000708E0, Flags=2045, Sel=00CF
Object #2 loaded at 83C4E000, V/Psize: 00010000/0002C530, Flags=2043, Sel=00D7
Startup CS:EIP=00CF:83C30E48, SS:ESP=00D7:83C7A530, Unrelocated EIP=1:00053E48
Memory left: DOS=571KB, DPMI=508MB. PSP_Sel=00A7, Env_Sel=00AF, Env_Seg=08D3
>
DOS/32A run-time (6001): exception 0Eh
Identity: page fault at 00CF:83BF7EB0
Unrelocated crash address 1:0001AEB0, error code pushed on stack 00000006
Module name: "C:\BLIZZARD\WAR2\WAR2_32.EXE", ProcessId=0000
========================================================================APP/32=
EFLAGS = 00010206 [00000010.00000110] CS:[EIP] = F2 A5 8A C8 80 E1 03 F2 A4 5F
EAX = 00000300 ESI = 83C5FFFF DR6 = 00000000 SS:[ESP+00] = 01E601E5
EBX = 83C5EEC0 EDI = 01E601E5 CR0 = 00000000 SS:[ESP+04] = 83C42C01
ECX = 000000C0 EBP = 83C7A4F0 CR2 = 00000000 SS:[ESP+08] = 83C7A50C
EDX = 00000100 ESP = 83C7A4E8 CR3 = 00000000 SS:[ESP+0C] = 83C5EC10
CS: = 00CF Base=00000000 Limit=000FFFFF Gr=PAGE Seg=CODE/32bit Type=5 Acc=CFFB
DS: = 00D7 Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
ES: = 00D7 Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
SS: = 00D7 Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
FS: = 00BF Base=00000000 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3
GS: = 0097 Base=000094E0 Limit=000FFFFF Gr=PAGE Seg=DATA/32bit Type=1 Acc=CFF3

stillwin9598msfnsq1.PNG
Author of FIX95CPU - Run Windows 95 on >2.1GHz Processors!
Author of XUSBSUPP - "NUSB for Windows 95!"

Reply 34 of 36, by Jorpho

User metadata
Rank l33t++
Rank
l33t++

Indeed, not too helpful. (The one says "System: XMS" while the other says "System: DPMI", but that is to be expected.)

I was thinking /EXTMEM:NNNN or /DOSBUF:NNNN might do something, but there's no indication from the above what might be a good starting point.