- Your entire program can not exceed 64 symbols - a symbol being a number, variable, or reserved word (i.e. Goto, If, Then)
- There's a maximum of 9 lines, not really an issue considering the first item
- You only get integers from 0-99
- Only five math functions are available (+,-,*,÷,mod)
- In terms of graphics, you have two dots you can move by setting their coordinates
- You can play a range of beeps but I'm not musically inclined so I can't map them to notes
- Instead of a keyboard you have two 12 button pads to work with
If this sounds horribly limited and lame it's because you haven't yet thought about the hardware it's running on…
Ah, the good old Atari 2600 Video Computer System. It could only address 4,096 bytes of ROM and 128 bytes (not megabytes, not kilobytes, but bytes) of RAM, and as far as graphics are concerned, the Atari 2600 is responsible for drawing every pixel on the screen, as the screen is being drawn by the eletronic beam on the television (or in other words, you are Racing the Beam).
It's not an easy machine to program.
So to even contemplate BASIC on the thing is insane. But it exists. And it has that oh so very sweet Atari cover art:
followed by the dismal reality that comprise most of the Atari 2600 programs:
Still, I find it a fascinating system. Like Hughs Johnson says, you could Tweet most Atari 2600 Basic programs they're so short. And because the language is so constrained, it seems like one could easily randomly generate scores of valid Atari 2600 Basic programs.
Hmmm … I have yet to figure out what my next Stupid Twitter Trick™ is to be …