dotfiles/PCSX2/cheats_ws/FC26483A.pnach

134 lines
No EOL
9.4 KiB
Text

gametitle=War of the Monsters (NTSC-J) [SLPM-65412]
comment=Widescreen hacks by Aced14
//16:9 Widescreen
//Title Menu
patch=1,EE,206E9100,extended,43BA0000 //43F80000 - Title Menu Master X FOV
patch=1,EE,206E9120,extended,3F206D3A //3EF0A3D7 - Title Menu Master Y FOV
//Crush-O-Rama Camera Distance (normally based on X FOV)
patch=1,EE,2011F8C4,extended,00000000 //4615BDC2 - Crush-O-Rama Camera Distance Fix #1
patch=1,EE,2011F8FC,extended,00000000 //46020002 - Crush-O-Rama Camera Distance Fix #2
//1 Player
patch=1,EE,206E8EC0,extended,43900000 //43C00000 - 1P Master X FOV
patch=1,EE,206E8EE0,extended,3F206D3A //3EF0A3D7 - 1P Master Y FOV
patch=1,EE,206E9280,extended,43900000 //43C00000 - Unified Master X FOV
patch=1,EE,206E92A0,extended,3F206D3A //3EF0A3D7 - Unified Master Y FOV
patch=1,EE,101439C0,extended,0000C33A //3C01C30A - 1P + Unified Master X P1 HUD #1
patch=1,EE,101439C4,extended,00006666 //34214A3D - 1P + Unified Master X P1 HUD #2
patch=1,EE,10145360,extended,0000001A //24050023 - 1P + Unified P1 "WINS #" X Position (35 -> 26)
patch=1,EE,10146EEC,extended,0000001E //24050028 - 1P + Unified P1 Pickup Notification X Position (40 -> 30)
patch=1,EE,101D409C,extended,00000208 //240501E0 - 1P Core Meltdown "#" Timer X Position (480 -> 520)
//2 Players - Separator Bar
patch=1,EE,10145878,extended,0000FFFB //2473FFFA - 2P Separator Bar Width (-6 -> -5)
//2 Players - Unified View Black Bar Fix
//Prevents black bar from appearing in the far right of unified view in 2 player matches
patch=1,EE,E0010001,extended,0070A6C4 //00000000 - If gUseUnifiedView variable is 1...
patch=1,EE,201896D8,extended,00000000 //0C0515DA - Remove reference to buildSeparator function
patch=1,EE,E0010000,extended,0070A6C4 //00000000 - If gUseUnifiedView variable is 0...
patch=1,EE,201896D8,extended,0C0515DA //0C0515DA - Restore reference to buildSeparator function
//2 Players - Unified View Black Bar Fix (alternate MIPS version)
//Useful if injecting the fix into a hacked ELF or if using an older PS2 cheat device.
//patch=1,EE,201896D8,extended,0C07FFAC //0C0515DA - jal $001ffeb0 - Jump to injected MIPS instructions (instead of buildSeparator function)
//patch=1,EE,201FFEB0,extended,3C020071 //24020038 - lui v0, $0071 - Load gUseUnifiedView variable into v0 register #1
//patch=1,EE,201FFEB4,extended,8C42A6C4 //00A73821 - lw v0, $a6c4(v0) - Load gUseUnifiedView variable into v0 register #2
//patch=1,EE,201FFEB8,extended,14400003 //00822018 - bne v0, zero, $001ffec8 - Skip next 2 lines (after below one) if gUseUnifiedView variable isn't equal to 0
//patch=1,EE,201FFEBC,extended,00000000 //00C84021 - nop - Delay slot
//patch=1,EE,201FFEC0,extended,080515DA //3C020075 - j $00145768 - Jump to buildSeparator function
//patch=1,EE,201FFEC4,extended,00000000 //00073900 - nop - Delay slot
//patch=1,EE,201FFEC8,extended,03E00008 //244289A0 - jr ra - Jump return
//patch=1,EE,201FFECC,extended,00000000 //00084100 - nop - Delay slot
//2 Players - Player 1
patch=1,EE,206E8F80,extended,43840000 //43B00000 - 2P P1 Master X FOV
patch=1,EE,206E8FA0,extended,3F206D39 //3EF0A3D7 - 2P P1 Master Y FOV
patch=1,EE,101439F0,extended,0000C2C7 //3C01C292 - 2P P1 Master X HUD #1
patch=1,EE,101439F4,extended,00000000 //3421FE77 - 2P P1 Master X HUD #2
patch=1,EE,10146D10,extended,0000001A //24050022 - 2P P1 Pickup Notification X Position (34 -> 26)
patch=1,EE,1014525C,extended,00000018 //24050020 - 2P P1 "WINS #" X Position (32 - 24)
patch=1,EE,1012F488,extended,00000018 //24050020 - 2P P1 Dodgeball "P1 #" X Position (32 -> 24)
patch=1,EE,1011B21C,extended,00000018 //24050020 - 2P P1 Big Shot "P1 #" X Position (32 -> 24)
patch=1,EE,1012E680,extended,00000018 //24050020 - 2P P1 Crush-O-Rama "P1 #" X Position (32 -> 24)
//2 Players - Player 2
patch=1,EE,206E9040,extended,43840000 //43B00000 - 2P P2 Master X FOV
patch=1,EE,206E9060,extended,3F206D39 //3EF0A3D7 - 2P P2 Master Y FOV
patch=1,EE,10143A38,extended,000042C7 //3C014292 - 2P P2 Master X HUD #1
patch=1,EE,10143A3C,extended,00000000 //3421FE77 - 2P P2 Master X HUD #2
patch=1,EE,10143A04,extended,0000433A //3C01430A - Unified Master X P2 HUD #1
patch=1,EE,10143A08,extended,00006666 //34214A3D - Unified Master X P2 HUD #2
patch=1,EE,10145378,extended,00000262 //24050258 - Unified P2 "WINS #" X Position (600 -> 610)
patch=1,EE,10146F20,extended,00000262 //24050258 - Unified P2 Pickup Notification X Position (600 -> 610)
patch=1,EE,10146D3C,extended,00000125 //2405011C - 2P P2 Pickup Notification X Position (284 -> 293)
patch=1,EE,10145274,extended,00000122 //24050118 - 2P P2 "WINS #" X Position (280 -> 290)
patch=1,EE,1012F55C,extended,00000131 //2405012C - 2P P2 Dodgeball "P2 #" X Position (300 -> 305)
patch=1,EE,1011B304,extended,00000275 //24050271 - 2P P2 "P2 #" Big Shot X Position (625 -> 629)
patch=1,EE,1012E7BC,extended,00000275 //24050271 - 2P P2 Crush-O-Rama "P2 #" X Position (625 -> 629)
//Health Icons
patch=1,EE,202A77B8,extended,00000014 //0000001A - Health Icon 1 Inner Width
patch=1,EE,202A7848,extended,00000014 //0000001A - Health Icon 1 Outer Width
patch=1,EE,202A77DC,extended,00000014 //0000001A - Health Icon 2 Inner Width
patch=1,EE,202A786C,extended,00000014 //0000001A - Health Icon 2 Outer Width
patch=1,EE,202A7800,extended,00000014 //0000001A - Health Icon 3 Inner Width
patch=1,EE,202A7890,extended,00000014 //0000001A - Health Icon 3 Outer Width
patch=1,EE,202A7824,extended,00000014 //0000001A - Health Icon 4 Inner Width
patch=1,EE,202A78B4,extended,00000014 //0000001A - Health Icon 4 Outer Width
//Distant Shadows
patch=1,EE,2025EF68,extended,43C00000 //44000000 - Distant Shadows Width #1 (ZAxisAllLoop)
patch=1,EE,2025F030,extended,43C00000 //44000000 - Distant Shadows Width #2 (ZAxisClipXY2)
//Sprites
patch=1,EE,2025F0D0,extended,43C00000 //44000000 - Nearby Sprites Width (SimpSpriteStart)
patch=1,EE,2025F220,extended,43C00000 //44000000 - Distant Sprites Width (SpriteAllStart)
//Loading Bar
patch=1,EE,2022900C,extended,3404014A //8FA40008 - Loading Bar Master X Width
//Generic Font - Width
//Impacts top + bottom title screen text, unselected unlocks screen text, and pause menu text.
patch=1,EE,101FF94C,extended,00000007 //24060005 - Generic Font Width (5 -> 7)
//Sub Pixels Font - Width and Spacing
//Impacts all other text.
patch=1,EE,201FFEF8,extended,0807FF6E //00832018 - j $001ffdb8 - Jump to injected MIPS instructions
patch=1,EE,201FFDB8,extended,3C013F40 //27BDFFA0 - lui at, $3f40 - Set $f29 register to .75 #1
patch=1,EE,201FFDBC,extended,4481E800 //24030038 - mtc1 at, $f29 - Set $f29 register to .75 #2
patch=1,EE,201FFDC0,extended,3C013F00 //7FB20030 - lui at, $3f00 - Set $f30 register to .5 #1
patch=1,EE,201FFDC4,extended,4481F000 //3C020073 - mtc1 at, $f30 - Set $f30 register to .5 #2
patch=1,EE,201FFDC8,extended,4485F800 //00839018 - mtc1 a1, $f31 - Convert int to float #1
patch=1,EE,201FFDCC,extended,4680FFE0 //7FB10020 - cvt.s.w $f31, $f31 - Convert int to float #2
patch=1,EE,201FFDD0,extended,461DFFC2 //7FB00010 - mul.s $f31, $f31, $f29 - Multiply $f31 by $f29
patch=1,EE,201FFDD4,extended,461EFFC0 //244289A0 - add.s $f31, $f31, $f30 - Add .5 for rounding
patch=1,EE,201FFDD8,extended,4600FFE4 //E7B50058 - cvt.w.s $f31, $f31 - Convert float to int #1
patch=1,EE,201FFDDC,extended,4405F800 //00A0802D - mfc1 a1, $f31 - Convert float to int #2
patch=1,EE,201FFDE0,extended,4487F800 //E7B40050 - mtc1 a3, $f31 - Convert int to float #1
patch=1,EE,201FFDE4,extended,4680FFE0 //46006D46 - cvt.s.w $f31, $f31 - Convert int to float #2
patch=1,EE,201FFDE8,extended,461DFFC2 //46006506 - mul.s $f31, $f31, $f29 - Multiply $f31 by $f29
patch=1,EE,201FFDEC,extended,461EFFC1 //7FBF0040 - sub.s $f31, $f31, $f30 - Subtract .5 for rounding
patch=1,EE,201FFDF0,extended,4600FFE4 //02429021 - cvt.w.s $f31, $f31 - Convert float to int #1
patch=1,EE,201FFDF4,extended,4407F800 //0C08AEAC - mfc1 a3, $f31 - Convert float to int #2
patch=1,EE,201FFDF8,extended,0807FFC0 //00C0882D - j $001fff00 - Jump to 2 lines after the overwritten MIPS instruction
patch=1,EE,201FFDFC,extended,00832018 //03A0282D - mult a0, a0, v1 - Restore overwritten MIPS instruction from initial jump
//Unlocks - Left Text Positioning (fontSpritePrintCenteredXY)
patch=1,EE,201FFCC4,extended,0807FF52 //0080982D - j $001ffd48 - Jump to injected MIPS instructions
patch=1,EE,201FFD48,extended,240B00E6 //27BDFFC0 - addiu t3, zero, $00e6 - Set t3 register to 230
patch=1,EE,201FFD4C,extended,14AB0002 //3C020075 - bne a1, t3, $001ffd58 - Skip next line (after below one) if $a1 and t3 registers aren't equal
patch=1,EE,201FFD50,extended,00000000 //7FB10010 - nop - Delay slot
patch=1,EE,201FFD54,extended,240500FD //24428680 - addiu a1, zero, $00fd - Set a1 register to 253
patch=1,EE,201FFD58,extended,0807FF33 //7FB00000 - j $001ffccc - Jump to 2 addresses after initial jump
patch=1,EE,201FFD5C,extended,0080982D //0080882D - daddu s3, a0, zero - Restore overwritten MIPS instruction from initial jump
//Unlocks - Right Text Positioning (fontSpritePrintCenteredXY)
patch=1,EE,101A011C,extended,000001A2 //240501C2 - Prices Selected Right X Position (450 -> 418)
patch=1,EE,101A0154,extended,000001A2 //240501C2 - Prices Unselected Right X Position (450 -> 418)
patch=1,EE,101A0274,extended,000001A2 //240501C2 - "FREEBIE" Unselected Right X Position (450 -> 418)
patch=1,EE,101A02CC,extended,000001A2 //240501C2 - "FREEBIE/UNLOCKED" Selected Right X Position (450 -> 418)
patch=1,EE,101A0324,extended,000001A2 //240501C2 - "Unlocked" Unselected Right X Position (450 -> 418)