Warning: tempnam(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/membri/techscene/:/membri2/techscene/:/membri/.dummy/) in /membri/techscene/portal/wp-content/plugins/wp-appbox/inc/getappinfo.class.php on line 416

Warning: unlink(): open_basedir restriction in effect. File() is not within the allowed path(s): (/membri/techscene/:/membri2/techscene/:/membri/.dummy/) in /membri/techscene/portal/wp-content/plugins/wp-appbox/inc/getappinfo.class.php on line 441

Salve a tutti. Non tutti sono ancora a conoscenza del fatto che, avendo il team Gateway rilasciato un metodo per effettuare il downgrade, virtualmente chiunque è adesso in grado di avviare ROMs sul 3DS, partendo da un firmware qualsiasi, senza l’utilizzo di costosissime flashcart. Come? Installando un custom firmware! Vediamo insieme come fare per avviare una copia di backup legalmente acquisita sulla nostra consolle.

Aggiornamento

E’ stato rilasciato A9LH, un nuovo metodo, compatibile con tutte le versioni di 3DS e tutti i firmware, per effettuare la modifica! Questa guida, seppur ancora valida e funzionante, fa riferimento ad una pratica da considerare ormai desueta per modificare il 3DS. Per una guida completa su A9LH cliccare qui!

Occorrente:

  1. Una consolle Nintendo 3DS con un firmware 4.5+ (la guida è stata testata su una consolle acquistata al dayone ma il procedimento è valido anche per 3DS XL e 2DS. Se qualcuno è in grado di testare la procedura anche sul Nuovo 3DS è libero di farlo ma non se ne garantisce il funzionamento).
  2. Una normale scheda SD (io ne ho utilizzata una da 8 GB. Ovviamente è richiesto anche un lettore di memory card)
  3. Una scheda DS compatibile con il firmware 4.5
  4. Un collegamento ad internet ed un PC con Windows (per scompattare tutti i pacchetti offrti da Tech Scene è consigliato l’uso di 7-zip).
  5. Pazienza a pacchi

Procedura

Fase n° 1 – Downgrade al firmware 4.5 (opzionale a seconda del caso)

Dunque, la prima fase prevede il downgrade della consolle ad una versione del firmware precedente, cosa che ci consentirà, in seguito, di sfruttare diverse falle di sistema al fine di installare un custom firmware. Questo passaggio può essere saltato a piè pari da chi ha già il firmware 4.5 sulla propria consolle, in quanto non è necessario effettuare alcun downgrade. Un custom firmware (o cfw) è un firmware in cui sono stati bloccati diversi controlli che la consolle effettua per verificare l’originalità del software da installare o avviare sulla consolle al fine di prevenire l’avvio di software di terze parti non autorizzato, sia esso un homebrew qualsiasi oppure anche un gioco non cifrato con le chiavi Nintendo. Effettuare un downgrade è un lavoro estremamente semplice. Basta seguire questa guida fornita da Tech Scene, ricordando solo che se il metodo di avvio non funziona (lo schermo inferiore deve diventare bianco) allora sarà necessario cancellare i cookie del browser web del 3DS. Una volta effettuato il downgrade, dovremmo ritrovarci con una consolle su cui è installato il firmware 4.5. Se questo è il vostro caso, possiamo passare alla fase successiva. N.B.: Per effettuare il downgrade NON è necessario alcuna flashcart 3DS (Gateway e simili).

Fase n° 2 – Installazione di un custom firmware

La seconda fase prevede l’installazione di un cfw. Qui è dove le cose inizieranno a farsi più interessanti. Installare un custom firmware non è complicato, per cui se le cose dovessero non andare subito per il verso giusto non lasciatevi prendere dal panico. Basterà seguire punto per punto la guida e tutto andrà per il verso giusto. Iniziamo.

  1. Come premessa, accertarsi che il 3DS sia connesso alla vostra rete. Questo non è richiesto immediatamente ma è utile per rendere più semplice il lavoro andando più avanti. Annotare da qualche parte l’IP della consolle. Per controllare l’IP della vostra consolle Nintendo 3DS, basterà, dopo averla collegata alla rete di casa, scaricare questo programma. Dopo averlo scaricato ed installato, assicuratevi che il vostro 3DS sia acceso e collegato ad internet, quindi fate clic su “scansiona” e dopo qualche secondo dovrà comparirvi l’indirizzo IP della consolle, contraddistinto dal produttore “Nintendo Co., Ltd.” (attenzione a non confondervi con altre consolle Nintendo come Wii, Wii U, DS o altri 3DS, per sicurezza scollegare tutte le altre apparecchiature Nintendo).ip scanner
  2. Prelevare da qui il pacchetto di installazione Gateway completo. Non preoccupatevi, la Gateway non è necessaria. Ci serviremo solo del file “launcher.dat” per innescare il meccanismo che ci porterà ad installare il nostro agognato custom firmware. Piazziamo il file “launcher.dat” nello root della nostra scheda SD, ed inseriamo la scheda SD nella nostra consolle 3DS.
  3. Piazziamo il file “GW_INSTALLER.NDS”, il file “_DSMENU.DAT” e la cartella “__rpg” nella root della microSD della nostra scheda DS (si trovano tutte le pacchetto Gateway appena scaricato, ma questo vale solo se avete la Gateway blu, in caso contrario copiate solo il file “GW_INSTALLER.NDS”), quindi avviamo la scheda tramite il menu di sistema del 3DS ed avviamo il file “GW_INSTALLER.NDS” appena copiato. Seguire le istruzioni a video e premere A appena l’operazione sarà finita. Questo installerà il ROP Loader sulla nostra consolle, ovvero il metodo prencipale di cui ci serviremo anche più avanti per avviare il custom firmware o altri homebrew. N.B.: Nel caso in cui usaste un gioco DS qualsiasi, il ROP Loader verrà eliminato e sarà necessario ripetere questo passaggio.
  4. Sul menù 3DS andate in “Impostazioni della console”, quindi selezionate “Impostazioni generali”, “Profilo” ed infine “Profilo Nintendo DS”. Questo vi farà accedere al menu Gateway.
  5. Una volta entrati nel menù Gateway, scorrere a destra fino a trovare la voce “format emunand” e selezionarla. 
    Questo passaggio eliminerà tutto ciò che è contenuto nella nostra scheda SD, per cui assicuratevi di aver effettuato in modo appropriato una copia di backup da conservare poi sul PC, non si può mai sapere.
  6. Spegnere il 3DS, inserire la scheda nel PC ed avviare emuNANDTool, quindi selezionare “Extract emuNAND” per salvare l’emunand sul vostro PC. Il programma riconoscerà automaticamente la scheda SD in cui è contenuta la vostra emunand e la estrarrà nella stessa cartella in cui è contenuto il programma.
  7. Estrarre il file “drag_emunand_here” reperibile qui, quindi trascinare l’emunand appena estratta sul file .bat. Verrà generato un file chiamato REDNAND.bin al termine della procedura (attendere pazientemente che l’operazione venga portata a termine).
  8. Tornare al programma emuNANDTool e questa volta selezionare “Inject NAND to emuNAND”, quindi andare a selezionare il file REDNAND.bin appena creato. Il programma si occuperà di iniettare la REDNAND appena creata in una partizione nascosta della vostra scheda SD, ragion per cui non vedrete alcun file al suo interno, ma noterete la dimensione della scheda sensibilmente ridotta.
  9. Scaricare da Tech Scene il custom firmware e copiare tutto il contenuto della cartella  “SD Card” nella root dela scheda SD (ricordiamo per i meno avvezzi che la “root” è la “cartella” principale della scheda SD, non dovrete quindi mettere i file in una cartella in particolare, ma semplicemente aprite su esplora risorse la vostra scheda SD e copiate al suo interno i file). Eliminate il file launcher.dat e rinominate il file “Launcher_GW.dat” in “launcher.dat”.
  10. Inserite la scheda Sd nel vostro 3DS ed accendetelo, vi chiederà di creare delle informazioni particolari, per cui senza stare qui a disquisire di cosa si tratta lasciatelo fare, è del tutto normale.
  11. Rimuovete nuovamente la scheda SD e rimettetela nel lettore di memory card del vostro PC. Troverete una nuova cartella appena creata denominata “Nintendo 3DS”, al cui interno saranno presenti alcune sottocartelle. Il nome di queste sottocartelle è una stringa di lettere e numeri apparentemente casuali, che per comodità denomineremo ID1 ed ID2. ID1 è la cartella che troverete aprendo la cartella “Nintendo 3DS”, mentre ID2 è la cartella contenuto a sua volta all’interno della cartella ID1. La cartella “ID2” contiene al suo interno una cartella chiamata “extdata”. A questo punto, creare all’interno della cartella “ID2” una nuova cartella, in modo che quindi ci sia sia questa cartella che extdata, e chiamiamo questa nuova cartella “dbs”, senza le virgolette.
  12. Allinterno della cartella dbs appena creata, creiamo due file vuoti, e chiamiamoli title.dbimport.db. E’ sufficiente crearne anche solo uno, ma crearne uno solo non cambia la sostanza. Per creare questi file sarà necessario rendere visibili le estensioni dei file su Windows, il modo più semplice è quello di creare un file di testo e poi assicurarsi che l’estensione venga cambiata in .db, anzichè in .txt. Il nome dei file è fondamentale per cui assicuratevi che i file vengano creati in maniera corretta.
    └───Nintendo 3DS
        └───01234567890acbdef0123456789abcde        <-- ID1
            └───9876543210fedcba9876543210fedcba    <-- ID2
                ├───extdata
                └───dbs  <-- creare questa cartella ed aggiungere al suo interno i file
                      title.db
                      update.db
  13. Rimettere la scheda SD nel 3DS e recarsi nelle impostazioni di sistema, quindi Gestione Dati, Nintendo 3DS, Software. Vi dirà che i dati sono corrotti e vi chiederà di eliminarli. Non abbiate paura, significa che avete fatto tutto giusto, per cui date l’ok. 
    Non rifare questa operazione sulla SysNAND a modifica effettuata, pena la cancellazione di tutti i file .cia installati e dei relativi salvataggi!!!
  14. Ora siete in grado di avviare il vostro custom firmware. Per far ciò vi basterà ripetere il passo numero 4. Tenete in considerazione che, allo stato attuale, il custom firmware è tutt’altro che stabile, per cui potrebbe non avviarsi al primo tentativo. Niente paura, riprovate più e più volte finchè non avrete avviato con successo il CFW. Vi renderete conto di averlo avviato non appena lo schermo inferiore farà un breve lampo bianco (questo passo andrà eseguito ogniqualvolta avrete la necessità di avviare il custom firmware).

Bene. Una volta completata questa guida, è possibile proseguire. Il prossimo passo sarà l’installazione di un devMenu, un menu pensato per gli sviluppatori che vi consentirà l’installazione di applicazioni (e giochi) non firmati, o meglio firmati con una chiave fittizia.

Fase n° 3 – Installazione di un DevMenu dal PC

Questa fase è semplice da portare a termine, tuttavia può rivelarsi ostica qualora vi facciate prendere dalla fretta o siate disattenti. Seguendo passo passo la guida vi porterà a completare il lavoro prima ancora che possiate accorgervene. Adesso ci occuperemo di installare un DevMenu. Questa operazione andrà fatta dal PC, che quindi manderà un file al nostro 3DS il quale poi ci consentirà di installare applicazioni non firmate, i cosiddetti file “.cia”. Questa procedura va eseguita una sola volta. Iniziamo:

  1. Avviamo il nostro custom firmware nuovo di zecca, avendo però cura di tenere premuto il tasto “L” appena stiamo innescando l’exploit. In pratica basterà seguire il passo 4 della guida precedente ma appena lo schermo inizierà a lampeggiare dovremo premere L, niente di più facile. Torniamo al custom firmware che avevamo scaricato sul PC. Come avrete notato, ci sono alcuni file che non abbiamo dovuto utilizzare nella guida precedente. Li utilizzeremo adesso. Il file “run.bat”, se aperto con un editor di testo, si presenta così “installcia IPTOMODIFY 1 DevMenu_2x.cia”. Modifichiamolo quindi con un editor di testo, come il blocco note di Windows (tasto destro —> modifica) sostituendo a “IPTOMODIFY” l’indirizzo IP LAN che abbiamo annotato al punto 1 della guida precedente, in modo che il risultato finale sia qualcosa di simile a “installcia 192.168.1.3 1 DevMenu_2x.cia”.
  2. Piazziamo nella stessa cartella dove sono contenuti gli altri file del custom firmware che non avevamo ancora utilizzato un DevMenu. io ho utilizzato BigBlueMenu. Estrarre quindi il file BigBlueMenu.cia nella stessa cartella dove sono contenuti anche il file “run.bat” e tutti gli altri. Per installare il bigbluemenù, comunque, il file run.bat andrà modificato come segue “installcia 192.168.1.4 1 BigBlueMenu.cia”, dove al posto di “192.168.1.4” che è un IP d’esempio, andrà inserito, come spiegato poc’anzi, l’indirizzo IP LAN del vostro 3DS.
  3. Avviamo quindi il file “run.bat”, che si occuperà di trasferire sul custom firmware della nostra console il BigBlueMenu (superfluo dire che sia il PC che la consolle devono essere connessi alla STESSA RETE LAN). Il risultato finale sarà qualcosa del genere:clip+(2014-11-05+at+02.18.42)
  4. Se ci sarà scritto “Result-Code: 0” come nell’immagine qui sopra, vorrà dire che tutto è andato a buon fine. Se ci sarà scritto qualsiasi altra cosa, non avrete creato i file all’interno della cartella dbs. Se ci sarà scritto “failed to connect”, spegnete e riaccendete il wifi del vostro 3DS, quindi riprovate. Se vi compare sempre “failed to connect” ed il 3DS crasha o freeza, aprite il browser web subito dopo aver caricato il custom firmware e fategli caricare un sito web.
  5. Se invece il devMenu sarà stato installato correttamente, vi basterà premere il tasto POWER e poi HOME per far ricaricare il menu al 3DS. Un pacco regalo comparirà sul vostro menù, scartatelo, ve lo siete meritato. 😀
  6. Una volta installato il devMenu, potrete avviare il custom firmware sempre usando l’exploit del passo 4 della guida precedente, ed installare le applicazioni tramite il BugBlueMenu stesso.

Prossima fase, l’ultima, è quella che prevede la conversione dei file ROM ordinari in file .cia digeribili dal nostro custom firmware.

Fase n° 4 – Convertire il file ROM in file CIA

Non vi mentirò, la fase finale di questa guida è la più ostica. Richiede molta pazienza, ma se siete arrivati fin qui, sicuramente ne sarete dotati. Onde evitare inutili passaggi ed errori accidentali, il mio consiglio è quello di prendere tutto ciò che vedete sulla vostra scheda SD, selezionare taglia e incollarlolo temporaneamente su una cartella nel PC. Questo passaggio in realtà non è richiesto, ma per precauzione, dal momento che la guida potrebbe generare una mole inverosimile di confusione, sarà meglio proseguire così. Al termine della conversione, sarà possibile eliminare tutto ciò che sarà contenuto nella scheda SD e ricopiare tutti i file che avrete spostato in questo passaggio. L’ultima fase di suddividerà in 3 fasi, ovvero il decrypt del file ROM, la creazione del file .rsf, e la creazione vera e propria del file CIA Iniziamo.

  1. Procuratevi legalmente un file ROM e, dopo aver scaricato questo pacchetto ed averlo estratto, trascinate il file ROM sul file ctrKeyGen che potete trovare seguendo il percorso “Decryptor\3DS_CTR_Decryptor-VOiD\ctrKeyGen\bin”. QUesto risulterà nella creazione del file “ncchinfo.bin”.
  2. Spostare il file “ncchinfo.bin” sulla scheda SD, nella root, inseme al launcher/dumper “launcher.dat”, che trovate seguendo il percorso “Decryptor\3DS_CTR_Decryptor-VOiD\Put on 3ds sd card (ignore SRC.zip)”.
  3. Avviate il launcher sul vostro 3DS seguendo sempre la stessa (punto 4 della prima guida). Questo genererà i file “XORPADS”. Il file che ci interessa è quello che contiene all’interno del suo nome “‘RomFS0”.xorpad”. La stringa non sarà perfetta, ma in ogni file che tenteremo di decryptare ci saranno diversi XORPADS e solo uno avrà il nome ROMFS indicato insieme al numero 0, per cui non ci si può sbagliare.
  4. Utilizzando 3DS Explorer, contenuto nel pacchetto appena scaricato, apriamo la ROM che abbiamo intenzione di decryptare, selezioniamo il file Romfs.bin e, facendo click col tasto destro, salviamolo sul PC. Non avendo alcuna chiave, dovremo salvarlo cryptato.
  5. Rinominiamo il file xorpad che ci siamo procurati poco fa in modo che il nome sia “Romfs.xorpad”, dove “.xorpad” è, ovviamente, l’estensione.
  6. Posizionare i file Romfs.bin e Romfs.xorpad nella cartella “workdir” contenuta all’interno del pacchetto da noi scaricato.
  7. Facciamo doppio click prima sul file “1-decrypt.bat” e poi su “2-extract-romfs.bat”. Se, come me, siete pigri da fare schifo, seguite semplicemente questo tutorial a prova di scimmia urlatrice.

Una volta giunti sin qui, avrete a vostra disposizione romfs.bin, exheader.bin, code.bin, icon.bin and banner.bin, per cui possiamo proseguire con la guida.

  1. Create un file .rsf, in cui verranno inserite le informazioni del gioco che intendete convertire. Qui è presente una lista dei giochi più comuni già compilata da altri utenti Se il vostro gioco non è presente, potete compilarla voi stessi utilizzando il form qui sotto
    BasicInfo:
      Title                  : "Custom Title"
      CompanyCode            : "00"
      ProductCode            : "CTR-P-DERP"
      ContentType            : Application # Application / SystemUpdate / Manual / Child / Trial
      Logo                    : Nintendo # Nintendo / Licensed / Distributed / iQue / iQueForSystem
     
    TitleInfo:
      UniqueId                : 0x7850
      Category                : Application
     
    Option:
      UseOnSD                : true # true if App is to be #installed to SD
      EnableCompress          : true # Compresses exefs code
      FreeProductCode        : true # Removes limitations on ProductCode
      EnableCrypt            : true # Enables encryption for NCCH and CIA
      MediaFootPadding        : true # If true CCI files are created with padding
     
    AccessControlInfo:
      ExtSaveDataId: 0xb7850 # same as UniqueId
      SystemSaveDataId1: 0x00000000 # plaintext exheader
      SystemSaveDataId2: 0x00000000 # plaintext exheader
      OtherUserSaveDataId1: 0x00000 # plaintext exheader
      OtherUserSaveDataId2: 0x00000 # plaintext exheader
      OtherUserSaveDataId3: 0x00000 # plaintext exheader
      UseOtherVariationSaveData : false
     
    SystemControlInfo:
      SaveDataSize: 1M # plaintext exheader
      RemasterVersion: 0 # plaintext exheader
      StackSize: 0x00040000 # plaintext exheader
      JumpId: 0x000400000b000000L # plaintext exheader (<full UniqueID>L)
  2. Per compilare il form qui fornito, sarà necessario aprire la ROM con un editor esadecimale per ottenere i giusti valori di companycode, producttyp e productcode. Per ottenere il giusto UniqueID vi basterà trascinare la ROM da convertire sul file “ctrtool”, avendo cura di rimuovere gli ultimi due zeri e scrivere le 4 cifre prima di questi.
  3. Sarà ora possibile creare il file .cia vero e proprio. Con il prompt dei comandi di windows recatevi nella cartella (date il comando cd <percorso cartella>, copiando con esattezza il percorso) in cui sono presenti i file exefs.bin, exheader.bin, romfs.bin, icon.bin, code.bin, banner.bin, cia.rsf e makerom (se non sono nella stessa cartella, ovviamente metteteli da soli in una cartella tutti insieme), per cui date il comando “makerom -f cia -target t -desc app:4 -icon icon.bin -banner banner.bin -exefslogo -code code.bin -exheader exh.bin -romfs romfs.bin -rsf cia.rsf -o Install.cia”.
  4. Questo creerà il vostro file .cia che potrete trasferire sulla scheda SD del vostro 3DS (dopo aver cancellato tutti i file presenti ed aver rimesso i file che c’entrano prima e che avevate messo da parte) e che potrete installare tramite BigBlueMenu.
  5. Se andate incontro all’errore “[ROMFS ERROR] Invalid RomFS Binary.” quando date il comando per la creazione del file .cia, rimuovete dal comando la parte “-romfs romfs.bin” e riprovate.

Questo è quanto. Il sistema non è smussato come l’utente medio potrebbe aspettarsi ma al momento è l’unico metodo per avviare giochi ROM, copie di backup e quant’altro su una consolle Nintendo 3DS, senza l’acquisto di costose Gateway o schede simili. Spero di aver fatto cosa gradita. E’ proibito copiare o distribuire questa guida, piuttosto linkate a questo post nel caso in cui voleste diffonderla. Tutti i file sono stati hostati da Tech Scene, la guida è stata redatta da Tech Scene prendendo parte della mia esperienza personale ed incastonando tra di loro diverse guide prese qui e là dai forum, riscritte e riadattate per essere comprensibili ai più.

Piccolo consiglio: per avviare l’exploit da browser per effettuare il downgrade (e se avete a disposizione uno smartphone Android), potete avviare l’exploit da QR code installando la seguente applicazione…  
The app was not found in the store. 🙁

Alla prossima!