Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BatmanArkhamOrigins_60FPS is Very Broken #654

Open
intra0 opened this issue Nov 23, 2024 · 0 comments
Open

BatmanArkhamOrigins_60FPS is Very Broken #654

intra0 opened this issue Nov 23, 2024 · 0 comments

Comments

@intra0
Copy link
Contributor

intra0 commented Nov 23, 2024

the current patch

[Bat60FpsVerv1]
moduleMatches = 0xB5EB56F6

# Location for .float 60.00
_float = 0x10000a08

CodeCaveSize = 0x0c

_60fps = 0x00000000
0X00000000 = lis r3,_float@h
0X00000004 = lfs f1,_float@l(r3)
0X00000008 = blr

0x024d3164 = bla _60fps
#0x024d3164 = lfs f1,04e0(r3) #0x42F584E0
0x02C82558 = nop #Vsync
0x02C82504 = nop #SwapInterval


[Bat60FpsVerv16]
moduleMatches = 0x10A2A41A

# Location for .float 60.00
_float = 0x10000a08

CodeCaveSize = 0x0c

_60fps = 0x00000000
0X00000000 = lis r3,_float@h
0X00000004 = lfs f1,_float@l(r3)
0X00000008 = blr

0x24D4E68 = bla _60fps
#0x024D4E68 = lfs f1,0x4E0(r3)
0x02C837FC = nop #Vsync

this has a bla the immediate instruction before a blr
so its like broken broken

there are 2 ways to fix this:

;mod currenly makes the game run at 60 fps for a little bit then crashes

;; Location for .float 60.00 == 0x10000a08
;r2 = 0x10008000
;r3 = 0x42F584E0
;0x024D4E68 = lfs f1,04e0(r3) before being overwritten
[BatmanOrigins_60Fps_v16]
moduleMatches = 0x10A2A41A ; v16(EU/NA/JP)
0x024D4E68 = lfs f1,-0x75F8(r2)
0x02C837FC = nop ;Vsync
;no clue if removing ;SwapInterval nop is intentional or a typo

[BatmanOrigins_60Fps_v1]
moduleMatches = 0xB5EB56F6 ; v1(EU/NA)
0x024D3164 = lfs f1,-0x75F8(r2)
0x02C82558 = nop ;Vsync
0x02C82504 = nop ;SwapInterval

;[BatmanOrigins_60Fps_JPv0]
;moduleMatches = 0xDC369A88 ; v0(JP)
;0x = lfs f1,-0x75F8(r2)
;0x = nop ;Vsync
;0x = nop ;SwapInterval

or

;mod currenly makes the game run at 60 fps for a little bit then crashes
[BatmanOrigins_60Fps]
moduleMatches = 0x10A2A41A, 0xB5EB56F6, 0xDC369A88 ; v16(EU/NA/JP), v1(EU/NA), v0(JP)
.origin = codecave
; Location for .float 60.00
float = 0x10000a08
_60fps:
lis r3,float@h
lfs f1,float@l(r3)
blr

[BatmanOrigins_60Fps_v16]
moduleMatches = 0x10A2A41A ; v16(EU/NA/JP)
0x024D4E68 = nop ; <- can be any instruction we want before branching
0x024D4E6C = ba _60fps
0x02C837FC = nop ;Vsync
;no clue if removing ;SwapInterval nop is intentional or a typo

[BatmanOrigins_60Fps_v1]
moduleMatches = 0xB5EB56F6 ; v1(EU/NA)
0x024D3164 = nop ; <- can be any instruction we want before branching
0x024D3168 = ba _60fps
0x02C82558 = nop ;Vsync
0x02C82504 = nop ;SwapInterval

;[BatmanOrigins_60Fps_JPv0]
;moduleMatches = 0xDC369A88 ; v0(JP)
;0x = nop ; <- can be any instruction we want before branching
;0x = ba _60fps 
;0x = nop ;Vsync
;0x = nop ;SwapInterval

but now that I've fixed the infinite jump loop of a bla right before a blr
there is a new issue with the mod in which it will run at 60fps for about 1 second, then the game crashes
so found two different solutions to the layer 1 problem and now there is a layer 2 problem

@intra0 intra0 changed the title BatmanArkhamOrigins_60FPS is Broken on 2 seperate levels BatmanArkhamOrigins_60FPS is Very Broken Dec 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant