Results 1 to 7 of 7

Thread: Source Code of Atari 7800 Games Released (Ms. Pac Man, Dig Dug, Robotron 2084, More)

  1. #1
    Administrator

    Join Date
    Nov 2003
    Posts
    3,346
    Thanks Thanks Given 
    275
    Thanks Thanks Received 
    39
    Thanked in
    32 Posts

    Default Source Code of Atari 7800 Games Released (Ms. Pac Man, Dig Dug, Robotron 2084, More)

    "To further help in the learning, and programming of the Atari 7800, the following original Source Code to many Atari 7800 video games have been provided below. These games were rescued from Atari ST format diskettes that were thrown out behind 1196 Borregas when Atari closed up in 1996. The Atari Museum rescued these important treasures and recovered them from the diskettes. Many of the compiling and coding tools as well as the Atari 7800 development tools are Atari ST programs, which can be run via emulation to be able to natively compile and test code."

    Source: Atari Museum

  2. #2
    Great Puma (Level 12) Steve W's Avatar
    Join Date
    Jun 2006
    Location
    DFW Metroplex, Texas
    Posts
    4,639
    Thanks Thanks Given 
    67
    Thanks Thanks Received 
    43
    Thanked in
    39 Posts

    Default

    I hope that by letting people look at the source code, they'll find it easier to make new 7800 games. I'd love for homebrews to come out as frequently as Atari 2600 games. Or just hacks, I don't care. I'd love to see Ms. Pac-Man's source code messed around with and new mods made from it. Or new courses for Ninja Golf (even though it's not one of the games that the source code has been released for) or use the engine from Midnight Mutants to create some real RPGs.

  3. #3
    Ryu Hayabusa (Level 16) rbudrick's Avatar
    Join Date
    Sep 2002
    Location
    Buying the rare ones, moments before you get there.
    Posts
    8,435
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    3
    Thanked in
    2 Posts

    Default

    It's awesome those ST dev tools were recovered, but can't the source code of any of the 7800 games be easily extracted from the rom? Not sure why those are a big deal. I remember there were tools to extract code directly from 2600 carts, and iirc NES, so I'm not sure why these would be more OMG or whatever.

    -Rob
    The moral is, don't **** with Uncle Tim when he's been drinking!

  4. #4
    Administrator

    Join Date
    Nov 2003
    Posts
    3,346
    Thanks Thanks Given 
    275
    Thanks Thanks Received 
    39
    Thanked in
    32 Posts

    Default

    Quote Originally Posted by rbudrick View Post
    It's awesome those ST dev tools were recovered, but can't the source code of any of the 7800 games be easily extracted from the rom? Not sure why those are a big deal. I remember there were tools to extract code directly from 2600 carts, and iirc NES, so I'm not sure why these would be more OMG or whatever.
    You are confusing your "codes".

    There are two types of code - source code and machine code. Machine code is what the machine needs to run a program. For example, explorer.exe is native machine code for an x86 machine that, when run in Microsoft Windows, will start Windows Explorer. Machine code is hard to modify.

    Source code is the original instructions written in a more human-like language which are later turned into machine code. Source code can be easily modified to change the way a program works. A compiler, linker, and assembler turn the source code into machine code, which can then be executed and run.

    So to answer your question, you can extract the machine code from the ROMs, not the source code. Having the source code means we can inspect how the programs internally work, and make changes if we wish.

  5. #5
    Banned

    Join Date
    Oct 2005
    Posts
    3,248
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts

    Default

    Page isn't loading for me, so i'm not sure how the source code was written.

    If it's written in assembly, which i assume it is, it's basically the same thing as machine code. If that's the case, then Rob is mostly right, there's not a whole lot of benefit to having the original source code.

    It may still be somewhat handy for a few reasons though. The original source code is probably formatted better and may have comments. I'm not sure if the 7800 uses bank switching, but disassemblers (the programs that turn machine code into source code) suck at handling bank switching.

  6. #6
    Great Puma (Level 12) slapdash's Avatar
    Join Date
    Jul 2002
    Location
    Arlington Hts IL USA
    Posts
    4,051
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts

    Default

    Quote Originally Posted by nz17 View Post
    So to answer your question, you can extract the machine code from the ROMs, not the source code. Having the source code means we can inspect how the programs internally work, and make changes if we wish.
    Just a quick note... You CAN extract source code from machine code; the way you said it is a little misleading (though everything else is correct). To clarify for you, while you can extract source code from machine code, you lose the benefit of (1) well-named labels and (2) comments. But despite that, the "reclaimed" (disassembled) source code CAN be used to figure out how games work; it's just a lot harder than if you have the ORIGINAL source code, assuming it was written logically/well.
    Russ Perry Jr, 2175 S Tonne Dr #114, Arlington Hts IL 60005
    Got any obscure game stuff?

  7. #7
    Banned

    Join Date
    Oct 2005
    Posts
    3,248
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts

    Default

    It may sound weird to people who program modern systems, but that's dead on. The concept of a "game engine" just isn't practical on these older systems. You're writing in assembly code, which is nice for speed, but doesn't do a whole lot a year later when you're reading through the code. On top of that, due to the limited memory on the systems you skip using some variables and just write values directly into memory addresses. It doesn't do a lot of good later when you want to change what the value means.

    If i wanted to make a sequel to Bio Force Ape and add in a few features I couldn't fit into the first game, I would need to rewrite the entire game. It's just too hard to write super-efficient code and still leave it modular enough for future expansion. As a quick example, it took me about 8 hours to write the code to display the game's title screen. Bratwurst started talking about resizing the graphic and i threatened to stab him. Even something so simple can't be modified without rewriting the entire section of code.

    When it comes to comments, not only do they take longer to write, but they take more space to store the source code. Bio Force Ape takes up a couple of megabytes of space just in source code. Between source, compiled ROMs, artwork, sprites, tiles, music and backups, the whole project takes up about 75 megabytes. In 1990 my top of the line PC only had a 20 megabyte hard drive.

    I can't imagine storing the entire game on floppy discs back in the 80s...
    Last edited by ProgrammingAce; 07-14-2009 at 03:36 PM.

Similar Threads

  1. MIT Tetris Hack: Source Code Released [Slashdot]
    By DP ServBot in forum Classic Gaming
    Replies: 0
    Last Post: 05-02-2012, 12:21 AM
  2. Prince of Persia Source Code Released On Github [Slashdot]
    By DP ServBot in forum Classic Gaming
    Replies: 0
    Last Post: 04-17-2012, 09:00 PM
  3. Doom 3 Source Code To Be Released This Year [Slashdot]
    By DP ServBot in forum Classic Gaming
    Replies: 13
    Last Post: 08-08-2011, 10:41 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •