Developed on: 80386 PC
Developed for: 80×86 PC in MS-DOS
Language: C and 8086 assembly
Graphics: EGA 320 x 200
The Birth of id
It was just another day at Softdisk on September 20th, 1990 – hot outside, nice and dark in our PCRcade office. I got to work at 10am, having left work at 10pm the night before.
John Carmack had stayed at work after I left to continue working on his EGA scrolling engine for the next game.
We had already finished the Xevious-style game Slordax that used the first iteration of his scrolling engine which only scrolled the EGA screen vertically (a tricky feat in EGA mode involving the CRTC starting address).
I walked into the office, which was empty, and immediately noticed a 3.5″ floppy on my keyboard, leaning against my 33mhz 386 desktop system – the best PC in the company at that time.
“Heheheh! John must have been up late doing cool stuff last night!”, I immediately thought, followed by, “And it looks like Tom was helping him!” This was because the disk had Tom’s writing on it: “Run me.”
What I saw is the screen to the left, a replica of Super Mario Bros 3′s first level, minus Mario and plus my character Dangerous Dave from the PC version I had completed a couple months prior. Tom obviously didn’t have enough time to draw running and jumping Mario frames so he used Dave which was readily available.
I knew that John had been working on getting the EGA screen to scroll horizontally smoothly – a complex task (back then) involving the EGA panning register. He was trying to get his rendering engine to go from only scrolling vertically to also scrolling horizontally, which would allow us to create platform games. But no one had done it on the PC by this time.
As soon as the demo started running, I pressed the right arrow key to see if magic had indeed been made. As soon as little Dave walked a short way to the right…..
THE SCREEN SCROLLED.
I was speechless.
There’s no way to overstate how completely and totally blown away I was. I couldn’t work for 3 hours, no joke. What I had in front of me was The Future.
I had played so many games on the PC during my first year on the platform. I needed to know what I was up against as far as competition and see what the state of the art was in game programming. The VGA adapter was pretty new and not as widespread as the EGA adapter, which is what most PCs had at the time. And NO ONE had released a game with smooth horizontal scrolling like a Nintendo.
Things moved fast that day. I showed the demo to a few other coders at Softdisk whose attitudes were mostly just “Yeah? So what?”.
They didn’t understand.
When John and Tom came in, I got them in the office and we closed the door. I told them how utterly destroyed I was after running DDICI. I told them it was a golden ticket OUT OF THERE. Softdisk wouldn’t take advantage of the technology, we weren’t allowed to use EGA in our games unless the game supported CGA already, anything we release at Softdisk will never be seen by the mass market and This Had To Be Seen.
I told them we need to start a company, do our own game and publish it, outside of Softdisk. Jay Wilbur happened by the office and I told him that after what had been done by John and Tom the night before, we were outta there. He kinda laughed and said, “Heheh, yeah…” and I said, “No. I’m serious – we’re gone.” Jay quickly closed the door and wanted to know what we were thinking of doing. And thus was id Software born. September 20, 1990.
A lot of things happened very, very quickly after that day. I had known Jay Wilbur since 1986 when he started publishing my games on his UpTime Disk Monthly (Apple II version), so I knew he could be trusted. Jay soon became our part-time biz guy. We decided to create a real, polished Super Mario 3 demo and send it to Nintendo Of America to see if we could do the PC port of the game. The SM3 demo made it to Nintendo of Japan and Shigeru Miyamoto specifically. They were very impressed with the demo but their corporate plan was to never release their IP on a platform other than their own.
While we were waiting to hear back from Nintendo, Scott Miller of Apogee Software had been trying to contact me about writing shareware games for his fledgling company. But that’s the story of Commander Keen and will have to wait for another day…
Just after writing Dangerous Dave on the PC and just before working on Slordax, I wrote TED v1.0 – a tilemap editor we needed to create levels for our games.
Slordax was the first game to use TED and the levels were totally vertical and long. I included TED in the directory with DDICI so you can see how the level was created by Tom Hall. And make yourself some levels too.
Pressing the SPACE key will toggle between map drawing and tile selection mode. The rest is self explanatory.
If you want to replace the first level of the DDICI demo, simply rename “level01.dd2″ to “level01.dd2.old” and when you save your level in TED make sure you name it “level01.dd2″.
Both the DDICI demo and TED don’t run under Windows XP. You’ll need to use DOSBOX to see them run properly – don’t worry, it’s painless.
Just make sure you unzip the DDICI files into a root directory on C and everything will be easy.
An interesting note about the DDICI demo – the name of the EXE file is DAVE2.EXE, as if this was the future of Dangerous Dave! Well, it was indeed, but about six months premature as we created Dangerous Dave in the Haunted Mansion in early 1991….when the REAL DAVE2.EXE was born.
To play this demo, you will need to run it with VDMSound or DOSBOX.
Objective: To run and jump around merrily, avoiding a possible falling death. Bonus points for grabbing all the coins!
Controls: Arrows to move left & right. CTRL will jump. ALT is for speed.
Extra Info: Listen to the sweet, sweet startup tune by Tom Hall – made in about 5 minutes.