lr-armsnes and Retropie 4.4
-
@used2berx Have some time today, so I'm going to try this out and I'll let everybody know what my results are. I might be wasting my time here, but I need to know for myself anyhow. I actually remembered that I have an old retropie that I had abandoned at some point that I believe has 4.1 or 4.2 on it, so I should be able to see if both lr-armsnes and lr-snes9x2002 just had better performance on 4.2 than on 4.4 or not with the Pi Zero. There's also the chance that it was all in my head too. :)
I thought I had started with a 4.1 originally, but I can't seem to find that image anywhere. Looks like the 4.2 image is all I have to work with.
More to follow...
-
@mitu @BuZz Seems like the install won't work. I get the following error:
Could not successfully build lr-armsnes - SNES emu - forked from pocketsnes focused on performance (/home/pi/RetroPie-Setup/tmp/build/lr-armsnes/libpocketsnes.so not found).
This was with the lr-armsnes.sh found in the 4.2 image.
-
Nevermind on the lr-armsnes. What I'm seeing on my old install with RP 4.2 is that there isn't any noticeable difference at all between the two emulators (as BuZz originally stated).
The thing is, they both work great on the exact same Pi Zero when loading games with either emulator with the 4.2 image. The only three games I tested were the first 3 in alphabetical order (2020 Super Baseball, The 7th Saga and 3 Ninjas Kick Back).
I have the processor clocked to 1ghz on both SD cards (the 4.2 and the 4.4 builds). Is there anything that you guys would recommend that I check to make sure that I'm running the SNES emulators the same way on both cards?
I'd like to be able to say definitively if SNES emulation was just better on 4.2 than it is on 4.4 for a Pi Zero or not. I set the 4.2 up sometime in May of 2017 though, so it's been over a year and I don't know if maybe I tweaked something there that I neglected to tweak on this new 4.4 image.
The biggest notable difference in performance in those 3 games that is blatantly obvious is when you begin a level in 3 Ninjas and the image of the sun is spinning around behind the title of the level (Mode 7 graphics???) It starts slowing down and there is a lot of audio garble. After that, even just the regular gameplay seems sluggish and the audio crackles a bit. (If I press start to pause, the screen dims a bit and the music runs at a faster pace with no audio garble). When I loaded up that game with both lr-snes9x2002 and lr-armsnes on my 4.2 image, it ran perfectly.
Any suggestions?
-
Strange. I've messed with every concievable option and combination of options in the
Configuration Editor
for SNES and I cannot duplicate the good performance that I get on the regular using RP 4.2 with this new 4.4 build. I'm using "The 7th Saga" as my main testing here. In 4.2 lr-snes9x2002 and lr-armsnes, I had it playing without any audio stutter/slowdown. It seems that it's impossible to do this on the 4.4, and although I can get it to play well through the intro, it's very apparently not working right once you name your character and the story begins with the king talking to you. Audio stutters once you're outside the town roaming the world and when you engage in battles as well.I was able to tweak the system a bit though, so now I can play "2020 Super Baseball" and "3 Ninjas Kick Back" at what by all appearances is full speed without any audio stutter.
Sadly, unless somebody can prove otherwise, you are forced to use piSNES if you want to play "The 7th Saga" on a Pi Zero with 4.4 installed.
Here were the settings I found to be the best when trying to get games working as good as possible in lr-snes9x2002: (Only put ones that I changed from default)
In the Configuration Editor under "Configure basic lilbretro emulator options / Configure additional options for snes":
Video Smoothing (true) *
Render Resolution (256x240) **
Video Shader Enable (false)- I know video smoothing actually impacts performance, but screen tears without it set to true are even worse than stuttering audio, IMO
** I used this custom output since that is the native NES/SNES output. I didn't actually see any difference between using this custom setting and the "320x240" choice.
Under "Advanced Configuration / Configure Libretro options / snes/retroarch.cfg":
video_smooth (true)
video_shader_enable (false)
input_overlay_enable (falsse)
audio_driver (alsa_thread)
video_fullscreen_x (256)
video_fullscreen_7 (240)
video_threaded (true)
video_allow_rotate (false)Also, the final piece of this puzzle is to select (CEA-2) as the default video mode for lr-snes9x2002 in the runcommand menu when you launch a game. Any other option here, including no choice, results in a lower performance and 2020 Super Baseball and 3 Ninjas Kick Back both suffer the audio stutter/slowdown without (CEA-2) being chosen.
....
Just tested Contra III with these settings and it's just about as bad as 7th Saga was. Playable, but slow and audio stutter whenever the action picks up a bit, which is quite frequent in this game. As it turns out, the colors are all wrong in lr-snes9x2002 during the 2nd level anyhow. Though PiSNES isn't a perfect experience by any means, the colors are correct in level 2 and there is no audio stutter or slowdown that is present in lr-snes9x2002. (Save for the 1st level boss which seemed to have a slight, non-game-breaking problem).
Oh well... SNES emulation isn't going to work nearly as good as I thought it would overall on the Pi Zero. I knew that games like Star Fox, Super Mario RPG and Secret of Mana weren't going to play on it, but it's sad that so many others seem to be just barely hobbling along on it.
But at least we can play 3 Ninjas Kick Back. So there's always that. :)
- I know video smoothing actually impacts performance, but screen tears without it set to true are even worse than stuttering audio, IMO
-
Jeez.....
I just tried loading up a few of the more demanding NES games that I had spent over a month configuring for the best emulators to run them and the performance is bogged down on some of them as well, such as the hack "Super Mario All-Stars NES" which ran perfect before (with lr-nestopia) but now suffers from major lag and audio stutter in 4.4.
Maybe I'm wrong here, but I think 4.4 overall has been a huge step backward for Pi Zero emulation. Perhaps stretch is not a good idea for anyone using a Pi Zero?
I think I'm going to have to completely abandon all of the work I've done getting my bro's Pi up and running and revert back to 4.3 for his Pi Zero. I will also have to make a notation in any of my compatibility testing that the testing is for 4.3 and before and results will likely be a lot worse if using 4.4 or beyond.
EDIT: Is it possible to still get a 4.3 image downloaded somewhere for the Pi Zero? I only have a 4.2 image and I completely missed 4.3 in between. I want to test that out against my old findings as well.EDIT 2: Nevermind. A google search for
"raspberry pi v4.3" download
will get you a link that allows a download of 4.3. -
@used2berx said in lr-armsnes and Retropie 4.4:
EDIT: Is it possible to still get a 4.3 image downloaded somewhere for the Pi Zero? I only have a 4.2 image and I completely missed 4.3 in between. I want to test that out against my old findings as well.
-
@dankcushions said in lr-armsnes and Retropie 4.4:
@used2berx said in lr-armsnes and Retropie 4.4:
EDIT: Is it possible to still get a 4.3 image downloaded somewhere for the Pi Zero? I only have a 4.2 image and I completely missed 4.3 in between. I want to test that out against my old findings as well.
Thanks man. Yeah, I figured that out right before you posted the link. :)
Looking at the changelog, I don't see anything that I'm going to be missing by reverting back to 4.3. It looks as though the HUGE change that I really appreciated as far as asthetics go may have been part of the major improvements to the way emulationstation handled the romlist in the 4.3 changes. (I'm referring to the fact that now when you enter a sub-folder it immediately displays game info and the proper artwork on the first game instead of needing to scroll up or down one to get it to start displaying).
Other than that, I don't think there's anything that 4.4 has to offer for Pi Zero users over 4.3. It's unfortunate that I finally discover all of this several weeks after building this new image, but I have no excuse for not reverting back to a build that will play NES/SNES at the fastest possible speed when I have another older Pi image that does just that.
I will update this thread with what I discover after getting the 4.3 image put together.
-
@used2berx i don't believe there's anything stopping you updating emulationstation to latest from within 4.3(?).
all i would say is we had users saying that 4.2 "bricked performance" compared to 4.1, and i imagine we'll get the same when 4.5 comes out :) i think with things like retropie there's too many factors (changing settings, etc) between one install and the next, and a lack of real benchmarking tools (working on that..) to get concrete data.
retropie versions themselves typically don't have that kind of influence over system performance. hopefully you can figure out a good solution, though.
-
@dankcushions said in lr-armsnes and Retropie 4.4:
@used2berx i don't believe there's anything stopping you updating emulationstation to latest from within 4.3(?).
all i would say is we had users saying that 4.2 "bricked performance" compared to 4.1, and i imagine we'll get the same when 4.5 comes out :) i think with things like retropie there's too many factors (changing settings, etc) between one install and the next, and a lack of real benchmarking tools (working on that..) to get concrete data.
retropie versions themselves typically don't have that kind of influence over system performance. hopefully you can figure out a good solution, though.
I have two images now. One is from a long time ago that I have been using while doing all of my NES/FDS testing and work. This has 4.2 on it.
The other image is a 4.4 image I started putting together less than a month ago.
I have 100% of NES/FDS games running at full speed without audio crackle and have hand picked the correct emulators to make this happen on an individual rom basis, on the build with 4.2. There are 4 or 5 exceptions to this rule, as the games would play but I could not get 100% speed performance no matter which emulator I used. These games are remarked in my compatibility spreadsheet. I tested games just about 20 minutes ago on the NES on the current 4.4 image I've been working on and some of the games I had tested as working 100% are now super laggy and have audio stutter. Granted, the games are "intense" hacks like Super Mario All-Stars, but these used to work absolutely fine on my 4.2 build.
This, along with all of the issues I'm running into trying to get a libretro core SNES emulator to play games at speed that worked fine in 4.2, I'm thinking that there is a real issue here.
I will go through the process of creating a 4.3 image today and see where that testing brings me.
I am exceptionally thorough with my testing and documentation. If I find that 4.3 is good where 4.4 is not, then I stand 100% behind my findings. What you guys choose to do with that information when the time comes is up to you.
I don't mean any disrespect to anybody here, and I know that the Pi Zero is the red-headed step-child that nobody really cares about, but it may be the case that you're better off just dropping support entirely for Pi Zero users beyond 4.3 if stretch is going to put a huge lag on games that used to work on earlier versions of the RP releases.
More to follow....
-
@used2berx
i don't think it's worth getting into an esoteric discussion about stock 4.2 versus your previous 4.3 install. there's too many factors. i think this is the only fair test:- install stock image 4.4
- run a game X on emulator Y, when launching choose 'launch verbose logging' via runcommand.
- leave the game doing it's demo for 5 minutes (time this)
- exit the game
- open /dev/shm/runcommand.log and look copy the performance statistics at the end. you can calculated the percentage of dropped frames, here.
repeat for 4.3, and 4.2 if you wish, (using same game, same emulator), and compare results of 5).
-
To clear confusion, I never had a 4.3 install. I'm currently setting up my first 4.3 install.
The original image that I messed up beyond repair way back in may or june of last year was 4.1, which I don't even have anymore. I was using 4.2 since it came out until around 3 weeks ago with this new build. So I went from 4.2 to 4.4.
The difference in performance that I'm talking about is from 4.2 to 4.4.
I don't see why this is so unbelievable since so many other things unintentionally broke after the upgrade to Stretch.
After I set up the 4.3 image, I will have an image of 4.2, 4.3 and 4.4. I will follow your instructions then and give you the results. I don't think that 4.4 is going to be very impressive on the Pi Zero though.
-
@used2berx said in lr-armsnes and Retropie 4.4:
I don't see why this is so unbelievable since so many other things unintentionally broke after the upgrade to Stretch.
Which things broke ?
-
@mitu Installation scripts, as far as I know. I know that zerojay's expirimental installer was completely borked, and the mame plus port that gamez_fan had started still will not install on 4.4 to this day.
EDITED TO ADD: The atari800 installer that future_child had made needed to be fixed to work. Even after this, the game "Beamrider" will not work on 4.4. He's looking into the issue to find out why but hasn't posted anything about it yet. This used to work with the same emu no problem in older versions of RP.
-
@used2berx Which installation scripts ? The rest of things you mentioned are not part of RetroPie.
-
@mitu said in lr-armsnes and Retropie 4.4:
@used2berx Which installation scripts ? The rest of things you mentioned are not part of RetroPie.
I added more info after you posted.
PS... Not really appreciating whoever is downvoting my posts here. I'm trying to help the community about a valid concern I have regarding the Pi Zero. Thanks.
-
@mitu @dankcushions
Fresh install of RP 4.3 and there is zero lag while running the hack "Super Mario All-Stars" in lr-nestopia. This is the same result that I got while running it during original testing on a 4.2 build. It is completely unplayable on the 4.4 build with massive slowdown and audio stutter. All 3 are tested with the exact same Pi Zero, with 3 separate SD cards.I will begin testing according to dank's specifications.
-
@used2berx Make sure to note which RetroArch and Nestopia versions are ok in 4.2.
-
@mitu said in lr-armsnes and Retropie 4.4:
@used2berx Make sure to note which RetroArch and Nestopia versions are ok in 4.2.
Sure thing. How do I do this again? :)
-
@used2berx Just use the RGUI (Select + X) and make note of the versions shown at the bottom of the screen. RA should be either 1.7.1 or 1.6.9.
-
@mitu said in lr-armsnes and Retropie 4.4:
@used2berx Just use the RGUI (Select + X) and make note of the versions shown at the bottom of the screen. RA should be either 1.7.1 or 1.6.9.
Will do. This is going to take a while. I need to test Super Mario All Stars on all 3 units for 5 minutes according to dank. I'm also going to try to see if I can duplicate the much quicker and higher performing experience in a libretro emulator for "The 7th Saga" on 4.3 and run the 5 minute tests on each of them. Once I have the logs copied for each test, I will go back in and get these numbers as well. I'm going to keep copies of the entire logfiles in each case just so I don't miss something you guys need and have to re-test them again.
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.