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

    lr-mame2003 driver improvement and backport

    Scheduled Pinned Locked Moved Ideas and Development
    mame2003mame-libretrodriverbackport
    507 Posts 30 Posters 269.9k 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.
    • arcadez2003A
      arcadez2003 @markwkidd
      last edited by

      @markwkidd said in lr-mame2003 driver improvement and backport:

      Once the codebase and ROM checksums stabilize I'll put together a DAT. ( @gamez-fan I enjoy periodically checking the mame2003 commit log to see you at work with backports!)

      Thanks man!! im going to add in support for a couple more games later and im plodding away on adding sound to another few, but im constrained
      really by the codebase being 78 if it had been say 79 after all the CPU and Mem changes between those builds then far more could have been backported
      as MAME 78 is missing support for alotta good Data East, Kaneko16, NMK16 and Sega games plus the Seibu Raiden Fighters Series.

      It would have been interesting to have seen how some of the above games might performed in this older MAME core but alas not to be as the code for
      those is either not there not compatable or the workload needed just too great.

      Arcade Addict

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

        https://github.com/libretro/mame2003-libretro/pull/163

        @gamez-fan Hook up the recently dumped sound MCU
        Unfortunately i cant do the same for Vimana as the MCU needs some input tag handling
        not compatable with the MAME78 input code.

        Life is game, just play it !

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

          WOAW excellent i love these games lol

          https://github.com/libretro/mame2003-libretro/pull/164

          @gamez-fan Rythm action games like Rock'n Tread are better with well music :)

          Life is game, just play it !

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

            https://github.com/libretro/mame2003-libretro/pull/166

            Hyper Crash Gfx Fixes

            Life is game, just play it !

            1 Reply Last reply Reply Quote 0
            • Z
              zerojay @markwkidd
              last edited by

              @markwkidd said in lr-mame2003 driver improvement and backport:

              @zerojay said in lr-mame2003 driver improvement and backport:

              nvram doesn't get written out

              Could you say more about what you mean by this?

              nvram doesn't get written to disk.

              markwkiddM 1 Reply Last reply Reply Quote 0
              • markwkiddM
                markwkidd @zerojay
                last edited by markwkidd

                @zerojay said in lr-mame2003 driver improvement and backport:

                @markwkidd said in lr-mame2003 driver improvement and backport:

                @zerojay said in lr-mame2003 driver improvement and backport:

                nvram doesn't get written out

                Could you say more about what you mean by this?

                nvram doesn't get written to disk.

                Yes, under what emulator and circumstances? All retroarch arcade emulators should be writing nvram.

                Z 1 Reply Last reply Reply Quote 0
                • Z
                  zerojay @markwkidd
                  last edited by

                  @markwkidd said in lr-mame2003 driver improvement and backport:

                  @zerojay said in lr-mame2003 driver improvement and backport:

                  @markwkidd said in lr-mame2003 driver improvement and backport:

                  @zerojay said in lr-mame2003 driver improvement and backport:

                  nvram doesn't get written out

                  Could you say more about what you mean by this?

                  nvram doesn't get written to disk.

                  Yes, under what emulator and circumstances? All retroarch arcade emulators should be writing nvram.

                  mame2000. Looks like the source version does indeed write it out now but the binary one needs to be recompiled.

                  Now if only we could get into the service menu or the usual MAME tab menu with just a controller...

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

                    https://github.com/libretro/mame2003-libretro/pull/168

                    @gamez-fan Hook up sound MCU for Vimana
                    Actually i spoke to soon it was possible to do this one without the input tags :)

                    Life is game, just play it !

                    1 Reply Last reply Reply Quote 0
                    • markwkiddM
                      markwkidd @zerojay
                      last edited by

                      @zerojay said in lr-mame2003 driver improvement and backport:

                      Now if only we could get into the service menu or the usual MAME tab menu with just a controller...

                      Thank you for checking on this. Could I ask you to post your experience trying to use the TAB menu with source-compiled mame2000 in this github issue? https://github.com/libretro/mame2000-libretro/issues/25

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

                        https://github.com/libretro/mame2003-libretro/pull/172
                        https://github.com/libretro/mame2003-libretro/pull/171

                        Make DJ Boy work

                        Life is game, just play it !

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

                          https://github.com/libretro/mame2003-libretro/pull/173

                          New Driver which supports 5 games
                          Code via iq_132 with some graphical updates by myself for Cute Fighter

                          • Baryon - Future Assault (c) 1997 SemiCom / Tirano
                          • Cute Fighter (c) 1998 SemiCom
                          • Rolling Crush (c) 1999 Trust / SemiCom
                          • Gaia - The Last Choice of Earth (c) 1999 SemiCom / XESS
                          • Dream World (c) 2000 SemiCom

                          Life is game, just play it !

                          1 Reply Last reply Reply Quote 1
                          • Z
                            zerojay @arcadez2003
                            last edited by

                            @gamez-fan said in lr-mame2003 driver improvement and backport:

                            @zerojay said in lr-mame2003 driver improvement and backport:

                            I was really hoping that openice would be one of the games that would get these speed boosts. Oh well. Right now, it runs with slowdown on mame2003 and runs perfect speed on anything older but nvram doesn't get written out so it's useless.

                            Totally experimental as i found it can break the sound in some T-Unit games not using the DCS soundcore, which will require a workaround to sort
                            but just now for testing purposes if you can compile your own build in the MAME-2003 source goto src/vidhrdw/midtunit and do this.......

                            #define FAST_DMA 1 /* DMAs complete immediately; reduces number of CPU switches */

                            This should boost up the performance in Open Ice Challenge but enough to playable on the Rpi im not sure..?? you'll need to try it and see.

                            I compiled with the change and it appears that retroarch is unable to load the compiled .so file that results from it:

                            [ERROR] Failed to open libretro core: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                            [ERROR] Error(s): /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so: undefined symbol: driver_baryon

                            arcadez2003A 1 Reply Last reply Reply Quote 1
                            • arcadez2003A
                              arcadez2003 @zerojay
                              last edited by

                              @zerojay said in lr-mame2003 driver improvement and backport:

                              I compiled with the change and it appears that retroarch is unable to load the compiled .so file that results from it:

                              [ERROR] Failed to open libretro core: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                              [ERROR] Error(s): /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so: undefined symbol: driver_baryon

                              Yeah i just added a new driver dreamwld.c which will likely need to be declared in the overall sources hence the above compile errors
                              if you can point me towards the sources then i can fix this.

                              Arcade Addict

                              dankcushionsD 1 Reply Last reply Reply Quote 0
                              • dankcushionsD
                                dankcushions Global Moderator @arcadez2003
                                last edited by

                                @gamez-fan said in lr-mame2003 driver improvement and backport:

                                @zerojay said in lr-mame2003 driver improvement and backport:

                                I compiled with the change and it appears that retroarch is unable to load the compiled .so file that results from it:

                                [ERROR] Failed to open libretro core: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                                [ERROR] Error(s): /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so: undefined symbol: driver_baryon

                                Yeah i just added a new driver dreamwld.c which will likely need to be declared in the overall sources hence the above compile errors
                                if you can point me towards the sources then i can fix this.

                                https://github.com/libretro/mame2003-libretro/blob/master/link.T
                                https://github.com/libretro/mame2003-libretro/blob/master/Makefile.common

                                i think that's it

                                arcadez2003A 1 Reply Last reply Reply Quote 1
                                • arcadez2003A
                                  arcadez2003 @dankcushions
                                  last edited by

                                  @dankcushions said in lr-mame2003 driver improvement and backport:

                                  @gamez-fan said in lr-mame2003 driver improvement and backport:

                                  @zerojay said in lr-mame2003 driver improvement and backport:

                                  I compiled with the change and it appears that retroarch is unable to load the compiled .so file that results from it:

                                  [ERROR] Failed to open libretro core: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                                  [ERROR] Error(s): /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so: undefined symbol: driver_baryon

                                  Yeah i just added a new driver dreamwld.c which will likely need to be declared in the overall sources hence the above compile errors
                                  if you can point me towards the sources then i can fix this.

                                  https://github.com/libretro/mame2003-libretro/blob/master/link.T
                                  https://github.com/libretro/mame2003-libretro/blob/master/Makefile.common

                                  i think that's it

                                  Thanks i've declared the new driver in the makefile that should fix the compile errors

                                  Arcade Addict

                                  Z 1 Reply Last reply Reply Quote 1
                                  • Z
                                    zerojay @arcadez2003
                                    last edited by zerojay

                                    @gamez-fan said in lr-mame2003 driver improvement and backport:

                                    @dankcushions said in lr-mame2003 driver improvement and backport:

                                    @gamez-fan said in lr-mame2003 driver improvement and backport:

                                    @zerojay said in lr-mame2003 driver improvement and backport:

                                    I compiled with the change and it appears that retroarch is unable to load the compiled .so file that results from it:

                                    [ERROR] Failed to open libretro core: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                                    [ERROR] Error(s): /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so: undefined symbol: driver_baryon

                                    Yeah i just added a new driver dreamwld.c which will likely need to be declared in the overall sources hence the above compile errors
                                    if you can point me towards the sources then i can fix this.

                                    https://github.com/libretro/mame2003-libretro/blob/master/link.T
                                    https://github.com/libretro/mame2003-libretro/blob/master/Makefile.common

                                    i think that's it

                                    Thanks i've declared the new driver in the makefile that should fix the compile errors

                                    No go. Dumped my copy of the lr-mame2003 source and pulled down a fresh copy, made the change for DMA as we previously mentioned and compiled.

                                    When running with verbose logging:

                                    Parameters:
                                    Executing: SDL_VIDEO_EGL_DRIVER=/opt/vc/lib/libEGL.so SDL_VIDEO_GL_DRIVER=/opt/vc/lib/libGLESv2.so /opt/retropie/emulators/retroarch/bin/retroarch
                                    -L /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so --config /opt/retropie/configs/mame-libretro/retroarch.cfg "/home/pi/RetroPie/rom
                                    s/mame-libretro/openice.zip" --verbose --appendconfig /dev/shm/retroarch.cfg
                                    [INFO] RetroArch 1.6.7 (Git 8e8bdaa)
                                    [INFO] Redirecting save file to "/home/pi/RetroPie/roms/mame-libretro/openice.srm".
                                    [INFO] Redirecting savestate to "/home/pi/RetroPie/roms/mame-libretro/openice.state".
                                    [INFO] === Build =======================================
                                    Capabilities: NEON VFPv3 VFPv4
                                    Built: Sep 10 2017
                                    [INFO] Version: 1.6.7
                                    [INFO] Git: 8e8bdaa
                                    [INFO] =================================================
                                    [INFO] [Config]: loading config from: /opt/retropie/configs/mame-libretro/retroarch.cfg.
                                    [INFO] Config: appending config "/dev/shm/retroarch.cfg"
                                    [INFO] Loading dynamic libretro core from: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                                    [ERROR] Failed to open libretro core: "/opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so"
                                    [ERROR] Error(s): /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so: undefined symbol: driver_baryon
                                    /opt/retropie/supplementary/runcommand/runcommand.sh: line 1014: 16143 Segmentation fault SDL_VIDEO_EGL_DRIVER=/opt/vc/lib/libEGL.so SDL_VIDEO_GL_DRIVER=/opt/vc/lib/libGLESv2.so /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.
                                    so --config /opt/retropie/configs/mame-libretro/retroarch.cfg "/home/pi/RetroPie/roms/mame-libretro/openice.zip" --verbose --appendconfig /dev/shm/retroarch.cfg

                                    1 Reply Last reply Reply Quote 0
                                    • Z
                                      zerojay
                                      last edited by

                                      Actually, just noticed your change didn't yet get pulled so I applied it manually. The game loads and runs but even on my overclocked pi3 with resolution at 640x480, it seems to go back and forth between full speed and very slow (though audio sounds fine).

                                      arcadez2003A 1 Reply Last reply Reply Quote 0
                                      • arcadez2003A
                                        arcadez2003 @zerojay
                                        last edited by

                                        @zerojay said in lr-mame2003 driver improvement and backport:

                                        Actually, just noticed your change didn't yet get pulled so I applied it manually. The game loads and runs but even on my overclocked pi3 with resolution at 640x480, it seems to go back and forth between full speed and very slow (though audio sounds fine).

                                        Open ice does the exact same thing on the Xbox with the DMA off but i noticed when i turned it on the game did get a slight boost not as much as MK2 or MK3
                                        which is what i really use it for, i thought it was worth a try on the Rpi incase you got a better speedup via the DMA change but alas it was not to be which is a pity,

                                        Arcade Addict

                                        1 Reply Last reply Reply Quote 0
                                        • Z
                                          zerojay
                                          last edited by

                                          I am able to play it with advmame 0.94 with my overclock and it's pretty playable there. Thanks for the help.

                                          1 Reply Last reply Reply Quote 0
                                          • Y
                                            yevaman
                                            last edited by

                                            Hi ! First of all, thanks for your work !

                                            I use retroarch and just saw in the new changelog that there is a Mame2003_midway core.
                                            I found the site with the source but can't find the DLL
                                            When i Update the core in retroarch section I only can see the tradionnal 2003 core but not the midway one.
                                            Can you help me to reach this dll ?

                                            Thx

                                            Regards

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