{
  "commit": "fbe5ba4e3e790ab07eddc5b57e0f45a02cbcd60e",
  "count": 1,
  "generated_at": "2026-10-24T00:06:47Z",
  "items": [
    {
      "id": "fbzx",
      "profile": {
        "core_classification": "other",
        "core_version": "3.9.1",
        "cores": [
          "fbzx"
        ],
        "display_name": "Sinclair - ZX Spectrum (FBZX)",
        "emulator": "FBZX",
        "files": [
          {
            "bundled": true,
            "crc32": "ddee531f",
            "description": "ZX Spectrum 48K ROM",
            "md5": "4c42a2f075212361c3117015b107ff68",
            "name": "48.rom",
            "note": "Default model, loaded at the first reset.",
            "path": "spectrum-roms/48.rom",
            "required": true,
            "sha1": "5ea7c2b824672e914525d1d5c419d71b84a426a2",
            "size": 16384,
            "source_ref": "src/emulator.cpp:74-82, src/computer.cpp:53,186",
            "system": "sinclair-zxspectrum"
          },
          {
            "bundled": true,
            "crc32": "e76799d2",
            "description": "ZX Spectrum 128K ROM 0",
            "md5": "b4d2692115a9f2924df92a3cbfb358fb",
            "name": "128-0.rom",
            "path": "spectrum-roms/128-0.rom",
            "required": false,
            "sha1": "4f4b11ec22326280bdb96e3baf9db4b4cb1d02c5",
            "size": 16384,
            "source_ref": "src/emulator.cpp:83-92",
            "system": "sinclair-zxspectrum"
          },
          {
            "bundled": true,
            "crc32": "b96a36be",
            "description": "ZX Spectrum 128K ROM 1",
            "md5": "6e09e5d3c4aef166601669feaaadc01c",
            "name": "128-1.rom",
            "path": "spectrum-roms/128-1.rom",
            "required": false,
            "sha1": "80080644289ed93d71a1103992a154cc9802b2fa",
            "size": 16384,
            "source_ref": "src/emulator.cpp:83-92",
            "system": "sinclair-zxspectrum"
          },
          {
            "bundled": true,
            "crc32": "5d2e8c66",
            "description": "Amstrad +2 ROM 0",
            "md5": "4ed7af4636308b8a48d7a35e6c5b546b",
            "name": "plus2-0.rom",
            "path": "spectrum-roms/plus2-0.rom",
            "required": false,
            "sha1": "72703f9a3e734f3c23ec34c0727aae4ccbef9a91",
            "size": 16384,
            "source_ref": "src/emulator.cpp:93-102",
            "system": "sinclair-zxspectrum"
          },
          {
            "bundled": true,
            "crc32": "98b1320b",
            "description": "Amstrad +2 ROM 1",
            "md5": "b3db95931cc844efaeb82db9c171b9f3",
            "name": "plus2-1.rom",
            "path": "spectrum-roms/plus2-1.rom",
            "required": false,
            "sha1": "de8b0d2d0379cfe7c39322a086ca6da68c7f23cb",
            "size": 16384,
            "source_ref": "src/emulator.cpp:93-102",
            "system": "sinclair-zxspectrum"
          },
          {
            "aliases": [
              "plus3-40-0.rom"
            ],
            "bundled": true,
            "crc32": "17373da2",
            "description": "Spectrum +3 ROM 4.0, page 0",
            "md5": "9833b8b73384dd5fa3678377ff00a2bb",
            "name": "plus3-0.rom",
            "note": "Read under plus3-40-0.rom before the legacy name.",
            "path": "spectrum-roms/plus3-0.rom",
            "required": false,
            "sha1": "e319ed08b4d53a5e421a75ea00ea02039ba6555b",
            "size": 16384,
            "source_ref": "src/emulator.cpp:113-125",
            "system": "sinclair-zxspectrum"
          },
          {
            "aliases": [
              "plus3-40-1.rom"
            ],
            "bundled": true,
            "crc32": "f1d1d99e",
            "description": "Spectrum +3 ROM 4.0, page 1",
            "md5": "0f711ceb5ab801b4701989982e0f334c",
            "name": "plus3-1.rom",
            "path": "spectrum-roms/plus3-1.rom",
            "required": false,
            "sha1": "c9969fc36095a59787554026a9adc3b87678c794",
            "size": 16384,
            "source_ref": "src/emulator.cpp:113-125",
            "system": "sinclair-zxspectrum"
          },
          {
            "aliases": [
              "plus3-40-2.rom"
            ],
            "bundled": true,
            "crc32": "3dbf351d",
            "description": "Spectrum +3 ROM 4.0, page 2",
            "md5": "3b6dd659d5e4ec97f0e2f7878152c987",
            "name": "plus3-2.rom",
            "path": "spectrum-roms/plus3-2.rom",
            "required": false,
            "sha1": "22e50c6ba4157a3f6a821bd9937cd26e292775c6",
            "size": 16384,
            "source_ref": "src/emulator.cpp:113-125",
            "system": "sinclair-zxspectrum"
          },
          {
            "aliases": [
              "plus3-40-3.rom"
            ],
            "bundled": true,
            "crc32": "04448eaa",
            "description": "Spectrum +3 ROM 4.0, page 3",
            "md5": "a148bcc575e51389e84fdf5d555c3196",
            "name": "plus3-3.rom",
            "path": "spectrum-roms/plus3-3.rom",
            "required": false,
            "sha1": "65f031caa8148a5493afe42c41f4929deab26b4e",
            "size": 16384,
            "source_ref": "src/emulator.cpp:113-125",
            "system": "sinclair-zxspectrum"
          },
          {
            "bundled": true,
            "crc32": "453d86b2",
            "description": "Spanish 128K ROM 0",
            "md5": "c1231a70b8129311216acb7479b031d5",
            "name": "128-spanish-0.rom",
            "path": "spectrum-roms/128-spanish-0.rom",
            "required": false,
            "sha1": "968937b1c750f0ef6205f01c6db4148da4cca4e3",
            "size": 16384,
            "source_ref": "src/emulator.cpp:135-144",
            "system": "sinclair-zxspectrum"
          },
          {
            "bundled": true,
            "crc32": "6010e796",
            "description": "Spanish 128K ROM 1",
            "md5": "4f341936594cbcab75cfa62ce96e3682",
            "name": "128-spanish-1.rom",
            "path": "spectrum-roms/128-spanish-1.rom",
            "required": false,
            "sha1": "bea3f397cc705eafee995ea629f4a82550562f90",
            "size": 16384,
            "source_ref": "src/emulator.cpp:135-144",
            "system": "sinclair-zxspectrum"
          },
          {
            "aliases": [
              "if1-v2.rom"
            ],
            "bundled": true,
            "crc32": "bb66dd1e",
            "description": "Interface 1 ROM, second edition",
            "md5": "31b704ae925305e74f50699271fddd9a",
            "name": "if1-2.rom",
            "note": "Loaded after every model, if1-v2.rom being the legacy name tried next.",
            "path": "spectrum-roms/if1-2.rom",
            "required": true,
            "sha1": "5cfb6bca4177c45fefd571734576b55e3a127c08",
            "size": 8192,
            "source_ref": "src/emulator.cpp:147-158",
            "system": "sinclair-zxspectrum"
          }
        ],
        "mode": "standalone",
        "notes": "ZX Spectrum emulator for SDL by Sergio Costas. Emulates the 48K, the 128K,\nthe Amstrad +2, the +2A/+3 and the Spanish 128K, with Interface 1 and\nmicrodrives. The GitHub tree stops at 3.9.1 plus two commits, the last one\npointing at the project's move to GitLab. RetroPie builds this head on x86\nand the 2.11.1 tag (fc1da080a17c400d8f9fdc316cbe8c1362a371c9) elsewhere.\n2.11.1 is the C code base that 3.x rewrote in C++, and its ROM loader opens\nthe same names in the same order with the same fallbacks.\nref: src/emulator.cpp:49-160, and lines 63-195 of the tag's emulator.c\n\nEvery ROM is opened through myfopen, which tries the relative path from the\nworking directory, then under /usr/share, then under /usr/local/share.\nmake install copies the ROMs the project ships to share/spectrum-roms, and\nRetroPie starts the emulator from inside $md_inst/share so the relative path\nresolves there.\nref: src/llscreen.cpp:113-133, Makefile:30-34\n\nA reset loads the ROM set of the current model, read in 16 KiB pages, and a\nmissing page ends the program with \"Can't load file\". The model is the 48K\nunless the configuration file or the machine menu picks another one, and a\nsnapshot can switch it too. The Interface 1 ROM is loaded after every model\nand its absence also ends the program.\nref: src/computer.cpp:53,186, src/emulator.cpp:68-158,308-326, src/cargador.cpp:593-599\n\nThe +2A/+3 model tries plus3-41-0.rom to plus3-41-3.rom (ROM 4.1) first,\nthen plus3-40-0.rom to plus3-40-3.rom (ROM 4.0), then the legacy names\nplus3-0.rom to plus3-3.rom. The project ships only the legacy names, holding\nthe 4.0 ROM.\nref: src/emulator.cpp:103-134\n\nfbzx/keymap.bmp, installed to share/fbzx, is the keyboard picture shown from\nthe help menu, and its absence only shows \"Keymap picture not found\".\nref: src/menus.cpp:1761, src/llscreen.cpp:486-498\n",
        "profiled_date": "2026-10-20",
        "source": "https://github.com/rastersoft/fbzx",
        "source_commit": "8d6b4cbe5fec121015e98cf545e9b3b811de2a71",
        "systems": [
          "sinclair-zxspectrum"
        ],
        "type": "standalone"
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
