Case study
CannonBall: rewriting the OutRun arcade engine in C++
CannonBall rewrites the OutRun arcade game's 68000 and Z80 assembly as a C++ engine. It reads graphics and audio from the user's original ROMs and supports higher frame rates, widescreen output and SDL2-based rendering.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C2 code & docs, no demo or download
- Stars
- 891
- Last commit
- 2022-01-30
- Language
- C++
GitHub data as of 2026-11-10
Evidence
- Observed
- Code, documentation and a download method observed; no demo found.
- Checked
- 2026-11-09
Requirements & limits
- Requires the original OutRun revision B ROM set.
- Builds with a C++11 toolchain, CMake, SDL2 and Boost.
- The author maintains the Windows build but not the other platform ports.
Cite
BibTeX
@misc{cannonball-outrun-case,
title = {{CannonBall: rewriting the OutRun arcade engine in C++}},
howpublished = {\url{https://github.com/djyt/cannonball}},
url = {https://github.com/djyt/cannonball},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/cannonball-outrun-case/}}
}Plain text
CannonBall: rewriting the OutRun arcade engine in C++. https://github.com/djyt/cannonball (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/cannonball-outrun-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · djyt/cannonball · Revision 27493eb
More in Games
- Carmageddon Android Port: adapting Dethrace for ARM64 phones · Case study
- Carpocalypse 2: a Carmageddon 2 decompilation and native port · Case study
- Castlevania: Belmont’s Curse: a paused native Apple Silicon port · Case study
- Castlevania: Symphony of the Night: a Vita shared-library port · Case study
- Chrono Trigger: a frame-checked native C reimplementation · Case study
- Cinnamon: porting a GameMaker: Studio runner reconstruction to Nintendo consoles · Case study