emulator: RetroDream type: libretro core_classification: community_fork source: "https://github.com/libretro/redream-next" upstream: "https://github.com/inolen/redream" profiled_date: "2026-03-25" core_version: "Git" display_name: "Sega - Dreamcast (RetroDream)" cores: - retrodream systems: - sega-dreamcast notes: | Fork of the last GPLv3 release of redream (inolen) before it went closed-source. The core has HLE bootstrap -- when boot.bin is missing, bios_invalid_instr() traps at PC=0x0 and calls bios_boot(), which loads IP.BIN and 1ST_READ.BIN directly from disc, sets up syscall vectors, and starts execution at 0xac008300. The fork sets appdir to the RetroArch system directory root (retro_host.c:216-217), unlike the upstream which appends /dc (upstream retro_host.c:196-198). The .info still declares dc/ prefix paths matching the upstream, not this fork. boot.bin is validated against four known MD5 hashes (boot.c:25-30). Validation failure logs a warning but the core continues via HLE. flash.bin is read/write. If missing, bios_validate_flash() resets all partitions to defaults. Saved back to disk on shutdown (flash.c:197-199). files: - name: "boot.bin" system: sega-dreamcast path: "boot.bin" required: false hle_fallback: true size: 2097152 validation: [size, md5] md5: - a5c6a00818f97c5e3e91569ee22416dc - 37c921eb47532cae8fb70e5d987ce91c - f2cd29d09f3e29984bcea22ab2e006fe - e10c53c2f8b90bab96ead2d368858623 note: "Dreamcast boot ROM. Four known variants accepted." source_ref: "src/guest/rom/boot.c:12-80" - name: "flash.bin" system: sega-dreamcast path: "flash.bin" required: false size: 131072 validation: [size] note: "Dreamcast flash memory. Written back on shutdown." source_ref: "src/guest/rom/flash.c:25-71"