N2DS SD card data management corruption?

Discussion in '3DS - Flashcards & Custom Firmwares' started by Androidian, Aug 24, 2019.

  1. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Oh, ok. I'll do that. Thanks. Btw, any chance that by doing this I will brick my N3DS.. again?
     
  2. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    Having custom firmware carries the inherit risk of bricking your 3DS firmware. It's the just nature of homebrew and hacking in general. You can mitigate risk by backing up your game saves + extdata and keeping an intact copy of the SysNAND *.bin image somewhere safe when shit goes south.

    ***

    I'm surprised your first kept SysNAND *.bin image was not intact when it failed to restore your 3DS firmware back to working order. Also, your 3DS database being damaged adds further speculation that something is corrupting your files..

    I hope you followed the directions from your original thread about copying everything off the card, reformatting it, and hardware testing that empty card in H2testw.
    The purpose of those initial steps is ensure the SD card you're using isn't fake / counterfeit / dying. A bad SD card spells trouble to all your data later down the road.
     
  3. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Yes, it is quite weird. I followed all steps on my original thread except about the Minitool partition wizard. I didn't really understand how to use it..

    — Posts automatically merged - Please don't double post! —

    But besides that, all tests showed that there is no hardware damage on the SD card
     
  4. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Ok, so I ran the fix movable.sed KeyY, it asked for a folder. I selected the 32 char. one. It is currently running the script. But what if past the 1 and a half hours it doesn't finish?
     
    Last edited by NoSnake221, Sep 4, 2019
  5. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Aaand yep. More than one hour and a half have passed since the script began running and it just kept on the same loop again and again I believe trying to find the movable.sed. I turned off the N3DS with no results. What now?
     
  6. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    You're supposed to allow the script to finish its 256 iterations when it tries to find the exact KeyY that matches the <ID0> subfolder. If no match is found, the script will tell you.

    Also, holding the (B) button brings up the option to quit the search run early. Turning off the n3DS during the loop has a small risk of corrupting the SD card.

    ***

    The Fix movable.sed KeyY has an explanation in the release page and top screen explaining how it doesn't work if your (target) 3DS system and its Nintendo 3DS folder was received from a System Transfer.

    Unless you have the original (source) 3DS system that gave that Nintendo 3DS folder to your n2DSXL, you'll need to find a 3DS buddy who added you to their Friend List so that (s)he can dump your Friend Code info using seedstarter.

    To decrypt and recover your library, you would need to perform:
     
    Last edited by TurdPooCharger, Sep 4, 2019
  7. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Oh ok. Then I will repeat the process and wait for the 256 iterations to finish. However, my 3DS system and its Nintendo 3DS folder weren't received from a System Transfer. They are the original ones. So this should work, shouldn't it?
     
  8. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    It should work unless you bought or received your n2DSXL second handed from a previous owner who got banned online and swapped out the LocalFriendCodeSeed_B. Or the n2DSXL was involved in an earlier System Transfer where it gave away its older Nintendo 3DS folder to a different system. There are ways to mess with the movable.sed's normal pattern of generating the KeyY.

    For no match found, look to my edited post #26 about SDTransfer.
     
  9. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Well, no. My New3DS wasn't bought from a previous owner. Could I get the link to your post #26? I'm sorta new here and can't seem to find it..
     
  10. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    You might not see the thread's post numbers on mobile browser or smartphone. Look four (4) posts above this one.
     
  11. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Ok, quite some time has passed since I began running the Fix KeyY script, and it just stays on the same loop over and over (See image). Is this normal? (Btw, I'm using a New3DS, not a New2DSXL)

    — Posts automatically merged - Please don't double post! —

    It just stops there at line of code 1329 and starts the loop again. Please help :(

    ----

    Ps: Sorry if I'm giving you a headache :(

    — Posts automatically merged - Please don't double post! —

    Oh, and also, when pressing the "B" button, no menu shows up or anything
     

    Attached Files:

  12. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    No, this isn't normal at all.

    Your n3DS is stuck in an infinite loop. During prechecks, it's failing to create dummy test movable.sed in this format:
    • <date>_<serial>_###_movable.sed
    Force turn off your n3DS.

    ***

    I believe your last attempt at restoring the SysNAND did not go as plan. See if GodMode9 recognizes your n3DS Serial number.
    • GodMode9 v1.8.0 → Press (HOME) button → More...System info
    The Serial should not be <unknown>; it should match what's found behind the n3DS upper screen plate like this.
     
    Last edited by TurdPooCharger, Sep 5, 2019
  13. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Yep. It is matching the same serial number that is found behind the upper screen plate.
     
  14. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Hello? I still need help please :(
     
  15. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    I didn't forget about you. Massive headache yesterday pulling down hurricane shutters, lol.

    :(

    I have a really bad feeling your SD card is going bad even though you tested it as being okay in H2testw.

    Starting at line 1319, here's the section of the script where you got stuck.

    Code:
    echo "Allow for 1.5 hours to complete the search.\nHold the (B) button to bring up quit option."
    
    # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ # ~ #
    
    set MOVABLE_FILE ""
    
    @FIX_MOVABLE_DIR
    
    findnot "$[GM9OUT]/$[DATESTAMP]_$[SERIAL]_???_movable.sed" MOVABLE_FILE
    
    if not fdummy $[MOVABLE_FILE] "01"
    end
    
    if find $[MOVABLE_FILE] NULL
            rm -o -s $[MOVABLE_FILE]
        else
            findnot "$[GM9OUT]/$[DATESTAMP]_UNKNOWN_???_movable.sed" MOVABLE_FILE
            goto FIX_MOVABLE_DIR
    end

    ****


    I'll break it down further for normal speak.

    Code:
    echo "Allow for 1.5 hours to complete the search.\nHold the (B) button to bring up quit option."
    Here's where the script mentions about the time it takes to find the KeyY and how to stop the run.


    Code:
    set MOVABLE_FILE ""
    Define the variable that will become the worked on movable.sed. It has no values.


    Code:
    @FIX_MOVABLE_DIR
    This is a pointer address. We'll get back to this later.


    Code:
    findnot "$[GM9OUT]/$[DATESTAMP]_$[SERIAL]_???_movable.sed" MOVABLE_FILE
    Here's where the script tells GodMode9 to find an unused file name at that location.
    • sdmc:/gm9/out/<date>_<serial>_###_movable.sed

    Code:
    if not fdummy $[MOVABLE_FILE] "01"
    end
    (Attempt to) make that file with a byte size of 01.


    Code:
    if find $[MOVABLE_FILE] NULL
            rm -o -s $[MOVABLE_FILE]
        else
            findnot "$[GM9OUT]/$[DATESTAMP]_UNKNOWN_???_movable.sed" MOVABLE_FILE
            goto FIX_MOVABLE_DIR
    end
    If that file is found, delete it and continue to the next part of the script.

    However, if that file is missing, specify a different name and loop back to the above pointer address.
    Re-attempt to make that file.


    ****


    I will admit there is bug in that section where the script will never make that file in the backup format:
    • sdmc:/gm9/out/<date>_UNKNOWN_###_movable.sed
    , because that variable gets renamed back to:
    • sdmc:/gm9/out/<date>_<serial>_###_movable.sed
    right after it returns to:
    • @FIX_MOVABLE_DIR

    ****

    However, that doesn't explain why your n3DS got stuck in this section when GodMode9 can identify your Serial number. It should have been able to make and find <date>_<serial>_###_movable.sed.

    ****

    @NoSnake221, I'm not* sure how you wish to proceed with rebuilding your Nintendo 3DS folder.

    Because of the original bricking, corrupted SysNAND *.bin image that failed to restore your 3DS firmware, FUBAR'd 3DS database, and the above failed attempts at Fix movable.sed KeyY, I would consider buying a replacement SD card of equal or greater capacity from Amazon or in-store (test the newly purchased card in H2testw before using!).


    If you wish to continue with your current card...
    Another way to check if the KeyY encryption already matches is to compare these two (2) <ID0> found at:
    • [1:] SYSNAND CTRNAND/data/<ID0>
    • [0:] SDCARD ()/Nintendo 3DS/<ID0>

    If they match, you can go to the next part with the Rebuild 3DS Database... I recommend that you use Option (B) - Full; Option (A) - Quick will not reveal if your installed titles were corrupted.
     
    Last edited by TurdPooCharger, Sep 6, 2019
  16. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Thank you very much for the answer. Despite my profile says otherwise, I actually live in Venezuela. And so, I would have to wait about 3 months to be able to receive a new 32Gb SD card from Amazon. The SD card I am currently using is a 32Gb Kingston MicroSD card which was bought in a local marketplace at an unusually low price (I didn't have much money at the moment so I took that one). Would you recommend going to that market again and looking for a new SD card in a much more reasonable price?
     
    Last edited by NoSnake221, Sep 6, 2019
  17. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    Kingston is a shitty SD card brand. They have poor quality control when it comes to sourcing reliable controllers for their cards. Even if they test okay in H2testw where the entire capacity comes back clean in writing and reading everything, the controllers they put in are often rejects.
    Kingston also pulled this shit before.
    Basically, don't use Kingston if you can avoid them.

    ***

    Try to buy a different card from another brand like Samsung or Sandisk. Keep in mind even if they labelled or look real, there are too many fakes and knockoffs out there. If you get a replacement SD card, protect yourself by testing it with H2testw. You can also stress test it using CrystalDiskMark. A card that runs too hot to the hand touch should not be trusted.

    You may want to shop at a different store than the one you bought your Kingston. This is going with the assumption that seller can't be trusted to sell you genuine products.
     
  18. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    All right, thank you. I will try to find a MicroSD card tomorrow that is not Kingston brand. I hope this bunniestudio guide also helps me differentiate a knock-off from the real stuff.

    ----

    Also, I would like to know how can I stress test a MicroSD on CrystalDiskMark
     
  19. TurdPooCharger

    TurdPooCharger Meh

    Member
    12
    Jan 1, 2018
    United States
    You may want to read other guides and tutorials out there in how to visually spot fake cards.

    Even then, you can't go by looks alone. Check with H2testw even if you're 99.9% sure the replacement card you get isn't fake.

    Err... I've never used this program. :rofl:

    Here are some articles:
    Basically, you perform several types of tests and compare the write & read results to what that package's rated speed class and what others typically get for that model SD card.

    After running the tests back-to-back enough times, any sharp drop in performance should warrant your attention to possible bad controller.

    Also, feel the card if it's scorching hot. For a card that runs too hot, it means the card will prematurely die and is a fire/electric risk to your n3DS device like this:
     
  20. NoSnake221

    NoSnake221 Advanced Member

    Newcomer
    1
    Sep 2, 2019
    Canada
    Tazmily
    Oh well. I better get a New SD card soon and check it with H2Testw and CrystalDiskMark, since my current SD card often gets pretty hot. I didn't know it could cause such damage :O
     
Loading...