PS4 [Research]PS2 emulator configuration on PS4

Attachments

Last edited:
Updated Fix for The Incredible Hulk - Ultimate Destruction

[Research]PS2 emulator configuration on PS4
Found that to fully fix flickering graphics I needed to add clamping commands. Im sure not all of them are necessary but figure extra wouldn't hurt and gameplay was fixed. First portion of commands is added by PS2-FPKG program if "try to fix graphics" is ticked.
Code:
--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

--vu1-jr-cache-policy=newprog
--vu1-jalr-cache-policy=newprog
--vu0-jr-cache-policy=newprog
--vu0-jalr-cache-policy=newprog
Emu used = Jak v2
 
Last edited:
Updated Fix for The Incredible Hulk - Ultimate Destruction

[Research]PS2 emulator configuration on PS4
Found that to fully fix flickering graphics I needed to add clamping commands. Im sure not all of them are necessary but figure extra wouldn't hurt and gameplay was fixed. First portion of commands is added by PS2-FPKG program if "try to fix graphics" is ticked.
Code:
--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

--vu1-jr-cache-policy=newprog
--vu1-jalr-cache-policy=newprog
--vu0-jr-cache-policy=newprog
--vu0-jalr-cache-policy=newprog
Emu used = Jak v2
hi
Dose it fix the black screen,when enabling progressive scan?
 
Probably not, but there is no reason for prog scan because PS4 emulator does better job upscaling with 2x2 renderer and Edgesmooth. I noticed that in other games like Tomb Raider Legend and Anniversary.
 
https://www.psx-place.com/threads/r...onfiguration-on-ps4.16131/page-41#post-236797
Both TR graphics are fixed however both games could freeze when you try to skip a cutscene.
Thanks, they look much better with those fixes.
Additional fix
Tomb Raider Legend SLUS-21203
config-emu-ps4.txt
Code:
--gs-progressive=1
--gs-kernel-cl-up="up2x2skipinterp"
--gs-use-mipmap=1
--gs-kernel-cl="mipmap"
SLUS-21203_config.lua
Code:
-- Fix for thin vertical lines that separate screen picture, misallignment/tearing of screen during upscaling (was used in official PSN Red Dead Revolver)
apiRequest(1.0)
local emuObj = getEmuObject()
-- psm= SCE_GS_PSMCT32 (0)
emuObj.SetGsTitleFix( "forceSimpleFetch",  "reserved", {psm=0} )
emuObj.SetGsTitleFix( "fetchFromCurrBuff", "reserved", {psm=0} )
Emu used = Jak v2

Also used these codes by nemesis2000 to format widescreen just like in original tomb raider (big butt Lara:) and to fix letterbox cutscenes along with subtitles. Obviously you would need to turn on widescreen in-game option.
http://ps2wide.net/l.html#SLES-53908

PS: There is one more graphical glitch Im working on in this game. Where low water texture sometimes disappears at the edge of the screen in look-around mode. Might be caused by PS4 upscalling.
 
Last edited:
What commands u try already?

any fix for nightshade?

Picsart-22-10-08-17-29-46-589.png
 
WIP fix for Nightshade NTSC

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--gs-kernel-cl-up="up2x2skipinterp"
--host-display-mode=16:9

--vu0-opt-flags=1
--vu1-opt-flags=1
--cop2-opt-flags=1
--vu0-const-prop=0
--vu1-const-prop=0

#emu used=eternal ring v2
LUA
Code:
-- Nightshade
-- widescreen
-- emu used=eternal ring v2(others=unknown)

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

apiRequest(1.5)

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

local patcher = function()
--16:9
eeObj.WriteMem32(0x00183124,0x3c023f24)
eeObj.WriteMem32(0x00183128,0x34428b44)
eeObj.WriteMem32(0x0018314c,0x3c023f40)
eeObj.WriteMem32(0x00183100,0x3c014280)
eeObj.WriteMem32(0x0018310c,0x44815800)
eeObj.WriteMem32(0x002e1b40,0xe48b0070)

emuObj.ThrottleMax() --loading screen speed-up
end

emuObj.AddVsyncHook(patcher)

Testers needed. Seems to fix graphical issue in my little testing. I will update this post as I test more.
 
Last edited:
Config+Cheats for Turok™ Evolution®

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth

--host-display-mode=16:9


#emu used=rotk v1
LUA
Code:
-- Turok - Evolution (U)(SLUS-20333)
-- Widescreen hack by Arapapa
-- ported to PS4 lua
-- emu used=rotk v1

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

apiRequest(0.1)

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

local WS2 = function()
--16:9
--X-Fov
eeObj.WriteMem32(0x00325a28,0x3c023f40) --3c023f80
--Render fix
eeObj.WriteMem32(0x0023550c,0x3c023f2b) --3c023f00
--Enter Cheat Menu For Bonus Level by Code Master
eeObj.WriteMem32(0x207D8600,0x00000001)
--Load Game For Level Select by Code Master
eeObj.WriteMem32(0x207D85E8,0x00000001)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(WS2)

No issues.
 
Config for Colosseum: Road To Freedom

CLI

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

--cdvd-sector-read-cycles=4400
--host-display-mode=16:9

#emu used=aofa
LUA
Code:
-- Colosseum: Road To Freedom
-- Widescreen hack
-- emu used=aofa

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

apiRequest(0.1)

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

local patcher = function()
--16:9
eeObj.WriteMem32(0x00473258,0x3C013F40) --3C013F80 (Increases hor. axis)
eeObj.WriteMem32(0x004731d4,0x3C013EC3) --3C013F00

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)
No issues noticed. Tested a little.
 
Improvements+Cheats for Capcom vs SNK 2 (NTSC) (SCUS-20246)

CLI
Code:
--host-display-mode=full

--gs-uprender=2x2
--gs-upscale=EdgeSmooth

#emu used=rogue v1
LUA
Code:
-- Capcom vs SNK 2 (NTSC) (SCUS-20246)
-- Widescreen hack by gamemasterplc 
-- ported to PS4 lua by Stayhye
-- emu used=rogue v1

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

apiRequest(0.1)

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

local patcher = function()

--Have S. Akuma & U. Rugal
eeObj.WriteMem32(0x103F2514,0x0000FFFF)

eeObj.WriteMem32(0x2012489C,0x3C033FDD) --Upper Half of Clip Matrix Aspect Ratio Setting (1.73333f)
eeObj.WriteMem32(0x201248A0,0x3463DDDE) --Lower Half of Clip Matrix Aspect Ratio Setting (1.73333f)
eeObj.WriteMem32(0x20124B60,0x3C023FDD) --Upper Half of Aspect Ratio Setting (1.73333f)
eeObj.WriteMem32(0x20124B64,0x3443DDDE) --Lower Half of Aspect Ratio Setting (1.73333f)
eeObj.WriteMem32(0x20134DD8,0x24120340) --Set Internal Resolution to 832x480
eeObj.WriteMem32(0x2013ED94,0x3C024450) --Screen Invert Colour Width (832.0f)
eeObj.WriteMem32(0x2013EF74,0x3C024450) --Fadeout Width (832.0f)
eeObj.WriteMem32(0x2013F6A8,0x3C024450) --Screen Flicker Rectangle Width (832.0f)
eeObj.WriteMem32(0x2013F7E4,0x3C024450) --Continue Screen Background Colour Width (832.0f)
eeObj.WriteMem32(0x201438B4,0x24020340) --Viewport Width (832)
eeObj.WriteMem32(0x2014F534,0x3C02435A) --Line 1 End Screen Fail Text X Position (218.0f)
eeObj.WriteMem32(0x2014F580,0x3C02435A) --Line 2 End Screen Fail Text X Position (218.0f)
eeObj.WriteMem32(0x2014F58C,0x3C02435A) --Green Line 2 End Screen Fail Text X Position (218.0f)
eeObj.WriteMem32(0x2014F5C4,0x3C02435A) --Last Stage Warning Words X Position (218.0f)
eeObj.WriteMem32(0x2014F968,0x240400DE) --P1 Total Win Text X Position (222)
eeObj.WriteMem32(0x2014F980,0x240401DC) --P2 Total Win Text X Position (476)
eeObj.WriteMem32(0x2014F9E8,0x240400DE) --P1 Win Numbers Text X Position (222)
eeObj.WriteMem32(0x2014FA08,0x240401DC) --P2 Win Numbers Text X Position (476)
eeObj.WriteMem32(0x2014FA20,0x240400C6) --P1 Win Text X Position (198)
eeObj.WriteMem32(0x2014FA38,0x240401C4) --P2 Win Text X Position (452)
eeObj.WriteMem32(0x2014FA50,0x240400FE) --P1 Rate Text X Position (254)
eeObj.WriteMem32(0x2014FA68,0x240401FC) --P2 Rate Text X Position (508)
eeObj.WriteMem32(0x2014FBC0,0x24040146) --P1 Win Percentage Number X Position (326)
eeObj.WriteMem32(0x2014FBE0,0x24040244) --P2 Win Percentage Number X Position (580)
eeObj.WriteMem32(0x2014FBF8,0x2404016A) --Continue Text X Position (362)
eeObj.WriteMem32(0x2014FC10,0x24040150) --Replay Text X Position (336)
eeObj.WriteMem32(0x2014FC28,0x240401B8) --Save Text X Position (446)
eeObj.WriteMem32(0x2014FC40,0x24040184) --Exit Text X Position (388)
eeObj.WriteMem32(0x2015005C,0x240400D6) --P1 Human Text X Position (214)
eeObj.WriteMem32(0x20150078,0x240400D6) --P1 CPU Text X Position (214)
eeObj.WriteMem32(0x201500CC,0x240400D6) --P1 Character Names X Position (214)
eeObj.WriteMem32(0x20150130,0x240400D6) --P1 Handicap Text X Position (214)
eeObj.WriteMem32(0x2015015C,0x240401D4) --P2 Human Text X Position (468)
eeObj.WriteMem32(0x20150178,0x240401D4) --P2 CPU Text X Position (468)
eeObj.WriteMem32(0x201501CC,0x240401D4) --P2 Character Names X Position (468)
eeObj.WriteMem32(0x20150230,0x240401D4) --P2 Handicap Text X Position (468)
eeObj.WriteMem32(0x20150248,0x24040170) --Restart Text X Position (368)
eeObj.WriteMem32(0x20150260,0x24040140) --Replay Text X Position (320)
eeObj.WriteMem32(0x20150278,0x240401A8) --Resave Text X Position (424)
eeObj.WriteMem32(0x20150290,0x24040150) --File Select Text X Position (336)
eeObj.WriteMem32(0x201502A8,0x24040184) --Exit Text X Position (468)
eeObj.WriteMem32(0x20152784,0x3C02433F) --Main Menu Window Left Edge X Position (191.0f)
eeObj.WriteMem32(0x201527A0,0x3C0243CD) --Main Menu Window Right Edge X Position (411.0f)
eeObj.WriteMem32(0x201546E8,0x240201A0) --First Text Line Main Menu Windows Center X Position (416)
eeObj.WriteMem32(0x20154760,0x240201A0) --Second Text Line Main Menu Windows Center X Position (416)
eeObj.WriteMem32(0x201547D8,0x240201A0) --Third Text Line Main Menu Windows Center X Position (416)
eeObj.WriteMem32(0x20154A34,0x240201A0) --First Text Line Main Menu Center X Position (416)
eeObj.WriteMem32(0x20154AAC,0x240201A0) --Second Text Line Main Menu Center X Position (416)
eeObj.WriteMem32(0x20161000,0x24130174) --Color Edit Menu Character Name X Position (372)
eeObj.WriteMem32(0x20161288,0x3C024358) --Color Edit Menu Warning Window X Position (216.0f)
eeObj.WriteMem32(0x20161368,0x3C024358) --Color Edit Menu Warning Text X Position (216.0f)
eeObj.WriteMem32(0x201614A4,0x3C0243D0) --Color Edit Menu Warning Slash X Position (416.0f)
eeObj.WriteMem32(0x201614E0,0x3C0243D0) --Color Edit Menu Warning YES NO Options X Position (416.0f)
eeObj.WriteMem32(0x2017960C,0x24020080) --X Position of Player 1 Name (128)
eeObj.WriteMem32(0x201796B4,0x24420250) --X Position of Player 2 Name (592)
eeObj.WriteMem32(0x201905EC,0x24530060) --X Offset of Character Text in Arcade Mode (96)
eeObj.WriteMem32(0x201905F4,0x00000000) --Required for Text to be Positioned Properly
eeObj.WriteMem32(0x20195F94,0x24040278) --X Position of Survival Mode Timer (632)
eeObj.WriteMem32(0x2019DE8C,0x24040258) --X Position of Survival Mode Text (600)
eeObj.WriteMem32(0x2019DF28,0x24020235) --X Position of PRESS START BUTTON Text Ingame for Player 2 (565)
eeObj.WriteMem32(0x201A7AA8,0x3C0243D0) --Slash X Position on Save/Load Confirm Memory Card Screen
eeObj.WriteMem32(0x201A7AD8,0x3C0243D0) --Yes/No Options X Position on Save/Load Confirm Memory Card Screen
eeObj.WriteMem32(0x201AAC90,0x2402022E) --X Position of Song Location in Sound Test (558)
eeObj.WriteMem32(0x201AAD08,0x2402022E) --X Position of Song Title in Sound Test (558)
eeObj.WriteMem32(0x201ADDA8,0x240201A0) --X Position of Initialize History Question (416)
eeObj.WriteMem32(0x202D6A84,0x24040122) --X Position of PRESS START BUTTON Text in Demo (290)
eeObj.WriteMem32(0x202DB9CC,0x3C044450) --Pause Screensaver Width (832.0f)
eeObj.WriteMem32(0x202DBE90,0x24150100) --X Position of Left Edge of Pause Screen Window (256)
eeObj.WriteMem32(0x202DBED0,0x24030340) --Pause Screen Right Edge Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DBF40,0x24020340) --Pause Menu Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DBFA4,0x2404010D) --Pause Menu Cursor X Position (269)
eeObj.WriteMem32(0x202DBFD0,0x2404011B) --Pause Menu Options X Position (283)
eeObj.WriteMem32(0x202DC418,0x240400D0) --Exit Pause Menu Window X Position (208)
eeObj.WriteMem32(0x202DC434,0x240400E0) --First Line of Exit Confirmation X Position (224)
eeObj.WriteMem32(0x202DC448,0x24040160) --Second Line of Exit Confirmation X Position (352)
eeObj.WriteMem32(0x202DC480,0x24040168) --Yes Option Exit Menu X Position (360)
eeObj.WriteMem32(0x202DC494,0x240401BC) --No Option Exit Menu X Position (444)
eeObj.WriteMem32(0x202DC4AC,0x240401A0) --Slash Exit Menu X Position (416)
eeObj.WriteMem32(0x202DCBCC,0x24040080) --Controls Menu Header Window X Position (128)
eeObj.WriteMem32(0x202DCBE8,0x24070020) --Controls Menu Header Window Height (32)
eeObj.WriteMem32(0x202DCC08,0x24020340) --Controls Menu Header Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DCCC8,0x24060208) --P2 Controls Menu X Position (520)
eeObj.WriteMem32(0x202DD34C,0x240400A0) --Command List Header Window X Position (160)
eeObj.WriteMem32(0x202DD3F0,0x24020340) --Command List Header Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DD420,0x240400A0) --Command List Window X Position (160)
eeObj.WriteMem32(0x202DD454,0x240500A0) --Command List Commands X Position (160)
eeObj.WriteMem32(0x202DDE88,0x24060300) --Dummy Setting Header Window Header Width (768)
eeObj.WriteMem32(0x202DDEB4,0x24020340) --Dummy Setting Header Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DDED8,0x24060300) --Dummy Setting Window Width (768)
eeObj.WriteMem32(0x202DDF00,0x24060300) --Dummy Setting Cursor Width (768)
eeObj.WriteMem32(0x202DDFDC,0x24020304) --Dummy Setting Right-Side Text X Position (772)
eeObj.WriteMem32(0x202DE4E8,0x24060300) --Player Setting Header Window Header Width (768)
eeObj.WriteMem32(0x202DE514,0x24020340) --Player Setting Header Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DE538,0x24060300) --Player Setting Window Width (768)
eeObj.WriteMem32(0x202DE55C,0x24060300) --Player Setting Cursor Width (768)
eeObj.WriteMem32(0x202DE62C,0x24020304) --Player Setting Right-Side Text X Position (772)
eeObj.WriteMem32(0x202DEA10,0x24060280) --Training Options Header Window Header Width (640)
eeObj.WriteMem32(0x202DEA3C,0x24020340) --Training Options Header Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x202DEA60,0x24060280) --Training Options Window Width (640)
eeObj.WriteMem32(0x202DEA8C,0x24060280) --Training Options Cursor Width (640)
eeObj.WriteMem32(0x202DEB40,0x240202C4) --Training Options Right-Side Text X Position (708)
eeObj.WriteMem32(0x2033B910,0x24020340) --First Text Line Memory Card Menu Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033B984,0x24020340) --Second Text Line Memory Card Menu Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033D0A8,0x240501ED) --Memory Card Save Overwrite YES/NO Options Text X Position (493)
eeObj.WriteMem32(0x2033EA78,0x24020340) --Is now Playable Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EB2C,0x24020340) --Unlock Point Number Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EC5C,0x24030340) --Memory Card Slot Letter Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033ED40,0x24020340) --Groove Edit Mode Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EDEC,0x24030340) --Character Unlocked Name Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EE64,0x24020340) --Boss Battle Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EEB8,0x24020340) --Extra Option Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EF14,0x24020340) --Groove Edit Mode Text Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2033EFBC,0x3C024440) --Window Right Edge X Position of Autosave Window (768.0f)
eeObj.WriteMem32(0x2033F014,0x3C024440) --Window Right Border X Position of Autosave Window (770.0f)
eeObj.WriteMem32(0x20344BE8,0x3C024440) --Window Right Edge X Position of Memory Card Load Window (768.0f)
eeObj.WriteMem32(0x20344C3C,0x3C024440) --Window Right Border X Position of Memory Card Load Window (770.0f)
eeObj.WriteMem32(0x20344D54,0x24020340) --Static Text Lines Memory Card Load Alignment Calculation X Position (832)
eeObj.WriteMem32(0x20344E78,0x24020340) --Memory Card Load Space Required Alignment Calculation X Position (832)
eeObj.WriteMem32(0x20344FD0,0x24030340) --Memory Card Load Slot Number Alignment Calculation X Position (832)
eeObj.WriteMem32(0x20345170,0x24040168) --Memory Card Load Yes X Position (360)
eeObj.WriteMem32(0x2034518C,0x240401BC) --Memory Card Load No X Position (444)
eeObj.WriteMem32(0x203451AC,0x240401A0) --Memory Card Load Slash X Position (416)
eeObj.WriteMem32(0x2034973C,0x240201A0) --Replay Save Confirm Text X Position (416)
eeObj.WriteMem32(0x2034C7F0,0x24020340) --Replay Save Text Line 1 Alignment Calculation X Position (832)
eeObj.WriteMem32(0x2034C868,0x24020340) --Replay Save Text Line 2 Alignment Calculation X Position (832)
eeObj.WriteMem32(0x103BAE60,0x00000108) --Original Character X Position in Color Edit Menu (264)
eeObj.WriteMem32(0x103BAE74,0x000001D8) --Edited Character X Position in Color Edit Menu (472)
eeObj.WriteMem32(0x103BAF30,0x00000120) --ADX Big Logo X Position (288)
eeObj.WriteMem32(0x103BAF44,0x00000170) --ADX Small Logo X Position (368)
eeObj.WriteMem32(0x103BAF58,0x000000E0) --ADX Logo Copyright Symbol X Position (224)
eeObj.WriteMem32(0x103BAF6C,0x00000168) --ADX Logo Copyright Text X Position (360)
eeObj.WriteMem32(0x103BAFC4,0x000002A0) --Capcom vs SNK Demo Logo X Position (672)

end

emuObj.AddVsyncHook(patcher)

Works flawlessly!
 

Attachments

TEST 2 updated fix+Cheats for Spartan: Total Warrior (NTSC-U)

CLI
Code:
--gs-uprender=2x2
--gs-upscale=EdgeSmooth

--host-display-mode=16:9
--host-audio-latency=0.010

--ee-cycle-scalar=1.05
--iop-cycle-scalar=1.5
--fpu-accurate-mul-fast=0

#emu used=rotk v1
LUA
Code:
-- Spartan: Total Warrior (NTSC-U)
-- enhancements by mrjaredbeta
-- Widescreen patch
-- emu used=rotk v1

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

apiRequest(0.4)

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

local patcher = function()
--16:9
eeObj.WriteMem32(0x2057C814,0x3F100000) -- 3F400000
-- Disable Bloom/Coloring effects
eeObj.WriteMem32(0x0024f4ec,0x00000000)
eeObj.WriteMem32(0x0024f4f8,0x00000000)
--Unlock All Single Mission Replay by Code Master, Skiller
eeObj.WriteMem32(0x20381330,0x2406000E)
eeObj.WriteMem32(0x005EC1E8,0x0000000E)
--Unlock All Arena Challenges by Code Master, Skiller
eeObj.WriteMem32(0x20381344,0x24060005)
eeObj.WriteMem32(0x005EC238,0x00000005)
--Disable Hud by Code Master, Skiller
eeObj.WriteMem32(0x005EA685,0x00000001)
--Debug Free Camera by Code Master, Skiller
eeObj.WriteMem32(0x005EA68A,0x00000001)

eeObj.Vu1MpgCycles(1000)
emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Still has slight stutter in highly intense scenes. @mrjaredbeta PS3 fix did not help with speed, but made game look way better!
 
Config for Inuyasha™ The Secret of the Cursed Mask®

CLI

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

--host-display-mode=16:9

--vu1-mpg-cycles=600

--ee-cycle-scalar=2.0

#emu used=eternal ring v2
LUA
Code:
-- Inuyasha™ The Secret of the Cursed Mask®
-- Widescreen
-- emu used=eternal ring v2

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

apiRequest(1.0)

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

local patcher = function()
--3D field models
eeObj.WriteMem32(0x2020F680,0x3F400000)
eeObj.WriteMem32(0x2020F688,0x3F400000)
--eeObj.WriteMem32(0x2020F684,0x3FAAAAA8) --height - leaving in case anyone preffer taller/bigger characters
--3D menu models
eeObj.WriteMem32(0x202353E0,0x3F400000)
eeObj.WriteMem32(0x202353E8,0x3F400000)
--eeObj.WriteMem32(0x202353E4,0x3FAAAAA8) --height - same as above
--fights
eeObj.WriteMem32(0x2025808C,0x44555555)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Feedback welcome. Tested a little.
 
Config for Evil Dead: A Fistful of Boomstick

CLI

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

--host-display-mode=16:9
--cdvd-sector-read-cycles=5000
--lopnor-config=1


#emu used=aofa
LUA
Code:
-- Evil Dead: A Fistful of Boomstick
--
-- ported to ps4 lua by Stayhye
-- emu used=aofa

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

apiRequest(0.1)

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

local patcher = function()
--Infinite Health
--eeObj.WriteMem32(0x2014ADE8,0x240207D0)
--eeObj.WriteMem32(0x2014ADEC,0xA4620110)
--eeObj.WriteMem32(0x1014ADF2,0x00001000)

--Max Health
--eeObj.WriteMem32(0x102D2E2C,0x000007D0)

--Infinite Magic
--eeObj.WriteMem32(0x202E8368,0x43200000)

--Max Magic
--eeObj.WriteMem32(0x202E836C,0x43200000)

--Never Reload
--eeObj.WriteMem32(0x201CBFF4,0x00000000)

--Infinite Ammo
--eeObj.WriteMem32(0x201CBE90,0x00000000)

--Extra Ammo
--eeObj.WriteMem32(0x201CBE88,0x01022821)

--Debug Mode On
--eeObj.WriteMem32(0x202B70C8,0x00000001)

--Strong Ash
--eeObj.WriteMem32(0x202D2E4C,0x40400000)

--Super Strong Ash
--eeObj.WriteMem32(0x202D2E4C,0x40C00000)

--Have Left Weapon Codes
--Shovel
--eeObj.WriteMem32(0x202E9410,0x00000001)

--Chainsaw
--eeObj.WriteMem32(0x202E9414,0x00000001)

--Sickle
--eeObj.WriteMem32(0x202E9428,0x00000001)

--Sword
--eeObj.WriteMem32(0x202E942C,0x00000001)

--Pistol
--eeObj.WriteMem32(0x202E943C,0x00000001)

--Shotgun
--eeObj.WriteMem32(0x202E9444,0x00000001)

--Upgraded Shotgun
--eeObj.WriteMem32(0x202E944C,0x00000001)

--Hand-Cannon
--eeObj.WriteMem32(0x202E9450,0x00000001)

--Molotov Cocktail
--eeObj.WriteMem32(0x202E9454,0x00000001)

--Launcher
--eeObj.WriteMem32(0x202E9460,0x00000001)

--Dynamite
--eeObj.WriteMem32(0x202E9470,0x00000001)

--Have Right Weapon Codes
--Sharpened Chainsaw
--eeObj.WriteMem32(0x202E9418,0x00000001)

--Chainsaw
--eeObj.WriteMem32(0x202E9420,0x00000001)

--Diamond Chainsaw
--eeObj.WriteMem32(0x202E9424,0x00000001)

--Leecher
--eeObj.WriteMem32(0x202E9434,0x00000001)

--Exsanguinator
--eeObj.WriteMem32(0x202E9438,0x00000001

--Spray Pump
--eeObj.WriteMem32(0x202E9464,0x00000001

--Flame-Thrower
--eeObj.WriteMem32(0x202E9468,0x00000001

--Gatling Gun
--eeObj.WriteMem32(0x202E946C,0x00000001

--Infinite Ammo Codes
--Shotguns-Standard
--eeObj.WriteMem32(0x20250074,0x000903DE

--Shotguns-Shrapnel
--eeObj.WriteMem32(0x20250084,0x000903DE

--Shotguns-Explosive
--eeObj.WriteMem32(0x20250094,0x000903DE

--Pistols-Standard
--eeObj.WriteMem32(0x202500A4,0x000903DE

--Pistols-Armor Piercing
--eeObj.WriteMem32(0x202500B4,0x000903DE

--Pistols-Incendiary
--eeObj.WriteMem32(0x202500C4,0x000903DE

--Gatling Gun-Standard
--eeObj.WriteMem32(0x202500D4,0x000903DE

--Gatling Gun-Armor Piercing
--eeObj.WriteMem32(0x202500E4,0x000903DE

--Gatling Gun-Incendiary
--eeObj.WriteMem32(0x202500F4,0x000903DE

--Exsanguinator-Deadite Blood
--eeObj.WriteMem32(0x20250104,0x000903DE

--Hand-Cannon-Standard
--eeObj.WriteMem32(0x20250114,0x000903DE

--Hand-Cannon-Grape-Shot
--eeObj.WriteMem32(0x20250124,0x000903DE

--Molotov Cocktail-Standard
--eeObj.WriteMem32(0x20250134,0x000903DE

--Dynamite
--eeObj.WriteMem32(0x20250144,0x000903DE

--Launcher-Flare
--eeObj.WriteMem32(0x20250154,0x000903DE

--Flamethrower/Spray Pump-Gasoline
--eeObj.WriteMem32(0x20250164,0x000903DE

--Unlock Gallery Codes
--Dearborn Outskirts
--eeObj.WriteMem32(0x202E2090,0x00000001

--Downtown Dearborn
--eeObj.WriteMem32(0x202E2094,0x00000001

--Nathaniel Payne Museum
--eeObj.WriteMem32(0x202E2098,0x00000001

--Colonial Dearborn
--eeObj.WriteMem32(0x202E209C,0x00000001

--Civil War Dearborn
--eeObj.WriteMem32(0x202E20A0,0x00000001

--Evil Dearborn
--eeObj.WriteMem32(0x202E20A4,0x00000001

--All Galleries
--eeObj.WriteMem32(0x402E2090,0x00060001
--eeObj.WriteMem32(0x00000001,0x00000000

--Have Item Codes
--Health Pack
--eeObj.WriteMem32(0x002BAA31,0x00000063

--Health Vessel
--eeObj.WriteMem32(0x002BAA32,0x00000063

--Old Silver Coin
--eeObj.WriteMem32(0x002BAA34,0x00000001

--Silver Pendant
--eeObj.WriteMem32(0x002BAA35,0x00000001

--Silver Cigar Case
--eeObj.WriteMem32(0x002BAA36,0x00000001

--Silver Jug
--eeObj.WriteMem32(0x002BAA37,0x00000001

--Silver Goblet
--eeObj.WriteMem32(0x002BAA38,0x00000001

--Professor Knowby's Notebook
--eeObj.WriteMem32(0x002BAA39,0x00000001

--Old Gold Watch
--eeObj.WriteMem32(0x002BAA3A,0x00000001

--Cipher Key
--eeObj.WriteMem32(0x002BAA3B,0x00000001

--Brass Ornament
--eeObj.WriteMem32(0x002BAA3C,0x00000001

--Key To The Church
--eeObj.WriteMem32(0x002BAA3D,0x00000001

--Key To The Park
--eeObj.WriteMem32(0x002BAA3E,0x00000001

--Sealed Envelope
--eeObj.WriteMem32(0x002BAA3F,0x00000001

--Key To The Museum
--eeObj.WriteMem32(0x002BAA40,0x00000001

--Silver Spoon
--eeObj.WriteMem32(0x002BAA42,0x00000001

--Bar Of Silver
--eeObj.WriteMem32(0x002BAA44,0x00000001

--Cell Key
--eeObj.WriteMem32(0x002BAA48,0x00000001

--Wrench
--eeObj.WriteMem32(0x002BAA49,0x00000001

--S-Mart Name Badge
--eeObj.WriteMem32(0x002BAA4A,0x00000001

--Piece Of Torn Parchment
--eeObj.WriteMem32(0x002BAA4D,0x00000001

--Spell Book?
--eeObj.WriteMem32(0x002BAA4F,0x00000001

--To-Do List
--eeObj.WriteMem32(0x002BAA50,0x00000001

--Bizarre Occult Thing
--eeObj.WriteMem32(0x002BAA51,0x00000001

--Bizarre Occult Thing 2
--eeObj.WriteMem32(0x002BAA52,0x00000001

--Bizarre Occult Thing 3
--eeObj.WriteMem32(0x002BAA53,0x00000001

--Diamond Blade Used With A Chainsaw
--eeObj.WriteMem32(0x002BAA54,0x00000001

--More Powerful Seismic Smash
--eeObj.WriteMem32(0x002BAA55,0x00000001

--Super Crazy Door Opening SPell
--eeObj.WriteMem32(0x002BAA56,0x00000001

--Possession Spell
--eeObj.WriteMem32(0x002BAA57,0x00000001

--Key To The Lumber Yard
--eeObj.WriteMem32(0x002BAA58,0x00000063

--Police Badge
--eeObj.WriteMem32(0x002BAA59,0x00000001

--Key To The TV Station Gates
--eeObj.WriteMem32(0x002BAA5A,0x00000001

--TV Station Pass Card
--eeObj.WriteMem32(0x002BAA5B,0x00000001

--West Wing Security Pass
--eeObj.WriteMem32(0x002BAA5C,0x00000001

--Last Wing Security Pass
--eeObj.WriteMem32(0x002BAA5D,0x00000001

--Staff Pass Card
--eeObj.WriteMem32(0x002BAA5E,0x00000001

--Supernatural Divining Device
--eeObj.WriteMem32(0x002BAA5F,0x00000001

--Some Kind Of Vase
--eeObj.WriteMem32(0x002BAA60,0x00000001

--Red Crystal
--eeObj.WriteMem32(0x002BAA62,0x00000001

--Yellow Crystal
--eeObj.WriteMem32(0x002BAA63,0x00000001

--Blue Crystal
--eeObj.WriteMem32(0x002BAA64,0x00000001

--Silver Ring
--eeObj.WriteMem32(0x002BAA65,0x00000001

--Lighter
--eeObj.WriteMem32(0x002BAA66,0x00000001

--Bill Can
--eeObj.WriteMem32(0x002BAA67,0x00000001

--Piece Of Scrap Metal
--eeObj.WriteMem32(0x002BAA68,0x00000001

--Item Fragment
--eeObj.WriteMem32(0x002BAA69,0x00000001

--Item Fragment 2
--eeObj.WriteMem32(0x002BAA6A,0x00000001

--Set Of Bolt Cutters
--eeObj.WriteMem32(0x002BAA6B,0x00000001

--Pentagonal Piece Of Stone
--eeObj.WriteMem32(0x002BAA6C,0x00000001

--Piece Of A Spell Scroll
--eeObj.WriteMem32(0x002BAA6D,0x00000001

--Piece Of A Spell Scroll 2
--eeObj.WriteMem32(0x002BAA6E,0x00000001

--Piece Of A Spell Scroll 3
--eeObj.WriteMem32(0x002BAA6F,0x00000001

--Piece Of A Spell Scroll 4
--eeObj.WriteMem32(0x002BAA70,0x00000001

--Piece Of A Spell Scroll 5
--eeObj.WriteMem32(0x002BAA71,0x00000001

--Possession Spell For Using Against Guardians
--eeObj.WriteMem32(0x002BAA72,0x00000001

--Save Game Token
--eeObj.WriteMem32(0x002BAA73,0x00000063

--Locker Key
--eeObj.WriteMem32(0x002BAA74,0x00000001

--Green Crystal
--eeObj.WriteMem32(0x002BAA75,0x00000001

--Medical Bag
--eeObj.WriteMem32(0x002BAA76,0x00000063

--Cheap Tin Ring
--eeObj.WriteMem32(0x002BAA77,0x00000001

--Mana Vessel
--eeObj.WriteMem32(0x002BAA78,0x00000063

--Have Spell Codes (In Spell Book)
--Extra Strength
--eeObj.WriteMem32(0x202E8390,0x00000001

--Summon
--eeObj.WriteMem32(0x202E8394,0x00000001

--Seismic Wave
--eeObj.WriteMem32(0x202E8398,0x00000001

--Rain Of Fire
--eeObj.WriteMem32(0x202E839C,0x00000001

--Possess Deadite
--eeObj.WriteMem32(0x202E83A0,0x00000001

--Possess Guardian
--eeObj.WriteMem32(0x202E83A4,0x00000001

--Possess Dog
--eeObj.WriteMem32(0x202E83A8,0x00000001

--Possess Slavelord
--eeObj.WriteMem32(0x202E83AC,0x00000001

--Possess Warrior
--eeObj.WriteMem32(0x202E83B0,0x00000001

--Lightning
--eeObj.WriteMem32(0x202E83B4,0x00000001

--Dispel Runic Lock
--eeObj.WriteMem32(0x202E83B8,0x00000001

--All Spells
--eeObj.WriteMem32(0x402E8390,0x000B0001
--eeObj.WriteMem32(0x00000001,0x00000000

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Cheats are not enabled.
 
Last edited:
Config for Evil Dead - Regeneration (SLUS-21048)

CLI

Code:
--gs-uprender=2x2
--gs-upscale=edgesmooth
--gs-kernel-cl-up="up2x2tc"

--host-display-mode=16:9
--cdvd-sector-read-cycles=5000

--ee-cycle-scalar=1.5

--framelimiter=1
--framelimit-fps=60.0
--framelimit-scalar=1

#emu used=aofa
LUA
Code:
-- Evil Dead - Regeneration (U)(SLUS-21048)
-- Widescreen Hack by Arapapa
-- 60fps by asasega
-- ported to ps4 lua by Stayhye
-- emu used=aofa

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

apiRequest(2.0)

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

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

--Zoom (need render fix)
--00bf023c 1000bfff 00408244 (1st)
eeObj.WriteMem32(0x0036b8e4,0x3c02bec0) --3c02bf00

--Y-Fov
--02420146 02410446 00010446
eeObj.WriteMem32(0x0036b9a8,0x08177fd4)
eeObj.WriteMem32(0x005dff50,0x46014202)
eeObj.WriteMem32(0x005dff54,0x3c013f40)
eeObj.WriteMem32(0x005dff58,0x4481f000)
eeObj.WriteMem32(0x005dff5c,0x461e4203)
eeObj.WriteMem32(0x005dff60,0x080dae6b)
--60 fps
eeObj.WriteMem32(0x006EA9E8,0x00000001)
--Unlock All Levels by MadCatz
eeObj.WriteMem32(0x006EB618,0x00000009)

eeObj.SchedulerDelayEvent("vif1.dma", 0x6500)
eeObj.Vu1MpgCycles(800) 
emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Slight flicker on the edges of the screen at times. I think it is due to the widescreen patch. It's not that bad though..
 
Can someone convert this pcsx2 patch into Lua for ps4 ? I Don't know how to do it yet :D
i think it's this command
eeObj.WriteMem32() but i don't know the rest

*NTSC: patch=1,EE,001e71dc,word,24020001
*PAL: patch=1,EE,001E763C,word,24020001
Game: Spyro enter the dragonfly

Could it possibly be
NTSC: eeObj.WriteMem32(0x001E71DC,0x24020001)

PAL: eeObj.WriteMem32(0x001E763C,0x24020001)

will try later, this could possibly make spyro enter the dragonfly US Work on ps4
I Don't know if there's any difference in the address between ps4 and pcsx2
 
Last edited:
Can someone convert this pcsx2 patch into Lua for ps4 ? I Don't know how to do it yet :D
i think it's this command
eeObj.WriteMem32() but i don't know the rest

*NTSC: patch=1,EE,001e71dc,word,24020001
*PAL: patch=1,EE,001E763C,word,24020001
Game: Spyro enter the dragonfly

Could it possibly be
NTSC: eeObj.WriteMem32(0x001E71DC,0x24020001)

PAL: eeObj.WriteMem32(0x001E763C,0x24020001)

will try later, this could possibly make spyro enter the dragonfly US Work on ps4
I Don't know if there's any difference in the address between ps4 and pcsx2
yes looks like u do right way!
 
Thanks @Vika23 :D
Then if anyone can test NTSC version of spyro enter the dragonfly
SLUS-20315
then here's the NTSC lua for it

Code:
apiRequest(1.0)
local eeObj = getEEObject()
local patcher = function()
eeObj.WriteMem32(0x001E71DC,0x24020001)
end

Pal Version was tested and it's working perfect :D now only need someone with ntsc version
 
Last edited:

Similar threads

Back
Top