PS4 [Research]PS2 emulator configuration on PS4

try with this commands:
Code:
--gs-force-bilinear=1
--gs-kernel-cl="up2x2"
--gs-progressive=1
or this in lua:
Code:
apiRequest(0.6) 
 
local emuObj    = getEmuObject()

emuObj.SetGsTitleFix( "forceSimpleFetch", "reserved", { texMode=2 } )
--emuObj.SetGsTitleFix( "forceSimpleFetch", "reserved", {prim=6} )
You are a wizard! I tried both of them and it worked. The blur is working again.

I have one other small request if possible. The grass looks a bit like a moire pattern, its a bit pixelated. It was a problem as well in PS3 when emulating this game. I don't know if its possible to fix it or reduce the effect it a bit, but it would make a true remaster of the game :)
 
You are a wizard! I tried both of them and it worked. The blur is working again.

I have one other small request if possible. The grass looks a bit like a moire pattern, its a bit pixelated. It was a problem as well in PS3 when emulating this game. I don't know if its possible to fix it or reduce the effect it a bit, but it would make a true remaster of the game :)
To get rid of grass pixelation try to delete --gs-kernel-cl="up2x2" out of txt config file. No need to use lua texMode=2 as its same bilinear filtering.
 
Champions of Norrath (SLES-52325) (NEW 2024)

Working and LOOKING great. Huge credit to @Agrippa for complete deinterlacing solution. I used a PAL ver cause NTSC doesn't have a proper Widescreen fix with render fix. Might look into porting it over.

config-emu-ps4.txt
Code:
--gs-progressive=1
--gs-force-bilinear=1 #Sharper game text fix
--gs-kernel-cl-up="up2x2skipinterp" #fix for horizontal white lines

--vu1-no-clamping=0
--vu1-di-bits=0
--cop2-opt-flags=1
--vu0-const-prop=1
--vu1-const-prop=0
--vif1-instant-xfer=0   #broken graphics fix
--cdvd-sector-read-cycles=2250

#emu used=star wars racer revenge v1

LUA
Code:
-- Champions of Norrath (SLES-52325)
-- Widescreen Hack by ElHecht
-- No interlace fix by Agrippa
-- ported to PS4 by Stayhye and Drobovik
-- emu used=star wars racer revenge v1

apiRequest(0.4)

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

local widescreen = function()

--16:9
eeObj.WriteMem32(0x0015b1fc,0x3c013f40)-- 460c7382 hor fov
eeObj.WriteMem32(0x0015b214,0x34210000)-- e48e0000 hor fov
eeObj.WriteMem32(0x0015b218,0x4481f000)-- 00000000
eeObj.WriteMem32(0x0015b21c,0x461e6302)-- 00000000
eeObj.WriteMem32(0x0015b240,0x460c7382)-- 00000000
eeObj.WriteMem32(0x0015b244,0xe48e0000)-- 00000000
eeObj.WriteMem32(0x0017f49c,0x00000000)-- 4600d306
eeObj.WriteMem32(0x0017f4f0,0x00000000)-- 4600d306
eeObj.WriteMem32(0x0017b384,0x3c193f40)-- 00000000 renderfix
eeObj.WriteMem32(0x0017b388,0x4499f000)-- 00000000 renderfix
eeObj.WriteMem32(0x0017b3a0,0x4600b047)-- 3c01bf80
eeObj.WriteMem32(0x0017b3a4,0x461ece43)-- 44810800

-- Complete no interlace fix (Kept at 30fps for PS4, otherwise too slow)
--This game does support two modes -  60 fps field mode (1280x448 -> 640x224, half height front buffer, default one) and 30 fps frame mode (1280x448 -> 640x448, full height front buffer). At the end of each sent frame, the game does reset the EE timer, which is used for engine related tasks like texture decompressing, physics and, so called, video mode switching. Basically, the game does compare the counter value with the threshold one and switch the video mode accordingly (it is a non-compliant, direct GS register write, instead through the 02h syscall). All we have to do is to force the full frame mode, leaving the 60 ticks timestep intact from the field mode.
--Patching the engineFrameEnd__Fb function
--Force the video mode global variables
eeObj.WriteMem32(0x20392EC0,0x00000000) --trippleBufferMode - used for timestep calculations (for 60 tps this value needs to be 0x1) and supersampling settings (for frame mode it needs to be 0x0)
eeObj.WriteMem32(0x20392EC4,0x00000001) --fullFrameMode - enables the full height front buffer
eeObj.WriteMem32(0x20392F30,0x00000001) --engineFullFrameMode - enables additional sprites filtering - they suck less in the frame mode, it is a engine issue unfortunately (designed for the interlaced and half-pixel offset)

eeObj.Vu1MpgCycles(2300) -- speeds up gameplay and remove most stutter

end
emuObj.AddVsyncHook(widescreen)
 
Anyone ever looked into Drakengard 2 graphics issues (missing graphics on some NPCs, no dragon wings, and also invisible objective items)?
 
[SLUS21621] Shin Megami Tensei: Persona 3 FES Community Enhanced

The game has been fixed to be free of major graphical issues and slowdowns (minor ones may still occur) and correctly displays at 16:9 ratio. The experience has also been enhanced with many great mods made by the community. This means that for the patches to work you'll need to rebuild the original ISO with the mods described below (look here).

Emu = kof98um (King of Fighters '98: Ultimate Match)

Config Donwload (with custom startup image and icon): Mediafire

config-emu-ps4.txt
Code:
--path-snaps="/tmp/snapshots"
--path-recordings="/tmp/recordings"
--path-vmc="/tmp/vmc"
--path-emulog="/tmp/recordings"
--config-local-lua=""
--load-tooling-lua=0
--path-patches="/app0/patches"
#--path-trophydata="/app0/trophy_data"
#--path-featuredata="/app0/feature_data"
#--path-toolingscript="/app0/patches"
--ps2-title-id=SLUS-21621
--max-disc-num=1
--playgo-disc-per-chunk=0
--trophy-support=0
--gs-uprender=2x2
--gs-upscale=EdgeSmooth
--pad-record=0
--host-audio=1
--rom="PS20220WD20050620.crack"
--ps2-lang=system
--verbose-cdvd-reads=0
--host-osd=0

SLUS-21621_cli.conf
Code:
# Misc
--host-display-mode=full
--force-frame-blend=0
--gs-progressive=1
--ee-cycle-scalar=0.62
--host-audio-latency=0.05
# Mipmapping
--gs-use-mipmap=1
--gs-kernel-cl="mipmap"
--gs-kernel-cl-up="mipmap2x2"
# VU Speedhacks
--vu0-const-prop=1
--vu1-const-prop=1
--vu1-di-bits=0
--vu0-di-bits=0
--vu1-opt-vf00=2
--vu0-opt-vf00=2
--vu1-mpg-cycles=1400
--vu-custom-min-max=0
# IOP Speedhacks
--iop-const-folding=All
--iop-cycle-scalar=0.1
--cdvd-sector-seek-cycles=0.1
--cdvd-sector-read-cycles=0.1
# Default Optimizations
--fpu-no-clamping=0
--fpu-clamp-operands=1
--fpu-clamp-results=1
--vu0-no-clamping=0
--vu0-clamp-operands=1
--vu0-clamp-results=1
--vu1-no-clamping=0
--vu1-clamp-operands=1
--vu1-clamp-results=1
--cop2-no-clamping=0
--cop2-clamp-operands=1
--cop2-clamp-results=1
--vu0-opt-flags=1
--vu1-opt-flags=1
--cop2-opt-flags=1
--vu1-jr-cache-policy=newprog
--vu1-jalr-cache-policy=newprog
--vu0-jr-cache-policy=newprog
--vu0-jalr-cache-policy=newprog

SLUS-21621_config.lua
Code:
-- Shin Megami Tensei: Persona 3 FES (U)(SLUS-21621)
-- Authors: SuleMareVientu (conversion to PS4 emu, adaptive frameskip implementation) & all the modders listed below
-- (ISO is modded so CRC won't match, but patches will work on official ISO)
-- kof98um emu

apiRequest(1.0)

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

-- Force interlacing (and deinterlacing) off as asmodean's 480p patch doesn't work correctly (image flickers)
emuObj.SetDeinterlace(false)
emuObj.SetDisplayAspectWide() -- Force widescreen
emuObj.SetPs2Lang(1)
emuObj.PadSetLightBar(0, 15, 177, 244) -- Persona 3 Reload turquoise

-- Widescreen hack by nemesis2000, devina, CeruleansBlue, Arapapa, The Calculator
local Widescreen = function()
--X-Fov by CeruleansBlue
eeObj.WriteMem32(0x007cad1c,0x3fe38e38)

--partial HUD fix
eeObj.WriteMem32(0x00106e30,0x3c043f40)
eeObj.WriteMem32(0x00106e38,0x00701821)
eeObj.WriteMem32(0x00106e3c,0x24632bac)
eeObj.WriteMem32(0x00106e44,0x00000000)
eeObj.WriteMem32(0x00106e48,0x24630004)
eeObj.WriteMem32(0x00106e4c,0x3c043f80)

--persona art fix
eeObj.WriteMem32(0x00114a1c,0x3c033ec0)
eeObj.WriteMem32(0x00114a2c,0x3c023f90)

--zoom fix
eeObj.WriteMem32(0x003bb94c,0x0c132e4c)
eeObj.WriteMem32(0x003bb950,0x0220202d)
eeObj.WriteMem32(0x003bb954,0x0220202d)
eeObj.WriteMem32(0x003bb958,0x0200282d)
eeObj.WriteMem32(0x003bb95c,0x0000302d)
eeObj.WriteMem32(0x003bb960,0x0c132dfc)
eeObj.WriteMem32(0x003bb964,0x00000000)
eeObj.WriteMem32(0x003bb968,0x0c130e20)
eeObj.WriteMem32(0x003bb96c,0x0200202d)
eeObj.WriteMem32(0x003bb970,0x0240202d)
eeObj.WriteMem32(0x003bb974,0x3c013fa1)
eeObj.WriteMem32(0x003bb978,0x44810000)
eeObj.WriteMem32(0x003bb97c,0xc66c0100)
eeObj.WriteMem32(0x003bb980,0x0c069160)
eeObj.WriteMem32(0x003bb984,0x46006303)

-------------------------------------------------------

--In-Game Menu  Portraits fix by Arapapa
--eeObj.WriteMem32(0x00112b94,0x08030034)    -- Corrupts UI for some reason
eeObj.WriteMem32(0x000c00d0,0x94420000)
eeObj.WriteMem32(0x000c00d4,0x01224821)
eeObj.WriteMem32(0x000c00d8,0x00421021)
eeObj.WriteMem32(0x000c00dc,0x01221021)
eeObj.WriteMem32(0x000c00e0,0x00021082)
eeObj.WriteMem32(0x000c00e4,0x08044ae6)

--Main Character X-Position
eeObj.WriteMem32(0x0011cb14,0x3c0343f0)
eeObj.WriteMem32(0x0011cbc4,0x3c0343f0)
eeObj.WriteMem32(0x0011d118,0x3c0343f0)
eeObj.WriteMem32(0x0011d7f4,0x3c0343f0)
eeObj.WriteMem32(0x0011e0dc,0x3c0343f0)
eeObj.WriteMem32(0x00125e94,0x3c0343f0)
eeObj.WriteMem32(0x001260c8,0x3c0343f0)
eeObj.WriteMem32(0x0014ca5c,0x3c0343f0)
eeObj.WriteMem32(0x00160914,0x3c0343f0)
eeObj.WriteMem32(0x00160b64,0x3c0343f0)
eeObj.WriteMem32(0x0018a744,0x3c0343f0)

--Menu (Status) Main Character X-Position #2
eeObj.WriteMem32(0x0012633c,0x240301f5)
eeObj.WriteMem32(0x00126530,0x240301f5)

--Partner Character X-Position
eeObj.WriteMem32(0x00164d84,0x3c0243d8)
eeObj.WriteMem32(0x001653f8,0x3c0243d8)
eeObj.WriteMem32(0x0016573c,0x3c0243d8)
eeObj.WriteMem32(0x00165b90,0x3c0243d8)
eeObj.WriteMem32(0x00166548,0x3c0243d8)

--Main Character (In-Game Menu)  Shadow
eeObj.WriteMem32(0x00126890,0x3c013fab)
eeObj.WriteMem32(0x001268b0,0xafa100b0)

--Shadow (In-Game Menu) X-Position fix
eeObj.WriteMem32(0x00126ca4,0x3c024398)
eeObj.WriteMem32(0x00126dd8,0x3c024398)
eeObj.WriteMem32(0x00126efc,0x3c024398)
eeObj.WriteMem32(0x00127044,0x3c024398)
eeObj.WriteMem32(0x001270f0,0x3c024398)
eeObj.WriteMem32(0x00127184,0x3c024398)
eeObj.WriteMem32(0x0012729c,0x3c024398)
eeObj.WriteMem32(0x00164cf0,0x3c0243cc)

-------------------------------------------------------

--Popup portraits, Clock and etc.. fix by Arapapa
eeObj.WriteMem32(0x004aa460,0x08030024)
eeObj.WriteMem32(0x000c0090,0x46000802)
eeObj.WriteMem32(0x000c0094,0x3c013f40)
eeObj.WriteMem32(0x000c0098,0x4481f000)
eeObj.WriteMem32(0x000c009c,0x461e0002)
eeObj.WriteMem32(0x000c00a0,0x0812a919)

------------------------------------------------

-- Detect  'Open the in-game menu'
local code_check = eeObj.ReadMem16(0x7cdf48)
if code_check ~= 0x0000 then
    eeObj.WriteMem32(0x004aa460,0x46000802)
--    eeObj.WriteMem32(0x00112b94,0x08030034)    -- Corrupts UI for some reason
else
    eeObj.WriteMem32(0x004aa460,0x08030024)
--    eeObj.WriteMem32(0x00112b94,0x84420000)    -- Corrupts UI for some reason
end

-- Detect 'Scene changing'
local code_check = eeObj.ReadMem16(0x7cded4)
if code_check ~= 0x0000 then
    eeObj.WriteMem32(0x004aa444,0x3c02402a)
else
    eeObj.WriteMem32(0x004aa444,0x3c024000)
end

------------------------------------------------

--Arcana Card fix by Arapapa
eeObj.WriteMem32(0x003a0374,0x3c0242be)
eeObj.WriteMem32(0x003a0448,0x3c0242be)
eeObj.WriteMem32(0x003a0060,0x3c024240)

--Shuffle Time (Card) fix by Arpapa
eeObj.WriteMem32(0x0020caf4,0x08168754)
eeObj.WriteMem32(0x005a1d50,0xc600002c)
eeObj.WriteMem32(0x005a1d54,0x3c013f40)
eeObj.WriteMem32(0x005a1d58,0x4481f000)
eeObj.WriteMem32(0x005a1d5c,0x461e0002)
eeObj.WriteMem32(0x005a1d60,0x080832be)

-----------------------------------------------------------

--S.LINK - Community (2D Characters & Cards) fix by Arapapa
eeObj.WriteMem32(0x00114390,0x0816875a)
eeObj.WriteMem32(0x005a1d68,0xc4400000)
eeObj.WriteMem32(0x005a1d6c,0x3c013f40)
eeObj.WriteMem32(0x005a1d70,0x4481f000)
eeObj.WriteMem32(0x005a1d74,0x461e0002)
eeObj.WriteMem32(0x005a1d78,0x080450e5)

-----------------------------------------------------------

--Calculator's Tartarous offset
--Select floor menu (Animation hold)
eeObj.WriteMem32(0x00441720,0x3c02c260)
eeObj.WriteMem32(0x004416e8,0x0c1fb4cb)
--Select floor menu (Animation enter)
eeObj.WriteMem32(0x004477f8,0x3c02c260)
eeObj.WriteMem32(0x0043fbb8,0x0c1fb4cb)
--Select floor menu (Animation exit)
eeObj.WriteMem32(0x0043fc64,0x3c02c260)
eeObj.WriteMem32(0x004477c0,0x0c1fb4cb)
--Progress to next block (Animation enter)
eeObj.WriteMem32(0x0044a4ec,0x3c02c260)
eeObj.WriteMem32(0x0043ea58,0x0c1fb4cb)
--Progress to next block (Animation hold)
eeObj.WriteMem32(0x00442cc0,0x3c02c260)
eeObj.WriteMem32(0x00442c88,0x0c1fb4cb)
--Progress to next block (Animation exit)
eeObj.WriteMem32(0x0044341c,0x3c02c260)
eeObj.WriteMem32(0x00443370,0x0c1fb4cb)

--Hooked draw call to offset glow-outline
eeObj.WriteMem32(0x007ed32c,0x3c02c338)
eeObj.WriteMem32(0x007ed330,0x4482e800)
eeObj.WriteMem32(0x007ed334,0x08045034)
eeObj.WriteMem32(0x007ed338,0x461d6b41)

-----------------------------------------------------------

--S.LINK - Community 2D Characters X-Position
eeObj.WriteMem32(0x0013a2ac,0x3c024405)
eeObj.WriteMem32(0x0013a350,0x3c024400)

--S.LINK - Community Cards X-Position
eeObj.WriteMem32(0x001373f4,0x3c024250)

--S.LINK - Main Menu Shadows X-Position
eeObj.WriteMem32(0x001368fc,0x3c0341b0)
eeObj.WriteMem32(0x001379f0,0x3c0341b0)
eeObj.WriteMem32(0x0013804c,0x3c0341b0)
eeObj.WriteMem32(0x00138618,0x3c0341b0)
eeObj.WriteMem32(0x00138ce4,0x3c0341b0)

--S.LINK - Community Cards #2 X-Size
eeObj.WriteMem32(0x00115148,0x0803002c)
eeObj.WriteMem32(0x000c00b0,0xc4600000)
eeObj.WriteMem32(0x000c00b4,0x3c013f40)
eeObj.WriteMem32(0x000c00b8,0x4481f000)
eeObj.WriteMem32(0x000c00bc,0x461e0002)
eeObj.WriteMem32(0x000c00c0,0x08045453)

--S.LINK - Community Cards #2 X-Position
eeObj.WriteMem32(0x001395dc,0x3c024256)

--S.LINK - Reverse Community Cards #1 X-Position
eeObj.WriteMem32(0x00137398,0x3c024250)
eeObj.WriteMem32(0x0013749c,0x3c0241b6)

--S.LINK - Reverse Community Cards #2
eeObj.WriteMem32(0x00139544,0x3c024010)
eeObj.WriteMem32(0x00139470,0x3c024216)

-----------------------------------------------------------

--Popup Portraits (Left top, In the Battles) fix by Arapapa
eeObj.WriteMem32(0x003c90ac,0x3c024540)

--Popup Portraits (Left top, In the Battles) X-Position
eeObj.WriteMem32(0x003c9084,0x00000000)
eeObj.WriteMem32(0x003ab7f8,0x3c020000)

--Flare effect fix by Arapapa
eeObj.WriteMem32(0x00347b38,0x3c023fc0)
eeObj.WriteMem32(0x00347b50,0x08030008)
eeObj.WriteMem32(0x000c0020,0x46000942)
eeObj.WriteMem32(0x000c0024,0x461e2943)
eeObj.WriteMem32(0x000c0028,0x080d1ed5)

-----------------------------------------------------------

--Head Portraits (Right, In the Battles) fix by Arapapa
eeObj.WriteMem32(0x0022d804,0x0803000c)
eeObj.WriteMem32(0x000c0030,0x26440010)
eeObj.WriteMem32(0x000c0034,0xc7bf0078)
eeObj.WriteMem32(0x000c0038,0x3c013f40)
eeObj.WriteMem32(0x000c003c,0x4481f000)
eeObj.WriteMem32(0x000c0040,0x461effc2)
eeObj.WriteMem32(0x000c0044,0xe7bf0078)
eeObj.WriteMem32(0x000c0048,0x0808b602)
eeObj.WriteMem32(0x0022d904,0x08030014)
eeObj.WriteMem32(0x000c0050,0x26440110)
eeObj.WriteMem32(0x000c0054,0xc7bf0078)
eeObj.WriteMem32(0x000c0058,0x3c013f40)
eeObj.WriteMem32(0x000c005c,0x4481f000)
eeObj.WriteMem32(0x000c0060,0x461effc2)
eeObj.WriteMem32(0x000c0064,0xe7bf0078)
eeObj.WriteMem32(0x000c0068,0x0808b642)

--Head Portraits (Right, In the Battles) X-Position
eeObj.WriteMem32(0x0022d7c4,0x3c034220)

--Emoticon (In the Battles) fix by Arapapa
eeObj.WriteMem32(0x0022dd98,0x0803001c)
eeObj.WriteMem32(0x000c0070,0x26440530)
eeObj.WriteMem32(0x000c0074,0xc7bf0078)
eeObj.WriteMem32(0x000c0078,0x3c013f40)
eeObj.WriteMem32(0x000c007c,0x4481f000)
eeObj.WriteMem32(0x000c0080,0x461effc2)
eeObj.WriteMem32(0x000c0084,0xe7bf0078)
eeObj.WriteMem32(0x000c0088,0x0808b767)

--Emoticon X-Position
eeObj.WriteMem32(0x0022dd58,0x3c0342d0)

-----------------------------------------------------------

--Title Menu fix by Arapapa
eeObj.WriteMem32(0x0026e7d4,0x3c013fab)
eeObj.WriteMem32(0x0026e7e4,0xafa10068)
eeObj.WriteMem32(0x0026e818,0xafa10068)
eeObj.WriteMem32(0x0026e84c,0xafa10068)
eeObj.WriteMem32(0x0026e880,0xafa10068)
eeObj.WriteMem32(0x0026eaac,0xafa10068)

--Title Menu (Shadow)
eeObj.WriteMem32(0x0026ea50,0x3c02439b)

--Sub Menu - Select Episode (Shadow)
eeObj.WriteMem32(0x0026b524,0xc7808478)
eeObj.WriteMem32(0x0026b534,0x461e0002)
end    -- Widescreen

-- FMV Fix by Alexankitty
local FMVFix = function()
eeObj.WriteMem32(0x0010afc8,0x081a63af)
eeObj.WriteMem32(0x0010afcc,0x00000000)
eeObj.WriteMem32(0x0010afd0,0x14620006)
eeObj.WriteMem32(0x0010afd4,0x00000000)
eeObj.WriteMem32(0x0010afd8,0x3c023e00)
eeObj.WriteMem32(0x0010afdc,0x3c1443e0)
eeObj.WriteMem32(0x0010afe0,0x3c1542a0)
eeObj.WriteMem32(0x0010afe4,0x3c160bb0)
eeObj.WriteMem32(0x0010afe8,0x10000005)
eeObj.WriteMem32(0x0010afec,0x00000000)
eeObj.WriteMem32(0x0010aff0,0x3c023e00)
eeObj.WriteMem32(0x0010aff4,0x3c1443e1)
eeObj.WriteMem32(0x0010aff8,0x3c1541f8)
eeObj.WriteMem32(0x0010affc,0x3c161850)
eeObj.WriteMem32(0x0010b000,0xae6200e4)
eeObj.WriteMem32(0x0010b004,0xae620164)
eeObj.WriteMem32(0x0010b008,0xae740124)
eeObj.WriteMem32(0x0010b00c,0xae7401a4)
eeObj.WriteMem32(0x0010b010,0xae7500e0)
eeObj.WriteMem32(0x0010b014,0xae750120)
eeObj.WriteMem32(0x0010b018,0xae76015f)
eeObj.WriteMem32(0x0010b01c,0xae76019f)
eeObj.WriteMem32(0x0010b020,0x0000a02d)
eeObj.WriteMem32(0x0010b024,0x0000a82d)
eeObj.WriteMem32(0x0010b028,0x0000b02d)
--FMV Jump
eeObj.WriteMem32(0x00698ebc,0x3c024400)
eeObj.WriteMem32(0x00698ec0,0xae620160)
eeObj.WriteMem32(0x00698ec4,0xae6201a0)
eeObj.WriteMem32(0x00698ec8,0x3c02005d)
eeObj.WriteMem32(0x00698ecc,0x24424b70)
eeObj.WriteMem32(0x00698ed0,0x00431021)
eeObj.WriteMem32(0x00698ed4,0x84430000)
eeObj.WriteMem32(0x00698ed8,0x24020005)
eeObj.WriteMem32(0x00698edc,0x08042bf3)
eeObj.WriteMem32(0x00698ee0,0x00000000)
--1px tiling fix
eeObj.WriteMem32(0x0010b0e4,0x2463ffff)
eeObj.WriteMem32(0x0010b0e8,0x44830000)
end    -- FMVFix

-- Widescreen credits fix - by Alexankitty, vim, REDACTED, Primogenitor
local FMVWideCreditsFix = function()
eeObj.WriteMem32(0x0027a838,0x081a63ff)
eeObj.WriteMem32(0x0027a83c,0x00000000)
eeObj.WriteMem32(0x0027a878,0x00000000)
eeObj.WriteMem32(0x00698ffc,0x24020009)
eeObj.WriteMem32(0x00699000,0x14620003)
eeObj.WriteMem32(0x00699004,0x00000000)
eeObj.WriteMem32(0x00699008,0x3c0242b0)
eeObj.WriteMem32(0x0069900c,0x0809ea1d)
eeObj.WriteMem32(0x00699010,0x00000000)
eeObj.WriteMem32(0x00699014,0x16400003)
eeObj.WriteMem32(0x00699018,0x00000000)
eeObj.WriteMem32(0x0069901c,0x3c024280)
eeObj.WriteMem32(0x00699020,0x0809ea1d)
eeObj.WriteMem32(0x00699024,0x00000000)
eeObj.WriteMem32(0x00699028,0x0809ea0f)
end    -- FMVWideCreditsFix

-- Unstretched Textboxes - Centered Dialogue Box Text by StavaasEVG
local UnstretchedTextboxes = function()
--Speaker Name
eeObj.WriteMem32(0x003a6908,0x240306d0)
eeObj.WriteMem32(0x003a43f8,0x240306d0)
eeObj.WriteMem32(0x003a442c,0x240306d0)

--Speaker Line
eeObj.WriteMem32(0x003a6938,0x24030770)
eeObj.WriteMem32(0x003a4460,0x24030770)
eeObj.WriteMem32(0x003a4494,0x24030770)

--Answers
eeObj.WriteMem32(0x003a3984,0x24021040)
eeObj.WriteMem32(0x003a3738,0x24021040)
end    -- UnstretchedTextboxes

-- Velvet Room BG Patch V2 by Tupelov
local VelvetBGPatch = function()
-- Velvet room fusion call
eeObj.WriteMem32(0x003d3d84,0x24040001)
eeObj.WriteMem32(0x003d3d88,0x24050001)

-- Edits fusion room call to not make npcs invisible
eeObj.WriteMem32(0x003d3d98,0x24050001)
eeObj.WriteMem32(0x003d3da8,0x24050001)
eeObj.WriteMem32(0x003d3db8,0x24050001)

-- Edits compendium call
eeObj.WriteMem32(0x003e9320,0x24040001)
eeObj.WriteMem32(0x003e9324,0x24050001)

-- Edits compendium call to not make npcs invisble
eeObj.WriteMem32(0x003e9338,0x24050001)
eeObj.WriteMem32(0x003e9344,0x24050001)
eeObj.WriteMem32(0x003e9358,0x24050001)

-- Edits igor call
eeObj.WriteMem32(0x003d51a0,0x24040001)
eeObj.WriteMem32(0x003d51a4,0x24050001)

-- Edits igor call to not make npcs invisible
eeObj.WriteMem32(0x003d51b4,0x24050001)
eeObj.WriteMem32(0x003d51c4,0x24050001)
eeObj.WriteMem32(0x003d51d4,0x24050001)

-- Makes the game not load the crusty background
eeObj.WriteMem32(0x006a7a90,0x00000000)
eeObj.WriteMem32(0x006a7a94,0x00000000)
eeObj.WriteMem32(0x006a7a98,0x00000000)
eeObj.WriteMem32(0x006a7a9c,0x00000000)
eeObj.WriteMem32(0x006a7aa0,0x00000000)
eeObj.WriteMem32(0x006a7aa4,0x00000000)
eeObj.WriteMem32(0x006a7aa8,0x00000000)
eeObj.WriteMem32(0x00620194,0x00000000)
eeObj.WriteMem32(0x00620198,0x00000000)
eeObj.WriteMem32(0x0062019c,0x00000000)
eeObj.WriteMem32(0x006201a0,0x00000000)
eeObj.WriteMem32(0x006201a4,0x00000000)
eeObj.WriteMem32(0x006201a8,0x00000000)
end    -- VelvetBGPatch

-- Controllable party members (by TGE)
local DirectCommands = function()
eeObj.WriteMem32(0x0020207c,0x00000000)
eeObj.WriteMem32(0x0020208c,0x8f84b6fc)
eeObj.WriteMem32(0x00202090,0x8c840254)
eeObj.WriteMem32(0x00202094,0x8c840030)
eeObj.WriteMem32(0x00202098,0x8c8400a4)

-- Fusion Skill Fix
eeObj.WriteMem32(0x0020203c,0x14400005)
eeObj.WriteMem32(0x00202040,0x8e340254)
eeObj.WriteMem32(0x00202054,0x8e330148)
eeObj.WriteMem32(0x0020207c,0x3c040068)
eeObj.WriteMem32(0x00202080,0x24844f48)
eeObj.WriteMem32(0x00202084,0x8f84b6fc)
eeObj.WriteMem32(0x00202088,0x8c840254)
eeObj.WriteMem32(0x0020208c,0x8c840030)
eeObj.WriteMem32(0x00202090,0x8c8400a4)
eeObj.WriteMem32(0x00202094,0x0c05d200)
eeObj.WriteMem32(0x00202098,0x00000000)
eeObj.WriteMem32(0x0020209c,0x0040902d)
eeObj.WriteMem32(0x002020a0,0x0240202d)
eeObj.WriteMem32(0x002020a4,0x0c05da8c)
eeObj.WriteMem32(0x002020a8,0x00000000)
eeObj.WriteMem32(0x002020ac,0x0040a82d)
eeObj.WriteMem32(0x002020b0,0x0240202d)
eeObj.WriteMem32(0x002020b4,0x0c05ccdc)
eeObj.WriteMem32(0x002020b8,0x00000000)
eeObj.WriteMem32(0x002020bc,0x0040b02d)
eeObj.WriteMem32(0x002020c0,0x0000902d)
eeObj.WriteMem32(0x002020c4,0x0c0c3030)
eeObj.WriteMem32(0x002020c8,0x00000000)
eeObj.WriteMem32(0x002020cc,0x10400013)
eeObj.WriteMem32(0x002020d0,0x00000000)
eeObj.WriteMem32(0x002020d4,0x16740011)
eeObj.WriteMem32(0x0028ddfc,0x8c630a2c)
eeObj.WriteMem32(0x0028de00,0x94770002)
eeObj.WriteMem32(0x0028de08,0x12e20007)
eeObj.WriteMem32(0x0028de0c,0x94630010)
eeObj.WriteMem32(0x0028de10,0x2402000b)
eeObj.WriteMem32(0x0028de14,0x0260202d)
eeObj.WriteMem32(0x0028de18,0x10620005)
eeObj.WriteMem32(0x0028de1c,0x2405001b)
eeObj.WriteMem32(0x0028de20,0x10000003)
eeObj.WriteMem32(0x0028de24,0x2405001a)
eeObj.WriteMem32(0x0028b1d0,0x3c160069)
eeObj.WriteMem32(0x0028b1d8,0x36d6acdc)
eeObj.WriteMem32(0x0028b1e8,0xaec00000)
eeObj.WriteMem32(0x0028b1f0,0x0000b02d)
eeObj.WriteMem32(0x002968d0,0x3c170069)
eeObj.WriteMem32(0x002968ec,0x36f7acdc)
eeObj.WriteMem32(0x00296900,0x8ef70000)
eeObj.WriteMem32(0x0029691c,0x946200a4)
eeObj.WriteMem32(0x00296928,0x10500002)
eeObj.WriteMem32(0x0029692c,0x00000000)
eeObj.WriteMem32(0x00296930,0x12e00060)
eeObj.WriteMem32(0x00296934,0x0000b82d)
eeObj.WriteMem32(0x00296938,0x8f83b6fc)
eeObj.WriteMem32(0x0029693c,0x94620b9e)
eeObj.WriteMem32(0x00296940,0x24420001)
eeObj.WriteMem32(0x00296944,0xa4620b9e)
eeObj.WriteMem32(0x00296948,0x8f82b6fc)
eeObj.WriteMem32(0x00296950,0x8c52014c)
eeObj.WriteMem32(0x00296ad0,0x0000b02d)
eeObj.WriteMem32(0x00296ad8,0xa682001a)
eeObj.WriteMem32(0x0028ac5c,0x9683001a)
eeObj.WriteMem32(0x0028ac60,0x3063ffbf)
eeObj.WriteMem32(0x0028ac64,0xa683001a)
eeObj.WriteMem32(0x0028ac68,0x96830018)
eeObj.WriteMem32(0x0028ac6c,0x00000000)
eeObj.WriteMem32(0x0028ac70,0x081a6af8)
eeObj.WriteMem32(0x002004f0,0x081a6b6a)
eeObj.WriteMem32(0x0069ada8,0x8f93b6fc)
eeObj.WriteMem32(0x0069adac,0x8e770148)
eeObj.WriteMem32(0x0069adb0,0x12e0000a)
eeObj.WriteMem32(0x0069adb4,0x00000000)
eeObj.WriteMem32(0x0069adb8,0x8ef3000c)
eeObj.WriteMem32(0x0069adbc,0x02e0a02d)
eeObj.WriteMem32(0x0069adc0,0x24170005)
eeObj.WriteMem32(0x0069adc4,0x16f3fffa)
eeObj.WriteMem32(0x0069adc8,0x8e9704a4)
eeObj.WriteMem32(0x0069adcc,0x8f93b6fc)
eeObj.WriteMem32(0x0069add0,0x8e770148)
eeObj.WriteMem32(0x0069add4,0x16f40003)
eeObj.WriteMem32(0x0069add8,0x00000000)
eeObj.WriteMem32(0x0069addc,0x10400003)
eeObj.WriteMem32(0x0069ade0,0x00000000)
eeObj.WriteMem32(0x0069ade4,0x0808013e)
eeObj.WriteMem32(0x0069adec,0x08080144)
eeObj.WriteMem32(0x0069adf0,0x00000000)
eeObj.WriteMem32(0x002bf600,0x081a6340)
eeObj.WriteMem32(0x0069abe0,0x8f82b6fc)
eeObj.WriteMem32(0x0069abe4,0x8c420148)
eeObj.WriteMem32(0x0069abe8,0x14540004)
eeObj.WriteMem32(0x0069abec,0x00000000)
eeObj.WriteMem32(0x0069abf0,0x34630400)
eeObj.WriteMem32(0x0069abf4,0xa6830018)
eeObj.WriteMem32(0x0069abf8,0x34630400)
eeObj.WriteMem32(0x0069abfc,0x080a2b1d)
eeObj.WriteMem32(0x0069ac00,0x00000000)
eeObj.WriteMem32(0x00698d00,0x0c081ee8)
eeObj.WriteMem32(0x00698d04,0x00000000)
eeObj.WriteMem32(0x00698d08,0x8f91b6fc)
eeObj.WriteMem32(0x00698d0c,0x8e310148)
eeObj.WriteMem32(0x00698d10,0x16330003)
eeObj.WriteMem32(0x00698d14,0x00000000)
eeObj.WriteMem32(0x00698d18,0x0c081f74)
eeObj.WriteMem32(0x00698d1c,0x00000000)
eeObj.WriteMem32(0x00698d20,0x0000882d)
eeObj.WriteMem32(0x00698d24,0x080afd81)
eeObj.WriteMem32(0x00698d28,0x00000000)
eeObj.WriteMem32(0x0020047c,0x10400006)
eeObj.WriteMem32(0x00200204,0x081a6b46)
eeObj.WriteMem32(0x0069ad18,0x8e360148)
eeObj.WriteMem32(0x0069ad1c,0x24030005)
eeObj.WriteMem32(0x0069ad20,0x8ed5000c)
eeObj.WriteMem32(0x0069ad24,0x16a3fffe)
eeObj.WriteMem32(0x0069ad28,0x8ed604a4)
eeObj.WriteMem32(0x0069ad2c,0x8ed604a8)
eeObj.WriteMem32(0x0069ad30,0x8e350148)
eeObj.WriteMem32(0x0069ad34,0x12b60003)
eeObj.WriteMem32(0x0069ad38,0x00000000)
eeObj.WriteMem32(0x0069ad3c,0x08080083)
eeObj.WriteMem32(0x0069ad40,0x00000000)
eeObj.WriteMem32(0x0069ad44,0x1440fffd)
eeObj.WriteMem32(0x0069ad48,0x00000000)
eeObj.WriteMem32(0x0069ad4c,0x0808009b)
eeObj.WriteMem32(0x0069ad50,0x00000000)
eeObj.WriteMem32(0x0028ac74,0x92920028)
eeObj.WriteMem32(0x0028ac78,0x1640000b)
eeObj.WriteMem32(0x001ff518,0x8e300254)
eeObj.WriteMem32(0x001ff51c,0x8e100030)
eeObj.WriteMem32(0x001ff520,0x8e1000a4)
eeObj.WriteMem32(0x001ff524,0x00000000)
eeObj.WriteMem32(0x001ff528,0x00000000)
eeObj.WriteMem32(0x001ff52c,0x00000000)
eeObj.WriteMem32(0x002d8204,0x94a30070)
eeObj.WriteMem32(0x002d8208,0x8e220a2c)
eeObj.WriteMem32(0x002d820c,0x94570002)
eeObj.WriteMem32(0x002d8210,0x94420010)
eeObj.WriteMem32(0x002d8214,0x081a6b7d)
eeObj.WriteMem32(0x002d8218,0x24160001)
eeObj.WriteMem32(0x0069adf4,0x16f60003)
eeObj.WriteMem32(0x0069adf8,0x2416000b)
eeObj.WriteMem32(0x0069adfc,0x080b6087)
eeObj.WriteMem32(0x0069ae00,0x24020001)
eeObj.WriteMem32(0x0069ae04,0x081a6b0c)
eeObj.WriteMem32(0x0069ac30,0x10560072)
eeObj.WriteMem32(0x0069ac34,0x00000000)
eeObj.WriteMem32(0x0069ac38,0x080b6097)
eeObj.WriteMem32(0x0069ac3c,0x00000000)
eeObj.WriteMem32(0x002d821c,0x0003843c)
eeObj.WriteMem32(0x002d8220,0x0010843f)
eeObj.WriteMem32(0x002d8224,0x00000000)
eeObj.WriteMem32(0x002d823c,0x00000000)
eeObj.WriteMem32(0x002a3914,0x081a6b01)
eeObj.WriteMem32(0x0069ac04,0x8f87b6fc)
eeObj.WriteMem32(0x0069ac08,0x3402001d)
eeObj.WriteMem32(0x0069ac0c,0x10440004)
eeObj.WriteMem32(0x0069ac10,0x0000102d)
eeObj.WriteMem32(0x0069ac14,0x8ce70148)
eeObj.WriteMem32(0x0069ac18,0x14f20003)
eeObj.WriteMem32(0x0069ac1c,0x0000102d)
eeObj.WriteMem32(0x0069ac20,0x0c0be210)
eeObj.WriteMem32(0x0069ac24,0x00000000)
eeObj.WriteMem32(0x0069ac28,0x080a8e47)

-- Fix enemies not facing party members when they attack
eeObj.WriteMem32(0x0027f8c0,0x081a6b11)
eeObj.WriteMem32(0x0027f8c4,0x34170005)
eeObj.WriteMem32(0x0069ac44,0x8c480148)
eeObj.WriteMem32(0x0069ac48,0x9504000c)
eeObj.WriteMem32(0x0069ac4c,0x10970005)
eeObj.WriteMem32(0x0069ac50,0x00000000)
eeObj.WriteMem32(0x0069ac54,0x8d0804a4)
eeObj.WriteMem32(0x0069ac58,0x1500fffb)
eeObj.WriteMem32(0x0069ac5c,0x00000000)
eeObj.WriteMem32(0x0069ac60,0x8c480148)
eeObj.WriteMem32(0x0069ac64,0x0809fe32)
eeObj.WriteMem32(0x0069ac68,0x8d040030)
eeObj.WriteMem32(0x0028bd60,0x00000000)

-- DIRECT COMMANDS TACTIC
-- Addition to tactics list
eeObj.WriteMem32(0x00684efc,0x00684e58)
eeObj.WriteMem32(0x00684f00,0x00684e68)
eeObj.WriteMem32(0x00684f04,0x00684e78)
eeObj.WriteMem32(0x00684f08,0x00684e88)
eeObj.WriteMem32(0x00684f0c,0x00684e98)
eeObj.WriteMem32(0x00684f10,0x00684ea8)
eeObj.WriteMem32(0x00684f14,0x00684eb8)
eeObj.WriteMem32(0x00684f18,0x00684ec8)
eeObj.WriteMem32(0x00684f1c,0x00684ed8)
eeObj.WriteMem32(0x00684f20,0x00684ee8)
eeObj.WriteMem32(0x00684f24,0x0069ac70)
eeObj.WriteMem32(0x0069ac70,0x65726944)
eeObj.WriteMem32(0x0069ac74,0x43207463)
eeObj.WriteMem32(0x0069ac78,0x616d6d6f)
eeObj.WriteMem32(0x0069ac7c,0x0073646e)
eeObj.WriteMem32(0x00204924,0x8c44fff8)
eeObj.WriteMem32(0x00205200,0x8c44fff8)
eeObj.WriteMem32(0x002059f4,0x8c44fff8)
eeObj.WriteMem32(0x00205afc,0x8c44fffc)
eeObj.WriteMem32(0x002062a4,0x8c64fff8)
eeObj.WriteMem32(0x0020598c,0x2a62000c)
eeObj.WriteMem32(0x00205a58,0xae1303dc)
eeObj.WriteMem32(0x00205ca8,0x8c4203dc)
eeObj.WriteMem32(0x00206110,0x8c4203dc)
eeObj.WriteMem32(0x002061b8,0x8c4403dc)
eeObj.WriteMem32(0x002062c4,0xac6203dc)
eeObj.WriteMem32(0x0020639c,0x8c4403dc)

-- Add logic to the new command added
eeObj.WriteMem32(0x0029afc8,0x081a6b20)
eeObj.WriteMem32(0x0029afcc,0x3c170069)
eeObj.WriteMem32(0x0069ac80,0x14460003)
eeObj.WriteMem32(0x0069ac84,0x36f7acdc)
eeObj.WriteMem32(0x0069ac88,0x24160001)
eeObj.WriteMem32(0x0069ac8c,0x080a6bf4)
eeObj.WriteMem32(0x0069ac90,0xaef60000)
eeObj.WriteMem32(0x0069ac94,0x8cd50030)
eeObj.WriteMem32(0x0069ac98,0x8eb50a2c)
eeObj.WriteMem32(0x0069ac9c,0x96b50010)
eeObj.WriteMem32(0x0069aca0,0x2416000b)
eeObj.WriteMem32(0x0069aca4,0x12b6fff8)
eeObj.WriteMem32(0x0069aca8,0x0000b02d)
eeObj.WriteMem32(0x0069acac,0x080a6bf8)
eeObj.WriteMem32(0x0069acb0,0xaef60000)

--Rendering fixes
eeObj.WriteMem32(0x00223ca0,0x3c02432d)
eeObj.WriteMem32(0x00223d44,0x3c034324)
end

-- Tiny Tweaks by P3FES Community
local TinyTweaks = function()
-- Sabre (Item Name changes by AnimatedSwine37)
eeObj.WriteMem32(0x007cb6e0,0x72626153)
eeObj.WriteMem32(0x007cb6e4,0x00000065)

-- Silver Sabre
eeObj.WriteMem32(0x005dd510,0x766c6953)
eeObj.WriteMem32(0x005dd514,0x53207265)
eeObj.WriteMem32(0x005dd518,0x65726261)
-- Nameless Katana
eeObj.WriteMem32(0x005dd490,0x656d614e)
eeObj.WriteMem32(0x005dd494,0x7373656c)
eeObj.WriteMem32(0x005dd498,0x74614b20)
eeObj.WriteMem32(0x005dd49c,0x00616e61)
eeObj.WriteMem32(0x005dd4a0,0x00000000)
-- Myoho Muramasa
eeObj.WriteMem32(0x005dd340,0x686f794d)
eeObj.WriteMem32(0x005dd344,0x754d206f)
eeObj.WriteMem32(0x005dd348,0x616d6172)
eeObj.WriteMem32(0x005dd34c,0x00006173)

-- Rhongomyniad
eeObj.WriteMem32(0x005dd8d0,0x6e6f6852)
eeObj.WriteMem32(0x005dd8d4,0x796d6f67)
eeObj.WriteMem32(0x005dd8d8,0x6461696e)

-- Otegine
eeObj.WriteMem32(0x005dd950,0x6765744f)
eeObj.WriteMem32(0x005dd954,0x00656e69)

-- Yanyuedao
eeObj.WriteMem32(0x005dd920,0x796e6159)
eeObj.WriteMem32(0x005dd924,0x61646575)
eeObj.WriteMem32(0x005dd928,0x0000006f)

-- Nippongo
eeObj.WriteMem32(0x005dd960,0x7070694e)
eeObj.WriteMem32(0x005dd964,0x6f676e6f)
eeObj.WriteMem32(0x005dd968,0x00000000)

-- Tonbokiri
eeObj.WriteMem32(0x005dd970,0x626e6f54)
eeObj.WriteMem32(0x005dd974,0x72696b6f)
eeObj.WriteMem32(0x005dd978,0x00000069)

-- Shigeto-yumi
eeObj.WriteMem32(0x005dda68,0x67696853)
eeObj.WriteMem32(0x005dda6c,0x2d6f7465)
eeObj.WriteMem32(0x005dda70,0x696d7579)
eeObj.WriteMem32(0x005dda74,0x00000000)

-- Maki's Resolve
eeObj.WriteMem32(0x005dda98,0x696b614d)
eeObj.WriteMem32(0x005dda9c,0x52207327)
eeObj.WriteMem32(0x005ddaa0,0x6c6f7365)
eeObj.WriteMem32(0x005ddaa4,0x00006576)

-- Pesh-kabz
eeObj.WriteMem32(0x005ddd28,0x68736550)
eeObj.WriteMem32(0x005ddd2c,0x62616b2d)
eeObj.WriteMem32(0x005ddd30,0x0000007a)

-- Battle Panties
eeObj.WriteMem32(0x005df4d0,0x74746142)
eeObj.WriteMem32(0x005df4d4,0x5020656c)
eeObj.WriteMem32(0x005df4d8,0x69746e61)
eeObj.WriteMem32(0x005df4dc,0x00007365)

--Deep Deep Breath LJ Remix over DDB (Yakushima Custom Music Patch by The Calculator)
eeObj.WriteMem32(0x001a9ca0,0x24040017)
end    -- TinyTweaks

local Patcher = function()
-- Graphics patches
Widescreen()
FMVFix()
FMVWideCreditsFix()
UnstretchedTextboxes()
VelvetBGPatch()
-- Gameplay patches
DirectCommands()
TinyTweaks()
end

local Hook = function()
    emuObj.AddVsyncHook(Patcher)
end

emuObj.AddEntryPointHook(Hook)    -- Apply patches ONLY AFTER the emulator has passed the PS2 logo

Included Mods:

FMVs:
Deinterlaced Cutscenes
High Quality Music Pack
SBFMVs (Only Credits Fix Cheat For 16:9)

Widescreen Fixes:
Widescreen Font Fix
Unstretched Textboxes (Centered)
Community Widescreen Fixes
Widescreen Backgrounds
Velvet Room BG Patch

Gameplay:
Direct Commands
Tiny Tweaks
The Answer Healing Clocks
All Shops Open at Night + All Arcade Machines Always
 
The Warriors [SLES-53443]
Character Swap by JuanoV
-there are more than 100 characters,have fun!

Lua:
Code:
--Character swap by JuanoV

apiRequest(1.0)

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

local patcher = function()
--Native widescreen
--eeObj.WriteMem32(0x00194e80,0x3c013ff3)
--eeObj.WriteMem32(0x00194e84,0x3421cc18)
------ Character Selector--------
local pad_bits  = emuObj.GetPad()
local UP      = pad_bits &  0x0010
local DOWN    = pad_bits &  0x0040
local LEFT    = pad_bits &  0x0080
local RIGHT    = pad_bits &  0x0020
local Triangle    = pad_bits &  0x1000
local Cross    = pad_bits &  0x4000
local Square    = pad_bits &  0x8000
local Circle    = pad_bits &  0x2000
local L1      = pad_bits &  0x0400
local L2      = pad_bits &  0x0100
local L3      = pad_bits &  0x0002
local R1      = pad_bits &  0x0800
local R2        = pad_bits &  0x0200
local R3      = pad_bits &  0x0004
local Select    = pad_bits &  0x0001
local Start    = pad_bits &  0x0008
if (L3 ~= 0) then
--Vergil destroyer
eeObj.WriteMem32(0x20640FFC,0x000000d0)
end
if (L3 ~= 0 and UP ~= 0) then
--Fat clown
eeObj.WriteMem32(0x20640FFC,0x000000f7)
end
if (L3 ~= 0 and DOWN ~= 0) then
--Fury big
eeObj.WriteMem32(0x20640FFC,0x000000f1)
end
if (L3 ~= 0 and LEFT ~= 0) then
--Woman fed.
eeObj.WriteMem32(0x20640FFC,0x000000cc)
end
if (L3 ~= 0 and RIGHT ~= 0) then
--butcher
eeObj.WriteMem32(0x20640FFC,0x000000ac)
end
if (L3 ~= 0 and Square ~= 0) then
--police with helmet
eeObj.WriteMem32(0x20640FFC,0x000000c9)
end
if (L3 ~= 0 and R1 ~= 0) then
--Chinese woman red dress
eeObj.WriteMem32(0x20640FFC,0x0000003b)
end
if (L3 ~= 0 and L2 ~= 0) then
--janitor
eeObj.WriteMem32(0x20640FFC,0x00000024)
end
if (L3 ~= 0 and R3 ~= 0) then
--woman npc
eeObj.WriteMem32(0x20640FFC,0x00000079)
end
if (L3 ~= 0 and R2 ~= 0) then
--chinese low poly
eeObj.WriteMem32(0x20640FFC,0x00000208)
end
if (L3 ~= 0 and Select ~= 0) then
--vermin f*ck u h*ns
eeObj.WriteMem32(0x20640FFC,0x000001ab)
end
if (L3 ~= 0 and Start ~= 0) then
--louis
eeObj.WriteMem32(0x20640FFC,0x0000012a)
end
if (L1 ~= 0 and UP ~= 0) then
--heavy bag
eeObj.WriteMem32(0x20640FFC,0x00000138)
end
if (L1 ~= 0 and DOWN ~= 0) then
--riff ghost
eeObj.WriteMem32(0x20640FFC,0x00000142)
end
if (L1 ~= 0 and RIGHT ~= 0) then
--npc chair wheel
eeObj.WriteMem32(0x20640FFC,0x0000000c)
end
if (L1 ~= 0 and LEFT ~= 0) then
--npc with ape costume
eeObj.WriteMem32(0x20640FFC,0x0000000D)
end
if (L1 ~= 0 and L2 ~= 0) then
--npc drunk man
eeObj.WriteMem32(0x20640FFC,0x00000017)
end
if (L1 ~= 0 and L3 ~= 0) then
--destroyer drunk
eeObj.WriteMem32(0x20640FFC,0x000000e3)
end
if (L1 ~= 0 and R3 ~= 0) then
--fury face blue/red
eeObj.WriteMem32(0x20640FFC,0x000000f5)
end
if (L1 ~= 0 and Start ~= 0) then
--lemmy
eeObj.WriteMem32(0x20640FFC,0x000000d9)
end
if (L2 ~= 0 and UP ~= 0) then
--drug destroyer
eeObj.WriteMem32(0x20640FFC,0x000000dd)
end
if (L2 ~= 0 and DOWN ~= 0) then
--npc white
eeObj.WriteMem32(0x20640FFC,0x0000007a)
end
if (L2 ~= 0 and RIGHT ~= 0) then
--man big with tattos
eeObj.WriteMem32(0x20640FFC,0x0000102)
end
if (L2 ~= 0 and LEFT ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x00627262)
end
if (L2 ~= 0 and Triangle ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x00646872)
end
if (L2 ~= 0 and Cross ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x006B6374)
end
if (L2 ~= 0 and Square ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x00686473)
end
if (L2 ~= 0 and Circle ~= 0) then
--npc weird texture
eeObj.WriteMem32(0x20640FFC,0x00000101)
end
if (L2 ~= 0 and R2 ~= 0) then
--man big shirt with tattos
eeObj.WriteMem32(0x20640FFC,0x00000102)
end
if (Select ~= 0) then
--mexican?
eeObj.WriteMem32(0x20640FFC,0x00000105)
end
if (Select ~= 0 and R1 ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x000000a4)
end
if (Select ~= 0 and R2 ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x0000009a)
end
if (Select ~= 0 and UP ~= 0) then
--npc
eeObj.WriteMem32(0x20640FFC,0x0000004d)
end
--[[player 1= 0x20640FFC
-npc=0,1B1
-npc=2
-npc=3
-npc=4
-npc=5
-npc=6
-npc=7
-npc=186
-npc=111
-npc=1A3
-npc=17B
-npc=192
-npc=17D
-npc=176
-npc=177
-npc=193
-npc=E4
-npc=178
-npc=195
-npc=194
-npc=191
-npc=17C
-npc=180
-npc=1AB
-npc=1AC
-npc=1AD
-npc=1AE
-npc=1AF
-npc=1B0
-npc=12A
-npc=19A
-npc=19B
-npc=199
-npc=197
-npc=198
-npc=19C
-npc=6A
-npc=6B
-npc=6C
-npc=6D
-npc=6E
-npc=138
-npc=139
-npc=137
-npc=140
-npc=141
-npc=142
-npc=143
-npc=144
-npc=145
-npc=146
-npc=147
-npc=150
-npc=151
-npc=152
-npc=153
-npc=154
-npc=155
-npc=156
-npc=157
-npc=158
-npc=159
-npc=160
-npc=196
-npc=181
-npc=170
-npc=100
-npc=110
-npc=120
-npc=130
-npc=90
-npc=80
-npc=50
-npc=208
-npc=210
-npc=205
-npc=204
-npc=79
-npc=1
-npc=8
-npc=9
-npc=A
-npc=B
-npc=C
-npc=D
-npc=E
-npc=F
-npc=10
-npc=11
-npc=12
-npc=13
-npc=14
-npc=15
-npc=16
-npc=17
-npc=18
-npc=19
-npc=1A
-npc=1B
-npc=1C
-npc=1D
-npc=1E
-npc=1F
-npc=20
-npc=21
-npc=22
-npc=23
-npc=24
-npc=25
-npc=26
-npc=27
-npc=28
-npc=29
-npc=2A
-npc=2B
-npc=2C
-npc=2D
-npc=2E
-npc=2F
-npc=30
-npc=31
-npc=32
-npc=33
-npc=34
-npc=35
-npc=36
-npc=37
-npc=38
-npc=39
-npc=3A
-npc=3B
-npc=3C
-npc=3D
-npc=3E
-npc=3F
-npc=40
-npc=41
-npc=42
-npc=43
-npc=74
-npc=75
-npc=76
-npc=77
-npc=78
-npc=79
-npc=7B
-npc=7C
-npc=7D
-npc=7E
-npc=7F
-npc=81
-npc=82
-npc=83
-npc=84
-npc=85
-npc=86
-npc=87
-npc=88
-npc=89
-npc=8A
-npc=8B
-npc=8C
-npc=8D
-npc=8E
-npc=8F
-npc=90
-npc=91
-npc=92
-npc=93
-npc=94
-npc=95
-npc=96
-npc=97
-npc=98
-npc=99
-npc=9A
-npc=9B
-npc=9C
-npc=9D
-npc=9E
-npc=9F
-npc=A0
-npc=A1
-npc=A2
-npc=A3
-npc=A4
-npc=A5
-npc=A6
-npc=A7
-npc=A8
-npc=A9
-npc=AA
-npc=AB
-npc=AC
-npc=AD
-npc=AE
-npc=AF
-npc=B0
-npc=B2
-npc=E8
-npc=1AA
-npc=177
-npc=B1
-npc=E9
-npc=19A
-npc=196
-npc=B0
-npc=B2
-npc=B3
-npc=B4
-npc=B5
-npc=B6
-npc=B7
-npc=B8
-npc=B9
-npc=BA
-npc=BB
-npc=BC
-npc=BD
-npc=BE
-npc=BF
-npc=C0
-npc=C1
-npc=C2
-npc=C3
-npc=C4
-npc=C5
-npc=C6
-npc=C7
-npc=C8
-npc=C9
-npc=CA
-npc=CB
-npc=CC
-npc=CD
-npc=CE
-npc=CF
-npc=AA,AB
-npc=AC
-npc=AD
-npc=AE
-npc=AF
-npc=B0
-npc=B2
-npc=E0
-npc=E1
-npc=E2
-npc=E3
-npc=E4
-npc=F0
-npc=F1
-npc=F2
-npc=F3
-npc=F4
-npc=F5
-npc=F6
-npc=F7
-npc=F8
-npc=F9
-npc=FA
-npc=FB
-npc=FC
-npc=FD
-npc=FE
-npc=FF
-npc=D0
-npc=D1
-npc=D2
-npc=D3
-npc=D4
-npc=D5
-npc=D6
-npc=D7
-npc=D8
-npc=D9
-npc=DA
-npc=DB
-npc=DC
-npc=DD
-npc=DE
-npc=DF
-npc=7A
-npc=100
-npc=101
-npc=102
-npc=103
-npc=104
-npc=105
-npc=106
-npc=107
-npc=108
-npc=109
-npc=10A
-npc=10B
-npc=10C
-npc=10D
-npc=10E
-npc=10F
-npc=110
-npc=111
-npc=112
-npc=113
-npc=114
-npc=115--]]
emuObj.ThrottleMax()
end
emuObj.AddVsyncHook(patcher)
 
Hello, new here and I'm trying to play the PS2 Ratchet and Clank games on my PS4. Are there any configs/files that make it run well? Currently I can't even boot up Up Your Arsenal. It immediately crashes.
 
Deus Ex The Consipiracy (SLUS-20111)

Config below to fix graphical corruption with lighting, visible as random flicker and semi-transparent square box around the weapon on screen.
Widescreen hack by @felixthecat1970 is applied directly to ISO (Blur patch, 30-60fps variable, FOV=90 widescreen)

config-emu-ps4.txt
Code:
#Force 480p
--gs-progressive=1
--gs-force-bilinear=1
SLUS-20111_config.lua
Code:
-- Deus Ex - The Conspiracy (SLUS-20111)
-- Random flicker and semi-transparent square box around the weapon on screen fix
-- emu used=aofa

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

apiRequest(0.1)

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

local patcher = function()
--Widescreen hack by FelixtheCat1970 is applied directly to ISO
---Blur patch, 30-60fps variable, FOV=90 widescreen
emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

-- Square box around the weapon Fix
emuObj.SetGsTitleFix( "forceSimpleFetch", "reserved", { texMode=1  } )
 
Casper Spirit Dimensions (SLES50647)

FIX

TXT.

Code:
--host-display-mode=16:9
--vu0-no-clamping=0
--vu1-no-clamping=0

--force-frame-blend=1
--gs-ignore-rect-correction=1

LUA.
Code:
-- Casper: Spirit Dimensions (PAL)
-- emu used=JakX v2

apiRequest(1.0)   

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

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

local CheckInputs = function()

local pad_bits = emuObj.GetPad()

local UP    = pad_bits &  0x0010
local DOWN    = pad_bits &  0x0040
local LEFT    = pad_bits &  0x0080
local RIGHT    = pad_bits &  0x0020
local Triangle  = pad_bits &  0x1000
local Cross    = pad_bits &  0x4000
local Square    = pad_bits &  0x8000
local Circle  = pad_bits &  0x2000
local L1    = pad_bits &  0x0400
local L2    = pad_bits &  0x0100
local L3    = pad_bits &  0x0002
local R1    = pad_bits &  0x0800
local R2    = pad_bits &  0x0200
local R3    = pad_bits &  0x0004
local Select  = pad_bits &  0x0001
local Start    = pad_bits &  0x0008

if (Select ~= 0 and R1 ~= 0) then
--Widescreen hack 16:9
--X-Fov
--680080c4 03100046
eeObj.WriteMem32(0x00345618,0x081034f0)
eeObj.WriteMem32(0x0040d3c0,0xc4800068)
eeObj.WriteMem32(0x0040d3c4,0x3c013f40)
eeObj.WriteMem32(0x0040d3c8,0x4481f000)
eeObj.WriteMem32(0x0040d3cc,0x461e0003)
eeObj.WriteMem32(0x0040d3d0,0xe4800068)
eeObj.WriteMem32(0x0040d3d4,0x080d1587)
end

end

emuObj.AddVsyncHook(CheckInputs)


local patcher = function()


emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(patcher)

Casper Spirit Dimensions. Before\\\After FiX Comparison & Short Gameplay!

VIDEO
 

Attachments

  • 01.jpg
    01.jpg
    373.9 KB · Views: 49
  • 02.jpg
    02.jpg
    349.8 KB · Views: 89
  • 03.jpg
    03.jpg
    370.6 KB · Views: 96
  • 04.jpg
    04.jpg
    285.9 KB · Views: 94
Conan (SLES-52451)

CONFIG TXT

--gs-uprender=2x2
--gs-upscale=edgesmooth
--gs-progressive=1
--gs-force-bilinear=1
--gs-kernel-cl-up="up2x2simple" #fix horizontal line

emu used=Kof 98
 
Just signed up to say what an unreal community this is, props to all of the legends who have turned PS4/5s into what they are today.

Have a couple of requests: I cannot get Pro Evolution Soccer 6 to boot, just get a ce-34878-0 error after creating in PS2 FPKG, anyone got a config/advice?

Also I am grateful to be able to play Red Faction (via original Classics release etc) but has anyone managed to get this game to run at 60fps like Red Faction II?

Thanks in advance :)
 
This one is special...

Urban Reign™ NTSC (4 Player Fix) +Cheats

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

--force-frame-blend=1
--vif-ignore-invalid-cmd=0
--vif1-ignore-cmd-ints=1
--vif1-instant-xfer=0
--vu1=jit-sync
--mtap1=Always
LUA
Code:
-- Urban Reign NTSC (SLUS-21209)
-- Multitap fix by Kozarovv
-- Cheats from GameHacking.org
-- ported to PS4 by Stayhye
-- emu used=kof98um

apiRequest(0.1)

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

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


emuObj.PadSetLightBar(0, 45,65,55)
emuObj.SetDeinterlace(true)
emuObj.SetDisplayAspectWide()


local WS = function()
--Unlock Free Mode by MadCatz
eeObj.WriteMem32(0x00946634,0x00010001)
-- Init first mtap
eeObj.WriteMem32(0x12BA88,0x24040000)
-- Read data from 1B port when 2A is requested
eeObj.WriteMem32(0x0ffc00,0x10040005)
eeObj.WriteMem32(0x0ffc04,0x00000000)
eeObj.WriteMem32(0x0ffc08,0x14050003)
eeObj.WriteMem32(0x0ffc10,0x24040000)
eeObj.WriteMem32(0x0ffc14,0x24050001)
eeObj.WriteMem32(0x0ffc18,0x080c5cbd)
eeObj.WriteMem32(0x0ffc1c,0x24030070)
eeObj.WriteMem32(0x3172ec,0x0803ff00)
--Unlock Challenge Mode by MadCatz
eeObj.WriteMem32(0x00946636,0x00010001)

--Unlock All Weapons by MadCatz
eeObj.WriteMem32(0x20274774,0x24030001)
eeObj.WriteMem32(0x2027477C,0xA443000E)
--Brad Hawk by Code Master
eeObj.WriteMem32(0x0094668E,0x00010001)

--Glen by Code Master
eeObj.WriteMem32(0x00946694,0x00010001)

--Torque by Code Master
eeObj.WriteMem32(0x00946696,0x00010001)

--Rod by Code Master
eeObj.WriteMem32(0x00946698,0x00010001)

--Seth by Code Master
eeObj.WriteMem32(0x0094669A,0x00010001)

--Nas-Tiii by Code Master
eeObj.WriteMem32(0x0094669C,0x00010001)

--Em Cee by Code Master
eeObj.WriteMem32(0x0094669E,0x00010001)

--Real Deal by Code Master
eeObj.WriteMem32(0x009466A0,0x00010001)

--Ty by Code Master
eeObj.WriteMem32(0x009466A2,0x00010001)

--Miguel by Code Master
eeObj.WriteMem32(0x009466A4,0x00010001)

--Ramon by Code Master
eeObj.WriteMem32(0x009466A6,0x00010001)

--Jose by Code Master
eeObj.WriteMem32(0x009466A8,0x00010001)

--Emilio by Code Master
eeObj.WriteMem32(0x009466AA,0x00010001)

--Kadonashi by Code Master
eeObj.WriteMem32(0x009466AC,0x00010001)

--Reggie by Code Master
eeObj.WriteMem32(0x009466AE,0x00010001)

--Zach by Code Master
eeObj.WriteMem32(0x009466B0,0x00010001)

--Colin by Code Master
eeObj.WriteMem32(0x009466B2,0x00010001)

--Jake by Code Master
eeObj.WriteMem32(0x009466B4,0x00010001)

--Tong Yoon by Code Master
eeObj.WriteMem32(0x009466B6,0x00010001)

--Grimm by Code Master
eeObj.WriteMem32(0x009466B8,0x00010001)

--BK by Code Master
eeObj.WriteMem32(0x009466BA,0x00010001)

--Grave Digga' by Code Master
eeObj.WriteMem32(0x009466BC,0x00010001)

--Bones by Code Master
eeObj.WriteMem32(0x009466BE,0x00010001)

--Booma by Code Master
eeObj.WriteMem32(0x009466C0,0x00010001)

--Busta by Code Master
eeObj.WriteMem32(0x009466C2,0x00010001)

--Spider by Code Master
eeObj.WriteMem32(0x009466C4,0x00010001)

--Pain Killah by Code Master
eeObj.WriteMem32(0x009466C6,0x00010001)

--Dwayne by Code Master
eeObj.WriteMem32(0x009466C8,0x00010001)

--Dwayne 2? by Code Master
eeObj.WriteMem32(0x009466CA,0x00010001)

--Shun Ying Lee by Code Master
eeObj.WriteMem32(0x009466CC,0x00010001)

--GD-05 by Code Master
eeObj.WriteMem32(0x009466CE,0x00010001)

--DR-88 by Code Master
eeObj.WriteMem32(0x009466D0,0x00010001)

--FK-71 by Code Master
eeObj.WriteMem32(0x009466D2,0x00010001)

--PT-22 by Code Master
eeObj.WriteMem32(0x009466D4,0x00010001)

--Bain by Code Master
eeObj.WriteMem32(0x009466D6,0x00010001)

--Cooper by Code Master
eeObj.WriteMem32(0x009466D8,0x00010001)

--Anderson by Code Master
eeObj.WriteMem32(0x009466DA,0x00010001)

--Taylor by Code Master
eeObj.WriteMem32(0x009466DC,0x00010001)

--Chris by Code Master
eeObj.WriteMem32(0x009466DE,0x00010001)

--Park by Code Master
eeObj.WriteMem32(0x009466E0,0x00010001)

--Alex by Code Master
eeObj.WriteMem32(0x009466E2,0x00010001)

--McKinzie by Code Master
eeObj.WriteMem32(0x009466E4,0x00010001)

--Napalm 99 by Code Master
eeObj.WriteMem32(0x009466E6,0x00010001)

--Golem by Code Master
eeObj.WriteMem32(0x009466E8,0x00010001)

--Riki by Code Master
eeObj.WriteMem32(0x009466EA,0x00010001)

--Masa by Code Master
eeObj.WriteMem32(0x009466EC,0x00010001)

--Hiro by Code Master
eeObj.WriteMem32(0x009466EE,0x00010001)

--Ryuji by Code Master
eeObj.WriteMem32(0x009466F0,0x00010001)

--Ye Wei by Code Master
eeObj.WriteMem32(0x009466F2,0x00010001)

--Sha Ying by Code Master
eeObj.WriteMem32(0x009466F4,0x00010001)

--Yan Jun by Code Master
eeObj.WriteMem32(0x009466F6,0x00010001)

--Shinkai by Code Master
eeObj.WriteMem32(0x009466F8,0x00010001)

--Lin Fong Lee by Code Master
eeObj.WriteMem32(0x009466FA,0x00010001)

--Bordin by Code Master
eeObj.WriteMem32(0x009466FC,0x00010001)

--Lilian by Code Master
eeObj.WriteMem32(0x009466FE,0x00010001)

--Kelly by Code Master
eeObj.WriteMem32(0x00946700,0x00010001)

--Vera Ross by Code Master
eeObj.WriteMem32(0x00946702,0x00010001)

--Paul Phoenix by Code Master
eeObj.WriteMem32(0x00946704,0x00010001)

--Marshall Law by Code Master
eeObj.WriteMem32(0x00946706,0x00010001)

--KG by Code Master
eeObj.WriteMem32(0x00946718,0x00010001)

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(WS)

emuObj.SetGsTitleFix( "globalSet",  "reserved", { workLoadThreshold = 100000} )
emuObj.SetGsTitleFix( "globalSet",  "reserved", { waveThreshold = 90000} )
emuObj.SetGsTitleFix( "ignoreAreaUpdate", 0, { } )

Big thanks to Kozarovv for this one! Finally 4 player multi-tap works! Apparently the emulator is flawed in how it handles multi-tap when it involves "--mtap2". All functions for 2A, 2B, 2C, 2D must be redirected to ports on multi-tap 1.
I was referred to this. So, everything works great - upscaling, cheats, and 4 controllers are working great. I tried to build the pkg file with Jak v2 and KOF98 both have the same results with no noticeable difference so far.
But can someone shine the light in multiplayer mode has game lags or slower games running on certain stages like DOJO, BORDIN BLDG ROOFTOP, WAREHOUSE, SCRAPYARD.
1 on 1 opponent is running fine though. Is there a code to fix the slow running of the multiplier player game issue please?
PS4 SLIM 9.00 GOLD HEN
 
Last edited:
May I request config files (txt and lau) for a game:
WWE Smackdown here comes the Pain! (SLES-52036), I am not able to find any working information so far.
Throwing error CE-34878-0. Made PKG with PS2 Classic GUI version: 1.0.0.28 (Default settings) and PS2 FPKG v0.7 with Jak v2. Both result in the same errors.
Thank you in advance

PS4 SLIM 9.00 GOLD HEN
 
Last edited:
I was referred to this. So, everything works great - upscaling, cheats, and 4 controllers are working great. I tried to build the pkg file with Jak v2 and KOF98 both have the same results with no noticeable difference so far.
But can someone shine the light in multiplayer mode has game lags or slower games running on certain stages like DOJO, BORDIN BLDG ROOFTOP, WAREHOUSE, SCRAPYARD.
1 on 1 opponent is running fine though. Is there a code to fix the slow running of the multiplier player game issue please?
PS4 SLIM 9.00 GOLD HEN

try red faction 2 emu, with --gs-frontend-opt-mode=1 added to CLI/TXT config.

May I request config files (txt and lau) for a game:
WWE Smackdown here comes the Pain! (SLES-52036), I am not able to find any working information so far.
Throwing error CE-34878-0. Made PKG with PS2 Classic GUI version: 1.0.0.28 (Default settings) and PS2 FPKG v0.7 with Jak v2. Both result in the same errors.
Thank you in advance

PS4 SLIM 9.00 GOLD HEN

use metal slug anthology emu. game still has stuttering issues during intros/FMVs

Code:
--gs-uprender=2x2
--gs-upscale=gpu
--vu1-jr-cache-policy=auto
--vu1-jalr-cache-policy=auto
#--vu1-mpg-cycles=400
--vu1-di-bits=0
--mtap1=always
LUA
Code:
-- 
-- emu used=msa

apiRequest(0.1)

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


gsObj.SetL2HMode(true)
--gsObj.SetUpscaleMode("EdgeSmooth")
--gsObj.SetUprenderMode("2x2")

--emuObj.ForceRefreshRate(60)
emuObj.SetDisplayAspectWide()
emuObj.SetDeinterlace(true)


--<sceGsSyncV>
eeInsnReplace(0x001016d8, 0x27bdffe0, 0x03e00008)
eeInsnReplace(0x001016dc, 0xffb00000, 0x00000000)
--<InvalidDCache>
eeInsnReplace(0x0010c658, 0x27bdffc0, 0x03e00008) -- addiu sp, sp, $ffc0  
eeInsnReplace(0x0010c65c, 0xffb20020, 0x00000000)
--<FlushCache>
eeInsnReplace(0x0010bea0, 0x24030064, 0x03e00008) -- addiu v1, zero, $0064  
eeInsnReplace(0x0010bea4, 0x0000000c, 0x00000000)
--<iFlushCache>
eeInsnReplace(0x0010bed0, 0x2403ff98, 0x03e00008) -- addiu v1, zero, $ff98  
eeInsnReplace(0x0010bed4, 0x0000000c, 0x00000000)
--<SyncDCache>
eeInsnReplace(0x0010c518, 0x27bdffc0, 0x03e00008) -- addiu sp, sp, $ffc0  
eeInsnReplace(0x0010c51c, 0xffb20020, 0x00000000)

--16:9 A
eeInsnReplace(0x001040f0,0x00000000,0x44810000) -- 
eeInsnReplace(0x001040f4,0x00000000,0x4600c602) --


local Game_Fixes = function()
-- 16:9 B
eeObj.WriteMem32(0x001040e4,0x3c013f40) -- 00000000 hor fov
eeObj.WriteMem32(0x00206a5c,0x3c023f08) -- 3c023f80 camera fix
--All Superstars In Special Guest Referee By (ERM391)
eeObj.WriteMem32(0x2012CD3C,0x00421026)
eeObj.WriteMem32(0x2024E448,0x10000007)
-- No Glossy Wrestlers
eeObj.WriteMem32(0x2040F33C,0x42000000)
-- Further Away Ring
eeObj.WriteMem32(0x204658B0,0x4019999A)
-- no interlace
eeObj.WriteMem32(0x201026CC,0x00000000)
eeObj.WriteMem32(0x20102934,0x00000000)
local No_Interlace = eeObj.ReadMem16(0x756060)
if No_Interlace == 0x1100 then
eeObj.WriteMem32(0x20756058,0x00000001)
eeObj.WriteMem32(0x20756060,0x00001000)
eeObj.WriteMem32(0x20756080,0x00000001)
eeObj.WriteMem32(0x20756088,0x00001000)
end
--
--eeObj.WriteMem32(0x00102660,0xdc820030) -- sceGsSetHalfOffset
--
--eeObj.WriteMem32(0x001028c8,0xdc820010) -- sceGsSetHalfOffset2

--[[
-- gfx mode select
local pad_bits = emuObj.GetPad()

local UP     = pad_bits &  0x0010
local DOWN     = pad_bits &  0x0040
local LEFT     = pad_bits &  0x0080
local RIGHT     = pad_bits &  0x0020
local Triangle  = pad_bits &  0x1000
local Cross     = pad_bits &  0x4000
local Square  = pad_bits &  0x8000
local Circle    = pad_bits &  0x2000
local L1     = pad_bits &  0x0400
local L2     = pad_bits &  0x0100
local L3     = pad_bits &  0x0002
local R1     = pad_bits &  0x0800
local R2     = pad_bits &  0x0200
local R3     = pad_bits &  0x0004
local Select    = pad_bits &  0x0001
local Start     = pad_bits &  0x0008

if (R3 ~= 0) then --
emuObj.SetDisplayAspectWide()

end

if (L3 ~= 0) then --normal mode
emuObj.SetDisplayAspectNormal()

end
--]]

emuObj.ThrottleMax()
end

emuObj.AddVsyncHook(Game_Fixes)

this is for NTSC, but CLI should be the same.
 
Last edited:

Similar threads

Back
Top