Case study
si78c: reimplementing Space Invaders in C
si78c is a C reimplementation of the 1978 arcade game Space Invaders. Running it matches the original memory state apart from the stack, and the frames match pixel for pixel. The ROM files go in inv1/. invaders.e is MD5 7d3b201f3e84af3b4fcb8ce8619ec9c6, invaders.f is 7709a2576adb6fedcdfe175759e5c17a, invaders.g is 9ec2dc89315a0d50c5e166f664f64a48, and invaders.h is e87815985f5208bfa25d567c3fb52418. make builds ./bin/si78c. It uses SDL2 and ucontext, and the documented builds use Ubuntu 18.04 and Mac OS X El Capitan on little-endian machines.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C2 code & docs, no demo or download
- Stars
- 797
- Last commit
- 2019-12-06
- Language
- C
GitHub data as of 2026-11-10
Evidence
- Observed
- Code and documentation observed; no download method or demo found.
- Checked
- 2026-11-09
Requirements & limits
- SDL2 and the four ROM files with those MD5s. On Ubuntu, libsdl2-dev, then make.
- The README names no license.
Cite
BibTeX
@misc{si78c,
title = {{si78c: reimplementing Space Invaders in C}},
howpublished = {\url{https://github.com/loadzero/si78c}},
url = {https://github.com/loadzero/si78c},
urldate = {2026-11-07},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/si78c/}}
}Plain text
si78c: reimplementing Space Invaders in C. https://github.com/loadzero/si78c (accessed 2026-11-07). Awesome REA entry: https://awesomerea.org/resources/si78c/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · loadzero/si78c · Revision 0b2b4f1
More in Games
- SiegeFX: a Dungeon Siege engine reimplementation in alpha · Case study
- siglus_rs: reimplementing four visual game engines in Rust · Case study
- Sims 3 in Bevy: a Rust reimplementation of The Sims 3 · Case study
- SimUnity2: a partial Unity reconstruction of The Sims 2 · Case study
- Skate 3 Rust Engine: a Bevy rewrite built on Skate 3 reverse-engineering research · Case study
- SkyRoads: a DOS game engine reconstructed in portable C11 · Case study