[BotW] More proper faster arrow fix

Since 1.0 floats are very common, this float was likely used in other game code as well. Changing it to 3.0 could be bad, so it's better to just change the instruction that loads it and does the arrow loading.
The fix here is to just have a symbol available to load the lower half from, instead of hardcoding it which Cemu's backwards compatible patcher doesn't like and softlocks.
This commit is contained in:
Crementif 2020-07-27 00:45:52 +02:00
parent 3c20ea5e5f
commit 3b265520fd
No known key found for this signature in database
GPG Key ID: 11A98E7DE0412B33

View File

@ -1,11 +1,17 @@
[BotwV208] [BotW_FasterArrowDraw_V208]
moduleMatches = 0x6267BFD0 moduleMatches = 0x6267BFD0
0x100C4F94 = .float 3.0 _arrowDrawAddress = 0x100c50A0 ; Just used to load the lower half of the 0x100c50A0 offset from
# Change offset from r10 register slightly to load a 3.0 float instead of 1.0
0x024A0164 = lfs f0, _arrowDrawAddress@l(r10) ; Bow Draw Speed
0x024A019C = lfs f0, _arrowDrawAddress@l(r10) ; Bow Draw Cooldown
[BotwV176V192] [BotW_FasterArrowDraw_V176V192]
moduleMatches = 0xFD091F9F,0xD472D8A5 moduleMatches = 0xFD091F9F,0xD472D8A5
0x0249FDC0 = lfs f0, 0x100c5040@l(r10) ; faster arrow draw _arrowDrawAddress = 0x100c5040
0x0249FDF8 = lfs f0, 0x100c5040@l(r10) ; faster arrow draw
0x0249FDC0 = lfs f0, _arrowDrawAddress@l(r10)
0x0249FDF8 = lfs f0, _arrowDrawAddress@l(r10)