Suggestions for ports #2
-
It may only be in this latest commit. I've been playing in
c85dbd3
for a while and haven't managed to make it crash (except for one hiccup when it wouldn't even load -- not sure what was going on there because it had worked and then it didn't. But, I deleted~/.configs/ecwolf/ecwolf.cfg
and then it worked again so *shrug*. I suppose it's probably to do with the different versions I was testing, one of them writing data to that file that another version couldn't handle when it encountered, or something like that. Or just a random fluke, I dunno. Can no longer reproduce it, but it happened more than once when it did happen. The error it had gave was something about audio.)The most reliable way I've found to test was speed-running the first level of N3D, if you have it, that would always crash it when I finished the level:
From the starting room, go out the door and take the right hallway. Follow it around the corner to the left and go through the door at the end.
In the next room with three doors, go in the middle door. Go down the hallway and through the door at the end of the room. Take the right hallway. Just before the end, take another right.
Go down this hallway and dash through the room at the end (there will be some goats bleating at you from behind some pillars -- just run past them), through the door into a small hallway that bends to the right. One more door, and you're at the staircase to level 2.
Approach the staircase to complete the level, and press some buttons to advance the stats page. In current master
e66f566
, it will always crash for me at this point; inc85dbd3
, it hasn't done so yet.https://github.com/Exarkuniv/RetroPie-Extra/pull/103
I've also been working to make this more compatible with an existing wolf4sdl installation.
I found a way to make it share the
emulators.cfg
, config dir, and launch scripts with the other port. Saves don't port over but they are in separate dirs so they don't conflict either.Taking a cue from the other alternate Wolf3D port splitwolf, we can also piggyback on the wolf4sdl package for the
game_data
andadd_games
functions.It is able to use the same "system" for config dir and
emulators.cfg
("wolf3d" instead of "ecwolf") and launch scripts (inroms/ports
) as wolf4sdl so that you can just choose a "default emulator" for the system, without having separate scripts and menu entries for the w4sdl and ecw versions of each game.It doesn't need the separate
*.ecwolf
files anymore. The wolf4sdl launch scripts use/path/to/vswap.ext
as their%ROM%
parameter -- this has all the info we need for ecwolf. I just made another script that takes this%ROM%
as input, takes from it the path and extension, and then moves to that location and passes the ext to ecw as the--data
param.The only catch, so far, is the wolf4sdl functions don't accommodate separate subfolders for the game datas. If your existing ecwolf game datas are in separate subfolders, you would have to move them all to the main
wolf3d
folder before you update.https://github.com/Exarkuniv/RetroPie-Extra/pull/104
If you did have wolf4sdl, and you followed the directions, then you've renamed some of your
.sod
files as.sd1
; this does not work in ecwolf, you will have to rename them back to.sod
for ecw. Then it won't work in w4sdl anymore; there is a pretty simple fix for this that I've submitted as a separate PR to RetroPie-Setup but it's on them to accept it or not. -
Update to
ecwolf.sh
Thanks to @sleve_mcdichael, he cleaned up the script a bit more and found when the the latest commit started the problem and got it so it now installs the last commit where there is no error -
@ExarKunIv Is there any possibility of including bsnes-hd?
-
@JimmyFromTheBay I will take a look but I don't see why not
-
-
@ExarKunIv Also, any chance of this?
https://www.hackster.io/marcia-wilbur/port-circus-linux-to-raspbian-feb-2019-ec550f
-
@JimmyFromTheBay it should be doable
-
Hi @ExarKunIv New changes in Xash3d:
- The location of the files libref_soft.so, libref_gl.so and libmenu.so has currently changed is as follows:
"$md_id/build/3rdparty/mainui/libmenu.so" "$md_id/build/ref/soft/libref_soft.so" "$md_id/build/ref/gl/libref_gl.so"
- Estrax is currently built from source as a submodule, you no longer need to download it, but copy it to the gamedata folder:
cp "$md_build/$md_id/build/3rdparty/extras/extras.pk3" "$romdir/ports/$md_id/valve/" cp "$md_build/$md_id/build/3rdparty/extras/extras.pk3" "$romdir/ports/$md_id/bshift/" cp "$md_build/$md_id/build/3rdparty/extras/extras.pk3" "$romdir/ports/$md_id/gearbox/"
My installation script looks like this:
#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="xash3d-fwgs" rp_module_desc="xash3d-fwgs - Half-Life Engine Port" rp_module_help="Please add your full version Half-Life data files (folders /valve, /bshift and /gearbox) to $romdir/ports/xash3d-fwgs/ to play." rp_module_section="exp" rp_module_flags="!mali !x86" function depends_xash3d-fwgs() { getDepends libsdl2-dev libfontconfig1-dev libfreetype6-dev } function sources_xash3d-fwgs() { gitPullOrClone "$md_build/$md_id" https://github.com/FWGS/xash3d-fwgs.git gitPullOrClone "$md_build/hlsdk" https://github.com/FWGS/hlsdk-portable.git gitPullOrClone "$md_build/bshiftsdk" https://github.com/FWGS/hlsdk-portable.git "bshift" gitPullOrClone "$md_build/opforsdk" https://github.com/FWGS/hlsdk-portable.git "opfor" } function build_xash3d-fwgs() { cd "$md_build/$md_id" ./waf configure -T release ./waf build cd "$md_build/hlsdk" ./waf configure -T release ./waf build cd "$md_build/bshiftsdk" ./waf configure -T release ./waf build cd "$md_build/opforsdk" ./waf configure -T release ./waf build md_ret_require=( "$md_build/$md_id/build/game_launch/xash3d" "$md_build/$md_id/build/engine/libxash.so" "$md_build/$md_id/build/3rdparty/mainui/libmenu.so" "$md_build/$md_id/build/ref/soft/libref_soft.so" "$md_build/$md_id/build/ref/gl/libref_gl.so" "$md_build/$md_id/build/filesystem/filesystem_stdio.so" ) } function install_xash3d-fwgs() { md_ret_files=( "$md_id/build/game_launch/xash3d" "$md_id/build/engine/libxash.so" "$md_id/build/3rdparty/mainui/libmenu.so" "$md_id/build/ref/soft/libref_soft.so" "$md_id/build/ref/gl/libref_gl.so" "$md_id/build/filesystem/filesystem_stdio.so" ) } function configure_xash3d-fwgs() { mkRomDir "ports/$md_id/valve" mkdir "$romdir/ports/$md_id/valve/cl_dlls" mkdir "$romdir/ports/$md_id/valve/dlls" mkdir -p "$romdir/ports/$md_id/bshift/cl_dlls" mkdir -p "$romdir/ports/$md_id/bshift/dlls" mkdir -p "$romdir/ports/$md_id/gearbox/cl_dlls" mkdir -p "$romdir/ports/$md_id/gearbox/dlls" moveConfigDir "$md_inst/valve" "$romdir/ports/$md_id/valve" moveConfigDir "$md_inst/bshift" "$romdir/ports/$md_id/bshift" moveConfigDir "$md_inst/gearbox" "$romdir/ports/$md_id/gearbox" cp "$md_build/hlsdk/build/cl_dll/client_armv8_32hf.so" "$romdir/ports/$md_id/valve/cl_dlls/client.so" cp "$md_build/hlsdk/build/dlls/hl_armv8_32hf.so" "$romdir/ports/$md_id/valve/dlls/hl.so" cp "$md_build/bshiftsdk/build/cl_dll/client_armv8_32hf.so" "$romdir/ports/$md_id/bshift/cl_dlls/client.so" cp "$md_build/bshiftsdk/build/dlls/bshift_armv8_32hf.so" "$romdir/ports/$md_id/bshift/dlls/hl.so" cp "$md_build/opforsdk/build/cl_dll/client_armv8_32hf.so" "$romdir/ports/$md_id/gearbox/cl_dlls/client.so" cp "$md_build/opforsdk/build/dlls/opfor_armv8_32hf.so" "$romdir/ports/$md_id/gearbox/dlls/hl.so" cp "$md_build/$md_id/build/3rdparty/extras/extras.pk3" "$romdir/ports/$md_id/valve/" cp "$md_build/$md_id/build/3rdparty/extras/extras.pk3" "$romdir/ports/$md_id/bshift/" cp "$md_build/$md_id/build/3rdparty/extras/extras.pk3" "$romdir/ports/$md_id/gearbox/" chown -R $user:$user "$romdir/ports/$md_id/" addPort "$md_id" "xash3d-fwgs" "Half-Life" "pushd $romdir/ports/$md_id/; LD_LIBRARY_PATH=$md_inst $md_inst/xash3d -game %ROM% -clientlib cl_dlls/client.so -dll dlls/hl.so; popd" "valve" addPort "$md_id" "xash3d-fwgs" "Half-Life - Blue Shift" "pushd $romdir/ports/$md_id/; LD_LIBRARY_PATH=$md_inst $md_inst/xash3d -game %ROM% -clientlib cl_dlls/client.so -dll dlls/hl.so; popd" "bshift" addPort "$md_id" "xash3d-fwgs" "Half-Life - Opposing Force" "pushd $romdir/ports/$md_id/; LD_LIBRARY_PATH=$md_inst $md_inst/xash3d -game %ROM% -clientlib cl_dlls/client.so -dll dlls/hl.so; popd" "gearbox" }
-
@Cesarpuig thank you for that, i will update on my end and test.
-
@ExarKunIv One more request: Arduous (Arduboy emulator). Tons of really fun games on there :)
https://www.libretro.com/index.php/libretroretroarch-new-cores/
-
@JimmyFromTheBay might be doable
-
-
Well its been awhile, but i have been working hard on getting new ports up and running
Here is the update of what i have added to RetroPie-Extras.
Also I have removed
mass-install-extras
as it is just silly to have more the 2 ways to do the same thingthere is a command line way to just install them all in one shot, Instructions are in the README
Libretrocores
- -
lr-bsnes-hd.sh
- "Super Nintendo Emulator - bsnes-HD port for libretro (BETA)" - Installs, Plays, Runs OK - -
lr-samecdi
- Philips CDI - same_cdi port for libretro - Installs Fine, Dont have games to test
Ports
- -
berusky.sh
- Advanced sokoban clone with nice graphics - Installs, Plays fine - -
boswars.sh
- Battle of Survival - is a futuristic real-time strategy game - Installs, Plays fine, needs mouse - -
dunelegacy.sh
- Dune 2 Building of a Dynasty port - Installs Play sgreat,/W game - -
extremetuxracer.sh
- Linux verion of Mario cart - Installs, Plays great - -
fruity.sh
- inspired by the Kaiko classic Gem'X - Installs, Plays great - -
hexen2gl.sh
- Hexen II - Hammer of Thyrion source port using OpenGL - Installs, Plays great w/demo - -
hheretic.sh
- Heretic GL port - Installs, Plays great w/demo - -
hhexen.sh
- Hexen GL portt - Installs, Plays great w/demo - -
samtfe
- Serious Sam Classic The First Encounter. - Installs, and plays great - -
samtse
- Serious Sam Classic The Second Encounter. - Installs, and plays great - -
septerra.sh
- Septerra Core: Legacy of the Creator port Installs Plays fine - -
shiromino.sh
- Tetris The Grand Master Clone Installs Plays fine - -
shockolate.sh
- Source port of System Shock Installs Plays fine - -
simutrans.sh
- freeware and open-source transportation simulator Installs Plays fine - -
vanillacc.sh
- Vanilla-Command and Conquer - Installs, Plays great - -
wesnoth.sh
- turn-based strategy game - Installs, Plays OK
like always let me know how things are working
-
@ExarKunIv That's awesome, thank you so much for all of your hard work. Can you please remind me how to update RetroPie-Extras?
Thanks.
-
@Retro-Arcade-Fan said in Suggestions for ports #2:
Can you please remind me how to update RetroPie-Extras?
cd ~/RetroPie-Extra git pull origin
If you need to update from ZeroJay's repo - first, discard the most recent commit:
git reset --hard HEAD^
Switch to ExarKuniv's new repo:
git remote set-url origin https://github.com/Exarkuniv/RetroPie-Extra
Then pull again from the updated origin:
git pull origin
-
@sleve_mcdichael as always thanks for your help
-
@sleve_mcdichael Thank you as always!
-
a late update
a big thank you for @Folly for getting this one going,- -
lr-arduous
- ArduBoy emulator - arduous port for libretro- Installs, Plays, Runs well
he also got going
- -
lr-samecdi
- Philips CDI - same_cdi port for libretro - Installs, Dont have games to test
for
lr-arduous
you might want to play around with the shaders to make it alittle bit better -
@sleve_mcdichael said in Suggestions for ports #2:
git pull origin
I must be doing something wrong. Or I'm not reading this correctly. I ran all 5 commands and still don't see those 2 emulators under experimental.
-
@Retro-Arcade-Fan said in Suggestions for ports #2:
still don't see those 2 emulators under experimental.
You then need to run
./install-extras.sh
and select which modules will be copied to your RP-Setup directory, then they should be available in the Setup script. -
@sleve_mcdichael @Folly @ExarKunIv That worked, thank you. I now see them. Arduous installed fine. But lr-samecdi gives me this error after over an hour:
-
@Retro-Arcade-Fan that's odd since it did install fine for me when I tested before I added it to me repo.
I'll look when in I'm front of my pi again
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.