¡Comienzan las votaciones del MPC o Mejor Proyecto Cuatrimestral de enero a abril de 2026!
¡Vota por tu proyecto favorito y recompensa el trabajo duro de los participantes!
Claro, igual, lo mas seguro es que esas sean más relacionadas con el refrescado de pantalla y todo el quilombo par hacer los callbacks letra por letra.
Vos lo que hiciste fue hacer un breakpoint de lectura en la dirección de la string, ¿cierto?
Puede ser...
Hey quiero pensar que en ese árbol de rutinas gran parte están relacionadas a la carga de mapas que investigaste antes... ¿Verdad? xD
Porque sinó, te esperan momentos muy divertidos...
Yo no diría eso. O sea, el que los datos estén comprimidos termina siendo lo mismo si uno sabe el método de encripción (que es LZ77, el mismo de los roms de pokemon). Además, lo que sabemos que no está comprimido son las paletas de los TILESETS (las demás puede que tampoco, pero al menos yo no...
Como evidentemente soy incapaz de entender los bloques en escala de grises, me puse a ver las paletas.
De momento descubrí unas cuantas de cosas:
- Antes de ser gradualmente escritas en la Palette RAM, las paletas son escritas en la WRAM en la dirección 0x20176A0.
- Las paletas parecen no estar...
No se que les pasa en la facultad con enseñar los lenguajes menos usados del mercado. A mi me dieron, Smalltalk, Prolog y Haskell... xD. Por suerte ninguno en profundidad. Pero al menos me dieron python que me encanta :)
Python es bastante fácil si tenés idea de programación. Literalmente para...
Si, es lo que se. Este año me iba a poner a aprender bien C y Java, pero por ahora mejor python.
Además, para descansar un poco del assembler, nada mejor que python (? Imaginate programar el editor en C, terminaría viviendo en bajo nivel xDD
Bueno no descubrí demasiado esta vez, pero algo hice.
Estuve viendo la función de la ultima vez (0x08052E10). Esta función recibe 4 parámetros:
- Una dirección de ram con una estructura que parece almacenar todos los datos del mapa (no me puse a analizarla porque al estar en la ram, no tiene...
Respuesta: GBA | Hex / Mapping | Investigando los tileblock (Con aplicaciones)
Venía a comentar lo mismo que cosarara, peo como ya está dicho...
El post está muy bueno. Aunque todo esto ya era más que conocido, lograste algo bastante importante. Creo que cualquier persona que lea esto puede...
Estuve viendo por otro lado y termine en la misma función que vos Cheve xD
Me enfoqué más en ver como era mapeado el mapeado. Y si bien no descubrí mucha cosa algo es algo.
Primero puedo casi que confirmar que la tabla en 0x0810309C es una tabla que contiene los bloques de cada mapa/tileset (a...
Lol, puse el resultado por el que cambie el valor original xD. Sorry estaba apurado.
No hice nada muy raro la verdad. Debuguee un poco empezando de la funcion que llama al swi (la que encontraste vos). Fui poniendo breakpoints y mirando los registros para ver si ya tenia el valor real del...
Creo que encontre como funcionan los punteros de los tilesets.
Partiendo de un offset "común", como los que usamos en los roms de pokemon, digamos el offset del tileset 1: 0x36E448
Aplicando la función:
f(x) = x + 0x80000000 - 0x08324ae4
Nos da: 0x800fe38c. Que permutado es 8C E3 0F 80...