Skip to content

Solarus 2.0.0

Solarus 2.0.0 emulates Solarus games.

About this profile
Detail Value
Type standalone
Classification Game engine
Source https://gitlab.com/solarus-games/solarus
Version 2.0.0
Revision solarus-games/solarus@1c69f3d7ec13
Profiled 2026-10-20
Profile YAML, JSON
Cores solarus2
Systems Solarus games
Technical notes

Solarus engine at tag v2.0.0, which RetroBat installs as solarus2 beside its older solarus package. libsolarus.dll in that package reports 2.0.0 and its gamecontrollerdb.txt is the one the v2.0.0 tree carries. emulatorlauncher runs solarus-run.exe -fullscreen=yes|no <rom> from the package folder on a .solarus or .zip quest (emulatorLauncher Generators/Solarus.Generator.cs:20-48).

The quest arrives as the last non-option argument, and otherwise falls back to SOLARUS_DEFAULT_QUEST, "." by default (src/core/MainLoop.cpp:108-121, cmake/AddOptions.cmake:8). open_quest mounts that path through PhysFS directly, then tries <path>/data, <path>/data.solarus and <path>/data.solarus.zip, each both relative and under PHYSFS_getBaseDir (src/core/QuestFiles.cpp:151-165). The quest counts as found once quest.dat resolves (src/core/QuestFiles.cpp:230-234). Everything else the game uses comes out of that mount.

Startup reads one file from outside the quest. System::initialize probes SDL_GetBasePath() then SOLARUS_DATADIR_PATH for gamecontrollerdb.txt and hands whichever it finds to SDL through SDL_HINT_GAMECONTROLLERCONFIG_FILE (src/core/System.cpp:70-98). At this tag the file is installed into the data directory without a build option to turn it off (cmake/AddInstallTargets.cmake:22-26).

0 files: 0 required, 0 optional. 1 more file comes with the app.

By kind: 1 game data.

gamecontrollerdb.txt comes with the app game data

SDL gamepad mappings applied on top of the built-in table

  • Looked up next to the executable first, then under SOLARUS_DATADIR_PATH, share/solarus by default (cmake/AddInstallDirs.cmake:14). Both probes are guarded by an existence test, and neither hitting leaves SDL on its built-in mappings.
.