RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    lr-snes9x runs faster/better than lr-snes9x2010 (stock Pi 3, copper sinks, latest software versions)

    Scheduled Pinned Locked Moved General Discussion and Gaming
    lr-snes9xlr-snes9x2010cracklingslowdowncomparison
    23 Posts 6 Posters 8.7k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • matchamanM
      matchaman
      last edited by

      After extensive tests on hundreds of titles, I'm assured that lr-snes9x is (as of 11/2017) lighter and more efficient than lr-snes9x2010.

      Once I connected my Pi setup on a decent sounding system, I started noticing audio crackling on many SNES games and I originally blamed the latest update of lr-snes9x2010.

      Apparently, the snes9x2010 core has always been quite heavy (I even tried lr-snes9x-next versions!) on stock clocked Pi 3s (I have 3 units, I experienced no differences), causing audio crackling on non-enhanced games.

      Two days ago, out of curiosity, I tried the lr-snes9x core (aka latest build of snes9x) and the audio crackling completely disappeared, while performance was far, far better on every title

      • Strangely enough, enhanced games (Super FX and most SA-1) have the opposite result: lr-snes9x2010 performs better than lr-snes9x (which makes sense but should be the case for all ROMs)

      The best way to experience the difference is to enable rewind and a lightweight shader (CRT without curvature) and try (for example) Earthworm Jim (USA) before you reach the Cow Launcher or Hook (USA) when you start swimming on the first stage.

      With lr-snes9x2010 the slowdown is really noticeable, the rewind function feels jerky (struggling) and fast forward is doing almost nothing. However, with lr-snes9x all those issues are almost non-existent!

      Making things clear, I advised the usage of rewind and shaders in order to focus on comparison

      Please note that you shouldn't try this with an overclocked Pi 3, because the crackling and slowdowns are less evident and the comparison is harder.

      Now the question is... how come the 2010 version is supposed to be more efficient than the latest build while it performs so much worse?

      lostlessL 1 Reply Last reply Reply Quote 1
      • lostlessL
        lostless @matchaman
        last edited by

        @matchaman said in lr-snes9x runs faster/better than lr-snes9x2010 (stock Pi 3, copper sinks, latest software versions):

        Strangely enough, enhanced games (Super FX and most SA-1) have the opposite result: lr-snes9x2010 performs better than lr-snes9x (which makes sense but should be the case for all ROMs)

        Well snes9x-2010 has speed hacks to make those games run better on lower end hardware. The regular snes9x is pushing for accuracy and doesn’t have those hacks built in. Otherwise it would 2010 run just as poor as the regular snes9x on a pi. Like Star Fox 2 that was just released, which was not recognized as a super fx game . There was recently an update to snes9x-2010 to recognize Star Fox 2 as a super Fx game and now it runs it fine, but before then it ran poorly.

        1 Reply Last reply Reply Quote 0
        • matchamanM
          matchaman
          last edited by matchaman

          But the result is the opposite on 95% of games (non-chip enhanced). I don't understand why a more accurate version performs with less stress and a smoother experience overall.

          The issue here is that the REGULAR lr-snes9x runs much smoother than lr-snes9x2010 on non-special games!

          It feels like there's some kind of performance tweak that wasn't done on lr-snes9x2010 but lr-snes9x got it, probably specific to the Pi cores.

          1 Reply Last reply Reply Quote 0
          • lostlessL
            lostless
            last edited by

            There very well may be some performance enhancements in the standard snes9x. I have no idea. Just use the emulator that runs best for each game. It’s not like you’re limited to using one emulator in retropie.

            1 Reply Last reply Reply Quote 0
            • matchamanM
              matchaman
              last edited by matchaman

              Of course, lr-snes9x is the default core for SNES for me now, with the exception of enhanced titles. But since all versions of lr-snes9x2010 (dating back to lr-snes9x-next) behave like that, wouldn't it be better for future RetroPie versions to use lr-snes9x as default?

              Then again, if there's something to be tweaked, lr-snes9x2010 should be indeed a better choice since the code of 1.52.4 is lighter than 1.54.1 which lr-snes9x is based upon.

              (Not sure if I should have posted this on Help and Support)

              lostlessL 1 Reply Last reply Reply Quote 0
              • lostlessL
                lostless @matchaman
                last edited by

                @matchaman I do know snes9x-2010 has had a lot of backporting done. Meaning they take some code from newer versions and patch it into an older version to squash some bugs. So snes9x-2010 is kinda like a hybrid of sorts of many versions, with 1.52 as it’s core but bits of newer versions. It’s possible that it’s becoming a tad bloated and is causing minor performance drops here and there. Most which would never be noticed on a more powerful device.

                1 Reply Last reply Reply Quote 0
                • matchamanM
                  matchaman
                  last edited by matchaman

                  Indeed, I noticed that the majority of snes9x2010 users are on android which nowadays features "monstrous" hardware compared to the Pi :/

                  All in all, this needs to be solved somehow because it regards the default RetroPie setup. Later today I'll try lr-snes9x2010 (and lr-snes9x) on a stock Pi 2 and a Zero W in order to do the same for comparison sakes.

                  DarksaviorD 1 Reply Last reply Reply Quote 1
                  • DarksaviorD
                    Darksavior @matchaman
                    last edited by Darksavior

                    @matchaman I must disagree with you that lr-snes9x is faster/better than lr-snes9x2010. It requires a bit more cpu speed than 2010. You can easily notice this in games that use heavy transparencies. Though, I haven't done extensive testing to find out more games that use heavy transparencies other than megaman-x1's (octopus level). It will slowdown to 55-56fps on my overclocked pi3 at 1.3ghz, 1080p, crt-pi shader, and I get crackling sound.

                    I do recommend having lr-snes9x as your default if you're overclocking like I am, and if you get slowdowns then set those games to use 2010. If lr-snes9x could handle transparencies as good as 2010 then I'd suggest to the retropie team to consider making it the default..but that's not the case.

                    1 Reply Last reply Reply Quote 0
                    • matchamanM
                      matchaman
                      last edited by matchaman

                      That's really strange. Did you try with the latest version of lr-snes9x? I will try Mega Man X tonight to do the same comparison.

                      I also did the test on my Zero W and both cores perform pretty bad but lr-snes9x2010 is evidently worse, confirming my concern even on different hardware.

                      DarksaviorD 1 Reply Last reply Reply Quote 0
                      • DarksaviorD
                        Darksavior @matchaman
                        last edited by Darksavior

                        @matchaman I built it from source just now. This has always been the case since I've been using it. The degradation that you've reported on 2010 might be another issue. I did notice audio being broken on at least wild guns with 2005 for at least half a year until it was fixed. I haven't used 2010 in a while, maybe consider posting a bug report. I don't use the rewind/forward feature and I don't think that should be a way of testing performance. Most people won't use that.

                        You can also try different versions of 2010 by extracting them from older retropie images to verify a performance difference.

                        matchamanM 1 Reply Last reply Reply Quote 0
                        • matchamanM
                          matchaman @Darksavior
                          last edited by matchaman

                          I haven't used 2010 in a while, maybe consider posting a bug report.

                          I already did on github but it did not receive any replies, the issue remains open

                          I don't use the rewind/forward feature and I don't think that should be a way of testing performance. Most people won't use that.

                          I proposed that in order to make the problems more evident. Rewind and shaders would consume resources that will make the difference stand out because, nevertheless, it's not extremely evident without decent speakers.

                          You can also try different versions of 2010 by extracting them from older retropie images to verify a performance difference.

                          Yes, that's what I did and ended back even to lr-snes9x-next before it was renamed to lr-snes9x2010. There's no difference in performance, while I can't test previous versions of lr-snes9x because it's not included.
                          (I don't know where to find binaries or how to compile older versions of lr-snes9x)

                          Talking about rewind... I just noticed that on lr-snes9x it can go back for a much longer time than lr-snes9x2010. Apart from feeling less smooth, rewind on 2010 lasts for only a few seconds of gameplay.

                          In addition of fast forward working much faster/better on lr-snes9x, I would consider it evidence that there's something wrong with the core on a (hopefully) higher code level, specifically for RPi.

                          1 Reply Last reply Reply Quote 0
                          • xFleskX
                            xFlesk
                            last edited by xFlesk

                            im using snes9x (latest) for all my snes retail games, however i noticed that snes9x (any version) has problems with rom hacks. many hacks works fine but also many hacks needs to be open with lr-armsnes.
                            also i noticed that starfox 2 is unplayable on any of libretro cores exept lr-snes9x2005 (which runs the game flawlesly).

                            so to answer your question, i think there is no "perfect" emulator on retropie ;) but thankfuly we have many options to choose from, thats why retropie itself is perfect (at least for me ;) )
                            cheers

                            lostlessL 1 Reply Last reply Reply Quote 0
                            • lostlessL
                              lostless @xFlesk
                              last edited by lostless

                              @xflesk for starfox 2. Update snes9x2010 from source. A speed hack has been added recently but retropie setup binary is still an older version. So star fox 2 runs fine now.

                              And no, snes9x 2005 does not run flawlessly. It runs it too fast.

                              xFleskX 1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User
                                last edited by

                                Has any version of lr-snes9x been updated to add support for Tengai Makyou Zero?

                                DarksaviorD 1 Reply Last reply Reply Quote 0
                                • DarksaviorD
                                  Darksavior @A Former User
                                  last edited by

                                  @livefastcyyoung Build lr-snes9x from source and it will

                                  ? 1 Reply Last reply Reply Quote 0
                                  • xFleskX
                                    xFlesk @lostless
                                    last edited by

                                    @lostless thank you for info ;) i must try to update from source.
                                    cheers

                                    1 Reply Last reply Reply Quote 0
                                    • ?
                                      A Former User @Darksavior
                                      last edited by

                                      @darksavior Thanks! :)

                                      1 Reply Last reply Reply Quote 0
                                      • ?
                                        A Former User
                                        last edited by

                                        Quick question:

                                        I have both roms in the SNES and SFC folder, as I keep any Japanese only releases in the SFC folder.

                                        However, after installing lr-snes9x, I can only select it for roms in the SNES folder, not the SFC folder. How can I make lr-snes9x selectable for roms in the SFC folder?

                                        DarksaviorD 1 Reply Last reply Reply Quote 0
                                        • DarksaviorD
                                          Darksavior @A Former User
                                          last edited by Darksavior

                                          @livefastcyyoung You'll have to edit the es_systems.cfgin /etc/emulationstation/and add the sfc section yourself. Keep in mind, when installing a new emulator or updating retropie, your changes will go away. In order to prevent this, you'll have to put a copy of es_systems.cfg in /opt/retropie/configs/all/emulationstation/ and edit that one instead. The drawback in doing that is that you'll have to add new emulators manually to es_systems.cfg since retropie only touches the one at /etc/emulationstation/. I usually install every emulator I want first before copying it over and editing.

                                          ? 1 Reply Last reply Reply Quote 0
                                          • ?
                                            A Former User @Darksavior
                                            last edited by A Former User

                                            @darksavior I already have the SFC section in my es_systems.cfg. So the Super Famicom and Super Nintendo both show up in my game carousel already.

                                            My issue is that the Super Famicom section isn't recognizing lr-snes9x as an emulator it can use.

                                            This is what my es_systems.cfg looks like...

                                            https://pastebin.com/rT1PTvyi

                                            mituM DarksaviorD 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.