• Development took place 1983-84 approx. • Platformer-style game • “Break into bank, steal loot, make exit” • 4 levels planned, Levels I and III were developed.
• No “pseudo-16-bit” registers • no 16-bit arithmetic (duh) • no 8-bit integer multiply / divide • not really easy to set up “stack frames” with calling arguments and local vars.
time • 1/6 the cost of competing CPUs • The right combination of time, place, and price. • Moore’s Law makes a huge difference with even slightly newer CPUs • Z-80 • Motorola 6809
low-res graphics • 280x192 6 colour “hi-res” graphics • Composite “text+graphics” modes with 4 lines of text at the bottom of the display. • Dual frame-buffers for off-screen drawing.
memory directly” • No built-in bitmap manipulation routines • No built-in bitmapped text support • a few primitive polyline routines for the BASIC ROM • No colour palette support
to sync to CRT horizontal or vertical retrace. • hard to eliminate flicker, even with drawing off- screen. • However side-scrolling games manipulate the fame buffer origin.
not. • Lots o’ global variables. • XOR drawing for animated sprites • “pre-shifted” character sprites to account for horizontal position within byte boundaries.
disk dynamically as the game progressed. • Drew bitmapped text on-screen • More “data-driven” in terms of what game mechanics are allowed at given times.
subroutines to handle special states with their own “game loop”. • Multiple source files “chained” together during assembly. • Comments in the source code :)