You do not have permission to edit this page, for the following reason:
Free text:
{{#seo: |title=Vita Homebrew Emulators (Handheld) - GameBrew |title_mode=append |image=DSVita.png |image_alt=DSVita }} A very early experimental version of DS console emulator for ARM32/PS Vita. This runs most games, however consider: * 3D rendering ** Mostly implemented *** Z fighting can occur *** Games using 3D on both screen will have bad framerates *** Some effects like fog are unimplemented * 2D rendering is mostly complete * 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 SoundHle. You can pick them if full HLE breaks anything * Auto frameskip is always used ** Games will feel choppy, you will most likely hover around 20-30 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 == Installation == Download the latest vpk from [https://github.com/Grarak/DSVita/releases releases] and install it through [[VitaShell]]. Install libshacccg.suprx, follow this [https://cimmerian.gitbook.io/vita-troubleshooting-guide/shader-compiler/extract-libshacccg.suprx guide] or just install and open [[VitaDB_Downloader|VitaDB]]. Install [[Kubridge_Vita|kubridge.skprx]] from [https://github.com/bythos14/kubridge/releases releases]. It's recommend overclocking your Vita to 500MHz, by default they are unchanged. Create the folder ux0:dsvita and put your roms there. ==Screenshots== https://dlhb.gamebrew.org/vitahomebrews/DSVita-01.png https://dlhb.gamebrew.org/vitahomebrews/DSVita-02.png https://dlhb.gamebrew.org/vitahomebrews/DSVita-03.png https://dlhb.gamebrew.org/vitahomebrews/DSVita-04.png ==Media== '''DSVita Ace Attorney''' ([https://www.youtube.com/watch?v=qIdUFbej4dc Willi Ye]) <br> <youtube width="640">qIdUFbej4dc</youtube> ==Changelog== '''v0.9.2''' * Fix screen layout settings not being persistent * Fix some 3d translucent rendering bugs * Minor gx fifo parsing speedup * Minor CPU emulation speedup * Add widescreen options * Add more upscaling options * Improve 3d rendering framerate * Implement Retroachievements (very experimental) '''v0.9.1''' * Allow palette I/O operations outside of mapped memory (fixes Newer Super Mario Bros. DS). * Add option to simulate mic blow in pause menu. * Implement 3D texture cache. * Add default 3D upscaling. * Implement w depth buffering. * Implement 3D face culling. * Implement basic 3D shadows. * Improve HLE compatibility (HLE now works with Pokemon HG/SS, Ni no kuni, Ghost Trick, Yu-Gi-Oh! 5D's World Championship 2011, Ace Attorney Investigations 2, possibly more games). * Add more framelimit options (1x, 1.25x, 1.5, 1.75x, 2x, etc.). * Add basic custom screen layout creator. * Add option to hide debug stats. '''v0.9.0''' * Generate function for each possible MMIO access. * Make PS button more responsive. * Remove unnecessary memory copies in dma. * Implement hle context switching for divsqrt. * Implement hle handling of irq. * Optimize constant loadings. * Use fs overlay functions for jit invalidation. * Process 3d polygons/vertices in separate thread. * Remove double copies from rendering pipeline. * Switch to usampler in shader to read vram. * Optimize 3d rendering shader. * Implement missing bg affine shader. * Fix blending with 3d bg. * Initial implemention of display capture. * Bypass twl sdk CPU synchronization, fixes HLE for Pokemon BW/BW2. * Implement swap buffers for 3d frames. * Add option to disable geometry 3d frameskips. * Improve translucent 3d polygon rendering. * Display progressbar when compiling shaders. * Implement 3d lights. '''v0.8.2''' * Don't hle copy32 (Fixes Kingdom Hearts 358/2 Days). * Reduce jit protection range from 16kb to 4kb (Gives slight performance boost to some games). * Auto detect if arm7 block validation is required. * Improve HLE compability. * Consider packed 3ds commands after 0 (Fixes Need for Speed: Most Wanted). '''v0.8.1''' * Added pause menu (press PS Button). * Minor optimizations in CPU Emulation (up to 8% faster). * Mapped vram to software mmu. * Mapped palettes and oam to hardware and software mmu. * Added language setting. * Added more screen layouts. * Added scaling options for each screens. * Added options to swap screens. * Joystick can now be used as Dpad. * Added option to disable audio stretching. * Implemented microphone. * Improved HLE compability. * Removed PartialHle (speedup was too insignificant). * Renamed PartialSoundHle to SoundHle. '''v0.8.0''' * Only invalidate wram when cnt has changed (fixes WarioWare: Touched!) * Allocate frequently used objects at fixed addresses. * Print CPU clock on top right. * Always set irq flag when waiting for irq (Fixes Pokemon BW/2). * Disable checks for self modifying code by default for ARM7. * Implement edge cases of multiple word transfer with fastmem. * Small CPU emulation speedup. * Fix slowmem patching of swb instruction (Fixes Luminous Arc). * Implement sound stretching. * Implement missing HLE sound commands. '''v0.7.0''' * Rotate and size screens by @Schluss-S in [https://github.com/Grarak/DSVita/pull/49 #49] * Rewrite JIT compiler with vixl * Reducing stuttering * Increase JIT cache * Reuse JIT blocks as often as possible * Small performance increase '''v0.6.1''' * Ignore invalid gx cmds (fixes freeze in Final Fantasy XII: Revenant Wings). * Fix wifi rx buffer overflow. * Small 3d speed up. * Fix 3d texture transformations. * Improve HLE compatibility (Mario Kart, Castlevania: Dawn of Sorrow, Super Mario 64, Need for Speed: Underground 2). * Some 3d drawing fixes. '''v0.6.0''' * Fix right audio channel. * Implement hardware fastmem for writes. * Implement bios sqrt. * Read vram in render thread. * Accelerate all fixed point matrix operations with neon. * Implement auto frameskip for 3d geometry engine. * Don't exit guest context when handling interrupts or idle loops. * Speed up jit assembly generation. * Increase cartridge cache size. * Implement Wifi in HLE. * Add option for partial HLE Arm7. * Speed up sound mixing. * Speed up gfx fifo cmds queuing. * Fix 3d polygon clipping. * Implement missing 3d texture sampling. * Fix CPU register store when switching between modes. * Fix excessive jit block invalidations. * Fix ROMs limit in menu. * Implement sound capture. '''v0.5.0''' * Implement fast mem for reading with kubridge. * Implement software fast mem for writing. * Accelerate 3d operations with neon. * Accelerate audio sampling with neon. * Faster JIT compilation. * Implement lookup tables for I/O ports operations. * Faster ROM word lookups. * Remove polygon clipping. * Run scheduler inside guest context. * Use batch I/O operations for DMA and ldm/stm. * Reset jit blocks in chunks. '''v0.4.0''' * Jit rewrite. ** Blocklinking. ** Return stack buffer optimization. * Implement 3d tests. * Improve Arm7 hle compatibility. '''v0.3.1''' *Change ux0:dsvita to ux0:data/dsvita (normal vpks don't have permission to create directories/files at the root). '''v0.3.0''' * Implement vram display (some games use that mode for cutscenes). * Implement saving. * Enable shader cache (long loading times will only happen once). * Increase game compatibilities. * New UI. '''v0.2.0-alpha''' * Basic 3D rendering (still very broken). * Display emulation stats on top right of screen. '''v0.1.0-alpha''' * First Release. == Credits == * [https://github.com/Hydr8gon/NooDS NooDS] was used as reference. A lot of code was taken from there. * [https://github.com/melonDS-emu/melonDS melonDS] for ARM7 HLE implementation and jit optimizations. * [https://github.com/Xiro28/DesmumePSPExperimental DesmumePSPExperimental] for ARM7 HLE implementation. * [https://github.com/pret/pokediamond pokediamond] for ARM7 HLE implementation. * [https://github.com/DenSinH/DSHBA DSHBA] Copied some PPU hardware acceleration implementation (Thanks for xiro28 linking me the repo). * [https://github.com/Rinnegatamante/vitaGL vitaGL] 2D hardware acceleration wouldn't be possible without it. * [https://www.coranac.com/tonc/text/toc.htm Tonc] GBA PPU documentation. * [http://problemkaputt.de/gbatek-index.htm GBATEK] GBA/NDS documentation. * [https://github.com/bythos14/kubridge kubridge] For fastmem implementation. * @TheIronUniverse for livearea assets. == External links == * GitHub - https://github.com/Grarak/DSVita * Reddit - https://www.reddit.com/r/vitahacks/comments/1dcbvnb/ds_vita_release_alpha/ * VitaDB - https://www.rinnegatamante.eu/vitadb/#/info/1220
Advertising: