Creando ejecutables válidos para cualquier PSP... ¡como Sony!

embedded

Buenas, os traigo algo calentito y en fase de pruebas. Es una utilidad que acabo de portar y que es capaz de cifrar los elf que compilamos para que cualquier PSP los tome por archivos "oficiales". A partir de ahora podremos crear nuestros propios programas con herramientas libres y ejecutarlos en consolas con firmware oficiales o customizados. También deberían funcionar en cualquier modelo de consola. En fin, ya no necesitamos a Sony Eye-wink .

Qué necesitamos

Bueno, evidentemente es necesario el toolchain y algunas bibliotecas así que echad un vistazo a las recetas Kit de desarrollo completo para PSP y Desarrollo de aplicaciones para PSP-Slim y PSP-Fat con FW actuales. Los ejecutables a firmar se tienen que hacer como en ésta última receta.

La aplicación de firmado

Bueno, tenemos la aplicación en http://github.com/int-0/ebootsigner. Ahí tenemos las instrucciones para descargarlo, pero básicamente son:
$ git clone http://github.com/int-0/ebootsigner
$ cd ebootsigner
$ make
$ make install

Para firmar un EBOOT.PBP simplemente debemos hacer:
$ ebootsign EBOOT.PBP EBOOT_signed.PBP
Y voilá, ahora podemos llevarnos el EBOOT_signed.PBP a cualquier PSP para probarlo.

Makefiles

Podemos añadir el siguiente target en nuestros makefiles para generar directamente los archivos firmados:

EBOOT_signed.PBP: EBOOT.PBP
     ebootsign $^ $@

Y bueno, eso es todo... la aplicación está en pruebas y el código es bastante feo puesto que tiene partes de aquí y de allá. Además principalmente es un port de otra aplicación de PSP. En fin, agradecería testers, parches, críticas, etc. Eye-wink