{
  "commit": "d38cd580364b2c788e633b9e51c15e1668f726c0",
  "count": 1,
  "generated_at": "2026-11-03T13:36:34Z",
  "items": [
    {
      "id": "ardens",
      "profile": {
        "core_classification": "official_port",
        "core_version": "v0.25.12",
        "cores": [
          "ardens"
        ],
        "display_name": "Arduboy (Ardens)",
        "emulator": "Ardens",
        "files": [],
        "notes": "Arduboy FX simulator (ATmega32U4 + SSD1306 + W25Q128). All boot code\nembedded as C arrays: Caterina/Arduboy3K bootloaders for D1/D2/E2\nhardware revisions and flashcart header. EEPROM and flash state handled\nvia RETRO_MEMORY_SAVE_RAM. The libretro port never accesses the system\ndirectory. firmware_count = 0.\n",
        "platform_details": {
          "embedded_bootloaders": {
            "note": "All bootloaders are compiled from Intel HEX into C arrays at build\ntime. The core selects the game or menu variant at reset depending\non whether a flashcart image was loaded and the boot_to_menu config\nflag (src/absim_arduboy.cpp:151-181). The bootloader is written to the\ntop of the ATmega32U4 program memory at the address defined by the\nBOOTSZ fuse bits (src/absim.hpp:811).\n",
            "source_ref": "src/boot/_make.bat, src/absim_arduboy.cpp:127-181",
            "variants": [
              {
                "array": "ARDENS_BOOT_GAME_D1",
                "device": "Arduboy FX (SDA)",
                "name": "arduboy3k-bootloader-game-sda",
                "size": 8422
              },
              {
                "array": "ARDENS_BOOT_MENU_D1",
                "device": "Arduboy FX (SDA)",
                "name": "arduboy3k-bootloader-menu-sda",
                "size": 8422
              },
              {
                "array": "ARDENS_BOOT_GAME_D2",
                "device": "Arduboy FX DevKit",
                "name": "arduboy3k-bootloader-game-devkit",
                "size": 8446
              },
              {
                "array": "ARDENS_BOOT_MENU_D2",
                "device": "Arduboy FX DevKit",
                "name": "arduboy3k-bootloader-menu-devkit",
                "size": 8446
              },
              {
                "array": "ARDENS_BOOT_GAME_E2",
                "device": "Arduboy Mini",
                "name": "arduboymini-bootloader-game",
                "size": 8548
              },
              {
                "array": "ARDENS_BOOT_MENU_E2",
                "device": "Arduboy Mini",
                "name": "arduboymini-bootloader-menu",
                "size": 8548
              }
            ]
          },
          "embedded_flashcart_header": {
            "array": "ARDENS_BOOT_FLASHCART",
            "note": "Empty flashcart header written to the first 1536 bytes of the\nW25Q128 flash image during initialization. This is not a BIOS\nfile -- it is the default flash content the Arduboy FX expects\nat the start of external storage.\n",
            "size": 1536,
            "source_ref": "src/boot/boot_flashcart.c, src/absim_w25q128.hpp:14"
          }
        },
        "profiled_date": "2026-03-23",
        "source": "https://github.com/tiberiusbrown/ardens",
        "source_commit": "e811cc6be72c8a802bd3265a84daf4165c177b93",
        "systems": [
          "arduboy"
        ],
        "type": "libretro",
        "upstream": "https://github.com/tiberiusbrown/ardens",
        "version_basis": {
          "distance": 0,
          "kind": "tag",
          "tag": "v0.25.12"
        }
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
