Hello guys, thought i would talk to you what i’m doing.
I’m just done working on doing remapping support for SMS Plus GX on the Bittboy. I decided for now not to do it for the RS-97 given that the code in question will need some changes.
Of course, there could be more improvements to it but it’s mostly related to the emulation core itself. I must be careful not to bloat the emulator though, hence why i am wondering if adding support for the Sord M5 is worth it…
I’m close to getting an initial version of Oswan working too.
Actually it’s not Oswan but more like a fork of libretro’s Mednafen core, itself based upon the older Cygne code.
The libretro fork still had some glue to it as to make it work without too much modifications to it but was mostly identical to upstream, with some exceptions.
They did a pretty good job with trimming it down but it was still C++ based and still had some bloat to it, so the first step was to remove the Mednafen related code that was not useful (most notably cheats) and then switch it to C.
I had decided to remove support for cheats given that :
- There are no cheats out there available for Wonderswan games.
- There are no games like Pokemon on it available so people don’t need cheats anyway.
- The cheat code was very C++ intensive and i saw no point of switching that to C.
I had worked on improving Oswan for the GCW0 before but unfortunately, that version had too many issues : the sound was widely inaccurate, the SDL sound code was utter crap and it just was a disaster.
Using Mednafen’s codebase at least guarantees me that i can easily merge back some fixes upstream. Ryphecha still works on Mednafen so this reassures me a bit on the front.
I did notice an issue with the v30mz emulation core though : it doesn’t support prefetch. There’s one game out there that relies on it and it’s Detective Conan. What Mednafen currently does is patching the game as to avoid the use on it. This may works fine for official games but if there’s a homebrew game out there that takes advantage of it then we are out of luck…
Oh well, prefetch emulation would considerably slow it down if implemented so i can see why this was not attempted. Maybe MAME’s v30mz core addresses this though but from what i’ve seen, not so far. From what i gather apparently it is poorly documented hence why nothing addressed it. (If higan’s wswan core addresses this then i’ll be curious to see it)
Now for the ugly part…
You see, ReGBA as it is does not work on the Ingenic JZ4760B, but it does on the Ingenic JZ4760.
The reason why is still unknown to me but the culprit is the MIPS recompiler. At the time, i was forced to rely on GPSP again as it would work on the JZ4760B.
TonyJih had fixed this but he never released the source code for it and never told me how to fix it.
I tried getting the source code from him but he wouldn’t budge and he’s rarely online.
In the meantime, people were pestering me about the lack of TV-Out on RetroFW.
When i had asked Tony about TV Out last time, he had told me he thought it was useless and it would increase memory usage so i merely stated this fact to other people.
I also told them that he did not give me the source to ReGBA so i can’t fix the issues that are inside.
Apparently, that rubbed him the wrong way.
Over on Discord, he gave me the middle finger and told me he will no longer work with me, saying i lack respect for him. He also stated that he deleted ReGBA’s source code from his computer.
Before you go on theories, i would like to state that i only reminded him personally once per 2 months about it and he would not go on to state as to why he refused to share the source code with me.
I reminded him about the GPLv2 and told him that i expected him to respect the code of honor. Maybe he took that as a threat but he’s not very communicative.
I wanted to address some of the issues with ReGBA and potentially merge fixes from TempGBA but i thought it would be pointless to do so if the emulator would not work on newer revisions, hence why i asked him for his fixed source code.
And there’s no way i can contribute code to it without, you know, the code.
If you wonder about ReGBA’s issues then i invite you to check out this list : ReGBA’s compatibility list
To be fair, some of these games don’t work on other emulators either. But there are bugs like Lufia’s intro that i wanted to address. (which is caused by the fact only one DMA can run at a time)
I was even more overjoyed when i learned that TempGBA PSP actually fixed some of these issues such as Hamtaro & KH.
TempGBA shares a lot of codebase with ReGBA so i thought we could merge fixes there. Unfortunately, whoever worked on TempGBA did not use versioning control nor did he document the fixes in question but still.
Tony removing the source code will mean that GBA emulation on the RS-97/LDK is far as it is going to go.
You may wonder why i did not look at VBA-M or mGBA instead.
Unfortunately, a MIPS32 processor clocked at 600 Mhz is not enough for these and that was after doing some cutting to both emulators.
I could actually get VBA-M to run somewhat okay but that still required a frameskip of 3 on dumb games like Sonic advance.
mGBA is running even slower unfortunately. That being said, they may have adressed some of the performance issues but it’s going to take a while if ever.
Hopefully this will change as more progress is done on either VBA-M or mGBA.
I know some people talked flak about VBA-M but so far with speedhacks, it was running faster for me than mGBA.
I’m also pretty confident that i can get either emulator (VBA-M or mGBA) up and running smoothly on the Retrostone 1 with some PGO among others.
For now though, i’m focused on getting my new Wonderswan fork up and running on the RS-97/Bittboy.
After that, you can be sure that i’ll try to focus on GBA emulation as a lot of people had issues with emulation there and some games are utterly broken.
But for now though, i’ll have to ask you to please be patient.
I know that you want to play Kingdom Hearts on your console without using workarounds but everyone is in the same shit, you just have to ask Raspberry Pi Zero owners about it…
He deserves credits where he’s due : his implementation of IPU in the kernel based on the GCW0 kernel.
But given that he had reused ReGBA’s source code, i had expected from him to at least share what he did to it.
Tony got what he wanted : i decided to leave the server.
He won’t have me to bother about it anymore.
If they don’t want the fix the issues in the emulators, it’s their problem.
As for anyone who insists on using TV out on the RS-97 :
Don’t bother me with that anymore !
Stick with the latest Useless firmware release and suck it up.
I’m sorry to say this but ultimately no one cares.
As for everyone else who cares about the state of emulation on those devices though, well, you are left out in the dust.
The whole saga left me a sour taste in my mouth…
..and that day, not a single fuck was given.