PS4 [Research]PS2 emulator configuration on PS4

No more audio stutter. I have no clue why mipmap settings would cause a speed up, but it did in this case. @mrjaredbeta could you look into disabling anything(bloom, shadows, etc) on this one? Also, this game seems to have the same type of uprender issue, similar to Need for Speed Carbon. Any help by anyone would be much appreciated.
I could look into it, but I am pretty sure the issue is inherent to the programming of the game.
 
Today test some new emus and try boot The Sims 2, it not crash as with ADK emu but have some Graphical Glitches! here is Video
Maybe mipmap commands will help or some!
 
Last edited by a moderator:
Fix for Reign of Fire NTSC
CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--gs-use-clut-merge=1
--gs-kernel-cl="clutmerge"
--gs-kernel-cl-up="clutmerge2x2"

--host-display-mode=16:9

#emu used=harvest moon STHL
LUA
Code:
-- Reign of Fire (U)(SLUS_205.56)
-- Widescreen Hack by Arapapa
-- emu used=harvest moon STHL

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

apiRequest(1.0)

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

local patcher = function()
--Widescreen hack 16:9

--Y-Fov
eeObj.WriteMem32(0x00135320,0x3c023fab) --3c023f80

--Zoom
eeObj.WriteMem32(0x001352b8,0x3c023f24) --3c023f00

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Total fix for graphical issues! Works great so far. @Bortoloti
 
Fix for Brothers in Arms: Earned in Blood PAL
CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--gs-kernel-cl-up="up2x2skipinterp"

--host-display-mode=16:9

#emu used=starwars RR
LUA
Code:
-- Brothers in Arms: Earned in Blood [PAL-M5] (SLES_536.59)
-- Widescreen pnach by El_Patas
-- ported to PS4 Lua
-- emu used=starwars RR

apiRequest(0.4)

local gpr       = require("ee-gpr-alias")
local emuObj      = getEmuObject()
local eeObj       = getEEObject()


local WS = function()

--Gameplay 16:9
eeObj.WriteMem32(0x002F19DC,0x3C023F40) --3C023F80 (Increases hor. axis)

--Menu font fix
eeObj.WriteMem32(0x003C60FC,0x3C033F40) --3C033F80
eeObj.WriteMem32(0x003C6104,0x3C033F80) --44830800
eeObj.WriteMem32(0x003C6108,0x44830800) --AE63010C
eeObj.WriteMem32(0x003C610C,0xAE63010C) --C6600108
eeObj.WriteMem32(0x003C6110,0xC6600108) --46010036
eeObj.WriteMem32(0x003C6114,0x46010036) --00000000

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(WS)

Graphical issues fixed. Switch to starwars emu to get past boot freeze. Testers needed.
 
Last edited:
WIP Fix for Test Drive NTSC
CLI
Code:
--gs-uprender=2x2
--gs-upscale=edgesmooth

--host-display-mode=16:9

--vu1-const-prop=0
--vu1-no-clamping=0

#emu used=parappa v1
LUA
Code:
-- Test Drive
-- Speed fix by mrjaredbeta
-- emu used=parappa v1

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

apiRequest(0.1)

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

--speed fix from PS3 config
eeInsnReplace(0x00178ad4, 0x0c0639ca, 0x00000000)
eeInsnReplace(0x00178c54, 0x0c05efce, 0x00000000)
eeInsnReplace(0x00178d04, 0x0c063acc, 0x00000000)
eeInsnReplace(0x00178e84, 0x0c05f05a, 0x00000000)

local patcher = function()
--Fix initial loading by looping for some time on EE side. That allow IOP proceed requests correctly.
local code_check = eeObj.ReadMem16(0x308530)
if code_check == 0x2262 then
eeObj.WriteMem32(0x20308530,0x0803fff7)
eeObj.WriteMem32(0x20308534,0x240f2000)
end
eeObj.WriteMem64(0x200fffdc,0x55eeffff0000702d)
eeObj.WriteMem64(0x200fffe4,0x0c0c226225ce0004)
eeObj.WriteMem64(0x200fffec,0x080c214e00000000)

end

emuObj.AddVsyncHook(patcher)

Emu got past loading freeze. Game still needs to be optimized. Still has audio stutter in graphically intense areas. @MadSaint1998

*edit PS3 config fixes remaining stutter
 
Last edited:
WIP Fix for Test Drive NTSC
CLI
Code:
--gs-uprender=2x2
--gs-upscale=edgesmooth

--host-display-mode=16:9

--vu1-const-prop=0
--vu1-no-clamping=0

#emu used=parappa v1
LUA
Code:
-- Test Drive
-- Speed fix attempt by @kozarovv @PCSX2 forums
-- emu used=parappa v1

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

apiRequest(0.1)

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

local patcher = function()
--[[
local code_check = eeObj.ReadMem16(0x308A30)
if code_check == 0x23a2 then
eeObj.WriteMem32(0x20308a30,0x0803fff7)
eeObj.WriteMem32(0x20308a34,0x240f2000)
end
eeObj.WriteMem64(0x200fffdc,0x55eeffff0000702d)
eeObj.WriteMem64(0x200fffe4,0x0c0c23a225ce0004)
eeObj.WriteMem64(0x200fffec,0x080c228e00000000)
--]]
local code_check = eeObj.ReadMem16(0x308530)
if code_check == 0x2262 then
eeObj.WriteMem32(0x20308530,0x0803fff7)
eeObj.WriteMem32(0x20308534,0x240f2000)
end
eeObj.WriteMem64(0x200fffdc,0x55eeffff0000702d)
eeObj.WriteMem64(0x200fffe4,0x0c0c226225ce0004)
eeObj.WriteMem64(0x200fffec,0x080c214e00000000)

end

emuObj.AddVsyncHook(patcher)

Emu got past loading freeze. Game still needs to be optimized. Still has audio stutter in graphically intense areas. @MadSaint1998
Thank you for taking your time at this game, i appreciate that :encouragement:

Did you tested the game Stuntman right ? this game has an issue that the car we are supposed to chase crashes on the walls and stuff during the Career mode, this issue is present on the PS3 netemu and PCSX2 so unfortunately the only way to complete it is on real ps2 hardware console, maybe if it can be completable on ps4's emulators would be fantastic !! i can send a video showcasing the problem

 
Last edited:
what is final fix ? When i pick soul arena and choice ivy it crash before fight! NTSC version!

This is what I ended up with
CLI
Code:
--gs-uprender=2x2
--gs-upscale=edgesmooth
--gs-kernel-cl-up="up2x2skipinterp"

--vif1-instant-xfer=0

--ee-cycle-scalar=1.82
--ee-regalloc-preserve-scalar=LoadStore

--vu0-mpg-cycles=1
--vu1-mpg-cycles=1

--host-vsync=1

#emu used=jakx v2
LUA
Code:
-- Soul Calibur III (SLUS-21216)
-- ported to PS4 lua
-- emu used=jakx v2

apiRequest(2.3)

local gpr       = require("ee-gpr-alias")
local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local gsObj       = getGsObject()

local thresholdArea = 600   

--emuObj.SetFormattedCard("soul3.card")
emuObj.PadSetLightBar(0, 10,176,4)
emuObj.SetDisplayAspectWide()
gsObj.SetDeinterlaceShift(1) 

local WS = function()
-- 16:9
eeObj.WriteMem32(0x0012a118,0x3c013f40)
eeObj.WriteMem32(0x0012a11c,0x34210000)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(WS)

Works great so far. Intro FMV and others stutter a bit, but that's all I've seen as a negative.
 
Thank you for taking your time at this game, i appreciate that :encouragement:

Did you tested the game Stuntman right ? this game has an issue that the car we are supposed to chase crashes on the walls and stuff during the Career mode, this issue is present on the PS3 netemu and PCSX2 so unfortunately the only way to complete it is on real ps2 hardware console, maybe if it can be completable on ps4's emulators would be fantastic !! i can send a video showcasing the problem

I tested all versions of this game (USA, EURO and JAP) on PS4 with different emulators, and in all of them the same problem occurs, to be honest the emulator that I went further in this game on PS4 is KOF98, but the exact same thing happens in the video, the most old ones still happen worse bugs.
 
WIP Fix for Herdy Gerdy NTSC
CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--gs-kernel-cl-up="up2x2skipinterp"

--cdvd-sector-read-cycles=5000

--host-display-mode=16:9

--ee-cycle-scalar=3.5

--vu1-mpg-cycles=1100
--vif1-instant-xfer=0
--vu0-mpg-cycles=200

#emu used=ADK
LUA
Code:
-- Herdy Gerdy (U)(SLUS-20231)
-- Widescreen hack by Arapapa
-- ported to PS4 lua
-- emu used=ADK

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

apiRequest(1.0)

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

local patcher = function()
--Widescreen hack 16:9
--Zoom
eeObj.WriteMem32(0x0012cca0,0x3c013f20) --3c013f00
--Render fix
eeObj.WriteMem32(0x0012cef8,0x3c013f40) --3c013f00
--vert
eeObj.WriteMem32(0x00260a34,0x3c013fab) --3c013f80
eeObj.WriteMem32(0x00260a44,0x3c0143c0) --3c014400
--60 fps
eeObj.WriteMem32(0x202EDABC,0x00000000)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Still has framerate issues at times.
 
Ah
here you go
Ahh, i'm having real trouble with this.

When I add the below files in PS2FPKG, i get a working iso, however there is frequent slowdown to the point where the experience gets ruined:

upload_2022-4-24_19-3-31.png


If i try to use the below txt config file in PS2 Classic GUI, the game simply crashes right after i boot it

upload_2022-4-24_19-4-17.png


I really dont know what to do here - what am I doing wrong??
 
This is what I ended up with
LUA
Code:
-- Soul Calibur III (SLUS-21216)
-- ported to PS4 lua
-- emu used=jakx v2

apiRequest(2.3)

local gpr       = require("ee-gpr-alias")
local emuObj      = getEmuObject()
local eeObj       = getEEObject()
local gsObj       = getGsObject()

local thresholdArea = 600  

--emuObj.SetFormattedCard("soul3.card")
emuObj.PadSetLightBar(0, 10,176,4)
emuObj.SetDisplayAspectWide()
gsObj.SetDeinterlaceShift(1)

local WS = function()
-- 16:9
eeObj.WriteMem32(0x0012a118,0x3c013f40)
eeObj.WriteMem32(0x0012a11c,0x34210000)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(WS)

What is the point of using the gsObj.SetDeinterlaceShift(1) when the game is not field rendered at all?
 
What is the point of using the gsObj.SetDeinterlaceShift(1) when the game is not field rendered at all?

left over debris from my template for 2.0 api

BTW, I need help finding the address that I can use to show FMVs are playing. I want to make a if/then for the VU1 to be at 1 for gameplay and 270 for FMVs..... can you help?
 
Ah

Ahh, i'm having real trouble with this.

When I add the below files in PS2FPKG, i get a working iso, however there is frequent slowdown to the point where the experience gets ruined:

View attachment 36999

If i try to use the below txt config file in PS2 Classic GUI, the game simply crashes right after i boot it

View attachment 37000

I really dont know what to do here - what am I doing wrong??

I don't know man. Those are the files I use on my build.
 

Similar threads

Back
Top