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 7.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.
    • 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
                                          • J
                                            JenGun @luckyluca
                                            last edited by

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

                                            cmake -DCMAKE_BUILD_TYPE=Release ..
                                            I get an error that it is missing the cmake text file.

                                            Copy & paste the lines from https://github.com/drfiemost/Hurrican#building ... tested and works on the RPi4 ...

                                            L 1 Reply Last reply Reply Quote 0
                                            • S sleve_mcdichael referenced this topic on
                                            • S sleve_mcdichael referenced this topic on
                                            • S sleve_mcdichael referenced this topic on
                                            • 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.