• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
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 1 Feb 2021, 17:00 2 Jan 2021, 16:57

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

    D 1 Reply Last reply 2 Jan 2021, 23:05 Reply Quote 1
    • D
      DavidDraper @JenGun
      last edited by DavidDraper 1 Feb 2021, 23:06 2 Jan 2021, 23:05

      @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 3 Jan 2021, 00:08 Reply Quote 0
      • D
        DavidDraper @JenGun
        last edited by 2 Jan 2021, 23:47

        @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 3 Jan 2021, 00:08

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

          D 1 Reply Last reply 3 Jan 2021, 01:50 Reply Quote 1
          • D
            DavidDraper @JenGun
            last edited by 3 Jan 2021, 01:50

            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 3 Jan 2021, 08:04 Reply Quote 0
            • J
              JenGun @DavidDraper
              last edited by 3 Jan 2021, 08:04

              @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"
              
              D 3 Replies Last reply 3 Jan 2021, 12:46 Reply Quote 1
              • D
                DavidDraper @JenGun
                last edited by 3 Jan 2021, 12:46

                @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
                • D
                  DavidDraper @JenGun
                  last edited by 3 Jan 2021, 13:05

                  @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
                  • D
                    DavidDraper @JenGun
                    last edited by 3 Jan 2021, 13:29

                    @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 3 Jan 2021, 14:11 Reply Quote 0
                    • J
                      JenGun @DavidDraper
                      last edited by JenGun 1 Mar 2021, 14:11 3 Jan 2021, 14:11

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

                      D 2 Replies Last reply 3 Jan 2021, 14:34 Reply Quote 1
                      • D
                        DavidDraper @JenGun
                        last edited by 3 Jan 2021, 14:34

                        @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
                        • D
                          DavidDraper @JenGun
                          last edited by 3 Jan 2021, 16:37

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

                          David

                          J 1 Reply Last reply 3 Jan 2021, 21:03 Reply Quote 1
                          • J
                            JenGun @DavidDraper
                            last edited by 3 Jan 2021, 21:03

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

                            D 1 Reply Last reply 4 Jan 2021, 02:03 Reply Quote 1
                            • D
                              DavidDraper @JenGun
                              last edited by 4 Jan 2021, 02:03

                              @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 4 Jan 2021, 16:37 Reply Quote 0
                              • J
                                JenGun @DavidDraper
                                last edited by JenGun 1 Apr 2021, 16:38 4 Jan 2021, 16:37

                                @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 31 May 2021, 21:37 Reply Quote 1
                                • R
                                  RussellB @JenGun
                                  last edited by 31 May 2021, 21:37

                                  @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 11 Jun 2021, 12:00 Reply Quote 0
                                  • J
                                    JenGun @RussellB
                                    last edited by 11 Jun 2021, 12:00

                                    @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 28 Nov 2021, 22:34 Reply Quote 0
                                    • L
                                      luckyluca @JenGun
                                      last edited by 28 Nov 2021, 22:34

                                      @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 4 Dec 2021, 09:38 Reply Quote 0
                                      • J
                                        JenGun @luckyluca
                                        last edited by 4 Dec 2021, 09:38

                                        @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 11 Dec 2021, 23:04 Reply Quote 0
                                        • S sleve_mcdichael referenced this topic on 6 Dec 2021, 22:35
                                        • S sleve_mcdichael referenced this topic on 6 Dec 2021, 22:36
                                        • S sleve_mcdichael referenced this topic on 6 Dec 2021, 23:34
                                        • L
                                          luckyluca @JenGun
                                          last edited by luckyluca 12 Nov 2021, 23:05 11 Dec 2021, 23:04

                                          @jengun Unfortunately that doesn't work, probably a library missing?

                                          pi@retropie:~/tmp/Hurrican/Hurrican/build $ cmake -DCMAKE_BUILD_TYPE=Release ..
                                          -- The C compiler identification is GNU 8.3.0
                                          -- The CXX compiler identification is GNU 8.3.0
                                          -- Check for working C compiler: /usr/bin/cc
                                          -- Check for working C compiler: /usr/bin/cc -- works
                                          -- Detecting C compiler ABI info
                                          -- Detecting C compiler ABI info - done
                                          -- Detecting C compile features
                                          -- Detecting C compile features - done
                                          -- Check for working CXX compiler: /usr/bin/c++
                                          -- Check for working CXX compiler: /usr/bin/c++ -- works
                                          -- Detecting CXX compiler ABI info
                                          -- Detecting CXX compiler ABI info - done
                                          -- Detecting CXX compile features
                                          -- Detecting CXX compile features - done
                                          -- Looking for pthread.h
                                          -- Looking for pthread.h - found
                                          -- Looking for pthread_create
                                          -- Looking for pthread_create - not found
                                          -- Looking for pthread_create in pthreads
                                          -- Looking for pthread_create in pthreads - not found
                                          -- Looking for pthread_create in pthread
                                          -- Looking for pthread_create in pthread - found
                                          -- Found Threads: TRUE
                                          -- Found SDL2: /usr/lib/arm-linux-gnueabihf/libSDL2.so;-lpthread
                                          -- Found SDL2_image: /usr/lib/arm-linux-gnueabihf/libSDL2_image.so (found version "2.0.4")
                                          -- Found SDL2_mixer: /usr/lib/arm-linux-gnueabihf/libSDL2_mixer.so (found version "2.0.4")
                                          CMake Error at 3rdparty/LibFindMacros.cmake:263 (message):
                                            REQUIRED PACKAGE NOT FOUND
                                          
                                            We could not find development headers for LibEpoxy.  Do you have the
                                            necessary dev package installed? This package is REQUIRED and you need to
                                            install it or adjust CMake configuration in order to continue building
                                            hurrican.
                                          
                                            Relevant CMake configuration variables:
                                          
                                              LibEpoxy_INCLUDE_DIR=<not found>
                                              LibEpoxy_LIBRARY=<not found>
                                          
                                            You may use CMake GUI, cmake -D or ccmake to modify the values.  Delete
                                            CMakeCache.txt to discard all values and force full re-detection if
                                            necessary.
                                          
                                          Call Stack (most recent call first):
                                            3rdparty/FindLibEpoxy.cmake:29 (libfind_process)
                                            CMakeLists.txt:482 (find_package)
                                          
                                          
                                          -- Configuring incomplete, errors occurred!
                                          See also "/home/pi/tmp/Hurrican/Hurrican/build/CMakeFiles/CMakeOutput.log".
                                          See also "/home/pi/tmp/Hurrican/Hurrican/build/CMakeFiles/CMakeError.log".
                                          pi@retropie:~/tmp/Hurrican/Hurrican/build $ make
                                          make: *** No targets specified and no makefile found.  Stop.
                                          pi@retropie:~/tmp/Hurrican/Hurrican/build $
                                          
                                          S 1 Reply Last reply 12 Dec 2021, 07:04 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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received