-
Notifications
You must be signed in to change notification settings - Fork 114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a Nintendo Wii version of MAME 2003 Plus to official RA Wii? (with split cores) #1416
Comments
We would gladly support split cores for the Wii, however I do not believe we currently have a dev with this system to help get it up and running. I believe there is however a mame2003+ wii project available elsewhere which maybe a good resource for us here to support it officially. |
Maybe this avaliable "Unofficial" MAME2003+ cores by Wiimpathy (with source code included) is what you're looking for?: |
You know since you guys are promoting the core and setting the targets on low end targets you should actually make these low end targets work for these platforms. psp, wii and possibly will need the core split up no point in keeping low end hardware attitudes to updates if people on this low end hardware cant use the cores in the first place. You also need to do some memory tricks for bigger games to work as well. Would be best if it was done in a sensible way that didnt mess capable platforms that have enough memory or youll end up with more slow downs than gains on more capable platforms. I would have in the past suggested to do so this on mame2000/mame4all but seems its viable for this core after a few discussions. A few cpu cores could be simplified and downgraded to make things faster of course compatibility will take a dive but backporting the 2000 cpu cores will boost these ole platforms and thats the aim of the game. The 68k has a definitive boost on mame2000. I wouldnt imagine this would cause any issues as its a pretty solid core even back then. |
@saulfabregwiivc https://github.com/saulfabregwiivc/MAME2003-Plus-Libretro-Wii |
@mahoneyt944 yeah i'm aware of this, i'm trying to implement Wiimpathy's modifications for get MAME2003+ working on Wii, but this time i cloned official latest Libretro upstream for try to add these. Unfortunately the new code doesn't compile the same way as the older MAME2003+ Wii cores compiled. To be specific: I think it's related to core code and not the Salamander/Griffin itself. If anyone want to help me with supporting latest MAME2003+ on Wii, feel free to collaborate and add PRs to my repo. |
Those errors are because you are missing files needed such as |
Ok, i have fixed some things, first i'm starting with the first split core (core A) for testing. I was going to ask: what libOGC version are you using for Wii builds? I'm interested in know what version so i can compile this correctly. |
I don't compile locally. However this info should be available through the buildbot. Here's the commit when I removed Wii from our build dfd49d6 These linked scripts should contain everything you need. https://github.com/libretro/RetroArch/tree/master/wii/libogc |
It looks like libOGC Release 1.8.17 if I'm reading that correctly |
nope, still errors at WPAD. |
After a brief tests with RetroArch code i can compile the other unmodified cores supported by the Wii without any trouble.
I think MAME2003+ has some code that causes conflict with WPAD input/declaration? |
Let me reach out and see if I can find someone who has more Wii compiling experience. |
Still waiting on some responses, have you tried compiling with -fPIC |
Here's a response I got from jd regarding this issue: I've never seen that particular error before, but it seems to be this: https://www.technovelty.org/c/relocation-truncated-to-fit-wtf.html
or
But I guess it depends on whether the wii toolchain supports those options... |
Tried to add the -fPIC flag to the Wii section of makefile, in the "PLATCFLAGS" section, as shown: Nintendo Wiielse ifeq ($(platform), wii) But it gives me the same result (error at WPAD), also the core library (.a file) is much larger than without the flag... even if using dkPPC r29. |
Fpic likely not correct then, how about jd's advice? |
@saulfabregwiivc I stripped the drivers from the core and left only Or download it below Can you test and let me know? |
I have tested this build with that game and it boots fine, but input is all messed up, and the game physics aren't the correct. Also, i'm forced to used Classic Controller/GCN controller, but can i just change the input to Wiimote only? In other words, we are close, but not quite there yet. I bet other games have good input, so can I ask you to compile a version with driver dkong? (This one i know the input works fine on MAME2003+ Wii unofficial core by Wiimpathy) |
Crazy climber is a game I happen to own which is why I picked it. It's not a game that would map well to a Wii mote since you need dual joysticks to play it, though I believe it could be played with the nunchuck attachment and dpad of the remote maybe? But never the less, it was a proof of concept...If it actually booted a game we're looking good 👍. I'm working on creating split cores to contain the full library. Though it's going to take me some time to divide things out. So updates to come soon. |
heres another file to try out with some more games. Pacman should be basic enough control wise. some of the roms may have had updates so make sure to use the correct romset as well. game list:
|
Tested this new build today. Also, still im forced to use Wii Classic Controller / GCN controller. Can't i just use Wiimote since some arcade games don't even need so many buttons? |
Try deleting your default.cfg file it will auto create a new one on next load. You may have an old one thats not compatible causing issues. likely if you've been using the old wii core. otherwise I would check the mame menu mappings to see that it's what you expect. |
good news though with the latest core. im going to continue to work on dividing out drivers |
btw on average how big were the mame2003+ cores Wiimpathy's made? I saw mame2000 was about 12mb I think so I've been trying to stay under that when building these here. |
i will try your suggestion and tell the results.
Between 5-8 MB of size (of the DOL files) per core were Wiimpathy's ones. |
I have deleted all the .cfg files of RetroArch (including the savefiles/mame2003-plus/default.cfg file), have reset to default settings from RetroArch Wii GUI, loaded Pac-Man, and now input works as should. Crazy Climber also has input working as should, but it has default mapping of 1st joystick (UP-DOWN) to left joystick, and 2nd joystick (LEFT-RIGHT) to the right joystick. In other words, input is working as should on all builds you have posted here. But... only one suggestion (by now)... any chance for modify RetroArch code for accept also Wiimote only for map inputs for games? For example Neo-Geo CD (NeoCD-Libretro core) controller has a joystick (which can be emulated with Wiimote's D-Pad) and only four buttons plus START/SELECT, which Wiimote also has four buttons (A,B,1,2) plus START(+)/SELECT(-). |
BTW some Wiimpathy's cores can overpass 8 MB of size, but not more of 10-11 MB per core. |
The biggest issue with Wii builds is that all the source files are tangled, so figuring out a manageable way to sort this is the biggest task. Wiimpathy's had a fair approach, but what I suspect they ran into was that there's always something that doesn't quite fit the bill. This means the Wii cores didn't have everything the normal build had available. I think my approach, and I'm brain storming here, will be to sort all the needed files for each and every driver that way you can build any driver individually, then I'll link each driver into groups (or split cores) to build for Wii and or any other core needing small executables. The trick there would be to include all the files, then sort for duplicates then build. |
Not sure what the issue is with Wii mote. But I'm sure it can be made to work if it doesn't. |
Here's a quick compilation of the drivers I have split so far, this includes all drivers 0 through A (note these haven't been assigned official core designations yet): Game list
|
@Wiimpathy |
Here's a batman core, interesting enough we have hooked up a super rare game to it, marble madness II, a game likely never played on the wii before. games |
Since i couldn't find a romset for MAME2003+ for Marble Madness II (marblmd2), i took latest MAME romset and rebuilt to MAME2003+ with ClrMAMEPro. And guess what? It works on Wii! If u have the time u could make a build for see how's the performance and status of the games wrally and wrally2. |
Wrally and wrally2 are listed as not working in this core. |
We dont have the CPU core for those unfortunately, but i hold onto some hope that an unprotected version The odds are likely long right enough but then again we did see a couple of Galeco sets with no protection |
@arcadez2003 Wonder if it could be patched around or memory dumped from another mame Edit: any info on how our recreated tables during init fair to newer video write decode methods? Seems to be easy enough to port but not sure its worth it. |
The answer to your first question is no chance the second im not sure really we'd have to look into it some time |
Hi there, is it still compilable on Wii? (with make platform=wii INCLUDE_DRV=drv_system32) |
It should work yes on a rebuild |
Good to know, thanks! BTW, if u have the time, I'd like to see the performance of Namco System 2 (namcos2) games on Wii on a specific driver build made for these games :) |
Yeah I can probably do that, took a little detour from split builds to work on system32 🙃. I'll get back to this soon |
@mahoneyt944 speaking of system32, I was positive about SegaSonic the Hedgehog, Golden Axe 2 and SlipStream when i was compiling this on the Wii... But sadly I dont see much difference :(
Is it just me, or these also affect other platforms? |
Pretty sure there are just Wii issues, though make sure you delete your old configs, any time you use an old version of mame2003+ the inputs will get messed up |
@mahoneyt944 thanks for your reply. I have repeated this like three times and still get those issues. I need confirmation of if these changes are applied to Wii too. |
Yes they share the same source files here so changes will all apply if you're building from the current master. |
Thanks for ur explanation. I'd like to instead let u to compile builds of these for me, for compare. Also, maybe i'm doing the compilation wrong? |
Sonic no longer crashes but we also likely have endian issues that need addressed for the Wii to work correctly. |
I'll build system32 real quick. |
Current build of system32, again may have endian issues with Wii. So idk if it will be better or not. |
Nope, still same issues i've described in this new build. Anyways, could u make a build for namcos2? I wanna see how's the performance on finallap, assault, marvland, ordyne, etc. |
namcos2 was having memory issues compiling into one file, So I split it into 2 files. I'll have to see if there's another solution but for now heres the builds. part1
part2
|
@mahoneyt944 thanks for these builds. Unfortunately all builds when i try to load a game, even with correct romsets, it just doesn't load them (when i load a romset, it black screens for a moment and then throws me to the RetroArch menu). Maybe also endian issues, or memory? IDK :P |
Seems like memory to me, maybe if I try a single game on a build? Idk |
Yes please. |
Here's finallap all by itself, if this won't go then the others probably won't either. |
it just crashed at DSI exception after loading a game :( |
Yeah unfortunately probably not going to work on the Wii |
#1696 moved here |
Look here: #247
Any chnace we can also play arcade games on Wii using the MAME2003+ emulator, but splitted in different cores?
Thanks :)
The text was updated successfully, but these errors were encountered: