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

Getting the best N64 experience on a Pi 4

Scheduled Pinned Locked Moved General Discussion and Gaming
mupen64pluspi4 bnintendo 64
365 Posts 41 Posters 243.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.
  • A
    AdamBeGood @Nakynaw
    last edited by AdamBeGood 9 Oct 2020, 23:09 10 Sept 2020, 22:05

    @Nakynaw said in Getting the best N64 experience on a Pi 4:

    Its seems like the only consensus is about hybrid filter off and overclocking with hdmi_enable_4k60=1, v3d_freq=800ish and arm_freq+2000ish...

    I thought there was some controversy around 4k60=1 also, I am sure someone questioned the benefit of that.

    It's really good that you are asking the questions though, it would be good to have this stuff nailed down to some degree.

    Also does everyone agree on «color to rdram is set to async»?

    Where is this option? Is this in the standalone mupen config, or is this a Retroarch menu setting? Not sure what I have mine set as.

    R 1 Reply Last reply 11 Sept 2020, 00:18 Reply Quote 0
    • R
      ReadyPlayaWon Banned @AdamBeGood
      last edited by ReadyPlayaWon 9 Nov 2020, 05:22 11 Sept 2020, 00:18

      @AdamBeGood said in Getting the best N64 experience on a Pi 4:

      Where is this option? Is this in the standalone mupen config, or is this a Retroarch menu setting? Not sure what I have mine set as.

      you can find it in ... /opt/retropie/configs/n64/mupen64plus.cfg

      if you search within the mupen64plus.cfg file for rdram you'll find multiple references, but the one relating to color is this one ...

      # Enable color buffer copy to RDRAM (0=do not copy, 1=copy in sync mode, 2=Double Buffer, 3=Triple Buffer)
      EnableCopyColorToRDRAM = 1
      

      or just disable in the menu

      alt text

      1 Reply Last reply Reply Quote 1
      • N
        Nakynaw @George Spiggott
        last edited by 11 Sept 2020, 02:05

        @George-Spiggott said in Getting the best N64 experience on a Pi 4:

        @Nakynaw You don't need to overclock the CPU at all to run N64. V3D overclocking is the only part of the GPU that a Pi4 needs for any emulation currently. My V3D is set very high, perhaps too high for some. It is stable on MY Pi, in the sense that I Have not encountered games won't work or any instability generally. However I have never run my Pi through a genuine stress test.

        And what frequency is that, if you do not mind sharing?

        (I just received my second Pi4 (extreme kit) will soon run some test for sure on my side!)

        PI4B 8GRAM (Canakit Extreme) - Retropie 4.6.7 (my first Pi ever : september 2020)
        OC : arm=2k, v3d=830, hdmi4kp60=1, turbo=1, OV=6

        A 1 Reply Last reply 11 Sept 2020, 05:40 Reply Quote 0
        • A
          AdamBeGood @Nakynaw
          last edited by 11 Sept 2020, 05:40

          @Nakynaw said in Getting the best N64 experience on a Pi 4:

          And what frequency is that, if you do not mind sharing?

          (I just received my second Pi4 (extreme kit) will soon run some test for sure on my side!)

          @Nakynaw It is in his signature at the bottom of his posts! I thought about asking this question too, before I checked there.

          @ReadyPlayaWon Thanks for the info!

          1 Reply Last reply Reply Quote 1
          • A
            akamming @George Spiggott
            last edited by 11 Sept 2020, 05:46

            @George-Spiggott said in Getting the best N64 experience on a Pi 4:

            @Nakynaw You don't need to overclock the CPU at all to run N64. V3D overclocking is the only part of the GPU that a Pi4 needs for any emulation currently. My V3D is set very high, perhaps too high for some. It is stable on MY Pi, in the sense that I Have not encountered games won't work or any instability generally. However I have never run my Pi through a genuine stress test.

            I have a different experience. I had some sound stuttering in games like cruis'n exotica which were solved by overclocking the arm to 2000. (in combination with the kms driver and v3d overclock to 815).

            A 1 Reply Last reply 11 Sept 2020, 05:47 Reply Quote 0
            • A
              AdamBeGood @akamming
              last edited by 11 Sept 2020, 05:47

              @akamming said in Getting the best N64 experience on a Pi 4

              I have a different experience. I had some sound stuttering in games like cruis'n exotica which were solved by overclocking the arm to 2000. (in combination with the kms driver and v3d overclock to 815).

              I hate always being the guy with these questions, but what is "kms driver"?

              A 1 Reply Last reply 11 Sept 2020, 05:54 Reply Quote 0
              • A
                akamming @AdamBeGood
                last edited by 11 Sept 2020, 05:54

                @AdamBeGood said in Getting the best N64 experience on a Pi 4:

                I hate always being the guy with these questions, but what is "kms driver"?

                it's discussed here quite a lot

                basically a different display driver for the pi which offloads some work from the gpu to the cpu, which comes in handy when the gpu is the performance bottleneck, like in n64 emulation.

                you can enable it in boot/config.txt. This is my config:

                [pi4]
                # Enable DRM VC4 V3D driver on top of the dispmanx display stack
                #dtoverlay=vc4-fkms-v3d
                dtoverlay=vc4-kms-v3d-pi4,noaudio
                

                be aware: not all software (e.g. kodi, omxplayer) will work with this driver.

                A 1 Reply Last reply 11 Sept 2020, 06:20 Reply Quote 1
                • A
                  AdamBeGood @akamming
                  last edited by AdamBeGood 9 Nov 2020, 07:44 11 Sept 2020, 06:20

                  @akamming Cool, I'll try it out! I only use the Pi for gaming.

                  Edit: Emulation Station wouldn't load with that in the config, so I've taken it out now.

                  A 1 Reply Last reply 12 Sept 2020, 11:10 Reply Quote 0
                  • M
                    mitu Global Moderator
                    last edited by mitu 9 Nov 2020, 07:30 11 Sept 2020, 06:30

                    Note that this configuration - pure KMS driver - is going to remove support for the emulators relying ondispmanx and they'll not work.

                    The driver is still marked as experimental right now by the RPI engineers - though it's in a fairly usable state.

                    basically a different display driver for the pi which offloads some work from the gpu to the cpu, which comes in handy when the gpu is the performance bottleneck, like in n64 emulation.

                    That's not 100% correct, while the pure KMS has some advantages over the F(irmware)KMS driver, the CPU will not be boosting the GPU performance.

                    From: https://www.raspberrypi.org/forums/viewtopic.php?p=1507622#p1507247

                    Kinda offtopic but what is the difference between vc4-fkms-v3d and vc4-kms-v3d?

                    It's down to what actually drives the video scaler (HVS), pixel valves, and output display blocks (HDMI/VEC/DSI/DPI).
                    With vc4-fkms-v3d this remains with the firmware, and the firmware still allows DispmanX or MMAL to add extra layers.
                    With vc4-kms-v3d, the Linux kernel is driving all that lot, and DRM prohibits multiple clients adding layers at the same time.

                    A 1 Reply Last reply 11 Sept 2020, 13:11 Reply Quote 0
                    • G
                      George Spiggott
                      last edited by 11 Sept 2020, 08:04

                      I seem to be having a bit of luck with turning off overscan on Mupen64 Plus Next. It doesn't seem to affect screen size on my TV and both SotE and Perfect Dark seem to run faster, Perfect Dark runs fast enough to run in 16:9 640x360 with MSAA without too much slowdown.

                      @Nakynaw It's in my sig, thanks @AdamBeGood.

                      Currently running:
                      Retropie 4.8.9 on a Pi Zero 2W (Overclock Settings: CPU 1400Mhz)
                      ES-DE on a GMKtec K6 (Windows 11, 32GB RAM)

                      D A 2 Replies Last reply 11 Sept 2020, 08:35 Reply Quote 1
                      • D
                        dankcushions Global Moderator @George Spiggott
                        last edited by 11 Sept 2020, 08:35

                        @George-Spiggott the overscan option is a bit of a misnomer. you have to adjust the various overscan left/right/etc settings to see an effect. the overscan setting on its own just turns the VI emulation on, which is the part of the n64 that converts the game image to a TV signal. as part of this, it forces it to certain resolutions, sometimes different from the game resolution, which can cause scaling artefacts/blurring. also, i suppose it's an additional graphical operation that could cause some performance issues.

                        i'll look to getting it disabled by default.

                        1 Reply Last reply Reply Quote 1
                        • A
                          AdamBeGood @George Spiggott
                          last edited by 11 Sept 2020, 10:05

                          @George-Spiggott said in Getting the best N64 experience on a Pi 4:

                          I seem to be having a bit of luck with turning off overscan on Mupen64 Plus Next. It doesn't seem to affect screen size on my TV and both SotE and Perfect Dark seem to run faster, Perfect Dark runs fast enough to run in 16:9 640x360 with MSAA without too much slowdown.

                          @Nakynaw It's in my sig, thanks @AdamBeGood.

                          I see too much screen tearing on Mupen64 Plus Next, and sometimes the Night Vision doesn't work, other times it does.... on my Pi at least. I don't have that kms driver like you do though.

                          G 1 Reply Last reply 11 Sept 2020, 10:29 Reply Quote 0
                          • G
                            George Spiggott @AdamBeGood
                            last edited by 11 Sept 2020, 10:29

                            @AdamBeGood I never got any good results out of MSAA before upgrading to the KMS driver. MSAA delivers some nice improvements to low res N64 games for very little overhead, much less overhead than increasing the resolution. I can see why you would want to wait though.

                            Currently running:
                            Retropie 4.8.9 on a Pi Zero 2W (Overclock Settings: CPU 1400Mhz)
                            ES-DE on a GMKtec K6 (Windows 11, 32GB RAM)

                            A 1 Reply Last reply 11 Sept 2020, 10:35 Reply Quote 0
                            • A
                              AdamBeGood @George Spiggott
                              last edited by AdamBeGood 9 Nov 2020, 11:53 11 Sept 2020, 10:35

                              @George-Spiggott said in Getting the best N64 experience on a Pi 4:

                              @AdamBeGood I never got any good results out of MSAA before upgrading to the KMS driver. MSAA delivers some nice improvements to low res N64 games for very little overhead, much less overhead than increasing the resolution. I can see why you would want to wait though.

                              I don't want to wait as such, my Emulation Station just didn't load when I turned that setting on in the Config!

                              lvl0: Error creating SDL window!
                                  Could not initialize EGL
                              lvl0: Renderer failed to initialize!
                              lvl0: Window failed to initialize!
                              
                              1 Reply Last reply Reply Quote 0
                              • A
                                akamming @mitu
                                last edited by 11 Sept 2020, 13:11

                                @mitu said in Getting the best N64 experience on a Pi 4:

                                That's not 100% correct, while the pure KMS has some advantages over the F(irmware)KMS driver, the CPU will not be boosting the GPU performance.

                                ok... this is how i understood it. Anyway i am just a user, so i tried to write it down as how i perceive it. apparently not 100% correct.

                                but to be factual: these are my experiences with the kms driver / 5.x kernel. I'll try to avoid explaining why i have the experiences.

                                • indeed not everything works with kms (as expected).
                                • but i noticed better framerates on serveral emulators (including N64) as of kernel 5.x (don't know the exact number.) in combination with kms driver. So that's why kept on using it.
                                • as of this kernel in combi with kms i was able to overclock the v3d clock more (now stable at 815. Before that i could not go over 750 without making my system unstable). Not 100% sure if this is caused by this kernel / kms driver: I always upgrade to latests supported versions (sudo apt update && sudo apt upgrade -y). And tried to overclock more at the time i got the new kernel and started using this driver. But ofcourse another upgraded component (e.g. firmware) might be the cause of this. This better overclock of v3d led to better performance of several emulators (including N64).
                                • And when i overclocked my arm clock to 2000 i got even better results. (e.g. no more sound stuttering in cruis'n exotica. When i remove the arm overclock it's back...)
                                G 1 Reply Last reply 11 Sept 2020, 13:47 Reply Quote 1
                                • G
                                  George Spiggott @akamming
                                  last edited by 11 Sept 2020, 13:47

                                  @akamming said in Getting the best N64 experience on a Pi 4:

                                  • And when i overclocked my arm clock to 2000 i got even better results. (e.g. no more sound stuttering in cruis'n exotica. When i remove the arm overclock it's back...)

                                  It could be that KMS has changed the load on the CPU significantly. I can't test my overclock setting at the moment but I'd like to investigate this when I can.

                                  Pre-KMS Mupen64 definitely did not benefit from overclocking the CPU as the CPU load on a Pi4 was IIRC around 50%.

                                  Currently running:
                                  Retropie 4.8.9 on a Pi Zero 2W (Overclock Settings: CPU 1400Mhz)
                                  ES-DE on a GMKtec K6 (Windows 11, 32GB RAM)

                                  A 1 Reply Last reply 11 Sept 2020, 14:29 Reply Quote 0
                                  • A
                                    akamming @George Spiggott
                                    last edited by 11 Sept 2020, 14:29

                                    @George-Spiggott said in Getting the best N64 experience on a Pi 4:

                                    Pre-KMS Mupen64 definitely did not benefit from overclocking the CPU as the CPU load on a Pi4 was IIRC around 50%.

                                    it is in my config (using lr-mupen64plus-next) around 55%. but in my experience not having 100% cpu does not mean you cannot benefit from overclock. that depends on the how the code is written. if by turn the gpu and cpu are waiting for each other the cpu load coud be 50% and the emulation would still benefit from a faster cpu.

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      shavecat
                                      last edited by 11 Sept 2020, 18:18

                                      Hey
                                      @rufus
                                      i did your over clock
                                      But im still getting this error after im playing some games .
                                      The temp goes no more then 50 deg'.
                                      Its just writing this error on the left top screen non stop.

                                      DRM_IOCTL_MODE_CREATE_DUMB failed: Cannot allocate memory
                                      Failed to create scanout resource
                                      

                                      any idea maybe ?

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        akamming @AdamBeGood
                                        last edited by 12 Sept 2020, 11:10

                                        @AdamBeGood said in Getting the best N64 experience on a Pi 4:

                                        Edit: Emulation Station wouldn't load with that in the config, so I've taken it out now.

                                        weird in that other thread i see a lot of people having a better emulation station performance with that config. On my system emulation station also works fine

                                        Might be that you have omx player enabled in your settings (omx player does not work with kms driver)

                                        A 2 Replies Last reply 12 Sept 2020, 12:36 Reply Quote 1
                                        • A
                                          AdamBeGood @akamming
                                          last edited by AdamBeGood 9 Dec 2020, 14:23 12 Sept 2020, 12:36

                                          @akamming Which setting file would that be in?

                                          Edit: Don't worry. I'll have a look for myself, I think I recall seeing it.

                                          1 Reply Last reply Reply Quote 0
                                          163 out of 365
                                          • First post
                                            163/365
                                            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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received