PS4 [Research]PS2 emulator configuration on PS4

Some games are only running with ROGUE v2 emu.
But every game I start with ROGUE v2 emu I got this Video Recording error:

94FxtwT


How do I get rid of this message?
 
Resident Evil Code Veronica X.(SLES50306) emuRECVX. Just got it done. Runs well

Code:
--path-vmc="/tmp/vmc"
--config-local-lua=""
--ps2-title-id=SLES-50306
--max-disc-num=1
--gs-uprender=2x2
--gs-upscale=edgesmooth
--host-audio=1
--rom="PS20220WD20050620.crack"
--verbose-cdvd-reads=0
--host-display-mode=full

The game will crash at some point using that config.....

Official config from PSN classic

https://www.psdevwiki.com/ps4/Talk:...atibility_List#Resident_Evil_Code:_Veronica_X

you can also add
Code:
-- Resident Evil Code Veronica X.(SLES50306) ONLY!!
local WS = function()

-- 16:9
eeObj.WriteMem32(0x21140300,0x3f400000) -- 3f800000 hor fov
eeObj.WriteMem32(0x21E394C0,0x01aa0280) -- 01400280 fmv fix
eeObj.WriteMem32(0x21E394C4,0x000c0000) -- 00400000 fmv fix

end

emuObj.AddVsyncHook(WS)

to the end of official LUA for true widescreen
 
Last edited:
The game will crash at some point using that config.....

Official config from PSN classic

https://www.psdevwiki.com/ps4/Talk:...atibility_List#Resident_Evil_Code:_Veronica_X

you can also add
Code:
-- Resident Evil Code Veronica X.(SLES50306) ONLY!!
local WS = function()

-- 16:9
eeObj.WriteMem32(0x21140300,0x3f400000) -- 3f800000 hor fov
eeObj.WriteMem32(0x21E394C0,0x01aa0280) -- 01400280 fmv fix
eeObj.WriteMem32(0x21E394C4,0x000c0000) -- 00400000 fmv fix

end

emuObj.AddVsyncHook(WS)

to the end of official LUA for true widescreen
which emu is better?
 
Is this something that can still help today for speeding up games?
https://gamehacking.org/library/82
Or is adjusting vu/ee cycles the better approach?

Is there any chance we can get debug/verbose logs of PS2emu to get a better understanding when games won't boot up, won't render correctly or even crash? I'm pretty sure the overall compatibility of the PS2 Classics emulator(s) could be so much better and comparable to the PS3 with some insights, what the emulator is actually doing.

I know you can get console logs with UART, but this still requires soldering I guess...
Perhaps we can use something like this:
https://github.com/m0rph3us1987/ps4gdb_desktop

@kozarovv enabled emulog a few years back.... I never got it to work though. A modern tutorial would be helpful

https://www.psx-place.com/threads/r...onfiguration-on-ps4.16131/page-18#post-129703
 
Fix for Galerians Ash NTSC

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

--vif-ignore-invalid-cmd=0
--vif1-ignore-cmd-ints=1
--vif1-instant-xfer=0

--ee-jit-pagefault-threshold=30

--lopnor-config=1

--ee-cycle-scalar=2.0
LUA
Code:
-- Galarians Ash NTSC
-- emu used=jakx v2

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

apiRequest(2.2)

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

local patcher = function()

eeObj.WriteMem32(0x001e0100,0x3c013f40) -- 16:9
emuObj.ThrottleMax() -- Drastically reduces loading screens duration on most games

end

emuObj.AddVsyncHook(patcher)

emu used=jakx v2

Works Perfectly! More testing needed.
Not so Perfectly as wish, but with GSDX Hardware Render looks really cool, but still some broken text, screen errors and graphical bugs In PAL version test! @mrjaredbeta was fix in game screens in ps3 version, probably it possible on ps4?
 

Attachments

  • Real PS2 screen.jpg
    Real PS2 screen.jpg
    211 KB · Views: 40
  • PS2toPS4 screen.jpg
    PS2toPS4 screen.jpg
    60.3 KB · Views: 39
Not so Perfectly as wish, but with GSDX Hardware Render looks really cool, but still some broken text, screen errors and graphical bugs In PAL version test! @mrjaredbeta was fix in game screens in ps3 version, probably it possible on ps4?

Do those glitches happen on NTSC? I didn't notice any on my tests.

Does anyone know how to extract codes from PS3 config to plain text to be converted to PS4 CLI/LUA?
 
Last edited:
@Vika23 The config fixes the screens on PS3 and PCSX2. It looks like @Stayhye's fix uses the PS3 config through lopnor on NTSC, so the PAL version would work fine in theory. Also, @kozarovv fixed it, not me.

@Stayhye It's easy to do. You will need to switch endianness. For example, the Galerians: Ash NTSC config:
Code:
3D 00 00 00 11 11 00 00 0A 00 00 00 05 00 00 00
A8 12 1E 00 00 00 00 00 50 71 01 3C B0 12 1E 00
43 01 05 46 00 28 81 44 C8 12 1E 00 83 01 06 46
00 30 81 44 D8 12 1E 00 C3 01 07 46 00 38 81 44
E8 12 1E 00 03 00 01 46 00 00 81 44 00 00 00 00

The 0x0A command on the first line (used for patching EE memory) uses 5 codes:
Code:
0A 00 00 00 05 00 00 00

The first one is located on the second line and is a collection of 12 bytes in 4 byte segments:
Code:
A8 12 1E 00 00 00 00 00 50 71 01 3C
First word (4 byte segment) is A8 12 1E 00. Switching the endianness will give you 001E12A8, which is the EE memory address where the instruction is being changed. The next word, 00 00 00 00, is the current instruction at that location (nop). The last word, 50 71 01 3C, is the instruction to replace the current instruction. Switching the endianness of that gives you 3C017150.

You can create a pnach code like so:
Code:
patch=1,EE,001e12a8,word,3c017150
That's the PCSX2 pnach equivalent. You can easily move that to a PS4 WriteMem32 command. There is no need to use the current/original instruction at that address in these patches as it ignores it, but it would be required for an eeInsnReplace command.

The PS4 codes would be:
Code:
eeObj.WriteMem32(0x1e12a8,0x3c017150)

or

eeInsnReplace(0x1e12a8, 0x0, 0x3c017150)
Maybe I messed up the endianness as I am doing this from memory, but it should be understandable at least. :)
 
Last edited:
I do video from NTSC version with your config
Video
You have same right?

I would have to check(play further). but you can try to add:
Code:
--gs-use-clut-merge=1
--gs-kernel-cl="clutmerge"
--gs-kernel-cl-up="clutmerge2x2"
or
Code:
--gs-kernel-cl="mipmap"
--gs-kernel-cl-up="mipmap2x2"
--gs-use-mipmap=1

in CLI. Let me know if it worked
 
I would have to check(play further). but you can try to add:
Code:
--gs-use-clut-merge=1
--gs-kernel-cl="clutmerge"
--gs-kernel-cl-up="clutmerge2x2"
or
Code:
--gs-kernel-cl="mipmap"
--gs-kernel-cl-up="mipmap2x2"
--gs-use-mipmap=1

in CLI. Let me know if it worked
not worked, even stay more bad
 

Attachments

  • Galerians Ash .jpg
    Galerians Ash .jpg
    461.6 KB · Views: 38
The Truth is Out There (c) X-Files
test alot, tired and....found @kozarovv old lua for PAL version of Galerians Ash and it fix all - animation, text, and screens

apiRequest(0.1)

-- Floating points hack
eeInsnReplace(0x1e7130, 0x00000000, 0x3c017140)
eeInsnReplace(0x1e7138, 0x46050143, 0x44812800)
eeInsnReplace(0x1e7150, 0x46060183, 0x44813000)
eeInsnReplace(0x1e7160, 0x460701C3, 0x44813800)
eeInsnReplace(0x1e7170, 0x46010003, 0x44810000)

 

Attachments

  • 001.jpg
    001.jpg
    239.8 KB · Views: 42
  • 002.jpg
    002.jpg
    220.1 KB · Views: 43
  • 003.jpg
    003.jpg
    269.7 KB · Views: 42
Last edited:
hiya im about 99% in Batman vengeance rev 1 with the jack v2 emu. i just get a minor drop with slowdown in music any help how to fix would be apricated.also dont know if i need to say im running ps4 pro 9.00 genb2

--fpu-no-clamping=1
--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
--vu0-opt-flags=1
--vu1-opt-flags=1
--cop2-opt-flags=1
--vu0-const-prop=0
--vu1-const-prop=0
--vu1-jr-cache-policy=newprog
--vu1-jalr-cache-policy=newprog
--vu0-jr-cache-policy=newprog
--vu0-jalr-cache-policy=newprog
--gs-use-clut-merge=1
--gs-kernel-cl="clutmerge"
--gs-kernel-cl-up="clutmerge2x2"
--gs-use-clut-merge=1
--gs-optimize-30fps=1
 
hiya im about 99% in Batman vengeance rev 1 with the jack v2 emu. i just get a minor drop with slowdown in music any help how to fix would be apricated.also dont know if i need to say im running ps4 pro 9.00 genb2

--fpu-no-clamping=1
--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
--vu0-opt-flags=1
--vu1-opt-flags=1
--cop2-opt-flags=1
--vu0-const-prop=0
--vu1-const-prop=0
--vu1-jr-cache-policy=newprog
--vu1-jalr-cache-policy=newprog
--vu0-jr-cache-policy=newprog
--vu0-jalr-cache-policy=newprog
--gs-use-clut-merge=1
--gs-kernel-cl="clutmerge"
--gs-kernel-cl-up="clutmerge2x2"
--gs-use-clut-merge=1
--gs-optimize-30fps=1
KOF 2000 emu help with music sometime
 

Similar threads

Back
Top