First post
This thread has the only purpose of encouraging the best coders that work on the emulation for the DS(i) to reconsider the idea of working on a better SNES emulator, since we have proof that this is possible (even though it is difficult). If you don’t care about this discussion or if you find it irrelevant to you for some reason, please don’t comment. Thank you.
So... here's a little story. Imagine having a child, and wanting to show him how handled gaming was back in your days. Your little boy has now discovered the DS, and he has fun with it like you did at his age. He likes Mario, and now comes the better part: you can install a lot of emulators on it just to play with him all the best retro Mario games in existence! That's right, you can play Super Mario Bros, Super Mario Kart... alright, not that one, Super Mario RPG... nope, it doesn't work. Well, at least it can play Super Mario World! You let your child play it, and... *crashes on the first boss*
That, my guys, is the current state of the SNES emulation on the DS and DSi, and the little boy in the story was just a metaphor for me discovering the SNES emulation and the bad effort that was put into SNEmulDS and lolSnes.
Now let's talk about SNEmulDS rebirth. That can be seen as an original idea, but at the same time as a lazy choice. Someone cannot just take a 2008 software (made even before the DSi release) and make a base out of it, the code is too messy. It's like you want to build a skyscraper without a foundation. And even if we try to see something good that has come out of this, we can only say that Megaman X2 and Megaman X3 are now compatible... Alright, great job, great job, nothing to say but WHO CARES, they are just two games out of hundreds of them.
Ok, don't get me wrong too early. I'm not a coder, but I know emulating the Super Nintendo is not quite simple, but another thing I know is that a lot of other projects like S8DS or GbaRunner have active development (made by the same person who created the original software, lol), and they have a decent emulation. The same thing, sadly, cannot be said when it comes to emulating the SNES, where the current state of emulation is THIS:
And for SNEmulDS (The current best one) the games supported mediocrely are not even the half of the compatibility list!
Why?? Why one of the best consoles with the best retro games ever made does not have a decent support but the "SeGa mAsTEr SySteM" does??
Alright, the moment of relief is over. Now let's talk about why I think making a new SNES emulator is possible. Even though I repeat it once again, I don't know anything about coding in general (someday I probably will, I'm only 18).
So one main reason why a ton of SNES games cannot be emulated perfectly on the DS is because it is not capable of emulating enchantment chips. These chips were built into the Super Nintendo cardtriges, and they cannot be emulated unless you make a patch specifically for these games (this is what @Coto did for Megaman X2 and X3). But a good patch can only be supported with better hardware than the DS one, and this is where a company called Supercard come in. There is only one good SNES emulator for the DS, which is CATSFC, but it's only available on the Supercard DSTWO, which is a rare card made specifically for emulation that has additional RAM and CPU, and it can be found pretty rarely to buy online (its cost is about 200 USD). This card is capable of emulating a lot of games compared to SNEmulDS because it can emulate the enchantment chips better due to its additional hardware. So my brain went like isn’t this the same thing the DSi has? So if it is possible to do it, it would only be possible on the DSi because it has a powerful hardware. Another proof for this is that the N64 cannot emulate the SNES either, and its specs are very similar to the DS. So I came to the conclusion that the DS won't ever be able to emulate the SNES properly without the DSTWO card.
Speaking of specs, what I've noticed during my research is that there is a comparison between the New 3DS emulating N64 and the possible DSi emulating SNES. They both are remakes of an older console, and that older console has similar hardware characteristics to the console which they're not capable of emulating perfectly. Also, I was recently comparing the number of times the DSi and the New 3DS are more powerful than the consoles they want to emulate: the New 3DS ram is 64 times bigger than the N64, and the CPU is 8,576 times faster than the N64; the DSi ram is 125 times bigger than the SNES, and the CPU is 37 times faster than the SNES (that is way more than the New 3DS with the N64).
Nintendo 64:
- RAM 4 MB
- CPU 93.75 MHz
New Nintendo 3DS:
- RAM 256 MB (64 times bigger)
- CPU 804 MHz (8,576 times faster)
Super Nintendo Entertainment System:
- RAM 0,128 MB
- CPU 3.58 MHz
Nintendo DSi:
- RAM 16 MB (125 times bigger)
- CPU 133 MHz (37 times faster)
- RAM 4 MB
- CPU 93.75 MHz
New Nintendo 3DS:
- RAM 256 MB (64 times bigger)
- CPU 804 MHz (8,576 times faster)
Super Nintendo Entertainment System:
- RAM 0,128 MB
- CPU 3.58 MHz
Nintendo DSi:
- RAM 16 MB (125 times bigger)
- CPU 133 MHz (37 times faster)
After all of this information, I really believe that if someone in this world has the dedication to make a better SNES emulator for the DSi, at least 75% of the games would run without any big problem whatsoever. After all, this is just my humble opinion on something that is about data processing, and I'm not familiar with it. If I had the competence and the time, I would create my own software and even my own hardware if I had the budget.
P.S. Edit:
I suggest everyone to read all the threadmarks (the important posts).
A developer who is really willing to make this attempt should be aware that doing this is incredibly difficult and requires a lot of dedication. Lastly, I wanted to share a list of some source codes that might help someone.
ZSNES: https://github.com/xyproto/zsnes
lolSnes: https://github.com/Arisotura/lolSnes
SNEmulDS: https://bitbucket.org/Coto88/snemulds
CATSFC: https://github.com/ShadauxCat/CATSFC
lolSnes: https://github.com/Arisotura/lolSnes
SNEmulDS: https://bitbucket.org/Coto88/snemulds
CATSFC: https://github.com/ShadauxCat/CATSFC
Last edited by Sarthix,