PS4 [Research]PS2 emulator configuration on PS4

Rockman Power Battle Fighters (SLPM-62491)

CONFIG TXT

#Gfx fix
--fpu-no-clamping=0
--fpu-clamp-results=1
--vu0-no-clamping=0
--vu0-clamp-results=1
--vu1-no-clamping=0
--vu1-clamp-results=1
--cop2-no-clamping=0
--cop2-clamp-results=1
--host-vsync=1
--vu-xgkick-delay=0

#Graphical glitches fix
--gs-use-clut-merge=1
--gs-kernel-cl="h2lpool"
--gs-kernel-cl-up="h2lpool2x2"

#Speehacks
--vu0-di-bits=0
--vu1-di-bits=0
--vu0-const-prop=1
--vu1-const-prop=1
--ee-cycle-scalar=1.5
--gs-adaptive-frameskip=1
--vu1-injection=1

#Misc
--host-audio-latency=0.01

#emu used=jakx v2
 
Last edited:
The Matrix™ Path of Neo™

CLI
Code:
--gs-uprender=2x2
--gs-upscale=edgesmooth
--gs-adaptive-frameskip=1

--force-frame-blend=1

--cdvd-sector-read-cycles=5000

#emu used=jakx v2
LUA
Code:
-- The Matrix Path of Neo NTSC
-- Graphics fix by Stayhye
-- 60 fps not stable(disabled)
-- ported to PS4
-- emu used=jakx v2

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local gsObj       = getGsObject()


emuObj.PadSetLightBar(0, 0,255,0) -- green!
emuObj.SetDisplayAspectWide()
gsObj.SetDeinterlaceShift(1)
emuObj.SetDeinterlace(true)
emuObj.SetFormattedCard("neo.card")

--graphics fix! gif.dma does do something!
eeObj.AddHook(0x00102064,0xdfb00000, function() -- ld s0, $0000(sp)
       eeObj.SchedulerDelayEvent("gif.dma", 0x1600)
end)

--fps boost A
eeObj.AddHook(0x001d7154,0x9482002c, function() -- lhu v0, $002c(a0)
       eeObj.AdvanceClock(7000)
end)

--fps boost B
eeObj.AddHook(0x0027f4e8,0x34631000, function() -- ori v1, v1, $1000
       eeObj.Vu1MpgCycles(3700)
end)
--]]
local patcher = function()
--[[
--60 fps
eeObj.WriteMem32(0x20463E1C,0x3F800000) --speed
eeObj.WriteMem32(0x20463E2C,0x42700000) --fps
--]]
eeObj.WriteMem32(0x00101d7c,0x1000fffa)
--Unlock All Extras (View Extras To Unlock) by MadCatz
eeObj.WriteMem32(0x201DCCBC,0x2002FFFF)
eeObj.WriteMem32(0x201DCCC0,0xAC820000)
eeObj.WriteMem32(0x201DCCC4,0x03E00008)
eeObj.WriteMem32(0x201DCCC8,0x24020001)
eeObj.WriteMem32(0x20466750,0xFFFFFFFF)
eeObj.WriteMem32(0x20466754,0x00040011)

--Aerial Training by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204659A4,0x00030005)
eeObj.WriteMem32(0x204659A8,0x00010013)

--Captains Rescue by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x2046614C,0x0007000B)
eeObj.WriteMem32(0x20466150,0x00010013)

--Deja Vu-It's A Trap! by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465B48,0x00000006)
eeObj.WriteMem32(0x20465B4C,0x00010013)

--Distorted Dimensions by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x2046637C,0xFFFFFFFF)
eeObj.WriteMem32(0x20466380,0x0001000E)

--Dojo Training by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465ABC,0x00050005)
eeObj.WriteMem32(0x20465AC0,0x00010013)

--Downside Up by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20466408,0xFFFFFFFF)
eeObj.WriteMem32(0x2046640C,0x0002000E)

--Ever Had A Dream, Neo? by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x2046565C,0xFFFFFFFF)
eeObj.WriteMem32(0x20465660,0x00000003)

--He Is The One by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465FA8,0xFFFFFFFF)
eeObj.WriteMem32(0x20465FAC,0x00000009)

--He's Heading For The Street by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465774,0xFFFFFFFF)
eeObj.WriteMem32(0x20465778,0x00020004)

--Helicopter Rescue by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465D78,0xFFFFFFFF)
eeObj.WriteMem32(0x20465D7C,0x00020007)


--Kung Fu Training by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465800,0xFFFFFFFF)
eeObj.WriteMem32(0x20465804,0x00000005)

--Lobby Shooting Spree by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465C60,0x00000007)
eeObj.WriteMem32(0x20465C64,0x00010013)

--Ministry Of Smiths by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204665AC,0xFFFFFFFF)
eeObj.WriteMem32(0x204665B0,0x0001000F)

--Mr. Anderson, Welcome Back by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204666C4,0xFFFFFFFF)
eeObj.WriteMem32(0x204666C8,0x00010011)

--Red Pill Rescue by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20466034,0x0009000A)
eeObj.WriteMem32(0x20466038,0x00010013)

--Rooftop Assault-Dodge This by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465CEC,0x00010007)
eeObj.WriteMem32(0x20465CF0,0x00010013)

--Seraph's Apology by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204661D8,0x0000000C)
eeObj.WriteMem32(0x204661DC,0x00010013)

--Storming The Drain by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465BD4,0x00020006)
eeObj.WriteMem32(0x20465BD8,0x00010013)

--Stuck In The Loop by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465E90,0x00010008)
eeObj.WriteMem32(0x20465E94,0x00010013)

--Subway Showdown by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465E04,0xFFFFFFFF)
eeObj.WriteMem32(0x20465E08,0x00000008)

--Sword Training by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x2046588C,0x00010005)
eeObj.WriteMem32(0x20465890,0x00010013)

--Taking The Floor by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20466638,0xFFFFFFFF)
eeObj.WriteMem32(0x2046663C,0x0002000F)

--The Burly Brawl by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20466264,0x0000000D)
eeObj.WriteMem32(0x20466268,0x00010013)

--The Captains' Meeting by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204660C0,0x0000000B)
eeObj.WriteMem32(0x204660C4,0x00010013)

--The Chase-I Need An Exit by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20465F1C,0x00030008)
eeObj.WriteMem32(0x20465F20,0x00010013)

--The Frenchman by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204662F0,0x0000000E)
eeObj.WriteMem32(0x204662F4,0x00010013)

--The Witch by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20466494,0xFFFFFFFF)
eeObj.WriteMem32(0x20466498,0x0003000E)

--They're Coming For You, Neo by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204656E8,0xFFFFFFFF)
eeObj.WriteMem32(0x204656EC,0x00000004)

--This Is My World by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x204667DC,0xFFFFFFFF)
eeObj.WriteMem32(0x204667E0,0x00050011)

--Turned Out by Code Master, Skiller, Lajos Szalay
eeObj.WriteMem32(0x20466520,0x0000000F)
eeObj.WriteMem32(0x20466524,0x00010013)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

LUA
Code:
--graphics fix! gif.dma does do something!
eeObj.AddHook(0x00102064,0xdfb00000, function() -- ld s0, $0000(sp)
       eeObj.SchedulerDelayEvent("gif.dma", 0x1600)
end)


Graphics fixed(mostly). Still working on this one.... Disabling uprender/upscale removes white lines and speckles, but the game look like $**t then...

Widescreen applied with config save on memory card.

good work!
thank you!
The Korean and Japanese versions are bootable with jak v2!
I'm very happy that the graphics have been modified!
 
Rockman Power Battle Fighters (SLPM-62491)

CONFIG TXT

#Gfx fix
--fpu-no-clamping=0
--fpu-clamp-results=1
--vu0-no-clamping=0
--vu0-clamp-results=1
--vu1-no-clamping=0
--vu1-clamp-results=1
--cop2-no-clamping=0
--cop2-clamp-results=1
--host-vsync=1
--vu-xgkick-delay=0

#Graphical glitches fix
--gs-use-clut-merge=1
--gs-kernel-cl="h2lpool"
--gs-kernel-cl-up="h2lpool2x2"

#Speehacks
--vu0-di-bits=0
--vu1-di-bits=0
--vu0-const-prop=1
--vu1-const-prop=1
--ee-cycle-scalar=1.5
--gs-adaptive-frameskip=1
--vu1-injection=1

#Misc
--host-audio-latency=0.01

#emu used=jakx v2

All of that is totally unnecessary. All you need in the config is:

Code:
--gs-uprender=2x2
--gs-upscale=point

--gs-kernel-cl="h2lpool"
--gs-kernel-cl-up="h2lpool2x2"
 
Last edited:
New Configs for:

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--threaded-gs=1
--force-pal-60hz=1

--ds4-deadzone-adjust=0.04

#emu used=psycho v1
LUA
Code:
-- The Suffering™ PAL
-- Graphics fix by Stayhye
-- Widescreen by El_Patas
-- emu used=psycho v1

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local iopObj  = getIOPObject()

emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)
emuObj.ForceRefreshRate(50)
--emuObj.SetDisplaySafeArea(0.9)


--upside-down white shadow fix
eeObj.AddHook(0x00213c6c,0xac620000,function() -- sw v0, $0000(v1)
       eeObj.SchedulerDelayEvent("gif.dma", 0x03ff)
end)
--[[
--50fps helper
eeObj.AddHook(0x001b6af8,0x8e630000,function()
       eeObj.AdvanceClock(9000) 
end)
--]]

local patcher = function()
--graphics fix
eeObj.WriteMem32(0x001224dc,0x10000074) -- 0x10a00074 >> beq a1, zero, $00124848
--[[
--50fps
eeObj.WriteMem32(0x001f92c0,0x28420001) -- 0x28420002
eeObj.WriteMem32(0x001f92e0,0x28420001) -- 0x28420002
--]]
--Gameplay 16:9
eeObj.WriteMem32(0x001E766C,0xE7B40010) --14E00004
eeObj.WriteMem32(0x001E7670,0x8E020338) --E7B40010
eeObj.WriteMem32(0x001E7674,0xAE020330) --8E020338
eeObj.WriteMem32(0x001E7678,0x8E02033C) --10000002
eeObj.WriteMem32(0x001E767C,0xAE020334) --AE020330
eeObj.WriteMem32(0x001E7680,0xC6030338) --AE070330
eeObj.WriteMem32(0x001E7684,0x468018E0) --55000003
eeObj.WriteMem32(0x001E7688,0x3C013F00) --AE080334
eeObj.WriteMem32(0x001E768C,0x4481B000) --8E02033C
eeObj.WriteMem32(0x001E7690,0xC600033C) --AE020334
eeObj.WriteMem32(0x001E7694,0x46800020) --C6030338
eeObj.WriteMem32(0x001E7698,0x3C014500) --468018E0
eeObj.WriteMem32(0x001E769C,0x44811000) --3C013F00
eeObj.WriteMem32(0x001E76A0,0x3C0142AB) --4481B000 --both fov
eeObj.WriteMem32(0x001E76A4,0x44810800) --C600033C
eeObj.WriteMem32(0x001E76A8,0x44862000) --46800020
eeObj.WriteMem32(0x001E76AC,0x46802120) --3C014500
eeObj.WriteMem32(0x001E76B0,0x461618C2) --44811000
eeObj.WriteMem32(0x001E76B4,0x3C014300) --3C014280
eeObj.WriteMem32(0x001E76B8,0x44813000) --44810800
eeObj.WriteMem32(0x001E76BC,0x46160002) --44862000
eeObj.WriteMem32(0x001E76C0,0xE60102E0) --46802120
eeObj.WriteMem32(0x001E76C4,0x44852800) --461618C2
eeObj.WriteMem32(0x001E76C8,0x46802960) --3C014300
eeObj.WriteMem32(0x001E76CC,0x3C01BF00) --44813000
eeObj.WriteMem32(0x001E76D0,0x44813800) --46160002
eeObj.WriteMem32(0x001E76D4,0x460310C1) --E60102E0
eeObj.WriteMem32(0x001E76D8,0xAE050328) --44852800
eeObj.WriteMem32(0x001E76DC,0x46001081) --46802960
eeObj.WriteMem32(0x001E76E0,0xAE06032C) --3C01BF00
eeObj.WriteMem32(0x001E76E4,0xC6010330) --44813800
eeObj.WriteMem32(0x001E76E8,0x46800860) --460310C1
eeObj.WriteMem32(0x001E76EC,0x8E05034C) --AE050328
eeObj.WriteMem32(0x001E76F0,0xC6000334) --46001081
eeObj.WriteMem32(0x001E76F4,0x46800020) --AE06032C
eeObj.WriteMem32(0x001E76F8,0x3C013C8E) --C6010330
eeObj.WriteMem32(0x001E76FC,0x3421FA36) --46800860
eeObj.WriteMem32(0x001E7700,0x4481B800) --8E05034C
eeObj.WriteMem32(0x001E7704,0x460518C0) --C6000334
eeObj.WriteMem32(0x001E7708,0x46041080) --46800020
eeObj.WriteMem32(0x001E770C,0x46000B06) --3C013C8E
eeObj.WriteMem32(0x001E7710,0x46160902) --3421FA36
eeObj.WriteMem32(0x001E7714,0x46000346) --4481B800
eeObj.WriteMem32(0x001E7718,0x46160142) --460518C0
eeObj.WriteMem32(0x001E771C,0x46013183) --46041080
eeObj.WriteMem32(0x001E7720,0x46070842) --46000B06
eeObj.WriteMem32(0x001E7724,0x46070002) --46160902
eeObj.WriteMem32(0x001E7728,0x460418C0) --46000346
eeObj.WriteMem32(0x001E772C,0x46051080) --46160142
eeObj.WriteMem32(0x001E7730,0xE60102F0) --46013183
eeObj.WriteMem32(0x001E7734,0xE60002F4) --46070842
eeObj.WriteMem32(0x001E7738,0x46011901) --46070002
eeObj.WriteMem32(0x001E773C,0xE6030310) --460418C0
eeObj.WriteMem32(0x001E7740,0x46001141) --46051080
eeObj.WriteMem32(0x001E7744,0xE6020314) --E60102F0
eeObj.WriteMem32(0x001E7748,0x460118C0) --E60002F4
eeObj.WriteMem32(0x001E774C,0xE6060308) --46011901
eeObj.WriteMem32(0x001E7750,0x46001080) --E6030310
eeObj.WriteMem32(0x001E7754,0xE604031C) --46001141
eeObj.WriteMem32(0x001E7758,0xE6050324) --E6020314
eeObj.WriteMem32(0x001E775C,0xE6030318) --460118C0
eeObj.WriteMem32(0x001E7760,0xE6020320) --E6060308
eeObj.WriteMem32(0x001E7764,0x8CA20000) --46001080
eeObj.WriteMem32(0x001E7768,0x84440068) --E604031C
eeObj.WriteMem32(0x001E776C,0x8C43006C) --E6050324
eeObj.WriteMem32(0x001E7770,0x0060F809) --E6030318
eeObj.WriteMem32(0x001E7774,0x00A42021) --E6020320
eeObj.WriteMem32(0x001E7778,0xC60202E0) --8CA20000
eeObj.WriteMem32(0x001E777C,0xC601030C) --84440068
eeObj.WriteMem32(0x001E7780,0x46001002) --8C43006C
eeObj.WriteMem32(0x001E7784,0x8E030350) --0060F809
eeObj.WriteMem32(0x001E7788,0x46000847) --00A42021
eeObj.WriteMem32(0x001E778C,0x3C013F40) --C60202E0 --vert fov
eeObj.WriteMem32(0x001E7790,0x4481A000) --C601030C
eeObj.WriteMem32(0x001E7794,0x46140002) --46001002
eeObj.WriteMem32(0x001E7798,0x00000000) --8E030350
eeObj.WriteMem32(0x001E779C,0x00000000) --46000847
--Font fix
eeObj.WriteMem32(0x001f9cd0,0x3c013f40) --3c013f80

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--threaded-gs=1
--force-pal-60hz=1
#crash fix by bergilino gamer
--vu0-no-clamping=0
--vu1-no-clamping=0
--ds4-deadzone-adjust=0.04

#emu used=psycho v1
LUA
Code:
-- The Suffering™ Ties That Bind®
-- graphics fix by Stayhye
-- Widescreen by El_Patas
-- emu used=psycho v1

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local iopObj  = getIOPObject()

emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)
--emuObj.ForceRefreshRate(50)
--emuObj.SetDisplaySafeArea(0.9)

local patcher = function()
--Gameplay 16:9
eeObj.WriteMem32(0x002069CC,0xE7B40010) --14E00004
eeObj.WriteMem32(0x002069D0,0x8E020348) --E7B40010
eeObj.WriteMem32(0x002069D4,0xAE020340) --8E020348
eeObj.WriteMem32(0x002069D8,0x8E02034C) --10000002
eeObj.WriteMem32(0x002069DC,0xAE020344) --AE020340
eeObj.WriteMem32(0x002069E0,0xC6010344) --AE070340
eeObj.WriteMem32(0x002069E4,0x46800860) --55000003
eeObj.WriteMem32(0x002069E8,0x3C01BF00) --AE080344
eeObj.WriteMem32(0x002069EC,0x44810000) --8E02034C
eeObj.WriteMem32(0x002069F0,0xC60C0340) --AE020344
eeObj.WriteMem32(0x002069F4,0x46806320) --C6010344
eeObj.WriteMem32(0x002069F8,0x3C013F20) --46800860
eeObj.WriteMem32(0x002069FC,0x44811800) --3C01BF00
eeObj.WriteMem32(0x00206A00,0x3C014500) --44810000
eeObj.WriteMem32(0x00206A04,0x44811000) --C60C0340
eeObj.WriteMem32(0x00206A08,0x46000B46) --46806320
eeObj.WriteMem32(0x00206A0C,0x3C013ED5) --3C013F20 --both
eeObj.WriteMem32(0x00206A10,0x44812000) --44811800
eeObj.WriteMem32(0x00206A14,0x46000842) --3C014500
eeObj.WriteMem32(0x00206A18,0xAE050338) --44811000
eeObj.WriteMem32(0x00206A1C,0x46006002) --46000B46
eeObj.WriteMem32(0x00206A20,0xE60402F0) --3C013EA0
eeObj.WriteMem32(0x00206A24,0x460C18C3) --44812000
eeObj.WriteMem32(0x00206A28,0xAE06033C) --46000842
eeObj.WriteMem32(0x00206A2C,0x46011181) --AE050338
eeObj.WriteMem32(0x00206A30,0x8E05035C) --46006002
eeObj.WriteMem32(0x00206A34,0x46001141) --E60402F0
eeObj.WriteMem32(0x00206A38,0xE6000300) --460C18C3
eeObj.WriteMem32(0x00206A3C,0x46020900) --AE06033C
eeObj.WriteMem32(0x00206A40,0xE6010304) --46011181
eeObj.WriteMem32(0x00206A44,0x46020000) --8E05035C
eeObj.WriteMem32(0x00206A48,0xE6060334) --46001141
eeObj.WriteMem32(0x00206A4C,0xE605032C) --E6000300
eeObj.WriteMem32(0x00206A50,0xE6030318) --46020900
eeObj.WriteMem32(0x00206A54,0xE6040330) --E6010304
eeObj.WriteMem32(0x00206A58,0xE6020320) --46020000
eeObj.WriteMem32(0x00206A5C,0xE6020324) --E6060334
eeObj.WriteMem32(0x00206A60,0xE6000328) --E605032C
eeObj.WriteMem32(0x00206A64,0x3C013C8E) --E6030318
eeObj.WriteMem32(0x00206A68,0x3421FA36) --E6040330
eeObj.WriteMem32(0x00206A6C,0x4481B000) --E6020320
eeObj.WriteMem32(0x00206A70,0x8CA20000) --E6020324
eeObj.WriteMem32(0x00206A74,0x3C013F00) --E6000328
eeObj.WriteMem32(0x00206A78,0x4481B800) --3C013C8E
eeObj.WriteMem32(0x00206A7C,0x84440070) --3421FA36
eeObj.WriteMem32(0x00206A80,0x8C430074) --4481B000
eeObj.WriteMem32(0x00206A84,0x0060F809) --8CA20000
eeObj.WriteMem32(0x00206A88,0x00A42021) --3C013F00
eeObj.WriteMem32(0x00206A8C,0xC60202F0) --4481B800
eeObj.WriteMem32(0x00206A90,0xC601031C) --84440070
eeObj.WriteMem32(0x00206A94,0x3C013F40) --8C430074 --vert
eeObj.WriteMem32(0x00206A98,0x4481A000) --0060F809
eeObj.WriteMem32(0x00206A9C,0x46140002) --00A42021
eeObj.WriteMem32(0x00206AA0,0x00000000) --C60202F0
eeObj.WriteMem32(0x00206AA4,0x00000000) --C601031C

--Font fix
--803f013c 00008144 0800e003 00000000 (2nd)
eeObj.WriteMem32(0x00220c70,0x3c013f40) --3c013f80

--graphics fix
eeObj.WriteMem32(0x00124674,0x10000074) -- 0x0x10000074 >> beq a1, zero, $00124848

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

All graphical issues fixed. Big thanks to Kozarovv for helping me with the "upside-down white shadow" fix
 
Last edited:
New Configs for:

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--threaded-gs=1
--force-pal-60hz=1

--ds4-deadzone-adjust=0.04

#emu used=psycho v1
LUA
Code:
-- The Suffering™ PAL
-- Graphics fix by Stayhye
-- Widescreen by El_Patas
-- emu used=psycho v1

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local iopObj  = getIOPObject()

emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)
emuObj.ForceRefreshRate(50)
--emuObj.SetDisplaySafeArea(0.9)


--upside-down white shadow fix
eeObj.AddHook(0x00213c6c,0xac620000,function() -- sw v0, $0000(v1)
       eeObj.SchedulerDelayEvent("gif.dma", 0x03ff)
end)
--[[
--50fps helper
eeObj.AddHook(0x001b6af8,0x8e630000,function()
       eeObj.AdvanceClock(9000)    
end)
--]]

local patcher = function()
--graphics fix
eeObj.WriteMem32(0x001224dc,0x10000074) -- 0x10a00074 >> beq a1, zero, $00124848
--[[
--50fps
eeObj.WriteMem32(0x001f92c0,0x28420001) -- 0x28420002
eeObj.WriteMem32(0x001f92e0,0x28420001) -- 0x28420002
--]]
--Gameplay 16:9
eeObj.WriteMem32(0x001E766C,0xE7B40010) --14E00004
eeObj.WriteMem32(0x001E7670,0x8E020338) --E7B40010
eeObj.WriteMem32(0x001E7674,0xAE020330) --8E020338
eeObj.WriteMem32(0x001E7678,0x8E02033C) --10000002
eeObj.WriteMem32(0x001E767C,0xAE020334) --AE020330
eeObj.WriteMem32(0x001E7680,0xC6030338) --AE070330
eeObj.WriteMem32(0x001E7684,0x468018E0) --55000003
eeObj.WriteMem32(0x001E7688,0x3C013F00) --AE080334
eeObj.WriteMem32(0x001E768C,0x4481B000) --8E02033C
eeObj.WriteMem32(0x001E7690,0xC600033C) --AE020334
eeObj.WriteMem32(0x001E7694,0x46800020) --C6030338
eeObj.WriteMem32(0x001E7698,0x3C014500) --468018E0
eeObj.WriteMem32(0x001E769C,0x44811000) --3C013F00
eeObj.WriteMem32(0x001E76A0,0x3C0142AB) --4481B000 --both fov
eeObj.WriteMem32(0x001E76A4,0x44810800) --C600033C
eeObj.WriteMem32(0x001E76A8,0x44862000) --46800020
eeObj.WriteMem32(0x001E76AC,0x46802120) --3C014500
eeObj.WriteMem32(0x001E76B0,0x461618C2) --44811000
eeObj.WriteMem32(0x001E76B4,0x3C014300) --3C014280
eeObj.WriteMem32(0x001E76B8,0x44813000) --44810800
eeObj.WriteMem32(0x001E76BC,0x46160002) --44862000
eeObj.WriteMem32(0x001E76C0,0xE60102E0) --46802120
eeObj.WriteMem32(0x001E76C4,0x44852800) --461618C2
eeObj.WriteMem32(0x001E76C8,0x46802960) --3C014300
eeObj.WriteMem32(0x001E76CC,0x3C01BF00) --44813000
eeObj.WriteMem32(0x001E76D0,0x44813800) --46160002
eeObj.WriteMem32(0x001E76D4,0x460310C1) --E60102E0
eeObj.WriteMem32(0x001E76D8,0xAE050328) --44852800
eeObj.WriteMem32(0x001E76DC,0x46001081) --46802960
eeObj.WriteMem32(0x001E76E0,0xAE06032C) --3C01BF00
eeObj.WriteMem32(0x001E76E4,0xC6010330) --44813800
eeObj.WriteMem32(0x001E76E8,0x46800860) --460310C1
eeObj.WriteMem32(0x001E76EC,0x8E05034C) --AE050328
eeObj.WriteMem32(0x001E76F0,0xC6000334) --46001081
eeObj.WriteMem32(0x001E76F4,0x46800020) --AE06032C
eeObj.WriteMem32(0x001E76F8,0x3C013C8E) --C6010330
eeObj.WriteMem32(0x001E76FC,0x3421FA36) --46800860
eeObj.WriteMem32(0x001E7700,0x4481B800) --8E05034C
eeObj.WriteMem32(0x001E7704,0x460518C0) --C6000334
eeObj.WriteMem32(0x001E7708,0x46041080) --46800020
eeObj.WriteMem32(0x001E770C,0x46000B06) --3C013C8E
eeObj.WriteMem32(0x001E7710,0x46160902) --3421FA36
eeObj.WriteMem32(0x001E7714,0x46000346) --4481B800
eeObj.WriteMem32(0x001E7718,0x46160142) --460518C0
eeObj.WriteMem32(0x001E771C,0x46013183) --46041080
eeObj.WriteMem32(0x001E7720,0x46070842) --46000B06
eeObj.WriteMem32(0x001E7724,0x46070002) --46160902
eeObj.WriteMem32(0x001E7728,0x460418C0) --46000346
eeObj.WriteMem32(0x001E772C,0x46051080) --46160142
eeObj.WriteMem32(0x001E7730,0xE60102F0) --46013183
eeObj.WriteMem32(0x001E7734,0xE60002F4) --46070842
eeObj.WriteMem32(0x001E7738,0x46011901) --46070002
eeObj.WriteMem32(0x001E773C,0xE6030310) --460418C0
eeObj.WriteMem32(0x001E7740,0x46001141) --46051080
eeObj.WriteMem32(0x001E7744,0xE6020314) --E60102F0
eeObj.WriteMem32(0x001E7748,0x460118C0) --E60002F4
eeObj.WriteMem32(0x001E774C,0xE6060308) --46011901
eeObj.WriteMem32(0x001E7750,0x46001080) --E6030310
eeObj.WriteMem32(0x001E7754,0xE604031C) --46001141
eeObj.WriteMem32(0x001E7758,0xE6050324) --E6020314
eeObj.WriteMem32(0x001E775C,0xE6030318) --460118C0
eeObj.WriteMem32(0x001E7760,0xE6020320) --E6060308
eeObj.WriteMem32(0x001E7764,0x8CA20000) --46001080
eeObj.WriteMem32(0x001E7768,0x84440068) --E604031C
eeObj.WriteMem32(0x001E776C,0x8C43006C) --E6050324
eeObj.WriteMem32(0x001E7770,0x0060F809) --E6030318
eeObj.WriteMem32(0x001E7774,0x00A42021) --E6020320
eeObj.WriteMem32(0x001E7778,0xC60202E0) --8CA20000
eeObj.WriteMem32(0x001E777C,0xC601030C) --84440068
eeObj.WriteMem32(0x001E7780,0x46001002) --8C43006C
eeObj.WriteMem32(0x001E7784,0x8E030350) --0060F809
eeObj.WriteMem32(0x001E7788,0x46000847) --00A42021
eeObj.WriteMem32(0x001E778C,0x3C013F40) --C60202E0 --vert fov
eeObj.WriteMem32(0x001E7790,0x4481A000) --C601030C
eeObj.WriteMem32(0x001E7794,0x46140002) --46001002
eeObj.WriteMem32(0x001E7798,0x00000000) --8E030350
eeObj.WriteMem32(0x001E779C,0x00000000) --46000847
--Font fix
eeObj.WriteMem32(0x001f9cd0,0x3c013f40) --3c013f80

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--threaded-gs=1
--force-pal-60hz=1

--ds4-deadzone-adjust=0.04

#emu used=psycho v1
LUA
Code:
-- The Suffering™ Ties That Bind®
-- graphics fix by Stayhye
-- Widescreen by El_Patas
-- emu used=psycho v1

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local iopObj  = getIOPObject()

emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)
--emuObj.ForceRefreshRate(50)
--emuObj.SetDisplaySafeArea(0.9)

local patcher = function()
--Gameplay 16:9
eeObj.WriteMem32(0x002069CC,0xE7B40010) --14E00004
eeObj.WriteMem32(0x002069D0,0x8E020348) --E7B40010
eeObj.WriteMem32(0x002069D4,0xAE020340) --8E020348
eeObj.WriteMem32(0x002069D8,0x8E02034C) --10000002
eeObj.WriteMem32(0x002069DC,0xAE020344) --AE020340
eeObj.WriteMem32(0x002069E0,0xC6010344) --AE070340
eeObj.WriteMem32(0x002069E4,0x46800860) --55000003
eeObj.WriteMem32(0x002069E8,0x3C01BF00) --AE080344
eeObj.WriteMem32(0x002069EC,0x44810000) --8E02034C
eeObj.WriteMem32(0x002069F0,0xC60C0340) --AE020344
eeObj.WriteMem32(0x002069F4,0x46806320) --C6010344
eeObj.WriteMem32(0x002069F8,0x3C013F20) --46800860
eeObj.WriteMem32(0x002069FC,0x44811800) --3C01BF00
eeObj.WriteMem32(0x00206A00,0x3C014500) --44810000
eeObj.WriteMem32(0x00206A04,0x44811000) --C60C0340
eeObj.WriteMem32(0x00206A08,0x46000B46) --46806320
eeObj.WriteMem32(0x00206A0C,0x3C013ED5) --3C013F20 --both
eeObj.WriteMem32(0x00206A10,0x44812000) --44811800
eeObj.WriteMem32(0x00206A14,0x46000842) --3C014500
eeObj.WriteMem32(0x00206A18,0xAE050338) --44811000
eeObj.WriteMem32(0x00206A1C,0x46006002) --46000B46
eeObj.WriteMem32(0x00206A20,0xE60402F0) --3C013EA0
eeObj.WriteMem32(0x00206A24,0x460C18C3) --44812000
eeObj.WriteMem32(0x00206A28,0xAE06033C) --46000842
eeObj.WriteMem32(0x00206A2C,0x46011181) --AE050338
eeObj.WriteMem32(0x00206A30,0x8E05035C) --46006002
eeObj.WriteMem32(0x00206A34,0x46001141) --E60402F0
eeObj.WriteMem32(0x00206A38,0xE6000300) --460C18C3
eeObj.WriteMem32(0x00206A3C,0x46020900) --AE06033C
eeObj.WriteMem32(0x00206A40,0xE6010304) --46011181
eeObj.WriteMem32(0x00206A44,0x46020000) --8E05035C
eeObj.WriteMem32(0x00206A48,0xE6060334) --46001141
eeObj.WriteMem32(0x00206A4C,0xE605032C) --E6000300
eeObj.WriteMem32(0x00206A50,0xE6030318) --46020900
eeObj.WriteMem32(0x00206A54,0xE6040330) --E6010304
eeObj.WriteMem32(0x00206A58,0xE6020320) --46020000
eeObj.WriteMem32(0x00206A5C,0xE6020324) --E6060334
eeObj.WriteMem32(0x00206A60,0xE6000328) --E605032C
eeObj.WriteMem32(0x00206A64,0x3C013C8E) --E6030318
eeObj.WriteMem32(0x00206A68,0x3421FA36) --E6040330
eeObj.WriteMem32(0x00206A6C,0x4481B000) --E6020320
eeObj.WriteMem32(0x00206A70,0x8CA20000) --E6020324
eeObj.WriteMem32(0x00206A74,0x3C013F00) --E6000328
eeObj.WriteMem32(0x00206A78,0x4481B800) --3C013C8E
eeObj.WriteMem32(0x00206A7C,0x84440070) --3421FA36
eeObj.WriteMem32(0x00206A80,0x8C430074) --4481B000
eeObj.WriteMem32(0x00206A84,0x0060F809) --8CA20000
eeObj.WriteMem32(0x00206A88,0x00A42021) --3C013F00
eeObj.WriteMem32(0x00206A8C,0xC60202F0) --4481B800
eeObj.WriteMem32(0x00206A90,0xC601031C) --84440070
eeObj.WriteMem32(0x00206A94,0x3C013F40) --8C430074 --vert
eeObj.WriteMem32(0x00206A98,0x4481A000) --0060F809
eeObj.WriteMem32(0x00206A9C,0x46140002) --00A42021
eeObj.WriteMem32(0x00206AA0,0x00000000) --C60202F0
eeObj.WriteMem32(0x00206AA4,0x00000000) --C601031C

--Font fix
--803f013c 00008144 0800e003 00000000 (2nd)
eeObj.WriteMem32(0x00220c70,0x3c013f40) --3c013f80

--graphics fix
eeObj.WriteMem32(0x00124674,0x10000074) -- 0x0x10000074 >> beq a1, zero, $00124848

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

All graphical issues fixed. Big thanks to Kozarovv for helping me with the "upside-down shadow" fix

"upside-down shadow" fix mean for this?
 
"upside-down shadow" fix mean for this?

Yes. Upside-down fix is for the white upside-down white shadow you would see when you look up in game. The black shadow flickering is gone as well.

do you know if this configuration works for the game street fighter alpha anthology ?

Use this. All games except Street Fighter Alpha 3 and Gem fighter works flawlessly. Those 2 have stutter, PS4 pro boost mode recommended.

Code:
--gs-uprender=2x2
--gs-upscale=point
--gs-kernel-cl="h2lpool"
--gs-kernel-cl-up="h2lpool2x2"
--gs-h2l-list-opt=1
--gs-h2l-accurate-hash=1

--gs-progressive=1
--host-display-mode=16:9
 
Last edited:
New Configs for:

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--threaded-gs=1
--force-pal-60hz=1

--ds4-deadzone-adjust=0.04

#emu used=psycho v1
LUA
Code:
-- The Suffering™ PAL
-- Graphics fix by Stayhye
-- Widescreen by El_Patas
-- emu used=psycho v1

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local iopObj  = getIOPObject()

emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)
emuObj.ForceRefreshRate(50)
--emuObj.SetDisplaySafeArea(0.9)


--upside-down white shadow fix
eeObj.AddHook(0x00213c6c,0xac620000,function() -- sw v0, $0000(v1)
       eeObj.SchedulerDelayEvent("gif.dma", 0x03ff)
end)
--[[
--50fps helper
eeObj.AddHook(0x001b6af8,0x8e630000,function()
       eeObj.AdvanceClock(9000)   
end)
--]]

local patcher = function()
--graphics fix
eeObj.WriteMem32(0x001224dc,0x10000074) -- 0x10a00074 >> beq a1, zero, $00124848
--[[
--50fps
eeObj.WriteMem32(0x001f92c0,0x28420001) -- 0x28420002
eeObj.WriteMem32(0x001f92e0,0x28420001) -- 0x28420002
--]]
--Gameplay 16:9
eeObj.WriteMem32(0x001E766C,0xE7B40010) --14E00004
eeObj.WriteMem32(0x001E7670,0x8E020338) --E7B40010
eeObj.WriteMem32(0x001E7674,0xAE020330) --8E020338
eeObj.WriteMem32(0x001E7678,0x8E02033C) --10000002
eeObj.WriteMem32(0x001E767C,0xAE020334) --AE020330
eeObj.WriteMem32(0x001E7680,0xC6030338) --AE070330
eeObj.WriteMem32(0x001E7684,0x468018E0) --55000003
eeObj.WriteMem32(0x001E7688,0x3C013F00) --AE080334
eeObj.WriteMem32(0x001E768C,0x4481B000) --8E02033C
eeObj.WriteMem32(0x001E7690,0xC600033C) --AE020334
eeObj.WriteMem32(0x001E7694,0x46800020) --C6030338
eeObj.WriteMem32(0x001E7698,0x3C014500) --468018E0
eeObj.WriteMem32(0x001E769C,0x44811000) --3C013F00
eeObj.WriteMem32(0x001E76A0,0x3C0142AB) --4481B000 --both fov
eeObj.WriteMem32(0x001E76A4,0x44810800) --C600033C
eeObj.WriteMem32(0x001E76A8,0x44862000) --46800020
eeObj.WriteMem32(0x001E76AC,0x46802120) --3C014500
eeObj.WriteMem32(0x001E76B0,0x461618C2) --44811000
eeObj.WriteMem32(0x001E76B4,0x3C014300) --3C014280
eeObj.WriteMem32(0x001E76B8,0x44813000) --44810800
eeObj.WriteMem32(0x001E76BC,0x46160002) --44862000
eeObj.WriteMem32(0x001E76C0,0xE60102E0) --46802120
eeObj.WriteMem32(0x001E76C4,0x44852800) --461618C2
eeObj.WriteMem32(0x001E76C8,0x46802960) --3C014300
eeObj.WriteMem32(0x001E76CC,0x3C01BF00) --44813000
eeObj.WriteMem32(0x001E76D0,0x44813800) --46160002
eeObj.WriteMem32(0x001E76D4,0x460310C1) --E60102E0
eeObj.WriteMem32(0x001E76D8,0xAE050328) --44852800
eeObj.WriteMem32(0x001E76DC,0x46001081) --46802960
eeObj.WriteMem32(0x001E76E0,0xAE06032C) --3C01BF00
eeObj.WriteMem32(0x001E76E4,0xC6010330) --44813800
eeObj.WriteMem32(0x001E76E8,0x46800860) --460310C1
eeObj.WriteMem32(0x001E76EC,0x8E05034C) --AE050328
eeObj.WriteMem32(0x001E76F0,0xC6000334) --46001081
eeObj.WriteMem32(0x001E76F4,0x46800020) --AE06032C
eeObj.WriteMem32(0x001E76F8,0x3C013C8E) --C6010330
eeObj.WriteMem32(0x001E76FC,0x3421FA36) --46800860
eeObj.WriteMem32(0x001E7700,0x4481B800) --8E05034C
eeObj.WriteMem32(0x001E7704,0x460518C0) --C6000334
eeObj.WriteMem32(0x001E7708,0x46041080) --46800020
eeObj.WriteMem32(0x001E770C,0x46000B06) --3C013C8E
eeObj.WriteMem32(0x001E7710,0x46160902) --3421FA36
eeObj.WriteMem32(0x001E7714,0x46000346) --4481B800
eeObj.WriteMem32(0x001E7718,0x46160142) --460518C0
eeObj.WriteMem32(0x001E771C,0x46013183) --46041080
eeObj.WriteMem32(0x001E7720,0x46070842) --46000B06
eeObj.WriteMem32(0x001E7724,0x46070002) --46160902
eeObj.WriteMem32(0x001E7728,0x460418C0) --46000346
eeObj.WriteMem32(0x001E772C,0x46051080) --46160142
eeObj.WriteMem32(0x001E7730,0xE60102F0) --46013183
eeObj.WriteMem32(0x001E7734,0xE60002F4) --46070842
eeObj.WriteMem32(0x001E7738,0x46011901) --46070002
eeObj.WriteMem32(0x001E773C,0xE6030310) --460418C0
eeObj.WriteMem32(0x001E7740,0x46001141) --46051080
eeObj.WriteMem32(0x001E7744,0xE6020314) --E60102F0
eeObj.WriteMem32(0x001E7748,0x460118C0) --E60002F4
eeObj.WriteMem32(0x001E774C,0xE6060308) --46011901
eeObj.WriteMem32(0x001E7750,0x46001080) --E6030310
eeObj.WriteMem32(0x001E7754,0xE604031C) --46001141
eeObj.WriteMem32(0x001E7758,0xE6050324) --E6020314
eeObj.WriteMem32(0x001E775C,0xE6030318) --460118C0
eeObj.WriteMem32(0x001E7760,0xE6020320) --E6060308
eeObj.WriteMem32(0x001E7764,0x8CA20000) --46001080
eeObj.WriteMem32(0x001E7768,0x84440068) --E604031C
eeObj.WriteMem32(0x001E776C,0x8C43006C) --E6050324
eeObj.WriteMem32(0x001E7770,0x0060F809) --E6030318
eeObj.WriteMem32(0x001E7774,0x00A42021) --E6020320
eeObj.WriteMem32(0x001E7778,0xC60202E0) --8CA20000
eeObj.WriteMem32(0x001E777C,0xC601030C) --84440068
eeObj.WriteMem32(0x001E7780,0x46001002) --8C43006C
eeObj.WriteMem32(0x001E7784,0x8E030350) --0060F809
eeObj.WriteMem32(0x001E7788,0x46000847) --00A42021
eeObj.WriteMem32(0x001E778C,0x3C013F40) --C60202E0 --vert fov
eeObj.WriteMem32(0x001E7790,0x4481A000) --C601030C
eeObj.WriteMem32(0x001E7794,0x46140002) --46001002
eeObj.WriteMem32(0x001E7798,0x00000000) --8E030350
eeObj.WriteMem32(0x001E779C,0x00000000) --46000847
--Font fix
eeObj.WriteMem32(0x001f9cd0,0x3c013f40) --3c013f80

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--threaded-gs=1
--force-pal-60hz=1

--ds4-deadzone-adjust=0.04

#emu used=psycho v1
LUA
Code:
-- The Suffering™ Ties That Bind®
-- graphics fix by Stayhye
-- Widescreen by El_Patas
-- emu used=psycho v1

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local iopObj  = getIOPObject()

emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)
--emuObj.ForceRefreshRate(50)
--emuObj.SetDisplaySafeArea(0.9)

local patcher = function()
--Gameplay 16:9
eeObj.WriteMem32(0x002069CC,0xE7B40010) --14E00004
eeObj.WriteMem32(0x002069D0,0x8E020348) --E7B40010
eeObj.WriteMem32(0x002069D4,0xAE020340) --8E020348
eeObj.WriteMem32(0x002069D8,0x8E02034C) --10000002
eeObj.WriteMem32(0x002069DC,0xAE020344) --AE020340
eeObj.WriteMem32(0x002069E0,0xC6010344) --AE070340
eeObj.WriteMem32(0x002069E4,0x46800860) --55000003
eeObj.WriteMem32(0x002069E8,0x3C01BF00) --AE080344
eeObj.WriteMem32(0x002069EC,0x44810000) --8E02034C
eeObj.WriteMem32(0x002069F0,0xC60C0340) --AE020344
eeObj.WriteMem32(0x002069F4,0x46806320) --C6010344
eeObj.WriteMem32(0x002069F8,0x3C013F20) --46800860
eeObj.WriteMem32(0x002069FC,0x44811800) --3C01BF00
eeObj.WriteMem32(0x00206A00,0x3C014500) --44810000
eeObj.WriteMem32(0x00206A04,0x44811000) --C60C0340
eeObj.WriteMem32(0x00206A08,0x46000B46) --46806320
eeObj.WriteMem32(0x00206A0C,0x3C013ED5) --3C013F20 --both
eeObj.WriteMem32(0x00206A10,0x44812000) --44811800
eeObj.WriteMem32(0x00206A14,0x46000842) --3C014500
eeObj.WriteMem32(0x00206A18,0xAE050338) --44811000
eeObj.WriteMem32(0x00206A1C,0x46006002) --46000B46
eeObj.WriteMem32(0x00206A20,0xE60402F0) --3C013EA0
eeObj.WriteMem32(0x00206A24,0x460C18C3) --44812000
eeObj.WriteMem32(0x00206A28,0xAE06033C) --46000842
eeObj.WriteMem32(0x00206A2C,0x46011181) --AE050338
eeObj.WriteMem32(0x00206A30,0x8E05035C) --46006002
eeObj.WriteMem32(0x00206A34,0x46001141) --E60402F0
eeObj.WriteMem32(0x00206A38,0xE6000300) --460C18C3
eeObj.WriteMem32(0x00206A3C,0x46020900) --AE06033C
eeObj.WriteMem32(0x00206A40,0xE6010304) --46011181
eeObj.WriteMem32(0x00206A44,0x46020000) --8E05035C
eeObj.WriteMem32(0x00206A48,0xE6060334) --46001141
eeObj.WriteMem32(0x00206A4C,0xE605032C) --E6000300
eeObj.WriteMem32(0x00206A50,0xE6030318) --46020900
eeObj.WriteMem32(0x00206A54,0xE6040330) --E6010304
eeObj.WriteMem32(0x00206A58,0xE6020320) --46020000
eeObj.WriteMem32(0x00206A5C,0xE6020324) --E6060334
eeObj.WriteMem32(0x00206A60,0xE6000328) --E605032C
eeObj.WriteMem32(0x00206A64,0x3C013C8E) --E6030318
eeObj.WriteMem32(0x00206A68,0x3421FA36) --E6040330
eeObj.WriteMem32(0x00206A6C,0x4481B000) --E6020320
eeObj.WriteMem32(0x00206A70,0x8CA20000) --E6020324
eeObj.WriteMem32(0x00206A74,0x3C013F00) --E6000328
eeObj.WriteMem32(0x00206A78,0x4481B800) --3C013C8E
eeObj.WriteMem32(0x00206A7C,0x84440070) --3421FA36
eeObj.WriteMem32(0x00206A80,0x8C430074) --4481B000
eeObj.WriteMem32(0x00206A84,0x0060F809) --8CA20000
eeObj.WriteMem32(0x00206A88,0x00A42021) --3C013F00
eeObj.WriteMem32(0x00206A8C,0xC60202F0) --4481B800
eeObj.WriteMem32(0x00206A90,0xC601031C) --84440070
eeObj.WriteMem32(0x00206A94,0x3C013F40) --8C430074 --vert
eeObj.WriteMem32(0x00206A98,0x4481A000) --0060F809
eeObj.WriteMem32(0x00206A9C,0x46140002) --00A42021
eeObj.WriteMem32(0x00206AA0,0x00000000) --C60202F0
eeObj.WriteMem32(0x00206AA4,0x00000000) --C601031C

--Font fix
--803f013c 00008144 0800e003 00000000 (2nd)
eeObj.WriteMem32(0x00220c70,0x3c013f40) --3c013f80

--graphics fix
eeObj.WriteMem32(0x00124674,0x10000074) -- 0x0x10000074 >> beq a1, zero, $00124848

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

All graphical issues fixed. Big thanks to Kozarovv for helping me with the "upside-down white shadow" fix

how to use this on psx emu? similar options?
--ds4-deadzone-adjust=0.04
 
Hello I wanted to thank you for the wonderful work you do I have tested various games on PS4 they work and thanks and I hope that in the future there will be a fix for Batman Begins pal
 
Hello I wanted to thank you for the wonderful work you do I have tested various games on PS4 they work and thanks and I hope that in the future there will be a fix for Batman Begins pal
 
Yes. Upside-down fix is for the white upside-down white shadow you would see when you look up in game. The black shadow flickering is gone as well.



Use this. All games except Street Fighter Alpha 3 and Gem fighter works flawlessly. Those 2 have stutter, PS4 pro boost mode recommended.

Code:
--gs-uprender=2x2
--gs-upscale=point
--gs-kernel-cl="h2lpool"
--gs-kernel-cl-up="h2lpool2x2"
--gs-h2l-list-opt=1
--gs-h2l-accurate-hash=1

--gs-progressive=1
--host-display-mode=16:9

ok but is there another configuration ? because my ps4 is a fat model of the first generation.
 
ok guys. i think this is a breakthrough.
this time no afr plugin needed.
all this application is sharing the same config and iso.

MCVVWqI.jpeg


as you can see , the app is only 66mb, so theres no way i can run this app without the games inside
V5NyWOS.jpeg



video: if you see here, the game refuse to launch on siren emulator, and works on red faction 2 emulator. just easy as that when trying to test diff. emu.
https://imgur.com/a/bRrbOnE
 
Last edited:
Thrillville [SLUS-21413]
emu used=primal
Code:
--gs-uprender=2x2
--gs-upscale=edgesmooth
--host-display-mode=full
--vu1-mpg-cycles=750
--gs-kernel-cl="h2lpool"
--gs-kernel-cl-up="h2lpool2x2"
--vu1-jalr-cache-policy=newprog #fix stutter
--safe-area-min=0.9
--gs-optimize=60fps

Lua:
Code:
--ws by Monsterjamp

apiRequest(1.1)

local eeObj = getEEObject()
local emuObj = getEmuObject()

local patcher   = function()
--FOV
eeObj.WriteMem32(0x20CC5540, 0x3FE374BC)
--Increases Draw Distance
eeObj.WriteMem32(0x20CC5558, 0x3FC00000)
--HUD Scaling
eeObj.WriteMem32(0x20CC5544, 0x3F666666)
eeObj.WriteMem32(0x20CC5548, 0x3F866666)
eeObj.WriteMem32(0x20CC554C, 0x3F8374BC)
--Disable Bloom,fog,interlace by Juano V
eeObj.WriteMem32(0x006D372C, 0x0)
eeObj.WriteMem32(0x006D3738, 0x0)
eeObj.WriteMem32(0x006D4950, 0x0)
eeObj.WriteMem32(0x006D3758, 0x0)
emuObj.ThrottleMax()
end
emuObj.AddVsyncHook(patcher)
 
Last edited:
Buffy the Vampire Slayer™ Chaos Bleeds® NTSC

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--gs-progressive=1
--host-display-mode=16:9
--cdvd-sector-read-cycles=3000
--mtap1=always

#emu used=wotm v2
LUA
Code:
-- Buffy the Vampire Slayer™ Chaos Bleeds®
-- boot/graphics fix by kozarovv
-- ported to PS4 by Stayhye
-- emu used=wotm v2(for throttlemax) (others work also < 4mb eboot.bin)

local gpr = require("ee-gpr-alias")

apiRequest(0.1)

local eeObj  = getEEObject()
local emuObj = getEmuObject()

local patcher = function()
--Replace bad VIF1 CMD (0x12) with VIF1 NOP.
eeObj.WriteMem32(0x0026AC48,0x3C060000) -- 0x3c061200 >> lui a2, $1200 (____12000000)
--

emuObj.ThrottleMax() -- <-- the ONLY reason War of the Monsters was used.
end

emuObj.AddVsyncHook(patcher)

No issues at all. Multi-tap enabled. Big thanks to Kozarovv for fix for PS3.
 

Similar threads

Back
Top