1. Introduction


Brian Smith and Cem Ozkaynak, two Seniors enrolled in ECE 476 at Cornell University, seek to rekindle the mood of impending nuclear annihilation by distant ‘Evil Empires’ through the classic 1980’s video arcade sensation Missile Command.


Given the harmonious state of international affairs today and the resounding love for America throughout the world, we sought to remind younger generations that there were periods in history when ‘rogue states’ threatened the world with nuclear annihilation.  To recreate the long-forgotten fear of these ‘Evil’ states that were often geographically challenging for many to locate we chose to use the medium of our generation – video games.   Missile Command is simple in concept and easy to pick-up.  In our design, the player has five cities that he would prefer continued to exist.  However, the opponent rogue state, signaling its distaste for diplomacy and its preference for the blood of the capitalist West, launches its nuclear missiles at the player’s cities.  The player attempts to defend the cities against incoming waves of hostile missiles using interceptor missiles, which travel from one of the cities to the target chosen by the player.  The interceptors detonate at the target, creating a temporary explosion area which destroys all missiles within its radius.  The player must choose the targets wisely since there is a limit on the number of interceptors available at any given time.  Each successful intercept adds points to the player’s score.  The game continues, increasing in difficulty by increasing the inbound missile speeds, until all of the player’s cities are destroyed.  The only objective of the game is to surpass any existing High Score.  In nuclear warfare there are no winners – unless, of course, you’re a rogue state.  Somehow impending nuclear annihilation never deters those guys.


To implement Missile Command in hardware we have chosen to use two Atmel Amega32 microcontrollers (MCUs).  Both microcontrollers are soldered on to separate prototype boards which have the appropriate power input, mouse input, and video output connections.  One microcontroller is used to generate a NTSC B/W video signal that is transmitted to a state-of-the-art consumer electronic 5” B/W Jensen television.  The second microcontroller interfaces with a PS/2 mouse and is responsible for transmitting the relevant mouse parameters to the video generation microcontroller.  The software on both MCUs is written in C using CAVR.