Spork Schivago wrote:
Different NANDs have different pinouts and everything, right? I'd imagine they're not too compatible.
"It depends". I would put my money on that the Spansion and Macronix are pin-compatible with each other. Otherwise this would require multiple PCB revisions designed by Nintendo and manufactured -- this costs more money. So, I would say it's more likely they're identical. The only way to know for sure is to review datasheets for both, assuming one can even find such. You may have to contact the chip manufacturers. If this is really something you're considering doing, then I strongly recommend you start that conversation with them now. Just ask politely for the datasheet for the specific model of chip used.
I believe the datasheet for the Macronix isn't that hard to find. The Spansion though, because no one actually gave me a part number, I can't begin looking for one. Good news though, I got my NES Classic today!!! Once I get back from my appointment, I'll begin working on it.
I was thinking that perhaps the Famicom Classic (or whatever they're calling it over in Japan / China) might use one chip and have a little bit different of a design and then the version sold in America might be using the other chip, having a little bit different of a design.
Spork Schivago wrote:
It doesn't matter too much now anyways. Once my NES Classic comes (tomorrow or maybe the next day), I was going to maybe pull the NAND and try dumping it but it seems we can just dump it while it's still in the NES. We can also write to it while it's still in the NES as well, so there's no need for me to pull the chip.
As far as I can tell, the flash chip used is OTP
, i.e. you won't be able to write to anything. Go right ahead and dump the thing using the serial/UART method -- I won't be surprised if a portion of it is encrypted.
I think you're right here on part of the NAND being encrypted. I remember reading someone who said the same, and implying they dumped it as well. I was reading how the key to decrypt it might be stored in the initrd image.
I'm not too certain about the NAND being read-only memory. I'll read your links when I get back. If I'm understanding everything correctly, once I boot into the proper FEL mode, I can dump the NAND using sunxi-fel and the read command. I'm thinking once I boot into the proper mode, I can just use sunxi-fel and the write command to write the NAND back.
If I can successfully dump the NAND using the UART method (which I'll try later), I'll just try writing it back. I see someone over in Japan got his own version of Linux running on the Famicom version. He dumped the NAND and was able to extract the initrd image, among other things. Then he was able to boot into his own version of Linux. With u-boot, I believe you can
load everything into RAM and boot that way, although it's not officially supported and from what I've read, isn't the easiest thing to do.http://www.denx.de/wiki/view/DULG/CanUB ... artedInRAM
There's a link to what I was talking about with the u-boot and starting it from RAM.
It would make sense, from a security point of view, if it was read-only though. It'd make it a bit harder to hack. I don't know a lot about NAND, but I do have some experience with PICs (Programmable Interrupt Controllers) and I know some of the PICs I've played with have configuration bits that I can set, that say stuff like don't allow reading of the chip, don't allow writing, etc.
Although people (and possibly Nintendo themselves) have said this system isn't upgradable, it very well might be, via USB. If the NAND chips have the ability to be put in some sort of read-only mode, maybe Nintendo didn't set it, so in the future, if they wanted to, they could release other games or system updates. The USB port can be used for more than just charging. If I understand everything correctly, I should be able to boot into FEL mode without using the UART at all and just hook the NES Classic up to my Linux box's USB port.
Also, it seems people have figured out a way to hook other controllers up to the NES Classic, like the Nintendo Wii controller, for example. I believe someone even managed to hook an SNES controller up to it. If you're interested, I can share the link. One of the "issues" people were writing about was to pick another game, they had to restart the NES Classic. Someone suggested that if they could hook a Wii controller up, they could just hit some button to go back to the main menu. It'd be interesting to see if this is true.