Try out a little different "Better fence" for FPS++ 1.4.0

This commit is contained in:
Rajko Stojadinovic 2017-12-10 22:34:54 +01:00
parent 491019144c
commit 8fa7cb45e8

View File

@ -231,7 +231,7 @@ _float1 = 0x10000670
_float30 = 0x101E78F4 _float30 = 0x101E78F4
#TestCave #TestCave
codeCaveSize = 0x84 codeCaveSize = 0x98
_fpsCalc = 0x00000008 _fpsCalc = 0x00000008
0x00000000 = .float 3 ; Don't edit me! 0x00000000 = .float 3 ; Don't edit me!
@ -269,6 +269,13 @@ _busSpeed = 0x00000004
0x0000007c = stfs f12, 0x130(r30) 0x0000007c = stfs f12, 0x130(r30)
0x00000080 = blr 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 #codeChanges
0x031F9E80 = bla _fpsCalc 0x031F9E80 = bla _fpsCalc
0x03792620 = nop 0x03792620 = nop
@ -286,8 +293,9 @@ _busSpeed = 0x00000004
#break all forms of frame limiting #break all forms of frame limiting
0x031F9FEC = li r0, 1 ;Better fence 0x031FA000 = bla _fenceNeg1 ;Best fence (make sure GPU is never more than 1 frame ahead)
;0x031FA004 = nop ; skip fence ;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 0x031FA1D4 = nop ; disable vsync
0x031FA1F8 = nop ; disable vsync loop 0x031FA1F8 = nop ; disable vsync loop