gpSP for libretro.
Go to file
2024-10-06 16:26:28 -05:00
3ds [3DS] Move has_rosalina to avoid duplicate definitions 2020-08-23 12:07:50 -07:00
arm [dynarec] "Fix" ARM-mode STM instruction writeback 2023-11-21 23:35:07 +01:00
bios Checking in Normatt's BIOS source code for reference and development. 2021-09-07 00:28:31 +02:00
jni Update version and README 2024-01-15 01:04:00 +01:00
libretro Add support for RetroArch cheats. 2024-02-04 20:24:26 +01:00
mips Remove the last nested C functions (in the mips drc) 2023-12-31 20:49:38 +01:00
tests Add MIPS codegen tests 2023-01-05 21:29:20 +01:00
tools Add optional colour correction + interframe blending 2020-09-21 18:03:58 +01:00
x86 [dynarec] "Fix" ARM-mode STM instruction writeback 2023-11-21 23:35:07 +01:00
.gitignore Add optional colour correction + interframe blending 2020-09-21 18:03:58 +01:00
.gitlab-ci.yml Add libnx gitlab builds 2024-02-10 10:37:11 +01:00
.travis.yml add travis build script 2017-10-23 21:15:47 -04:00
bios_data.S Export double symbol to cover Win but also Apple compilers 2021-03-23 00:50:34 +01:00
cheats.c Fix reset() issue with dynarec flushing 2023-06-09 20:21:35 +02:00
cheats.h Fix small buf and add cheat error messages 2021-05-05 21:15:27 +02:00
common.h Implement RFU over netpacket interface (version 1) 2024-01-03 17:56:02 +01:00
control (Theos iOS) Add Theos iOS target 2014-12-23 08:58:58 +01:00
COPYING Avoid proprietary format in copying, HAVE_DYNAREC in armv. 2014-12-13 20:58:09 -02:00
cpu_instrument.h Move stats code out of cpu.c 2023-11-02 23:39:38 +01:00
cpu_threaded.c Reduce maximum block size and exit count 2023-12-31 18:18:40 +01:00
cpu.cc [Interp] Minor cleanup, also fix flag collapsing across SWI 2023-12-09 11:16:58 +01:00
cpu.h Move interpreter to use CXX so that we can simplify some bits 2023-11-03 00:09:08 +01:00
gba_cc_lut.c Add optional colour correction + interframe blending 2020-09-21 18:03:58 +01:00
gba_cc_lut.h Add optional colour correction + interframe blending 2020-09-21 18:03:58 +01:00
gba_memory.c Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
gba_memory.h Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
gba_over.h fix missing open-curly-braces 2024-08-24 23:51:29 +02:00
gbp.c Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
gpsp_config.h Update version and README 2024-01-15 01:04:00 +01:00
input.c Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
input.h Improve savestate loading to avoid corrupting the current state 2023-09-07 20:26:44 +02:00
link.T show undefined referances. 2014-12-09 01:00:31 +01:00
main.c Implement RFU over netpacket interface (version 1) 2024-01-03 17:56:02 +01:00
main.h Implement RFU over netpacket interface (version 1) 2024-01-03 17:56:02 +01:00
Makefile Fix iOS build 2024-10-06 10:14:17 -04:00
Makefile.common Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
memmap.c Improve memory mapping routines 2023-12-22 01:40:05 +01:00
memmap.h Simplify MMAP machinery for Win/Lin/Mac/Android 2021-11-05 18:23:05 +01:00
original_readme.txt Update version and README 2024-01-15 01:04:00 +01:00
README.md Update version and README 2024-01-15 01:04:00 +01:00
retro_inline.h Add optional colour correction + interframe blending 2020-09-21 18:03:58 +01:00
rfu.c Fix client-id indexing bug, improve connection creation 2024-01-13 10:58:24 +01:00
savestate.c Improve savestate loading to avoid corrupting the current state 2023-09-07 20:26:44 +02:00
savestate.h Move interpreter to use CXX so that we can simplify some bits 2023-11-03 00:09:08 +01:00
serial.c Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
serial.h Implement GB Player serial comms 2024-01-04 00:45:39 +01:00
sound.c Improve savestate loading to avoid corrupting the current state 2023-09-07 20:26:44 +02:00
sound.h Improve savestate loading to avoid corrupting the current state 2023-09-07 20:26:44 +02:00
video.cc Fix horizontal window inversion logic. 2023-09-19 00:19:26 +02:00
video.h Rewrite bitmap rendering routines 2023-07-21 19:15:05 +02:00

gpSP for libretro

This is a fork of notaz's gpSP (https://github.com/notaz/gpsp) for libretro frontends (like Retroarch). Check the original_readme.txt file for more info.

The current maintainer/main contributor is davidgfnet (check out the repo at https://github.com/davidgfnet/gpsp). This version has a bunch of fixes and features.

Feature list

gpSP features a dynamic recompiler that makes it quite fast (compared to other emulators at least). It supports x86/x64, ARMv6/7 and ARMv8 and MIPS (32 and 64 bits), for other platforms an interpreter is available (albeit slower). Both little and big endian systems are supported. Some supported platforms are PSP, PS2, GameCube/Wii, Nintendo 3DS and Switch, Dingux/OpenDingux and of course PC and Android.

At the moment this emulator lacks a native UI and must be played using some libretro frontend (we recommend Retroarch). A list of available frontends can be found at https://docs.libretro.com/development/frontends/

Many new features (compared to the original release) are:

  • Wireless Adapter networked multiplayer!
  • Rumble support (including Gameboy Player emulation)
  • New video renderer, fixes many graphical bugs & adds many effects (mosaic).
  • Many long standing issues have been fixed.
  • Slightly better performance (for some games at least!)
  • Better audio (fixed many audio related bugs).
  • Ships an opensource BIOS replacement,we recommend using the original though.

Planned features (aka the TODO list)

Some features I'd like to see (in loose priority order):

  • GBA link emulation (for some games, perhaps with patches).
  • Improve RFU (Wireless Adapter) emulation through research.
  • Bringing back the native UI for PC, PSP and perhaps PS2/3DS/Wii.
  • A native UI with Multiplayer support for portable devices with wifi support.
  • A better BIOS emulation and perhaps a newer better open BIOS.
  • Dynarec rewrite: make it easier to add new drcs and share more code.
  • Adding some funny DRCs like PowerPC or SH4.