Space Invaders Arcade Emulator (Source)
Space Invaders arcade game emulator made in Rust with SDL2 and SDL2_mixer. Complete Emulator of the Intel 8080, the app is implemented to run the Space Invaders Arcade game. Everything is working including the Space Invaders Easter Egg.
* Full emulation
* Sound
* Two-players mode
* Window resizing without deformation
Compilation
First thing you need is to install cargo and rust. You can find them by following the instructions in the link below:
https://www.rust-lang.org/tools/install
You also need to download the following audio files:
- 0.wav
- 1.wav
- 2.wav
- 3.wav
- 4.wav
- 5.wav
- 6.wav
- 7.wav
- 8.wav
The wav
files can be downloaded in the links below:
https://samples.mameworld.info
https://www.classicgaming.cc/classics/space-invaders/sounds
They all must be put in the game_audios
folder.
Warning
Be carefully when downloading the .wav files, some files may have the wrong name.
Linux
Linux Users need to install the SDL2 libs (SDL2 and SDL2_mixer). To do so, type in your bash system the following commands.
If you want to compile the program, install the developer version with the command below:
sudo apt-get install libsdl2-dev libsdl2-mixer-dev
MacOs
For macOS users you will need to install Brew, please follow the instruction in the link below:
https://brew.sh
Once it is installed, you can type the following command to install SDL2.
brew install sdl2 brew install sdl2_mixer
You also need to add SDL2
to the paths by typing:
export LIBRARY_PATH="$LIBRARY_PATH:$(brew --prefix)/lib"
With Rust and SDL2 libs installed, you can now compile the project in two-way, debug or release. To compile go to the project root folder and type one of the two following commands below (If you want to use the emulator please compile using the second command).
cargo build
or
cargo build --release
The compiled app will be in the folder target/debug
or target/release
depending on the compilation you did.