Ports not working - all other roms working
-
Hey,
Pi Model or other hardware: 3 B+
Power Supply used: Canakit output 5v and 2.5A
RetroPie Version Used (eg 3.6, 3.8.1, 4.1 - do not write latest): 4.8
Built From: retropie-buster-4.8-rpi2_3_zero2w.img
USB Devices connected: None
Controller used: PS4In addition to the information provided above my roms are stored on a NFS share and mounted on /home/pi/RetroPie/roms via fstab. Details below:
NFS server export options: no_root_squash,rw,sync NFS client options in fstab: rw,nolock pi@retropie:~ $ mount | grep roms nfs_server:/data/roms on /home/pi/RetroPie/roms type nfs4 (rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=x.x.x.x,local_lock=none,addr=x.x.x.x)
I am only having an issue with ports. NES, SNES, etc… work fine. I am using lr-prboom and eduke32. Nothing Doom will start including the bundled Doom 1 shareware and Freedooms. Nothing Duke3D will either. Interestingly enough NAM does start. I did the the automated install for Duke3D so they are the stock .sh files. The errors make no sense.
Duke3D:
pi@retropie:/opt/retropie/configs/ports/duke3d $ cat eduke32.log EDuke32 r(?) Built Feb 11 2022 02:35:40, GCC 8.3.0, 32-bit Application parameters: -j/home/pi/RetroPie/roms/ports/duke3d/ -j/home/pi/RetroPie/roms/ports/duke3d/ -addon 0 Using /opt/retropie/configs/ports/duke3d/ for game data Failed adding /home/pi/RetroPie/roms/ports/duke3d/ for game data: not a directory Failed adding /home/pi/RetroPie/roms/ports/duke3d/ for game data: not a directory Using /home/pi/.config/eduke32/ for game data Initializing SDL 2.0.10 Using "x11" video driver Searching for game data... Found no recognized game data! Warning: could not find main data file "duke3d.grp"! Required game data was not found. A valid copy of "duke3d.grp" or other compatible data is needed to run EDuke32. You must copy "duke3d.grp" to your game directory before continuing! pi@retropie:/opt/retropie/configs/ports/duke3d $ pi@retropie:/opt/retropie/configs/ports/duke3d $ cd /home/pi/RetroPie/roms/ports/duke3d/ pi@retropie:~/RetroPie/roms/ports/duke3d $ ll total 112732 drwxrwxr-x 6 pi pi 73 Jan 3 2021 addons -rw-rw-r-- 1 pi pi 44356548 Feb 27 2020 duke3d_atomic_v1_5.grp -rw-rw-r-- 1 pi pi 44356548 Apr 15 15:36 duke3d.grp -rw-rw-r-- 1 pi pi 26524524 Jan 3 2021 duke3d_v1_3d.grp -rw-rw-r-- 1 pi pi 188954 Apr 24 1996 duke.rts pi@retropie:~/RetroPie/roms/ports/duke3d $
Not a directory yet as you can see I can change dir and there’s the files. Just for good measure my Duke3D .sh file:
pi@retropie:~/RetroPie/roms/ports $ cat Duke\ Nukem\ 3D.sh #!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "duke3d" "-j/home/pi/RetroPie/roms/ports/duke3d/ -j/home/pi/RetroPie/roms/ports/duke3d/ -addon 0"
Doom:
pi@retropie:/dev/shm $ cat runcommand.log Parameters: Executing: /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-prboom/prboom_libretro.so --config /opt/retropie/configs/ports/doom/retroarch.cfg "/home/pi/RetroPie/roms/ports/doom/doom1.wad" --verbose --appendconfig /dev/shm/retroarch.cfg [INFO] [Config]: Loading config from: "/opt/retropie/configs/ports/doom/retroarch.cfg". [INFO] [Config]: Appending config "/dev/shm/retroarch.cfg". [WARN] [GameMode]: GameMode cannot be enabled on this system ("dlopen failed - libgamemode.so: cannot open shared object file: No such file or directory.") https://github.com/FeralInteractive/gamemode needs to be installed. [WARN] [Config]: GameMode unsupported - disabling... [INFO] RetroArch 1.10.0 (Git e9e85f3) [INFO] === Build ======================================= [INFO] Capabilities: NEON VFPv3 VFPv4 [INFO] Built: Jan 30 2022 [INFO] Version: 1.10.0 [INFO] Git: e9e85f3 [INFO] ================================================= [INFO] [Input]: Found input driver: "udev". [INFO] [Core]: Loading dynamic libretro core from: "/opt/retropie/libretrocores/lr-prboom/prboom_libretro.so" [INFO] [Overrides]: No core-specific overrides found at "/home/pi/.config/retroarch/config/PrBoom/PrBoom.cfg". [INFO] [Overrides]: No content-dir-specific overrides found at "/home/pi/.config/retroarch/config/PrBoom/doom.cfg". [INFO] [Overrides]: No game-specific overrides found at "/home/pi/.config/retroarch/config/PrBoom/doom1.cfg". [INFO] [Environ]: GET_CORE_OPTIONS_VERSION. [INFO] [Environ]: GET_LANGUAGE: "0". [INFO] [Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_V2_INTL. [INFO] [Environ]: SET_CONTROLLER_INFO. [INFO] [Environ]: GET_VFS_INTERFACE. Core requested version >= V1, providing V3. [INFO] [Remaps]: Remap directory: "/opt/retropie/configs/ports/doom/". [INFO] [Overrides]: Redirecting save file to "/home/pi/RetroPie/roms/ports/doom/doom1.srm". [INFO] [Overrides]: Redirecting save state to "/home/pi/RetroPie/roms/ports/doom/doom1.state". [INFO] [Environ]: GET_LOG_INTERFACE. [INFO] [Environ]: SET_PIXEL_FORMAT: RGB565. [INFO] [Environ]: PERFORMANCE_LEVEL: 4. [INFO] [Content]: Content loading skipped. Implementation will load it on its own. [INFO] [Environ]: GET_RUMBLE_INTERFACE. [libretro INFO] Rumble environment supported. [libretro ERROR] FindFileInDir: not found doom1 in /home/pi/RetroPie/roms/ports/doom [libretro ERROR] FindFileInDir: not found doom1 in /home/pi/RetroPie/roms/ports/doom [libretro ERROR] FindFileInDir: not found doom1 in /home/pi/RetroPie/roms/ports/doom [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi/RetroPie/roms/ports/doom [INFO] [Environ]: SYSTEM_DIRECTORY: "/home/pi/RetroPie/BIOS". [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi/RetroPie/BIOS/prboom [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi/RetroPie/BIOS [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi/RetroPie/roms/ports [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi/RetroPie/roms [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi/RetroPie [libretro ERROR] FindFileInDir: not found prboom.cfg in /home/pi [libretro ERROR] FindFileInDir: not found prboom.cfg in /home [INFO] [Environ]: GET_SAVE_DIRECTORY. [libretro INFO] M_LoadDefaults: Load system defaults. [libretro INFO] Default file: /home/pi/RetroPie/roms/ports/doom/prboom.cfg [libretro INFO] IdentifyVersion: basesavegame: /home/pi/RetroPie/roms/ports/doom [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi/RetroPie/roms/ports/doom [INFO] [Environ]: SYSTEM_DIRECTORY: "/home/pi/RetroPie/BIOS". [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi/RetroPie/BIOS/prboom [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi/RetroPie/BIOS [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi/RetroPie/roms/ports [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi/RetroPie/roms [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi/RetroPie [libretro ERROR] FindFileInDir: not found doom1.wad in /home/pi [libretro ERROR] FindFileInDir: not found doom1.wad in /home [libretro INFO] iwad: (null) [libretro ERROR] IdentifyVersion: IWAD not found [INFO] [Environ]: SET_MESSAGE: ROM loading failed... [ERROR] [Content]: Failed to load content [INFO] [Core]: Content ran for a total of: 00 hours, 00 minutes, 00 seconds. [INFO] [Core]: Unloading core.. [libretro INFO] D_DoomDeinit: [INFO] [Core]: Unloading core symbols.. [INFO] [Core]: Saved core options file to "/opt/retropie/configs/all/retroarch-core-options.cfg". pi@retropie:/dev/shm $ pi@retropie:/dev/shm $ cd /home/pi/RetroPie/roms/ports/doom pi@retropie:~/RetroPie/roms/ports/doom $ ll total 91076 drwxrwxr-x 2 pi pi 10 Apr 15 16:58 addon -rw-rw-r-- 1 pi pi 1644 Oct 22 2019 copying.txt -rw-rw-r-- 1 pi pi 12317 Oct 22 2019 credits.txt -rw-rw-r-- 1 pi pi 4196020 Apr 15 16:58 doom1.wad drwxrwxr-x 3 pi pi 70 Apr 15 16:48 doom2 drwxrwxr-x 3 pi pi 95 Apr 15 18:02 doomu -rw-rw-r-- 1 pi pi 27284988 Oct 22 2019 freedoom1.wad -rw-rw-r-- 1 pi pi 28544132 Oct 22 2019 freedoom2.wad -rw-rw-r-- 1 pi pi 1749523 Oct 22 2019 freedoom-manual.pdf -rw-rw-r-- 1 pi pi 11096488 Feb 28 2020 HERETIC.WAD -rw-rw-r-- 1 pi pi 20128392 Feb 28 2020 HEXEN.WAD -rw-rw-r-- 1 pi pi 30481 Oct 22 2019 news.html drwxrwxr-x 3 pi pi 76 Apr 15 16:48 plutonia -rw-rw-r-- 1 pi pi 10977 Apr 16 11:33 prboom.cfg -rw-rw-r-- 1 pi pi 143312 Apr 15 16:58 prboom.wad -rw-rw-r-- 1 pi pi 33212 Oct 22 2019 readme.html drwxrwxr-x 3 pi pi 66 Apr 15 16:49 tnt pi@retropie:~/RetroPie/roms/ports/doom $
My Doom .sh file:
pi@retropie:~/RetroPie/roms/ports $ cat Doom.sh #!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "doom" "/home/pi/RetroPie/roms/ports/doom/doom1.wad"
Once again file not found, but they are there. Ideas?
-
FWIW I just added "-g/home/pi/RetroPie/roms/ports/duke3d/duke3d.grp" to my Duke3D .sh file and the game started. Like I said I used the automated install for eduke32 (place the files in the appropriate dirs, install eduke32, and it creates the .sh files). This is smelling like a bug.
-
@klein1jo said in Ports not working - all other roms working:
FWIW I just added "-g/home/pi/RetroPie/roms/ports/duke3d/duke3d.grp" to my Duke3D .sh file and the game started. Like I said I used the automated install for eduke32 (place the files in the appropriate dirs, install eduke32, and it creates the .sh files). This is smelling like a bug.
The automated install didn't work for me either, but since I wasn't using the Steam versions of the game data (mine came off old install media), I just assumed that was the reason. Are your game datas actually Steam, or do you also have something else?
-
Original install media from the 90s. The errors are WTF though. Can't find the media, but it's clearly there. Both Doom and Duke3D so I'd say bug. I'm gonna fix my Duke3D .sh files manually. Haven't figured out what to do with Doom yet.
-
@klein1jo said in Ports not working - all other roms working:
Original install media from the 90s. [...] I'm gonna fix my Duke3D .sh files manually.
I'm pretty sure the
-addon {n}
option doesn't work for that, but only with the Steam version data. Here's what I got working manually for duke3d using the original install media data (Atomic Edition and the individual expansion CD-ROMs); no two of them used quite the same set of launch params:roms/ports
:duke3d.sh duke-dc.sh duke-nw.sh duke-vacation.sh duke3d/ ------| duke3d.grp ------| duke.rts duke3d/dc/ ---------| defs.con ---------| dukedc.grp ---------| game.con ---------| user.con duke3d/nw/ ---------| nwdefs.con ---------| nwinter.con ---------| nwinter.grp ---------| nwuser.con duke3d/vacation/ ---------------| defs.con ---------------| game.con ---------------| user.con ---------------| vacation.grp
duke3d.sh
:#! /bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "duke3d" "-j /home/pi/RetroPie/roms/ports/duke3d/"
duke-dc.sh
:#! /bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "duke3d" "-j /home/pi/RetroPie/roms/ports/duke3d -g dc/dukedc.grp"
duke-nw.sh
:#! /bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "duke3d" "-j /home/pi/RetroPie/roms/ports/duke3d -g nw/nwinter.grp -x nw/nwinter.con"
duke-vacation.sh
:#! /bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "duke3d" "-j /home/pi/RetroPie/roms/ports/duke3d -g vacation/vacation.grp -x vacation/game.con -j /home/pi/RetroPie/roms/ports/duke3d/vacation"
-
--addon does work for the original files, or at least did. I had these working in 4.7.x using the auto-install. I don't know at what point they broke because I haven't played them in ages. I did a clean install of 4.8 and found this testing stuff.
I did mirror what you did so I can say I tried. Doesn't work either. I have to specify the whole path for -g. Works when I do that. -j to specify the search path and then using the relative path for -g doesn't work. Always complains not a dir or can't find. Same thing with Doom. Can't find the dir. As you can see from my first post it's there. I can navigate there.
-
@klein1jo I can't say, then. I am on a Pi 4 though, I suppose that might be the difference.
-
Reviving this topic as issue is still outstanding. Ports won't run from a network volume. All other roms will. I plugged a USB drive into my RPi, copied the ports to it so it was a local block device, and mounted it on /home/pi/RetroPie/roms/ports. Ports work doing that. So specifically ports won't run from a network volume. Tried both NFS and CIFS. You can see the errors above. I have no clue at all here.
-
No ideas?
-
@klein1jo The error message '... for game data...' from eduke stems from the emulator [1].
The version RetroPie is using version
dfc16b08
(Sept 2019) for reasons for the eduke emulator. See/home/pi/RetroPie-Setup/scriptmodules/ports/eduke32.sh
:rp_module_repo="git https://voidpoint.io/terminx/eduke32.git master dfc16b08"
You may try to remove that revision thus the line reads:
rp_module_repo="git https://voidpoint.io/terminx/eduke32.git master"
Then reinstall the package.
If it compiles and finds the game files then the issue is likely in the RetroPie playfield.
If you still get the same error message (or the emulator still does not pull in your gamefiles) then reach out to the eduke maintainer for the issue. (You can also reach out to the eduke maintainer rightaway but he most likely will ask you to test with the latest from main branch anyway.)[1] https://voidpoint.io/terminx/eduke32/-/blob/master/source/sw/src/game.cpp#L3492
Update:
I am not able to reproduce this neither with current HEAD nor withdfc16b08
of eduke emulator.I am using these NFS settings (server is kernel 5.15 and NFS4; OpenWRT 23.05.2):
/mnt/<some_dir> <IP-of-Pi>(rw,sync,no_subtree_check)
On Pi side:
<NFS-Srv-IP>:/mnt/<some_dir> /home/pi/_roms_nfs nfs _netdev,soft,rsize=16384,wsize=16384,timeo=14,intr,noauto
Tested with:
/opt/retropie/ports/eduke32/eduke32 -j /home/pi/_roms_nfs/duke3d/
You may want to try with these settings.
One more thing: If you want to remove NFS from the mix maybe try sshfs? It is less fuss to setup. For my purposes sshfs serves well.
-
@Lolonois Those are all excellent suggestions. Lots to try. Thank you. I like the idea of sshfs. I don’t use NFS for anything else so that’s one less service to run server side. That’s interesting about eduke. I just assumed install from source would be the latest. Guess not. Do you know does prboom also not install the latest from source?
Alas shortly before your response I said enough and tossed Recalbox on my Pi. It’s playing Doom just fine from NFS which RetroPie was not. Another thing that points to it being a RetroPie problem. Next time I’m bored, which is pretty much always, I’ll toss RetroPie back on the Pi and try your suggestions. I had updated my RetroPie via retropie_setup. Did you do that? I always wondered if I reflashed and didn’t update if the ports would work fine. I’ll be sure to test that first thing before updating when i do flash.
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.