Buenas...
Muchas gente me anda preguntando como cambio los textos del XMB (ya sabeis, "Actualización de red", "Navegador de Internet, "Utilidad de datos guardados" y en general cualquier texto que se nos muestre en el XMB).
Pues bien, es muy fácil de hacer pero solo es válido si:
* Teneis un custom firmware Open Edition 3.03 OE-C o inferior (en 3.10 OE-A de momento no rula), un firmware 2.50 o un firmware o custom firmware de 1.50 (esto es porque, de momento, solo para estos firms se pueden cambiar los iconos del topmenu_plugin.rco)
* Habeis generado el topmenu_plugin.rco con el icon-coder.exe (o sea, desencriptado)
Esto es, haber cambiado los iconos del topmenu_plugin.rco, ya sea con cualquier versión del Custom xmbIcon Packager, con el xmb-icons-302fix, etc...
Nota - Si teneis los firmwares 1.50 o 2.50 podeis usar sus topmenu_plugin.rco desencriptados (usando los respectivos psardumpers) por lo que no hay necesidad de que tengan los iconos cambiados.
Si cumples los dos requisitos, sigue leyendo...
Solo teneis que coger el topmenu_plugin.rco de vuestro firmware (también puede ser alguno que os bajeis de internet o alguno que saqueis de algún dumpeo de algún update. Si haceis esto, tened en cuenta que el topmenu que usais pertenezca al mismo firm que usais, aunque, por ejemplo, si teneis algún Open Edition, el topmenu es igual para todos) usando, si teneis el 3.03 OE-C, la opción del recovery "Advanced/Toggle USB (flash0)" para encontrar el archivo en vsh/resource
Los que no tengais el 3.03 OE-C podeis usar el FileAssistant para conseguir el topmenu desde vuestro firm.
Una vez con el topmenu que vayais a customizar en vuestro poder, necesitareis usar un editor hexadecimal.
Yo recomiendo usar el WinHex, tanto por su facilidad de manejo como por su repidez y seguridad pero podeis usar el que mas os guste.
Ahora abrid el topmenu con el editor hexadecimal.
Bien, aquí encontrareis todos los textos para todos los idiomas que soporta la PSP, pero como supongo que solo querreis cambiar los textos en español, pues iremos al turrón, aunque ya sabeis que podeis cambiar los textos en cualquier idioma que queais...
El texto en español comienza en el offset "00005B44" exáctamente (la primera cadena de texto es "UMD") y finaliza en el "000068A2" (la última cadena de texto es "LocationFree Player") así que nos vamos a la dirección "00005B44"
Nota - Podeis pinchar en las imágenes para agrandarlas (800x600).
Como sabeis, hay mucho texto en el XMB, por lo que si queremos buscar una palabra o conjunto de palabras específicas para cambiarlas pordemos usar el buscador de cadenas del editor...
Teneis que marcar la casilla "Unicode character set" (el texto está en Unicode por lo que si buscais en ASCII no os va a encontrar nada) para que os la encuentre (en el ejemplo busco la cadena "Memory" pero podeis poner la que querias, claro).
Todo el texto que veis ahí es susceptible de ser cambiado, pero siguiendo unas ciertas reglas.
Por ejemplo, si quereis cambiar el texto "Memory Stick" (podeis ir al buscador de cadenas para encontrala)...
Como veis, cada letra de la palabra están separadas por un "."
Esto no es un carácter "punto" en realidad sino que es un carácter vacio ("00" en valor hexadecimal).
Pues bien, esto quiere decir que por cada letra que le metamos, deberemos meter un carácter vacio.
Para meter este carácter vacío, no hay que pulsar espacio sobre el (como mucha gente hace la primera vez que trastea con estas cosas).
Un espacio no es un carácter vacío (tiene valor "02" en hexadecimal).
Así pues para meter ese carácter hay que pulsar sobre su valor hexadecimal (en nuestro ejemplo, el "4")
e introducir el valor "00"
Como veis en la imagen, hemos cambiado una "M" por un carácter vacío.
Bien, aclarado esto, tenemos que tener otra cosa en cuenta...
Además de meter un carácter vacio por cada letra que metamos, muchas de las cadenas que cambiemos tendrán varias palabras (como en el caso de "Memory Stick").
Como veis en la imágen, un espácio entre palabras de una misma cadena de texto se ve decimálmente como un ". ." ("00 02 00" en hexadecimal).
Esto viene a ser, un carácter vacío, un espacio (ahora si) y un carácter vacío.
Así que ya sabeis como deberias ponerlo...
La última regla y las mas importante es que debeis respetar el número de carácteres de la cadena que querais cambiar.
En el ejemplo de querer cambiar "Memory Stick", tenemos 12 carácteres con los que trabajar (en este caso, serían 14 si contamos el "tm" que lleva detrás).
Así que la cadena que queramos poner sustituyendo a esta debe tener como máximo ese número de caracteres.
Y que pasa si ponemos una cadena de texto menor a ese número de carácteres?
Pues muy fácil, solo tenemos que meterle carácteres vacios hasta llegar a la primera letra del la siguiente cadena de texto.
Apliquemos todo la anterior al ejemplo con la cadena "Memory Stick"...
Como veis, he cambiado la cadena "Memory Stick" por "Me quedan" y como me sobraban carácteres, he rellenado de carácteres vacios hasta la primera letra de la siguiente cadena (en este ejemplo, la "R" de "Reproducir").
Nota - Tened en cuenta que se hace distinción entre mayúsculas y minúsculas y que podeis añadir carácteres especiales, pues la mayoría los reconocerá la PSP.
Un ejemplo de los carácteres especiales (y no especiales) que podeis usar para vuestros textos:
Como veis, cada carácter tiene arriba un valor hexadecimal comprendido entre xx00 y xxFF.
Solo debeis poner esos valores hexadecimales para representar dichos carácteres (algunos no valdrán, claro).
Bueno, pues con esto claro ya podes poner las paridas que queais en donde querais
Aquí os paso algunos ejemplos que he hecho...
Una con
carácteres especiales...
Y ahora con mi superfondo del
Shadow of the Colossus
Después de que lo tengais todo listo, guardais el archivo (sobreescibiendo el anterior, si quereis) y ya podreis flashear vuestro topmenu_plugin.rco de la forma que mas os guste (si teneis 3.03 OE-C, lo mas cómodo es hacerlo desde el recovery con la opción "Advanced/Toggle USB (flash0)". Si teneis otro firm, podeis usar algún programa de customización como el X-Flash o el 3.02OE Customizer).
Mi recomendación que que lo probeis antes de flashearlo con el DevHook. Es muy fácil que cometais un error con algún carácter y se os cuele algún carácter no deseado (como alguno chino, por ejemplo, si es que no os la habeis cargado con el iCU jeje).
Una vez que veais que todo queda bien en el firm emulado, ya podeis flashear sin temores...
Nota - Como he dicho antes, no es compatible con el custom firmware 3.10 OE-A pues brickea la consola si usas un topmenu_plugin.rco de otro firmware (ojo con esto
)
Bueno pues hemos visto como cambiar la mayoría del texto que se nos muestra en el XMB pero como habreis deducido no todos los textos están en el topmenu_plugin.rco
Hay mas texto que se reparte por otros módulos.
Veamos algunos ejemplos...
Cambiar texto de todas las opciones de "Ajustes"
Bueno, lo primero que hay que aclarar aquí es que solo podemos cambiar el texto en
inglés y ninguno mas (esperemos que puedan desencriptar versiones mas recientes y podamos cambiarlos en todos los idiomas).
El archivo que contiene estos textos es el
sysconf_plugin.rco (se encuentra en
"flash0:/vsh/resource").
Lo necesitamos desencriptado y para eso la única posibilidad es dumpearlo del eboot.pbp del firmware 2.50 usando el psardump...
Una vez con el archivo en nuestro poder hacemos como en el caso del topmenu_plugin.rco:
Como lo que vamos a cambiar está en
inglés, pues busco una cadena en inglés (ya sabeis, como Unicode, no como ASCII), como por ejempo "Address" (correspondería a la "Dirección MAC"):
Ahora cambio el texto MAC Address por "MAC Spoffed":
Ahora busco la cadena "Chinese":
Y la cambio por "Chinori"
Ahora vamos con "Batery Information"
Y la cambio por "Follando bateria" (en honor a Dark_AleX
)
Y así con los textos que querais...
Nota - Lo he probado en 3.10 OE-A y no funciona. A diferencia del topmenu_plugin.rco aquí no se brickea la consola, solo no se muestra ningún texto de "Ajustes" y crachea al entrar en alguna opción.
Usadlo en customs anteriores al 3.10 OE-A...
Cambiar texto procedente de las memory sticks (advertencias, errores, etc...)
Para cambiar estos textos necesitamos el archivo
game_plugin.rco (se encuentra en
"flash0:/vsh/resource") pero no pasa como en el caso del sysconf_plugin.rco, o sea, solo podemos cambiar el texto en
inglés.
Al igual que con el sysconf_plugin.rco, necesitamos el game_plugin.rco (para ello ya sabeis, psardump con el firmware 2.50).
Por ejemplo, quiero cambiar el texto "Corrupted Data" ("Datos Corruptos") por lo que busco con el editor la palabra "Corrupted":
Ahora cambio esa cadena de texto por "Datos chungos" (estoy que me salgo hoy
)
Podeis cambiar lo que mas os guste (dentro del orden que ya conocemos, claro) para después guardarlo y flashearlo en vuestras PSPs
Mas menos así quedaría...
Nota - Funciona con todos los Open Editions (3.10 OE-A incluido).
Cambiar texto de la versión de la PSP ("Software del sistema")
Bueno, con esto podremos cambiar el texto que nos dice que versión de PSP tenemos (lo que nos sale en "Información del sistema-Software del sistema").
El archivo que necesitamos se llama
vshctrl.prx y lo debemos dumpear desde nuestro custom firmware (se encuetra en
"flash0:/kn").
El archivo está creado por Dark_AleX, lo que significa que no está encriptado y así es como lo queremos, claro.
Bueno, abrid el vshctrl.prx con un editor hexadecimal y buscad la cadena de texto que se os mostrara en "Información del sistema-Software del sistema" (con que pongais los números vale).
Por ejemplo, yo tengo el custom firmware 3.10 OE-A y así me salía en "Software del sistema" por lo que busco (una vez mas como Unicode) la cadena "3.10":
Una vez lo tenemos localizado procedemos a la edición:
Yo he puesto "Dark_AleX" pero vosotros podeis poner lo que querais (de la forma que ya sabemos), eso si, sin pasarse del límite. En mi caso el límite era la "A".
Cuando lo tengais a vuestro gusto flasheadlo a flash0:/kn
Nota - Válido para todos los Open Edition (3.10 OE-A incluido).
Nota - Cambiando el texto del "Software del sistema" no hará creer a la consola que teneis otra versión de firmware. Como se ha explicado en otras ocasiones, esta información la "consigue" usando diferentes funciones que "leen" la versión desde el "index.dat"
2ª Utilidad del [Minituto]
Bueno, pues el método relatado anteriormente nos serviría para otra cosa...
Como sabeis, algunas fuentes de texto customizadas que usamos petan con las tildes o las "ñ" en el idioma español.
En lugar de esos carácteres nos salen "pipes" (término muy conocido en Linux que se refiere al carácter tubería).
Esto es una putada, pues a veces nos molan mucho esas fuentes y tenemos que renunciar a ellas por este problemilla.
Pues bien, usando la lógica pordemos usar el método de edición de cadenas de texto del topmenu relatado anteriormente para eliminar (o sustituir las cadenas enteras que los contengan) carácteres con tildes o "ñ".
Así ya no nos petarían....
Puede ser un trabajo tedioso pero unas buenas fuentes bien lo valen (como las de Spiderman
).
Salu2.