aldostools / webMAN-MOD

Extended services for PS3 console (web server, ftp server, netiso, ntfs, ps3mapi, etc.)
https://aldostools.github.io/webMAN-MOD/
GNU General Public License v3.0
1.32k stars 175 forks source link

PS1 Emu #1133

Open LuanTeles opened 2 days ago

LuanTeles commented 2 days ago

Aldo, something seems off.

I'm mounting PS1 games, and the notification says ps1_emu.self is loaded. However, it looks like ps1_netemu is actually being loaded. I replaced my ps1_netemu with Kozarov's modded version, so the widescreen patch is applied, but my ps1_emu.self is untouched.

Also, ps1_netemu.self is not checked in my WebMAN settings.

aldostools commented 2 days ago

Hello @LuanTeles, Thank you for your feedback. webMAN MOD has 3 options to select the default PS1 emulator:

However as the notification says ps1_emu.self was loaded, I discard that webMAN MOD is using any of these options.

If I remember correctly, the PS3 also auto-selects the emulator based on title id or game format (PKG or disc).

As you're testing on a PS3 system heavily modified, I would suggest you do the following:

LuanTeles commented 1 day ago

Hey Aldo,

I performed a fresh install of EvilNat 4.91 Beta 10, deleted webMAN MOD, and then reinstalled it from scratch. I also installed @kozarovv's ps1_netemu.self with the widescreen patches.

Here’s the mounted game: image

Proof that I only replaced the ps1_netemu.self: image

Here's the game running:

Note that the widescreen patch is applied via the emulator. Check out the NEW YORK sign, without the patch, it would only display “W York” on the screen. image

Here's without the ps1_netemu.self patch

image

LuanTeles commented 1 day ago

Interesting that mounting the game via multiMAN still has the ps1_netemu patch applied.

Maybe is it a cobra issue?

aldostools commented 1 day ago

Hello LuanTeles, I was going to ask you if you tested that.

If I recall correctly, basic_plugins.sprx decides which PS1 emulator should be used based on the title id.

If you mount the game with R1 pressed, webMAN MOD will swap the emulators. So if basic_plugins.sprx decides to use ps1_netemu, as the paths of the emulators are swapped in memory, it should use ps1_emu.self

aldostools commented 1 day ago

Early Cobra payload by Rebug Team had a patch to force use ps1_netemu instead of ps1_emu. https://github.com/aldostools/COBRA/blob/master/446/SRC/stage2/modulespatch.c#L122-L126

But as the patch was commented out and it was not being applied, the code for that module was completely removed from modulespatch.c and modulespatch.h in later versions of Cobra. image

Months later, in webMAN MOD I re-introduced the feature using a different approach to select the ps1 emulator swapping the paths with the map path syscall.