Skip to content

Commit

Permalink
Updated Ratchet & Clank 3: Up Your Arsenal patch as HDD mode no longe…
Browse files Browse the repository at this point in the history
…r has cdvdman labelled as "dev9".
  • Loading branch information
sp193 committed Feb 13, 2019
1 parent 6a859d2 commit 2184ece
Showing 1 changed file with 3 additions and 8 deletions.
11 changes: 3 additions & 8 deletions ee_core/src/patches.c
Original file line number Diff line number Diff line change
Expand Up @@ -331,21 +331,16 @@ static void RnC3_UYA_patches(void *address)
1. if it's a module with no name (first 4 characters are 0s), left-shift once.
2. if it's a module beginning with "Deci", left-shift once.
3. if it's a module beginning with "cdvd", right-shift once.
Otherwise, nothing is done for the module.
Only modules up to before the 3rd last will be considered.
For us, it's about preserving the pointer to the allocated buffer and to adjust it accordingly:
For TOOL units, there are 6 DECI2 modules and 2 libcdvd modules. Therefore the pointer should be right-shifted by 4.
For retail units, there are 2 libcdvd modules. Therefore the pointer should be left-shifted by 2. */

word1 = JAL((unsigned int)&RnC3_AlwaysAllocMem);
switch (GameMode) {
case HDD_MODE:
//For HDD mode, the CDVDMAN module has its name as "dev9", so adjust the shifting accordingly.
#ifdef _DTL_T10000
word2 = 0x00021943; //sra $v1, $v0, 5 For DTL-T10000.
#else
word2 = 0x00021840; //sll $v1, $v0, 1 For retail sets.
#endif
break;
default:
#ifdef _DTL_T10000
word2 = 0x00021903; //sra $v1, $v0, 4 For DTL-T10000.
Expand Down

0 comments on commit 2184ece

Please sign in to comment.