Editing Talk: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,452: | Line 1,452: | ||
* rfid is hit, let's go to our newly hooked srr0 with 0x2EFCC address. | * rfid is hit, let's go to our newly hooked srr0 with 0x2EFCC address. | ||
* Time to use address preserved in r3. This address going thru few checks, it needs to be in 0x10000000- 0x12FFFFFF range (EE JIT Code). | * Time to use address preserved in r3. This address going thru few checks, it needs to be in 0x10000000- 0x12FFFFFF range (EE JIT Code). | ||
* From this address emulator get single word, that word is used to figure out what mips code wanted to do. This | * From this address emulator get single word, that word is used to figure out what mips code wanted to do. This isn't simple offset but some kind of custom identifier. | ||
* When matching identifier is found, task is performed. Some tasks just jump to function and do what is needed, some continue that hackfest and instead are injected into recompiled code as branches to functions that will perform what game want them to do. | |||
* When matching | |||
* blr is hit, remember that link register is patched earlier to 0x28F8C8 | * blr is hit, remember that link register is patched earlier to 0x28F8C8 | ||
* This function restores previously backed up regs and set link register to value returned by hook. That's all. | * This function restores previously backed up regs and set link register to value returned by hook. That's all. | ||
Line 1,659: | Line 1,658: | ||
== Games with EE threading/interrupt issues == | == Games with EE threading/interrupt issues == | ||
* '''Harry Potter and the Chamber of Secrets''' | * '''Harry Potter and the Chamber of Secrets''' | ||
** Seems to randomly hang on the last stage of loading (ra=0x19bf70). WaitSema calls spotted during the hang. | ** Seems to randomly hang on the last stage of loading (ra=0x19bf70). WaitSema calls spotted during the hang. | ||
Line 1,894: | Line 1,889: | ||
{| class="wikitable" style="font-size:small;" | {| class="wikitable" style="font-size:small;" | ||
|- | |- | ||
! Name !! Start | ! Name !! Start !! End !! Flags !! Notes | ||
|- | |- | ||
| work | | work | ||
Line 2,410: | Line 2,405: | ||
|| 0x13000000 | || 0x13000000 | ||
|| 0xD00000003 | || 0xD00000003 | ||
|| | || | ||
|- | |- | ||
| vu0_jit_code | | vu0_jit_code | ||
Line 2,416: | Line 2,411: | ||
|| 0x18400000 | || 0x18400000 | ||
|| 0xD00000003 | || 0xD00000003 | ||
|| | || | ||
|- | |- | ||
| vu0_jit_data | | vu0_jit_data | ||
Line 2,428: | Line 2,423: | ||
|| 0x22000000 | || 0x22000000 | ||
|| 0xE00000003 | || 0xE00000003 | ||
|| | || | ||
|- | |- | ||
| eerom_jit_lut | | eerom_jit_lut | ||
Line 2,434: | Line 2,429: | ||
|| 0x30000000 | || 0x30000000 | ||
|| 0xE00000003 | || 0xE00000003 | ||
|| | || | ||
|- | |- | ||
| ustack (micro stack) | | ustack (micro stack) | ||
Line 2,501: | Line 2,496: | ||
|| 0x42000B0000001 | || 0x42000B0000001 | ||
|| Thread EEonBE | || Thread EEonBE | ||
|- | |- | ||
|} | |} |