Howard's past: Pinball games

Xenophobe was Howard's first game for Bally (actually, this was his first game in the game industry). This game was written entirely in 68000 assembly language. Howard built an object oriented system which maintained objects and allowed them to be created and disposed of as the players went from room to room. The room layout was table based, so more levels could be easily added and different rooms could be combined in different ways to create new levels. Since the hardware used for this game had no hardware scrolling, the entire 3-pane scrolling system was done in software. Also, the main loop for game had to run fast enough to keep things moving at 30 frames per second, so the whole codebase was optimized for speed.

All of these pinball games were written in 6803 assembly language. The core of all of these games was the Bally pinball utility, but each game's "personality" had to be coded for each game. All of the light patterns and solenoid action was controlled through the software. Since the ball on the playfield was moving in real time, the game had to keep up, so the main loop had to run 60 times per second. Also, the hardware required the software to strobe all of the lights to keep them lit up when they were supposed to be turned on.