Atari Painter in BASIC
"The Ultimate Drawing Game"
In my continuing series of Atari BASIC programs I wrote in the 80s as I was first learning to program, I present Atari Painter.
The title screen says it is “the ultimate drawing game”. I’m not sure what sort of teenager arrogance I had back then, but it was certainly strong! This program is not a game. It does let you draw on the screen using a joystick, but it is all very rudimentary and certainly not the ultimate of anything. It has awkward usage of Option, Select and Start. The fire button switches between four colors for drawing. There is an incredibly annoying flicker with the text that shows details such as the current drawing color.
Sadly there is no way to save your creations. But it does “work” so that is something, I guess.
Here is the source code, printed instead of hand-written this time
:This uses Graphics 1 ( a large character text mode for the title screen) and Graphics mode 15 for the drawing, which has a resolution of 160 by 160 with 4 colors and 4 lines of standard text at the bottom. This mode uses about 8K of RAM and I believe only works on XL/XE machines.
Of note, there are a couple POKE statements. This one turns the text cursor off:
POKE 752,1
This one clears the Help keypress flag and a later PEEK checks to see if it was pressed:
POKE 732,0
And of course there are PEEKs at location 53279 to read the Start/Selection/Option keys.
The text at the bottom flickers horribly because it is erased and redrawn in the main program loop at line 130. Note that the line does not print the special Atari character there, but a ? CHR$(125)
does the same thing. However, it seems unnecessary to repeatedly clear the screen because it really only needs to be redrawn if something changes.
Since today is my birthday, I used Atari Painter to draw myself a birthday cake:
You know what makes a great birthday present to me? Supporting Goto 10 with a paid subscription!
I made a few small changes to stop the flicker by only having it update the bottom info when it has changed. I used the ANALOG Computing Pocket Reference Card a few times while updating the code and writing this post.
This program (along with many others) is included on a disk image as part of the Goto 10 paid subscriber perks.
Other BASIC-related posts you might like:
Notice the printout shows upper/lowercase for the BASIC code. Atari BASIC itself does not allow that so it implies that I printed this using something else, probably OSS BASIC XE, which I used a lot at the time and did display listings in mixed case.