Editing PS2 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,793: | Line 1,793: | ||
* -- bc0f 0x1CF3CC to nop is just another comment, in this case explaining what is changed | * -- bc0f 0x1CF3CC to nop is just another comment, in this case explaining what is changed | ||
[https://www.psdevwiki.com/ps4/Talk:PS2_Classics_Emulator_Compatibility_List#Custom_PS2emu_Configuration_Files Other custom configurations made by users can be found here] | [https://www.psdevwiki.com/ps4/Talk:PS2_Classics_Emulator_Compatibility_List#Custom_PS2emu_Configuration_Files Other custom configurations made by users can be found here] | ||
=Converting cheats into a json= | |||
<pre> | |||
HOW TO CONVERT "PS2 RAW CHEATS" TO EMULATOR (jak) "PS4 GOLDHEN JSON CHEATS"... | |||
Example: | |||
FLATOUT 1, SLUS_209.01 (E0127F2D) | |||
Cash inf | |||
# fixed on 9,999,999 | |||
# DanAQ-ptbr: 20201025, 20201028, 20210316 | |||
208CA4FC 0098967F | |||
THERE ARE 3 (three) STEPS... | |||
1st) The values in PS2 are in "BIG ENDIAN" while in the emulator (jak v2) the | |||
values are in "LOW ENDIAN" (inverted). Just invert the bytes being like this... | |||
FLATOUT 1, SLUS_209.01 (E0127F2D) | |||
Cash inf | |||
# fixed on 9,999,999 | |||
# DanAQ-ptbr: 20201025, 20201028, 20210316 | |||
208CA4FC 7F969800 | |||
2nd) replace the first digit to 808. The "Cheat" above will look like this... | |||
FLATOUT 1, SLUS_209.01 (E0127F2D) | |||
Cash inf | |||
# fixed on 9.999.999 | |||
# DanAQ-ptbr: 20201025, 20201028, 20210316 | |||
80808CA4FC 7F969800 | |||
3rd) Subtract 0x400000 from the memory address... | |||
80808CA4FC | |||
- 400000 | |||
____________ | |||
80804CA4FC | |||
NOTE: WORKS ON GOLDHEN v2.2; | |||
UNFORTUNATELY NEW GOLDHEN (v2.2.2) DOES NOT LIST THE CHEATS | |||
(ignores SLES?????*.json and SLUS?????*.json, listing only CUSA?????*.json); | |||
I STILL DON'T UNDERSTAND HOW THE "ON" AND "OFF" COMMANDS WORK IN JSON, | |||
SOME GAMES ARE TURNING OFF THE "CHEAT". | |||
ATTENTION TO THE TYPES OF BYTES ON PS2, EXAMPLE... | |||
WORD (4 bytes) .. 2000XXXX 3F800000 (float value 1.00) | |||
converts to -> 808000XXXX 0000803F (float value 1.00) | |||
subtract 400000 -> 807FFCXXXX 0000803F (float value 1.00) | |||
SHORT (2 bytes) .. 1000XXXX ????03E8 (int value 1,000) | |||
convert to -> 808000XXXX E803 (int value 1,000) | |||
subtract 400000 -> 807FFCXXXX E803 (int value 1,000) | |||
BYTE (1 byte) .. 0000XXXX ??????63 (int value 99) | |||
convert to -> 808000XXXX 63 (int value 99) | |||
subtract 400000 -> 807FFCXXXX 63 (int value 99) | |||
?? = unused bytes | |||
................................................................................ | |||
GOLDHEN JSON FINAL CHEATS (SLUS20901_01.00.json)... | |||
{ | |||
"name":"FlatOut 1", | |||
"id":"SLUS20901", | |||
"version":"01.00", | |||
"process":"eboot.bin", | |||
"mods": | |||
[ | |||
{ | |||
"name":"Cash inf", | |||
"type":"checkbox", | |||
"memory": | |||
[ | |||
{ | |||
"offset":"80804CA4FC", | |||
"on":"7F969800", | |||
"off":"7E969800" | |||
} | |||
] | |||
} | |||
], | |||
"credits": | |||
[ | |||
"DanAQ-ptbr: 20201025, 20201028, 20210316, 20220404" | |||
] | |||
} | |||
DanAQ-ptbr: 20220414 | |||
</pre> | |||
=Memory Mapping= | =Memory Mapping= |