Open source

libretro-kmp

Load and drive libretro emulator cores through one Kotlin Multiplatform API.

Run emulator frames, receive video and audio, send controller inputs, access emulated memory, and save or restore states from Kotlin. Native targets use a C interop or JNI bridge, while the JVM uses JNA. Emulator cores are loaded separately at runtime.

The emulation layer underneath pokemon-client and AI Plays Pokémon, reusable with libretro cores for other consoles too.

Install

Gradle klibs.io
implementation("dev.kotlinds:libretro-kmp:0.1.2")