Skip to content
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

R4i Upgrade v 1.4 (www.r4-v.com) #115

Open
ghost opened this issue Dec 9, 2017 · 36 comments
Open

R4i Upgrade v 1.4 (www.r4-v.com) #115

ghost opened this issue Dec 9, 2017 · 36 comments

Comments

@ghost
Copy link

ghost commented Dec 9, 2017

I've used the new rewritten NDS Ntrboot flasher on my DS Lite.
The card gets recognized as part of the R4iSDHC family, but when I try to flash the FIRM (I use the Boot9strap_ntr.firm) it returns a "Failed to inject FIRM!" error.

Here's the debug.log from the flashcart's microSD card, here's the dump I got from the "Dump flash" option, here's the kernel for this flashcart, here's the dump I got via twopassdump and here's the dump I got from GodMode9

Images (Click to Expand)

Label
PCB Front
PCB Back
NDS
!!NOTE!!: The flashcart can't actually be used in a 3DS since it's blocked. I put it in my 3DS only because my DS Lite sometimes takes a lot of tries to read a card.

@BellezaEmporium
Copy link

BellezaEmporium commented Dec 10, 2017

For me, seems like a pure clone of R4i-SDHC cards yep, but something in this cart looks weird to me...

The chip (back) is like R4i-SDHC cards no doubt. But the front part does not look like at all like a R4i-SDHC card...

For this, might be some instruction change. Try DSTT and see if the result is good.

@ghost
Copy link
Author

ghost commented Dec 10, 2017

@ShadixAced if it's a clone, then why can't the ntr flasher inject the FIRM?

@BellezaEmporium
Copy link

Maybe because the chip does not recognise them, or might have been changed by the R4-V team, which looks weird to me.

@BellezaEmporium
Copy link

Or maybe it's a NOR problem ? You haven't done a GM9 / D9 flash dump though

@ghost
Copy link
Author

ghost commented Dec 10, 2017

@ShadixAced I can't, I don't have a modded 3DS. But I did do a dump via the dump option in the new NDS ntrboot flasher

@BellezaEmporium
Copy link

Oh yes my bad. Did you try DSTT ?

@ghost
Copy link
Author

ghost commented Dec 10, 2017

@ShadixAced it only recognizes it as a R4 SDHC

@BellezaEmporium
Copy link

Okay. That's weird considering that he was recognized. Do not know if the NDS file work correctly. The flash might protect himself from flashing or might be a read issue.

@ghost
Copy link
Author

ghost commented Dec 10, 2017

@ShadixAced I posted the log file too

@BellezaEmporium
Copy link

Saw it, it is a NOR issue, that it does not end or start by FF.

@jason0597
Copy link
Contributor

@ShadixAced I did try my best to make it so that there is minimal interference from other factors like kernel, sd init, fat mount etc. However I cannot guarantee that having the kernel run and do it’s thing before running the nds flasher, won’t affect it at all

@BellezaEmporium
Copy link

@jason0597 At least I've saw you did a great work, but yep, might be one part of your code that might have interfered with @zacchi4k 's flashcart.

@zacchi4k Try to dump your cart, and @jason0597 if you know a lot about flashcart updater or how the NOR works, well will be a good source.

@jason0597
Copy link
Contributor

jason0597 commented Dec 10, 2017

unfortunately i'm not that experienced with how the r4isdhc works, or in general arm and arm assembly

@pixel-stuck
Copy link
Collaborator

pixel-stuck commented Dec 10, 2017 via email

@pixel-stuck
Copy link
Collaborator

Also, can you get us the numbers on the chip? It appears they burned some of them off, but something might end up being useful

@ghost
Copy link
Author

ghost commented Dec 11, 2017

@ShadixAced
I did already dump my flashcart with the dump option in the flasher, but now I did a dump with dsflashcartdump
@dark-samus here's the log.

Here are the labels on the chips:
Back labeled
Front labeled

I put a black rectangle where they put something on the chip, although it LOOKS like there wasn't actually anything written below

!NOTE! I did use a DSi for this, since my DS Lite doesn't want to read this flashcart anymore for some reason

@pixel-stuck
Copy link
Collaborator

Indeed, this seems to be a DSTT clone. It gets what appears to be a valid flash chip ID, but likely we just don't support that flashchip currently

@ghost
Copy link
Author

ghost commented Dec 12, 2017

@dark-samus I followed this guide to install YSMenu, and indeed, this cart needs to use the "DSTTi-Clone" folder, so yeah...
How hard would it be to add support?

@pixel-stuck
Copy link
Collaborator

Well, first things first, we needed to know what flashchip it is. The text you provided from the big chip gave me that. Punching some of the text into Google got me a datasheet, which in turn gives me the flash commands. From there it's figuring a few things out. Block size, chip ID (which you provided with the log), among some other things. After that it's just doing the work of integrating it into the DSTT code

@pixel-stuck
Copy link
Collaborator

Also; lol, the dump from dsflashcart dump is literally all zeros...

@ghost
Copy link
Author

ghost commented Dec 13, 2017

@dark-samus is there some way I could help you with the other things needed to know?

@pixel-stuck
Copy link
Collaborator

pixel-stuck commented Dec 13, 2017

@zacchi4k just try this build for me. This one will only read the flash, it won't restore or inject ntrboot
ntrboot_flasher.zip

@jason0597
Copy link
Contributor

@dark-samus i don't think they have a hacked 3ds

@ghost
Copy link
Author

ghost commented Dec 13, 2017

@dark-samus I don't have a modded 3DS, so I can only use .nds flashers. Sorry :/

@pixel-stuck
Copy link
Collaborator

ah, well, I can compile a DS version :)

@pixel-stuck
Copy link
Collaborator

pixel-stuck commented Dec 13, 2017

@jason0597 trying to compile your version I'm getting an error, which makes perfect sense, I'm just not sure how it made it to git or if I'm missing something here...

ntrboot_flasher_nds/source/menu.cpp:122:4: error: 'breakCondition' was not declared in this scope
breakCondition = true;

EDIT: looks like this commit just forgot to remove it: jason0597/ntrboot_flasher_nds@7c5a8bf probably just a return, huh?

@pixel-stuck
Copy link
Collaborator

@zacchi4k whenever you're ready... Do NOT attempt to restore the flash or inject ntrboot yet, this should just read flash.

ntrboot_flasher_nds.zip

@jason0597
Copy link
Contributor

jason0597 commented Dec 13, 2017

@dark-samus ah yes that was a bad commit, i'll fix it now
silly mistake

@pixel-stuck
Copy link
Collaborator

@jason0597 I usually run all my commits through a "make" before pushing to git, catches a lot of silly mistakes ;)

@jason0597
Copy link
Contributor

@dark-samus how did you get your binary to be so small? it's 50kb smaller than the one i make

@pixel-stuck
Copy link
Collaborator

@jason0597 possibly using an outdated version of dkP

@ghost
Copy link
Author

ghost commented Dec 14, 2017

@dark-samus It still says flashcart setup failed, Here's the log
Could it be that the chip ID changes every time you boot the card??

@pixel-stuck
Copy link
Collaborator

@zacchi4k yeah, it probably is a DSTTi rather than just a DSTT... Might need different code to support it tbh.

@ghost
Copy link
Author

ghost commented Dec 14, 2017

So support shouldn't be excepted anytime soon? What about a separate flasher designed for this cart (or all DSTTi and clones?) which ignores the chip ID?

@pixel-stuck
Copy link
Collaborator

pixel-stuck commented Dec 14, 2017 via email

@ghost
Copy link
Author

ghost commented Dec 28, 2017

I managed to mod my 3DS with another flashcart, and I was able to dump the cart with both twopassdump and GM9

Here's the twopassdump dump (the dumper shows raw_chipid: FC2 even when dumping the cart multiple times), and here's the GM9 dump

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants