› Foros › PSP › Firmwares y modchips
Introducción
Este tutorial ha sido realizado como una traducción directa de las instrucciones de uso escritas por Dark_AleX, junto con algunas consideraciones posteriores mías.
Es realizado para la revisión 0.1 (beta) sacada a día 12/06/07, y será actualizado en cuanto nuevas versiones salgan a la luz.
Si teneis dudas, ya sabeis :)
Precauciones Iniciales
Esta aplicación sirve para consolas CON un modchip UP o Devolution (este segundo con un código no 100% probado) y para consolas SIN un modchip instalado, pero lógicamente con no todas las funciones.
Nuestra PSP con el modchip que sea, al ser conectada por USB al PC, será automáticamente detectada por la aplicación.
En casi todos los casos, os será necesario un DLL de conexiones usb/ftdi, que podeis descargar aquí.
Antes de toquetear nada, es interesante que usarais la opción de hacer un backup de la NAND como explicaremos más adelante.
Modo de Empleo
Antes que nada, tendremos que descargar el propio NANDflasher de aquí.
Una vez que lo tenemos junto con nuestro DLL que comentabamos anteriormente, copiamos ambos archivos (nandflasher.exe y FTD2XX.DLL) en la misma carpeta, por ejemplo en C:/nandflasher/ y, bajo Win32, abrimos un diálogo de MS-DOS (Inicio-Ejecutar-cmd) y, según lo que queramos hacer, habremos de poner una u otra cosa:
Sobre las "Unidades"
A la hora de usar este flasheador por línea de comando como veremos más adelante, tenemos que tener en cuenta que, en total, existen 3 tipos de unidades, dependiendo de nuestro sistema con el que trabajemos.
De esta manera, indistintamente para UP o Devolution (excepto en el primer caso), asociaremos unas letras específicas:
NAND de UP -> u
NAND de PSP -> p
Archivo de NAND -> f
Una vez especificada la unidad, será necesario especificar la ruta para el dump de la NAND (ya creada o por crear); siempre recordando que la NAND de tu PSP no se puede escribir en el UP, ya que aunque lo intente, el proceso final llevará a datos corruptos.
Uso general
De forma general, el acceso por línea de comando para este programa será, una vez dentro de la carpeta,nandflasher [-opciones] funcion parámetros
Opciones posibles:
-d => Habilita la escritura debug, mostrando en pantalla los mensajes y errores no criticos.
-n => Deshabilita la verificación de la escritura (por defecto es verifica) en caso de que lo prefirais para una mayor velocidad; e incluso en algunas instalaciones de UP no será del todo efectiva, y aún así es necesaria esta opción.
Funciones del NANDflasher.
CopyRaw[b]nandflasher cr[/b] origen destino <archivo>
Esta función nos permite copiar la NAND del origen que especifiquemos al destino en binario, de manera que si no tiene bloques dañados el origen, la copia será 1:1
Este método, si tiene bloques dañados, es posible que cause un brick, a no ser de que estos bloques dañados ya estuviesen antes del flasheo. De esta manera, es más aconsejable para simplemente dumpear la propia NAND.
Por ejemplo, si quisiéramos dumpear la NAND de la PSP,nandflasher cr p f "nandimage.flash"
y si quisiéramos por otro lado copiar la NAND de la PSP a la NAND del UP,nandflasher cr p u
aunque como hemos comentado anteriormente, esto puede no funcionar en todas las instalaciones, con posibilidad de datos corruptos.
CopyRawSkip
Esta función es exactamente igual que la anterior, con la única diferencia de que se salta por defecto los bloques pertenecientes al idstorage en los procesos.nandflasher [b]crs[/b] origen destino <archivo>
CopyLogical
Esta función nos permite la copia de las secciones lógicas de una o más unidades a la unidad de destino. Esta, es más segura que la raw anterior, ya que maneja los posibles bloques dañados en todas las secciones.
No disponible para UP, ya que borrado/escritura no están disponibles.[b]nandflasher cl[/b] iplsource idstoragesource lflashsource destino
Donde:
iplsource => Unidad que contiene el IPL a copiar. Si es 0, no será tenido en cuenta.
idstoragesource => Igual que anteriormente, pero para el idstorage.
lflashsource => Igual que anteriormente, pero para el lflash
Por ejemplo, con:nandflasher -n cl f p f u "nandimage.flash"
escribimos el IPL y el lflash de nandimage.flash al UP, y el idstorage de la NAND de la PSP a la NAND del UP.
Gipl[b]nandflasher gipl[/b] unidad ipl.bin
Extrae el ipl de una unidad especificada y se pasa al archivo ipl.bin
Incluso, podríamos extraer el IPL del nandimage.flash que habíamos creado anteriormente;nandflasher gipl f ipl.bin nandimage.flash
Sipl[b]nandflasher sipl[/b] unidad ipl.bin
Escribe los contenidos del archivo ipl determinado a la unidad que especifiquemos.
Gids[b]nandflasher gids[/b] unidad <directorio idstorage>
Esta función nos permite dumpear el idstorage de la unidad especificada a un directorio que nombremos (creado o no), y la estructura de este idstorage será basado en un index.bin con el índice de las keys del idstorage y una serie de keyXxXX.bin con las propias keys.
Por ejemplo,nandflasher gids p mi_idstorage
Sids[b]nandflasher sids[/b] unidad <directorio idstorage>
Escribe los archivos binarios del idstorage del directorio que especifiquemos en la unidad determinada, con la mísma lógica esctructura que crea el gids.
Por ejemplo,nandflasher sids u mi_idstorage
escribiéndolo en la NAND del UP.
Glfs[b]nandflasher glfs[/b] unidad imagenlflash
Dumpea la flash lógica que contiene las particiones de archivo de la unidad especificada a la imagen que determinemos.
Por ejemplo,nandflasher glfs p flash.ima
Slfs[b]nandflasher slfs[/b] unidad imagenlflash
Escribe la flash lógica contenida en la imagen que determinemos a la unidad especificada.
Test[b]nandflasher t[/b] unidad
Testea la unidad especificada para bloques dañados. Este test consiste en que borrará la NAND, escribirá 0 y luego 1's para el testeo, y confirmará los bloques dañados.
Dado que borra la NAND, habrá de ser reprogramada más tarde; y aunque sea lenta y costosa, es muy aconsejable junto al dump de la NAND para poder saber cómo se encuentra nuestro dispositivo.
Estos tests no podrán ser usados para UP's, ya que el proceso de escritura/borrado no funciona.
TestSkip[b]nandflasher ts[/b] unidad
Esta función hace lo mismo que la anterior, pero saltándose el idstorage.
82[b]nandflasher 82[/b] unidad
Esta función simplemente parcheará una unidad TA-082 para que pueda usar un firmware que esté basado en el IPL de 1.xx
Últimas Consideraciones
Todos los derechos de este tutorial van para Dark_AleX
alek escribió:En casi todos los casos, os será necesario un DLL de conexiones usb/ftdi, que podeis descargar aquí.