Editing PSP Emulation
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
=='''PSPHD'''== | =='''PSPHD'''== | ||
The new | The new ps plus psp emulator has a lot of undiscovered functionalities, it even allows patches directly to the emulated Allegrex cpu. | ||
Sadly sony has not made it easy for users to use CLI commands because sony mostly uses lua patches for the psp releases, thus, not many cli commands were needed to be added. Very few commands have a description to their usage inside of the eboot.bin, everything else is just guesswork from the scene. The psp emulator has not gained the same popularity as the ps2 emulator because currently, there is an unofficial PPSSPP core in the unofficial retroarch port for the ps4. and as far as the compatibility and performance goes, the retroarch core is second to no one. This emulator may still hold potential, though sadly it does not seem to have support for gamedata installation and that has led to render many games unplayable. | |||
== Commands == | == Commands == | ||
Line 18: | Line 18: | ||
|- | |- | ||
| --notrophies || || Enable/disable trophies|| | | --notrophies || || Enable/disable trophies|| | ||
|- | |- | ||
| --locale || || || | | --locale || || || | ||
Line 94: | Line 92: | ||
|- | |- | ||
|-style="background-color:#7698FF" | |-style="background-color:#7698FF" | ||
| || Speedhacks | | || Speedhacks || || | ||
|- | |- | ||
| --antialias || off || Turning Anti-Alias Off Improves Performance||--antialias=off | | --antialias || off || Turning Anti-Alias Off Improves Performance||--antialias=off | ||
Line 113: | Line 111: | ||
|- | |- | ||
| --texrecent || true || Optimize texture hashes ||--texrecent=true | | --texrecent || true || Optimize texture hashes ||--texrecent=true | ||
|} | |} | ||
Line 169: | Line 134: | ||
===XXXXYYYYY_patches.lua=== | ===XXXXYYYYY_patches.lua=== | ||
Your lua can be placed as '''scripts\XXXXYYYYY_patches.lua''' | |||
<br>'''Requires Cleanup'''. | |||
====Emulator commands==== | ====Emulator commands==== | ||
Line 368: | Line 334: | ||
|GetReg||axObj.GetReg()|| | |GetReg||axObj.GetReg()|| | ||
|-style="background-color:#D7EF54" | |-style="background-color:#D7EF54" | ||
| Memory editing || || Do note that the offsets on PPSSPP are | | Memory editing || || Do note that the offsets on PPSSPP are different than the ones on the PS4 | ||
|- | |- | ||
| ReadMem32 || axObj.ReadMem32() || Read 4 bytes from offset | | ReadMem32 || axObj.ReadMem32() || Read 4 bytes from offset | ||
Line 422: | Line 388: | ||
[https://www.psdevwiki.com/ps4/Talk:PSP_Emulator_Compatibility_List#Official_PSPemu_Configuration_Files More patches can be found here] | [https://www.psdevwiki.com/ps4/Talk:PSP_Emulator_Compatibility_List#Official_PSPemu_Configuration_Files More patches can be found here] | ||
=====Patches.lua===== | =====Patches.lua===== | ||
'''An official lua created by sony for Patapon 2''' | |||
<pre> | <pre> | ||
-- Lua 5.3 | -- Lua 5.3 | ||
Line 899: | Line 794: | ||
== Emulators == | == Emulators == | ||
<pre>Every emulator is programmed in a | <pre>Every emulator is programmed in a different way, sometimes choosing the right emulator is the only possible way to fix a game. Emulators are not provided pre-installed on the ps4, they have to be unpacked from a backup that's downloaded from the ps store from that specific game. this list includes The typical usage of some of The emulators.</pre> | ||
{| cellspacing="0" cellpadding="2" border="1" class="wikitable" style="text-align: center;" | {| cellspacing="0" cellpadding="2" border="1" class="wikitable" style="text-align: center;" | ||
! Emulator !! Usage !! API Version !! Similar emulators (compatibility) | ! Emulator !! Usage !! API Version !! Similar emulators (compatibility) | ||
Line 916: | Line 811: | ||
|- | |- | ||
| PaRappa the Rapper || An unofficial emulator developed by sony with very bad compatibility || ? || ? | | PaRappa the Rapper || An unofficial emulator developed by sony with very bad compatibility || ? || ? | ||
|- | |- | ||
|} | |} | ||
Line 924: | Line 817: | ||
<br>'''Note''': The memory on PPSSPP is 0x4000 offsets ahead of the memory on the PS4 | <br>'''Note''': The memory on PPSSPP is 0x4000 offsets ahead of the memory on the PS4 | ||
{| cellspacing="0" cellpadding="2" border="1" class="wikitable" style="text-align: center;" | {| cellspacing="0" cellpadding="2" border="1" class="wikitable" style="text-align: center;" | ||
! | ! Offset From !! Offset To !! Name | ||
|- | |- | ||
| || | | 0x1008000000 || 0x10887FFFFF || Allegrex memory(?) | ||
|- | |- | ||
|} | |} | ||
===Registers map=== | ===Registers map=== | ||
<br>Registers | <br>Registers with '''(?)''' are untested. | ||
<br>*'''Note''': The offsets | <br>*'''Note''': The offsets change as the CLI file's content increases, but the offsets should still be somewhere nearby the offsets below. | ||
{| class=wikitable style="border: none; background: none;" | {| class=wikitable style="border: none; background: none;" | ||
! scope=col | GPR | ! scope=col | GPR | ||
! scope=col | Offset | ! scope=col | Offset | ||
| rowspan=900 style="border: none; background: none;"| | | rowspan=900 style="border: none; background: none;"| | ||
! scope=col | FPU | ! scope=col | FPU | ||
! scope=col | Offset | |||
| rowspan=900 style="border: none; background: none;"| | |||
! scope=col | VFPU | |||
! scope=col | Offset | ! scope=col | Offset | ||
|- | |- | ||
| zero || 0x200414CA8? | | zero || 0x200414CA8? || f0 || - || - || - | ||
| | |||
|- | |- | ||
| | | at || 0x200414CAC? || f1 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | v0 || 0x200414CB0 || f2 || - || - || - | ||
| | |||
|- | |- | ||
| | | v1 || 0x200414CB4 || f3 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | a0 || 0x200414CB8 || f4 || - || - || - | ||
| | |||
|- | |- | ||
| | | a1 || 0x200414CBC? || f5 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | a2 || 0x200414CC0? || f6 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | a3 || 0x200414CC4? || f7 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t0 || 0x200414CC8? ||f8|| - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t1 || 0x200414CCC? ||f9 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t2 || 0x200414CD0? || f10 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t3 || 0x200414CD4? ||f11|| - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t4 || 0x200414CD8? || f12 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t5 || 0x200414CDC? || f13 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t6 || 0x200414CE0? || f14 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | t7 || 0x200414CE4? || f15 || - || - || - | ||
|- | |||
| | |||
|- | |- | ||
| | | s0 || 0x200414CE8? || f16 || - || - || - | ||
|- | |- | ||
| | | s1 || 0x200414CEC? || f17 || - || - || - | ||
| | |||
|- | |- | ||
| | | s2 || 0x200414CF0? || f18 || - || - || - | ||
|- | |- | ||
| | | s3 || 0x200414CF4? || f19 || - || - || - | ||
|- | |- | ||
| | | s4 || 0x200414CF8? || f20|| - || - || - | ||
|- | |- | ||
| | | s5 || 0x200414CFC? || f21 || - || - || - | ||
|- | |- | ||
| | | s6 || 0x200414D00? || f22 || - || - || - | ||
|- | |- | ||
| | | s7 || 0x200414D04? || f23|| - || - || - | ||
|- | |- | ||
| | | t8 || 0x200414D08? || f24 || - || - || - | ||
|- | |- | ||
| | | t9 || 0x200414D0C? || f25 || - || - || - | ||
|- | |- | ||
| | | k0 || 0x200414D10 ||f26 || - || - || - | ||
|- | |- | ||
| | | k1 || 0x200414D14 || f27 || - || - || - | ||
|- | |- | ||
| | | gp || 0x200414D18 || f28|| - || - || - | ||
|- | |- | ||
| | | sp || 0x200414D1C || f29 || - || - || - | ||
|- | |- | ||
| | | fp || 0x200414D20 || f30 || - || - || - | ||
|- | |- | ||
| | | {{cellcolors|#D7EF54|#000000}}ra || 0x200414D24 || f31 || - || - || - | ||
|- | |- | ||
| | | ? || 0x20AD14D28 || || || - || - | ||
|- | |- | ||
| | | last syscall? || 0x20AD14D2C || || || - || - | ||
|- | |- | ||
| | | {{cellcolors|#7698FF|#000000}}pc || 0x200414D34 || || || - || - | ||
|- | |- | ||
| | | hi || 0x200414D38 || || || - || - | ||
|- | |- | ||
| | | lo || 0x200414D3C || || || - || - | ||
|- | |||
|- | |||
|- | |- | ||
|} | |} | ||
Line 1,115: | Line 916: | ||
! Issue !! Games affected !! Solution !! Description | ! Issue !! Games affected !! Solution !! Description | ||
|- | |- | ||
| - || || || | |||
|- | |||
|- | |- | ||
|} | |} | ||
Line 1,125: | Line 922: | ||
=LUA include files= | =LUA include files= | ||
<br>Files that need to be placed in the '''/lua_include/''' folder | <br>Files that need to be placed in the '''/lua_include/''' folder | ||
'''ax-gpr-alias.lua''' | '''ax-gpr-alias.lua''' | ||
Line 1,523: | Line 1,185: | ||
│ ├── ax-gpr-alias.lua | │ ├── ax-gpr-alias.lua | ||
│ ├── multiapp.lua | │ ├── multiapp.lua | ||
│ └── pad.lua | │ └── pad.lua | ||
├── scripts | ├── scripts |