Repository navigation
OpenCDi v0.3.0 - Libretro Core, Mono-IV Board, In-Memory Savestates & Runtime BIOS Selector
LatestOpenCDi v0.3.0 — Standalone & Libretro High Performance Release
OpenCDi is an open-source, high-performance Philips CD-i emulator written in Rust, designed for accuracy, modularity, and modern platform integration.
Project Team & Credits
- Project Lead & Maintainer: Gianluca ("sigsantilio")
- Testing, release management, and Windows frontend curation.
- Creator of the Italian retrogaming channel L'Archivio del Sig. Santilio.
- GitHub: @sigsantilio
- Core Contributors:
- ArnoldDeRuiter: Libretro core architecture, Mono-IV chips emulation, deterministic in-memory savestates engine, and CDIC / MPEG audio synchronization.
- OpenCDi Community & Testers
Highlights of Version 0.3.0:
- Official Libretro Core (
opencdi_libretro.dll): Run CD-i games natively inside RetroArch and compatible frontends with zero-latency Runahead and deterministic Rewind support. - Philips CD-i 490 (Mono-IV) Emulation: Initial experimental support for the Mono-IV system architecture, including CIAP (CD-i Audio/Packet), IKAT I/O co-processor, and Dallas DS1216 RTC.
- Advanced Audio Architecture & CD-DA Playback:
- Continuous free-running MPEG audio decode clock synchronized with CPU cycles, cutting startup latency down to 1.6 ms (70 samples) and virtually eliminating FMV audio underrun dropouts.
- Hardware-accurate CDIC
AUDCTL(0x3FA) register and audio map playback engine with sound-group streaming and trueABUFinterrupt timing for flawless sound effects (Zelda: The Wand of Gamelon, Link: The Faces of Evil). - Direct 44.1 kHz stereo CD-DA disc streaming support.
- Proper CDIC sector interrupt decay when disc reads stop, preventing interrupt storm freezes.
- Runtime BIOS & DVC Switcher: Switch BIOS ROMs on the fly (
Ctrl+B) or through the system menu, with zip set unpacking (e.g.cdimono1.zip) and config persistence inopencdi.ini. - Interactive Missing-BIOS Assistant: Built-in visual prompt when no ROM is present to guide users to file selection or opening the
bios/directory in Windows Explorer. - Ultra-Fast In-Memory Savestates: Trait-based deterministic serialization across 1000 slots (
F2save,F4load,F6/F7slot select), covering Mono-I, Mono-IV, and DVC MPEG states with 100% bit-for-bit video and audio roundtrip fidelity. - Exclusive Gamepad / Mouse Modes: Instant toggle (
F9) ensuring pure mouse/lightgun accuracy for shooting classics (Mad Dog McCree, Mad Dog II, Drug Wars) without gamepad axis interference. - High-Definition PNG Screenshots: Capture raw, uncompressed screenshots (
F8/F12) with frame counter stamps. - Enhanced Title Compatibility: Fully verified and playable across a broad range of CD-i games (Hotel Mario, The Apprentice, The 7th Guest, Lost Eden, Dragon's Lair, Chaos Control, Creature Shock, Earth Command, Striker Pro, and more).
Available Downloads & Core Packages:
opencdi-v0.3.0-windows-x64.zip: Complete standalone emulator (Win32 GUI) + Windows x64 Libretro core (opencdi_libretro.dll).opencdi-libretro-android.zip: Native RetroArch Android cores (arm64-v8afor modern 64-bit phones/tablets, andarmeabi-v7afor 32-bit devices).opencdi-libretro-linux.zip: Native RetroArch Linux cores (x86_64for PC/Steam Deck,aarch64for Raspberry Pi 4/5, andarmv7for Raspberry Pi 2/3).
Package Contents (opencdi-v0.3.0-windows-x64.zip):
opencdi.exe: Standalone emulator with Win32 GUI menu, disc swapping, and video aspect controls.opencdi_libretro.dll: Native 64-bit core for RetroArch.opencdi_libretro.info: Libretro core metadata definition.bios/: Dedicated folder for BIOS ROMs (cdi220b.rom,vmpega.rom,cdi490a.rom, etc.).README.txt: Quick-start and controls guide.
Special Acknowledgments:
- The MAME / MESS Team: for hardware documentation on custom Philips and Motorola ICs (SCC68070, MCD212, CDIC, Slave 68HC05).
- The World of CD-i and the CD-i preservation community.