Skip to content

albert-yu/emulator-101

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This project emulates the Intel 8080 CPU used to run Space Invaders. It also runs Space Invaders in a playable state (I will not be accepting comments about my gaming skills at this time):

Attract mode

Build

This project depends on SDL2 for rendering graphics. To install SDL2 on macOS with Homebrew:

brew install sdl2

Then, to build:

make

Or with another C compiler:

CC=clang make

With debug symbols:

make clean && make debug

Run

For the first argument, the executable takes the folder containing invaders.h, invaders.g, etc. So with the following folder structure,

├── intel8080
└── invaders
    ├── invaders.e
    ├── invaders.f
    ├── invaders.g
    └── invaders.h

the command would be:

./intel8080 invaders

To step through one instruction at a time (useful for debugging or as a reference), use the -s option:

./intel8080 -s invaders

Controls

Currently only single player mode is supported. The mappings are as follows:

Action Button
Insert coin C
Start Enter
Left
Right
Fire Space

Controls do not work in step mode.

References

Releases

No releases published

Packages

No packages published