mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support
-
Whoops i forgot to hook up the player 2 controls for Opa Opa and Tetris it's done now via my latest commit.
-
I did pull request with the new catver.ini ( 1,493 additions and 1,197 deletions). I used WinMerge and the information looks more complete, as well as, new entries.
-
@Riverstorm said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
I did pull request with the new catver.ini ( 1,493 additions and 1,197 deletions). I used WinMerge and the information looks more complete, as well as, new entries.
Nice one!!
-
Right the next thing i need doin is for someone to please update the datfile so all the new roms are supported any takers.??
https://github.com/libretro/mame2003-plus-libretro/blob/master/metadata/mame2003-plus.xml
-
@arcadez2003 said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
Right the next thing i need doin is for someone to please update the datfile so all the new roms are supported any takers.??
Some good news and some bad news. I was looking at the existing DAT compared to the new DAT and I'm seeing the new entries for the games added. The bad news is oddities like below using T.A.N.K. and Lunar Rescue as examples.
Some of the DAT entries are being severely cut down to nothing as shown below with T.A.N.K.
In the Lunar Rescue example all the samples are renamed as shown below. Samples are picky on the naming convention. Unlike ROMs which really can be named anything in the zip and the game will load based off hash. I wonder if we can have Grant take a look to tweak the auto-generator as some of the detailed information, dip switch settings, etc. is incomplete.
T.A.N.K. in the new DAT:
<game name="tnk3j" cloneof="tnk3" romof="tnk3"> <description>T.A.N.K. (Japan)</description> <year>1985</year> <manufacturer>SNK</manufacturer> <rom name="p1.4e" size="16384" crc="03aca147" sha1="9ce4cfdfbd22f10e13c8e474dc2e5aa3bfd57e0b" region="cpu1" offset="0"/>
T.A.N.K. in the old DAT:
<game name="tnk3j" cloneof="tnk3" romof="tnk3"> <description>T.A.N.K. (Japan)</description> <year>1985</year> <manufacturer>SNK</manufacturer> <rom name="p1.4e" size="16384" crc="03aca147" sha1="9ce4cfdfbd22f10e13c8e474dc2e5aa3bfd57e0b" region="cpu1" offset="0"/> <rom name="tnk3-p2.bin" merge="tnk3-p2.bin" size="16384" crc="0ae0a483" sha1="6a1ba86da4fd75bfb00855db04eac2727ec4159e" region="cpu1" offset="4000"/> <rom name="tnk3-p3.bin" merge="tnk3-p3.bin" size="16384" crc="d16dd4db" sha1="dcbc61251c13e11ce3cdd7a5ad200cd2d2758cab" region="cpu1" offset="8000"/> <rom name="tnk3-p4.bin" merge="tnk3-p4.bin" size="16384" crc="01b45a90" sha1="85ba3b157cd6463c92ed831bb48d38f3a16f9537" region="cpu2" offset="0"/> <rom name="tnk3-p5.bin" merge="tnk3-p5.bin" size="16384" crc="60db6667" sha1="9c4bb99473c6d9b8ac9086b7364b6278b70757f6" region="cpu2" offset="4000"/> <rom name="tnk3-p6.bin" merge="tnk3-p6.bin" size="16384" crc="4761fde7" sha1="dadf60e33f5dd8108478ca480bcef6b2624cfca8" region="cpu2" offset="8000"/> <rom name="tnk3-p10.bin" merge="tnk3-p10.bin" size="16384" crc="7bf0a517" sha1="0197feeaf511ac59f3df8195ec57e947fb08e995" region="cpu3" offset="0"/> <rom name="tnk3-p11.bin" merge="tnk3-p11.bin" size="16384" crc="0569ce27" sha1="7aa73f57ad97445ce5729f05cd8d24973886dbf5" region="cpu3" offset="4000"/> <rom name="7122.2" merge="7122.2" size="1024" crc="34c06bc6" sha1="bb68e96a8fcc754840420952dab961e03bf6acdd" region="proms" offset="0"/> <rom name="7122.1" merge="7122.1" size="1024" crc="6d0ac66a" sha1="e792218ec43dd10473dc020afed8527cf43ea0d0" region="proms" offset="400"/> <rom name="7122.0" merge="7122.0" size="1024" crc="4662b4c8" sha1="391c2b8a17ce2e092b46a17fc4170dc1e3bde426" region="proms" offset="800"/> <rom name="p14.1e" size="8192" crc="6bd575ca" sha1="446bb929fa19a7ff8b92731f71ab3e3252899f07" region="gfx1" dispose="yes" offset="0"/> <rom name="tnk3-p12.bin" merge="tnk3-p12.bin" size="16384" crc="ff495a16" sha1="e6b97a63efe58018260ff34f0ea4edc81718cb14" region="gfx2" dispose="yes" offset="0"/> <rom name="tnk3-p13.bin" merge="tnk3-p13.bin" size="16384" crc="f8344843" sha1="c741dc84b48f830f6d4eaa4476f5c2a391153acc" region="gfx2" dispose="yes" offset="4000"/> <rom name="tnk3-p7.bin" merge="tnk3-p7.bin" size="16384" crc="06b92c88" sha1="b39c2cc4a58937d89f9b0c9093b9742509db64a3" region="gfx3" dispose="yes" offset="0"/> <rom name="tnk3-p8.bin" merge="tnk3-p8.bin" size="16384" crc="63d0e2eb" sha1="96182639bb620d9692a4c8266130769c44dd29f8" region="gfx3" dispose="yes" offset="8000"/> <rom name="tnk3-p9.bin" merge="tnk3-p9.bin" size="16384" crc="872e3fac" sha1="98e7e9315fe7ccc51151c67dc60a362a1c2d8372" region="gfx3" dispose="yes" offset="10000"/> <chip type="cpu" name="Z80" clock="4000000"/> <chip type="cpu" name="Z80" clock="4000000"/> <chip type="cpu" soundonly="yes" name="Z80" clock="4000000"/> <chip type="audio" name="YM3526" clock="4000000"/> <video screen="raster" orientation="vertical" width="216" height="288" aspectx="3" aspecty="4" refresh="60.000000"/> <sound channels="1"/> <input players="2" control="dial" buttons="2" coins="2"/> <dipswitch name="Walk everywhere"> </dipswitch> <dipswitch name="Cabinet"> <dipvalue name="Upright" default="yes"/> <dipvalue name="Cocktail"/> </dipswitch> <dipswitch name="Lives"> <dipvalue name="3" default="yes"/> <dipvalue name="5"/> </dipswitch> <dipswitch name="Coinage"> <dipvalue name="3 Coins/1 Credit"/> <dipvalue name="2 Coins/1 Credit"/> <dipvalue name="1 Coin/1 Credit" default="yes"/> <dipvalue name="1 Coin/2 Credits"/> <dipvalue name="1 Coin/3 Credits"/> <dipvalue name="Free Play"/> </dipswitch> <dipswitch name="Bonus Life"> <dipvalue name="20k 60k" default="yes"/> <dipvalue name="40k 90k"/> <dipvalue name="50k 120k"/> <dipvalue name="None"/> </dipswitch> <dipswitch name="Bonus Occurrence"> <dipvalue name="1st & every 2nd" default="yes"/> <dipvalue name="1st & 2nd only"/> </dipswitch> <dipswitch name="Difficulty"> <dipvalue name="Easy?" default="yes"/> <dipvalue name="Normal?"/> <dipvalue name="Hard?"/> <dipvalue name="Hardest?"/> </dipswitch> <dipswitch name="Game Mode"> <dipvalue name="Demo Sounds Off"/> <dipvalue name="Demo Sounds On" default="yes"/> <dipvalue name="Freeze"/> <dipvalue name="Infinite Lives"/> </dipswitch> <dipswitch name="Flip Screen"> <dipvalue name="Off" default="yes"/> <dipvalue name="On"/> </dipswitch> <dipswitch name="Unknown"> <dipvalue name="Off" default="yes"/> <dipvalue name="On"/> </dipswitch> <dipswitch name="Allow Continue"> <dipvalue name="No"/> <dipvalue name="Yes" default="yes"/> </dipswitch> <driver status="good" color="good" sound="good" palettesize="1024"/> </game>
Lunar Rescue in new DAT:
<game name="lrescue" sampleof="invaders"> <description>Lunar Rescue</description> <year>1979</year> <manufacturer>Taito</manufacturer> <rom name="lrescue.1" size="2048" crc="2bbc4778" sha1="0167f1ac1501ab0b4c4e555023fa5efed59d56ae" region="cpu1" offset="0"/> <rom name="lrescue.2" size="2048" crc="49e79706" sha1="bed675bb97d59ae0132c007ccead0d096ed2ddf1" region="cpu1" offset="800"/> <rom name="lrescue.3" size="2048" crc="1ac969be" sha1="67ac47f45b9fa5c530bf6047bb7d5776b52847be" region="cpu1" offset="1000"/> <rom name="lrescue.4" size="2048" crc="782fee3c" sha1="668295e9d6d99084bb4e7c5491f00fe75f4f5a88" region="cpu1" offset="1800"/> <rom name="lrescue.5" size="2048" crc="58fde8bc" sha1="663665ac5254204c1eba18357d9867034eae55eb" region="cpu1" offset="4000"/> <rom name="lrescue.6" size="2048" crc="bfb0f65d" sha1="ea0943d764a16094b6e2289f62ef117c9f838c98" region="cpu1" offset="4800"/> <rom name="7643-1.cpu" size="1024" crc="8b2e38de" sha1="d6a757be31c3a179d31bd3709e71f9e38ec632e9" region="proms" offset="0"/> <sample name="1.wav"/> <sample name="2.wav"/> <sample name="3.wav"/> <sample name="4.wav"/> <sample name="5.wav"/> <sample name="6.wav"/> <sample name="7.wav"/> <sample name="8.wav"/> <sample name="9.wav"/>
Lunar Rescue in old DAT:
<game name="lrescue"> <description>Lunar Rescue</description> <year>1979</year> <manufacturer>Taito</manufacturer> <rom name="lrescue.1" size="2048" crc="2bbc4778" sha1="0167f1ac1501ab0b4c4e555023fa5efed59d56ae" region="cpu1" offset="0"/> <rom name="lrescue.2" size="2048" crc="49e79706" sha1="bed675bb97d59ae0132c007ccead0d096ed2ddf1" region="cpu1" offset="800"/> <rom name="lrescue.3" size="2048" crc="1ac969be" sha1="67ac47f45b9fa5c530bf6047bb7d5776b52847be" region="cpu1" offset="1000"/> <rom name="lrescue.4" size="2048" crc="782fee3c" sha1="668295e9d6d99084bb4e7c5491f00fe75f4f5a88" region="cpu1" offset="1800"/> <rom name="lrescue.5" size="2048" crc="58fde8bc" sha1="663665ac5254204c1eba18357d9867034eae55eb" region="cpu1" offset="4000"/> <rom name="lrescue.6" size="2048" crc="bfb0f65d" sha1="ea0943d764a16094b6e2289f62ef117c9f838c98" region="cpu1" offset="4800"/> <rom name="7643-1.cpu" size="1024" crc="8b2e38de" sha1="d6a757be31c3a179d31bd3709e71f9e38ec632e9" region="proms" offset="0"/> <sample name="alienexplosion"/> <sample name="rescueshipexplosion"/> <sample name="beamgun"/> <sample name="thrust"/> <sample name="bonus2"/> <sample name="bonus3"/> <sample name="shootingstar"/> <sample name="stepl"/> <sample name="steph"/>
-
Hello, I've been pointed in this direction for my little problem with lr-mame2003-plus. Running on Pi4, RetroPie 4.6.2 updated about a week ago. The tab key isn't bringing up the MAME menu, and wondered if it was something to do with the mappings from keyboard to retroarch, i.e. the keyboard isn't registering anything that wasn't originally mapped on ES when I started - tab does nothing, and the only way to get the MAME menu to show was through the retroarch GUI... once in, only assigned keys would work, e.g. because I don't use the del key for anything it just didn't see it. This makes configuring input a little tricky, understandably! Does anyone have any ideas?
-
@TedMaul said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
Hello, I've been pointed in this direction for my little problem with lr-mame2003-plus. Running on Pi4, RetroPie 4.6.2 updated about a week ago. The tab key isn't bringing up the MAME menu, and wondered if it was something to do with the mappings from keyboard to retroarch, i.e. the keyboard isn't registering anything that wasn't originally mapped on ES when I started - tab does nothing, and the only way to get the MAME menu to show was through the retroarch GUI... once in, only assigned keys would work, e.g. because I don't use the del key for anything it just didn't see it. This makes configuring input a little tricky, understandably! Does anyone have any ideas?
Quick menu --> Options --> Input interface: (retropad|mame_keyboard|simultaneous) <-- set to Simultaneous
-
This post is deleted! -
@barbudreadmon said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
@arcadez2003 said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
https://github.com/libretro/mame2003-plus-libretro/issues/531
That one wouldn't help at all actually, it's x86_64 only.
Supposing someone would be interested in this, is old MAME code compatible with GPLv2 code ? If so there are several arm mips3 drc that might be reusable (mupen64, pcsx-rearmed, ...).This is the only thing I could find on licensing for mame2003plus - https://raw.githubusercontent.com/libretro/mame2003-plus-libretro/master/LICENSE.md
As you stated this would probably be the best bet for the arm dynarec needed - https://github.com/pcercuei/lightrec
As for dev interest in this that’s something I can’t speak to. I am not a dev and I have very little exposure to coding.
-
@markwkidd @Riverstorm @grant2258 @arcadez2003 @barbudreadmon @pjft
After some talk back and fort with markwkidd & Wildstorm about games marked as Categorized in the old catver.ini and searching thru 728 drivers in src/drivers/ for games marked as "GAME_NOT_WORKING" the new and hopefully last update before the Pull requests is finished.
-
@Rion - I appreciate the work put into the file. Nicely done!
@arcadez2003 - Sorry, I talked to Grant and he was able to explain some things and the best way to handle them, everything looks fine. The new games should be correct when using the TAB menu to auto-generate the DAT.
I don't know if you're still paying attention to the issues on m3plus but I think I'm making more of mess than helping trying to update my fork and get the PR submitted correctly.
I also don't quite understand the hierarchy. Such as fork the repo and then use branches for the updates to keep the PR's separate, then merge them to my fork. Everytime I do a commit to my fork it's bundled with the first PR instead of separate PR's.
As of now they are all in one, including my fork update PR. Where I switched the head and base
masteraround trying to pull the latest updates into my fork. You can't update your fork without making it PR request to the master repo? Basically I just wanted to resync my fork. I don't quite know what I'm doing or I would submit the updates.Basically I don't want to tork off a bunch of folks that are running the m3plus core because of my lack of knowledge and excessive un-squashed/reverted commits. I tried to learn it but I'm still missing a few fundamental pieces to make it all go.
-
@Riverstorm said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
@Rion - I appreciate the work put into the file. Nicely done!
@arcadez2003 - Sorry, I talked to Grant and he was able to explain some things and the best way to handle them, everything looks fine. The new games should be correct when using the TAB menu to auto-generate the DAT.
I don't know if you're still paying attention to the issues on m3plus but I think I'm making more of mess than helping trying to update my fork and get the PR submitted correctly.
I also don't quite understand the hierarchy. Such as fork the repo and then use branches for the updates to keep the PR's separate, then merge them to my fork. Everytime I do a commit to my fork it's bundled with the first PR instead of separate PR's.
As of now they are all in one, including my fork update PR. Where I switched the head and base
masteraround trying to pull the latest updates into my fork. You can't update your fork without making it PR request to the master repo? Basically I just wanted to resync my fork. I don't quite know what I'm doing or I would submit the updates.Basically I don't want to tork off a bunch of folks that are running the m3plus core because of my lack of knowledge and excessive un-squashed/reverted commits. I tried to learn it but I'm still missing a few fundamental pieces to make it all go.
Your asking the wrong guy honestly, i dont know much about the in's and out's of the git TBH, i just edit a file one at a time in the main branch the git makes the change
in my fork then i push it to mainline it seems to work 99% of the time :) -
@arcadez2003 - lol...your honesty is refreshing so I don't look like a complete idiot as I'm sure for the guru's this is elementary stuff here! ;) I am struggling a bit but would like to help with the metadata once I figure out how it works. The DAT has to many changes/to large to do direct edits which I think I understand how to do those. The same for the catver.ini.
I did submit a clean PR on the catver.ini by directly editing the fork but all other new commits on the fork went to the same PR. I think that's where I went wrong. New branch for each PR. Not to mention updating the fork. I closed the first PR, trashed the fork and re-forked with the updates. I just wanted to sync my fork but no joy on how to do it from the website.
Anyway I honestly tried to understand the off line workflow and put in the time for sure trying. I think I am close but I jut have to take a break and regroup but I can't find the answers I need to understand.
I have to give props to Grant also, he banged out the list of commands with short explanations and said do that and it should work. I know he's tough but he does know his stuff.
I know folks don't want to sit around and have a school day explaining the in and outs but sometimes just letting it sink in really helps, we'll see.
Just to clarify, nothing was wrong with the DAT. Grant said don't use WinMerge due to how it compares or the algorithm is throwing things off. I used Notepad++ to view it straight up and things look exactly correct as they should with the new games you just added.
-
Same here.
I have no idea how to submit a Pull Request. But the catver.ini is finished and I apparently made a big bobo and uploaded an older version before so that's not good. Sorry to everyone that filtered your roms with the older version.
4920 Individual entries with non working games marked as Uncategorized.
Would someone be so kind to make a Pull Request so that this can be added to github?
-
@Rion said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
Sorry to everyone that filtered your roms with the older version.
That would be me (I did it right before your first release and once again with @Riverstorm's version yesterday), but hey, that's what we retrogaming people do anyway when we get bored because our systems actually got "finished"™ so all that is left left would be to actually play the games. 😁
Thank you and the others here for your praiseworthy contributions!
-
Yea i know.. Sorry again.
Hopefully this will make it a little bit easier. In the same share as the catver.ini there is a folder example of how to set up you category's. 21 folders with 169 under folders for the receptive category.
-
-
@Riverstorm said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
@arcadez2003 - lol...your honesty is refreshing so I don't look like a complete idiot as I'm sure for the guru's this is elementary stuff here! ;) I am struggling a bit but would like to help with the metadata once I figure out how it works. The DAT has to many changes/to large to do direct edits which I think I understand how to do those. The same for the catver.ini.
I did submit a clean PR on the catver.ini by directly editing the fork but all other new commits on the fork went to the same PR. I think that's where I went wrong. New branch for each PR. Not to mention updating the fork. I closed the first PR, trashed the fork and re-forked with the updates. I just wanted to sync my fork but no joy on how to do it from the website.
Anyway I honestly tried to understand the off line workflow and put in the time for sure trying. I think I am close but I jut have to take a break and regroup but I can't find the answers I need to understand.
I have to give props to Grant also, he banged out the list of commands with short explanations and said do that and it should work. I know he's tough but he does know his stuff.
I know folks don't want to sit around and have a school day explaining the in and outs but sometimes just letting it sink in really helps, we'll see.
Just to clarify, nothing was wrong with the DAT. Grant said don't use WinMerge due to how it compares or the algorithm is throwing things off. I used Notepad++ to view it straight up and things look exactly correct as they should with the new games you just added.
Yeah thats the problem the dat is too big to edit and push manually, if you try to do so it'll take so long as to make the github timeout while trying
upload the file, i lucked out and it worked once for me but it took many bites at the cherry, so im reluctant to try again less we end up without
a dat as the old one has to be removed firstly before adding a new one manually.As i said we need someone who has the github setup on their PC then they simply upload it to the site using the special github tools
at the end of the day if the worst comes to the worst and we cant find anyone willing to do it if im sent an up to date dat i'll try it again the risky way :) -
@arcadez2003 - Ok I took another crack (another bite at the cherry) at updating the DAT. I appreciate your humor getting through things. It's just taking time to get used to how Github does its workflow. I created a branch from the fork I pulled down to Github Desktop. Created the commit, pushed it back and submitted a pull request based off the branch.
I know the last PR I did sat for 2 months and it was a real simple cleanup of the DAT which still has that same issue. If this goes through I will clean up that custom OST for the sake of uniformity with the other OST's if this one goes through.
@Rion - I sincerely apologize for all the issues and really appreciate all the work (and patience) you put into the catver.ini, big accomplishment. If I can get the hang of it I promise to be of better help in the future! ;)
-
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.