Fast NDS Emulator for ARM32/PSVita
This runs most games, however consider:
- 3D rendering
- Polygons and their textures are drawn, however no lighting, any other shading (e.g. toon) nor shadow volumes are implemented
- Games which swap screens every frame for displaying 3D on both screens at the same time, will flicker heavily
- 2D rendering is mostly complete
- Mosaic and some window objects (you will see black screens or silhouettes) are not implemented
- ARM7 HLE will not work with most games
- Disable it if certain games don't boot further, get struck, crash or have any issues
- There are other emulation modes like PartialHle or PartialSoundHle. You can pick them if full HLE breaks anything
- Auto frameskip is always used
- Games will feel choppy, you will most likely hover around 15 fps, even if they run at full game speed
- No scanline rendering, thus games that update VRAM mid frame will not render correctly
- Not many games do this, however games that do use it for scrolling texts
- Grab the latest vpk from releases
- Install
libshacccg.suprx
, follow this guide - Install
kubridge.skprx
from https://github.com/bythos14/kubridge/releases - It's strongly recommend to overclock your vita to 500MHz
- Create the folder ux0:data/dsvita and put your roms there
- They must have the file extensions
*.nds
- They must have the file extensions
Feel free to create an issue if you run into problems, however please make sure before reporting anything the game you are
having issues with exhibits the same behavior with the AccurateLle
setting enabled.
- Install Vitasdk
- Install cargo
- Install cargo vita
RUSTFLAGS="-Zlocation-detail=none -Zfmt-debug=none" cargo vita build vpk -- --release
- NooDS was used as reference. A lot of code was taken from there.
- melonDS for ARM7 HLE implementation and jit optimizations.
- DesmumePSPExperimental for ARM7 HLE implementation.
- pokediamond for ARM7 HLE implementation.
- DSHBA Copied some PPU hardware acceleration implementation (Thanks for xiro28 linking me the repo)
- vitaGL 2D/3D hardware acceleration wouldn't be possible without it
- Tonc GBA PPU documentation
- GBATEK GBA/NDS documentation
- kubridge For fastmem implementation
- @TheIronUniverse for livearea assets
- dolphin For audio stretching code