CoRecursive: Coding Stories - Story: DOOMed to Fail
Episode Date: December 2, 2022Today Rebecca Burger Becky Heineman shares the tale of porting Doom to the 3DO console under extreme conditions. There is an engine to tweak, deadlines to hit, hardware acceleration to get working, an...d dramatic rock anthems to record. We also learn about how game piracy led her to game development and what it was like to do game development in the mania of the mid-nineties. Finally, we close with Becky's advice on learning bare metal development skills. Episode Page Support The Show Subscribe To The Podcast Join The Newsletter
Transcript
Discussion (0)
Hi, this is Co-Recursive, and I'm Adam Gordon-Bell.
Each episode is the story of a piece of software being built.
Why don't you tell me what you do and who you are?
Okay, I'm Rebecca Ann Heinemann.
I've been in the video game industry since the beginning of time.
I started by winning the Atari 2600 Space Invaders Tournament in November of 1980.
Since then, went to work at companies like Avalon Hill,
a time HBO, and then Boom Corporation
until we then blew and imploded,
and then we formed Interplay out of the ashes of Boom.
Becky's a bit famous.
She's worked on hundreds of games,
and her specialty was porting games
from one platform to another.
Today is about a game port that went sideways,
porting a little game called Doom and the struggles involved. And I said, okay, see this
golden master I've got right here, like just encrypted, ready to go for duplication. Where's
my other $20,000? Where's the new weapons? It's like, didn't have enough space, didn't have enough
time. And he's like, oh, but I promised people new weapons.
Like, can't do it.
Don't have time.
But I gave you JPEGs.
I put them in the trash.
Sorry.
He was mad.
Oh gosh, he was mad.
So that's today's story.
The story of Burger Becky porting Doom to the 3DO.
It's kind of a retro software story,
but it's also a story about project management
and software development going a little bit sideways.
There's engines to tweak, there's deadlines to hit, hardware acceleration to get working, and dramatic rock anthems to record.
The path that led Burger Becky into video game development, which she's still doing today, it started back when she was a young teen. This
was the late 70s, the Atari 2600 had recently come out, and so had the Apple II. And Becky's
childhood set her on a path that eventually led her right towards that port. But even so,
she wouldn't wish her early years on anyone. If I was in my 20s i would basically not even bring it up in my 30s i would probably burst
into tears halfway through any of this um by the time i was in my 40s i'm like you know my parents
have already passed away i'm like okay the people who caused this are gone and now i can finally set
myself free and no longer have to have nightmares of my dad bursting in the door to beat the crap out of me because he was drunk again.
But which is one of the reasons why I don't smoke or drink,
because it reminds me of my shitty parents.
Becky normally doesn't talk about this stuff because, well, the specifics are hard to hear.
My mom and dad married because my mom was already pregnant
and they couldn't have a child out of wedlock.
And my dad was not my dad. It was someone else.
Then in time, they had two more children, two sons.
So I was the eldest. My dad would favor my two brothers and he would treat them like princes, whereas I was being treated as the help.
And so I was always having to clean the dishes to do this.
And every time my dad got mad, which like every other day, I would be the one he would beat the crap out of.
And of course, and then when we had dinner with the family, I was the one serving the meals while everybody else was eating around there.
And of course, I didn't get a plate.
And then by the time it was all done, I would eat the leftovers.
And of course, if they saw me eating the leftovers, I would get punished.
So as an adult, she's never totally gotten past this food insecurity.
Coworkers would spread rumors about her hiding burgers in her desks to nibble on when no one was looking.
Honestly, there's truth to that.
I was not picky about the condition of the food I was eating because I was conditioned from my earliest memory to the time I got out of
that hellhole that food is life. Don't be picky about it because otherwise starving is your only
other option. So her nickname came from her food insecurities and from a rough childhood. And
eventually it was all too much for her. Somewhere when I was like 15-ish, I just had it. And I went to school and I just didn't go
home. And to put it in perspective, my family never sent out a missing persons report or anything
like that. I mean, that's how much they cared. So I then lived behind a dumpster. The store,
I think, was called Market Basket at the time. But I just lived either in the dumpster when it
was raining or behind it because they had blankets and stuff like that.
Becky got a job at JCPenney.
I just went in there and just said, hey, you know, I'm 18.
And they didn't bother checking anything because, you know, back then we weren't so anal about immigration status and shit like that.
Then Christmas was done.
Then they had me transferred to their warehouse.
But I was just in there moving boxes
around, moving shit around. And that was it until finally I ended up at a video game contest.
The video game contest ends up being her entry into the industry. And it went like this. Space
Invaders was pretty big at the time. And Atari decided as a publicity stunt to have a national
tournament. It was the first e esport tournament in North America.
They had people come into five different cities.
It was San Jose, Los Angeles, Dallas, Chicago, and New York.
And then each of the winners were then flown to New York City,
and then that contest was televised.
Becky's friend convinced her to compete in the LA contest,
and she won and was flown off to New York for the championship.
It was more terrifying than exciting
because I didn't really understand what the heck was going on.
I was just a kid, and I was there without my parents.
They didn't factor in that kids would be winning these contests,
so they lucked out in which the parents of the other four contestants actually
paid their own way and came to the nationals so you know i went by myself to which atari to their
horror was like where's your parents like you only gave me one ticket so there was a comedy of errors
but it was back to the fact that it was never been done before. And hence, you know, when it was
the first contest, yeah, you can imagine
some groin pains.
All of a sudden, they have a moment where they're like,
wait, are we just paying to
fly minors across state lines
without... Oh, just
I'm certain their liability
attorneys were just, you know, like crapping
their pants in the other room, going like,
oh, please don't fall down the stairs. Please don't stub her toe. Please don't get food poisoning. Please attorneys were just you know like crapping their pants and the other room going like oh please
don't fall down the stairs please don't stub her toe please don't get food poisoning please you
don't get in an accident the liability because we're taking care of a minor
so becky won and she became the first championship competitive gamer in the U.S. I mean, they had people from the news all behind us,
like 200 people from different newspapers and CNN, which was just brand new.
I think CNN was only like three months old at the time.
And then ABC, NBC, CBS, etc.
And of course, they recorded it.
And then once the contest was over, then I had microphones shoved in my face and they
interviewed me and then sent it off. Back at home after the tournament, Becky's a bit famous
and she gets some opportunities thrown in her lap. She gets a job at an arcade where she's making
change and repairing machines because they thought it'd be pretty cool to be able to say they had the
national champ there. But then I found I had a talent for fixing video games and i met a friend there who taught me the fine art of video game logic board repair
so which then now that's how i learned all my ttl logic and stuff like that which helped me design
boards that would allow me to copy atari 2600 cartridges but uh yeah i was homeless not that
long it's like maybe three or four months
because every now and then i would go back to my old house but then one day i went there and i saw
a moving van and like that's weird and then i saw my mom and she was like oh where have you been it's
like uh been away and she's like well we're getting a divorce i'm moving to this place and
says oh so dad's not gonna be with you it's like no he's staying're getting a divorce. I'm moving to this place. And says, oh, so dad's not going to be with you?
It's like, no, he's staying here.
Okay, then can I move in with you?
And at that point, moved back in.
And that was my home base until I moved to Towson, Maryland.
At home with her mom, Becky had an Apple II she was tinkering around with.
And she kept working at the arcade, repairing video game boards.
And this gave her some familiarity with game hardware.
And meanwhile, the video game industry is exploding.
I mean, the Quaker Oats Company formed a video game company.
Milton Bradley had a game company.
20th Century Fox made a game company.
Of course, you know, you know, the big players,
iMagic and Activision and even Mattel making Atari cartridges.
This is also at a time when every video game console, the Atari, the Intellivision, and the Coleco, they were closely guarding how their machines worked.
Because they did not license their technology to anyone because it had not been heard of. And you may remember when a bunch of Atari employees left to form Activision,
Atari immediately sued them.
And the grounds was, you can't make cartridges for our player,
you know, the Atari 2600, because it's covered under patent,
covered under all this other copyright and other gobbledygook.
But the lawsuit failed, and the market for third-party games opened
up on the 2600. If you could hire an Atari game maker, you could boot up a game company and make
a bunch of money. It was a bubble. And while all this was happening, Becky was using her arcade
repair knowledge to pirate Atari cartridges. And then she starts figuring out how video game
software works through an odd coincidence.
The Apple II uses a 6502 processor.
The Atari 2600 uses a 6502 processor.
Now in the Apple II, if you put data in your memory, go into what's called the monitor,
which allows you to disassemble 6502 code. I was constantly looking at the ROMs of the Apple II and disassemble it
and saw all this instructions and figured out how the instructions work and so forth. So I can write
my own little Apple II programs. Well, when I was pirating Atari 2600 cartridges, I put them in
memory and I said, let's take a look what's in there. And I saw code and it all made sense.
It was 6502. So I was disassembling. So I was like, so what does this code do? What does this do?
So then I would, let's say, okay, it loaded a value in this register.
Let's change that value, upload the game into an Atari 2600 and see what happens.
And eventually I found, oh, this register changes the background color.
This changes the left sprite.
This changes the right sprite.
This changes the, and I just, through iteration, iteration, iteration, trial and error, I was able to figure out how to generate an Atari 2600 screen.
And of course, you know, it was a couple of registers.
I didn't know what they did, but over time I figured them all out.
She mentions this, that she's creating her own cartridges to someone who works in the industry.
He's like, you reversed the Atari 2600?
She says, yeah, I did.
And he goes like, I've got a company to talk to.
And he introduced me to the owners of a company called the Avalon Hill Game Company, who called me up and I told them, yeah, I know how to program the 2600.
I got demo carts and everything.
Avalon Games was a maker of board games, and they had produced some computer games as well.
But they were small players. They couldn't afford to get some Atari employee to work there and port their games to
cartridges. But now they didn't have to. They had their own cartridge expert in Teenage Becky.
And they hired me right there on the phone. And then a couple of days later, I had a plane ticket
and everything. And I relocated to Towson, Maryland from Whittier, California. And that
was my first paid programming job. And I had never had any training whatsoever. It was just me
learning on my own. And so Becky's career took off from there. She became the go-to person for
porting games and eventually masters not just the Apple II, but the 2600 and the Commodore and PCs
and much more. She was on the founding team of the company Interplay
and was their go-to person for ports and everything Apple.
And then a new console came out.
This is around 1994,
and I'd already gotten a reputation at Interplay
that I can assimilate a new console or a new platform within weeks
and already start generating code on it.
You know, everything from the Super Nintendo,
the 8-bit Nintendo, the Game Boy.
And of course, I already had an affection for Macintoshes
because I had written so many games for MacPlay.
But that aside, what happened was that
a new console was coming out called the 3DO.
The 3DO was a gaming console
proposed by EA founder Trip Hawkins and produced by Panasonic, among others.
It was competing with the Atari Jaguar and the Sega Saturn, but it was the one with all the buzz.
It had such a huge buzz that Time magazine called it 1993's product of the year.
So, since it required a Mac for development, I was, of course, the logical choice. So I got a 3DO dev kit, got the software,
and started making just testing stuff
to see what in the world I could do on this new console.
Like, what does the dev kit look like?
How does it work?
What am I seeing?
The dev kit looks like a big PC.
It literally is, in a PC case,
vertical orientation, you know,
popular among the 90s PCs.
The only thing that you will notice is different is that in the front where there's a just
below where the CD is, is a little panel which just says reset, debug and has a 3DO logo
on it and then a little switch that says encrypted and not.
And the whole idea behind that is if you turn on encrypted, then you could put encrypted
retail disks inside of it and run the game. But if you turn non-encrypted, then you can put encrypted retail disks inside of it and
run the game. But if you turn non-encrypted, then you don't need to be encrypted. And then you could
also use the debugging feature. Then it was a new bus card made by 3DO that plugs into your 68K Mac
on a new bus card. And then you had a fiber optic cable, which goes from the 3DO into the Macintosh. You did the development for the 3DO using your Mac
over that cable using MPW,
the Macintosh Programmers Workshop.
It essentially is their idea of an IVE slash command line
in which you have text editors,
you have a command line,
and you could go ahead and issue commands and so forth,
but it's all hybrided.
So like you could be in the middle of editing text but if you hit command return or something like
that that line will be executed as a command line it's kind of weird but i think vs code kind of
like now doing something like this these days but what goes on is that you have a bunch of command
lines much like you do with a modern operating system we have a shell and a bunch of command lines, much like you do with a modern operating system. We have a shell and a bunch of tools and so forth.
Except, of course, the tools here you have is the Norcroft compiler, which compiles into ARM.
Because it was like, as far as I know, the 3DO was the first console that used an ARM CPU.
So you wrote C code, compiled it on the 3DO operating system, and then you generate art using Electronic Arts 3D Studio.
And they had plugins specifically for 3DO.
So you draw some art.
When it's all done, the plugin would convert it to 3DO cell format,
which is the hardware Blitters format.
A Blitter is a graphics coprocessor.
It's sort of an early version of a GPU.
And then you just take these files and put them in your game,
and you'd run your game.
The first game Becky ported to the 3DO was a personal favorite of mine.
It was Wolfenstein.
And I just simply took the source code I had for Wolfenstein for the...
At the time, it was the Mac.
Put that here, built it for 3DO, made a 3DO shell,
added a console-like control panel,
because, you know, the Macintosh uses a mouse and keyboard.
The 3DO uses exclusively the console controller.
Wrote that all together, put it out there, and the game shipped.
And then, yeah, it was very easy.
And the 3DO really worked well with what Wolfenstein 3D wanted.
The game ran at 30 frames per second,
and it was perfect for the platform.
And then I did games like Battle Chess,
Siberia, Casper, Shadow Inn,
Kingdom of the Far Reaches.
I mean, there's games I'm even forgetting
that I did on the 3DO.
Out of this World, that's another one.
The 3DO version of out of this world,
we took all the backgrounds, sent them to an animation studio who does backgrounds for cartoons
and then they drew paintings of each background. We then scanned them and then that is what was
used in the video game. In an upcoming supporters episode, Becky's going to go deep on this out of
the world port. It's a, it's a wild story, but yeah, Becky becomes the 3DO expert. And so more of this work keeps coming her
way. The guys at 3DO were very impressed with the port because it was something that was really
showcasing the 3DO. We sold a lot of copies on that platform. Well, then they told me that,
Hey, you still doing id software conversions? Yeah, I still do that.
They said they had a company that has the rights to Doom for the 3DO.
The problem was that they were having a hard time getting a copy of this game from 3DO,
despite the fact that they've been telling people that it's 90% complete,
and that's going to have new weapons, new stuff, whatever.
And the latest excuse they're getting from them is that the game is 90% complete,
but their developer flaked on them. So now they need someone to help them finish the game.
They said, can you handle this? And I go like, yeah, if the game's 90% complete, no problem.
This seems like it would be a pretty sweet gig. The game had to be ready for Christmas,
but it's August and there's only 10% left. Plus then Becky would be able to say she
worked on the Doom port. It seems like a great deal. The thing was, Becky knew a lot of the
players in the industry and she had never heard of our data. But that actually wasn't that
surprising considering what was going on in the industry at that time. 3DO was so hype as they're
becoming the next wave of multimedia because in addition to being a
new video game console they were bragging about how the 3do could play movie dvds you know they
it was actually not a dvd it was a cd format but it was called a cdv or something like that so you
could buy movies put them on the 3do and watch a movie on it they had the idea that was going to
be streaming you know this but it was going to be streaming.
You know, they were going to have some sort of add-on
that allows you to connect to your cable TV box.
There was going to be an add-on that lets you have Ethernet
so you can go ahead and get on the web.
So it was going to be like this all-in-one set-top box
that in addition to playing games,
it was supposed to be the center of your entertainment center.
And that with Trip hawkins behind it
they were already putting in millions of dollars and electronic arts was devoting a large percentage
of their game development into 3do titles that's why 3do titles there's so many ea games and then
of course you had samsung panasonic mashusada., all making 3DO consoles. And there was plans that you're going to buy a TV that had a 3DO built in.
And then eventually, you know, everything was going to have 3DO in it.
So with that kind of hype, a lot of companies started coming out of the woodwork and saying, we got to get into CD multimedia.
And much like today, where you say, we're based on the blockchain. That's all an
investor has to know in order to start dumping money in your company, despite the fact that
you're going to say, well, what we really do is we milk cows. But we're based on the blockchain.
But it shows you exactly how people who just love buzzwords jump into the market well that's what happened with the ceo of art data he was a guy who
lived up in simi valley or something like that he somehow convinced his his friends and congregants
at a church and they gave him something like 250 000 or someawful lot of money to form Arc Data.
And the first game they did was called Chess Wars, Medieval Fantasy,
which is essentially a rip-off of Battle Chess, but done very poorly.
And then they licensed the game, which became Rise of the Robots, I believe.
But then later on, the word got out that the rights to Doom for 3DO were up for grabs.
But since id Software wasn't really that enthused about the 3DO platform, they just put an insane price. It was like $250,000,
which, you know, in that year, $250,000 for the rights to Doom was a lot of money. And the 3DO
wasn't really selling that well. So to sell enough copies to recoup that amount of money,
you'd have to either have
the best version of Doom ever,
or you just simply want Doom
in your catalog as a loss leader
and are trying to push your other titles.
But Randy believed that if he got Doom,
it would put his company on the map
and then he was going to have this game
with new levels, new maps, new stuff like that.
So Randy raised the money
and ArtData bought the rights to Doom on the 3DO.
And Doom at this time was huge.
People were dragging their computers
to each other's houses to play Doom multiplayer.
It was the birth of LAN parties
and Randy knew a good press opportunity when he saw one.
So he started doing interviews.
There are videos and magazine articles of him,
mostly in Japanese magazines,
of him showing off mock-up screens with new weapons
and new monsters and things like that.
And then somewhere around April,
there's this video I saw of him in April of 95,
of him holding a CD that says Doom 3DO on it.
That Doom that's on that CD in the photo shoot is what Becky's going to polish up for release.
She's been doing this for a while. She's worked with the Doom codebase before,
so she immediately knows how she would tackle a port. The trick is to get the game engine
simplified so it can run on the lower memory constraints of a console, and then optimizing
it to get a good frame rate because resources are
more constrained. I would have allocated at least three people and at least six months to maybe nine
months to do the actual port. One person writing this, nothing but a brand new game engine designed
to run a Doom-like game on the 3DO. The walls would be the perfect 3D walls,
because that's what I did with Wolfenstein.
It was perfect 3D,
but the floor and ceilings would be sliding textures
and stuff like that with some error correction
to get it to work somewhat nicely on the 3DO.
But then we would actually do some new weapons,
new players, but we would plan them out
because we'd actually have to make an editor
taking the Jaguar levels,
planting new objects in them,
and probably even making a
few more new levels specifically to highlight the new weapons and add some more storyline or
something like that. And lastly, I would have had to hire a musician to do a kick and soundtrack
because that was something that I really would have wanted to do on the 3DO no matter what
happened. But it would have come out in which the game would have been running at 30 frames per
second. And with that, we would have shipped a pretty decent game and But it would have come out in which the game would have been running at 30 frames per second.
And with that, we would have shipped a pretty decent game
and it probably would have sold 20,000 units.
Becky assumes the ArcData people
are doing something similar to her plan.
And she's pretty excited to help them finish
and also help the 3DO people
because they've been pumping up this game as well.
So she reaches out to ArcData.
They kept the story.
They said the game was 90% done.
They needed me to add in a couple of new weapons and a couple of new maps.
So I asked them, great.
Do you have the maps?
It says, yes, we do.
Do you have the new weapons?
Yes, we do.
Can I have the source code?
Eventually.
You know, once you sign.
So I was like, but I need to do a code review before i sign
and they're like well well it's 90 done you don't need to really do that i should have taken that
red flag but i didn't and i because i was excited to do bring doom to the 3do and if the game was
already 90 complete then yeah i could put my credit on there even though i only worked on 10 of it we negotiated
a price for doing the project and then i said okay let's get going how much how much are they
going to pay you they were going to pay me ten thousand dollars to do the conversion at night
you know ninety percent just to finish the game which is fine you you know, $10,000 to finish a game. That's kind of reasonable. Well, then I then waited and waited and waited and said, where is the source code?
So I said, oh, okay.
I thought you already had it.
It's like, no, you're supposed to give me the game.
He says 90% complete.
So they gave me a copy of Doom 2 on a CD.
It was a copy of the game for the PC.
They gave her a retail version of the game for the PC, a CD-ROM.
The compiled final version of the game compiled for a completely different platform with a different architecture.
But it's on a CD, and the 3DO has a CD drive.
They said it runs on the PC, so we just say that's 90% complete.
That's not how this works.
So I then ask,
who is the developer that
you said flaked on you?
And they gave me radio signs.
Oh, the developer doesn't want to talk to us.
The developer can't be reached because we owe
them money. You owe them money?
Okay.
At least give me the name of the developer so I will speak to them money. You owe them money? Okay. At least give me the name of the developer
so I will speak to them directly.
Chirp, chirp,
chirp, chirp. Okay, so
maybe it's just a payment issue.
Not great, but maybe they didn't pay the
developer and so he didn't hand over
the new version of the game that has
the new engine that works on the 3DO
and the new levels and the new maps and all that.
Maybe Becky can talk to them,
get them paid, get the game
and start working on that final 10%
of optimization and polish,
get the frame rate up and so on.
But nope, that wasn't the case.
An employee at ArcData came to me privately
and said, we don't have anything.
There is no developer.
There's nothing.
At this point, I'm in a panic and I then call 3DO says like, project canceled, we don't have anything. There is no developer. There's nothing. At this point, I'm in a panic.
And I then call 3DO.
So it's like, project canceled.
We're done.
We're not doing this
because the tenants of the contract
is at 90% complete.
Get the source code, finish it.
If you want me to do a full port,
we're going to talk something different.
That doesn't sound good to 3DO though.
They want to pump up this release.
They thought Doom could sell some consoles.
And now the deadline to get something in stores for Christmas is getting closer.
There's only 10 weeks of development left
if the game needs to be handed off to 3DO in time to get in shelves for Christmas.
But 3DO and ArtData aren't the only parties here.
Remember, id Software had licensed the game to ArtData for the 3DO.
And they were probably pretty motivated to keep their big check. So then I contacted id Software had licensed the game to Art Data for the 3DO, and they were probably pretty motivated to keep their big check.
So then I contacted id Software, and after a small discussion with John,
he then suggested, why don't we just use the Jaguar version and base it off that?
He says, okay, so he sends me a CD with the complete assets and everything
for the Jaguar version of Doom, which was perfect.
The levels are already made for low memory.
The code's been simplified.
Networking has been taken out.
But all this stuff going on,
a lot of the work that I would have needed to have done
has already been done in the Jaguar version.
So I then told 3DO,
okay, let's go get with our data,
and I'm just going to do a port.
And it's going to cost you $40,000 now.
So at that point, our data reluctantly said yes and says, great.
I need to check for $20,000 right now.
I'm not starting until I see $20,000.
So I got to check.
So, OK, let's go.
Started the work.
Unfortunately, the CEO of Arc Data, who honestly believed that because the game was on a CD and the 3DO is a CD player, that the game will run on the 3DO because it's a CD.
That was his interpretation of 90% complete because the game already runs.
So when I realized that I was working with Einstein here,
I decided, okay, just ignore him.
I'm going to focus it
because after working on this for a little bit
and having him incessantly ask me for progress on stuff
because he wanted to do demos and press tours.
And I'm like, I haven't even gotten the graphics up
of this game on the 3DO yet.
And you're asking me for this crap?
Well, the CEO guy at ArtData
was bragging about all those things that he did.
He also bragged he had a band.
Oh, really?
So I had a cassette made
of all the PC music.
Just had to play PC music,
started the game,
let the music play into a cassette,
went to another level,
did it again,
another level, did it again.
I think it was like we gave them
like six or seven cassettes. Each one had like three songs on it or something like that
because after we record three songs we give him the tape another three songs give him the tape
and so forth i said okay take this cassette it's got an hours worth of music on it do covers because
once he gave him a tape he was off to the races and then he went ahead and made these really kicking music tracks,
which I then converted to 3DO format and put them in the game.
And it gave him a feeling of he's contributing to Doom,
which technically he was, but it got him off my back.
What I picture is that Randy was in a church band
at the same church he raised his money at,
or maybe he had an old high school band,
and he called them up and he put the band to work doing covers of these Doom MIDI tracks.
I'm not sure what actually happened, but one thing's for sure.
The music rocks.
It's probably going to be the best thing about this game.
That music, it could be played because the 3DO with its CD format had more space for rich assets.
It was easy to include and play high quality music and even videos,
which means that if you wanted to make doom the definitive game for
the 3do you needed not just rocking music but you needed live action he didn't even notify me of it
he just did it what had happened was that i told you about the chess game called chess wars he
hired an actual film crew with stunts everything so it was expensive and they filmed all these scenes
well he then asked some of the people said hey can you also do some scenes for a game based on doom
and they're like cool doom we like doom i understand that the the director had an idea
for a film in which the scenes would be shot in a way that it would actually tell a cohesive story.
But that didn't happen. It was all a last minute scramble.
But depending on how you feel about full motion video inside of video games, what they ended up with was pretty cool looking. So a Hollywood costume designer had an ogre outfit for some other
event, some other film shoot or whatever it was. So from the neck down, it was just literally like
an ogre. But from the head up, you know, it's like more like an orc from Lord of the Rings.
That wasn't going to do. so they custom made this demon bull head
which is modeled after the baron of hell and they the guy says yeah it would have been a ten thousand
dollar job had i actually charged him for it now of course this is 1994 dollars but it was awesome
i mean the head looked great and then they put that on the guy who actually designed the costume
actually put on the suit and everything.
And then they had a couple of people dress up in Marine uniforms.
They have a man and a woman dress up as Marines.
They have prop guns.
And they just did a bunch of poses.
And then they took an ice cooler and put a red cross on it to mimic the health pack.
They put it there. And they just did a bunch of poses in front of her pictures.
But then they did a bunch of scenes in which the woman and the guy would say some lines
and then the monster would roar in. The monster would hold this guy like that.
There was originally a plan for how the scenes would fit together with the game.
The soldier is going to run off away from his people and then he's going to open a door and
then it's going to be E1M1 and you start the game.
And after you get to the end of the level and you pull the switch, there's going to
be a cut scene of the soldier pulling the switch and then movie, movie, movie.
Then it'll introduce him going to the next level, which of course is reasonable.
That's actually thought out.
But to do that, you would have to first go through
all the levels we had, which he had no knowledge because he didn't know we switched from the PC
levels to the Jaguar levels, which are different levels. And secondly, is that that's a lot of
footage. We're talking about at least maybe 45 minutes to a full hour worth of footage. And on
a CD, that's kind of pushing it on what we can fit
with all the music and all the other stuff in there too because you know you gotta put the
game in there too it's it's doable it is doable but the amount of time to actually script build
sets film add visual effects you're talking at least for about an hour of footage of that type,
it'd be about a million dollars.
And our data was squawking about 20K.
Of course, Becky was oblivious to all this at the time
because she was just heads down trying to get the game port working.
And of course, there was a day I do remember that Randy came by with me
with a disc saying, here are all the cut scenes.
I go like, I can't use any cut scenes. So I didn't even take the disc from him. Now I look back and
I regret it because those would have been great on YouTube right now. I have no idea where that
disc is. And I've been asking around. It's been like almost 25 years since that. And to this date,
I haven't found anybody who would fess up to having the actual
raw footage. Also there was a deadline right? Remember this game was supposed to be ready for
Christmas. There was PR events and interviews where the game was being shown on a CD.
Expectations were high. But there was only so much I could do without actually rewriting extensive
parts of the Doom engine, which was
beyond the amount of time because 3DO made it very, very clear. They needed this game in the
stores by Christmas because they wanted to do an ad campaign saying that Doom was on the 3DO.
You know, saying the 3DO is so powerful, it runs Doom. But here's the thing. The 3DO has a 12
megahertz processor. It really can't run the Jaguar version of Doom without extensive work. The Jaguar had three CPUs, two of which ran at 25 megahertz, twice the speed. Because halfway through the development process, I'm like, how in the hell am I going to finish this? Because the game's going to be buggy.
The game's going to have issues.
I already knew the framer was going to be probably laggy.
And, you know, John's going to hate my guts over it.
Because he was still kind of like very touchy about the quality of Doom.
But Becky gets Doom up and actually running on the 3DO.
And it's a small miracle, but it only runs at
three frames per second. For comparison, the Wolfenstein port she did earlier was running on
the same 3DO software at 30 frames per second, 10 times as fast. Three frames per second is totally
unplayable. So Becky phones John Carmack, and instead of being unhappy with her he suggests just making the screen
smaller so now there's less to draw. That helps and then with some more optimizing she gets the
frame rate up to 10 frames per second which is a bit choppy but playable. It shows that it was a
10-week port under extreme circumstances because while the game plays from beginning to end bug
free which is a miracle
in itself it only runs on a small window because i still had to render some of the walls like the
floor and ceiling still had to render in software i couldn't use the hardware blitter because i
didn't have time to make the code changes for that but it ran it was doom doom on 3do but it ran. It was Doom. Doom on 3DO, but it had a kicking soundtrack.
The problem with working with someone
who doesn't understand the industry
is that they don't understand
when you've pulled off a miracle.
Without the Jaguar version,
without Becky working day and night,
they wouldn't have had anything.
But Randy didn't see it that way.
He thought building games
was a simpler proposition.
Well, where's all the new weapons
and where's the new maps?
He says, well, look at the maps.
They're different.
It's true because the maps that were used in the Jaguar version are different from the
PC version.
Where's the new weapons?
You know, never mind.
You have to place the new weapon in spawn points around the map and then also code in the weapon's usage
what's firing and its effects and so forth no no no let's not factor any of that in all you had to
do is draw a jpeg of a new weapon like at the bottom of the screen and just put it into the
directory of doom and it automatically gives you the new weapon. Just put the JPEG in it.
It's magic.
It's like, didn't have enough space, didn't have enough time.
By this point, Becky had had enough.
She hadn't handed over the completed game,
and so she had him at her mercy.
She demanded the rest of the money.
He was mad.
Oh, gosh, he was mad.
But I got the check, and after that, gave him the disc.
And I think we did like one revision after that.
But then that was the revision that actually went out to the stores and was sold.
Now, Becky wasn't exactly happy with the end result of the game.
But the game was bug free and could be played, which left her with one thought.
Mission accomplished.
Not necessarily a game I'm going to be proud of
as a game, but the
very fact that I was able to deliver a title
at that kind of insane deadline
said I did it.
I still got it.
That's awesome. You got it out.
Did ArtData make their money back, you think?
Oh, hell no. He made the
next mistake. After
the game was golden mastered, he then went and had 50,000 copies pressed because he thought the game was going to just sell because it's Doom.
It's the adage of, hey, if you put Harry Potter on a box and put cow poop in it, it's going to sell so he thought that in which hey the game is doom it plays from start to finish
it is actually a decent version of the game for the 3do and it's got a kick and soundtrack but
doom was not a game that everybody was going to buy so he had 50 000 units pressed which meant
that he had to give a check for like about 300 000 to 3do so he was owing that much money
and then he sold maybe about i don't know three thousand four thousand copies oh wow yeah so
there's a warehouse somewhere like indiana jones style oh i'm certain there's a landfill somewhere
but let's just say that he didn't do any more 3do games after that our data folded not that much
longer maybe him and his band,
like, they have, like,
a practice space and the walls are just
stacked up with all
these boxes of the...
Yeah, he could use it
to layer walls with it
and use that for the
soundproof acoustics.
So that's the story
of porting Doom.
Doom fans know it as one of the lowest frame rate ports,
but it's playable and has a rocking soundtrack.
Not bad for a 10-week port.
The thing Becky's story brings to mind for me
is that I could never do this.
You know, you couldn't throw me at some new hardware
and get me to port a game or anything to run on it.
I feel like my development skills just don't go down that close to the metal.
But Becky says it's a trainable skill.
Yeah, what I would advise a lot of people these days,
if you really want to understand computers,
first start off with one of the old classic machines.
And you could do it with an emulator, but of course you could buy the real thing.
Learn how to program an Apple II.
Learn how to program an Atari 100 or Commodore 64 because you have to learn a similar language.
You learn the hardware. You learn how it all interacts. And it takes away a lot of the
magic that's been given to modern computers. Because modern computers, they think that
programming a web page in JavaScript is programming a computer.
That's the furthest from the truth. Or writing code in Python is writing code directly to the
metal. No, it's an interpreted language. And even when you're writing code in C++ and so forth,
especially the most modern ones with their template bonanzas, when you look at the actual
assembly code it generates, you see all the stuff it's doing for the overhead and go like, what the hell? I miss
the elegance and simplicity of writing 6502 code. The code, you enter it, it just does one task,
leaves. Next function does the same thing. Whereas in C++, you can write code that actually still maintains that paradigm,
and it works just fine.
But it's so easy if you don't really know what's going on
to write what you think is three lines of code.
This will do everything.
But when you look at the output of the compiler, it's a novel.
That's my main takeaway, is that when you truly understand the instruction sets, how the stack works, how memory management works, how the hardware works, how it all interacts, then you have a true understanding of the limitations of computers.
I think there's a big divide between the programming that you have done and the people who never, I guess, leave Java, JVM or Python or whatever.
I wouldn't know where to start exactly.
Oh, there are plenty of books out there.
One I would recommend highly is a book called Assembly Lines by Roger Wagner.
It's a great investment.
Just look up Roger Wagner, Assembly Lines.
It's a book about maybe 200 pages long,
and it is a beginner's guide to assembly language,
programming the Apple II, and all the fundamentals. In fact, in most cases, if you read the book
cover to cover, you may not even have to start up an Apple II. You will get a very good fundamental
grasp of how a computer operates. And then if what you've read intrigues you then pull up an apple 2 emulator or the real
thing you can buy one on ebay it's not that expensive and go to town and see what's going on
but the end result is not for you to make a brand new apple 2 video game you could if you want they
there's still a market for them you know granted you'll sell a couple hundred copies except
thousands but what goes on is that you will truly understand how a computer works
because there is very little difference fundamentally from how an Apple II,
a 1977 computer versus a modern computer.
Yeah, there's more stuff on it like memory protection,
multi-CPUs, and protected I.O. ports. But it's still
fundamentally the same thing. A processor, registers, a stack, memory, I.O. registers, and a memory map,
and firmware. Those exist in modern computers. They haven't changed. So there you go.
So there you go.
That was the show.
Learning the Apple II as a path towards bare metal programming sounds fun.
If you attempt it, let me know on Twitter or on our Slack channel.
And thank you so much to Becky. You can find her on Twitter, at BurgerBecky,
and on Twitch as BurgerBecky as well.
In an upcoming bonus episode for supporters,
she'll be sharing the porting of another game that I mentioned earlier, Out of This World,
for the Super Nintendo.
And in this case, it's a totally different story.
It's about a porting going very well
under a different type of stress.
And you'll get to hear some of the background behind this interview and me chatting with Becky.
I'm up to 13 bonus episodes now for supporters, 14 once that one's out. So I recommend that you
check it out. That's at co-recursive.com slash supporters. And until next time, enjoy this rocking doom inspired rock anthems.
I couldn't actually include the real doom music because I don't really know who owns them.
But yeah, until next time, thank you so much for listening.