Download for
Mac OS X Leopard, Xcode 3.1

60 kb – Mac OS X 10.5

Download for
Mac OS X Leopard, Xcode 3.0

56 kb – Mac OS X 10.5

Download for
Mac OS X Tiger

69 kb – Mac OS X 10.4

Don’t you wish programming Atari VCS games on OS X was easier? I’m sure it’s a question that keeps you up at night. It sort of does for me. Or at least it used to, until I decided to do something about it.

This software facilitates Atari VCS development in Apple’s Xcode development environment. It installs syntax coloring for 6502 assembly instructions and VCS-specific memory mapped registers (TIA and RIOT), as well as an Xcode Project Template to make starting VCS projects easier. I’ve included a starter game file to help you get started too.

The Atari VCS (aka 2600) is known as a difficult computer to program. It has no frame buffer, requiring very precisely timed interfacing with every scanline of each screen. It has 128 bytes of RAM. And it is a hard platform to master. But in truth, the VCS is not that hard a platform to learn, it’s just really intimidating to get started with it. Admittedly, part of the problem is learning to program the thing in the first place. I taught a class at Georgia Tech on that topic last spring, and I think I learned a lot about the process. But these were graduate students, and one of my goals is to make VCS assembly programming something undergrads or casual hobbyists (not just hard-core homebrewers) can pick up easily. More on that topic later.

Another part of the problem is just getting code written, assembled, and running on an emulator. It may sound silly, but the more steps it takes to do this the first time, the harder it is to motivate oneself to start. And for the more experienced programmer, it makes iterative development sort of a pain. That’s what I’m hoping to (help) solve with this software, at least for Mac users like me. The Xcode Atari VCS Tools makes Atari VCS programming easy in Apple Xcode.

For experienced Atari developers, this toolkit makes the VCS development process more streamlined, allowing more rapid iterations between coding and debugging. For new Atari developers, this software makes getting started with VCS assembly development easier. All you need is Xcode, this toolkit, and the Stella emulator (see below).

For example, To create a new Atari VCS Game, open Xcode, select File > New Project…, and then choose Atari VCS Game from the list.

New Project

You also get syntax highlighting. To get it to work without selecting a file type via Xcode’s Format > Syntax Coloring menu, name your files with the extension .dasm. The project creator does this for you of course.

Syntax Coloring

If you choose (and I recommend it), you can get Build and Run functionality directly from Xcode. To do so, you’ll need to download the free Stella emulator. Then follow the steps below.

STEP 1

Choose Project > New Custom Executable… from the menu. In the resulting window, enter Stella in Executable Name. Then enter or navigate to the location of your StellaOSX app in Executable Path. Choose Finish.

Custom Executable

STEP 2

In the Info box that opens, under Set the working directory to:, check the radio button labeled Project directory.

Custom Executable

STEP 3

Select the Arguments tab at the top of the window. Add an argument. Specify the text as “[Your Project Name]”.bin, where [Your Project Name] is the exact title of your project file, as you entered it when you created the proejct.

Custom Executable

There you go, now just Build > Build and Run or touch Command-B. Xcode will run the external build tool to assemble your game and run it automatically in Stella.

Ok, off you go to make VCS games then. Find any bugs? Let me know.


Technorati Tags: , , , ,

published June 28, 2007

Comments

  1. Darrell Blake

    I just tried installing this in Leopard and the Atari VCS project doesn’t appear in XCode.

  2. Ian Bogost

    Yeah, I haven’t tested it in Leopard yet. Who knows what they’ve changed about XCode. I’ll have to dig into that a bit. Damn apple.

  3. Darrell Blake

    I forgot to mention that I got this working in Leopard but I had to manually extract the “Archive.pax.gz” from the “Install Xcode VCX Tools” package and copy the files to /Developer/Library/Xcode.

  4. Ian Bogost

    Aha, that probably means I just need to rebuild a new package for Leopard. I can do that pretty easily. Thanks!

  5. Ian Bogost

    Ok! Now we have installers for both Leopard and Tiger. Huzzah.

    Someday soon I’ll finally make one for Batari Basic too.

  6. JoyfulCoder

    This is great! Thank you very much.

  7. Ian Bogost

    And of course, Apple changed the language specifications again in Xcode 3. I’ve updated it already, just haven’t fixed the installer. I’ll do that in the coming days.

  8. Ian Bogost

    Updated now for Xcode 3.1 on OS 10.5

  9. Neil

    Hi Ian,

    I was really excited when I found this post as I’ve always wanted to use Xcode for 6502 (NES) development.

    However, the download links seem to be broken?

    Thanks,

    Neil

  10. Ian Bogost

    Neil, the server was temporarily misconfigured. It should be working again.

  11. Neil

    Brilliant! Thanks Ian, much appreciated.

  12. oisee

    Hi, Ian!

    Thank you for your Syntax Coloring XCode Package! I’m just wrinting to inform you, that i modified your config files .xclangspec and .xcspec for z80 syntax for ZX Spectrum =)

    Also i want to ask your permission: can i redistribute modified z80-version freely? i could rewrite’em from scretch, but hope you’ll grant me your permission =)

    p.s. little bonus: http://www.youtube.com/watch?v=zRPV87rGg1I – our last spectrum demo =)

  13. Ian Bogost

    Great news on the z80 conversion! Feel free to distribute them, just let me know where you do so I can link to it.

  14. KatieHUDSON19

    If you are in a not good position and have got no cash to get out from that point, you would have to receive the credit loans. Because that will help you definitely. I take credit loan every time I need and feel great just because of that.