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 277.4k 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.
    • G
      grant2258 Banned @Riverstorm
      last edited by grant2258

      @riverstorm

      hiya mate is the way mame outputs the nodump there is no crc and sha1 and thats the way it should be the hydra prototypes are both missing dumps as well as chinagat (parent rom). These games borrow other sets roms to work so they are considered badumps for that set . See the latest mame does it the same way to keep the parent clone relationship. It makes extra files if your using spilt sets that are not needed. It also causes merge errors . If it makes you feel better ill make you a data with no tags in for your personal use. The only other alternative is remove the prototypes because they both missing roms or make the prototype unplayable

      latest mame

      https://github.com/mamedev/mame/blob/master/src/mame/drivers/atarig1.cpp

      line 670 hydrap2

      someone posted a issue about two set being missing on the github im sure arcadez will add them back

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

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

        These games borrow other sets roms to work so they are considered badumps for that set .

        It's been real and it's been interesting but not real interesting. :) If you can borrow set roms and make it (hydrap2) work then it might become an instant classic for me! ;) I'll be the first in line to test it.

        In the first revision removing them was your answer. (I think I would have left them as "no dump" as long as the parent is working.)

        The second revision you marked the 19 "no dump" ROMs files as "bad dump" and pulled them down from the parent. Again I would have just left them as "no dump" so they align with the original lr-mame2003 DAT and it reflects proper.

        As it sits now over half your ROM files (19 to be exact) are not original. You can call it a hack or hybrid or hacked prototype or hacked hybrid prototype or whatever feels comfortable for you but it doesn't seem that important to get a, as far as know, unpopular prototype working.

        No need to create a special DAT. You know that's only a flag and has no bearing on the set build unless certain options are enabled? If you can get it working why change the flags to "no dump". You understand how ClrMamePro works?

        Also just because it's flagged as "no dump" (in the DAT) doesn't mean you can't keep the parent/clone relationship. Of course "no dump" doesn't have a crc or sha1 because one doesn't exist.

        I guess you can give a go and we'll see what you can do.

        Cheers, mate! ;)

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

          @riverstorm

          I know how clrmame works im not coming at it from clrmame pro im coming at it from mame. If you mark nodump in mame the dat wont output the crcs and you loose the parent clone relationship when building the roms. Thats why your loosing the parent/child relationship which is using the roms from hydra from the prototypes(the errors on the original dat). Im my first revision yes i removed the nodumps and said the drivers needed fixed and i fixed the drivers and put the no dumps back in at your request of being a quick fix.

          ps the nodump borrows there roms from hydra as bad merges its what the drivers is doing as bad way originally. Im not sure what your issue is

          what really confuses me is your happy to say nothing about hydrap doing this the way it originally was

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

            If you wish to see a good example of parent/clone relationship with "no dump" ROMs as part of the set check out hydra and hydrap2 in the lr-mame2003 DAT. It's a good example and implemented proper the way it should be. Known files have the correct field information and "no dumps" are marked accordingly.

            Thats why your loosing the parent/child relationship which is using the roms from hydra from the prototypes(the errors on the original dat).

            This is only partially true. When working in "full merge" mode. Reread the warning you still not understanding it. You don't loose the parent/clone relationship in split or non-merged with hydra and hydrap2 the warning is ONLY for full merged mode but again this is still irrelevant due to the fact they are "no dump" ROMs and no ROM file exists to add to the parent in full merge mode. The error warning is a bit cyclic but it is true and how it presents itself.

            If you mark nodump in mame the dat wont output the crcs

            Of course it can't output the crc because it doesn't exist. In addition you wrote the commit to not process "no dump" flagged ROMs.

            I think whoever created the 0.78 DAT did it correctly. You should be able to do the same or they can help with the code to get a proper DAT output? They added in the known ROM file information (name, size, crc, hash) and added "no dump" to the unknown ROMs because the information was not known at the time of DAT creation. Hence see hydra & hydrap2 in the lr-mame2003 DAT on how that works.

            I respectfully am going to bow out here as this is doing no good and if you edit that post one time it might explode!

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

              @riverstorm

              https://github.com/grant2258/mame2003-libretro/commits/master/metadata/MAME 0.78 XML.dat

              mark edited this file to fix it originally. There is no new files with the fix hydra fix and the parent clone is correct form split sets it the way this roms should be with what i changed.

              you should take this subject up with mark if you believe the bad merges are right again it was hand edited to be fixed before as well as chinagat to be fixed

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

                https://retropie.org.uk/forum/topic/16833/mame-2003-gamelist-xml-with-data-from-the-binary/54

                maxbeanzM 1 Reply Last reply Reply Quote 0
                • maxbeanzM
                  maxbeanz @grant2258
                  last edited by

                  Could you also put a Samples DAT for mame2003plus on the Github so we can get an exact set ?

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

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

                    Could you also put a Samples DAT for mame2003plus on the Github so we can get an exact set ?

                    Samples are already built into the DAT. If you only want Samples just uncheck Sets, ROMs & CHDs in the Scanner and it should work fine. You have to set a Samples directory so they will be built in there own directory separate from the ROMs.

                    maxbeanzM 1 Reply Last reply Reply Quote 0
                    • maxbeanzM
                      maxbeanz @Riverstorm
                      last edited by maxbeanz

                      @riverstorm It does, thanks. It doesn't seem to delete uneeded ones though. I could put a copy of dkong.zip and it doesn't delete it. I'll have to check the filenames of all the games it detects and make sure there are no surplass.

                      EDIT: All done now.

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

                        @riverstorm It doesn't seem to delete uneeded ones though.

                        It doesn't delete them? I am not quite sure what you mean.

                        Samples are an odd when processed. They have no hash value so if you have the correct name with an incorrect sample it will accept it as valid.

                        It should remove extra samples that are not part of a set. Say dkongjr.zip contains dkstomp.wav (unneeded sample for that set) it will remove it from dkongjr.zip.

                        Also it removes incorrect sets altogether (a sample set that is not part of the samples i.e. - rocket.zip or something for example that doesn't exist in mame2003-plus).

                        The thing it does not do is say dkong.zip is missing dkstomp.wav but dkongjr.zip contains dkstomp.wav. It will remove it from dkongjr.zip but it will not add it to dkong.zip. So you can run ClrMamePro to clean up unneeded samples but then you have to manually add the missing ones back if that makes sense. Even a Rebuild with the correct path/backup path will not add them back to the correct set.

                        This is only with Samples and not ROMs though.

                        maxbeanzM 1 Reply Last reply Reply Quote 0
                        • maxbeanzM
                          maxbeanz @Riverstorm
                          last edited by

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

                          @riverstorm It doesn't seem to delete uneeded ones though.

                          It doesn't delete them? I am not quite sure what you mean.

                          Samples are an odd when processed. They have no hash value so if you have the correct name with an incorrect sample it will accept it as valid.

                          It should remove extra samples that are not part of a set. Say dkongjr.zip contains dkstomp.wav (unneeded sample for that set) it will remove it from dkongjr.zip.

                          Also it removes incorrect sets altogether (a sample set that is not part of the samples i.e. - rocket.zip or something for example that doesn't exist in mame2003-plus).

                          The thing it does not do is say dkong.zip is missing dkstomp.wav but dkongjr.zip contains dkstomp.wav. It will remove it from dkongjr.zip but it will not add it to dkong.zip. So you can run ClrMamePro to clean up unneeded samples but then you have to manually add the missing ones back if that makes sense. Even a Rebuild with the correct path/backup path will not add them back to the correct set.

                          This is only with Samples and not ROMs though.

                          This is exactly why I think a Samples DAT should be included :) It will be easier to assemble a full correct set of samples for mame2003plus.

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

                            You mean add hash values and then create a set like a regular ROM set so it adds/removes samples automatically? Samples then would probably look like a ROM set when processing.

                            I've never tried adding hash values or seen them added to the actual sample set in the DAT to see what it would do like automate it. Usually Twisty's has all the current correct samples for downloading.

                            1 Reply Last reply Reply Quote 0
                            • maxbeanzM
                              maxbeanz
                              last edited by maxbeanz

                              Do we have to enable cheats manually somehow in 2003plus ? If so, could you turn them on by default because you have to enable individual cheats in the menu anyway. Also, why is there a 'Generate XML Dat' in the MAME menu ? Is this a bug that's replaced the Cheat menu ? The Dat file is on Github anyway.

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

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

                                Do we have to enable cheats manually somehow in 2003plus ? If so, could you turn them on by default because you have to enable individual cheats in the menu anyway. Also, why is there a 'Generate XML Dat' in the MAME menu ? Is this a bug that's replaced the Cheat menu ? The Dat file is on Github anyway.

                                You still need to turn on cheats via the core options for mame2003-plus. Then you'll see them in the MAME Tab menu as with mame2003. Sometime soon-ish I will get around to enabling cheats by default like mame2003 which will skip the core options step.

                                The XML DAT generator is there for people who are doing up-to-the-minute testing of newly supported mame2003-plus romsets.

                                Unless you are testing nightly mame2003-plus builds you are fine to use the DAT that is already on github.

                                maxbeanzM 1 Reply Last reply Reply Quote 0
                                • maxbeanzM
                                  maxbeanz @markwkidd
                                  last edited by

                                  @markwkidd Thanks for the info. Is the Datfile on Github much different from a manually generated one then ? The Github dat says I have 3 games missing (4 roms) (hsf2a, kof2003d, svcchaos) which is what was stated elsewhere in this thread.

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

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

                                    The Github dat says I have 3 games missing (4 roms) (hsf2a, kof2003d, svcchaos) which is what was stated elsewhere in this thread.

                                    I've purposely been avoiding adding those few missing ROMs (4 total) also as they are not MAME official. Once Mark or Grant say they will become official ROMs or they will always be hacks then I'll add them in.

                                    @maxbeanz - I did some research last night but I have no idea why samples don't receive hashes. It's been that way since the beginning I believe. None of the tools even attempt to create hashes for samples. I don't know if they assume samples are easy to obtain and don't change much. Maybe someone with better MAME institutional knowledge could answer it.

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

                                      i guess samples are not static files like roms. they could be re-recorded at better fidelity, etc. the names of the files should remain the same, though.

                                      1 Reply Last reply Reply Quote 0
                                      • maxbeanzM
                                        maxbeanz @Riverstorm
                                        last edited by maxbeanz

                                        @riverstorm Or if you know that you have a perfect samples set for 2003plus you could do a DIR2DAT using CLRMamePro which scans a selected directory and adds CRC's/SHA's (if selected) and spits out the DAT file.

                                        Also, did somebody make a Datfile of just the new and updated roms for 2003plus that are needed so I can add them to my filtered 2003 set ?

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

                                          My understanding about samples is that mamedev considers them like bezel images or any other assets which can't be validated digitally against the original like can be done with ROMs. The logic being that samples are therefore supported but no one set is 'endorsed' by adding it to the source in the driver.

                                          That being said, I personally think it sounds like a good idea to consider adding recommended sample crcs to mame2003-plus if there is a consensus about what sample sets are good.

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

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

                                            Also, did somebody make a Datfile of just the new and updated roms for 2003plus that are needed so I can add them to my filtered 2003 set ?

                                            Here's the samples from Twisty's I used with mame2003-plus (processed with the DAT so all of them are named and packed in the proper zip). I am using enhanced unofficial samples where possible.

                                            It has complete CRC and SHA1 information. I imported the ROM header information from the main DAT so a missing ROM from a set will show as "Astro Blaster (version 3)" vs. "astrob".

                                            The year/manufacturer is based on the ROM set and not who actually made the sample or what year. Process it like a ROM set (Set and ROMs checked) and not samples. I would build it in a new folder and cross link to your original set until you feel comfortable it's correct before merging.

                                            I am ok with endorsing Twisty's samples but I do use the unofficial enhanced versions of some samples like (dkong, berzerk, invaders, qbert, rallyx, starcas, etc. ) he has listed on the site. I am ok with either though.

                                            Also, did somebody make a Datfile of just the new and updated roms for 2003plus that are needed so I can add them to my filtered 2003 set ?

                                            I've been thinking about this and I don't think it would be to hard if done in non-merged mode.

                                            My thought is to make a subset of mame2003-plus. This set would be around 1.5GB or so. You would be able to dump it in the ROM directory and play any new games or changed games from mame2003-plus only.

                                            Then if you want dump this subset into your main lr-mame2003 folder it would match exactly the mame2003-plus full set.

                                            One minor issue is lr-mame2003 has these two sets which don't exist in mame2003-plus. So it wouldn't hurt anything except they would be removed if processed with the mame2003-plus DAT. That way instead of like 28GB for the two sets it would be like 16GB or so.

                                            Only exist in lr-mame2003:

                                            • Cabal (US set 2) (cabal2)
                                            • Urashima Mahjong (urashima)

                                            I would rather wait until those 4 non official ROMs are decided on what to do. It would require processing the set a few times to do this but I don't think it would be to hard.

                                            @markwkidd - Do you know if you can add hash information to the sound sample sections of a DAT?

                                            <sample name="run01.wav"/>
                                            <sample name="run02.wav"/>
                                            <sample name="run03.wav"/>
                                            <sample name="jump.wav"/>
                                            <sample name="dkstomp.wav"/>
                                            
                                            maxbeanzM 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.