And so the final, most extreme approach, would be to expand upon our decapping efforts. We have 20x die scans, but the resolution is not enough to make out and reconstruct individual logic circuits from them, such as was done with the Visual 6502 project. That was done with the NES too: https://github.com/SourMesen/VisualNes
How SNES emulators got a few pixels from complete perfection
41–50 of 167 posts
Re: How SNES emulators got a few pixels from complete perfection
#42Interesting tangent from the article: >Today, SNES emulation is in a very good place. Barring unusual peripherals that are resistant to emulation (such as a light-sensor based golf club, an exercise bike, or a dial-up modem used to place real-money bets on live horse races in Japan), every officially licensed SNES title is fully playable I had to look up the 'dial-up modem' reference - apparently it's a Japan-only pe…
Nintendo had dial up modems and their own intranet in 37% of Japanese households in the mid 80s? How did I not know this was a thing.
That Wikipedia link says that the Famicom (NES) was in 37% of households. Nintendo only shipped 130,000 modems, a tiny percentage of the total Famicom units sold.
Re: How SNES emulators got a few pixels from complete perfection
#43It's sad that Nintendo doesn't seem to see this as an opportunity to earn free press and goodwill by simply releasing all the design documents, mask images, etc. The community is going to get there eventually without their help, but they could probably make it much faster and cheaper to get there. Doubly so because they sell products which almost certainly benefit from these open source emulation efforts.
Nintendo is still actively selling SNES games via Nintendo Switch Online, and as far as I know rolls their own emulator(s) for this rather than using existing open source ones as Sony did for the PS Classic, so I doubt this will happen any time soon.
The existing emulators are more than good enough to be replacements to the commercial offerings (and in most cases, a lot better... e.g. the lookahead rendering).
While what you suggest might be a factor in their actions, I don't think it's an especially good one.
As far as rolling their own emulators, I don't doubt that they do. But I do doubt that they're doing so without researching the existing open source emulators.
Re: How SNES emulators got a few pixels from complete perfection
#44Nintendo Switch Online subscription includes an "official" SNES emulator. How does it compare to BSNES, and would a decompilation of the emulator help with resolving the PPU issues?
Nintendo's emulators are usually equivalent to what the state of the art was 15-20 years ago. They have plenty of bugs, usually fixed with duct tape and game specific hacks. They are designed to run the set of games they sell and nothing else -- once you get out of what the QA team has explicitly tested, it's not uncommon to find unemulated or badly emulated hardware features.
Or, to put that another way: there's no real difference between a bug introduced by wrapping a game in an imperfect emulator, and a bug introduced during recompilation/porting/remastering of the game. Either way, you now have a new "variant" of the game with its own bugs, but one which is also a canonical, supported release of the game.
Interestingly, sometimes—because of one of these slight variances—the fastest [and so preferred] version of a game to speedrun, is a Nintendo-sanctioned emulated (e.g. Virtual Console) release of the game. It says something important, I think, that these releases of the game aren't automatically shunned by the speedrunning community, the way that runs of the game under an arbitrary emulator on someone's PC would be; but rather are just treated as their own separate category-set, in the same way the speedrunning community differentiates different region releases, or version releases, or port/remaster releases.
Re: How SNES emulators got a few pixels from complete perfection
#45Earlier quoted context omitted.
Lol, well they don't own the copyright of the header added by the original dumper in that case.
The header likely does not contain enough creative content to even be covered by copyright.
Re: How SNES emulators got a few pixels from complete perfection
#46Earlier quoted context omitted.
Yes! These are called flash carts (short for cartridge). Here is a popular one for SNES: https://www.amazon.com/dp/B0052URJKM Many people who stream older console games on twitch seem to use them as well as people who like to play romhacks.
Back when SNES was still current and flash memory chips were still relatively small and expensive, there were "copiers", which a few SNES enthusiasts still collect just like other vintage peripherals. These are larger devices that contain a floppy drive, DRAM, save RAM, and the necessary logic to provide the most common cartridge mappings. You would dump a cartridge to floppies and then load it into the DRAM to play…
Re: How SNES emulators got a few pixels from complete perfection
#47In the off chance anyone is able to help with this, I've set up a Discord channel (#ars) for coordination here: https://discord.gg/Fx7TfKh
Every member of the bsnes-emu project is on said server.
Thanks so much!
Re: How SNES emulators got a few pixels from complete perfection
#48Earlier quoted context omitted.
Nintendo's emulators are usually equivalent to what the state of the art was 15-20 years ago. They have plenty of bugs, usually fixed with duct tape and game specific hacks. They are designed to run the set of games they sell and nothing else -- once you get out of what the QA team has explicitly tested, it's not uncommon to find unemulated or badly emulated hardware features.
While all of Nintendo's official emulators are afaik made internally, it's interesting to note that Sony used an existing open source emulator (PCSX ReARMed) for their Playstation Classic. https://arstechnica.com/gaming/2018/11/sony-using-open-sourc...
I believe the consensus is that the NES classics on GBA were done using an open source emulator. The emulator itself was liberally licensed and I think someone asked the author's thoughts and they were 'ya, that's half the purpose of the license. i don't care'
Re: How SNES emulators got a few pixels from complete perfection
#49Earlier quoted context omitted.
It's just weird then that they put a header originally defined by pirates, and now otherwise only used by third party emulators. Including matching the even more informal parts of the header byte for byte with the most common dump of the ROM on the high seas.
I mean, you'd want to use a file format that would allow you to cross-test your emulator's behavior on the same ROM files against existing emulators' behavior on those ROM files. So you'd format your ROMs (which you dumped yourself) the way that existing emulators would expect them to be formatted.
Re: How SNES emulators got a few pixels from complete perfection
#50Earlier quoted context omitted.
Dolphin has support for two consoles: Gamecube and Wii. It supports both of them because the architectures are extremely similar. I don't get what you mean by "ease of programming model". Saturn/Playstation/N64 were the first to have games programmed primarily in C with libraries provided by the system developers. This generation is harder to emulate simply because the system architectures contain more chips connecte…
Nintendo consoles seem to always have the best emulators, likely due to being almost all exclusive games. Every nintendo console recently has had a working emulator before the end of the consoles life. I remember nintendo ds emulators adding support for games that had only just come out.
Apart from the latest consoles (the Wii U and the Switch), the worst-emulated Nintendo console is the Nintendo 64, which also had the strangest hardware (RAMBUS RAM, a general-purpose GPU, etc.)