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: | ||
== pspemu == | == pspemu == | ||
Used for "PSP Minis" and "PSP remasters". The PSP Emulator works by accessing an encrypted ISO-9660 image. <br> | Used for "PSP Minis" and "PSP remasters". The PSP Emulator works by accessing an encrypted ISO-9660 image. <br> | ||
Line 267: | Line 92: | ||
2) within the emulator defined for a bunch of games (see [[Emulation#Special_notes| Special notes]]) | 2) within the emulator defined for a bunch of games (see [[Emulation#Special_notes| Special notes]]) | ||
Note: The Emulator can be patched (1 Bit) to read a non encrypted MINIS2.EDAT | Note: The Emulator can be patched (1 Bit) to read a non encrypted MINIS2.EDAT. | ||
Here are the commands what you can define for the psp emulator: | Here are the commands what you can define for the psp emulator: | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
Line 280: | Line 104: | ||
| || VERSION = 0x%x || VERSION = 0xFFFFFFFF || | | || VERSION = 0x%x || VERSION = 0xFFFFFFFF || | ||
|- | |- | ||
| || BOOT_MODE = %llx || | | || BOOT_MODE = %llx || || | ||
100010000 = | 100010000 = Minis | ||
200010000 = | 200010000 = Remaster | ||
|- | |- | ||
| || REMASTER_VERSION = 0x%x || || | | || REMASTER_VERSION = 0x%x || || | ||
Line 308: | Line 121: | ||
|- | |- | ||
| || TRANS_CACHE_SIZE = %llx || TRANS_CACHE_SIZE = 1000000 || | | || TRANS_CACHE_SIZE = %llx || TRANS_CACHE_SIZE = 1000000 || | ||
2000000 = (Default | 2000000 = (Default) | ||
1000000 = | 1000000 = | ||
|- | |- | ||
| || HOSTFS_PATH = %lld || || | | || HOSTFS_PATH = %lld || || | ||
Line 337: | Line 150: | ||
0 = | 0 = | ||
1 = small picture | 1 = small picture | ||
2 = (Default | 2 = (Default) | ||
3 = | 3 = | ||
4 = | 4 = | ||
... | ... | ||
|- | |- | ||
| AW. {|| || || indicates LINEAR_ADRS to CLOAD_MODE optional setting following | | AW. {|| || || indicates LINEAR_ADRS to CLOAD_MODE optional setting following | ||
|- | |- | ||
| || LINEAR_ADRS = %llx || AW.LINEAR_ADRS = | | || LINEAR_ADRS = %llx || AW.LINEAR_ADRS = 40 || | ||
0 = (Default) | |||
40 = | |||
|- | |- | ||
| || SINGLE_BUF = %llx || AW.SINGLE_BUF = | | || SINGLE_BUF = %llx || AW.SINGLE_BUF = 880 || | ||
0 = (Default) | |||
80 = | |||
880 = | |||
|- | |- | ||
| || DISABLE_FB_TEX = %llx || AW.DISABLE_FB_TEX = | | || DISABLE_FB_TEX = %llx || AW.DISABLE_FB_TEX = 100 || | ||
0 = (Default) | |||
100 = | |||
|- | |- | ||
| || REUSE_ADRS = %llx || AW.REUSE_ADRS = 110000 || | | || REUSE_ADRS = %llx || AW.REUSE_ADRS = 110000 || | ||
Line 371: | Line 174: | ||
110000 = | 110000 = | ||
|- | |- | ||
| || SINGLE_BUF2 = %llx || | | || SINGLE_BUF2 = %llx || || | ||
|- | |- | ||
| || DECODE_WAIT = %llx || AW.DECODE_WAIT = | | || DECODE_WAIT = %llx || AW.DECODE_WAIT = 10000 || in order to slowdown ? | ||
0 = (Default) | |||
10000 = | |||
10000 = | |||
|- | |- | ||
| || DISCARD_EDGE = %llx || AW.DISCARD_EDGE = | | || DISCARD_EDGE = %llx || AW.DISCARD_EDGE = 20000 || | ||
0 = (Default) | |||
20000 = | |||
|- | |- | ||
| || RECYCLE_RD_TEX = %llx || || | | || RECYCLE_RD_TEX = %llx || || | ||
|- | |- | ||
| || EXT_MODE = %llx || AW.EXT_MODE = 3 || | | || EXT_MODE = %llx || AW.EXT_MODE = 3 || | ||
0 = (Default | 0 = (Default) | ||
Uses different SPU ELF for | Uses different SPU ELF for transparency/textures behavior | ||
1 = | 1 = | ||
2 = | 2 = | ||
3 = | 3 = | ||
|- | |- | ||
| || THR_PIXEL_OFST = %llx || AW.THR_PIXEL_OFST = 0 || | | || THR_PIXEL_OFST = %llx || AW.THR_PIXEL_OFST = 0 || | ||
Line 411: | Line 197: | ||
3EFFFFFF = (default) | 3EFFFFFF = (default) | ||
|- | |- | ||
| || EXT_CMD = %llx || AW.EXT_CMD = 2 || | | || EXT_CMD = %llx || AW.EXT_CMD = 2 || | ||
0 = (Default) | 0 = (Default) | ||
1 = | 1 = | ||
2 = | 2 = | ||
3 = | 3 = | ||
|- | |- | ||
| || VRAM_MODE = %llx || AW.VRAM_MODE = 1 || | | || VRAM_MODE = %llx || AW.VRAM_MODE = 1 || | ||
0 = Disabled (default) | 0 = Disabled (default) | ||
1 = Enabled | 1 = Enabled | ||
|- | |- | ||
| || CLOAD_MODE = %llx || AW.CLOAD_MODE = 1 || (Note: Only available since 4.30?) | | || CLOAD_MODE = %llx || AW.CLOAD_MODE = 1 || (Note: Only available since 4.30?) | ||
0 = Disabled (default) | 0 = Disabled (default) | ||
1 = Enabled | 1 = Enabled | ||
Displays Selection Menu: Remaster/Adhoc ? | |||
|- | |- | ||
| } || || || | | } || || || | ||
Line 445: | Line 217: | ||
|- | |- | ||
| || SRC_NOIZ = %llx || || | | || SRC_NOIZ = %llx || || | ||
|- | |- | ||
| || SLEEP = %llx || AUDIO.SLEEP = 421 || | | || SLEEP = %llx || AUDIO.SLEEP = 421 || | ||
0 = (Default) | 0 = (Default) | ||
421 = | 421 = | ||
|- | |- | ||
| || DECODE_LIMIT = %llx || || | | || DECODE_LIMIT = %llx || || | ||
|- | |- | ||
| } || || || | | } || || || | ||
Line 466: | Line 229: | ||
0 = Disabled (Default) | 0 = Disabled (Default) | ||
1 = Enabled | 1 = Enabled | ||
|- | |- | ||
| || VMX_FOR_FPU = %lld || || | | || VMX_FOR_FPU = %lld || || | ||
0 = Disabled | 0 = Disabled | ||
1 = Enabled (Default) | 1 = Enabled (Default) | ||
|- | |- | ||
| || FPU_FS_SUPPORT = %lld || || | | || FPU_FS_SUPPORT = %lld || || | ||
0 = Disabled | 0 = Disabled | ||
1 = Enabled (Default) | 1 = Enabled (Default) | ||
|- | |- | ||
| || MIPS_CODE_BLOCK_SIZE = %lld || MIPS_CODE_BLOCK_SIZE = 8192 || | | || MIPS_CODE_BLOCK_SIZE = %lld || MIPS_CODE_BLOCK_SIZE = 8192 || | ||
Line 498: | Line 252: | ||
| || LINCOLN_START_SIZE = %llx || || ELF Size? | | || LINCOLN_START_SIZE = %llx || || ELF Size? | ||
|- | |- | ||
| || TRANSLATOR_PATCH[%lld] = { || | | || TRANSLATOR_PATCH[%lld] = { %08x } || || | ||
%lld = Number of patches to allocate<br> | |||
Format goes like this - all values being 32Bit hexdecimal:<br> | |||
= { start_address? end_address? patch1 patch2 .... (optional: count_for_buff2 buff2_value1 buff2_value2..) } | |||
Format goes like this - all values being 32Bit hexdecimal | |||
|- | |- | ||
| || OSK_ENGLISH = %lld || || On Screen Keyboard | | || OSK_ENGLISH = %lld || || On Screen Keyboard | ||
Line 614: | Line 354: | ||
|- | |- | ||
| || ADDITIONAL_KEY_ASSIGN = %llx || ADDITIONAL_KEY_ASSIGN = 0000000047C6C544 || | | || ADDITIONAL_KEY_ASSIGN = %llx || ADDITIONAL_KEY_ASSIGN = 0000000047C6C544 || | ||
0000000047C6C544 : | 0000000047C6C544 : maps right analog stick, usefull for 3rd person camera viewing | ||
0000000048C0C940 : | 0000000048C0C940 : maps L + R to right analog stick left and right | ||
8000000000000000 : unknown. Note: Possibly switches X/O buttons, to be confirmed. | 8000000000000000 : unknown. Note: Possibly switches X/O buttons, to be confirmed. | ||
|- | |- | ||
Line 623: | Line 362: | ||
Ese = convert characters | Ese = convert characters | ||
|- | |- | ||
| || FAKE_PATH = %s || || (max. | | || FAKE_PATH = %s || || (max. lenght 0x400 bytes) | ||
|- | |- | ||
| || SAVEDATA_LOAD_CACHE_TARGET_NAME = %s || SAVEDATA_LOAD_CACHE_TARGET_NAME = ULJM05637DQUEST || | | || SAVEDATA_LOAD_CACHE_TARGET_NAME = %s || SAVEDATA_LOAD_CACHE_TARGET_NAME = ULJM05637DQUEST || | ||
Line 648: | Line 387: | ||
|- | |- | ||
| || VSYNC_OFFSET_US = %lld || VSYNC_OFFSET_US = 8341 || | | || VSYNC_OFFSET_US = %lld || VSYNC_OFFSET_US = 8341 || | ||
8341 | 8341 = 0x2095 (Default) | ||
2000 = 0x07D0 (Legend of Heroes/Eiyū Densetsu HD Remasters) | |||
2000 | |||
|- | |- | ||
| || ADHOC_PARTY = %llx || ADHOC_PARTY = 1 || | | || ADHOC_PARTY = %llx || ADHOC_PARTY = 1 || | ||
0 = Disabled (Default | 0 = Disabled (Default) | ||
1 = Enable Ad hoc Multiplayer | 1 = Enable Ad hoc Multiplayer | ||
|- | |- | ||
| || GPI = 0x%llx || || | | || GPI = 0x%llx || || | ||
Line 697: | Line 435: | ||
|- | |- | ||
|} | |} | ||
=== Special notes === | === Special notes === | ||
Line 3,148: | Line 2,884: | ||
(16 bit (target), 16 bit (source)) | (16 bit (target), 16 bit (source)) | ||
0000000047C6C544 : Remaps D-pad to the right stick ? | 0000000047C6C544 : Remaps D-pad (camera control) to the right stick ? | ||
0000000048C0C940 : Remaps L and R buttons to the right-stick-left and right-stick-right ? | 0000000048C0C940 : Remaps L and R buttons to the right-stick-left and right-stick-right ? | ||
0000000048C6C944 : Remaps L and R buttons to the right stick ? | 0000000048C6C944 : Remaps L and R buttons to the right stick ? | ||
Line 3,154: | Line 2,890: | ||
8000000000000000 : Unknown. Note: Possibly switches X/O buttons, to be confirmed. | 8000000000000000 : Unknown. Note: Possibly switches X/O buttons, to be confirmed. | ||
For each byte on 0x47C6C544, binary: | |||
4 7 C 6 C 5 4 4 = 0x47C6C544 | 4 7 C 6 C 5 4 4 = 0x47C6C544 | ||
01 00||01 11 11 00||01 10 11 00||01 01 01 00||01 00 | 01 00||01 11 11 00||01 10 11 00||01 01 01 00||01 00 | ||
|| || || || || | || || || || || | ||
Right |D-Pad D-Pad D-Pad D-Pad | Left | Left Down Right Up | ||
on |D-Pad D-Pad D-Pad D-Pad | |||
right | |||
AStick. | |||
For each byte on 0x48C6C944, binary: | |||
4 8 C 6 C 9 4 4 = 0x48C6C944 | 4 8 C 6 C 9 4 4 = 0x48C6C944 | ||
01 00||10 00 11 00||01 10 11 00||10 01 01 00||01 00 | 01 00||10 00 11 00||01 10 11 00||10 01 01 00||01 00 | ||
|| || || || || | || || || || || | ||
Left | L1 Down R1 Up | |||
on D-Pad D-Pad | |||
Left | right | ||
AStick. | |||
{| class="wikitable" style="float:left; margin:5px;" | {| class="wikitable" style="float:left; margin:5px;" | ||
Line 3,272: | Line 3,005: | ||
**Stick directions could be maped to axis: {{padlx}} {{padly}} {{padrx}} {{padry}} | **Stick directions could be maped to axis: {{padlx}} {{padly}} {{padrx}} {{padry}} | ||
**There are more button icons if needed in [[TemplateTest#Buttons]] page <!-- delete this line when the tables are completed --> | **There are more button icons if needed in [[TemplateTest#Buttons]] page <!-- delete this line when the tables are completed --> | ||
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude> | {{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude> |