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

    mame 2003 gamelist.xml with data from the binary

    Scheduled Pinned Locked Moved Ideas and Development
    mame2003
    58 Posts 6 Posters 12.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.
    • markwkiddM
      markwkidd
      last edited by

      Is there any reason not to just permanently add the generated Musashi source files to the mame2003 /src/cpu/m68000 folder?

      In other words, do we have to dynamically generate the Musashi code every time we build mame2003?

      G dankcushionsD 2 Replies Last reply Reply Quote 0
      • G
        grant2258 Banned @markwkidd
        last edited by grant2258

        @markwkidd

        no shoud be fine just make sure to copy all .c and .h files it should be good.

        Its only if you working on bugs or something updated in m68k_in.c the changes wont happen because m68kmake parses this file and spits out the freshly made files. posted above. again if someone is working on this core they should know that anyway . A quick fix is add the instuctions to compile it to to scriptmodules/libretrocores/lr-mame2003.sh if anythign is changed in the core.

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

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • G
            grant2258 Banned
            last edited by

            this is how the original make file does it

            compile generated C files for the 68000 emulator

            $(M68000_GENERATED_OBJS): $(OBJ)/cpu/m68000/m68kmake$(EXE)
            @echo Compiling $(subst .o,.c,$@)...
            $(CC) $(CDEFS) $(CFLAGSPEDANTIC) -c $*.c -o $@

            additional rule, because m68kcpu.c includes the generated m68kops.h :-/

            $(OBJ)/cpu/m68000/m68kcpu.o: $(OBJ)/cpu/m68000/m68kmake$(EXE)

            generate C source files for the 68000 emulator

            $(OBJ)/cpu/m68000/m68kmake$(EXE): src/cpu/m68000/m68kmake.c
            @echo M68K make $<...
            $(CC) $(CDEFS) $(CFLAGSPEDANTIC) -DDOS -o $(OBJ)/cpu/m68000/m68kmake$(EXE) $<
            @echo Generating M68K source files...
            $(OBJ)/cpu/m68000/m68kmake$(EXE) $(OBJ)/cpu/m68000 src/cpu/m68000/m68k_in.c

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

              this will be fine mark if it needs updated ill do it. I looked at the fba alpha they fixed it by using 3.32 mame2000 is using 3.1 so i think a few cores can do with the update if they have problems i dont imagine it will be getting updates too often anyway

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

                just pull it from here i already did the updates https://github.com/grant2258/mame2003-libretro

                there really isint that many differences its just the because of the ms dos crlfs

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

                  Well we can assume it will be added or a makefile will be done. Either way the core is fixed.

                  Here is a screenshot of what i did with the data we dumped to make a games list. I never added the number of players ill do that when i get time. Also notice the game rom names are right as well. This is great for people working on mame as well picking a game on if its working status. It also verifys the catver.ini .

                  ps this is how i found the golden axe issue so i might as well pick that game for the example.0_1521499252456_test.jpg

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

                    @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                    Here is a screenshot of what i did with the data we dumped to make a games list. I never added the number of players ill do that when i get time.

                    That's really slick the number of players would be great. I manually tweak my gamelist.xml files to add 4 players to the title of the game just so it's easier when a group is playing. Is there an easy way/steps to access this information? It has to beat running each game to know if it's working! :)

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

                      @riverstorm

                      details on post 10 just dowload it the data i dumped is in there so you dont need to get a dump.

                      then run python run.py

                      and itll make you the gamelist.xml

                      ill add the player counter i had that in my first version but i re done the code to use classes.

                      dont rely on unplayable being true thats the point of this. its to test if the information is right. Its more a developer thing to be honest it helps identify if a games status is wrong it can be reported and updated so we all have a better experience.

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

                        @riverstorm

                        added the players to gamelist.xml

                        also uploaded to github. I think this is a bad idea because im useless with github be we will see how we go. I know mamemagic is a terrible name lol

                        https://github.com/grant2258/mamemagic2003.git

                        0_1521546697688_players.png

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

                          @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                          added the players to gamelist.xml
                          also uploaded to github. I think this is a bad idea because im useless with github be we will see how we go. I know mamemagic is a terrible name lol

                          Nice, thanks, Mamemagic is as good as any handle, it's just fine. :)

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

                            @riverstorm np if you find any issues let me know

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

                              @markwkidd

                              hiya mark would like to finish this catver.ini update for you. Now we have to make a few choices. There is only 5 conflicts in the catver.ini. Thats the only ones that need marked in.

                              Aqua Rush (AQ1/VER.A) Unplayable / please verify and update flag in driver source
                              Die Hard Arcade (US) Unplayable / please verify and update flag in driver source
                              Free Kick (bootleg) Unplayable / please verify and update flag in driver source
                              Major League Unplayable / please verify and update flag in driver source
                              Run and Gun (World ver. EAA) Unplayable / please verify and update flag in driver source

                              now we are using your current catver.ini as the template. The new catver we spit out will mark lightgun and all the unplayable as default so all we have to do is bring the original catver.ini you used before adding the unplayables and lightguns and just add them 5 as unplayable and leave the rest to default genre list. Unplayable or lightgun are marked when the new carver.ini is made.

                              we could call the new catver.ini we make mame2003.ini and use the normal carver.ini to only mark games that need checked and verified and changed in the source

                              I will Update github source for Major League. It segafaults on mame 078 and mame 2003 it is an unplayable.

                              Free Kick (bootleg) is playable i think that ws just a miss match with original Free Kick romname

                              Run and Gun (World ver. EAA) works you just need to initialize the eeprom to do that hold down service mode and reset the game. its slow on the pie though but thats no reason to mark it unplayable for people using other systems. I imagine will need to do this on all versions

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

                                @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                                Aqua Rush (AQ1/VER.A) Unplayable / please verify and update flag in driver source
                                Die Hard Arcade (US) Unplayable / please verify and update flag in driver source
                                Free Kick (bootleg) Unplayable / please verify and update flag in driver source
                                Major League Unplayable / please verify and update flag in driver source
                                Run and Gun (World ver. EAA) Unplayable / please verify and update flag in driver source

                                I'm still here :) I've been away from home base this week. (And when I got back down to it yesterday, the first thing I did was push a patch that seriously broke RetroArch for a few hours.)

                                I did a round of MAME 0.78 testing on the romsets you listed:

                                • aquarush.zip works so the mame2003 source should not be marked as GAME_NOT_WORKING.
                                • diehard.zip has some kind of region protection/encryption happening and won't start. That will be updated to GAME_NOT_WORKING in the mame2003 source via my PR.
                                • freekick.zip has a bad dump warning and no video. It is already flagged as GAME_NOT_WORKING in the mame2003 source, and I get the correct warning screen when I try to load in mame2003.
                                • mjleague.zip crashes with an access violation. That will be updated to GAME_NOT_WORKING in the mame2003 source via my PR.

                                Here's that PR: https://github.com/libretro/mame2003-libretro/pull/344

                                File under Interesting:
                                rungun.zip does not pass the game's native self-check due to a bad ROM dump. I briefly looked through the MAME update history for this driver and it seems like maybe the driver code didn't change once a good dump was eventually found. In other words, it might be possible to get this game working simply by adding the appropriate ROM dump from a later MAME version. I'd like to try to do this before flagging it as unplayable.

                                I feel like I am still just dropping in and out on your project. I really hope to have some time this weekend to get totally aligned with you on how to complete the effort.

                                Thank you again.

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

                                  @markwkidd

                                  All roms listed marked as bad in the catver.ini not the mame source. I dont need any mame updates at the moment just want to get the catver updated then we can work on flagging the mame source ill explain it all when we have time.

                                  rungun does work you just need to hold the service key in then reset the game. All them hits are from the catver.ini not mame itself. freekick bootleg is marked as bad in the ini and it works dont edit it though because its all automated. Ill walk you though it all so itll make your life easier and anyone can help. i better catch some zzzs just finished another joyful night shift

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

                                    @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                                    rungun does work you just need to hold the service key in then reset the game.

                                    I have done some research. Later versions of MAME include a rungun.nv in the rungun.zip romset which avoids the need to hold down the service key and reset. Unfortunately MAME 0.78/mame2003 does not look for .nv files within the .zip -- although it could. Backporting that functionality is a bigger project than I want to take on at the moment.

                                    Look forward to talking with you again soon.

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

                                      @markwkidd said in mame 2003 gamelist.xml with data from the binary:

                                      @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                                      rungun does work you just need to hold the service key in then reset the game.

                                      I have done some research. Later versions of MAME include a rungun.nv in the rungun.zip romset which avoids the need to hold down the service key and reset. Unfortunately MAME 0.78/mame2003 does not look for .nv files within the .zip -- although it could. Backporting that functionality is a bigger project than I want to take on at the moment.

                                      Look forward to talking with you again soon.

                                      I think we can just add a section to the mame2003 docs for games that need a special setup.

                                      We cant really be messing with romsets in this version. The only other option would be to copy the nvram file but i think that would be a copyright issue in itself

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

                                        @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                                        @markwkidd said in mame 2003 gamelist.xml with data from the binary:

                                        @grant2258 said in mame 2003 gamelist.xml with data from the binary:

                                        rungun does work you just need to hold the service key in then reset the game.

                                        I have done some research. Later versions of MAME include a rungun.nv in the rungun.zip romset which avoids the need to hold down the service key and reset. Unfortunately MAME 0.78/mame2003 does not look for .nv files within the .zip -- although it could. Backporting that functionality is a bigger project than I want to take on at the moment.

                                        Look forward to talking with you again soon.

                                        I think we can just add a section to the mame2003 docs for games that need a special setup.

                                        We cant really be messing with romsets in this version. The only other option would be to copy the nvram file but i think that would be a copyright issue in itself

                                        Ehh.. we can totally mess with romsets in this version, if there is a good reason :). I can't wait for the expected merger with mame2003-plus, that will bring in quite a few changes to the romsets but lots of fixes and a few new titles.

                                        The other option I've been pondering is just as you say to copy the nvram itself. This is basically a memory map just like cheats.dat or hiscore.dat. Kind of like a savestate file. It's generated by MAME and only has meaning in the context of MAME. don't think there are copyright issues.

                                        The rungun.nv could be added to a new folder in github called, let's say, assets/nvram which scripts like RetroPie-setup could pre-install.

                                        That's kind of ugly and doesn't work as easily for other retroarch platforms but it's true to the way MAME 'fixed' the issue in mame2010 I think it would be an option. It would be easy.

                                        Well I know that game is not the focus of the project now! Sorry to digress!

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

                                          @markwkidd

                                          Well its all related to be honest but we know the status is working for that roms its just the best way to get the information to people.

                                          Well what i want to do is get all the current catver.ini unplayable that match a good status with game flags in the mame source (that was them 5 games listed). and update the source accordingly or remove the unplayable from catver.ini. After we that we can automate it without loosing any changes we have so far.

                                          Right now the magicmame does what its supposed too it will list all the none working games as unplayable as per mame driver flags and add the Lightgun as well. What its doing extra at the moment is parsing the the catver.ini unplayable added manually and printing a please verify if its marked good in the source.

                                          What i do need from you if possible is the original catver.ini with all the genres set right if you have that. So if i game gets fixed in the source flags the script will automatically set it right.

                                          I had a think about the best way to do this and have a plan and i will updated it and explain it 100% when its finished

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

                                            Was I correct in that diehard should be marked as GAME_NOT_WORKING? I couldn't find any indication that there was a 'service button' trick, or any other kind of trick, to get it to boot.

                                            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.