Files
libretro/emulators/splitwolf.yml
T

426 lines
15 KiB
YAML

emulator: SplitWolf
type: standalone
core_classification: game_engine
source: "https://bitbucket.org/linuxwolf6/splitwolf"
source_branch: scrubbed
profiled_date: "2026-10-20"
source_commit: "f6c00044cdef00a31c66307d8b7cb1fb4ddf8c67"
core_version: "V1.01"
version_basis:
kind: unverified
why: host_unsupported
display_name: "Wolfenstein 3D (SplitWolf)"
cores: [splitwolf]
systems: [wolfenstein3d]
verification: existence
notes: |
Two to four player split screen fork of the C++ Wolf4SDL by Team
RayCast (version.h:95), based on Wolf4SDL v1.7 SVN revision 256
(wl_main.cpp:2211). The Makefile builds one binary per release:
VERSION_WOLF3D_SHAREWARE, VERSION_WOLF3D_APOGEE, VERSION_WOLF3D,
VERSION_SPEAR, VERSION_SPEAR_MP and VERSION_SPEAR_DEMO, each turning on
the Wolf4SDL defines in version.h:13-34. RetroPie builds all six.
Data files are opened under DATADIR, a path compiled in by the Makefile
(Makefile:57, 151), /usr/local/share/games/wolf3d/ by default.
RetroPie sets it to its ports/wolf3d ROM folder. A file that cannot be
opened ends in CA_CannotOpen and the program quits.
CheckForEpisodes (wl_menu.cpp:5194) probes for vswap.<ext>: wl1 for
the shareware build, wl6 then wl3 then wl1 for the full ones, sdm for
the Spear demo, sod or sd1 after --mission 0 or 1 for Spear of Destiny,
sd2 or sd3 after --mission 2 or 3 for the mission pack build
(wl_main.cpp:2015-2040). Every Spear build reads its
graphics and audio files under the sod extension (wl_menu.cpp:5341-5342)
and only vswap, maphead and gamemaps under the mission extension, so the
mission packs need the original game beside them.
vgahead must hold one three byte offset per chunk, less the missing
episodes, or the engine quits (id_ca.cpp:482-496).
The split screen sprites, pictures and sounds are read from the lwmp
directory (id_lwmp.cpp:21), or from the directory given with
--splitdatadir (wl_main.cpp:2127-2137). Each lookup tries a lowercase
.bmp then .BMP, and .wav, .ogg, .WAV, .OGG for sounds
(id_lwmp.cpp:1831-1868, 2086-2105, id_sd.cpp:556-572). When a file is
missing the engine falls back to the sprite or picture of the game data
(id_lwmp.cpp:3301-3313, 3412-3445), so the directory is optional. The
project publishes it as lwmp.zip in its downloads.
The engine checks no hash, so no game data entry carries one.
Written by the engine, not read as data: config.<ext> and savegames in
~/.splitwolf.
files:
- name: "lwmp/"
type: directory
path: "lwmp/"
category: game_data
description: "Split screen sprites, pictures and sounds"
required: false
installed_on: [retropie]
source_ref: "id_lwmp.cpp:21, 1831-1868, 2064-2149, id_sd.cpp:556-572, wl_main.cpp:2127-2137"
note: >
Read relative to the working directory. lwmp.zip (sha1
1145464c5adf84ffd692b46a97cafaddc2153734) from
bitbucket.org/linuxwolf6/splitwolf/downloads holds sprites/ with one
dir1 to dir8 folder per rotation, pics/ and sounds/. The Makefile
install target copies only the binary (Makefile:248-251).
RetroPie extracts the archive beside the binaries.
- name: "gamecontrollerdb.txt"
category: game_data
description: "SDL game controller mappings"
required: false
bundled: true
size: 117360
sha1: "cf96adc4eb2262db4cc19612ca7730e5929d1799"
md5: "3ccf989cc6c79e0a9441dece1773d4fe"
source_ref: "id_in.cpp:453, Makefile:223, 388"
note: >
Read from the working directory by SDL_GameControllerAddMappingsFromFile.
Copied from the SDL_GameControllerDB submodule (commit
01275a5bbefbab17f274e60393cd75405f74feb3) into bin/ at build time.
# Wolfenstein 3D shareware (.wl1)
- name: "vswap.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5260-5267, 5354-5355"
- name: "vgadict.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware Huffman dictionary of the graphics file"
required: false
source_ref: "id_ca.cpp:464-468, wl_menu.cpp:5260-5267, 5354-5355"
- name: "vgahead.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware graphics chunk offsets"
required: false
min_size: 471
max_size: 473
validation: [size]
source_ref: "id_ca.cpp:475-497, wl_menu.cpp:5260-5267, 5354-5355"
note: "Must hold 157 three byte offsets, the NUMCHUNKS + 1 = 162 of gfxv_apo.h (id_ca.cpp:97) less five missing episodes, or the engine quits. The shareware and Apogee builds expect that count, the VERSION_WOLF3D build expects 145. --ignorenumchunks skips the check."
- name: "vgagraph.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware graphics chunks: pictures, fonts and text articles"
required: false
source_ref: "id_ca.cpp:514-518, wl_menu.cpp:5260-5267, 5354-5355"
- name: "maphead.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5260-5267, 5354-5355"
- name: "gamemaps.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5260-5267, 5354-5355"
- name: "audiohed.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware audio chunk offsets"
required: false
source_ref: "id_ca.cpp:636-641, wl_menu.cpp:5260-5267, 5354-5355"
- name: "audiot.wl1"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D shareware AdLib sound effects and music"
required: false
source_ref: "id_ca.cpp:647-651, wl_menu.cpp:5260-5267, 5354-5355"
# Wolfenstein 3D, three episode release (.wl3)
- name: "vswap.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5283-5288, 5354-5355"
- name: "vgadict.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release Huffman dictionary of the graphics file"
required: false
source_ref: "id_ca.cpp:464-468, wl_menu.cpp:5283-5288, 5354-5355"
- name: "vgahead.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release graphics chunk offsets"
required: false
source_ref: "id_ca.cpp:475-497, wl_menu.cpp:5283-5288, 5354-5355"
- name: "vgagraph.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release graphics chunks: pictures, fonts and text articles"
required: false
source_ref: "id_ca.cpp:514-518, wl_menu.cpp:5283-5288, 5354-5355"
- name: "maphead.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5283-5288, 5354-5355"
- name: "gamemaps.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5283-5288, 5354-5355"
- name: "audiohed.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release audio chunk offsets"
required: false
source_ref: "id_ca.cpp:636-641, wl_menu.cpp:5283-5288, 5354-5355"
- name: "audiot.wl3"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D, three episode release AdLib sound effects and music"
required: false
source_ref: "id_ca.cpp:647-651, wl_menu.cpp:5283-5288, 5354-5355"
# Wolfenstein 3D (.wl6)
- name: "vswap.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5270-5281, 5354-5355"
- name: "vgadict.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D Huffman dictionary of the graphics file"
required: false
source_ref: "id_ca.cpp:464-468, wl_menu.cpp:5270-5281, 5354-5355"
- name: "vgahead.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D graphics chunk offsets"
required: false
source_ref: "id_ca.cpp:475-497, wl_menu.cpp:5270-5281, 5354-5355"
- name: "vgagraph.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D graphics chunks: pictures, fonts and text articles"
required: false
source_ref: "id_ca.cpp:514-518, wl_menu.cpp:5270-5281, 5354-5355"
- name: "maphead.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5270-5281, 5354-5355"
- name: "gamemaps.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5270-5281, 5354-5355"
- name: "audiohed.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D audio chunk offsets"
required: false
source_ref: "id_ca.cpp:636-641, wl_menu.cpp:5270-5281, 5354-5355"
- name: "audiot.wl6"
category: game_data
system: wolfenstein3d
description: "Wolfenstein 3D AdLib sound effects and music"
required: false
source_ref: "id_ca.cpp:647-651, wl_menu.cpp:5270-5281, 5354-5355"
# Spear of Destiny (.sod)
- name: "vswap.sod"
aliases: ["vswap.sd1"]
category: game_data
system: wolfenstein3d
description: "Spear of Destiny page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5324-5342"
- name: "vgadict.sod"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny Huffman dictionary of the graphics file"
required: false
source_ref: "id_ca.cpp:464-468, wl_menu.cpp:5324-5342"
- name: "vgahead.sod"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny graphics chunk offsets"
required: false
source_ref: "id_ca.cpp:475-497, wl_menu.cpp:5324-5342"
- name: "vgagraph.sod"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny graphics chunks: pictures, fonts and text articles"
required: false
source_ref: "id_ca.cpp:514-518, wl_menu.cpp:5324-5342"
- name: "maphead.sod"
aliases: ["maphead.sd1"]
category: game_data
system: wolfenstein3d
description: "Spear of Destiny map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5324-5342"
- name: "gamemaps.sod"
aliases: ["gamemaps.sd1"]
category: game_data
system: wolfenstein3d
description: "Spear of Destiny level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5324-5342"
- name: "audiohed.sod"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny audio chunk offsets"
required: false
source_ref: "id_ca.cpp:636-641, wl_menu.cpp:5324-5342"
- name: "audiot.sod"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny AdLib sound effects and music"
required: false
source_ref: "id_ca.cpp:647-651, wl_menu.cpp:5324-5342"
# Spear of Destiny mission pack 2 (.sd2)
- name: "vswap.sd2"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny mission pack 2 page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5307-5313"
- name: "maphead.sd2"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny mission pack 2 map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5307-5313"
- name: "gamemaps.sd2"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny mission pack 2 level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5307-5313"
# Spear of Destiny mission pack 3 (.sd3)
- name: "vswap.sd3"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny mission pack 3 page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5314-5320"
- name: "maphead.sd3"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny mission pack 3 map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5314-5320"
- name: "gamemaps.sd3"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny mission pack 3 level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5314-5320"
# Spear of Destiny demo (.sdm)
- name: "vswap.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo page file: wall textures, sprites and digitized sounds"
required: false
source_ref: "id_pm.cpp:20-25, wl_menu.cpp:5344-5351"
- name: "vgadict.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo Huffman dictionary of the graphics file"
required: false
source_ref: "id_ca.cpp:464-468, wl_menu.cpp:5344-5351"
- name: "vgahead.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo graphics chunk offsets"
required: false
min_size: 402
max_size: 404
validation: [size]
source_ref: "id_ca.cpp:475-497, wl_menu.cpp:5344-5351"
note: "Must hold 134 three byte offsets, NUMCHUNKS + 1 of gfxv_sod.h built with SPEARDEMO (id_ca.cpp:97), or the engine quits. --ignorenumchunks skips the check."
- name: "vgagraph.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo graphics chunks: pictures, fonts and text articles"
required: false
source_ref: "id_ca.cpp:514-518, wl_menu.cpp:5344-5351"
- name: "maphead.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo map offsets and tile info"
required: false
source_ref: "id_ca.cpp:556-560, wl_menu.cpp:5344-5351"
- name: "gamemaps.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo level maps"
required: false
source_ref: "id_ca.cpp:575-580, wl_menu.cpp:5344-5351"
- name: "audiohed.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo audio chunk offsets"
required: false
source_ref: "id_ca.cpp:636-641, wl_menu.cpp:5344-5351"
- name: "audiot.sdm"
category: game_data
system: wolfenstein3d
description: "Spear of Destiny demo AdLib sound effects and music"
required: false
source_ref: "id_ca.cpp:647-651, wl_menu.cpp:5344-5351"