PSP Emulator written in Kotlin for JVM, JS and Native. Can work as PWA.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
@old
assets
docs
dynarek2 Some adjustments Oct 19, 2018
gradle/wrapper
kemu/src/main/kotlin/com/soywiz/kemu Bumped korlibs to 0.30.0 Jun 9, 2018
korau-atrac3plus
kpspemu
pspautotests
psplibdoc
.gitignore
.travis.yml
LICENSE
README.md
build.gradle
build.gradle.old
gradle.properties
gradlew
gradlew.bat
gradlew_linux Migrated to nmpp Oct 19, 2018
gradlew_win
gradlew_wine
package-lock.json
settings.gradle
webpack.config.js

README.md

kpspemu

PSP Emulator done in Kotlin Common Platform with Korge targeting JVM and JS for now

Build Status

Running from source-code:

JVM: ./gradlew runApp JS: ./gradlew compileKotlin2Js && http-server kpspemu/js/web

Or open build.gradle with intelliJ and open kpspemu/common/src/com/soywiz/kpspemu/Main.kt and execute the fun main method

Running tests:

./gradlew check

More advanced homebrew working:

Previous works:

Youtube Coding Video Blog

Current state:

Right now it is capable to run some homebrew in interpreted mode and starts to run some early simple commercial games.

The aim is to create a portable emulator that can run fast in JVM (generating bytecode), JS (generating JavaScript), Android (generating dex or in interpreted mode), C++ targets (using libjit or in interpreted mode).

To achieve this, I have created a library called dynarek that will provide an IR that will generate JS code, JVM bytecode and relevant native code for each supported platform.

The rest of the code is kotlin common and uses korge and all the korlibs libraries to do accelerated portable rendering, input, audio, ui, timers, logging, zlib...