{
  "commit": "d38cd580364b2c788e633b9e51c15e1668f726c0",
  "count": 1,
  "generated_at": "2026-11-03T13:36:34Z",
  "items": [
    {
      "id": "px68k",
      "profile": {
        "core_classification": "community_fork",
        "core_version": "0.15+",
        "cores": [
          "px68k"
        ],
        "display_name": "Sharp - X68000 (PX68k)",
        "emulator": "PX68k",
        "files": [
          {
            "installed_on": [
              "recalbox"
            ],
            "name": "iplrom.dat",
            "note": "X68000 IPL ROM (original model). 128 KB, loaded at IPL buffer offset 0x20000. The core tries iplrom.dat first, then iplrom30.dat, iplromco.dat, iplromxv.dat in order. At least one must be present or the core fails to start.\n",
            "path": "keropi/iplrom.dat",
            "priority": 1,
            "required": true,
            "size": 131072,
            "source_ref": "source libretro.c:984-1001"
          },
          {
            "name": "iplrom30.dat",
            "note": "X68030 IPL ROM. Alternative to iplrom.dat for X68030 model emulation. Only used if iplrom.dat is not found.\n",
            "path": "keropi/iplrom30.dat",
            "priority": 2,
            "required": false,
            "size": 131072,
            "source_ref": "source libretro.c:985"
          },
          {
            "name": "iplromco.dat",
            "note": "X68000 Compact IPL ROM. Alternative to iplrom.dat. Only used if iplrom.dat and iplrom30.dat are not found.\n",
            "path": "keropi/iplromco.dat",
            "priority": 3,
            "required": false,
            "size": 131072,
            "source_ref": "source libretro.c:985"
          },
          {
            "name": "iplromxv.dat",
            "note": "X68000 XVI IPL ROM. Last fallback in the IPL search order. Only used if the three other IPL variants are not found.\n",
            "path": "keropi/iplromxv.dat",
            "priority": 4,
            "required": false,
            "size": 131072,
            "source_ref": "source libretro.c:985"
          },
          {
            "installed_on": [
              "recalbox"
            ],
            "name": "cgrom.dat",
            "note": "X68000 character generator ROM. 768 KB, provides the font glyphs for text display. If missing, the core falls back to cgrom.tmp (user-generated font cache). Core fails to start if neither file exists.\n",
            "path": "keropi/cgrom.dat",
            "required": true,
            "size": 786432,
            "source_ref": "source libretro.c:987, source libretro.c:1022-1032"
          },
          {
            "name": "cgrom.tmp",
            "note": "Alternative font file, used as fallback when cgrom.dat is absent. Typically a font cache generated by the emulator itself on other platforms.\n",
            "path": "keropi/cgrom.tmp",
            "required": false,
            "size": 786432,
            "source_ref": "source libretro.c:988, source libretro.c:1025-1029"
          }
        ],
        "notes": {
          "ipl_selection": "The four IPL ROM variants correspond to different X68000 hardware revisions. The core uses whichever it finds first in order: iplrom.dat (original X68000), iplrom30.dat (X68030), iplromco.dat (Compact), iplromxv.dat (XVI). Most users only need iplrom.dat. The IPL also determines SASI vs SCSI disk support based on vectors found at offsets 0x30600-0x30c00.\n",
          "sram": "sram.dat (16 KB) is read/write runtime state, not a BIOS file. The core creates it automatically on first shutdown. It stores X68000 NVRAM settings (boot count, boot device preferences, SRAM-resident programs).\n",
          "subdirectory": "All files must be placed in <system_dir>/keropi/ subdirectory. The core sets this path at init via sprintf(retro_system_conf, \"%s/keropi\", system_dir) and then calls file_setcd() to make it the base for all file_open_c() calls.\n"
        },
        "profiled_date": "2026-03-25",
        "source": "https://github.com/libretro/px68k-libretro",
        "source_commit": "5510637a4c0a08ac0302087ea498093dcc3e9d17",
        "systems": [
          "sharp-x68000"
        ],
        "type": "libretro",
        "upstream": "https://github.com/hissorii/px68k",
        "version_basis": {
          "kind": "file",
          "path": "libretro.c",
          "pattern": "#define\\s+PX68K_VERSION\\s+\"([^\"]+)"
        }
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
