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

    Didn't fully understand the "logic" between ROMSET versions

    Scheduled Pinned Locked Moved Help and Support
    35 Posts 9 Posters 17.2k 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.
    • RK.aus.SR
      RK.aus.S
      last edited by RK.aus.S

      Hi

      Although I try to read as much as I can about MAME ROMs and ROMSETs, I still don't fully understand the logic between ROMSET versions. As described in the RetroPie Wiki "Managing ROMs", I think I have understand the thing with "parents" and "clones". I also know something about "merged", "non-merged" and "split" MAME ROMSETs.

      But; refering to the "Manage ROMs" page, each MAME emulator needs it's specifig ROMSET version, e.g. lr-fba needs 0.154. Why there exists ROMSETs with version 0.151, 0.152, 0.153 and so on, if no emulator uses it?

      And I've read somewhere that one can need all such versions in order one gets what one wants? How are this versions "linked" to each other? How do they "work together"?

      Maybe someone knows a good Website who describes exactly that? I didn't...

      Kind regards,
      Roman

      dankcushionsD RiverstormR 2 Replies Last reply Reply Quote 0
      • Z
        Zigurana
        last edited by

        I found this helpful:
        https://retropie.org.uk/forum/topic/1851/which-system-emlator-should-i-use-i-only-want-to-play-space-invaders/7

        If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

        1 Reply Last reply Reply Quote 1
        • dankcushionsD
          dankcushions Global Moderator @RK.aus.S
          last edited by

          @RK.aus.S said in Didn't fully understand the "logic" between ROMSET versions:

          Hi

          Although I try to read as much as I can about MAME ROMs and ROMSETs, I still don't fully understand the logic between ROMSET versions. As described in the RetroPie Wiki "Managing ROMs", I think I have understand the thing with "parents" and "clones". I also know something about "merged", "non-merged" and "split" MAME ROMSETs.

          But; refering to the "Manage ROMs" page, each MAME emulator needs it's specifig ROMSET version, e.g. lr-fba needs 0.154. Why there exists ROMSETs with version 0.151, 0.152, 0.153 and so on, if no emulator uses it?

          the emulators do exist - every romset version is a version of MAME - see http://wiki.mamedev.org/index.php/Previous_MAME_Versions

          for retropie, there are only a few key versions which have been able to be used on the raspberry pi.

          And I've read somewhere that one can need all such versions in order one gets what one wants? How are this versions "linked" to each other? How do they "work together"?

          not sure what you mean here. not ALL games work properly on one single version of the fba/mame emulators that are available on retropie, so you may need to use different ones for different things, depending on what you want to play and what controls you are using, etc.

          RK.aus.SR 1 Reply Last reply Reply Quote 1
          • RK.aus.SR
            RK.aus.S @dankcushions
            last edited by RK.aus.S

            @dankcushions said in Didn't fully understand the "logic" between ROMSET versions:

            @RK.aus.S said in Didn't fully understand the "logic" between ROMSET versions:

            Hi

            Although I try to read as much as I can about MAME ROMs and ROMSETs, I still don't fully understand the logic between ROMSET versions. As described in the RetroPie Wiki "Managing ROMs", I think I have understand the thing with "parents" and "clones". I also know something about "merged", "non-merged" and "split" MAME ROMSETs.

            But; refering to the "Manage ROMs" page, each MAME emulator needs it's specifig ROMSET version, e.g. lr-fba needs 0.154. Why there exists ROMSETs with version 0.151, 0.152, 0.153 and so on, if no emulator uses it?

            the emulators do exist - every romset version is a version of MAME - see http://wiki.mamedev.org/index.php/Previous_MAME_Versions

            for retropie, there are only a few key versions which have been able to be used on the raspberry pi.

            Thanks! That clarifies a lot.
            May I ask, how they "increase" a ROMSET version, let's say from 0.151 to 0.152? I cannot imagine that they read out again the ROM chips on the Arcade boards...

            Regards,
            Roman

            dankcushionsD caver01C 2 Replies Last reply Reply Quote 0
            • dankcushionsD
              dankcushions Global Moderator @RK.aus.S
              last edited by

              @RK.aus.S said in Didn't fully understand the "logic" between ROMSET versions:

              May I ask, how they "increase" a ROMSET version, let's say from 0.151 to 0.152? I cannot imagine that they read out again the ROM chips on the Arcade boards...

              from what i've seen, mostly it's just adding new games and clones to the romset, but occasionally they do refactor how the roms and files within are named, and even change the dumps they use for each file name, etc. i think between two current versions, you could probably use the same romset and it would be fine, but the versions we have are mostly over a decade old that they almost certainly won't be compatible with any current mame roms.

              1 Reply Last reply Reply Quote 0
              • caver01C
                caver01 @RK.aus.S
                last edited by

                @RK.aus.S I second what dankcushions said. Case in point: I started building my first pi-based arcade around AdvanceMAME (1.2, 1.3, 1.4). I was using a complete .106 romset as required by this version of MAME. Later, I started using RetroPie and I saw the benefits of using lr-mame2003 and CRT shaders. For simplicity's sake, I tried using the .106 roms and I have found that I can MOSTLY get away with that, even though mame2003 is based on an older .78 romset. That's because the roms I want to play hadn't really changed from .78 to .106. There are exceptions--.78 roms that did change, so I need to keep track of things and use the correct set if I am going to submit specific questions here, or troubleshoot some configuration.

                I suspect there are plenty of users out there who don't spend as much time as I do documenting everything for their build. They get a rom, try it, and if it works, they move on, but there is a fair amount of activity on the forums about romsets and MAME versions, so you are going to be a lot better off now that you have that foundation of understanding.

                My 4-player cocktail style cabinet built as a custom "roadcase"

                1 Reply Last reply Reply Quote 0
                • RK.aus.SR
                  RK.aus.S
                  last edited by

                  Thanks a lot, dankcushions and caver01.
                  I'm glad to get answers to (maybe) sometimes special questions in this Forum.

                  Kind regards.

                  1 Reply Last reply Reply Quote 1
                  • Meneer JansenM
                    Meneer Jansen
                    last edited by

                    I was very confused about this too. Here's how I see it.

                    I was used to having just a few roms of my favorite games that I played during my childhood (i.e. Donkey Kong, Pac Man etc.). I've had these for years (say, since 1998 or so). They are singe zip files w/ the images of the various read-only-memory (rom) chips on the plastic circuit boards (pcb's) inside the actual vintage machine from the arcade hall. Most arcade hall machines back in the day were based on just a few different "models" (just like computers). They were'n unique: they only had different games running on them. That's something I didn't realize a a child.

                    Then the Mame guys started supporting more and more more machines and roms. The complete rom list expanded and expanded. So they decided to move rom chips that are not unique to a particular game game out of the zip files. So you would need only one image of that particular rom (which does not contain a game) and a few smaller roms in zip format that contain the game-specific rom images. Example: Galaga.zip and Namco51.zip

                    And then they realized that there are so many variations of popular games (i.e. bootlegs and clones) that that too caused the complete rom set to be too bloated. So they defined parent and clone roms. A parent is for example Donkey Kong and a clone is Crazy Kong (I might be wrong here, but for "example's sake" I'll keep it like this). So if you don't have Donkey Kong's rom you cannot play Crazy Kong. However, if you want you can merge these again into the clones and that's where the merged", "non-merged" and "split" story comes in.

                    To make a long story short: your old roms from the 90's and 00's will probably not work w/ modern Mame versions. And to make things even more complicated: if you download complete rom-sets from the internet then the roms are in the "parent/clone" form (to save space). However, if you download single roms from a certain illegal rom-site then they work "standalone" (again: insert merged/split story here). But the roms there are always for the latest Mame version.

                    RetroPie is made for the Raspberry Pi which is a computer that is not powerful enough to run the latest and greatest version of Mame. So they have to resort to older Mame variants and versions that do run on the Pi (mame4all etc.). Obtaining a rom-set for these specific Mame versions is a real pain in the ***, if not impossible. Luckily there circulates a rom set in the illegal torrent community of version 0.78 (which I tink was uploaded just for us RetroPie users). You can also try to convert one rom-set into another w/ clrmamepro as explaned on the RetroPie wiki.

                    P.S.1 My ancient ver. 0.37 rom-set: 2 GB. The latest ver. 0.172: 42 GB!!!! That's why I stick to my old set. (search for "MAME 0.37b11_Full romset GP2X_Wiz MAME 2.0")

                    P.S.2 Insert story about (audio) samples and roms here. ;-)

                    P.S. 3 Insert story 'bout artwork and Mame versions here. ;-)

                    Avid Linux user.

                    D 1 Reply Last reply Reply Quote 0
                    • RiverstormR
                      Riverstorm @RK.aus.S
                      last edited by Riverstorm

                      @RK.aus.S said in Didn't fully understand the "logic" between ROMSET versions:

                      Why there exists ROMSETs with version 0.151, 0.152, 0.153 and so on, if no emulator uses it?

                      Every few months a new version of MAME is released. MAME itself is actually a command line emulator.

                      EVERY new release requires a new set of ROM's. The ROM sets are basically named after the MAME release version. So MAME version 0.151 requires the 0.151 ROM set, MAME version 0.152 requires the 0.152 ROM set, MAME version 0.153 requires the 0.153 ROM set, etc. if that makes sense.

                      And I've read somewhere that one can need all such versions in order one gets what one wants?

                      You made need multiple versions of ROM sets to complete one set simply because some ROM files change, or are added or are no longer needed as each version is released.

                      How are this versions "linked" to each other? How do they "work together"?

                      Every version of MAME is not linked in any way. They are a complete standalone version of MAME.

                      What they do have in common is the ROM files. Some ROM files stay the same from version to version. Some files are "bad dump" or "no dump" but they later find a good dump or cleaner/better dump. They might also change the name(s) of ROM files to better suit the chips or PCB layout. Possibly the CRC of the ROM file is the same but they just changed the name. Another thing is the may find a ROM file is no longer needed due to better emulation code and techniques. The same with sound samples as the emulator improves "chipset" emulation you might no longer need a certain sound sample.

                      Basically MAME is evolving and changing all the time. When they release new versions of MAME you need to generate a new DAT file from the executable. Then you may use a ROM management program to verify your set. You have to think of every version of MAME as a standalone emulator. Basically an improved version of itself with new additions and tweaks. It's like any software you use that is incrementing it's version number after changes and improvements.

                      For example when updating your ROM set after a new version of MAME is released. You would probably use your current ROMs and you might join the torrent at 90% or more. A lot of times only a handful of files change between versions. So definitely many of the same ROMs are carried over from version to version with some possible additions and changes.

                      But; refering to the "Manage ROMs" page, each MAME emulator needs it's specifig ROMSET version, e.g. lr-fba needs 0.154. Why there exists ROMSETs with version 0.151, 0.152, 0.153 and so on, if no emulator uses it?

                      MAME keeps churning out new versions all the time and FBA was written to use ROM set 0.154. Remember ROM files are specific to each version. It could be the same file (CRC check) with a different name or it could also be a completely different file (CRC check) with the same name. The point being is each ROM set has specifically named files and FBA was written to use those files with that exact ROM set.

                      At one point people did use 0.151, 0.152, 0.153 but unless you have a reason (like this project) to use an old version there's no point. These are just older versions of MAME.

                      This project is focused on older specific emulator and ROM set versions, front-ends, etc. and improving those specific versions/features that work well on the Pi. As the project evolves and the Pi performance improves so will the MAME versions along with more current ROM sets.

                      1 Reply Last reply Reply Quote 0
                      • FloobF
                        Floob
                        last edited by

                        You may find it easier to use the latest (or most recent you can find) mame romsets then build the set you need with clrmamepro.
                        You can do this with a "rollback" romset. The current one is about 8GB

                        That way you dont have to hunt around for specifics.

                        Please read the Docs before asking a new question.
                        RetroPie Help Guides: https://goo.gl/3gcNsT

                        RiverstormR caver01C 2 Replies Last reply Reply Quote 0
                        • RiverstormR
                          Riverstorm @Floob
                          last edited by

                          @Floob said in Didn't fully understand the "logic" between ROMSET versions:

                          You may find it easier to use the latest (or most recent you can find) mame romsets then build the set you need with clrmamepro.
                          You can do this with a "rollback" romset. The current one is about 8GB

                          I actually do that. I wasn't sure if that would be confusing to add the term rollback ROMs to the picture. If you keep your MAME set current it's an amazing thing to have handy for switching versions! :)

                          1 Reply Last reply Reply Quote 0
                          • caver01C
                            caver01 @Floob
                            last edited by

                            @Floob said in Didn't fully understand the "logic" between ROMSET versions:

                            You may find it easier to use the latest (or most recent you can find) mame romsets then build the set you need with clrmamepro.
                            You can do this with a "rollback" romset. The current one is about 8GB

                            But to be clear, to build a complete set this way, you need both--you need to start with a complete current set and you need the rollback set. You can't build earlier versions with just the 8GB rollback set because it only contains the ROMs that were changed/removed.

                            My 4-player cocktail style cabinet built as a custom "roadcase"

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

                              @caver01 said in Didn't fully understand the "logic" between ROMSET versions:

                              @Floob said in Didn't fully understand the "logic" between ROMSET versions:

                              You may find it easier to use the latest (or most recent you can find) mame romsets then build the set you need with clrmamepro.
                              You can do this with a "rollback" romset. The current one is about 8GB

                              But to be clear, to build a complete set this way, you need both--you need to start with a complete current set and you need the rollback set. You can't build earlier versions with just the 8GB rollback set because it only contains the ROMs that were changed/removed.

                              That's an interesting thought.

                              I always keep my set up to date but in theory I think you would be fine as a rollback set is cumulative so the changes should be additions to the rollback and static. So as long as it's newer than the set your trying to rebuild and the target rebuild set is older than the current base set you're starting with.

                              The base ROM set would need to be complete. You could make assumptions that a missing file would be contained in the rollback set as it's the only rebuild source but that's probably not a good idea.

                              I am trying to think of an exception where it wouldn't work. I don't think the rollback contains added files so it would seem to stand you would need a current set or rely on luck it contains the needed additions. The base set you're working with would need all the new additions plus the rollback to upgrade. Downgrading a complete set should be a breeze as all changed files, renames and removals are in the rollback?

                              1 Reply Last reply Reply Quote 0
                              • FloobF
                                Floob
                                last edited by

                                Yes, all removals are in the rollback set. The current roms remain in the current set, so you should be able to roll back to any set previous to your current version, (assuming your rollback set is also from your current version).

                                Or you can just throw as many romsets that you have at clrmamepro and tell it to rebuild from a given dat file and that may well sort 99% of it. Better to do it properly though :)

                                Please read the Docs before asking a new question.
                                RetroPie Help Guides: https://goo.gl/3gcNsT

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

                                  @Floob said in Didn't fully understand the "logic" between ROMSET versions:

                                  Yes, all removals are in the rollback set. The current roms remain in the current set, so you should be able to roll back to any set previous to your current version, (assuming your rollback set is also from your current version).

                                  Or you can just throw as many romsets that you have at clrmamepro and tell it to rebuild from a given dat file and that may well sort 99% of it. Better to do it properly though :)

                                  I agree. I was thinking another scenario that would work is if you have say the current MAME 0.175 rollback ROMs and a complete ROM 0.106 set you should be able to rollback to 0.78 with no issues.

                                  They key being the rollback is "newer" and the starting base source set is a complete set.

                                  caver01C 1 Reply Last reply Reply Quote 0
                                  • caver01C
                                    caver01 @Riverstorm
                                    last edited by

                                    @Riverstorm said in Didn't fully understand the "logic" between ROMSET versions:

                                    I agree. I was thinking another scenario that would work is if you have say the current MAME 0.175 rollback ROMs and a complete ROM 0.106 set you should be able to rollback to 0.78 with no issues.

                                    They key being the rollback is "newer" and the starting base source set is a complete set.

                                    That's only true if you are rolling back from the base. It won't work 100% if you are rolling back from the rollback. In other words, if you have a rollback set that is => the base set you have, you can rollback to a set before your base. But you can't "meet in the middle" and roll forward from your base and back from a rollback. For example, say you have a complete .37b5, and a rollback from .175. You probably can't build a complete .106 because your starting base is too old.

                                    If someone is reading this and wondering what the heck difference it makes--if you are looking for the minimum download to build a complete set (that you cannot find outright), you should be OK downloading any complete base set that is newer than the one you want to build, PLUS any complete rollback set that is the same or newer than your complete base set. This should let you rollback to every set older than your base set.

                                    My 4-player cocktail style cabinet built as a custom "roadcase"

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

                                      @caver01 said in Didn't fully understand the "logic" between ROMSET versions:

                                      @Riverstorm said in Didn't fully understand the "logic" between ROMSET versions:

                                      I agree. I was thinking another scenario that would work is if you have say the current MAME 0.175 rollback ROMs and a complete ROM 0.106 set you should be able to rollback to 0.78 with no issues.

                                      They key being the rollback is "newer" and the starting base source set is a complete set.

                                      That's only true if you are rolling back from the base. It won't work 100% if you are rolling back from the rollback. In other words, if you have a rollback set that is => the base set you have, you can rollback to a set before your base. But you can't "meet in the middle" and roll forward from your base and back from a rollback. For example, say you have a complete .37b5, and a rollback from .175. You probably can't build a complete .106 because your starting base is too old.

                                      If someone is reading this and wondering what the heck difference it makes--if you are looking for the minimum download to build a complete set (that you cannot find outright), you should be OK downloading any complete base set that is newer than the one you want to build, PLUS any complete rollback set that is the same or newer than your complete base set. This should let you rollback to every set older than your base set.

                                      Exactly that's what I was trying to say in the earlier post. You can easily go backwards but not so easily forwards with a set as the rollback does have limitations.

                                      On a side note if you converted a 0.175 set to 0.106, 0.78 or 0.37b5 you should be able to get back to 0.175 if you haven't deleted your backup directory by default all deletions/removals are saved there when using ClrMamePro. :)

                                      caver01C 1 Reply Last reply Reply Quote 0
                                      • caver01C
                                        caver01 @Riverstorm
                                        last edited by caver01

                                        @Riverstorm Yeah, your example was consistent with what I was saying. I just wanted to be clear about minimum requirements for someone reading this trying to build a specific set that they can't find.

                                        I wish it wasn't so complicated, but I can appreciate how the MAME devs are leveraging existing ROM files across multiple .zip archives. Once you recognize the scale and scope of evolving ROMsets, this really is the most efficient way to maintain versions of these assets.

                                        My 4-player cocktail style cabinet built as a custom "roadcase"

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

                                          @caver01 said in Didn't fully understand the "logic" between ROMSET versions:

                                          @Riverstorm I just wanted to be clear about minimum requirements for someone reading this trying to build a specific set that they can't find.

                                          Yeah if you wanted to cover all scenarios with RetroPie it would require 0.173 and the rollback due to lr-fba-next which is only 2 versions from what is current. The FBA emulators are really current.

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            dazza @Meneer Jansen
                                            last edited by dazza

                                            @Meneer-Jansen MAME 0.37b11_Full romset GP2X_Wiz MAME 2.0") question please. New to pi. Does this romset work in mame4all by just inserting the zip files? Sorry I'm an absolute beginer. Do I have to change the mame version etc to get the set to work?

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