4 ms·
StarRaiders: Reverse-engineered, fully documented assembly language source code
- snowpanda 11y agoWow, the original source code resurfaced a month later. I wonder if that happened because of his project.
- hacker_9 11y agoThat is.. impressive.
- pronoiac 11y agoOoh! 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_US https://archive.org/details/a8b_cart_Star_Raiders_1979_Atari... * 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 11y agoEven better, I believe there are 2 different sequels that were developed simultaneously at atari and have finally been released.
- bryan11 11y agoWow. Excellent work.
- slacka 11y agoSeems 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 11y agoThose 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?
- LCDninja 11y agoNice! 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 11y agoSame 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.