[RPi3] PSX emulation issue => solved + potential bug?
-
Hi, it's been a while since I have been playing with PSX games and as I've upgraded to a Pi3 with a larger SD card I decided to give a try to some popular games. Unfortunately, the sound and FMV video (during intro) is very choppy, distorted and video stutters. It didn't happen before while I was on Pi2. Back then (I don't recall exactly but it was 3 months ago perhaps) PSX emulation on Pi2 was almost flawless: I could play Tekken3 (example given) as it was on a real system. The issue is mostly about sound being distorted, crackling or playing slowly compared to the video emulation which seems to run fullspeed (again except for FMV which stutters a lot).
I thought it would be related to my SD card but it's high end (keep me honest, ref below). I tried changing some RetroArch parameters like disabling vibration or enhanced resolution but makes no difference at all. As of note, the lr-beetle-pce-fast core which I use to play CD games is working without any issue at all.
Pi Model: 3B
Power Supply used: Aukru Raspberry Pi 3 5V 3000mA with switch
RetroPie Version Used: 4.2.18
Built From: Pre made SD Image on RetroPie website
SD card used: Samsung EVO Plus MicroSDXC UHS-I Classe 10 256GB
USB Devices connected: wireless keyboard adapter, Xbox360 wireless controller
Controller used: Xbox360 wireless
Emulator: lr-pcsx-rearmed (updated to latest binary from retropie-setup)
Bios used: SCPH1001.BIN as well as SCPH7502.BIN
Iso format: eboot (.pbp)
How to replicate the problem: simply launch any PSX game and wait for an intro video. Say for instance Tekken3 and play the game: slowdowns, stutters and sound chopiness will occur immediately. Any other games will present similar issues (especially during intro). Note: problem remains with standard .bin .cue format (no eboot).
boot.cfg excerpt: I have no problem with the below and Pi is very stable.# Enable audio (loads snd_bcm2835) dtparam=audio=on # Mem params gpu_mem_256=128 gpu_mem_512=256 gpu_mem_1024=256 gpu_mem=256 # 700 MHz is the default. arm_freq=1350 gpu_freq=500 core_freq=500 sdram_freq=500 sdram_schmoo+0x02000020 over_voltage=4 sdram_over_voltage=3 v3d_freq=525 overscan_scale=1 hdmi_ignore_cec_init=1
-
@nemo93 Not sure how you got Tekken3 running fullspeed on a pi2...wouldn't run fullspeed for me even oc'd to 1ghz.
Anyways, no issues with Tekken3 or any other game psx skipping on me on my pi3. 1080P with crt-pi shader too. I'm also on 4.2.18. Make sure you aren't getting a voltage or temp icon. Update lr-pcsx to latest binary too.
total_mem=1024 arm_freq=1300 gpu_freq=500 core_freq=500 sdram_freq=500 sdram_schmoo=0x02000020 over_voltage=2 sdram_over_voltage=2
-
take away any overclocks if you have framerate problems, as the first test.
secondly, can you post your /all/retroarch.cfg and /psx/retroarch.cfg?
-
Thanks for your answers and for the assistance. Do you have any success in running Crash Bandicoot 3 at all? Game launches yet with terrible sound (distortion, choppiness) but button press do nothing and I can't pass the 2nd intro screen, the one with a voice saying "universal" or something right after the "privacy screen". I also tried with your settings and same outcome.
Config files as requested:
- /all/retroarch.cfg => https://pastebin.com/quurrCnh
- /psx/retroarch.cfg => https://pastebin.com/zxkgu3jn
- /psx/retroarch-core-options.cfg => https://pastebin.com/h6jKq9DN
-
@nemo93 said in [RPi3] PSX emulation regression?:
Config files as requested:
- /all/retroarch.cfg => https://pastebin.com/quurrCnh
# video_driver = "gl"
this is commented out? maybe it's the default anyway...
- /psx/retroarch-core-options.cfg => https://pastebin.com/h6jKq9DN
you should disable
pcsx_rearmed_neon_enhancement_enable = "enabled" pcsx_rearmed_neon_enhancement_no_main = "enabled"
they SHOULD run full speed on a pi3, but as if in doubt..
-
Still no luck with those settings... same outcome :-'( I've also found out that not using eboot format for Crash 3 sorted the issue so it's likely due to the compression ratio used (9, the max). Anyway even when using the .bin .cue format Tekken3 sound is still choppy and runs slowly.
-
@nemo93 Yes, I heard using too much compression can freeze up a game..I keep it safe with using a 1 compression ratio.
-
Im also recently having issues with lr-pcsx recently myself. Lots of stutters. freezes that last a few seconds, and out right crashes. something has happened recently. either its in a os update or the emulator itself.
-
-
I understand the compression issue as it does seem to have less issues with less or no compression. but the issues are still happening randomly even on bin cue files. Basically I was having no issues up to a couple weeks ago.
-
I tried latest binary and also tried to build from source. No issues here using both. I tested Tekken3 intro and 3 fights.
-
For the sake of completeness let me add that I'm using the exact same Tekken3 eboot "image" as on my pi2. I made it months ago using Psx2PSP with all default settings (hence with ratio set to 9). I have to emphasize that I didn't have such issues on the pi2 (o/c'd).
Then I told myself the SD card would be the one at fault here so I've tested it and I got a pretty solid 85 up to 90MB/s at reading speed using different tools (+ doing a backup with win32diskimager). I've also checked the underlying GNu/Linux system on which Retropie is running and everything is up to date (still Jessie, all packages to date) and working as far as I can tell, no conflicts whatsoever.
UPDATE: it happens that only some stages run very slow in Tekken3. For instance, when I pick Hwoarang in arcade mode, usually the first stage is against King (the wrestling tiger) his stage runs smooth at full speed. Then if I have to fight against Yoshimitsu, Eddy or Law then their stages make the game go below the 15fps. I really didn't have such slowdowns on my pi2 (few months ago) nor any sound issues.
-
Are your games from PAL (Europe) or NTSC-U (USA)?
(http://psxdatacenter.com/downloads.html) If PAL, you need the SBI file for that game to beat LibCrypt protection.
Do not use any rom cracks (Paradox, etc).
-
For Tekken3 at least, the backup I'm using is US/NTSC. As far as I know there's no crack for that game and I've not patched it whatsoever.
Your point is interesting as it's first time since I've been told about those SBI files. Based on the link you posted I should:
2 - Extract them in the patches folder of epsxe.
=> not sure how to do that. Btw there's no such sbi for Tekken3.
-
@nemo93 I used hwoarang against eddy...again..fullspeed (60fps) here. It's definitely not the emulator's fault. You never answered if you got a voltage or temp icon. That can cause slowdowns. Try a fresh image to verify it's not a configuration problem on your end.
-
Apologies I've missed your volt/temp question. Using the above parameters (post) I can only see 4 lovely raspberries at boot. No other icon whatsoever.
By the way below my
/boot/cmdline.txt
:dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty3 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait quiet loglevel=3 plymouth.enable=0 consoleblank=0
Also I can read on the bashwelcome the following temp. Not sure whether or not it's a decent value but let's mention that I also have heatsink+fan installed in my pi case.
Temperature........: CPU: 53°C/127°F GPU: 53°C/127°F
UPDATE: by switching on the "display framerate" option in rgui it tells FPS: 60 (still w Tekken3). However the game is clearly slow not full speed, for sure I don't have 60FPS.
-
I've found out where the issue is. Let me share the workaround with you.
You must disable the
Inuyasha fix
in RetroArch Quick Menu or in yourretroarch-core-options.cfg
file. Once done everything will be back to normal (happy!). If you do enable this option then stutters, slowdowns etc will immediately occur as described in my initial post. The other fix (PE2/Vandal Hears) is fine, as far as I can tell.I don't know if the below is the default value with Retropie images and setup but if it's not then it should be to prevent any issues.
Let me share the exact content of my
retroarch-core-options.cfg
file for psx (located underconfigs/psx/
):pcsx_rearmed_frameskip = "0" pcsx_rearmed_region = "Auto" pcsx_rearmed_pad1type = "standard" pcsx_rearmed_pad2type = "standard" pcsx_rearmed_drc = "enabled" pcsx_rearmed_neon_interlace_enable = "disabled" pcsx_rearmed_neon_enhancement_enable = "enabled" pcsx_rearmed_neon_enhancement_no_main = "enabled" pcsx_rearmed_duping_enable = "enabled" pcsx_rearmed_spu_reverb = "enabled" pcsx_rearmed_spu_interpolation = "cubic" pcsx_rearmed_pe2_fix = "enabled" pcsx_rearmed_inuyasha_fix = "disabled" pcsx_rearmed_pad3type = "standard" pcsx_rearmed_pad4type = "standard" pcsx_rearmed_pad5type = "standard" pcsx_rearmed_pad6type = "standard" pcsx_rearmed_pad7type = "standard" pcsx_rearmed_pad8type = "standard" pcsx_rearmed_multitap1 = "disabled" pcsx_rearmed_multitap2 = "disabled" pcsx_rearmed_vibration = "enabled" pcsx_rearmed_dithering = "enabled" pcsx_rearmed_show_bios_bootlogo = "disabled"
-
@nemo93 That's good. Be aware that the inuyasha fix is not enabled by default and that's why none of us could reproduce the problem.
-
Im beginning to think its an issue with either retroarch or raspian itself on how its reading streamed data from a disk. It seems to happen when trying to read music or a video. Not only am i getting pauses and stops in pix games, but also sega cd games. hmmm
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.