{
  "commit": "fbe5ba4e3e790ab07eddc5b57e0f45a02cbcd60e",
  "count": 1,
  "generated_at": "2026-10-24T00:06:47Z",
  "items": [
    {
      "id": "starship",
      "profile": {
        "core_classification": "game_engine",
        "core_version": "2.0.0",
        "cores": [
          "starship"
        ],
        "display_name": "Star Fox 64 (Starship)",
        "emulator": "Starship",
        "files": [
          {
            "category": "game_data",
            "description": "Star Fox 64 (USA) ROM, revision 1.1 or 1.0, as dumped or uncompressed",
            "name": "baserom.us.rev1.z64",
            "note": "Picked through a file dialog filtered on *.z64 on Windows, Linux and macOS. Switch, Android and iOS read baserom.us.rev1.z64 next to the executable. Only a US ROM produces sf64.o2r, the archive the game runs from, and it is not read again once sf64.o2r exists.",
            "required": true,
            "sha1": [
              "09f0d105f476b00efa5303a3ebc42e60a7753b7a",
              "f7475fb11e7e6830f82883412638e8390791ab87",
              "d8b1088520f7c5f81433292a9258c1184afa1457",
              "63b69f0ef36306257481afc250f9bc304c7162b2"
            ],
            "source_ref": "src/port/extractor/GameExtractor.cpp:12-23, 25-54, src/port/Engine.cpp:88-106, 272-292, config.yml:3-62",
            "system": "starship",
            "validation": [
              "sha1"
            ]
          },
          {
            "category": "game_data",
            "description": "Star Fox 64 (Japan) ROM, extracted to mods/sf64jp.o2r for Japanese voices",
            "name": "baserom.jp.z64",
            "note": "Offered after the US extraction. The file name is whatever the user picks in the dialog.",
            "required": false,
            "sha1": [
              "9bd71afbecf4d0a43146e4e7a893395e19bf3220",
              "d064229a32cc05ab85e2381ce07744eb3ffaf530"
            ],
            "source_ref": "src/port/extractor/GameExtractor.cpp:17-18, config.yml:63-92",
            "system": "starship",
            "validation": [
              "sha1"
            ]
          },
          {
            "category": "game_data",
            "description": "Lylat Wars (Europe) ROM, extracted to mods/sf64eu.o2r for European voices",
            "name": "baserom.eu.z64",
            "note": "Offered after the US extraction. The file name is whatever the user picks in the dialog.",
            "required": false,
            "sha1": [
              "05b307b8804f992af1a1e2fbafbd588501fdf799",
              "09f5d5c14219fc77a36c5a6ad5e63f7abd8b3385"
            ],
            "source_ref": "src/port/extractor/GameExtractor.cpp:19-20, config.yml:93-122",
            "system": "starship",
            "validation": [
              "sha1"
            ]
          },
          {
            "category": "game_data",
            "description": "Star Fox 64 (China, iQue) ROM, extracted to mods/sf64cn.o2r",
            "name": "baserom.cn.z64",
            "note": "Offered after the US extraction. The file name is whatever the user picks in the dialog.",
            "required": false,
            "sha1": [
              "c8a10699dea52f4bb2e2311935c1376dfb352e7a",
              "3a05aba5549fa71e8b16a0c6e2c8481b070818a9"
            ],
            "source_ref": "src/port/extractor/GameExtractor.cpp:21-22, config.yml:123-149",
            "system": "starship",
            "validation": [
              "sha1"
            ]
          },
          {
            "bundled": true,
            "category": "game_data",
            "description": "Port archive packed from port/: Direct3D, OpenGL and Metal default shaders and the HUD boost gauge textures",
            "md5": "1885560b5d69899530bf3ab7af210f8b",
            "name": "starship.o2r",
            "note": "Linux reads it from the application bundle, other systems from the executable directory. Loaded only when present, but the renderer aborts without the default shader it carries. Hash of the copy in Starship-Barnard-Alfa-Windows.zip, whose shaders have CRLF line endings.",
            "path": "starship/starship.o2r",
            "required": true,
            "sha1": "95a8b0460576158da39a51b53091eae2c6880aad",
            "size": 10733,
            "source_ref": "src/port/Engine.cpp:73-77, 109-111, libultraship src/graphic/Fast3D/backends/gfx_direct3d11.cpp:1325-1331",
            "system": "starship"
          },
          {
            "bundled": true,
            "category": "game_data",
            "description": "Torch extraction table: accepted ROM hashes, their asset tree under assets/yaml/ and their output archive",
            "md5": "0dab932eb5e59572294c1ea623d8f8e2",
            "name": "config.yml",
            "note": "Read from the working directory during an extraction only, together with the assets/yaml tree. Without it no archive is written. Hash of the copy in Starship-Barnard-Alfa-Windows.zip.",
            "path": "starship/config.yml",
            "required": false,
            "sha1": "fedb99b9622ed8df8ab46b85e51998f911345cb6",
            "size": 3910,
            "source_ref": "Torch src/Companion.cpp:956-981",
            "system": "starship"
          },
          {
            "bundled": true,
            "category": "game_data",
            "description": "SDL game controller mapping database",
            "md5": "06d6a7b5856d6a44e835b7e3dc41e6f6",
            "name": "gamecontrollerdb.txt",
            "note": "A load failure is logged and SDL keeps its built-in mappings. The build downloads it from gabomdq/SDL_GameControllerDB. Hash of the copy in Starship-Barnard-Alfa-Windows.zip.",
            "path": "starship/gamecontrollerdb.txt",
            "required": false,
            "sha1": "b3d2b29fe4fdfdc0a74f5b8e200c506d33637d9c",
            "size": 566042,
            "source_ref": "libultraship src/public/libultra/os.cpp:18-24",
            "system": "starship"
          }
        ],
        "notes": "PC port of Star Fox 64 built on the decompilation, by HarbourMasters. The\ngame runs from assets extracted out of the user's N64 ROM into sf64.o2r,\nplus the port's own archive starship.o2r, on the libultraship runtime.\nTorch (tools/Torch) performs the extraction inside the executable.\n\nRetroBat installs the v2.0.0 release: its starship.7z carries the\nStarship.exe, starship.o2r, config.yml and gamecontrollerdb.txt of\nStarship-Barnard-Alfa-Windows.zip byte for byte. The profile is pinned to\nthe v2.0.0 tag for that reason. RetroBat's launcher copies the ROM from\nroms/starship into the Starship folder when no other .o2r than\nstarship.o2r is there, then starts Starship.exe.\n\nStartup (GameEngine::GameEngine, src/port/Engine.cpp:65-127):\n  1. sf64.o2r next to the executable is loaded when present (:72, :88-89).\n  2. Otherwise the user is asked for a ROM. A refusal, a cancelled file\n     dialog or a ROM whose SHA-1 is not in mGameList exits (:90-106,\n     :272-292). An accepted ROM is extracted by Torch, then the user may\n     extract a second ROM for the JP, EU or CN voice archive.\n  3. starship.o2r is added when it exists (:109-111).\n  4. Every .otr, .o2r and .zip under mods/ is added (:113-126).\n\nThe ROM SHA-1 is computed by Torch over the whole file\n(Torch src/n64/Cartridge.cpp:17, Torch src/Companion.cpp:1535-1537).\nTorch then reads config.yml from the working directory, which maps each\naccepted hash to an asset tree under assets/yaml/ and to an output\narchive: sf64.o2r for the two US revisions, mods/sf64jp.o2r,\nmods/sf64eu.o2r and mods/sf64cn.o2r for the others. A compressed dump is\nfirst decompressed to the uncompressed image and processed again. Without\nconfig.yml Torch logs \"No config file found\" and writes nothing\n(Torch src/Companion.cpp:956-960). config.yml and the 103 assets/yaml\nfiles ship with the release.\n\nThe renderer loads its default shader from the archives and aborts when\nit is missing\n(libultraship src/graphic/Fast3D/backends/gfx_direct3d11.cpp:1325-1331).\nThe shaders are only in starship.o2r, packed from port/ by \"torch pack\nport starship.o2r o2r\" (CMakeLists.txt:631-635). starship.o2r also\ncarries the HUD boost gauge textures.\n\nTorch and libultraship are submodules of the repository, pinned at v2.0.0\nto f75facb20883570ed091e8ae733ec0539f606e57 and\n45c4f8d6c19c6176f5e0918917c655ea09ecc212. Their citations above are at\nthose revisions.\n",
        "profiled_date": "2026-10-20",
        "source": "https://github.com/HarbourMasters/Starship",
        "source_commit": "cb19785b51698185a688e17ba1a34c7889195bdb",
        "systems": [
          "starship"
        ],
        "type": "standalone",
        "upstream": "https://github.com/HarbourMasters/Starship"
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
