The challenge
In 1981 a young Howard Scott Warshaw,
left his first programming job at HP for a more interesting job at
Atari. His first assignment was to create an Atari 2600 conversion of
the vector coin op game Star Castle. In this game, you pilot a ship around the screen trying to defeat the Star Castle
by shooting the Energy Cannon, but first you must blow holes its
rotating shields while avoiding the ever pursuing Space Mines and
beware, the Energy Cannon will blast back through openings in the
shields! After evaluating the arcade game and the console hardware he
came to the conclusion "that a decent version couldn’t be done" (interview link), and "that this conversion would suck on the VCS system" (interview link). So he reorganized the core game-play elements into a new game designed specifically for the 2600. That game became Yars' Revenge, the most successful original Atari game ever for the Atari 2600 (play it free on Atari's site here!).
I love video game history, and I love this story in particular, but when
I read about it in MIT Press's excellent historical Atari 2600 book "Racing the Beam" in 2008 something stuck with me. I thought surely Star Castle could be done, there must be some way, so I set out to try.
Every
engineer, no matter the discipline, is drawn to some particular
project. This project becomes the nagging pull that draws an engineer
ever-onward. For me, that project was Star Castle. I'm an Atari fanatic; I always have been. I'm also a Star Castle
fan. I used to pump quarters into that machine at the local bowling
alley every day after school. It's no surprise that I ended up becoming
a video game developer. My first job in the game industry was also at
Atari where I worked on the 2600, though six years after Yars' Revenge was made.
The work
I
dug deep into my crawl space and excavated the documentation and
samples I had from when I worked for Atari and cobbled together a 2600
development environment.
The Atari 2600 only has 128 bytes of RAM
(variables start at the bottom, the stack comes down from the top, and
you pray they never meet), and you have to build the display line by
line using a handful of hardware registers while the electron
beam is scanning the TV screen. You have to use a lot of "tricks" to
get more graphics and colors on the screen and you still need to handle
input, sound, and make a playable game, all in a little less than 8192
(8K) bytes of ROM in my case. To be fair, Yars' Revenge used a 4096 (4K) byte cartridge which is a marvelous feat,
but another similar game, Asteroids was released on an 8K cartridge the
same year. My goal was to make a Star Castle game that could have been made in 1981 which meant I had to stay within 8K.
I
started with a lot of ego and confidence that was soon dashed, the
first couple of attempts were miserable humbling failures. It quickly
became clear that if possible it was going to be a terrific challenge. I
hit timing and space limitations one after another until, several
months later, I was able to draw rotating shields, after that, the enemy
cannon, then the space mines, and the players ship, the players
bullets, and the cannons dreaded energy blast, and then AI, collision,
sound... and by early 2010 I had done it. I had created a faithful
reproduction of the game experience on the Atari 2600 in 8K.
I
was so proud, I showed the game at the Video Game Summit, a local video game conference where
it was received with surprising enthusiasm so I kept working on the
project. By 2011 I had made improvements to the AI, collision, level
progression, and designed my own cartridge. It's all original from the
circuit board to the programmable logic chip to the lights inside the
cartridge that actually flash with the gameplay - something I NEVER would have expected to find in an Atari cartridge as a kid.
Now
that it had lights, a traditional black case would not do, so I
designed and machined my own custom clear Lexan case (on a CNC machine
that I designed and built myself but that's another story)
and made a reproduction Atari game box.
The response after showing the game in 2011 was fantastic.
The Result
This
is one of the coolest things I have ever done and I've been making video games for 25 years. It's a technical
accomplishment and it's really really fun! Right now there is only this
one cartridge that I made by hand.
EVERYTHING is now free to download
(ROM, Stella, source, manual, box art, pictures, etc.)
CD Master: Star Castle 2600 Master.iso (533MB)
Files from CD in zip StarCastle2600CDfiles.zip (484MB)
Stella emulator and ROM for various platforms (each < 10MB)
StarCastle2600_Windows_XP_Vista_7.zip
StarCastle2600_Windows_98_2000.zip
Star Castle 2600 Linux.bz2
StarCastle2600_MacOS_X_32Bit_UB.dmg
StarCastle2600_MacOS_X_Intel.dmg
Stella emulator source stella-3.6.1-src.tar.gz
It took
nearly three years of software, electronic, and hardware engineering to
get this project this far. To make cartridges I'll need to have boards
made and programmed, molds made, cartridge shells cast, manuals, boxes,
labels and CD's made, but I'm ready. I have a Kickstarter campaign to raise money to make the game available and if you are interested, you can check it out here:
If you are a collector
you can get a cartridge and play it the way it was meant to be played:
on an Atari, with a joystick, in front of a TV (preferably an old one).
If
you're a casual player you can play it on just about any PC. Many
people prefer playing Atari 2600 the games on the Stella emulator
because it's easy, convenient, the emulation is indistinguishable from
the real thing, and the picture and sound are perfectly crystal clear.
If
you are a developer or just interested in programming, the game comes
with all the source code and art on the CD, everything you need to build
your own copy of the game (you have to download the free compiler, but
the link is on the CD). You can look it over if you are just curious,
or you can modify it and make it your own. The game comes with Stella which includes a full Atari 2600 graphical debugger that allows you to step through each
instruction, line, or frame of the game and graphically shows all of the
registers in real-time.
This may be the only chance you have to get Star Castle 2600,
after this Kickstarter campaign there are no plans to produce or make
available any additional cartridges, CD's, or materials.
So, you
may be wondering why anyone would bother to make a version of a 30 year
old vector arcade game on an arcane 33 year old platform? I was inspired
by one of the greatest and most
influential game programmers of all time to make something that he said
was
impossible. I don't consider this a game development project, rather an
alternative
history art piece*, a demonstration that it could indeed be done.
*
I have nothing but the greatest respect and admiration for all of
Howard Scott Warshaw's work. I in no way mean to discredit or demean
his magnificent ground breaking accomplishments in Yars' Revenge
or any of his other titles. Also, if you really want a great insider
view into the early days at Atari, you need to check out his excellent
candid documentary DVD Once Upon Atari.
If playing on a computer, I'd also suggest getting one or more Stelladaptor's.
I can't provide these through Kickstarter but these USB interfaces
allow you to play games using your real Atari joysticks and paddles!
Stella
emulator Copyright © 1996-2012
Bradford W. Mott,
Stephen Anthony and
The Stella Team, and comes with ABSOLUTELY NO WARRANTY. Stella emulator
is released under GPLv2 and a portion of all CD proceeds will be
donated to the Stella project to promote continued development.
The music in the video is A Break In The Weather from the album It's Got A Ring To It by Chupathingy. © 2012 Chupathingy, all rights reserved. This and other great music by Chupathingy can be found at chupathingy.bandcamp.com