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

    (REQUEST) Add Daphne Singe emulator?

    Scheduled Pinned Locked Moved Ideas and Development
    daphnesinge
    298 Posts 21 Posters 98.5k 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.
    • DirtBagXonD
      DirtBagXon @shavecat
      last edited by

      @shavecat

      Hey,

      You should be able to follow the documentation at: https://github.com/DirtBagXon/singe

      This should get you to at least a point where you can post the output of the log from running ./run.sh crimepatrol, so we can see what's going wrong.

      Hypseus Singe for RetroPie: https://github.com/DirtBagXon/hypseus-singe
      Hypseus Singe Games: https://github.com/DirtBagXon/hypseus_singe_data
      Hypseus Discord: https://discord.gg/dgCsCfmRfJ

      1 Reply Last reply Reply Quote 1
      • B
        bronze
        last edited by

        Hi guys, new to GitHub, setting up Retropie on raspberry pi 4 for light guns (new sinden light gun) and want to add the singe shooters. I have Daphne running already. But I'm at a loss as to how to compile this to get started. I have all the games, etc.
        Can someone get me started on how to set this up via command line? I should be able to sort the file placement from there.
        Thanks

        DirtBagXonD 1 Reply Last reply Reply Quote 0
        • DirtBagXonD
          DirtBagXon @bronze
          last edited by DirtBagXon

          @bronze

          First install the correct tools and libraries:

          sudo apt-get install git make build-essential libasound2-dev libcaca-dev libglew-dev libglib2.0-dev libogg-dev libpcre3-dev libpcre32-3 libpng-dev  libpng-tools libpulse-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libslang2-dev  libvorbis-dev libxi-dev pkg-config
          

          Checkout source code:

          cd ~
          git clone https://github.com/DirtBagXon/singe.git singe
          

          Enter directory and compile:

          cd singe
          cd src/vldp2
           ./configure --disable-accel-detect
           make -f Makefile.linux
           cd ../game/singe
           make -f Makefile.linux
           cd ../..
           make
           cd ..
           mkdir -p ~/.daphne/singe ~/.daphne/sound ~/.daphne/pics
           cp pics/singeme.bmp ~/.daphne/pics/
           cp pics/gamenowook.bmp ~/.daphne/pics/
           cp sound/grumble.wav ~/.daphne/sound/
          

          If issues, post the results....

          If looks good, run from ~/singe

          ./run.sh timegal
          

          Again post the results if there are issues.

          As stated above your games should be in the directory based on the user you are running the run.sh scripts as:

          ~/.daphne/singe/
          

          Also, for games Time Gal and Ninja Hayate, please refer to the comments here:

          https://github.com/DirtBagXon/singe/tree/master/bytecode

          For your light gun and other settings, create a singe specific config file as:

          ~/.daphne/singeinput.ini

          It can mirror many of the daphne config options.

          Hypseus Singe for RetroPie: https://github.com/DirtBagXon/hypseus-singe
          Hypseus Singe Games: https://github.com/DirtBagXon/hypseus_singe_data
          Hypseus Discord: https://discord.gg/dgCsCfmRfJ

          1 Reply Last reply Reply Quote 1
          • pjftP
            pjft
            last edited by

            @DirtBagXon Thanks for this - only now did I see that you had put this together. Awesome work.

            A remark: passing a path with capital letters as the home dir will fail when loading the game script:

            Setting alternate home dir:
            /home/pi/RetroPie/roms/daphne
            /home/pi/retropie/roms/daphne/singe/timegal/timegal.singe
            Script /home/pi/retropie/roms/daphne/singe/timegal/timegal.singe does not exist.
            

            Notice RetroPie being capitalized when passing it, but then lowercase.

            It moves past this if I just symlink from ~/.daphne, but thought I'd share.

            Thanks.

            @Darksavior still no Road Blaster, I take it? We're on the same quests throughout these years - Time Gal and Road Blaster :D

            DarksaviorD 1 Reply Last reply Reply Quote 1
            • DarksaviorD
              Darksavior @pjft
              last edited by Darksavior

              @pjft Nope, that's not on the singe engine. I want that game playable too. I'll have to settle for the ps1 version.

              pjftP 2 Replies Last reply Reply Quote 1
              • pjftP
                pjft @Darksavior
                last edited by

                @Darksavior There are two competent (and more enjoyable versions, though less quality graphics) out there, if you'd care to try them out: an SNES MSU-1 remake, and an Amiga remake as well. They also remade Time Gal on the Amiga.

                Question here: did you get the video to render full screen? What options did you use?

                1 Reply Last reply Reply Quote 0
                • pjftP
                  pjft @Darksavior
                  last edited by

                  @Darksavior Following the thread, when I run with XINIT (sudo xinit ./singe etc) I get a "could not open the VLDP2 dynamic library", which I imagine means that when running either as sudo or in xinit it's looking for libvldp2.so elsewhere somehow.

                  I might be completely off track here, but thought I'd close the night with my current status.

                  Also, if possible, can you share your dapinput.ini file? My results with my current one are inconsistent - it maps the analog sticks while on daphne I use the cursors, which I prefer.

                  Thanks.

                  DarksaviorD 1 Reply Last reply Reply Quote 0
                  • DarksaviorD
                    Darksavior @pjft
                    last edited by Darksavior

                    @pjft Not sure about your problems, I just followed the directions, and from some help with the dev to correct my own mistakes, it runs. I haven't integrated it into retropie yet. I'll have to take a look at the launching scripts and all to figure it out on my own.

                    My dainput? It's mapped to my snes pad without analog inputs. Not sure if it'll help you with analog. You can look at the retropie daphne wiki about manually setting it up yourself. Use jstest to figure it out.

                    pjftP 1 Reply Last reply Reply Quote 0
                    • pjftP
                      pjft @Darksavior
                      last edited by

                      @Darksavior sounds good. Mine works fine, but not fullscreen, hence the question. As you're on the pi 4 I was asking what options had you used or what command line to get it to work as such.

                      If I use the xinit approach mentioned earlier I get the game in full screen but also the error with vldp2 - which I'm sure I'll be able to dig into with some more time. If this is the way, @DirtBagXon do you have any thoughts on what path might it be looking for?

                      If I don't, it just runs on a corner of the screen, hence my question as to how you approached that to see what might be missing here.

                      As for the input file, I'll look into the docs then for a sample and more detailed instructions.

                      I'll test things out some more tomorrow and report back any findings as well, but any pointers or suggestions can send me looking in the right direction.

                      Thanks.

                      DarksaviorD DirtBagXonD 2 Replies Last reply Reply Quote 0
                      • DarksaviorD
                        Darksavior @pjft
                        last edited by Darksavior

                        @pjft I set my resolution by editing run.sh. Singe doesn't stretch to fit so it has to be the exact res your tv/monitor is.

                        1 Reply Last reply Reply Quote 1
                        • DirtBagXonD
                          DirtBagXon @pjft
                          last edited by DirtBagXon

                          @pjft said in (REQUEST) Add Daphne Singe emulator?:

                          @Darksavior Following the thread, when I run with XINIT (sudo xinit ./singe etc) I get a "could not open the VLDP2 dynamic library", which I imagine means that when running either as sudo or in xinit it's looking for libvldp2.so elsewhere somehow.

                          @DirtBagXon do you have any thoughts on what path might it be looking for?

                          The libvldp2.so library is in the same directory as the singe.bin binary and library: libsinge.so. Which by default would be /home/pi/singe if you followed the above directions.

                          If you are writing, or using, another script, you need to look at the LD_LIBRARY_PATH part of the script. You will need to ensure that the directory where the singe.bin, and therefore libvldp2.so, are at the beginning of this LIBRARY search path when singe starts. Something like:

                          export LD_LIBRARY_PATH=/home/pi/singe:$DAPHNE_SHARE:$LD_LIBRARY_PATH
                          

                          You can of course use/change VARIABLES as in the original scripts.

                          A good debug is to add an echo in the script just before the singe binary runs. This will tell you where singe is searching for libraries.

                          e.g.

                          echo $LD_LIBRARY_PATH
                          
                          ./$SINGE_BIN \
                          $DAPHNE_SHARE/singe/$1/$1.singe \
                          ..
                          ..
                          

                          Hope this helps....

                          Hypseus Singe for RetroPie: https://github.com/DirtBagXon/hypseus-singe
                          Hypseus Singe Games: https://github.com/DirtBagXon/hypseus_singe_data
                          Hypseus Discord: https://discord.gg/dgCsCfmRfJ

                          1 Reply Last reply Reply Quote 1
                          • pjftP
                            pjft
                            last edited by

                            Thanks - it does help.

                            I actually managed to get it running per @Darksavior 's tip on setting the full screen resolution on the run.sh file, and it works perfect.

                            I submitted a PR to your GitHub repository based on some changes to Daphne's controls a few years back that helped specific joysticks be better recognized. I don't take any offense if it isn't merged, but thought I'd contribute it upstream given that it's what helps the game's controls work as intended on my arcade with the DragonRise adapter.

                            As for Road Blaster, an interesting thing: the same code in a arm64 device runs the game correctly, but not on the Pi.

                            Specifically, when it works, there's a message:

                            Error! write to main rom at e600

                            But, when it fails (on the Pi), we get:

                            Error! write to main rom at a80f
                            Error! write to main rom at f8ec
                            

                            I'm going to dig into it and see if I can work something out.

                            DirtBagXonD 1 Reply Last reply Reply Quote 0
                            • DirtBagXonD
                              DirtBagXon @pjft
                              last edited by

                              @pjft said in (REQUEST) Add Daphne Singe emulator?:

                              I submitted a PR to your GitHub repository based on some changes to Daphne's controls a few years back that helped specific joysticks be better recognized. I don't take any offense if it isn't merged, but thought I'd contribute it upstream given that it's what helps the game's controls work as intended on my arcade with the DragonRise adapter.

                              Looks fine, but should be applied via a command line option, not by default.

                              I have added a comment on the pull request.

                              Many thanks for contributing.

                              Hypseus Singe for RetroPie: https://github.com/DirtBagXon/hypseus-singe
                              Hypseus Singe Games: https://github.com/DirtBagXon/hypseus_singe_data
                              Hypseus Discord: https://discord.gg/dgCsCfmRfJ

                              pjftP 1 Reply Last reply Reply Quote 0
                              • pjftP
                                pjft @DirtBagXon
                                last edited by

                                @DirtBagXon Got it. Let me try to go back and see what changes would need to be done on my end to get that sorted as an option. I left a comment there for you as well.

                                Thanks.

                                1 Reply Last reply Reply Quote 0
                                • B
                                  bronze
                                  last edited by

                                  @DirtBagXon thanks heaps for the quick reply, will tackle this later in the week!

                                  1 Reply Last reply Reply Quote 0
                                  • pjftP
                                    pjft
                                    last edited by pjft

                                    @Darksavior and I finally fixed Road Blaster on the Pi.

                                    https://github.com/RetroPie/daphne-emu/pull/17

                                    Feeling badass.

                                    EDIT: it's now been merged, so installing Daphne from source should work. It may even fix Bega's Battle or others, as I believe the code is shared, but no promises there.

                                    IMG_3433.jpg

                                    IMG_3434.jpg

                                    Feel free to test the code here until it's approved:

                                    https://github.com/pjft/daphne-emu/tree/patch-1

                                    DirtBagXonD G 2 Replies Last reply Reply Quote 3
                                    • DirtBagXonD
                                      DirtBagXon @pjft
                                      last edited by DirtBagXon

                                      @pjft

                                      https://github.com/DirtBagXon/daphne/commit/7d4bf3cdaff98a795ef2e51a823555e25f574ff9

                                      Hope you don't mind, I have pushed this into my Daphne and created a pull request back to DavidGriffith/daphne, to keep Daphne alive.

                                      Hypseus Singe for RetroPie: https://github.com/DirtBagXon/hypseus-singe
                                      Hypseus Singe Games: https://github.com/DirtBagXon/hypseus_singe_data
                                      Hypseus Discord: https://discord.gg/dgCsCfmRfJ

                                      pjftP 1 Reply Last reply Reply Quote 1
                                      • pjftP
                                        pjft @DirtBagXon
                                        last edited by

                                        @DirtBagXon Don't mind at all - thank you.

                                        Actually, a more accurate - or perhaps complementary fix - which I submitted to the repo as well is to compile things with -fsigned-char. You might want to send it over as well.

                                        https://github.com/RetroPie/daphne-emu/commit/40ce24dd136356d903eb6476ff9dfcef12e7d8bd

                                        Hope it helps - glad to help keep it alive.

                                        As for the PR in your repo, I fully understand where you're coming from - I didn't have time yet to revise the code (you can tell where I spent my time :D ) but I should get to it at some point. Don't take my silence as having disagreed with your comments. :)

                                        Thanks.

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          gomisensei @pjft
                                          last edited by

                                          @pjft said in (REQUEST) Add Daphne Singe emulator?:

                                          @Darksavior and I finally fixed Road Blaster on the Pi.

                                          https://github.com/RetroPie/daphne-emu/pull/17

                                          Feeling badass.

                                          EDIT: it's now been merged, so installing Daphne from source should work. It may even fix Bega's Battle or others, as I believe the code is shared, but no promises there.

                                          Can confirm bega's battle works due to this change...

                                          pjftP 1 Reply Last reply Reply Quote 1
                                          • pjftP
                                            pjft @gomisensei
                                            last edited by

                                            @gomisensei Awesome - great to hear.

                                            If anyone can check whether BadLands works with the new build from source (from right about now, as I submitted more changes to the build process), that'd be interesting. I don't have any recollection or suggestion that Badlands should work because of this change, though, but doesn't hurt.

                                            Thanks.

                                            G S 2 Replies Last reply Reply Quote 1
                                            • 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.