EmuCoreH is a Sega Dreamcast, Naomi, Naomi 2, and Atomiswave library, launcher, and emulator frontend for Android. It pairs a purpose-built Compose interface with a vendored Flycast core that is built together with the app, so no separate core download is needed.
Website: emucoreh.web.app
The project is under active development. Use your own legally obtained games. Flycast emulates the Dreamcast without a BIOS file when no BIOS dump is installed.
- Flycast-based emulation core built together with the app for ARM64 devices
- Vulkan, OpenGL ES, and software rendering with internal resolution controls
- Game library with Dreamcast and arcade title detection, cover art, search, and per-game settings
- Home hub with shelves, recently played titles, and quick resume
- In-game overlay with rendering, speed, and save state controls, opened with the Back gesture
- Touch controls with a layout editor, plus physical gamepad support
- Save states, VMU and memory card management
- Cheat and texture replacement support for compatible games
- RetroAchievements and optional Discord integration
- Localized interface in 18 languages for phones, tablets, and Android TV
This repository contains the Android application, its Kotlin UI, the JNI frontend, the vendored Flycast sources, and the Gradle module that builds the emulation core for Android. No games, BIOS files, save data, or account credentials are included.
- Kotlin + Jetpack Compose
- Android DataStore and Room
- JNI bridge to native C++ built with CMake and the Android NDK
- Vendored Flycast core built as a libretro library and driven by the app's own frontend
- Vulkan and OpenGL ES rendering paths with a shader chain runtime
- RetroAchievements integration through rcheevos
- Optional Discord Social SDK integration
EmuCoreH version 0.0.1 currently targets Android with:
minSdk 26(Android 8.0)targetSdk 37- package id
com.sbro.emucoreh - version
0.0.1 - ARM64 devices only
- Android Studio with Android SDK and NDK configured
- JDK 17
- Android SDK 37 and Android NDK
29.0.14206865 - CMake
3.30.5
.\gradlew :app:assembleDebug.\gradlew :app:assembleReleaseInstall app/build/outputs/apk/debug/app-debug.apk on an ARM64 Android device.
Discord support is built when a compatible Discord Social SDK directory is supplied through emucorex.discord.sdkDir in local.properties, a Gradle property with the same name, or DISCORD_SDK_DIR. The directory must contain include/discordpp.h, arm64-v8a/libdiscord_partner_sdk.so, and discord_partner_sdk.aar. The SDK is not included in this repository.
app/Android application, Kotlin UI, and JNI frontend sourcesapp/src/main/cppNative bridge and core integrationapp/src/main/resAndroid resources and translationscore/Vendored Flycast sourcescore-android/Gradle module that builds the Flycast core for Androidtools/Local release, catalog, and cover tooling (not part of the app build)
CHD, CDI, GDI, and CUE/BIN images are the main game formats. LST, DAT, ZIP, 7Z, and M3U are supported as well. Arcade content for Naomi, Naomi 2, and Atomiswave runs from ROM sets. Dreamcast BIOS files are optional: without one the core boots through its HLE BIOS. No games, BIOS files, save data, or account credentials are included here.
- Game images, BIOS files, save data, and account credentials are not distributed with this project.
- Compatibility, performance, and graphics behavior vary by game, device, renderer, and driver stack.
EmuCoreH builds on Flycast. The root LICENSE is an exact copy of Flycast's upstream license file (GPL-2.0). The vendored core and its dependencies retain their copyright and license notices in core/.
Thanks to the Flycast contributors and to the RetroAchievements team for rcheevos.
EmuCoreH is independent of Sega, Flycast, IGDB, Discord, and RetroAchievements. Dreamcast, Naomi, Naomi 2, and Atomiswave are trademarks of Sega. Game artwork and game data belong to their respective owners.
If you want to support ongoing development:
- Patreon: https://www.patreon.com/c/emucore/membership
- Discord: https://discord.com/invite/c5EBeNRpz2
- More apps by the author: Google Play developer page