RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Turrican (hurricane clone) black screen

    Scheduled Pinned Locked Moved Help and Support
    emustationhelpandsupporthurricane
    64 Posts 8 Posters 6.6k 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.
    • J
      JenGun @DavidDraper
      last edited by JenGun

      @daviddraper Yes, patching Makefiles is ugly and error prone ... of course it works here ... ;-) To rule out the usual copy and paste problems:

      $ sha1sum hurrican.sh
      

      should show

      2a27b0383b1b9be7251a6d189309d5036c14521b  hurrican.sh
      

      Some compiler macros like -DUSE_GLES2 -DUSE_EGL_SDL -DUSE_GL2 -DUSE_FBO (which causes to error above) should not be there, but -DUSE_GLFULL is missing ... seems that the target is still linux_GL2 and not rpi in the Makefile ... did you "Update (from source)" in RetroPie setup?

      DavidDraperD 2 Replies Last reply Reply Quote 1
      • DavidDraperD
        DavidDraper @JenGun
        last edited by

        @jengun ok- wierd. I ran

        sha1sum hurrican.sh
        

        and got

        97fd14f14448a1035db77d3ee5e1d4701726dd63  hurrican.sh
        

        So! Not the same file. I tried renaming the current file to hurricanold.sh and creating a new file, named it hurrican.sh, and copied and pasted the contents from your post (which I thought I had done yesterday) and when I ran the same command on the new file, I got:

        7b7c52eadc1f1dbd54af707328d3f68402be3145  hurrican.sh
        

        still not the same as your file. I am using WinSCP to SSH into the raspberry pi; yesterday I used Atom to edit the file and today I used SSH's built-in text editor. Does the editor make a difference? I could try nano if it does.

        Thanks.

        David

        J 1 Reply Last reply Reply Quote 0
        • J
          JenGun @DavidDraper
          last edited by JenGun

          Next try: the new TARGET sdl2 makes it possible to run Hurrican in full resolution on the Raspberry Pi 4 with "Buster" (KMS/DRM on console and LXDE desktop)

          Index: src/Makefile
          ===================================================================
          --- src/Makefile	(revision 286)
          +++ src/Makefile	(working copy)
          @@ -264,6 +264,25 @@
           
           endif
           
          +ifeq ($(TARGET),sdl2)
          +
          +EXE := ../hurrican
          +CXX := g++
          +CC  := gcc
          +LD  := g++
          +RM  := rm -f
          +
          +USE_EGL := no
          +USE_GL2 := yes
          +USE_FBO := yes
          +
          +DEFINES += -DLINUX -DUSE_HOME_DIR -DUSE_GLFULL
          +
          +INCLUDES_OS := -I/usr/include -I/usr/include/SDL2 -I/usr/include/GL -I/usr/include/libmodplug
          +LDFLAGS := -g -lSDL2 -lSDL2_mixer -lSDL2_image -lmodplug -lGL
          +
          +endif
          +
           INCLUDES := -I. -I./SDLPort -I./cml $(INCLUDES_OS)
           
           COMMON_CXXFLAGS := -Wall -fsingle-precision-constant -fno-rtti
          @@ -316,7 +335,7 @@
           ##     to avoid numerous spurious warnings compiling against CML libary:
           ##     This will convert a version number like 4.8.1 to 4*100+8 and a version
           ##     number like 4.10.2 to 4*100+10, allowing direct comparison through bc.
          -GCC_VER_GTE48 := $(shell echo `$(CXX) -dumpversion | cut -f1-2 -d.` \>= 4.8 | sed -e 's/\./*100+/g' | bc )
          +GCC_VER_GTE48 := $(shell echo `${CXX} -dumpversion | cut -f1-2 -d.` \>= 4.8 | sed -e 's/\./*100+/g' | bc )
           ifeq ($(GCC_VER_GTE48),1)
           COMMON_CXXFLAGS += -Wno-unused-local-typedefs
           endif
          Index: src/SDLPort/cfbo.cpp
          ===================================================================
          --- src/SDLPort/cfbo.cpp	(revision 286)
          +++ src/SDLPort/cfbo.cpp	(working copy)
          @@ -77,7 +77,11 @@
                   case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT:
                       Protokoll.WriteText( false, "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: Not all framebuffer attachment points are framebuffer attachment complete.\n" );
                       break;
          +#ifdef PLATFORM_SDL
          +        case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT:
          +#else
                   case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS:
          +#endif
                       Protokoll.WriteText( false, "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS: Not all attached images have the same width and height.\n" );
                       break;
                   case GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:
          
          $ svn checkout svn://svn.code.sf.net/p/hurrican/code/trunk
          $ cd trunk/Hurrican/src
          $ svn patch /path/to/the/above/patch
          $ make TARGET=sdl2
          

          should create a working binary ...

          DavidDraperD 1 Reply Last reply Reply Quote 1
          • DavidDraperD
            DavidDraper @JenGun
            last edited by DavidDraper

            @jengun thanks for your patience and help. I need a little more expanation right now though. Is this is a little beyond me. Is the new file something be added to hurrican.sh? A new file? What should it be called and where should it be saved?

            Also, if i don't have the same hash for the hurrican.sh doesnt that mean something in the hurrican.sh file is off?

            Gratz in advance.

            Dave

            J 1 Reply Last reply Reply Quote 0
            • DavidDraperD
              DavidDraper @JenGun
              last edited by

              @jengun to answer your question about updating from source, the only option for hurrican when installing from reptropie setup is to install from source; I added retropie-extra to my install pie and it the way it is written there is no option to install from a pre-compiled binary, at least on my system. I think I did run an update script for RetroPie-Extra recently (two or three weeks ago?) As part of some generally updating i did on the RetroPie jnstall, b.ut I'm not sure it made a difference. I don't think RetroPie-Extra been updated at github in a while. I don't recall if I updated RetroPie-Extra from source or a pre-compiled binary.

              D

              1 Reply Last reply Reply Quote 0
              • J
                JenGun @DavidDraper
                last edited by

                @daviddraper:

                Is the new file something be added to hurrican.sh? A new file?

                Yes, the first part is a subversion patch file, there is no connection to hurrican.sh at this moment: this is just a test of whether the binary works at all ...

                What should it be called and where should it be saved?

                Save it in the home directory (/home/pi) on the Raspberry Pi under a name of your choice, e.g. hurrican-sdl2.patch, so the above commands to execute should like this:

                $ svn checkout svn://svn.code.sf.net/p/hurrican/code/trunk
                $ cd trunk/Hurrican/src
                $ svn patch /home/pi/hurrican-sdl2.patch
                $ make TARGET=sdl2
                $ cd ..
                $ ./hurrican
                

                The binary should start in fullscreen mode, integration with hurrican.sh will follow, but needs some time ...

                DavidDraperD 1 Reply Last reply Reply Quote 1
                • DavidDraperD
                  DavidDraper @JenGun
                  last edited by

                  Hey @jengun

                  For this newb, this is pretty cool stiff!

                  I created the file in Atom, named it hurrican.sh and put it in /home/pi via SSH.

                  I entered

                  svn checkout svn://svn.code.sf.net/p/hurrican/code/trunk

                  and a series of output lines, ending with:

                  .... (lots of lines like the ones below)
                  A    trunk/Editor/src/DX8Font.cpp
                  A    trunk/Editor/src/resource.h
                  A    trunk/Editor/src/Logdatei.h
                  A    trunk/Editor/Editor.dsp
                  A    trunk/Editor/Editor.suo
                  A    trunk/Editor/MainMenu.aps
                  A    trunk/Editor/MainMenu.rc
                  A    trunk/Editor/Editor v1.plg
                  Checked out revision 286.
                  

                  I entered the rest and here is what I got:

                  pi@RetroPi:~ $ cd trunk/Hurrican/src
                  pi@RetroPi:~/trunk/Hurrican/src $ svn patch /home/pi/hurrican-sdl2.patch
                  C         src/Makefile
                  >         rejected hunk @@ -264,6 +264,25 @@
                  >         rejected hunk @@ -316,7 +335,7 @@
                  C         src/SDLPort/cfbo.cpp
                  >         rejected hunk @@ -77,7 +77,11 @@
                  Summary of conflicts:
                    Text conflicts: 2
                  pi@RetroPi:~/trunk/Hurrican/src $ make TARGET=sdl2
                  rm -f *.o SDLPort/*.o unrarlib040/unrarlib/*.o
                  pi@RetroPi:~/trunk/Hurrican/src $ cd ..
                  pi@RetroPi:~/trunk/Hurrican $ ./hurrican
                  -bash: ./hurrican: No such file or directory
                  pi@RetroPi:~/trunk/Hurrican $ ./Hurrican
                  -bash: ./Hurrican: No such file or directory
                  

                  Dave

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    JenGun @DavidDraper
                    last edited by

                    @daviddraper

                    I created the file in Atom, named it hurrican.sh and put it in /home/pi via SSH.

                    OK, enough with Atom's copy and paste weirdness: please SSH to your Raspberry and execute this command to get the file:

                    curl -LJO "https://gitlab.com/jengun/Hurrican/-/raw/master/hurrican-sdl2.patch"
                    
                    DavidDraperD 3 Replies Last reply Reply Quote 1
                    • DavidDraperD
                      DavidDraper @JenGun
                      last edited by

                      @jengun ok...

                      pi@RetroPi:~ $ curl -LJO "https://gitlab.com/jengun/Hurrican/-/raw/master/hurrican-sdl2.patch"
                        % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                                       Dload  Upload   Total   Spent    Left  Speed
                        0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0Warning: Failed to create the file hurrican-sdl2.patch: Permission denied
                        0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
                      curl: (23) Failed writing header
                      pi@RetroPi:~ $ sudo curl -LJO "https://gitlab.com/jengun/Hurrican/-/raw/master/hurrican-sdl2.patch"
                        % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                                       Dload  Upload   Total   Spent    Left  Speed
                      100  1445    0  1445    0     0  13256      0 --:--:-- --:--:-- --:--:-- 13256
                      pi@RetroPi:~ $
                      

                      Dave

                      1 Reply Last reply Reply Quote 0
                      • DavidDraperD
                        DavidDraper @JenGun
                        last edited by

                        @jengun FWIW,

                        I deleted the /home/pi/trunk directory, recreated the hurrican-sdl2.patch file in notepad and ran the commands again and got the following results:

                        pi@RetroPi:~ $ svn checkout svn://svn.code.sf.net/p/hurrican/code/trunk
                        A    trunk/Hurrican
                        A    trunk/Hurrican/data
                        A    trunk/Hurrican/data/shaders
                        

                        ...
                        (lots of files)
                        ...

                        A    trunk/Editor/MainMenu.rc
                        A    trunk/Editor/Editor v1.plg
                        Checked out revision 286.
                        pi@RetroPi:~ $ cd trunk/Hurrican/src
                        pi@RetroPi:~/trunk/Hurrican/src $ svn patch /home/pi/hurrican-sdl2.patch
                        C         src/Makefile
                        >         rejected hunk @@ -264,6 +264,25 @@
                        >         rejected hunk @@ -316,7 +335,7 @@
                        C         src/SDLPort/cfbo.cpp
                        >         rejected hunk @@ -77,7 +77,11 @@
                        Summary of conflicts:
                          Text conflicts: 2
                        pi@RetroPi:~/trunk/Hurrican/src $ make TARGET=sdl2
                        rm -f *.o SDLPort/*.o unrarlib040/unrarlib/*.o
                        pi@RetroPi:~/trunk/Hurrican/src $ cd ..
                        pi@RetroPi:~/trunk/Hurrican $ ./hurrican
                        -bash: ./hurrican: No such file or directory
                        pi@RetroPi:~/trunk/Hurrican $
                        

                        Do you think its something related to my system? I'm running RetroPie commit number ac8d87759f4cad763affbba624be4fb206790ceb, "bump to version 4.7.2.," Running on Raspbian GNU/Linux 10 (buster).

                        Dave

                        David

                        1 Reply Last reply Reply Quote 0
                        • DavidDraperD
                          DavidDraper @JenGun
                          last edited by

                          @jengun

                          AWWWW MAN SOOOO COOL!!!
                          ::ahem::

                          I ran the script from https://gitlab.com/jengun/Hurrican/-/raw/master/hurrican-sdl2.patch and the rest of the commands

                          $ svn checkout svn://svn.code.sf.net/p/hurrican/code/trunk
                          $ cd trunk/Hurrican/src
                          $ svn patch /home/pi/hurrican-sdl2.patch
                          $ make TARGET=sdl2
                          $ cd ..
                          $ ./hurrican
                          

                          and the game ran from the command line! You did it!!!!!!! very awesome. And it even works with my controller I had plugged in to the system without any problems.

                          I hate to ask after everything you've done... but is there a way to create a link to the game from the Emulation Station details page?

                          Thanks!

                          Dave

                          J 1 Reply Last reply Reply Quote 0
                          • J
                            JenGun @DavidDraper
                            last edited by JenGun

                            @DavidDraper

                            and the game ran from the command line!

                            Glad that it works now! :-)

                            ... but is there a way to create a link to the game from the Emulation Station details page?

                            Just copy the working binary:

                            sudo cp -i /home/pi/trunk/Hurrican/hurrican /opt/retropie/ports/hurrican
                            

                            ... provided that there is an old copy of Hurrican with data files in /opt/retropie/ports/hurrican ...

                            I'm doing a cleaned up hurrican.sh that will things more convenient ...

                            DavidDraperD 2 Replies Last reply Reply Quote 1
                            • DavidDraperD
                              DavidDraper @JenGun
                              last edited by

                              @jengun ok- I will need to try this when I get home. I think I removed the Hurrican files I installed from RetroPie-Extra. Should I reinstall it and then run the copy command?

                              Thx,

                              David

                              1 Reply Last reply Reply Quote 0
                              • DavidDraperD
                                DavidDraper @JenGun
                                last edited by

                                @jengun Worked like a charm. You are a person of high class and a scholar. Thanks.

                                David

                                J 1 Reply Last reply Reply Quote 1
                                • J
                                  JenGun @DavidDraper
                                  last edited by

                                  @daviddraper You're welcome and thanks for your kind words! :-) You might have noticed some random pixels on the right window edge: this is also fixed (at least they'll be cut off) in my GitLab repository: https://gitlab.com/jengun/Hurrican ...

                                  DavidDraperD 1 Reply Last reply Reply Quote 1
                                  • DavidDraperD
                                    DavidDraper @JenGun
                                    last edited by

                                    @jengun Very cool. How do I update hurrican with your update? do I download it and copy it into the directory in /ports?

                                    Dave

                                    J 1 Reply Last reply Reply Quote 0
                                    • J
                                      JenGun @DavidDraper
                                      last edited by JenGun

                                      @daviddraper Just clone the repository only once:

                                      git clone https://gitlab.com/jengun/hurrican
                                      

                                      and execute make in the hurrican/src directory to build the binary. To update use

                                      git pull
                                      

                                      in the hurrican directory ... I'll try to fix at least a few small bugs, but I'm not an expert on C++ and OpenGL: so there won't be any major changes. Please use GitLab to report issues, not this forum ...

                                      R 1 Reply Last reply Reply Quote 1
                                      • R
                                        RussellB @JenGun
                                        last edited by

                                        @jengun said in Turrican (hurricane clone) black screen:

                                        https://gitlab.com/jengun/hurrican

                                        Hi,

                                        I'm trying to get this version running on the RPi4 since it looks like it no longer needs X server to run.

                                        The gitlab project is no longer available. Does anyone know the new location?

                                        I compiled a version of Hurrican that runs under X (XINIT in emulators.cfg) and it works, but I can't find the code that I compiled and now when I try to pull code from other sites it fails linking.

                                        I installed Hurrican from RetroPie-Extras and it fails to display a screen on the RPi4.

                                        RussellB

                                        J 1 Reply Last reply Reply Quote 0
                                        • J
                                          JenGun @RussellB
                                          last edited by

                                          @russellb said in [Turrican (hurricane clone) black screen]

                                          The gitlab project is no longer available. Does anyone now the new location?

                                          https://github.com/drfiemost/Hurrican uses SDL2 by default and should work on RPi4 ...

                                          L 1 Reply Last reply Reply Quote 0
                                          • L
                                            luckyluca @JenGun
                                            last edited by

                                            @jengun
                                            Hi, when I get to the cmake step
                                            cmake -DCMAKE_BUILD_TYPE=Release ..

                                            I get an error that it is missing the cmake text file.

                                            I'm on pi4, any ideas?
                                            many thanks!

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