RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Suggestions for ports

    Scheduled Pinned Locked Moved Ideas and Development
    portsports retropieideas
    483 Posts 35 Posters 243.7k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • shavecatS
      shavecat @tpo1990
      last edited by

      @tpo1990
      Sure i will love a guide , not sure if will make it right :)
      but i will try and sure will love to get it work and share it :))

      tpo1990T 1 Reply Last reply Reply Quote 1
      • tpo1990T
        tpo1990 @shavecat
        last edited by tpo1990

        @shavecat Great I will make sure to give an example of a game we easily can compile in the guide and also a more difficult one.

        Greetings from Denmark. :-)

        Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

        shavecatS 1 Reply Last reply Reply Quote 1
        • shavecatS
          shavecat @tpo1990
          last edited by

          @tpo1990
          make an example of captain claw ;)) <3

          tpo1990T 1 Reply Last reply Reply Quote 0
          • SuperFromNDS
            SuperFromND @TappedOut
            last edited by SuperFromND

            @TappedOut said in Suggestions for ports:

            Ikemen GO Plus
            Uses Golang to interpret M.U.G.E.N files and characters
            Repo: https://github.com/Windblade-GR01/Ikemen_GO

            I decided to try getting this to compile, and I'd like to document my findings.

            Checking the compilation instructions for Linux I noticed that it requires you to install no less than six dependencies. After installing them (which costed about 180MB of disk space by the way), I got up to the part where it asks you to run a shell script named get.sh before I ran into an error:

            Package gtk+-3.0 was not found in the pkg-config search path.
            

            A quick Google search lead me to find that I needed to install the apt-get package libgtk-3-dev... which costs an additional 141MB due to a ton of additional packages. Not a problem, I've got a 64GB SD card with plenty of space.

            So I installed that, and then proceeded with the IKEMEN compilation process from there: running get.sh and then build.sh. I did recieve an error when running build.sh, but it simply said that it wasn't able to copy a folder to the bin folder (which is where the compiled IKEMEN binary would be created). Checking the build.sh file, the copy folder command that failed was after the commands that actually compiled IKEMEN, so I simply ignored this error and tried to run the game, only to be greeted with yet another error:

            Gtk-WARNING **: cannot open display: 
            

            A telltale sign that an executable requires X. You can probably guess what this means: another dependency install, this time for the package xinit. I already messed with xinit before for running Flash and Java games on a Pi, so I wasn't too bothered by this, but that's still yet another dependency to install.

            Once it was done, I booted up xinit and ran this command to start IKEMEN:

            root@retropie:pi/home/pi/RetroPie-Setup/tmp/build/Ikemen_GO/build $ sudo ./Ikemen_GO_linux
            

            And after all of that effort, I was met with another error message, about the worst possible error you could possibly get if you aren't a programmer yourself:

            panic: runtime error: invalid memory address or nil pointer dereference
            [signal SIGSEGV: segmentation violation code=0x1 addr=0x14 pc=0x206894]
            

            A segmentation violation. Now, I'm not the first person to try to compile IKEMEN GO on a Pi, there's even an issue on the Github where someone got a SIGBUS error instead. It was upon reading this issue that I noticed an interesting reply from one of the repo maintainers:

            danielporto commented on Apr 23, 2019:
            Good. I have built one
            please download it here: https://github.com/danielporto/Ikemen_GO/releases/tag/19.04.2019>

            They had compiled a binary for the Pi! Granted, it was back in April of 2019, but it was still an IKEMEN GO binary for the Pi! I quickly downloaded the binary, and after waiting an agonizingly long time for WinSCP to copy the binary over to my Pi, I gave it a run. It gave me a new error, but this time it was something tangible:

            panic: open script/main.lua: no such file or directory
            

            Aha! It's looking for that script folder that it didn't copy from earlier. Thankfully, that folder was just sitting outside of the bin folder, so I copied it into the bin folder and ran the binary again. Another error:

            panic: script/main.lua:14: attempt to call a non-functional object
            

            Checking line 14 of script/main.lua, we can see this:

            --One-time load of the json routines
            json = (loadfile 'external/script/dkjson.lua')()
            

            Okay, so it's trying to check for the dkjson.lua file in the script folder (which we already copied to the bin directory), but it's expecting that script folder to be contained within an external folder (which it was in the repo). In other words, IKEMEN wants both external/script/*.lua and script/*.lua to exist in order to run.

            So alright, I'll just copy over all of external, folder and all, to bin. Wasteful, but if it's what the IKEMEN orders, it's what the IKEMEN gets. One copy later, I run the binary again:

            panic: script/main.lua:256: attempt to index a non-table object(nil)
            

            Checking line 256, we can see this (--motif is the 256th line):

            --motif
            main.motifDef = config.Motif
            if main.flags['-r'] ~= nil or main.flags['-rubric'] ~= nil then
            	local case = main.flags['-r']:lower() or main.flags['-rubric']:lower()
            	if case:match('^data[/\\]') and main.f_fileExists(main.flags['-r']) then
            		main.motifDef = main.flags['-r'] or main.flags['-rubric']
            	elseif case:match('%.def$') and main.f_fileExists('data/' .. main.flags['-r']) then
            		main.motifDef = 'data/' .. (main.flags['-r'] or main.flags['-rubric'])
            	elseif main.f_fileExists('data/' .. main.flags['-r'] .. '/system.def') then
            		main.motifDef = 'data/' .. (main.flags['-r'] or main.flags['-rubric']) .. '/system.def'
            	end
            end
            

            As you can probably infer by the way this post is written, I was pretty much completely exasperated by the time I got to this error, and seeing that wall of regex-heavy text was my breaking point. I'm sure that someone out there could go through the paces and debug every single little error that gets thrown their way, but this is where I throw in the towel for this particular port.

            As an aside: I should mention that IKEMEN GO is actually a rewrite of the original IKEMEN, which might be worth looking into. Unfortunately, I was completely unable to find any instructions on how to compile it, and the files in the repository don't really give any clues. It appears to require Visual Studio to compile IKEMEN, so that's an immediate "no" for that.

            There's also a possiblity that you might be able to run the game through Box86, but I haven't tried this yet.

            TL;DR: This probably could work, but I couldn't get it to, and it would probably be experimental at best due to the sheer number of dependencies it needs. Still, I would love to be able to play some form of MUGEN on the Pi someday.

            Addendum (9/24/2020)

            I attempted to compile Ikemen-GO on both a regular install of Raspbian and the 64-bit version released fairly recently, and ended up getting the same SIGSEGV error. I've opened up an issue on the Ikemen-GO Github about this error and all of my reproduction steps, so hopefully in due time I can figure out how to fix it and (hopefully) get the game running.

            I also found out that I was missing an additional package, libasound2-dev, which wasn't specified by Ikemen's build instructions but throws up an error if you try to compile without it.

            Addendum (9/28/2020)

            I was browsing around Github and found this fork of Ikemen GO that mentions it was "For Raspberry Pi 3". Despite the fact that the repository was quite old (last commit was on July of last year, and it was about 500 commits behind Ikemen GO's repo) and the fact that it specified needing another package (freeglut3-dev, thankfully this one isn't all that large), I still figured it would be worth a shot to try and compile for the Pi 4. This time, I was able to get an executable that actually started!

            Unfortunately, this build ended up having some rather severe graphical issues. The repo does state For Got b'X11: RandR gamma ramp support seems broken, so I'm assuming that this is something on Go's end and not IKEMEN's. Here's a few comparisons between the Pi running this IKEMEN GO fork and my main machine running IKEMEN GO's "canon" builds.

            ikemen-title-comparison.png
            The title screen has some mild graphical issues, mostly on the left side of the M and the right side of the N. You might also notice that the menu options are different between the two, which makes sense as this build is quite outdated compared to the current build of IKEMEN GO.

            ikemen-options-comparison.png
            The options menu lacks a darkbox, making it harder to read the options. (This is made even worse as a screenshot, it's slightly easier to read when the background is constantly moving.) The Audio. Gameplay, and Engine settings also don't exist in this build.

            ikemen-kfm-comparison.png
            ikemen-custom-comparison.png
            More graphical glitches! It appears that, at the least, the second color of a given palette gets broken to either black or transparent. (for those who aren't technically savvy about how MUGEN palettes work: the first color of a palette will be treated as transparent, and the rest should all be treated as opaque.)

            Despite what all of these graphical glitches might have you think, the rest of the game functions just fine. No audio issues, no characters glitching out (well, glitching out because of a broken IKEMEN engine anyways), and no crashes that I was able to get in my (rather meager) testing. It does run a little bit slow when there's a lot of stuff happening on screen, but depending on exactly what characters you have this might or might not be an issue.

            Next time I need to update this post, I'll just split it off into it's own thread.

            ADDENDUM: 10/6/2020

            A bit late on saying this, but I've split off my IKEMEN stuff into it's own thread.

            ▲▼▲▼▲▼▲▼▲▼
            IKEMEN Go
            SRB2Kart
            ▼▲▼▲▼▲▼▲▼▲

            Z 1 Reply Last reply Reply Quote 1
            • tpo1990T
              tpo1990 @shavecat
              last edited by

              @shavecat @retropieuser555

              I have now started building my guide in a new topic. Take note that it is not finished yet as it will require a great part of my limited spare time, however i do believe it will help you as it will help me with sharing the work of getting more source ports in to working games for the Raspberry Pi.

              https://retropie.org.uk/forum/topic/27939/guide-beginners-guide-to-compile-from-source

              Greetings from Denmark. :-)

              Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

              1 Reply Last reply Reply Quote 5
              • Z
                zerojay @SuperFromND
                last edited by

                @SuperFromND said in [Suggestions for ports]

                Unfortunately, this build ended up having some rather severe graphical issues. The repo does state For Got b'X11: RandR gamma ramp support seems broken...

                https://github.com/kitao/pyxel/issues/40

                Might have a fix here or some additional info.

                1 Reply Last reply Reply Quote 0
                • shavecatS
                  shavecat
                  last edited by

                  Any chance pi4 can run
                  Oni
                  https://en.wikipedia.org/wiki/Oni_(video_game)
                  Or
                  Enter the Matrix
                  https://en.wikipedia.org/wiki/Enter_the_Matrix
                  used too love this games :))

                  ExarKunIvE 1 Reply Last reply Reply Quote 0
                  • ExarKunIvE
                    ExarKunIv @shavecat
                    last edited by

                    @shavecat if someone makes a port for it so it can work with retropie, maybe on the pi4.

                    otherwise you would have to try it with the Win10 very for the Pi and even then its a maybe.

                    RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                    RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                    Maintainer of RetroPie-Extra .

                    shavecatS 1 Reply Last reply Reply Quote 0
                    • retropieuser555R
                      retropieuser555
                      last edited by

                      So I was messing around trying to compile Falltergeist, https://github.com/falltergeist/falltergeist

                      I installed the dependancies, cloned the github, built it, added my critter.dat and master.dat files and booted it...

                      And it loads surprisingly:- The intro video plays nicely, the menus are all quick, you come into the game and it's basically a debug mode they have setup.

                      I'm not sure, but based on the github it doesn't look like it's being worked on significantly which is a shame. But who knows maybe someone will take up the reigns on it someday and finish it... Or maybe not.

                      Also it's listed on their proper website as a fallout1 & 2 engine. But I could only get it to load the fallout2 .dat files.

                      Pi 5 4GB

                      Retroflag GPI with raspberry pi zero 2 w/ wifi

                      Retroachievements:- lovelessrapture

                      1 Reply Last reply Reply Quote 0
                      • shavecatS
                        shavecat @ExarKunIv
                        last edited by

                        @ExarKunIv shame

                        1 Reply Last reply Reply Quote 0
                        • retropieuser555R
                          retropieuser555
                          last edited by retropieuser555

                          So has anyone messed around with box86 and tried out games using that? I've got Shovel Knight installed and working but box86 doesn't seem to have gamepad support as far as I can tell. Just wondering if anyone has figured it out? I know I can use xboxdrv but considering if there's an option to load the program with I'm missing.

                          Edit:- nevermind, Shovel Knight has native support for xbox360 controllers so I just switched my 8bitdo receiver to Xbox mode. Have to say the game runs very well, no slowdowns and plays perfectly. Definitely would recommend people try it

                          Pi 5 4GB

                          Retroflag GPI with raspberry pi zero 2 w/ wifi

                          Retroachievements:- lovelessrapture

                          shavecatS SuperFromNDS 2 Replies Last reply Reply Quote 0
                          • shavecatS
                            shavecat @retropieuser555
                            last edited by

                            @retropieuser555
                            Hey
                            how do i install it too ?
                            plz

                            1 Reply Last reply Reply Quote 0
                            • SuperFromNDS
                              SuperFromND @retropieuser555
                              last edited by

                              @retropieuser555 Apparently the folks over at Pi Labs have been going to town with Box86 on the Pi, getting all kinds of stuff to run.

                              I have no clue exactly how to use Box86 (there doesnt seem to be much of anything in the way of documentation), but if this video is any indication it could open up TONS of new games for the Pi 4.

                              ▲▼▲▼▲▼▲▼▲▼
                              IKEMEN Go
                              SRB2Kart
                              ▼▲▼▲▼▲▼▲▼▲

                              retropieuser555R 1 Reply Last reply Reply Quote 0
                              • retropieuser555R
                                retropieuser555 @SuperFromND
                                last edited by

                                @SuperFromND Yeah they seem to have gotten tons of stuff working. So far I've only been able to get World of Goo & Shovel Knight working. Lots of other stuff I've tried are hitting or crashing etc. But I donno if there's specific to my setup perhaps.

                                Like one of their videos has Freedom Planet working, for me it takes around 2-3mins to load, gets the music playing and that's it.

                                @shavecat I'll write up something maybe but it's honestly all I did was follow the installation for box86 on github, reset my pi, put the linux x86 version of shovel knight into ports and run it. It didn't require anything else.

                                Pi 5 4GB

                                Retroflag GPI with raspberry pi zero 2 w/ wifi

                                Retroachievements:- lovelessrapture

                                shavecatS 1 Reply Last reply Reply Quote 1
                                • shavecatS
                                  shavecat @retropieuser555
                                  last edited by

                                  @retropieuser555
                                  will love a link to them :))

                                  retropieuser555R 1 Reply Last reply Reply Quote 0
                                  • retropieuser555R
                                    retropieuser555 @shavecat
                                    last edited by

                                    @shavecat well for box86 https://github.com/ptitSeb/box86/blob/master/COMPILE.md you just follow the pi instructions on terminal & then reboot. That bit is easy, so now anytime I'm running a x86 program instead of getting an error messaging saying it's an x86 program, the pi attempts to boot it.

                                    So for shovel knight, https://www.gog.com/game/shovel_knight buy or aquire the linux version however you want. Then when you try and run the files for it in terminal, it leads you into an installation page & puts the game where you specify in the directory. Then it left me with a start.sh file which I moved into ports and I'm just running from emulationstation and it leads me to the game.

                                    Pi 5 4GB

                                    Retroflag GPI with raspberry pi zero 2 w/ wifi

                                    Retroachievements:- lovelessrapture

                                    shavecatS 1 Reply Last reply Reply Quote 1
                                    • shavecatS
                                      shavecat @retropieuser555
                                      last edited by shavecat

                                      @retropieuser555
                                      Got the first part install it.
                                      now trying to run with with sh file .

                                      like here..
                                      https://www.reddit.com/r/PiBoy/comments/jjcyrx/howto_box86_with_onboard_controls_from_retropie/

                                      but im getting this

                                      Error: file not found (check rox86_PATH)
                                      

                                      any chance to see your sh file ?

                                      retropieuser555R 1 Reply Last reply Reply Quote 0
                                      • retropieuser555R
                                        retropieuser555 @shavecat
                                        last edited by

                                        @shavecat so my code is just:-

                                        #!/bin/bash
                                        
                                        cd /home/pi/RetroPie/roms/ports/Shovel/game/32
                                        box86 ShovelKnight
                                        
                                        

                                        Pi 5 4GB

                                        Retroflag GPI with raspberry pi zero 2 w/ wifi

                                        Retroachievements:- lovelessrapture

                                        shavecatS 1 Reply Last reply Reply Quote 1
                                        • shavecatS
                                          shavecat @retropieuser555
                                          last edited by

                                          @retropieuser555
                                          Thanks a lot
                                          got it working
                                          and postal 1 ! working too !
                                          but in a small screen on the side...

                                          retropieuser555R 1 Reply Last reply Reply Quote 0
                                          • retropieuser555R
                                            retropieuser555 @shavecat
                                            last edited by

                                            @shavecat Yeah BabaIsYou for me loads up if I boot from Pixel and the controller works too. But from emulationstation it gives me a quarter-ish of the window and the rest of the window cut off.

                                            Pi 5 4GB

                                            Retroflag GPI with raspberry pi zero 2 w/ wifi

                                            Retroachievements:- lovelessrapture

                                            shavecatS 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.