Slashdot Mirror


Create New Atari 2600 Games With BASIC

2600fan writes "Fred Quimby, a game developer for the Stella Atari 2600 emulator, has released a new BASIC compiler that can be used to create games to run on Stella and potentially on the 2600 itself. The compiler generates efficient assembly-language code in DASM syntax, then uses DASM to make a binary. A bitmapped playfield and easy-to-use scrolling routines are included, and programmers can also add inline assembly language and directly access TIA registers if they please."

5 of 34 comments (clear)

  1. Re:if the programs run on an Atari 2600.... by davidbrit2 · · Score: 2, Informative

    Word on the street is that the Atari Flashback 2.0 due out in the next month or two will have pin headers on the board allowing you to solder in your own real Atari 2600 cartridge port. From what I've read, the thing is basically a 6502 + TIA chip done in an FPGA or some such. Plus it'll have built in games, including some unreleased stuff, and new arcade ports done by Atari (Space Duel being among them). So definitely watch for this beast. It's not going to just be cheesy ports to NES hardware like the original Flashback.

  2. No Licensing Issues! by Anonymous Coward · · Score: 3, Informative

    The Atari 2600 was made from off-the-shelf parts, so there are no ROM licensing issues (on the platform itself). This is why Mattel was able to make a 2600 add-on for the Intellivision.

    Seems crazy now -- Imagine having a hardware add-on for the Gamecube that played PS2 games!

    1. Re:No Licensing Issues! by bjb · · Score: 2, Informative
      The Atari 2600 was made from off-the-shelf parts, so there are no ROM licensing issues (on the platform itself).

      Off the shelf parts? No, I think you're confusing the history of the PC here. While the 2600 didn't have any ROM code (which is easily copyrightable and difficult to duplicate), it did have a few custom chips (TIA, etc). Now I'm no chip engineer, but I'm sure its probably relatively easy to create functional equivalent chips at this level of complexity in comparison to doing a clean room ROM clone that still provides 100% compatibility.

      I could be somewhat wrong, but I'm fairly certain that the 2600 had no ROM (that was the cartridge!) and it was simply stuffing values into registers that made things happen immediately. Remember, 2600 programmers had to be very concious about their timing; if there was ROM code, that would complicate things.

      --
      Never hit your grandmother with a shovel, for it leaves a bad impression on her mind...
    2. Re:No Licensing Issues! by Anonymous Coward · · Score: 1, Informative
      The Atari 2600 was made from off-the-shelf parts, so there are no ROM licensing issues (on the platform itself). This is why Mattel was able to make a 2600 add-on for the Intellivision.
      Wrong: the Atari 2600 contained a custom chip called the Television Interface Adapter (aka Stella) that generated the graphics and audio. Mattel and Coleco (among other companies) managed to reverse-engineer the chip, and Coleco earned a patent infringement suit from Atari for their efforts.
  3. Re:Why BASIC ? by cd-w · · Score: 2, Informative

    The point was to make the Atari 2600 easy to program, not to produce the ultimate programming language. BASIC is a good choice for this as it corresponds closely to the underlying machine instructions, but is much easier to comprehend.
    This is also why BASIC was bundled with most 8-bit home micros. Furthermore, as the resulting programs can be no larger than 4KB (not MB!) in size, and 1MHz in speed, any OO mechanisms would impose far too much overhead.

    The 2600 has an active and friendly homebrewing scene. However, there is a steep learning curve for anyone wanting to start. This tool will be very useful for beginners who want to try their hand at 2600 programming, before learning the full details of 6507 and TIA programming. Also it will be useful as a prototyping tool for experienced developers who want to try out a game concept before investing a lot of effort in designing a custom display kernel.