[RESOLVED!] Super Mario War in "slow motion" on new RPi400
chonglar last edited by
Summary: Super Mario War frame rate was slow on my Pi 400, but audio wasn't distorted. Every other game seemed fine.
The cause: An HDMI compatibility thing you have to do with your Samsung Series 6 or 7 TVs, it appears. Perhaps others too. It was an TV HDMI mode problem related to my Samsung QN65Q7DRA TV where the TV was not allowing selection of any other video modes.
Symptom: No matter what I chose in rasbpi-config for video mode, it always rebooted back into this 30hz mode:
# (tvservice command output from command line) # tvservice -s state 0xa [HDMI CUSTOM RGB lim 16:9], 3840x2160 @ 30.00Hz, progressive
This other page helped me out:
The solution: I went in my TV settings and turned on " Settings>General>External Device Manager>Input settings Plus "
This made it so the Pi 400 could choose different HDMI video modes, and I was able to set it to this:
# tvservice -s state 0xa [HDMI CUSTOM RGB full 16:9], 1920x1080 @ 60.00Hz, progressive
Hooray! SMW runs at normal video speed now!
(Below is my original writeup I had been working on, with more details of what I had tried, etc. None of what is below is very important, but it took time to write it and maybe Google will help someone else find this fix faster if I leave all these words below. That's my hope anyway.)
Is there a trick to making Super Mario War play at normal speed on the Pi 400? My Pi3b plays it at normal speed just fine with default settings on the same TV.
Pi 400, 4GB, 256M assigned to GPU
RetroPie 4.7 SD image (updated to 4.7.1 today)
Samsung 55" TV, Game Mode enabled (it's slow with either setting)
Xbox 360 wireless controllers a generic USB dongle, works fine
Game play seems like it's stuck in a Slow Motion setting. Seems like 1/2 or 1/4 of normal speed.
My kids actually thought I had enabled the libretro slow motion (which we do sometimes to make some mame shmups more fun to play)
The music and sound effects are fine (not slowed or distorted)
Controllers are responsive, everything is fine it seems except the speed of all motion is just really slow.
The only way I've gotten it to work at regular speed:
If I Alt-F4 out of ES and just run /opt/retropie/ports/smw/smw without any environment variables, then it launches the game in a tiny window in the upper left hand corner of the TV, and plays at normal speed.
What I've tried:
In SMW in-game Options I went to Graphics -> Frame Rate settings (20, 40, 62, 500, unlimited) and all of them still do the slow thing Installed smw from binary first. Tried from source too. When I launch it through ES it starts with this commandline (saw this in runcommand.log)
SDL1_VIDEODRIVER=dispmanx SDL_DISPMANX_WIDTH=2560 SDL_DISPMANX_HEIGHT=1440 /opt/retropie/ports/smw/smw
Tried various different video modes. Unfortunately most of them end up creating an upper-left box with smaller video window, instead of changing the TV's resolution.
Is dispmanx a performance drag (stretching the image to fill the screen on a 4K TV?)
Later, I tried installing smw from source. Same trouble.
state 0xa [HDMI CUSTOM RGB lim 16:9], 3840x2160 @ 30.00Hz, progressive
I saw this thread from a year or so ago:
I wasn't able to tell if the SDL2 thing is now a requirement for SMW to perform well on Pi4? I did try to build the @fluffypillow git version, but I couldn't get past the exceptions that it was throwing on startup :/