32-bit DOS games

Discuss just about anything else
User avatar
DOSGuy
Website Administrator
Posts: 1063
Joined: September 2nd, 2005, 8:28 pm
Contact:

32-bit DOS games

Post by DOSGuy »

We all know that DOS is a 16-bit operating system, and it ran in Real Mode, which limited it to 1 MB of RAM, of which 640 KB was available to programs (conventional memory). This is because the 8088 processor had a 20-bit address bus, limiting it to 2^20 bits of memory (1 MB).

The introduction of the 286 and 386 processors increased the maximum amount of addressable memory to 16 MB and 4 GB, respectively, using a new memory mode called Protected Mode. It was intended that PC DOS/MS-DOS would be replaced by a new 32-bit operating system (OS/2), so DOS continued to run in Real Mode. Eventually code was created to allow DOS programs to store data in the memory beyond 1 MB while in Real Mode but, due to the segmented memory model required by Real Mode, it didn't allow code to be executed in memory addresses beyond 1 MB. This was good enough for awhile -- games like Wolfenstein 3D used EMS and/or XMS to store graphics and sound in extended memory -- but eventually programs needed to have more than 640 KB of executable code. For that, the DOS Protected Mode Interface (DPMI) specification was created to allow DOS programs to put the CPU into Protected Mode, but still have access to DOS API calls. Most later and larger DOS games run in Protected Mode and are, therefore, 32-bit DOS programs.

In fact, it's possible to enter 64-bit Long Mode from DOS and continue to have access to DOS API calls -- some crazy person actually created a DOS Long Mode Interface -- so there's nothing to stop someone from making 64-bit DOS programs that have access to more than 4 GB of RAM. To the best of my knowledge, no one has created a 64-bit DOS game yet.

Anyway, I've decided to create a list of 32-bit DOS games that are on the site. I started by simply searching all of the ZIP files on the site for DOS/4GW and CWSDPMI. That doesn't create an exhaustive list because some games store all of their files in installers. Also, some games embed the DPMI inside of the executable, so you won't find a file called DOS4GW.EXE or CWSDPMI.EXE even after the game is installed. That being the case, I had to simply play every game that I thought was likely to use Protected Mode and watch for the DOS4GW or CWSDPMI notice when the program starts, but I didn't play every single DOS game on the site, so I may have missed a few. In fact, I'm certain that I missed a few because I haven't played some of the games that are highly likely to use Protected Mode due to a lack of time, but I'm posting my findings now anyway. Please feel free to point out any that I've missed.

What is the point of all this? Nothing I guess. I just think it's cool that not all DOS games use 16-bit Real Mode; that DOS evolved and remained relevant in the 32-bit era. I intend to indicate on the site whether DOS games are 16-bit or 32-bit. Why should anyone care? I'm not sure. At the very least, it tells you whether or not a game will work on an older computer or if it requires at least a 386. "But wait!", you say. "The 286 was a 16-bit processor that had a Protected Mode, so won't any of these games run on a 286 as long as the game requires less than 16 MB of RAM?" No, because once the 286 entered Protected Mode, it couldn't return to Real Mode without resetting itself. DPMI was introduced in 1989 and requires a 386. All of these games use 32-bit Protected Mode, and return to Real Mode when the program terminates and returns control to DOS.

Here's the list. DOS/4GW games that indicate "embedded" have the DPMI inside the game executable(s), so there is no file named DOS4GW.EXE. It looks like CWSDPMI is never embedded and 386|VMM and PMODE/W are always embedded.

386|VMM (embedded)
Transport Tycoon
CWSDPMI (CWSDPMI.EXE)
Jump 'n Bumpr3
Quadnetr3
Quaker1
DOS/4GW
Abuseembedded1.97
Alien Breed: Tower AssaultDOS4GW.EXE1.6
Alien CabalDOS4GW.EXE1.97
Alien Rampageembedded2.01a
AstroFireDOS4GW.EXE1.97
Blast ChamberDOS4GW.EXE1.95
BloodDOS4GW.EXE1.97
Boppin'embedded1.97
Bust-A-Move 2: Arcade EditionDOS4GW.EXE1.97
Clyde's RevengeDOS4GW.EXE1.95
Command & Conquerembedded1.97
Cyberboard KidDOS4GW.EXE1.97
CyClonesembedded1.97
Descentembedded1.97
Descent IIembedded1.97
Doomembedded1.95
Duke Nukem 3Dembedded1.97
Earthworm JimDOS4GW.EXE1.97
Earthworm Jim 2DOS4GW.EXE1.97
Extreme PinballDOS4GW.EXE1.95
Flight of the Amazon QueenDOS4GW.EXE1.92
GenewarsDOS4GW.EXE1.97
Grand Theft AutoDOS4GW.EXE2.00
Hereticembedded1.97
Hexen: Beyond Hereticembedded1.97
Hyper 3D PinballDOS4GW.EXE1.95
Lion King, TheDOS4GW.EXE1.95
MDKDOS4GW.EXE1.97
Mega Man Xembedded1.95
Mortal Kombat IIembedded1.97
Mortal Kombat 3DOS4GW.EXE1.97
NASCAR Racingembedded1.97
Nebula FighterDOS4GW.EXE2.01a
Need for Speed, TheDOS4GW.EXE1.97
NHL 96embedded1.97
Norse by Norse West: The Return of the Lost Vikingsembedded1.97
One Must Fall 2097DOS4GW.EXE1.95
Radix: Beyond the VoidDOS4GW.EXE1.97
Raptor: Call of the Shadowsembedded1.97
Rise of the Robotsembedded1.97
Rise of the Triad: The HUNT Beginsembedded1.97
Seek and DestroyDOS4GW.EXE1.97
ShadowCasterDOS4GW.EXE1.8
SimCity 2000embedded1.95
SkunnyDOS4GW.EXE1.97
Skunny Kartembedded1.95
SkyNETDOS4GW.EXE and embedded1.97
Star Wars: Dark ForcesDOS4GW.EXE1.95
Strife: Quest for the Sigilembedded1.97
SuperFrogDOS4GW.EXE1.92
SyndicateDOS4GW.EXE1.8
Terminator: Future Shock, TheDOS4GW.EXE and embedded1.97
TerraFireDOS4GW.EXE1.97
Tomb RaiderDOS4GW.EXE1.97
TubeDOS4GW.EXE1.97
Ultimate Body BlowsDOS4GW.EXE1.92
Wacky Wheelsembedded1.97
Warcraft: Orcs & HumansDOS4GW.EXE1.95
Warcraft II: Tides of Darknessembedded1.97
WormsDOS4GW.EXE1.97
X-Men: Children of the Atomembedded1.97
Xenophage: Alien Bloodsportembedded1.97
ZDOS4GW.EXE1.97
ZorroDOS4GW.EXE1.95
PMODE/W (embedded)
Amazing Learning Games With Rayman1.22
Astro3D1.33
Axia1.32
Death Rally1.24
Rayman1.21
One Must Fall 20971.0
Stargunner1.21
World Rally Fever1.21
Zone 66*
Last edited by DOSGuy on August 5th, 2015, 11:50 am, edited 15 times in total.
Today entirely the maniac there is no excuse with the article.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: 32-bit DOS games

Post by Malvineous »

Zone 66 used Renaissance's custom protected mode extender called PMODE. I believe Death Rally also used it. Also Shadow Warrior is DOS4GW and isn't on your list. I think another possible check would be to look for .EXE files that are larger than 500kB or so, as there is a good chance those are 32-bit with an extender on the front, otherwise they would be too large to load in real-mode DOS.

Interestingly there are apparently a few ways to exit protected mode on a 286. I have heard there is an undocumented instruction that will do it, and apparently some machines would set a CMOS flag then reboot the machine (via the keyboard controller of all things, but apparently a triple-fault also worked and was faster), then the BIOS POST would see the flag and instead of running the full POST process, would just jump back to the original program, now back in real mode. I'm always impressed at those who can come up with such kludges to get around seemingly impossible problems...
User avatar
DOSGuy
Website Administrator
Posts: 1063
Joined: September 2nd, 2005, 8:28 pm
Contact:

Re: 32-bit DOS games

Post by DOSGuy »

Malvineous wrote:Also Shadow Warrior is DOS4GW and isn't on your list.
That's the specific game I was thinking of when I said that I was certain that there were games missing from the list. Being an Apogee game, I expected that DOS4GW would be embedded in the executable.
Today entirely the maniac there is no excuse with the article.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: 32-bit DOS games

Post by Malvineous »

Ha, there you go, I had forgotten it wasn't included as a separate .exe. Well according to "grep DOS4GW */*.exe" the following games also have it embedded (that aren't in your list - some aren't on the site though):
  • Boppin'
  • Brudal Baddle (dos4gw.exe)
  • Doom II
  • Fatal Racing
  • Hi Octane
  • The Lion King
  • Raptor
  • Redneck Rampage
  • Terminal Velocity
  • Wacky Wheels
User avatar
DOSGuy
Website Administrator
Posts: 1063
Joined: September 2nd, 2005, 8:28 pm
Contact:

Re: 32-bit DOS games

Post by DOSGuy »

Ah, you Linux users and your fancy tools! Thanks for the help. Did/can you also check for CWSDPMI?
Today entirely the maniac there is no excuse with the article.
developertn
9-bit ubernerd
Posts: 833
Joined: March 23rd, 2015, 4:23 pm

Re: 32-bit DOS games

Post by developertn »

Jesus Christ!hehe

I have the original Heroes of Might and Magic for MS-DOS. It does have the logo DOS4GW if I can recall vaguely. The graphics, sounds, and so on are phenomenal for a DOS game. I think at least one or two more titles in my original CD collection are DOS4GW.

Anyways, I prefer pure 16-bit MS-DOS rather than the DPMI stuffs. It is probably because I am not good enough to understand the higher programming.

At any rate, I am happy that God gave me two parents who has done the best they could to put me through school#!!
Although I never graduated and I don't have the gift to finish since my IQ is not that high, I'm happy with my hobby.

My welfare is not much however it brings in enough to pay the house off eventually.
developertn
9-bit ubernerd
Posts: 833
Joined: March 23rd, 2015, 4:23 pm

Re: 32-bit DOS games

Post by developertn »

Jesus Christ!hehe

Well, I'm sorry if this was mentioned before. However, I just found the other one in my collection: TEST DRIVE: OFF-ROAD by Accolade (also DOS/4GW). The few others if any might be somewhere in my one thousand two hundred discs and such. :lol: So I'm not gonna be able to find it anytime soon? hehe

By the way, most the other discs are my programming backups just in case flood, viruses and such hehe. Thanks to my father Nguyen Binh Thuy for saving me a few times from losing my important programming discoveries.

Thanks to my mother Huong Thi Vu for being patient until I grow up and can support myself; She is the one who purchased with the full legal rights to my programming packages.

Thanks to my sister Nguyen Khoa Thi who graduated officially and is now an example what hard work can do.

Thanks to my sister Nguyen Khoa Thuyen who is finally married and so grown up working for a big company.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: 32-bit DOS games

Post by Malvineous »

DOSGuy wrote:Ah, you Linux users and your fancy tools! Thanks for the help. Did/can you also check for CWSDPMI?
The only match I get for CWSDPMI is Quake, however I don't have a huge number of games installed.

Checking for PMODE shows up Death Rally, Mr Boom and Stargunner. Looks like Zone 66 used an early version before it was actually called PMODE.
User avatar
DOSGuy
Website Administrator
Posts: 1063
Joined: September 2nd, 2005, 8:28 pm
Contact:

Re: 32-bit DOS games

Post by DOSGuy »

Interesting. What was it called before PMODE?
Today entirely the maniac there is no excuse with the article.
User avatar
Hallfiry
7-bit super nerd
Posts: 210
Joined: March 20th, 2012, 10:41 am
Contact:

Re: 32-bit DOS games

Post by Hallfiry »

Malvineous wrote:The only match I get for CWSDPMI is Quake, however I don't have a huge number of games installed.
You should try using my catalog ;)

http://www.kultcds.com/Catalog/index.ph ... dn=&descr=
(the list is long for 4gw)
Magazine cover disk catalog:
http://www.kultcds.com/Catalog/
User avatar
MrFlibble
Forum Administrator
Posts: 1800
Joined: December 9th, 2010, 7:19 am

Re: 32-bit DOS games

Post by MrFlibble »

Hallfiry wrote:http://www.kultcds.com/Catalog/index.ph ... dn=&descr=
(the list is long for 4gw)
This however will only find programmes that do not have the extender bound to the executable. On the other hand, DOS4GW found this way may be used by a different programme (e.g. the setup utility) and not by the game itself.
Frenkel
5-bit member
Posts: 41
Joined: March 3rd, 2007, 10:50 am

Re: 32-bit DOS games

Post by Frenkel »

Hallfiry wrote:
Malvineous wrote:The only match I get for CWSDPMI is Quake, however I don't have a huge number of games installed.
You should try using my catalog ;)

http://www.kultcds.com/Catalog/index.ph ... dn=&descr=
(the list is long for 4gw)
Is there a way to get a list of all files that are exactly 8064 bytes in size?
User avatar
Hallfiry
7-bit super nerd
Posts: 210
Joined: March 20th, 2012, 10:41 am
Contact:

Re: 32-bit DOS games

Post by Hallfiry »

Frenkel wrote:
Hallfiry wrote:
Malvineous wrote:The only match I get for CWSDPMI is Quake, however I don't have a huge number of games installed.
You should try using my catalog ;)

http://www.kultcds.com/Catalog/index.ph ... dn=&descr=
(the list is long for 4gw)
Is there a way to get a list of all files that are exactly 8064 bytes in size?
Sure, just enter 8064 for min and max size :D
you can use k, m and g as placeholders for the corresponding amount of zeroes. , and . are ignored for easy pasting.
The text fields allow _ for single letter placeholders and % for multiletter.

You'll however still need a little bit of text in name, extension or description field, so the search is allowed ;)
(mep, I just noticed a little hack with underscores... gotta fix that before people get too big results; EDIT: fixed.)
Magazine cover disk catalog:
http://www.kultcds.com/Catalog/
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: 32-bit DOS games

Post by Malvineous »

DOSGuy wrote:Interesting. What was it called before PMODE?
I don't think it had a name before then. My understanding is it was a custom extender the Renaissance demogroup used for some demos, then they used it for Zone 66, then they decided to release it as an independent project and gave it the name PMODE.
User avatar
DOSGuy
Website Administrator
Posts: 1063
Joined: September 2nd, 2005, 8:28 pm
Contact:

Re: 32-bit DOS games

Post by DOSGuy »

I've just finished an exhaustive search of all of the games on the site for DOS extenders. I searched for files (DOS4GW.EXE and CWSDPMI.EXE) and for embedded copies of CWSDPMI, DOS/4GW and PMODE/W. I didn't find any evidence that any game embeds CWSDPMI, and I'm not aware of a filename to search for a non-embedded PMODE game. If anyone knows of a filename for an external copy of PMODE, please let me know.

My initial search was not able to search within installers, so I extended the search to installed copies of all of the games that are playable online. This means that I only missed games that have an installer and are not playable on the site yet. There are still 53 DOS games that aren't playable online, and only a subset of those games use an installer, so this is almost a complete list. So far 76 of the 400 DOS games on the site are 32-bit, broken down as follows:

386|VMM: 1
CWSDPMI: 3
DOS/4GW: 64
PMODE/W: 8 (9?)

Some surprising results:

SkyNET and The Terminator: Future Shock both embed DOS/4GW in their executables despite including a copy of DOS4GW.EXE. That would seem to be pointless and makes the archive larger than it needs to be.

A lot more games used PMODE than I expected.

The biggest surprise was One Must Fall 2097. Despite including DOS4GW.EXE, a file called MASTER.DAT has PMODE/W 1.0 embedded in it. I don't know if MASTER.DAT is even used as an executable file -- normally it would be used by an executable file, and I don't think you can (or should) be running two different DPMIs at the same time. It seems to be there, but I don't know if it's doing anything.
Last edited by DOSGuy on August 5th, 2015, 9:35 am, edited 2 times in total.
Today entirely the maniac there is no excuse with the article.
Post Reply