Announcement

Collapse
No announcement yet.

DarkPlaces GLES on Pandaboard

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Working Panda ES apps

    Hi Oliver!

    Originally posted by olivermcfadden View Post

    Unfortunately I cannot give you much information here, because I am working on different GPUs now. I can tell you that DC is "Display Class" and it appears to be returning some kind of failure. I suspect your SGX drivers have a bug or are out of date?
    Out of date? Why I'll hear no such thing! How very dare you suggest it!

    Nope, my drivers and system is updated daily and I had (have) the very latest OMAP PPA release drivers installed but yes, TI admit and we know for sure there are still bugs to be stamped out yet.

    If you have some demo program with source code (just something that will bring up an OpenGL ES2 rendering context on the device) then I can have a look and compare it with my implementation. It's also quite possible that I have bugs in that the GL context initialization code.

    P.S. It's probably better to use Phoronix's forums attachment mechanism for log files etc. Blogger doesn't offer this, unfortunately. (Don't worry, I get an email notification when you reply here.)
    Hold on, ES2? Your Maemo Q3 port was linking and I'm linking against the ES1 libs here so I presume you saying ES2 was a typo and you meant ES1 right?

    I can only currently give 1 working example of both ES1 and ES2 on Pandaboard:

    ES1 - dxx-rebirth works if I start it in windowed mode then switch to fullscreen after startup:



    ES2 - I've not tried DarkPlaces or its required new SDL yet but I have glmark2-es2 from the Ubuntu repos running fine on my Panda

    What log files would you like to see?

    Comment


    • #12
      -lEGL

      I just did a clean build but with -lEGL appended to line 316 of the Makefile (added to CLIENT_LIBS) but I'm getting the same error as before.
      Last edited by danboid; 30 July 2012, 04:33 AM.

      Comment


      • #13
        doom3 issue needs to have #include stddef.h

        Comment


        • #14
          Originally posted by danboid View Post
          Hold on, ES2? Your Maemo Q3 port was linking and I'm linking against the ES1 libs here so I presume you saying ES2 was a typo and you meant ES1 right?
          Yes, I'm sorry this was a typo.

          Originally posted by danboid View Post
          I can only currently give 1 working example of both ES1 and ES2 on Pandaboard:

          ES1 - dxx-rebirth works if I start it in windowed mode then switch to fullscreen after startup:



          ES2 - I've not tried DarkPlaces or its required new SDL yet but I have glmark2-es2 from the Ubuntu repos running fine on my Panda

          Okay, I can try to take a look at these during the week (possibly weekend) although I have quite a lot going on at the moment. Basically I was just interested in an EGL/OpenGL ES1 (or ES2) "Hello World" so I can see whether I'm doing something silly in the Quake 3 GLimp (OpenGL IMPlementation) code. Keep in mind I wrote this quite some time ago, and with the intention of it being a simple tech demo. Indeed it's possible there are bugs there, in fact, it's likely.

          Unfortunately I do not have any Panda hardware which makes debugging very difficult compared to having the hardware on my desk and the SDK setup on my development system.

          I'm going to do a bit of investigation on the g++ errors for idTech4 and the PVRSRVOpenDCDevice() error from Quake3. Actually I expect the PVRSRVOpenDCDevice() error will also occur on ES2 programs (such as idTech4) once you're able to compile it. I'll do my best to get some answers.

          Originally posted by danboid View Post
          What log files would you like to see?
          Let's start with 'gcc -v' so that I can match your configuration.
          Last edited by olivermcfadden; 30 July 2012, 12:38 PM. Reason: s/Pandora/Panda/

          Comment


          • #15
            This is a bit of a shot in the dark, but from searching Google it appears you may need to have the DISPLAY environment variable setup correctly; e.g.
            Code:
            export DISPLAY=:0.0
            to avoid the PVR error. This is based on Ubuntu bug: https://bugs.launchpad.net/linaro-ubuntu/+bug/999617

            Possibly this will help you with the Quake3 problems, unfortunately there is not much I can investigate with regard to the idTech4 build error without the output from gcc -v.

            Comment


            • #16
              Gee Cee Cee Vee

              Hi Oliver!

              Thanks for tracking that error down but its not the problem here:

              Code:
              $ echo $DISPLAY
              :0.0
              gcc -v

              Code:
              Using built-in specs.
              COLLECT_GCC=gcc
              COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/4.6/lto-wrapper
              Target: arm-linux-gnueabihf
              Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-multilib --disable-sjlj-exceptions --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --with-mode=thumb --disable-werror --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
              Thread model: posix
              gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
              I'd be happy to set you up SSH access to my Panda if required to get this working as I see it as a total must for my platforms cred!

              Thanks Oliver!

              Comment


              • #17
                Pandora Q3 GLES git repo

                I found and tried one of cpasjuste's Q3 GLES repos on github recently but I must've got the wrong one because it wasn't

                Code:
                git clone git://github.com/Cpasjuste/quake3_pandora_gles.git
                From what Oliver has said about his Q3 GLES port, I suspect this Pandora port will be a better fit for running on Pandaboard - this version supports both GLES1 and 2 for one which I don't think Olivers does.

                All I had to do to the Pandora makefile to get it to compile - and this definitely isn't optimal or even correct - was change softfp to hard, GLES_CM to GLESv1_CM and correct the defs for gcc, g++ and ranlib. I have compiled it in debug mode for both GLES1 and 2 and I get the same error message when I try to start it with rq3 or OpenArena:

                Code:
                dan@pandamiga:~/src/quake3_pandora_gles/pandora/debug-arm$ ./quake3 +set com_basegame Boomstick +set r_fullscreen 0
                Q3 1.32b linux-other Jul 31 2012
                ----- FS_Startup -----
                Current search path:
                /home/dan/.q3a/baseq3
                /home/dan/src/quake3_pandora_gles/pandora/debug-arm/baseq3
                ./baseq3
                
                ----------------------
                0 files in pk3 files
                
                Running in restricted demo mode.
                
                ----- FS_Startup -----
                Current search path:
                /home/dan/.q3a/demoq3
                /home/dan/src/quake3_pandora_gles/pandora/debug-arm/demoq3
                ./demoq3
                
                ----------------------
                0 files in pk3 files
                ----- CL_Shutdown -----
                -----------------------
                ----- CL_Shutdown -----
                -----------------------
                Sys_Error: Couldn't load default.cfg
                quake3: ../code/unix/unix_main.c:343: Sys_Exit: Assertion `ex == 0' failed.
                Aborted (core dumped)
                dan@pandamiga:~/src/quake3_pandora_gles/pandora/debug-arm$ ./quake3 +set com_basegame openarena +set r_fullscreen 0
                Q3 1.32b linux-other Jul 31 2012
                ----- FS_Startup -----
                Current search path:
                /home/dan/.q3a/baseq3
                /home/dan/src/quake3_pandora_gles/pandora/debug-arm/baseq3
                ./baseq3
                
                ----------------------
                0 files in pk3 files
                
                Running in restricted demo mode.
                
                ----- FS_Startup -----
                Current search path:
                /home/dan/.q3a/demoq3
                /home/dan/src/quake3_pandora_gles/pandora/debug-arm/demoq3
                ./demoq3
                
                ----------------------
                0 files in pk3 files
                ----- CL_Shutdown -----
                -----------------------
                ----- CL_Shutdown -----
                -----------------------
                Sys_Error: Couldn't load default.cfg
                quake3: ../code/unix/unix_main.c:343: Sys_Exit: Assertion `ex == 0' failed.
                Aborted (core dumped)
                Last edited by danboid; 31 July 2012, 01:44 PM.

                Comment


                • #18
                  DP compile errors

                  I've installed SDL2 on my Pandaboard now so I've made my first attempt at compiling DP - LordHavoc did warn of likely bit-rot in DarkPlaces GLES code so maybe thats what I'm up against?

                  So far, the only patching I've done is to add

                  Code:
                  -DUSE_GLES2 -I/usr/local/include/SDL2
                  To the CFLAGS_COMMON section of makefile.inc and get rid of the SSE(2) CFLAGS a few lines below and this is where it gets up to:

                  DP GLES build errors. GitHub Gist: instantly share code, notes, and snippets.

                  Comment


                  • #19
                    I've committed fixes for the warnings/errors in this one file but I expect there are more.

                    Comment


                    • #20
                      update

                      Indeed there were more GLES and SDL2 issues in getting DP to build so I've forwarded them to LordHavoc who is fixing them as he gets the time.

                      I'll update this thread again when DP is compiling and I've got more stuff I can try to get Q3 working yet but I may bust that out into a new/ separate thread on the Pandora forums if it looks like I'm having more luck with that.

                      I'd like to hear what Oliver thinks about which Q3 port is the best for my Panda. The Pandora port may have more features and be more polished but I suppose it will also be more specific to Pandora and may require more tweaking to get running over here than the Maemo port??

                      The other prob with the Pandora port is that I've had no response from its dev so I could have to fend for myself with that one.

                      Comment

                      Working...
                      X