{
  "commit": "d38cd580364b2c788e633b9e51c15e1668f726c0",
  "count": 1,
  "generated_at": "2026-11-03T13:36:34Z",
  "items": [
    {
      "id": "emux_chip8",
      "profile": {
        "core_classification": "official_port",
        "core_version": "0.1",
        "cores": [
          "emux_chip8"
        ],
        "display_name": "CHIP-8 (Emux CHIP-8)",
        "emulator": "emux (CHIP-8)",
        "exclusion_note": "CHIP-8 has no BIOS, font data hardcoded in char_mem[]",
        "files": [],
        "notes": "emux is a multi-system emulator supporting CHIP-8, Game Boy, NES, and\nSega Master System as separate libretro cores. The CHIP-8 core\n(emux_chip8) does not require any external BIOS or firmware files.\n\nThe CHIP-8 architecture has no real BIOS. The standard font/character\nset (hex digits 0-F, 5 bytes each = 80 bytes) is hardcoded in\nmach/chip8.c:40-57 as the char_mem[] array. On reset, this font data\nis copied into the beginning of the 4 KB RAM (address 0x000-0x04F)\nvia memcpy in chip8_reset() at mach/chip8.c:105.\n\nROM loading: the game ROM is loaded via file_open(PATH_DATA, ...) in\nchip8_init() at mach/chip8.c:68-74. On reset, ROM contents are copied\ninto RAM starting at address 0x200 (mach/chip8.c:113). The core\naccepts .ch8, .bin, and .rom extensions (libretro/Makefile.rules:20).\n\nMemory map from mach/chip8.c:17-20:\n  0x000-0x04F  font/character data (hardcoded)\n  0x050-0x1FF  unused\n  0x200-0xFFF  program ROM + working RAM\n\nThe libretro frontend retrieves the system directory via\nRETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY (libretro/libretro.c:34) but\nonly uses it as a general config path, not for BIOS loading.\n",
        "platform_details": {
          "bios_mapping": {
            "note": "No external BIOS. The 80-byte character font is compiled into the\nbinary as char_mem[] and memcpy'd into RAM[0x000] on every reset.\nThis is standard CHIP-8 behavior -- all interpreters embed the font.\n",
            "source_ref": "mach/chip8.c:40-57, mach/chip8.c:98-115",
            "target": "none"
          }
        },
        "profiled_date": "2026-03-23",
        "source": "https://github.com/libretro/emux",
        "source_commit": "3e558cb15157fcb1944846a845547d369605c963",
        "systems": [
          "chip8"
        ],
        "type": "libretro",
        "upstream": "https://github.com/sronsse/emux",
        "version_basis": {
          "kind": "file",
          "path": "configure.ac",
          "pattern": "AC_INIT\\(\\[emux\\],\\s+\\[([0-9][\\w.+-]*)"
        }
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
