
StarRaiders: Reverse-engineered, fully documented assembly language source code - unwiredben
https://github.com/lwiest/StarRaiders
======
pronoiac
Ooh! I grew up with this game; someone brought a working Atari 800 to the
Maker Faire a couple of years ago, and I was able to play a game from start to
finish without referencing the manual. The Internet Archive has:

* the game in an emulator, so you can play it in your browser: [https://archive.org/details/a8b_cart_Star_Raiders_1979_Atari...](https://archive.org/details/a8b_cart_Star_Raiders_1979_Atari_US)

* the manual: [https://archive.org/details/agm_star_raiders](https://archive.org/details/agm_star_raiders)

* the unreleased sequel: [https://archive.org/details/StarRaidersII_Wilmunder](https://archive.org/details/StarRaidersII_Wilmunder)

~~~
bane
Even better, I believe there are 2 different sequels that were developed
simultaneously at atari and have finally been released.

------
snowpanda
Wow, the original source code resurfaced a month later. I wonder if that
happened because of his project.

------
LCDninja
Nice!

If you're interested in this kind of thing - this site:
[http://www.computerarcheology.com](http://www.computerarcheology.com) has a
detailed disassembly of arcade Space
Invaders([http://www.computerarcheology.com/Arcade/SpaceInvaders/](http://www.computerarcheology.com/Arcade/SpaceInvaders/)).
The site also contains partial disassembly of many other games e.g. Asteroids,
Defender, Frogger, Galaga & Robotron.

"Pacman Dossier" had a great disassembly of Pac Man arcade, however rumour has
it that Namco took it down.

Additionally, a little bit of Google-fu will also find you the commented
disassembly of Donkey Kong arcade.

I can't help to be fascinated by the innovation shown in some of these early
games.

~~~
khedoros
Same with commented disassemblies of Super Mario Bros
([https://gist.github.com/1wErt3r/4048722](https://gist.github.com/1wErt3r/4048722)),
Super Mario Bros 3
([http://sonicepoch.com/sm3mix/](http://sonicepoch.com/sm3mix/)), and Legend
of Zelda for the NES (which I can't find right now, but think I probably have
a copy of around here somewhere...).

There are some Sonic the Hedgehog ones too:
[http://info.sonicretro.org/Disassemblies](http://info.sonicretro.org/Disassemblies)

I love the idea of reverse engineering games as a sort of "software
archaeology", as well as a method of preserving them in the future.

------
slacka
Seems like there have been a lot of cool projects like this lately. Have new
tools sparked a renaissance in reverse engineering old apps so they can be
built on any modern architecture? For example we have had the port of SGI
ElectroPaint screensaver[1] and starcraft ported to ARM[2].

[1]
[https://github.com/drvink/electroportis](https://github.com/drvink/electroportis)

[2] [https://pyra-handheld.com/boards/threads/starcraft.73844/](https://pyra-
handheld.com/boards/threads/starcraft.73844/)

~~~
khedoros
Those were both done with IDA, some manual work, and customer decompilers and
other tools, based on the descriptions in each project. The ElectroPaint guy
made a vague reference to some tool that was unreleased in IDA as of IDA 6.5,
but which was supposed to be in the next version. The Starcraft one mentioned
someone else that had ported at least 4 DOS games to run on the OpenPandora
using a similar method (but in 2011, apparently).

I've got a similar project that I've been dancing around doing for a few
years. In my case, it's a game that I grew up with, and I feel like I finally
know enough to take a crack at understanding and documenting the whole thing,
probably to eventually write a reimplementation of the engine. I'd guess that
people here and there are coming to the same conclusion and, apparently,
finding some cool new features in newer versions of IDA. So maybe it's a
mixture of new tools and good timing in people's lives?

------
bryan11
Wow. Excellent work.

------
hacker_9
That is.. impressive.

