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

    New Hypseus and lr-Daphne to add on Retropie-Setup

    Scheduled Pinned Locked Moved Ideas and Development
    daphnelaserdischypseusdaphne confighypseus config
    501 Posts 33 Posters 235.8k 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.
    • roslofR
      roslof @DirtBagXon
      last edited by

      @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

      It might stop game loading completely, I haven't tried on RPi, but also may offer different rendering.....

      Right again. Appreciate the effort.

      ERROR;5434;0;video::init_display@244;"Could not initialize renderer: Couldn't find matching render driver"
      
      DirtBagXonD 1 Reply Last reply Reply Quote 0
      • DirtBagXonD
        DirtBagXon @roslof
        last edited by DirtBagXon

        @roslof said in New Hypseus and lr-Daphne to add on Retropie-Setup:

        @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

        It might stop game loading completely, I haven't tried on RPi, but also may offer different rendering.....

        Right again. Appreciate the effort.

        ERROR;5434;0;video::init_display@244;"Could not initialize renderer: Couldn't find matching render driver"
        

        If you are feeling experimental, search for SDL_WINDOW_FULLSCREEN_DESKTOP in src/video/video.cpp and change all instances (4) to SDL_WINDOW_FULLSCREEN.

        https://wiki.libsdl.org/SDL_WindowFlags

        https://stackoverflow.com/questions/50893271/whats-the-difference-between-sdl-window-fullscreen-and-sdl-window-fullscreen-de

        Then recompile copy over daphne.bin

        To revert your changes (thought I better add this):

        git checkout src/video/video.cpp
        

        recompile again..... etc....

        Another route: change to SDL_WINDOW_MAXIMIZED

        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

        roslofR 1 Reply Last reply Reply Quote 0
        • roslofR
          roslof @DirtBagXon
          last edited by

          @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

          Then recompile copy over daphne.bin

          I always feel experimental. :)
          No noticeable change using SDL_WINDOW_FULLSCREEN.
          ...and because I'm silly, tried SDL_WINDOW_OPENGL, too. Still no change. Thought that would have caused trouble, but nothing special happened.

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

            @roslof said in New Hypseus and lr-Daphne to add on Retropie-Setup:

            @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

            Then recompile copy over daphne.bin

            I always feel experimental. :)
            No noticeable change using SDL_WINDOW_FULLSCREEN.
            ...and because I'm silly, tried SDL_WINDOW_OPENGL, too. Still no change. Thought that would have caused trouble, but nothing special happened.

            SDL_WINDOW_MAXIMIZED ?

            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

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

              @dirtbagxon

              if (g_fullscreen) sdl_flags |= SDL_WINDOW_MAXIMIZED | SDL_WINDOW_BORDERLESS;
              

              This might work ?

              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

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

                @roslof

                I think this will do it:

                Revert the other changes:

                git checkout src/video/video.cpp
                

                Then search for SDL_HINT_RENDER_SCALE_QUALITY

                And change from linear to nearest

                There are two instances...

                 
                git blame points the finger:

                6de2b462 (vanfanel       2017-08-01 18:34:34 +0200  254)                     SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "linear");
                

                 
                If this does it for you, I could add another argument to allow you to switch this on a per game basis. Let me know.

                 

                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

                roslofR 1 Reply Last reply Reply Quote 0
                • roslofR
                  roslof @DirtBagXon
                  last edited by roslof

                  @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                  Then search for SDL_HINT_RENDER_SCALE_QUALITY
                  And change from linear to nearest
                  There are two instances...

                  That got rid of the nasty white outlines. Global impact. Happiness ensues. :)

                  If this does it for you, I could add another argument to allow you to switch this on a per game basis. Let me know.

                  I don't think there is any benefit to per-game settings here. Linear seems good for nothing. This has been the #1 global, visual problem for Singe-specific games on the pi, and this seems to solve it.

                  So it looks like there is still an issue with alpha blending (appears black around edges) but this is a HUGE improvement.

                  Time Gal Assets:
                  lives.png

                  directional_arrow.png

                  Time Traveler Font:

                  Solid:
                  timetraveler-2021.04.03-17.18.03.png

                  Blended
                  timetraveler-2021.04.03-17.24.24 BLENDED.png

                  roslofR DirtBagXonD 2 Replies Last reply Reply Quote 0
                  • roslofR
                    roslof @roslof
                    last edited by roslof

                    This post is deleted!
                    1 Reply Last reply Reply Quote 0
                    • DirtBagXonD
                      DirtBagXon @roslof
                      last edited by DirtBagXon

                      @roslof

                      Ok, so here is your next challenge, add the lines with the + at the beginning in src/game/singe/singeproxy.cpp

                      Near lines 996 and 1228

                      @@ -996,6 +996,7 @@ static int sep_say_font(lua_State *L)
                      dest.x = dest.x - ((g_se_overlay_width + (dest.x * 1.5))/28);
                       
                                       SDL_SetColorKey(textsurface, SDL_TRUE|SDL_RLEACCEL, 0);
                      +                SDL_SetSurfaceBlendMode(textsurface, SDL_BLENDMODE_NONE);
                                       SDL_BlitSurface(textsurface, NULL, g_se_surface, &dest);
                                       SDL_FreeSurface(textsurface);
                                      }
                      @@ -1228,6 +1229,7 @@ static int sep_sprite_draw(lua_State *L)
                                          if (dest.w == 137 && dest.h == 28) // SP
                                               SDL_SetColorKey(g_spriteList[sprite], SDL_FALSE|SDL_RLEACCEL, 0x000000ff);
                       
                      +                        SDL_SetSurfaceBlendMode(g_spriteList[sprite], SDL_BLENDMODE_NONE);
                                               SDL_BlitSurface(g_spriteList[sprite], NULL, g_se_surface, &dest);
                                           }
                             }
                      

                      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

                      roslofR 1 Reply Last reply Reply Quote 1
                      • roslofR
                        roslof @DirtBagXon
                        last edited by roslof

                        @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                        Ok, so here is your next challenge...

                        Ooh, you make this sound like a game!

                        ...add the lines with the + at the beginning in src/game/singe/singeproxy.cpp
                        Near lines 996 and 1228

                        Done. BOOM!

                        lives_fixed.png

                        directional_arrow_fixed.png

                        So, MUCH improved. You can tell by the directional arrow that it's still catching a little of the alpha blending (and turning it black) but again, HUGE improvement!

                        EDIT: Tried SDL_BLENDMODE_BLEND which I'm assuming was default, 'cause was effectively back to square 1. Tried SDL_BLENDMODE_ADD and SDL_BLENDMODE_MOD, which resulted in nothing rendering.

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

                          @roslof said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                          @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                          Ok, so here is your next challenge...

                          EDIT: Tried SDL_BLENDMODE_BLEND which I'm assuming was default, 'cause was effectively back to square 1. Tried SDL_BLENDMODE_ADD and SDL_BLENDMODE_MOD, which resulted in nothing rendering.

                          Yep, saw same result.

                          I agree this setting is better, but the optimal look is with this Singe blending off SDL_BLENDMODE_NONE and SDL_HINT_RENDER_SCALE_QUALITY linear back on.

                          Flicking through Daphne games (unaffected by the BLEND), nearest provided too stark a rendering to me on lair scoreboards etc..

                          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

                          roslofR 1 Reply Last reply Reply Quote 1
                          • roslofR
                            roslof @DirtBagXon
                            last edited by roslof

                            @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                            Flicking through Daphne games (unaffected by the BLEND), nearest provided too stark a rendering to me on lair scoreboards etc.

                            Setting SDL_BLENDMODE_NONE effectively turns off SHADED and BLENDED font quality options. Trade-offs, for certain. Blended works nicely for the font in Time Traveler, but that's because the background is mostly black. Otherwise, the black edges can be a bit distracting.

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

                              @roslof said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                              SDL_BLENDMODE_NONE

                              SDL_BLENDMODE_NONE also causes a big issue in johnnyrock overlay....

                              Thinking command line argument to switch off again... But getting late here, so will look at again tomorrow.

                              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

                              roslofR 1 Reply Last reply Reply Quote 0
                              • roslofR
                                roslof @DirtBagXon
                                last edited by roslof

                                @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                                Thinking command line argument to switch off again... But getting late here, so will look at again tomorrow.

                                Makes sense. Great and unexpected progress/changes today. This has been fun to play with, so thank you again. Have a good rest and a great Easter.

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

                                  @roslof

                                  release 2.2.10 - roslof fix
                                    * Disable long time default SDL_BLENDMODE_BLEND producing
                                      clunky Singe graphics.
                                    * -fullscreen_scale_nearest to override linear fullscreen
                                      scaling, again degrading Singe graphics on certain displays.
                                  

                                  Thanks for all the help.

                                  Happy Easter to all.

                                   

                                  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

                                  roslofR 1 Reply Last reply Reply Quote 2
                                  • roslofR
                                    roslof @DirtBagXon
                                    last edited by

                                    @dirtbagxon said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                                    Thanks for all the help.
                                    Happy Easter to all.

                                    Amazing work, man!
                                    Go to bed. Lol!
                                    And thanks again.

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

                                      Hey guys ,
                                      I just saw we can add puss in boots and titan ae ???
                                      is that right ?? ?
                                      so just add them and the will work ?

                                      also i saw that


                                      Maybe this all games that will work ?:):)

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

                                        @shavecat Wow, Daitarn 3? I had that toy as a kid.

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

                                          @shavecat said in New Hypseus and lr-Daphne to add on Retropie-Setup:

                                          Hey guys ,
                                          I just saw we can add puss in boots and titan ae ???
                                          is that right ?? ?

                                          Yes

                                          so just add them and the will work ?

                                          BUT they are not a straight drop-in, you need to do a bit of work :) Read back through this thread.

                                           

                                          • Obtain Singe 2 game - you will actually only need the .mp4 from this file. Unless you are porting yourself.

                                          • Then recode the .mp4 to .m2v and .ogg files needed by Hypseus - details on the repo below.
                                            You only need to do this once, but the faster the PC the better.

                                            https://ffmpeg.org/download.html#build-windows - works well

                                          • Then take the peripheral data from the directories on the new repo here: https://github.com/DirtBagXon/hypseus_singe_data

                                          • Finally add the .m2v and .ogg file to that new directory and the rest is as per usual singe game setup. (Do not include any other old data)

                                           
                                          Singe2 games (that we have tried thus far) are working, but new ones need porting over (which is fairly straight forward ).
                                          This is what the new repo holds data on. Link in my signature.

                                          These are Fan Made games, so you can alter many aspects of what they do.

                                          If we get enough interest in a specific game, and I can find it, I will look to port over.

                                          OR you guys can attempt it, the details of steps are on in the new rep README

                                          The only thing I would ask is you push the .singe and peripheral files back to the repo, for others to share. NO Video content!

                                           

                                          • As a last note, Singe 2 games with mouse support may be problematic, so best to avoid, but as I see it, most aren't... but happy tackle if enough interest.

                                          • As a last, last note - As I said these are Fan Made games so if you have video content, and the game doesn't exist, you can write the game yourself. Do some Googling and learn a little bit about LUA scripting. You can copy large chunks of an existing game .singe code and alter to your needs.

                                           

                                          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

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

                                             
                                            Hypseus Singe 2.2.10 - More games ported

                                            Excluding video encoding time, it takes under 5 minutes to port a game with practice.

                                             
                                            Games make an API call, I have implemented a pseudo API call for all new Singe 2 calls ported thus far (limited set used by developers currently).

                                            You may encounter a new one if you port a new game so I need to see the error in the logs.

                                            For those interested, I documented the API function lists here on last commit:

                                            https://github.com/DirtBagXon/hypseus-singe/blob/master/doc/singe.txt

                                             

                                            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

                                            jamrom2J 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.