Pre-release versions of DOOM

On the heels of a jdosbox update, I figured it’d be cool to try ALL the early pre-release versions of Doom!  I’ve setup the links so you can click on any picture, and it’ll launch the appropriate jdosbox emulator, with the disk image.  Just click & go!

So here we go!

Doom 0.2

This is a pre-alpha version of DOOM from early February 1993 — only 2 months of work had been done to this point.

This is the first version that was made semi-public.  As you can see the HUD is the inside of the helmet.  The sky doesn’t work, but you can move around, and see the monsters from various angles..

Doom 0.4

Yes, it’s the DOOM ALPHA!  (Actually, we’re just try to release theseevery two weeks or so.  This WAS going to be a pre-beta, but a certainperson let us down Super-Nintendo cart-programming-wise, so it’s just analpha.  Nonetheless, here ’tis.)

It feels more doom like… But you can’t kill anything, and they can’t kill you… better textures and whatnot.

Doom 0.5

From the notes:

It’s an ALPHA version of doom (I just run it to make sure)called “Doom: Evil Unleashed”.  Start up screen says Doom Alpha byId Software.

It has the basic Doom engine, but:

  • It has the basic Doom engine, but
  • The imps and pink demons are in the game they don’t move or anything just stand there
  • No barrels (as noted above)
  • A lot of graphics from wolf is used (eg medic kit, gold treasure cup)
  • The map key is “a” not tab
  • The strafe and open door key are both alt
  • No sounds!
  • The two weapons you start with are (1) bayonet and (2) rifle
  • There is no run key (that I could find, so makes getting around really slow)
  • It is quite easy to recognise some of the structures in the game (so the whole map structure is now over two years old).  I can’t quote exactly were they are from but I do recognise them.
  • In the screen options there is high, medium, low, <another one>, and HIGH RES, so it looks like there use to be a high res mode that was taken out in the official release.

Doom Press Release Pre-Beta

This is the press release pre-beta version.  As you can tell from the screen shot it’s basically DOOM.  Some things are different though.  The readme is pretty long, and I think it’s better to just link it here.  I took the CPU cap off this one as it really seems to want to run FAST.  But I’m probably just screwing something up in the world of jdosbox.  But it does run, and quite nicely on my core i7.

So there you basically have it… Lots and lots of DOOM!

Wasteland & Battletech

Click to play!

I was playing fallout the other day, and I had to find out what inspired the whole thing.  I should have remembered this game, wasteland.  Although to be honest I found it overly complicated, and got killed off way too often.  Then again I was 11 when it came out so it was slightly beyond me.

Oh well I set it up on jdosbox to see if I’d do any better years later, and sadly the answer is… no.

But it reminds me of BattleTech: The Crescent Hawks Revenge, with all the animated graphics … Another fine game of 1988.

Click to play!

Which was great fun, but I need to figure out how to set the cycle speed in jdosbox as it’s too fast (it doesn’t feel too fast but time certainly passes too quickly).

Oh well this was the best gaming I remember in the summer of 1988.

 

Infocom Games

feelies!

Did you ever love Zork?  Personally I was into Planetfall.  And what made Infocom cool was the ‘feelies’.  I guess it’s pretty obvious that if you found me here, then you know all about the rise and fall of Infocom, and how it was how they wanted to diversify into business applications… And their portable strategy backfired big time.

But back to the games.  While talking to someone and the topic of Infocom came up, I had to see how many I had as I’d managed to buy one of the ‘collection’ sets of Infocom games.  Sure I felt like “I had them all” but after finding accardi-by-the-sea I found out that not only was I missing some, but they actually had every version of these games that had been released!

Talk about an exceptional collection!

And if you love all the packaging, check out here & here.

 

AberMud

I never was that much into MUD’s but after reading this and this, I decided to go for it. Looking here, I thought I’d go with David Kinder’s revamping of the version 2 source.

I figured I’d try to run AberMUD on 2.11BSD / PDP-11 which didn’t go so well.. I know there is issues with the word size (it tries to switch on longs which it doesn’t like, I changed them to int’s and.. well sigbus. Not to mention I had to link with overlays and well.. I get the feeling you actually have to do something not just trust the linker.

32v is just too crusty, along with 3.0 BSD. 4.2 BSD was lacking a few functions (memcpy/strchr) so I grabbed some replacements and it just crashed. Looking back AberMUD dates from the late 1980’s so I figured 4.3 BSD would be a far better match. And I figured 4.3 from Wisconsin would certainly work the best for my needs. This time, only a minimal amount of hacking on the source was required, and more importantly it worked!

So here is a tape file with the source & binary.

The next thing I figured I’d do is put it online. Now my VPS runs a 64bit version of Linux, and seeing this is a VAX exe/OS I’ll need to run it on SIMH. Since I’m going to allow people to telnet it (I guess I could go thru some hell with the serial line mux) I’ll need my SLiRP build of SIMH, which only runs clean as a 32bit exe. So to get things started, first install 32bit support on x86_64 debian like this:

apt-get install ia32-libs

Then using Slackware 13.37, I made my exe, and uploaded it… And it worked fine! I also set the cpu to throttle at 3% so I don’t get into trouble for running 100% of the time, and it’ll be about as slow as a real VAX 11/730… It’s a simple line in SIMH, but I tend to misplace things so here it is.

set throttle 3%

Simple, right?

Well I thought I’d make one more change. I hate those systems that make you login to run the designated program that you went there for in the first place. At the same time, this VM is born to MUD, why not let it MUD all the time? Simply replacing /bin/login with mud.1 let me do just that. And of course I could just add an option in mud.1 to allow me to have a normal OS login. Simple, right? Not to mention it works on the console just fine.

So, let’s connect!

telnet vpsland.superglobalmegacorp.com

I suppose I could hook up flashterm to it later, but for now, telnet on in. I’ve never run a MUD before so I guess we’ll see. Worst case it’ll suck and crash and the only evidence will be the tape image, and this post.

Lemmings demo for Win32s

Lemmings on Windows Vista

Lemmings on Windows Vista

While digging around I came across this demo of Lemmings for WinG/Win32s. And what’s great is that it runs on Windows 7 x86_64! Pretty snazzy!

The game play is still there, but the ‘speed up’ stuff is instant in the world of Ghz CPUs.

Oh well, it’s worth having some fun with. Here is the download.

I just remember this game when it was an Amiga thing…

Quake in FLASH!

Sure we’ve seen iD’s Doom in flash, but what about something more intense, say, Quake?

Quake in flash (actionscript)

Try it out here, The only requirement is that you have a flash 10 plugin, which supports the Alchemy VM. Source code is available here as well.

Sadly there is no networking play, perhaps it’s a limitation that you need a socket server to allow inbound connections from flash..? Maybe if I can get Alchemy to build anything under x86_64 maybe I’ll play with it… But no promises.

WinDoom, WinG, Win32s on Windows 3.1 (on Qemu)

So since I was looking at the Doom stuff, I thought I’d try to track down the WinG version of Doom, and luckily someone pack ratted away two versions! Needless to say the older one didn’t work for me, but the last one, the April 13th, 1995 build, worked just great!

WinDoom on Windows 7 x64

Even on Windows 7 x86_64, sp1!

So how much of a chore was this to run back in 1995, before Windows 95?

Well to start WinDoom requires a display capable of at least 256 colors. I thought I’d use Qemu for this, but this proved to be… exceptionally difficult to locate a satisfactory display driver. I know lots of people point to the SVGA.EXE update from Microsoft, that uses VESA extensions to drive the video. Oh sure it sounds great but this is what I got:

And.. corruption.

Ok, so you say, there is this great patch to enable better VESA support right?

Wrong.

Yeah. I also hunted down various cirrus drivers for the specifically emulated chip (I checked the source) and they were all consistently defective. So I tried using a lower chip driver from HP and amazingly the 640x480x16MM colors works! (well, works ‘enough’).

Installing the right driver.

It’s the GD5430 v1.25f, 640x480x16.8M

The next thing is that Doom in both MS-DOS and Windows are full 32bit executables. On the MS-DOS side, it relies on the DOS4G/W extender. For Windows, it relies on the then new Win32 standard, and Windoom was written to conform to the Win32s standard, meaning with an addon it can run on Windows 3.1, Windows 95, And Windows NT. I just fished around the internet and scored a copy of Win32s 1.25. I just remember this being a somewhat stable version.

Installing Win32s

Win32s installs pretty smooth, (as long as you remember the share.exe). Now we just need the WinG runtime to be installed. WinG was Microsoft’s first real attempt at high speed gaming video under Windows. From what I understand it kind of went down because it was ‘too difficult’, and buying DirectX seemed to be a better fit.

Setting the midi mapper.

Another thing I’ve found is that if you change the midi mapper from the default “Ad Lib” to “Ad Lib general”, you can at least get the midi working in Doom.

Once WinG is installed, then it’ll want to do some blit tests…

WinG calibrating.

And after that, we can even bump it up to glorious 640×400, something the initial MS-DOS version couldn’t do easily as VESA wasn’t a big standard with INSTALLED cards at the time, and it’d require lots of work from the iD team, where the move to Windows pushed all the peripheral development to the Vendors to work around Microsoft. Even to this day, it’s still a big deal with video and audio.

One thing that is cool about Qemu is that at compile time, you can put in adlib & soundblaster cards to give the ‘full’ Windows 3.1 multimedia experience. There is also GUS (Gravis Ultra Sound) support
in Qemu, but I’ve never played with it..

With all of that out of the way, WinDoom will launch.

WING dispdib.dll missing error that turned out to be Video for Windows.

Then it’ll throw an error, because Windows 3.1 doesn’t have the same video backend as Windows NT 3.5 (and higher), hit ok and then …

And it works! WinGDoom running on Windows 3.1 on Qemu!

Sadly on Windows 3.1 the sound effects do not seem to work, but overall it’s a GREAT little port, mostly because as it comes up on 16 years old, it still works, and with sound. I wish other OS’s could give this kind of support for legacy applications, even ones that had such a brief window of support.

Anyone crazy enough to even think of playing along can download the blob of software I used to get this going here (Updated on archive.org here: Windows-3.1-WING-doom)

I should also add if you want sound effects to work on WinDOOM you really should install the Video for Windows Runtime, and it’ll work… poorly on Qemu/SoundBlaster 16, but it does work!

Failed Quakeworld port to OS/2 2.0

Yeah, I guess I just couldn’t salvage this thing… Sometimes when you stand on the shoulders of giants you fall off.

So what had started as a seemingly simple thing turned into a nightmare.. I took the source to my MS-DOS port of Quakeworld, and decided to build it under OS/2. And to be crazy about it, I thought it’d be awesome to get it to work under OS/2 2.0 .

Which means no sound, locked to 320×200 256 colours, full screen only, since the VGA driver won’t do anything but. Years ago on ebay I managed to score IBM TCP/IP for OS/2 2.0 & 2.1, with the LAN support!

IBM OS2 2.0 syslevel 1

IBM OS2 2.0 XR02000 (no fixpacks)

 

 

ibm os2 2.0 syslevel2

IBM TCP/IP for OS/2 with no fixpack

So as you can see from my syslevel’s I’m running a pretty bare machine, even the graphics subsystem is still 16bit!

Well the good news, is that with EMX and a HPFS disk, I was able to quickly get the null version running. With a minor amount of work, I had TCP/IP connectivity and things were going well. I had ripped apart a video demo, and got the display up, although it was ungodly slow.. Until I found out that when you are full screen you can request access to the physical video memory, under OS/2 so that sped things up a great deal!

Then all that really needed to be done was get the keyboard working.

And here is where I slipped up.

OS/2 is weird for interactive programs that want to know key states. It seems the best and most common way to do this was to setup a ‘monitor’ for the keyboard device, and try to read the stream as keys are pressed. Sadly idiots that slamm the keyboard, or gamers that hold down an arrow key for a minute lock the thing, and the key then is ‘jammed’ down until you hit it again for the release.

I’m pretty sure that I did it wrong, so I borrowed code from a more ‘advanced’ OS/2 port and it did the same thing. Maybe it’s OS/2 2.0? I don’t know, I did service pack it and update and still the same result.

I really didn’t want to spend that much time on it…..

QuakeWorld for OS/2

QuakeWorld for OS/2

I feel hesitant to release a binary as you will get killed, and I haven’t even tried the mouse yet, but I suspect it’ll still suck.

So for anyone that cares, here is the source… misspellings and all.

Duke Nukem 3D for the Macintosh (68020)

mini vmac II duke nukem

mini vmac II duke nukem

I had no idea this even existed… I guess it’s to be expected, all the popular games of the time (doom) were ported to pretty much everything and anything.

So after stubmling across this site, Emacualtion, I had to fire this thing up!

The first thing I needed to do was get the latest source to Mini vMac. What is different about this is that you get the source from within the emulator. Basically you pass a program what config you want and it’ll spit out source code. So for me to build on windows, a mac II with 256 colors, I gave it..

-t wx86 -m II -depth 3

Easy right?

There is some help on the mini vmac site, but it’s kind of in places.

With the emulator built, the next fun filled thing was to dump the ROM from my SE/30, which was.. an exciting adventure in floppy disks, but with it in hand I was ready!

The next part of the puzzle was System 7.5.3, which apple still thankfully provides, along with HFVExplorer, and Stuffit, and I was all set to go!

I created a target diskette of 100MB, then used hfvexplorer to copy 7.5.3 and it’s 19 segments into the disk. Then I booted the emulator with a minimal System 7 floppy. I then installed 7.5.3 into the 100mb disk, then shut down the emulator. Then using hfv explorer, copy over Duke and stuffit.

Boot back into MacOS, install stuffit, and expand Duke and away we GO!

Naturally with the speed limits dropped it’s quite FAST! vMac doesn’t have sound yet, so it’s a silent experience but it works quite well.

mini vmac II duke

mini vmac II duke

The sad thing is that Doom requires 32bit mode, which it seems that Mini vMac can’t do just yet.

QuakeWorld client for MS-DOS

So as leileilol pointed on on VOGONS, QuakeWorld’s networking was a rapid departure from Quake 1, and formed the basis of a lot of modern multiplayer games… Like teamfortress and half-life.

So with a little bit of work, I was able to compile a QuakeWorld client for MS-DOS. Or here for the standalone exe, and don’t forget CWSDPMI. Oh and be sure to get a packet driver, for your NIC. Many vendors have these on their site for newer stuff.

Now I managed to get a new computer between posts, and it’s not working on virtual pc… I may be 500 updates behind though so maybe it’s something else. So in the meantime I’m testing with Qemu.

The other oddity is that compiling QuakeWorld with GCC 2.95.3 with either -O1 or -O2 builds a client that will time out after 2 minutes… -O0 ran for over an hour with me playing and dying a lot on quake.xs4all.nl:27500 …

Oh and what good would this be without pictures?

Yes, I’m really that bad.

You can find quakeworld servers on the site quakeservers.net. And I can verify that you can indeed download levels!

Enjoy!