Getting the best N64 experience on a Pi 4
-
@quicksilver Will check the audio settings. TV is 1080p. Mupen is running in 320x240.
I don't understand why the audio cuts out when there is so much spare processing time. I assumed that audio is processed by the CPU.
-
@George-Spiggott said in Getting the best N64 experience on a Pi 4:
@quicksilver Will check the audio settings. TV is 1080p. Mupen is running in 320x240.
I don't understand why the audio cuts out when there is so much spare processing time. I assumed that audio is processed by the CPU.
if the gpu can't deliver frames in time, it bottlenecks everything else. cpu power is mostly irrelevant with n64 on raspberry pi. even the rpi 2 has enough grunt most of the time.
-
@quicksilver I went for a variation on your suggestion, I had a look at the audio settings for lr-mupen64plus-next and increased Audio Latency (ms) to 512 (from 64). It seems to have smoothed out most of the audio issues I have. The game still doesn't run at 100% speed but it is well playable.
I have also pretty much completely turned off my CPU overclock. I am tempted to see how far I can push the GPU to iron out the frame rate issues on N64 and PSP.
@dankcushions thanks for the explanation.
-
@dankcushions I found a list of the games that dk benefit from 16:9. There seems to be about half a dozen of them.
The only one I have is Perfect Dark. It will take advantage of 16:9 adjusted. You have to have a fairly sharp eye to notice the difference e.g the moon is actually a cirle at the start of level 1. Nice to find a game with that option though.
-
Does anyone know how to gwt Mario Cart 64 to run in 640x480 without the graphics breaking up on the character select screen?
-
@George-Spiggott can you post a screenshot? Often times there are issues with 2D objects having lines in them when you increase the resolution beyond the original render resolution of that system. This happens with a number of emulators, not just mupen64plus.
-
@George-Spiggott i belive:
# Render 2D texrects in native resolution to fix misalignment between parts of 2D image. (0=Off, 1=Optimized, 2=Unoptimized) EnableNativeResTexrects = 0
to
# Render 2D texrects in native resolution to fix misalignment between parts of 2D image. (0=Off, 1=Optimized, 2=Unoptimized) EnableNativeResTexrects = 1
in /opt/retropie/configs/n64/mupen64plus.cfg
or the equiv core option in lr-mupen.
-
@dankcushions I had not noticed that option before. Do you know if there a performance hit for using it?
-
@quicksilver there presumably will be otherwise it would default on.
-
@dankcushions Thanks that solved it. There were a few N64 games that ran well on a stock Pi3B+ I think most of these will be good candidates to run at 640x480 on a Pi4. So far Mario Cart 64 and Donkey Kong Racing are the only ones I have tried. I also managed to fix my Worms Armageddon problem by running the game in Mupen64plus in 640x480.
This is the graphical error in Mario Cart 64 so people know what to look out for.
-
Hello together,
First of all, thanks for the efforts to bring a first release out for the RPI4.
I tried to run Goldeneye and Pilotwings 64 on first official RPI4 release.
Currently, I got weaker performance as on my RPI3 with old rice core for these two titles.Pilotwings rans nearly at 100 per cent on RPI3.
On RPI4, i tried all cores. At most of the time it stuckes and there are artefacts and glitches on the screen.Goldeneye rans also i would say only 70 per cent of speed.
Addititional, I tried also lakka in the past on RPI4, with nearly same behaviour.
I guess the emulator cores and/or gpu drivers are currently not very optimized so far.I will ask some questions in the round, which I currently do not know, maybe one of you have here already more background info:
-
Are there any improvements possible, what could be said by today?
-
Would a coming vulkan gpu driver help for better N64 performance?
-
is there any ongoing optimization for the N64 emulators/cores, especially for the RPI4?
-
-
@Pi-nerd84 said in Getting the best N64 experience on a Pi 4:
Hello together,
First of all, thanks for the efforts to bring a first release out for the RPI4.
I tried to run Goldeneye and Pilotwings 64 on first official RPI4 release.
Currently, I got weaker performance as on my RPI3 with old rice core for these two titles.Pilotwings rans nearly at 100 per cent on RPI3.
On RPI4, i tried all cores. At most of the time it stuckes and there are artefacts and glitches on the screen.Goldeneye rans also i would say only 70 per cent of speed.
i can definitely see some nasty regression in goldeneye speed. i'm bisecting right now to see where it changed.
-
tagging @quicksilver - I just compiled standalone mupen64plus-GLideN64 from the beginning of the year and it's getting hammered in the intro (spinning nintendo logo) and presumably beyond, whereas lr-mupen64plus-next seems fine. not sure what the discrepancy can be? has it always been like this? very strange!
-
@dankcushions which game are you testing? I just did a source update a few days ago and everything has been working fine for me. (Was working fine before that as well)
Edit: let me restore my mupen64plus.cfg back to default before I confirm anything though and I'll report back.
-
@quicksilver Goldeneye on pi4 - the intro seems very slow, when my memory of it on the pi3 is that it would slow down during the 'gun barrel walk' part, but not before that. i didn't get further than that.
-
@dankcushions I restored my mupen64plus.cfg to default settings (afaik) and tested GoldenEye. Feels the same as I remember it. A little bit of slowdown on the gunbarrel part of the intro and the menu select screen. But Nintendo logo and the rest "feel" right to me.
Do you have issues with the latest build from source or binary install (not sure when binaries were last updated)
-
@Pi-nerd84 generally you shouldn't be using gles2rice as a first choice on the pi 4. Pilot wings should work fine with gliden64. Gliden64 still has active development and is much more accurate. The reason you are having issues with gles2rice is because it's rendering everything 640x480 on the pi4 and it was 320x240 on the pi 3. The mupen64plus.sh script which controlled mupen64plus render res on the pi 3 isnt functional at this time. You should be able to edit the mupen64plus.cfg and change res from 640x480 to 320x240.
-
@quicksilver if it's not too much bother, would you mind uploading your .cfg somewhere so I can cross reference the difference?
-
-
So something weird I have noticed with quite a few games when using gliden64. Take KI for example, when you start a match the game is very choppy and quite obviously not running fullspeed. However after about 15 secs of gameplay, the game smooths out and runs fullspeed from there on out. I can replicate this behavior in the menus for StarCraft 64 and battle for naboo, slow and choppy at first but then suddenly smooths out and runs fullspeed. I thought this must be something to do with the texture caching however if I quit the game and reload, it is choppy again for about the first 15 secs or so (which shouldn't happen right?)
Edit: haven't tested with KI yet but with StarCraft and battle for naboo I used htop to see what was happening during this initial slow down and I can see memory usage continuing to climb. As soon as the memory usage stops climbing is when the game suddenly becomes fullspeed.
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.