Jump to content
IGNORED

Idiots Guide To Programming the 2600


johnnywc

Recommended Posts

Hey,

 

Chris Charla and I are indeed working on a "How to Program the 2600" book. Unfortunately, it's a side project and things are pretty crazy at our day jobs (Digital Eclipse Software) right now. The sad result is that the book, which we wanted to have done way back in April, is still not done! At CGE we hope to show some aspect of the book -- possibly the first chapter in .pdf form, and hopefully some demos from the book. We apologize for it taking so long! We never would have announced it so early if we didn't expect it to be done by now.

 

We hope the finished product is well worth the wait.

 

Just to remind everyone, the book is geared for complete non-programmers to intermediate programmers, offering pre-programmed kernals with explanations, but also exercises to help folks understand the 2600, with easy to modify code. Many won't understand that much of it, except how to change the way a sprite moves and looks, and interacts... while the more intermediate folks will be able to change the kernal and learn display techniques, etc. It is quite an undertaking, and was originally modelled after the Compute! series of programming books.

 

Mike

Link to comment
Share on other sites

Mike,

 

I really look forward to reading your book. I'm a (game) programmer by trade, but I've never taken the time to learn how to program the 2600. I'm sure your book, plus your libraries, will make it much easier for programmers and non-programmers to learn. With any luck it'll usher in a new era of quality, homebrew 2600 software. It'll be a nice change of pace from writing software for today's PCs and consoles.

 

Hope to see you (and whatever you have to show of the book) at CGE!

 

..Al

Link to comment
Share on other sites

Actually I'm rather interested in this book. I've done my share of programming back in the day, but strictly for 8 and 16-bit machines, and my assembler knowledge was limited to 6502 and some basic 80x86. Still, I loved assembler for its cryptic, yet simplistic and powerful style. I'm rather interested in maybe taking a poke at 2600 programming, just for the challenge of working with a primitive system that had virtually no RAM in which to store anything. :-)

 

Out of curiosity, is there anything in this book that would touch upon bank switching techniques? It'd be cool enough to write a relatively simple 4k game, but it'd be wonderful to take what one could learn from that and expand upon it by making a larger, more robust game using more addressing space.

Link to comment
Share on other sites

From a software point of view, there's really not much difference in a 4k game vs. an 8k game. It depends on the hardware implementation, of course. But the basic idea is that you access a special "hot address" when you want to use a different bank. The hardware in the cartridge watches the address bus and performs the appropriate switching automatically.

 

In the "standard" Atari bankswitching format (referred to as "F8") you have two 4k banks. If you want to use the first one, you first perform a read from (hex) address $FFF8. If you want to use the second bank, you read from address $FFF9. The switch happens immediately and the new data is available on the very next instruction.

 

I agree that basic bankswitching should at least be touched upon in any book about 2600 programming. Maybe as a last chapter. Heehee... "Chapter 69: Beyond the 4K Boundary".

 

I'm also very interested in reading this book. I make 2600 hardware, but still haven't programmed anything beyond diagnostic routines and test programs for my projects. I WANT TO MAKE A GAME!!!!

 

-Chris

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...