High Level Design

Rationale and sources of your project idea

The rationale of the Digger game is pure enjoyment! Although we had to adapt our game from the original to suit time and hardware constraints, we held true to this principle. The source of this idea was the original Digger itself, by Windmill Software.

Background Math

Beyond simple arithmetic, no mathematics was required for this project.

Logical Structure

The hardware of the game consists of 3 Sega Genesis 6 button controllers, an Atmel Mega 32 MCU, and a television. The 3 controllers interface with the MCU via ports B (Digger controller) and C (two Nobbin controllers). The MCU sends its signal to the television via Port D.

Hardware Block Diagram

Lastly, we implemented a galvanic skin response (GSR) sensor to go with the game, but finally did not to include it. More details on the hardware, including the GSR, are available in the hardware section.

The software of the game resides entirely in between frames, with the exception of the initialization code. The initialization code initializes various variables, including the game start splash screen. There are three main while loops in between frames, and only one of them runs at any time. The first loop is the Game Start loop. It constantly checks to see which mode the player has selected, sets the flag for either AI or multiplayer and draws the game map. The second loop is the In-Game loop. It runs in-game code and holds the bulk of the code. The last loop is the Game End loop. It draws the game end splash screen and keeps track of the best time so far. More details on the software are available in the software section.

Software High-Level Organization

Hardware/Software Trade-offs

Initially, we thought that we would have to choose between implementing the GSR and the AI, due to limited flash memory. However, we were able to reduce our code size substantially (more details in the code size optimization subsection of software).

Standards

Our code generated a non-interlaced, black-and-white TV signal based on the National Television System Committee (NTSC) standard. Therefore, our game can be played on any television that complies with this standard.

To the best of our knowledge, we relied on no other standards in this project.

Patents, Copyrights and Trademarks

Windmill Software is clearly acknowledged to hold the copyright to the original game Digger. We also hereby explicitly state that this remake of the game is purely for educational purposes. Lastly, the game Digger is now “abandonware”, meaning that is no longer supported or sold by the company.

The Sega Genesis controller is patented by NES. We did not infringe any patent protections in our use of the controller.

back to top