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

    OpenBOR finally working fine on RETROPIE with ES

    Scheduled Pinned Locked Moved Ideas and Development
    openbortrick
    353 Posts 32 Posters 185.0k 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.
    • cyperghostC
      cyperghost @zanac
      last edited by

      @zanac I would suggest to use sperate libGL for each game.

      add Makefile

      LIBRARIES       = ./lib
      

      and create directory lib in OpenBOR dir and place libGL here

      cyperghostC 1 Reply Last reply Reply Quote 0
      • cyperghostC
        cyperghost @cyperghost
        last edited by cyperghost

        @cyperghost This is Василий Patch

        Changelog:
        added lib next to binary
        added cflags, change from O3 to O2

        Makefile

        Makefile
        
        ifdef BUILD_PANDORA
        TARGET 	        = $(VERSION_NAME).elf
        TARGET_FINAL    = $(VERSION_NAME)
        TARGET_PLATFORM = PANDORA
        BUILD_LINUX     = 1
        BUILD_SDL       = 1
        BUILD_GLES      = 1
        BUILD_OPENGL    = 1
        BUILD_LOADGL    = 1
        BUILD_WEBM      = 1
        BUILD_GFX       = 1
        BUILD_PTHREAD   = 1
        BUILD_SDL_IO    = 1
        BUILD_TREMOR    = 1
        BUILDING        = 1
        CC  	        = gcc
        INCLUDES        = $(PNDDEV)/include \
                          $(PNDDEV)/include/SDL
        OBJTYPE         = elf
        LIBRARIES       = ./lib
        ifeq ($(BUILD_PANDORA), 0)
        BUILD_DEBUG     = 1
        endif
        endif
        
        ...
        ...
        ifdef BUILD_PANDORA
        STRIP 	        = strip $(TARGET) -o $(TARGET_FINAL)
        endif
        
        ...
        ...
        
        CFLAGS 	       += $(addprefix -I", $(addsuffix ", $(INCS))) $(ARCHFLAGS) -D$(TARGET_PLATFORM)
        CFLAGS 	       += -g -Wall -Werror -fsigned-char -std=gnu99
        CFLAGS         += -marm -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard -fomit-frame-pointer -ffast-math -O2
        
        ...
        ...
        
        ifdef BUILD_SDL
        ifeq ($(findstring DGE, $(SDKPATH)), DGE)
        LIBS           += -lSDL -lSDL_gfx -lts
        else
        LIBS           += -Wl,-rpath,$(LIBRARIES) -lSDL2 -lSDL2_gfx -lGL
        endif
        endif
        

        sdl/opengl.c

        // create an OpenGL compatibility context, not a core or ES context
        #ifndef WIN // except on Windows, where some Nvidia drivers really don't like us doing this
        //zanac, these attributes don't work well in allwinner (rasbperry too?)
        //SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_COMPATIBILITY);
        #endif
        
            //zanac, it seems that you should always create a new context without delete the old one, this happen in allwinner (rasbperry too?)
            //if((context = SDL_GL_GetCurrentContext()))
            //      SDL_GL_DeleteContext(context);
        
        1 Reply Last reply Reply Quote 2
        • BiZzAr721B
          BiZzAr721 @zanac
          last edited by

          @zanac said in OpenBOR finally working fine on RETROPIE with ES:

          If you want i can share the libretro_scummv.so core compiled in this way, it work very well i use it and is very great!!!

          I would love for you to share the libretro_scummv.so core. Although eventually, learning how to compile is something I want to learn how to do. Thanks

          @darknior
          Using residualVM from the experimental section I am able to play

          • Escape from Monkey Island
          • Grim Fandango
          • Myst 3

          The pi takes a big hit running them, but they are playable
          ResidualVM itself still has bugs

          cyperghostC 1 Reply Last reply Reply Quote 1
          • cyperghostC
            cyperghost @BiZzAr721
            last edited by cyperghost

            @bizzar721 Compiling we do here is provided by scripts. Makefile or CMakeList for example. These scripts tell the compiler the order of source files and on which mashine they build. So it's not really difficult to do... Sometimes programmes give hints which compiler flag do this and that.... also not difficult to implent (a bit more know how needed)

            The stuff @zanac and @darknior have done is really advanced. You must understand how the code works and analyse options. For example @darknior patch makes use of function fileExists. You may think it's an ususal C-command, no... it's a functions that is nested into /source/utils.c. (A very common way to do check file availability... but other languages provide a command for this)

            1 Reply Last reply Reply Quote 2
            • darkniorD
              darknior @zanac
              last edited by

              @zanac said in OpenBOR finally working fine on RETROPIE with ES:

              If you want i can share the libretro_scummv.so core compiled in this way, it work very well i use it and is very great!!!

              Yes thanks a lot, if you can share it, i will try it :)

              Life is game, just play it !

              Z 1 Reply Last reply Reply Quote 0
              • Z
                zanac @darknior
                last edited by zanac

                @darknior said in OpenBOR finally working fine on RETROPIE with ES:

                @zanac said in OpenBOR finally working fine on RETROPIE with ES:

                If you want i can share the libretro_scummv.so core compiled in this way, it work very well i use it and is very great!!!

                Yes thanks a lot, if you can share it, i will try it :)

                here you are:
                https://drive.google.com/open?id=1iuV9BUN4g8-aaf9DAPrmxG0s3dn0RDoR

                For use in a game... i try to make an example. For example i have "Full Throttle" adventure, inside the game folder i place a "Full Throttle.scummvm" file, inside it you must just insert the "logical scummvm name", that is in this example "ft"

                Here you can find a sort of "database" of scummvm files:
                https://github.com/zanac/OpenPB4/blob/master/retroarch/cores/scummvm_libretro/scummvm-games.7z

                p.s. excuse me for the OT, this is not openbor stuff i know!

                darkniorD 1 Reply Last reply Reply Quote 4
                • BiZzAr721B
                  BiZzAr721
                  last edited by

                  @zanac Thank you for sharing.

                  1 Reply Last reply Reply Quote 0
                  • cyperghostC
                    cyperghost @darknior
                    last edited by

                    @darknior said in OpenBOR finally working fine on RETROPIE with ES:

                    I must use 3400 for

                    Asterix & Obelix

                    Can't confirm it's working fine with latest releases.
                    md5: 41a9bdf651676f77c50307cf955ae2ad Asterix And Caesars Challenge.pak

                    1 Reply Last reply Reply Quote 1
                    • darkniorD
                      darknior @zanac
                      last edited by

                      @zanac Thanks a lot, really :D
                      I think it can be a really good idea to share your work on an other thread to make every one using ScummVM on LR.
                      It is really excellent !!!

                      Same i wish it will be same in a few time with Daphne for LR too :)

                      Life is game, just play it !

                      Z 1 Reply Last reply Reply Quote 0
                      • Z
                        zanac @darknior
                        last edited by zanac

                        Sorry i have not time to follow a thread... anyway it's rather easy, i only tweak Makefile to add cortex/neon optimization on rasbperry, the source code of scummvm libretro work very weel on rpi/allwinner boards! :)

                        @darknior said in OpenBOR finally working fine on RETROPIE with ES:

                        @zanac Thanks a lot, really :D
                        I think it can be a really good idea to share your work on an other thread to make every one using ScummVM on LR.
                        It is really excellent !!!

                        Same i wish it will be same in a few time with Daphne for LR too :)

                        cyperghostC 1 Reply Last reply Reply Quote 1
                        • cyperghostC
                          cyperghost @zanac
                          last edited by cyperghost

                          Hello @zanac,

                          I've collected all patch into a Openbor for Raspberry GIT ....
                          We have patches: Anna, Boris, Wassili next patch will be Galina. I hope @darknior can make this work and we have CLI for PAKs ;)

                          darkniorD 1 Reply Last reply Reply Quote 0
                          • darkniorD
                            darknior @cyperghost
                            last edited by

                            @cyperghost said in OpenBOR finally working fine on RETROPIE with ES:

                            I hope @darknior can make this work and we have CLI for PAKs

                            I don't understand ? You want i patch your OpenBOR version ?
                            Why don't you had my patch directly ?

                            Life is game, just play it !

                            cyperghostC 1 Reply Last reply Reply Quote 0
                            • cyperghostC
                              cyperghost @darknior
                              last edited by cyperghost

                              @darknior Lack of time ;) Just fork the repo
                              Use patch -p0 -i patchfile.patch to patch and patch -p0 -R -i patchfile.patch to revert patches.

                              So a working example would be patch -p0 -i ./patch/3-Wassili.diff

                              Every patch is mode from original version. So patch #3 is the same version is I offer as download in openbor openbeta thread.

                              1 Reply Last reply Reply Quote 1
                              • BiZzAr721B
                                BiZzAr721
                                last edited by

                                Now that I got all my .bor back in .pak format, I tried the 3400 build and everything is working great.
                                All we need is CLI patch and we're golden! @darknior

                                I came across this post which lists a huge amount mods with version & compatable builds. It's pretty overwhelming the different amount of builds. It seems like build 4086 is very popular build.

                                cyperghostC darkniorD 2 Replies Last reply Reply Quote 1
                                • cyperghostC
                                  cyperghost @BiZzAr721
                                  last edited by

                                  @bizzar721 Thanks for this list. I am still on business and have no time for do anything for open or ;( So I hope @darknior can help ;)

                                  1 Reply Last reply Reply Quote 0
                                  • darkniorD
                                    darknior @BiZzAr721
                                    last edited by

                                    @bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:

                                    I came across this post which lists a huge amount mods with version & compatable builds. It's pretty overwhelming the different amount of builds. It seems like build 4086 is very popular build.

                                    Thanks a lot for this list, for sure it can help a lot, i don't have the OpenBOR version of all my mods :p
                                    Like that now we know if one mod not working, what engine build we need to make it working :)
                                    For my part i don't have time and experience for the moment to update games mod to work with the last OpenBOR engine version ... but it is the best way...

                                    Life is game, just play it !

                                    Z 1 Reply Last reply Reply Quote 0
                                    • Z
                                      zanac @darknior
                                      last edited by

                                      @darknior i just try to compille old 4xxx versions but in my allwinner dont work well, several glitch. I think that old version dont work well on rpi

                                      BiZzAr721B 1 Reply Last reply Reply Quote 2
                                      • BiZzAr721B
                                        BiZzAr721 @zanac
                                        last edited by

                                        @zanac Thanks for trying. The good thing is between the latest & 3400 build we can play 95% of mods. Many of the ones listed do work with 3400 even if it was not made specifically for it. (there may be some unknown bug with doing so, such as Bare Knuckles VI randomly crashing...... but maybe the final version can play on latest OpenBOR!)

                                        Too bad OpenBOR is not backwards compatible - must be very tough for mod developers to keep up.

                                        1 Reply Last reply Reply Quote 2
                                        • cyperghostC
                                          cyperghost
                                          last edited by

                                          I made PAK support via CLI available version, Patch version is Галина (galina)
                                          Thanksfully I got some time to integrate this. Worked out of the box! Happy Brawling...

                                          As always I deliver a BETA to test, but I highly recommand to build on your own.

                                          cyperghostC 1 Reply Last reply Reply Quote 1
                                          • cyperghostC
                                            cyperghost @cyperghost
                                            last edited by cyperghost

                                            @zanac

                                            If it will work you can go in video option, enable full screen, and switch from SDL to GL and use bilinear filter or so on using GPU!

                                            This isn't possible on Raspberry and therefore filters are very slow. May you think there is a fix for it?

                                            GitHub account is here and all patches are located here

                                            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.