mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support
-
@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, ...).Ok then no problem thanks for clearing that up, certainly i have no interest in this so it'll be upto someone else to pick up the baton
-
@Clyde 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:
@Clyde said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
Will the https://github.com/libretro/mame2003-plus-libretro/blob/master/metadata/mame2003-plus.xml be updated?
Well i dont have the tools to do it or it would have been done, someone will get around to it as for when who knows :)
Oh, I didn't know that it needs tools. I thought
lr-mame2003-plus
will generate it automatically via its tab menu entry "GENERATE XML DAT" from its internal drivers or so. What kind of tools are needed? (just curious)Well what i mean is by tools firstly you require to have github setup on your desktop in order to commit files of that size i cant be bothered setting all that up TBH,
and secondally i dont own any of the devices that MAME2003+ works on so i cannot as you say just generate the XML DAT or most of those meta data files anyhow.I must admit there is part of me that thinks i've knocked my pan in for three years solid backporting all that MAME and FBN code to the MAME2003+ core so ya's can all enjoy
a ton of new games with huge improvements to the emulation of many others also, all wrapped up in nice fastcore that for many of ya's is the only way you could even play
half of the games on many of the low spec devices MAME2003+ is aimed at in the first place.Is it too much to ask that some users of this core who might appreciate some of the work i've done step up to update a few files here and there for the good of the project
rather than chastise me all the time for the odd file or two being out of date, anyway as far as im concerned my latest commits will be my last to this project as i've moved
over to advanceMAME of late, so if anyone feels like lending a hand now would be the perfect time to update the files in this section of the core........https://github.com/libretro/mame2003-plus-libretro/tree/master/metadata
-
@Rion - I appreciate the head-ups on the new catver. I just grabbed a copy.
@arcadez2003
i've moved over to advanceMAME of late@arcadez2003 - Nice! So you'll be doing some work on AdvMAME? I've been testing 3.8 vs. 3.9 on the Pi 4 and both seem fairly slow but on a Pi 3 3.8 definitely runs much more smooth, whereas, 3.9 is slow. The older board with an older version is definitely the way to go if you want to run AdvMAME.
I would take a crack at updating the DAT file (or some of the others) but I need to talk to Grant (which might be difficult now that he's gone from here and from the core on Github). I have to admit I've learned quite a bit from him over the years.
I know I could manually modify the DAT and link up the parent/clones relationships but prefer to keep with what he had been doing. If it was manual modifications that's not so difficult as I was doing DAT's long before I ever started using Libretro cores.
On the other hand Twinaphex skipped right over my commit submitted back in May to clean up the custom Final Fight OST samples in the DAT. They are optional enhanced samples. After chatting on Github it was decided to remove them as being kind out of the scope vs. being required when building a ROM set (original game audio or samples still work fine and are required in the DAT). Considering no other custom OST samples are part of the DAT I would assume he just doesn't understand what the commit is doing. Basically it's just making it consistent with the other OST's after the FF commit.
BTW, I do really appreciate the work you've put into the core and know I'll be using it for years to come. I really want to try some of those stick games you modified for the core but I've been a bit stuck in a rut in a perpetual state of tweaking and I'm trying to find a good "cut off" so that I can actually take some time out to enjoy a bit of gaming more frequently.
Also getting a hold of Nintendo Switch is pretty much impossible here right now unless you want to resort to Bird Bot or similar. My wife doesn't game to often but she definitely has here niche games she really enjoys. One she really wants to give a go is Mario Kart 8 on the Switch.
She's quite good at the Mario Kart 64 on the N64 emu in RP. I don't cut her any slack and she still beats me 4 out of 5 games and she doesn't let me forget it as it's one of those few games she just has the slightest edge on me.
If there's anything you need help with just let me know. Is this the best way to get a hold of you with questions pertaining to updating miscellaneous files? Will you be frequenting the AdvMAME forums?
-
@REK607 said in mame2003-plus: hundreds of new games, improved input, features, new bugs - now with runahead support:
@arcadez2003it worked! I could finish the game with no problem, only it's a bit slower when you use the bomb and the screen is full of enemy bullets being converted to candy (I'm using the young witch). Brilliant as always, thank you :-)
Well being slower is no good!! so i've reverted the previous commit and just added a hack to prevent Gunbird 2 from crashing into the psikyosh driver directly.
this shouldn't affect the game speed. -
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.
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.