Skip to content

Abuse - RetroBIOS

Type standalone
Classification Game engines
Source https://github.com/Xenoveritas/abuse
Version v0.9.1
Profiled 2026-10-04
Cores abuse
Checked by existence
Technical notes

Side-scrolling 1995 action game by Crack dot Com, SDL2 fork from the Xenoveritas branch. The port ships its own game data in-tree under data/ (14 MB), including the Lisp scripts, levels, art and freedesktop metadata; the fRaBs expansion was removed from this fork over licensing uncertainty.

Entry point abuse.lsp is loaded relative to the data directory. The data root is set in src/sdlport/setup.cpp: 1. -datadir <path> CLI argument (setup.cpp:327-332) 2. datadir= in abuse.cfg (setup.cpp:182) 3. ASSETDIR compile-time constant, filled by CMakeLists.txt:45-54, "." on Windows, abuse.app/Contents/Resources/data on macOS, share/games/abuse on Linux (setup.cpp:441-474) Loader1 reads abuse.lsp via lisp (loader2.cpp:284), which chain-loads lisp/english.lsp -> lisp/common.lsp -> lisp/startup.lsp -> ...

Batocera's packaging (package/batocera/ports/abuse/abuse.mk) pins DASSETDIR to /userdata/roms/abuse and splits the data into the Pacman package abuse-data which pulls abuse.zoy.org's abuse-data-2.00.tar.gz, a 16 MB public-domain pack that includes music/ and sfx/ (which the Xenoveritas tree omits).

No separate BIOS or firmware. The whole game is open content.

3 files | 3 required, 0 optional | 3 in repo, 0 missing Categories: 3 game data

abuse.lsp required in repo game_data bundled
Lisp entry point loaded first after setting the data directory

  • Source: src/loader2.cpp:284, src/netcfg.cpp:204
  • Shipped in the source tree under data/. Loader2 reads it via load(); the file in turn chain-loads the rest of the Lisp data (english.lsp, common.lsp, startup.lsp, options.lsp, input.lsp, startup).

defaults.prp required in repo game_data bundled
Default properties for level objects

english.lsp required in repo game_data bundled
Localized strings loaded first by abuse.lsp

Generated on 2026-10-10T11:26:00Z