________________________________________________________________________________

Finishing downgrading the Nintendo 3DS (optional)

Author : Gabriel Marcano (Gelex/Gemaix/gemarcano)

Date : 2016-01-30

Updated : 2016-01-31

________________________________________________________________________________

So, after downgrading with either sysupdater or safesysupdater, you have found

out via downgrade_check (https://github.com/svanheulen/downgrade_check) that

there are some titles in your system that did not downgrade, and some other

titles that are deemed as extras. So, what can you do about these titles? From

anecdotal experience, it seems these titles do not affect behavior in either of

the 3DS models. That having been said, if you are like the author of this

tutorial and just likes having things be neat and perfect (when it is not his

room), then this tutorial is for you.

A word of caution and warning: This tutorial will have you work with your

favorite CIA installer (the author used FBI) to replace CIAs installed in

sysNAND. If you replace or delete the wrong CIAs, this could very well brick

your device! Make sure at least that you have a sysNAND backup somewhere, so in

case a brick happens, you can at least hardmod the 3DS to re-flash the NAND

backup.

Be advised that the author takes no responsibility for anything that may happen

while using this tutorial. Refer to the DISCLAIMER section for a more formal

disclaimer of responsibility.

________________________________________________________________________________

Pre-requisites

________________________________________________________________________________

1. Downgraded 3DS to 9.2 (or down to 9.0, but author has only tested 9.2).

2. HBL installed on said 3DS, and accessible.

3. o3DS 9.2 downgrade CIAs (or the version used for downgrading), or 3DNUS (or

similar program) to get the CIAs you need. Note that these CIAs are region

agnostic and only care about the specific version number they are. Do

not ask where to download these CIAs, and yes, if you have different titles (it

is almost guaranteed you will have some on a N3DS if that is the case) you

need to find some CIAs (see Credits & Sources for more information). Be

warned, it seems that some CIAs are missing from some o3DS downgrade packs. A

program like 3DNUS or UpdateCDN is needed to find the missing CIAs.

4. FBI.3dsx installed on homebrew (3dsx)

(https://github.com/Steveice10/FBI/releases)

5. PastaCFW (https://github.com/capito27/Pasta-CFW/releases), or maybe

minipasta (author has not tried minipasta:

https://gbatemp.net/threads/need-hax-2-x-pasta-loader.400752/). Also, if you

have rxTools, Pasta mode should work as well.

6. downgrade_check (https://github.com/svanheulen/downgrade_check).

7. Patience. Some of these things, namely the Pastas, can take multiple

attempts to run.

________________________________________________________________________________

Procedure

________________________________________________________________________________

Before continuing, due to the sources available to the author and as found

below under Credits & Sources, it is believed that only N3DS systems should

have different titles. If an o3DS is found to have different titles, something

strange has happened, and a repeat of the downgrade procedure may be necessary

to fix it. From the author's experience, downgrading the o3DS should only yield

extra titles.

1. Get the full list of different titles and extra titles from downgrade_check.

In particular, take note of the title ID (the really long hexadecimal number)

and the version hexadecimal. For example (this is an example output, this may

or may not be same as what you get):

Title ID 0x0004009b00010402

Expected version 0x1002

Installed version 0x1402

Title ID 0x0004003000009e02

Extra title

Title ID 0x0004001b00010802

Expected version 0x0000

Installed version 0x0400

Title ID 0x0004013000001b02

Expected version 0x0800

Installed version 0x0c01

Title ID 0x0004013000001a02

Expected version 0x1400

Installed version 0x1801

For the extra titles, the only bit of information needed is the "Title ID." For

the titles with different versions, take note of the installed and expected

versions, which will be used later just as a sanity check to make sure the

right version is being removed and the right version is being installed. Note

that the version number shown by downgrade_check is in hexadecimal. If using

3DNUS, it takes version numbers in decimal, so the hexadecimal version number

needs to be converted to its base-10 equivalent number.

2. (Skip this step if there were no different title versions detected) Locate

the CIAs with a matching title ID from the o3DS downgrade CIAs (the filename

should have the title ID), for the title IDs with different expected versions.

Again, 3DNUS can be used to produce these CIAs, just make sure to ask for the

right title ID and the right version (the expected version). Copy these CIAs to

your SD card somehow.

3. Enter into HBL and execute PastaCFW or minipasta or Pasta mode until they

launch properly. This will reboot your system. If you have autoboot enabled,

make sure you boot either to sysNAND or HBL for sysNAND, not emuNAND.

4. Once Pasta has been run, now get into HBL and launch your CIA manager. Your

CIA manager now should be able to write to sysNAND.

5. The easy part: Find out how to access the titles installed on sysNAND using

your CIA manager (on FBI, that is changing the destination and changing the

mode of operation, both done via the L and R buttons). Set the mode to delete

CIAs and target the sysNAND titles.

6. Find the title IDs of the installed CIAs that match with those you took down

from step 1 for the extra titles. Delete these CIAs. MAKE SURE YOU ARE DELETING

THE RIGHT ONES, DELETING THE WRONG ONES WILL BRICK THE 3DS ON A REBOOT. In

theory, this is all the o3DS need to do.

7. (Skip this step if there were no different title versions detected) The

harder part: Find the title IDs of the installed CIAs that match with those you

took down from step 1 for the different expected titles. Also, at this point you

should be able to also check the versions of the installed CIA and the one about

to be installed, and compare those versions with the ones noted in step 1, just

to verify that you have the right ones. Then try to overwrite these CIAs with

the ones on your SD card (you may need to change operation modes to do this). If

that does not work, like with FBI, you need to delete these CIAs from sysNAND

first, then replace them with the CIAs with the right versions that were copied

to your SD card in step 2. MAKE SURE YOU ARE DELETING AND REPLACING THE RIGHT

ONES, DELETING THE WRONG ONES WILL BRICK THE 3DS ON A REBOOT.

8. Exit out of FBI, and reset the system for good measure.

9. Run downgrade_check again. If everything went well, and the 3DS is not

bricked, it should come back clean. And that is it! Congratulations on a clean

system!

________________________________________________________________________________

Credits & Sources

________________________________________________________________________________

- DarkungerR on Rizon #3dshacks for pointing the author in the right direction.

- Minki and graffix on Rizon #3dshacks for helping to debug this tutorial.

- All others on Rizon #3dshacks for being guinea pigs and helping people with

their 3DS woes.

- https://gbatemp.net/attachments/exception-list-v4-txt.35858/ and those who

made this list. This was the one that really explained what was going on.

DarkungerR and the author used this as a starting point, and after analyzing

some checksums, decided it was moderately safe to do what this archive

suggested.

- 3dbrew.org for all the general 3DS information, especially the Title list

database/list.

- All the developers making CFW a possibility :)

________________________________________________________________________________

DISCLAIMER

________________________________________________________________________________

THIS TUTORIAL IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND

ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED

WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE

DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR

ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES

(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;

LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON

ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT

(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS