► Tech details

A lot of wonderful games were made during the DOS era.
Who doesn't know Doom, Wolfstein3D, Warcraft, Ultima series, Lucas Arts games,... ?
But with the start of Windows era, it became harder to play these games : they relied a lot on hardware, no longer available
interrupt, in/out port and direct (video) memory access were the way to code, on last century.
The bible is Ralf Brown interrupt list : every interrupt and memory addresses are listed

So could you play a game in 2019 ?
The common answer is DOSBox, a DOS emulateur.
It even comes in a special debug version, which include a debugger and severy IDA plugins exists to RE while debugging with DosBox

So what ?
Well, this website is not about playing but RE / understand how a game was made.
And to do this, you best bet is, again, IDA.
And it comes with a good news : you can use a FREE version of IDA to do so !
So let's begin : HOWTO-Reverse Engineering DOS games.


► Choose your path

There are 2 ways to port a game to another system :
- rewrite a game from scratch, using ripped data and recoding the game logic based on hours and hours of play
- rewrite a loader, based on disassembly of original .exe, which use original data

Yes, I'm of the "loader" club.
But, strangely, we're not a lot on this club !
For now, the projects I'm aware of are


► Syndicate Wars port

This port is very interesting for me because the authors shared a lot of technical details !!

The tale of Syndicate Wars Port  [mirror]
Recon conference in 2010: "Syndicate Wars Port: How to port a DOS game to modern systems"  [mirror]
source code


► Links

Death Rally Windows port details

Scramble