Short: A Space Invaders Arcade Emulator Author: Anoakie Turner, AmigaOS 4.0 compile by Spot / Up Rough Uploader: spot triad se (Spot / Up Rough) Type: misc/emu Version: 1.03 Requires: AmigaOS 4.0 and the Space Invaders, Space Attack or Invaders Revenge ROMs. Architecture: ppc-amigaos >= 4.0.0 8080A simulator (siemu) 1.03 --- Amiga Read Me Copyright (C) 2002 Anoakie Ray Turner AmigaOS 4.0 compile by Spot / Up Rough This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Contact: Anoakie Turner Anoakie.Turner()asu.edu 13240 N. 94th Pl. Scottsdale, AZ 85260 --------------------------------------------- -=================- Table of Contents -=================- 1. General Information 1.1 Acknowledgements 1.2 What is this program? 1.3 Terminology 2. Requirements 3. Quick start guide 4. Obtaining ROMs 5. Setting up ROMs 6. Dip switches 7. Space Invaders specific keys 8. Simulator specific keys 9. Troubleshooting 7.1 Bugs 7.2 "Help! The program won't work!" 7.3 My invaders ROMs fail to load or run correctly. 1. General Information 1.1 Acknowledgements Thanks to: - D. Pheanis for sponsoring this project and various other correspondence. - Midway for creating Space Invaders. - Intel for creating the 8080a microprocessor. - Jon Atkins for helping me reconstruct my Makefile, explaing timer granularity problems with Delays to me and telling me how to modify the Linux kernel to fix the timer problems. - Mattias Engdegard for explaining how to achieve better timing without eating CPU time. - Zack Vaughan for testing the PowerPC binaries. - Martin Donlon for writing the SDLDoc documentation. - Sam Lantingua for creating SDL. - ASU's Writing Center for offering me assistance with my grammar. - Perdue's OWL online - The falstaf family for offering me moral support. ... See the SOURCES file for other acknowledgements. 1.2 What is this program? This program is an 8080a simulator. It was written to run 8080a ROMs, preferably Space Invaders and its clones. 1.3 Terminology In this document, the terms 'simulator' and 'emulator' are used interchangably. Both terms are defined as "a software simulation of the 8080a hardware." The terms 'binary' and 'executable' are also used interchangably in this program. Both terms are defined as "the emulator compiled from the source code in an executable binary form." The terms 'high bit' and 'on bit' are used interchangably. In addition, The terms 'low bit' and 'off bit' are used interchangably. "Toggling a switch" or "flipping a bit" changes it from a 'high bit' to a 'low bit' or a 'low bit' to a 'high bit'. Win32 is the same as 32 bit Windows. This include Windows 95 through Windows XP. 2. Requirements - An AmigaOne running AmigaOS 4.0, only tested under pre-release upd 4. 3. Quick start guide 1. Copy the Space Invaders ROMs to "roms/invaders/" 2. Double click on icon of the game you want to play. 3. Add coins by pressing the '3' button, and start the game by pressing the '1' button. 4. Use the left and right arrows to move your ship, and the space bar to shoot. 4. Obtaining ROMs If you do not own the original circuit board, it may be illegal to own the ROM sets dumped from this board. Please do not contact me about ROM dumps, I will not send them to you. 5. Setting up ROMs ROMs should be 2048 bytes in size. ROMs should be stored in the following format, where ROMNAME is the name of the ROMSET the ROM belongs to: . Root directory _ roms _ ROMNAME _ | The first ROM of the set. This is loaded into | ROM at 0x0000-0x0800 |_ ROMNAME.h | | The second ROM of the set. This is loaded into | ROM at 0x0800-0x1000 |_ ROMNAME.g | | The third ROM of the set. This is loaded into | ROM at 0x1000-0x1800 |_ ROMNAME.f | | The last ROM of the set. This is loaded into | ROM at 0x1800-0x2000 |_ ROMNAME.e Example with the invaders set: . Root directory _ roms _ invaders __ invaders.h |_ invaders.g |_ invaders.f |_ invaders.e 6 Dip switches Dip switches are like the ROMs "options". Flipping a dip switch immediately toggles the value of that switch. Once a dip switch has been flipped, the simulator may need to be reset (which can be done by pushing the 'r' key) for the changes to take effect. Note that the key's name is in quotes and the actual key is in parenthesis. "Page Down" (PGDN) - flips the TILT swtich on and then off, which tilts the machine. The default value is off. "Left Bracket" ([) - flips the high bit in the number of ships, which adds one extra ship to the ships the player starts with. The player gets zero extra ships if this bit is not flipped. The default value is off. "Right Bracket" (]) - flips the low bit in the number of ships, which adds two extra ship to the ships the player starts with. The player gets zero extra ships if this bit is not flipped. The default value is off. "Back Slash" () - flips the bit on the number of points the player needs to obtain to get a free ship. If this bit is high, the player need 1000 points to get a free ship. If the bit is low, the player need 1500 points to get a free ship. 7 Space Invaders specific keys These keys are the actual keys that are used while playing the game. Note that the key's name is in quotes and the actual key is in parenthesis. "Left" (<-) - moves the player's ship to the left, while ingame. "Right" (->) - moves the player's ship to the right, while ingame. "Space" (' ') - shoots, while ingame. "1" (1) - starts a one player game, if there is at least one credit. "2" (2) - starts a two player game, if there are at least two credits. "3" (3) - adds a coin, which in turn increases the number of credits by one. 8 Simulator specific keys These keys control the simulator specific options. Note that the key's name is in quotes and the actual key is in parenthesis. "Escape" (ESC) - stops simulation and exits the program immediately. This has the same effect as clicking the close button. "r" (r) - resets the processor. This is needed if any dip switches have been flipped or if the player would like to restart the game. "f" (f) - toggles the simulator to fullscreen. This only applies to the X11 and BeOS versions of the simulator. "c" (c) - toggles color simulation. This only works if either the GREEN and/or COLOR tags were used when compiling. 9. Troubleshooting 9.1 "Help! The program won't work!" If the simulator crashes or locks up, make sure that you have a valid and supported ROM set. If you are sure that you have a valid and supported ROM set, please contact me at aturner (at) darkpact.com. 9.2 My invaders ROMs fail to load or run correctly. Make sure your ROMs have the following names, sizes, and CRCs: invaders.h 2048 734f5ad8 invaders.g 2048 6bfaca4a invaders.f 2048 0ccead96 invaders.e 2048 14e538b0