I wrote my games Dog Daze, Claim Jumper, Dog Daze Deluxe, and
Bumpomov's Dogs in 6502 assembly language. The 6502 was the
microprocessor used in the Atari 800 computer. (Back in those days,
the chips had numbers like "6502" instead of names like "Pentium.")
The 6502 programming language has a small set of instructions for
reading, writing, and manipulating 8-bit values. I used the
Synapse Synassember, which was about 100 times faster at assembly
than the Atari Assembler Editor cartridge. ("Assembly" means the
automatic conversion instructions from human-readable "source
code" into the number-sequence "object code" understood by the
microprocessor.)
The architecture of the Atari computer provided extensive support
for graphics and sound. I only had to store a sequence of values
into memory, and the graphics chips would put a complex display on
the screen, or the sound chip would generate a complex sound such
as a honk, crunch, or dog-step sound.
These are some of the important principles of software
programming that I learned:
Break up programming tasks into small modules and test them
independently before you integrate them into larger tasks.
It is not sufficient for software to merely work properly. In
order to fix and maintain software, it must have an organized
structure and each module must be thoroughly documented with
comment lines, flowcharts, and a written description, where
applicable.
Anticipate and prepare for the eventual discovery and fixing
of bugs. Some thought and planning at the programming stage can
save a tremendous amount of time at the debugging stage. For
example, when you program a branch in the flow sequence, allow
for the possibility that none of your tested conditions are
true.
A wealth of information on the Atari computers is available at the Atari Archives web site,
including old books, reference manuals, and articles about the Atari
8-bit computers. If you are interested in seeing some of my 1983
programming notes for Dog Daze Deluxe, go to my Programming Notebook page.