¡He terminado LEYFA! Y para celebrarlo, aquí está la esperada (supongo) versión del SGZ (Si, al final me he decidido por ese nombre, pero si alguno tiene una idea mejor...)
A partir de aquí viene una pesada explicación por mi parte que puedes saltarte si no te interesa saber porqué he tardado tanto en programar esta pequeña aplicación
***
Bueno, mi gran tardanza se debe (aparte de las prácticas pesadas) a que ahora mismo no tengo acceso a una máquina Windows con entorno de compilación y demás, por lo que he hecho todo el trabajo en Linux, en el entorno Lazarus (Pascal). ¡Pero cual es mi sorpresa al ir a compilar y descubrir que la librería que utilizo para los gráficos no funciona correctamente al compilar para Win32! Bueno, he intentado cambiar de librería (ImageMagick, pero no funcionaba con la última versión, por lo que incluso reparé la propia librería para Lazarus. Aún así, no pude crear las imágenes ya que no encuentro manera de crearlas con una paleta) y a la vista de que nada funcionaba, he vuelto al modo consola y a mi querido-odiado C/C++, he logrado meter un entorno de compilación cruzado y usar la librería GD original en el mismo. ¡Así que al final, aquí está el resultado!
***
Y por fin, el dichoso programita... Visto que nadie dijo nada sobre el programa anterior, creo que nadie usa Linux para estos fines, por lo que pongo únicamente la versión Win32. Si alguien quiere la versión Linux, que avise, estaré encantado de subirla también [oki]
Instrucciones básicas:
- El programa es en modo consola. Si nunca has manejado la consola, el programa no es complicado de usar, pero te harán falta algunas nociones básicas (cd, dir, etc...)
- Para que funcione debe encontrar la librería 'bgd.dll'. La puedes encontrar en http://www.boutell.com/gd, abajo del todo, donde pone "Windows DLL .zip (NOT CURRENTLY FOR PHP)". Dentro está la librería que buscas (a menos que la tengas ya). Descomprímela en el mismo directorio donde está el SCZ.EXE o en Windows\System32.
- Para ver la ayuda del programa, ejecútalo sin argumentos (osea, teclea 'SCZ' sin las comillas y pulsa Enter)
- Los firmwares a modificar deben medir EXACTAMENTE 524288 bytes. Para estar seguros, extrae el original de tu SuperCard (el programa está en las primeras páginas de este post) o consigue uno por el mismo post...
- Para insertar un firmware modificado es necesario que exista el fichero flashmp.nds en el directorio en donde está guardado el programa. DEBE ser la versión que ha usado DrKatts (o sea, debe medir 1628481 bytes EXACTAMENTE. El original de DarkFader NO es válido). Coge cualquiera de los puestos por DrKatts y listo.
- ¡El programa NO comprueba si el firmware a modificar es de SD o CF, así que ten mucho cuidado! No me hago responsable EN ABSOLUTO de lo que pueda pasarle a tu SuperCard. Solo puedo decirte que he probado todas las opciones a conciencia, pero si tu casa se muere y tu perro explota (o al revés [+risas]) es cosa tuya...
Ejemplo de uso rápido y sencillo:
- Extraemos todas las imágenes
C:\SCZ> SCZ firmwareOrigSD.bin -x
** SuperCard CustomiZer v0.5 - Arcnor 2006 **
Abriendo "firmwareOrigSD.bin"...
Creando fichero "font.png"...
Creando fichero "checkbox.png"...
Creando fichero "buttons.png"...
(: Operación de extracción concluida con éxito :)
- Tras modificarlas en nuestro programa de edición gráfica favorito (manteniendo el formato de 8 bits, o sea, utilizando paleta. ¡Muy importante! La paleta se puede modificar si se desea, pero DEBE estar presente), las volvemos a insertar (el programa debe encontrar las 3 imágenes con los mismos nombres y el mismo tamaño exactamente) en otro firmware
C:\SCZ> SCZ firmwareModifSD.bin -i
** SuperCard CustomiZer v0.5 - Arcnor 2006 **
Abriendo "firmwareModifSD.bin"...
Leyendo fichero "font.png"...
Leyendo fichero "checkbox.png"...
Leyendo fichero "buttons.png"...
(: Operación de inserción concluida con éxito :)
- Por último, insertamos el nuevo firmware en el flashmp.nds que tenemos en el mismo directorio, para actualizarla pulsando hacia arriba (modo 2 de la opción -c)
C:\SCZ> SCZ firmwareModifSD.bin -c 2
** SuperCard CustomiZer v0.5 - Arcnor 2006 **
Abriendo "firmwareModifSD.bin"...
Abriendo "flashmp.nds"...
(: Operación de reinserción concluida con éxito :)
Últimas palabras (por fin
):
Lo único que no tiene incluido y que pensaba hacer es el modo preview: A partir de las imágenes (botones, fuente y checkboxes) que se le introduzcan generará una vista preliminar en formato PNG (como no
) como las que nos ha puesto el 'maestro' DrKatts. Supongo que es algo bastante útil, por lo que intentaré que mañana esté listo, pero no prometo nada
Bueno, espero comentarios, críticas, dudas (seguro que habrá, siempre pasa
), sugerencias, etc...
¡Saludos!
P.D. Siento extenderme tantíiiisimo. ¡Siempre me ocurre!