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: | Line 1: | ||
TODO: Please remove unneeded uppercase letters not at the start of sentences. | |||
* This Is Not Elon Musk Here :P - [[User:Roxanne|Roxanne]] | |||
==Regs== | ==Regs== | ||
Line 245: | Line 248: | ||
Same goes for "kernel" injections, they are also based on ID + Hash + address. Generally all "injections" should be safe to be enabled by configs. There is really small chance for hash/address(and id) collision. Not to be confused with "native" / "native-patch" ! | Same goes for "kernel" injections, they are also based on ID + Hash + address. Generally all "injections" should be safe to be enabled by configs. There is really small chance for hash/address(and id) collision. Not to be confused with "native" / "native-patch" ! | ||
=RESEARCH TO DO= | =RESEARCH TO DO= | ||
Line 308: | Line 262: | ||
|- | |- | ||
| Find out what some of the gs commands do and edit their description || Infelicitous! | | Find out what some of the gs commands do and edit their description || Infelicitous! | ||
|- | |- | ||
| Implement a EE memory patch for ratchet up your arsenal || Not trivial obviously | | Implement a EE memory patch for ratchet up your arsenal || Not trivial obviously | ||
Line 809: | Line 761: | ||
addr += 0x18 | addr += 0x18 | ||
dump() | dump() | ||
= | |||
=Theory= | |||
--[[User:Scalerize|Scalerize]] ([[User talk:Scalerize|talk]]) 19:43, 25 July 2023 (CEST) | |||
<pre> | |||
FastForwardClock is basically accurate addsub/muldiv but for the EE's calculations. | |||
| | It seems that Sony had optimized this emulator to estimate what the result will be and just puts it there. | ||
Explanation: | |||
0x0: addiu v0,zero,-0x1 | |||
0x4: addiu v1,v1,0x1 | |||
0x8 bne v1,v0,0x4 | |||
What happens if FastForwardClock was not used on 0x4? the v1 register gets an instant result of 0xffffffff. | |||
But if it were used, the EE doesn't estimate what the result will be and just processes 0x1 after 0x1 until it reaches 0xffffffff. | |||
I can confirm that this theory is real after testing. | |||
</pre> | |||