From 8fa7cb45e8dfbb81b90eaa40e169e7ac281bb6d2 Mon Sep 17 00:00:00 2001 From: Rajko Stojadinovic Date: Sun, 10 Dec 2017 22:34:54 +0100 Subject: [PATCH] Try out a little different "Better fence" for FPS++ 1.4.0 --- Modifications/BreathOfTheWild_FPS++/patches.txt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/Modifications/BreathOfTheWild_FPS++/patches.txt b/Modifications/BreathOfTheWild_FPS++/patches.txt index 35bc828f..8a293131 100644 --- a/Modifications/BreathOfTheWild_FPS++/patches.txt +++ b/Modifications/BreathOfTheWild_FPS++/patches.txt @@ -231,7 +231,7 @@ _float1 = 0x10000670 _float30 = 0x101E78F4 #TestCave -codeCaveSize = 0x84 +codeCaveSize = 0x98 _fpsCalc = 0x00000008 0x00000000 = .float 3 ; Don't edit me! @@ -269,6 +269,13 @@ _busSpeed = 0x00000004 0x0000007c = stfs f12, 0x130(r30) 0x00000080 = blr +_fenceNeg1 = 0x00000084 +0x00000084 = add r6, r12, r0 #orig instruction we are replacing +0x00000088 = cmpwi r6, 500 #check if less than 500 (full sync on those first frames to prevent milk water) +0x0000008C = blt .+0x08 #skip subtract if less than +0x00000090 = subi r6, r6, 1 #do the subtract +0x00000094 = blr #return + #codeChanges 0x031F9E80 = bla _fpsCalc 0x03792620 = nop @@ -286,8 +293,9 @@ _busSpeed = 0x00000004 #break all forms of frame limiting -0x031F9FEC = li r0, 1 ;Better fence -;0x031FA004 = nop ; skip fence +0x031FA000 = bla _fenceNeg1 ;Best fence (make sure GPU is never more than 1 frame ahead) +;0x031F9FEC = li r0, 1 ;Better fence (make sure GPU is never more than 1 second? ahead) +;0x031FA004 = nop ; skip fence (no waiting on GPU) 0x031FA1D4 = nop ; disable vsync 0x031FA1F8 = nop ; disable vsync loop