A gaming machine is operable to conduct a wagering game such as slots, poker, keno, bingo, or blackjack.  In response to a wager for purchasing a play of the game, the machine generates a random (or pseudo-random) event and provides an award to a player for a winning outcome of the random event.  Occasionally, the random event may trigger a bonus game involving lively animations, display illuminations, special effects, and/or player interaction.  Game outcomes are presented to the player on one or more displays, which depict the outcomes in a form that can be understood by the player. 
A gaming machine typically includes an outer cabinet that houses a main central processing unit (CPU), several peripheral devices, and wiring harnesses to electrically connect the peripherals to the main CPU.  The CPU may, for example, include one or more printed circuit boards carrying one or more processors, a plurality of logic devices, and one or more memory devices for storing executable program code and game data.  The memory devices for storing executable code may, for example, include EPROMs, hard disk drives, Compact FLASH cards, CD-ROMs, DVDs, and Smart Media cards.  The stored executable code provides two basic functions: (1) an operating system for controlling the gaming machine and controlling communications between the gaming machine and external systems or users, and (2) game code for conducting a game on the gaming machine. 
Heretofore, there has been little to inhibit unauthorized persons from replacing some or all of the executable code in the main CPU with unapproved software and thereby take advantage of the machine's capabilities without authorization from the machine manufacturer.  A need therefore exists for a method and apparatus for inhibiting such unauthorized activity.