Some snes games won´t start. (Retropie/Raspberry)

Hi!

Thanks for a great emulation project, awesome job. Where do i start the troubleshooting if a rom won´t start? Is there a log created if the rom don´t start? or any kind of debug message? If i try to start the game from cli with “retroarch -L /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so /home/pi/RetroPie/roms/snes/top-spel/NHL-98\ (U).smc” I get an error like this

No ROM file header found. “NHL HOCKEY 1998” [checksum ok] HiROM, 16Mbits, Type: ROM+RAM+BAT, Mode: 21, TV: NTSC, S-RAM: 32Kb, ROMId: A8HE Company: 69 RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used. Segmentation fault

Looks to me like some kind of shader error but my knowledge ends there. Almost every game besides nhl 95 to 98 starts and run just fine.

Im running this from a raspberrypi model b rev 2 system with pretty much standard configs and setup.

Any thougths?

I don’t think it’s a shader problem, though I can see why would, since that’s the last thing it mentioned before the segfault.

pocketsnes has lower compatibility than, say, snes9x, so that could be the issue. I hear Super Mario RPG is incompatible, for example, so you might try running that ROM and see if it fails in the same way.

Also, try running it with -v to get the full, verbose output.

Thanks for the tip hunterk, Super Mario RPG - Legend of the seven stars runs fine.

I’ll share the output from retroarch, maybe you could point me in the right direction from this error message.

pi@raspberrypi ~ $ retroarch -vL /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so /home/pi/RetroPie/roms/snes/NHL\ '95\ (U).smc === Build ======================================= Compiler: GCC (4.6.3) 32-bit Built: May 28 2013

RetroArch: Loading default config. RetroArch: Looking for config in: “/home/pi/.config/retroarch/retroarch.cfg”. RetroArch: Looking for config in: “/home/pi/.retroarch.cfg”. RetroArch: Looking for config in: “/etc/retroarch.cfg”. === Config === autosave_interval = “600” === Config end === RetroArch [WARN] :: system_directory is not set in config. Assuming system directory is same folder as game: “/home/pi/RetroPie/roms/snes/”. RetroArch: Found default config: /etc/retroarch.cfg. RetroArch: Loading dynamic libretro from: “/home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so” RetroArch: Version of libretro API: 1 RetroArch: Compiled against API: 1 RetroArch: Environ GET_OVERSCAN: 0 RetroArch: Loading ROM file: /home/pi/RetroPie/roms/snes/NHL '95 (U).smc. RetroArch: Did not find a valid ROM patch. RetroArch: CRC32: 0x2e9b1463, SHA256: 01c0b58d5fd5d5484fea988455a55a71ed9e606538d2b3ce3f216159cc6929b0 RetroArch: ROM size: 1048576 bytes. RetroArch: Environ SET_PIXEL_FORMAT: RGB565. No ROM file header found. “NHL '95” [checksum ok] HiROM, 8Mbits, Type: ROM+RAM+BAT, Mode: 21, TV: NTSC, S-RAM: 8Kb, ROMId: ANHE Company: 69 RetroArch: Set audio input rate to: 31961.16 Hz. RetroArch: Adjusting aspect ratio to 1.07 RetroArch: Video @ 768x717 RetroArch: [VC/EGL]: Initializing… RetroArch: Found GL context: videocore RetroArch: Detecting screen resolution 1920x1080. RetroArch: Querying GL extension: BGRA8888 => exists RetroArch: [GL]: BGRA8888 extension found for GLES. RetroArch: GL: Using resolution 1920x1080 RetroArch: [GL]: Using GLSL shader backend. RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used. RetroArch: Found GLSL vertex shader. RetroArch: Shader log: Compiled RetroArch: Found GLSL fragment shader. RetroArch: Shader log: Compiled RetroArch: Linking GLSL program. RetroArch: Found GLSL vertex shader. RetroArch: Shader log: Compiled RetroArch: Found GLSL fragment shader. RetroArch: Shader log: Compiled RetroArch: Linking GLSL program. RetroArch: Found GLSL vertex shader. RetroArch: Shader log: Compiled RetroArch: Found GLSL fragment shader. RetroArch: Shader log: Compiled RetroArch: Linking GLSL program. RetroArch: GL: Loaded 1 program(s). RetroArch: Querying EGL extension: KHR_image => exists RetroArch: Using font rendering backend: freetype. RetroArch: Graphics driver did not initialize an input driver. Attempting to pick a suitable driver. RetroArch: [Joypad]: Found pad: Smartjoy Family Super Smartjoy 2 on /dev/input/js0. RetroArch: Found joypad driver: “linuxraw”. RetroArch: ALSA: Using signed 16-bit format. RetroArch: ALSA: Period size: 384 frames RetroArch: ALSA: Buffer size: 1536 frames RetroArch: Sinc resampler [C] RetroArch: SINC params (8 phase bits, 16 taps). RetroArch: [RGUI]: Opening history: /etc/.retroarch-history.txt. RetroArch: RetroArch : PocketSNES 7.2.0. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.9 || Frames: 256. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.7 || Frames: 512. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.8 || Frames: 768. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.6 || Frames: 1024. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.5 || Frames: 1280. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.1 || Frames: 1536. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.5 || Frames: 1792. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.5 || Frames: 2048. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.3 || Frames: 2304. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.1 || Frames: 2560. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.5 || Frames: 2816. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 59.3 || Frames: 3072. RetroArch: RetroArch : PocketSNES 7.2.0 || FPS: 58.9 || Frames: 3328. ^CRetroArch: Saving regular SRAM. RetroArch: SRM: /home/pi/RetroPie/roms/snes/NHL '95 (U).srm RetroArch: RTC: /home/pi/RetroPie/roms/snes/NHL '95 (U).rtc RetroArch: Saved successfully to “/home/pi/RetroPie/roms/snes/NHL '95 (U).srm”. RetroArch: Average audio buffer saturation: 37.40 %, standard deviation (percentage points): 15.38 %. RetroArch: Amount of time spent close to underrun: 17.80 %. Close to blocking: 0.06 %. RetroArch: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.

The screen becomes black and i have to press ctrl c or quit retroarch to get back.

Hmm. That output all looks fine. Could your ROM be bad? Other than that possibility, I’m kinda stumped.

I may setup RetroPie on my RPi today, and if so, I’ll test it out and see if I have the same problem.

I tried to start the NHL 95 to 98 games today with snes9x and that gave me the same results, black screen.

I also tried them on my android device and they worked fine.

Could it be some graphic settings or something like that? I use hdmi.

Umm, this is PocketSNES. That is an ancient version of SNES9x peppered to hell with speedhacks that actually break compatibility. I tried it on OpenPandora some days ago and next to very bad sound there are also numerous graphics glitches.

On Android SNES9x Next gets used by default which is based on a much more up-to-date version of SNES9x and therefore much better compatibility.

I’m afraid something like PocketSNES might be as good as it gets on Raspberry Pi. Hell, SNES9x Next is still too slow for certain games like Donkey Kong Country 1 at world 2-1 on OpenPandora and that thing has a 1GHz ARMv7 Cortex A8 CPU - well above and beyond the crappy ARMv6 CPU inside the Raspberry.

I see, but i tried to start them with snes9x on my raspberrypi with same results.

btw, is there a way to start snes roms with snes9x from emulationstation and append my config file “retroarch.cfg” so that i can use my pad ?

I don’t have a Raspberry Pi so I’m probably not in a position to help you there.