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 257.1k 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.
    • RiverstormR
      Riverstorm @AndersHP
      last edited by

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

      Apologies are on me, I was not aware that mame2003_plus_libretro existed. But what exactly are the differences to lr-mame2003 if both are maintained? Just two parties updating mame2003 alongside each other?

      To add to what Dank mentioned a programmer named Arcadez decided to add and fix additional games not working in lr-mame2003 but it was causing some minor issues. So then it kind of became a derivative of lr-mame2003 and has kind of taken a life of it's own. Their are 3 very active developers (Arcadez, @markwkidd & @grant2258) that have added 100+ games and updated another 30+.

      I think the goals are similar of both projects in getting some lost classic arcades games working but it allows each the freedom to develop down a path of their choosing without worry of breaking lr-mame2003 or vice versa but they can also share the code too if there's a fix one or the other may utilize.

      Basically they both run the same games but mame2003_plus_libretro has some additional games that lr-mame2003 does not. lr-mame2003 has 2 games that mame2003_plus_libretro does not listed below.

      Only exist in lr-mame2003:
      • Cabal (US set 2) (cabal2)
      • Urashima Mahjong (urashima)

      I haven't updated it in about a week so the numbers are actually higher but mame2003_plus_libretro has 4,810 total ROMs, 4,687 are the 'hash' duplicates of lr-mame2003, 92 ROMs are new only to mame2003_plus_libretro and 31 ROMs have been updated. They may be either clones or sound samples, etc.

      ROM Count:
      Total ROMs in mame2003_plus_libretro - 4810
      Duplicate ROMs matching lr-mame2003 - 4687
      New ROMs only exist in mame2003_plus_libretro - 92
      Updated ROMs in mame2003_plus_libretro - 31

      AndersHPA 1 Reply Last reply Reply Quote 1
      • G
        grant2258 Banned
        last edited by

        old games that ran 47 fps and below are now working in mame2003 and mame 2003 plus (bally atari and more)

        1 Reply Last reply Reply Quote 0
        • AndersHPA
          AndersHP @Riverstorm
          last edited by

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

          Basically they both run the same games but mame2003_plus_libretro has some additional games that lr-mame2003 does not.

          Why then is lr-mame2003 the recommended emulator? It seems everyone should use mame2003_plus?

          My "Bubble Bobble" Themed Bartop Arcade
          My Gameboy

          mediamogulM 1 Reply Last reply Reply Quote 0
          • mediamogulM
            mediamogul Global Moderator @AndersHP
            last edited by

            @andershp

            The vanilla 0.78 ROM set and samples used by lr-mame2003 are more accessible, making it an easier setup for most.

            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

            AndersHPA 1 Reply Last reply Reply Quote 0
            • AndersHPA
              AndersHP @mediamogul
              last edited by

              @mediamogul but in the docs for mame2003 plus it says "The MAME 2003-plus core accepts MAME 0.78 ROMsets for 99.9% of games" ?

              My "Bubble Bobble" Themed Bartop Arcade
              My Gameboy

              mediamogulM 1 Reply Last reply Reply Quote 0
              • mediamogulM
                mediamogul Global Moderator @AndersHP
                last edited by mediamogul

                @andershp

                If you were to make use of the vanilla 0.78 ROM set with lr-mame2003-plus, 99.9% of the games would work, but there's really no reason not to use the original lr-mame2003 and get that extra 00.1% that would otherwise be incompatible.

                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                1 Reply Last reply Reply Quote 0
                • RiverstormR
                  Riverstorm
                  last edited by

                  @AndersHP - Also remember right now it's still experimental. It's in that section. It's in a very rapid development cycle and some things might be broken and fixed an hour later. I've downloaded from source 5 or 6 times this past week.

                  You can definitely make it your preferred emulator (especially if there's new games that are favs) if you have the correct ROMs to build a set and are alright with some occasional quirky behavior.

                  You can also pull only the new/updated ROMs that run only in Plus and use the Arcade folder that allows multiple emulators for one platform. I can make a DAT for that too.

                  Any testing and feedback is great of what works and what's broke. It might become the preferred emulator down the road or merged with lr-mame2003 down the road. It's hard to say as folks higher up will need to decide a course of action.

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

                    plus has had issues with failing builds and so forth. it will get there! just be patient whilst development goes on :)

                    1 Reply Last reply Reply Quote 0
                    • E
                      edwardthehuman
                      last edited by

                      When I install this I get:
                      Could not successfully install . /home/pi?RetroPie-Setup/tmp/build/lr-mame2003-plus/changed.txt not found.

                      Then it tells me to see the log to see what the error was about. TO whom can I provide the log file?

                      mituM 1 Reply Last reply Reply Quote 0
                      • mituM
                        mitu Global Moderator @edwardthehuman
                        last edited by

                        @edwardthehuman What version of RetroPie are you using ? I remember this has been corrected a few versions ago - you should update your setup script to 4.4.

                        E 1 Reply Last reply Reply Quote 0
                        • E
                          edwardthehuman @mitu
                          last edited by

                          @mitu Hi, i tried it first using 4.3 and didn't work. So I just updated it to 4.4 and still the same result. Thanks

                          mituM 1 Reply Last reply Reply Quote 0
                          • mituM
                            mitu Global Moderator @edwardthehuman
                            last edited by

                            @edwardthehuman It seems the github repository is undergoing a few changes which have not been picked up by the install script. Wait a few days until things settle down and I'm sure it will work again.

                            E 1 Reply Last reply Reply Quote 0
                            • E
                              edwardthehuman @mitu
                              last edited by

                              @mitu Okay I will wait a few days before installing it again. Thank you

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

                                I think this PR should update RetroPie-Setup the way it needs to in order to compile again: https://github.com/RetroPie/RetroPie-Setup/pull/2369

                                I've been making changes oriented towards having a long-term stable period in the repository. I've updated the license and documentation within the repository to match github convention.

                                I've also been removing one of the layers of abstraction between libretro and MAME around file handling functions. There's a bit more to do but the end is in sight. Not the sexiest section of the code, but this project is intended to make it easier for new developers to come along in the future and understand how mame2003/mame2003-plus locates, loads, and handles files internally.

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  grant2258 Banned @markwkidd
                                  last edited by

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

                                  I think this PR should update RetroPie-Setup the way it needs to in order to compile again: https://github.com/RetroPie/RetroPie-Setup/pull/2369

                                  I've been making changes oriented towards having a long-term stable period in the repository. I've updated the license and documentation within the repository to match github convention.

                                  I've also been removing one of the layers of abstraction between libretro and MAME around file handling functions. There's a bit more to do but the end is in sight. Not the sexiest section of the code, but this project is intended to make it easier for new developers to come along in the future and understand how mame2003/mame2003-plus locates, loads, and handles files internally.

                                  I seen youve been doing quite a bit of work mark. I noticed issues when changing the sample rate the changes your doing are needed and appreciated. It could be a wild guess where a variable was being set at times in the options

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

                                    @grant2258 I actually started out just wanting to clarify how the paths were selected for the various filetypes, specifically with samples in mind. Of course it got to be a bigger project than that as these things do.

                                    I would still like to simplify the file path section but I think with my latest PR I am done for now. Assuming there are no regressions.

                                    The only other project I have is to try figure out why I don't have access to the libretro logging interface at some times when I think I should, for example when samples are being loaded. I've been told in the past to try to avoid logging to printfbut I must not understand something about the libretro log callback because it's not always there when I need it.

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

                                      One nice thing that is happening today is that twinaphex is putting in time updating the Makefile and updating some other mame2003-plus components. It's good to have the lead dev working in the codebase every once in a while I think :)

                                      G 1 Reply Last reply Reply Quote 1
                                      • G
                                        grant2258 Banned @markwkidd
                                        last edited by grant2258

                                        @markwkidd would need an example in the code to see where you need the logging to work and it's not. I can take a look if you like

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

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

                                          @markwkidd would need an example in the code to see where you need the logging to work and it's not. I can take a look if you like

                                          Thanks, I keep putting this off. The background to this is that twinaphex asked in general for me to not add more printf logging, so I'm trying to use libretro's log system to the greatest extent possible.

                                          Here's some logging code that I think should be executing with any game that supports samples: https://github.com/libretro/mame2003-plus-libretro/blob/master/src/common.c#L260

                                          I'm not seeing that logged to in the console in --verbose mode.

                                          From my understanding, log_cb should already be initialized here: https://github.com/libretro/mame2003-plus-libretro/blob/master/src/libretro/mame2003.c#L480-L483

                                          I assume it's that I don't understand something about libretro logging.

                                          I could just try to initialize log_cb again in common.c like it's done in mame2003.cbut that seems like an ugly way to go.

                                             struct retro_log_callback log;
                                             if (environ_cb(RETRO_ENVIRONMENT_GET_LOG_INTERFACE, &log))
                                                log_cb = log.log;
                                             else
                                                log_cb = NULL;
                                          
                                          G 1 Reply Last reply Reply Quote 0
                                          • RiverstormR
                                            Riverstorm
                                            last edited by Riverstorm

                                            I was running some games through mame2003_plus. Basically the games I have in my list around 330 or so to see how they performed. I found a few errors. Would you rather see these posted over at Github as a ticket?

                                            • Arkanoid (US) (arkanoiu) - Player 2 flipped upside down (vertically)
                                            • Dragon Spirit (dspirit) - Player 2 filled upside down (vertically)
                                            • Kick (kick) - Player 1 and 2 only flip horizontally (lays on left and right side)
                                            • D.D. Crew (ddcrew) - Crashes black screen
                                            • Pig Newton (pignewt) - Crashes black screen
                                            • Vector games seem to work but look awful. I couldn't find the settings for beam intensity, beam thickness, flicker, etc.

                                            Games that seem to work great in mame2003_plus. I had these previously running AdvMAME as it seems to handle all games fairly well but it was nice to seem them running in plus:

                                            • Demolition Derby
                                            • Puzzle Bobble / Bust-A-Move
                                            • Puzzle Bobble 2 / Bust-A-Move Again
                                            • Rampage
                                            • Skull & Crossbones
                                            • Xenophobe

                                            @markwkidd - Do you know where the settings are for Libretro defaults you linked up the thread? I know it's not in all/retorarch.cfg. I can't find those settings anywhere. When testing 4 players with a keyboard it's a pain to have double inputs etc. I have all 26 alphabet keys assigned and the overlap with certain games makes them impossible to play. I do have all the keyboard keys memorized for 4 players though. :)

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