Bueno, ya he empezado a agregar funciones a la versión avanzada (Se encuentra en fase prealpha inestable), de momento llevo estas:
- Margen
Algo que yo siempre hago manualmente, que es dejar unos cuantos bytes libres entre lo que hay antes del espacio libre y donde empiezo a escribir. Ejemplo:
Tenemos un binario con este contenido:
AA AA AA AA AA AA FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF CC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DD DD 11 11 11 11 11 11 11 11 11 11 11 11
Imaginemos que todo lo que no son FF's es importante, y lo la queremos liar. En concreto, los AA's son el cuerpo de nuestro script, y necesitamos algun sitio para poner un msgbox de este.
Bueno, si somos Seph usaremos #dynamic, como nos explica en un mensaje por aquí arriba :D
Bueno, este es el ROM con el mensaje insertado:
AA AA AA AA AA AA 66 66 66 66 66 66 66 66FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF CC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DD DD 11 11 11 11 11 11 11 11 11 11 11 11
Si, el mensaje son los 66's. Bueno, el script nos ha quedado muy bien, y al cabo de una semana de seguir con el hack ya tienes 5 scripts que llaman a este con goto's, call's etc. y el mismo mensaje también lo usas en muchos sitios
Peeero entonces resulta que necesitas agregar un comando al script (y naturalmente no vamos a reemplazar unos cuantos comandos por un goto que llama a un script donde está todo lo necesario, porque eso es pensar mucho).
Bueno, por el simple hecho de haber dejado 5 bytes de margen podemos agregar el maldito comando sin haber de pensar. Y para esto tenemos la funcion de margen :D
Si lo de los scripts no os convence, pensad en una tabla de sprites o una imagen.
- Next - Desgraciadamente aún no aplica el margen. Lo explicaré con un mini-ejempo:
Queremos buscar x bytes libres a partir de y
Pulsamos Search
Nos los encuentra en z.
(Next se activa)
Pulsamos next.
Nos busca x bytes a partir de y+x
Nos sirve si queremos insertar 5 sprites del mismo tamaño y queremos buscar todos los offsets antes de empezar a insertar.
- Conversor dec <-> hex - Si queremos convertir de dec a hex pondremos un numero decimal, si queremos convertir de hex a dec pondremos un numero hex con 0x al principio.
Sí, cierra ya esa horrible calculadora de winbugs :D Si tienes la de gnome (linux) usa esa, que es super-pro xD
Repuntear offsets - Bueno, pues eso xD, de momento hay 3 casillas, hay que poner 1 byte en cada una, posteriormente lo sustituiré por una sola casilla.
Captura:
Lo podéis descargar del repositorio git.
Por cierto, para seguir con la herramienta (y las próximas que haga) me gustaria tener ayudantes :D
Necesito:
- Alguien que haga iconos (presentad un posible icono para el programa que me guste y tendréis el puesto)
- Betatester(s)
Obligatorio:
No tener miedo a usar la linea de comandos
Usar linux (o, en otros SO's, tener python2.7 y pyqt4 y git instalados)
Saber algo inglés, o ser muy bueno usando el google traductor
Otras cosas no obligatorias:
Saber algo de python
Saber algo de debugging
- Alguien que me dé ideas (Hay que ser alguien simpático :D)
- Alguien que me corrija las faltas de ortografía (en inglés) xD