So after a year+ of inactivity I’ve spent some time with Quake (netquake) and QuakeWorld for MS-DOS. Â I had modified it to support the WatTCP stack for MS-DOS, allowing you to play over the internet with any MS-DOS PC with a packet driver.
After a good bit of prodding and playing with DJGPP I’ve updated everything to include some new tweaks for a malloc ‘bug’ (Quake assumes the memory is clean, which under DJGPP it isn’t) some limit increases (zone to 1MB, and increases in max edicts, models & sounds), and forcing the sound to 22050Hz.  The source code is now here.  As much as it pained me, I built it with this DJGPP under MS-DOS (On Qemu) and I’m keeping it here, as gcc 3 & 4 are incapable of building a working WatTCP or Quake.
Another big fix for QuakeWorld is that it now can run in 640×480, 800×600, and even 1024×768 if your video card is VESA 2.0Â compatible!!!
Basically you can just replace the default exe’s in a Quake1 install and go from there. Â If you do not have quake at all, you can always look for the shareware version. Â QuakeWorld will require the commercial version for what it is worth. I’ve found it runs best with 32MB of ram. Â I don’t know if that is even an issue in this day & age. Â Quake1 will run in 16, but I have a feeling QuakeWorld runs in VM (thanks to CWSDPMI) and it does say it is using 32MB … Because I clear the ‘zone’ before Quake runs there may be a 30 second to 1 minute pause. Â This is to be expected, just hold tight.
You can download either Quake.exe or Qw.exe.
Thanks to [hci]maraakate, for the hints on what to update where, and of course the testing on a ‘real pc’!`