Manejo de saves en unidades Flash 2 Advance

Introducción
Para todos los que tenemos una unidad F2A, nos hemos dado cuenta de que manejar las partidas guardadas (saves) es un tanto engorroso, y más sobre todo viendo las distintas opciones qué hay, los distintos tamaños y distintas opciones (1A1, 3B2, 2B, 4A, 1, 3, etc). Todo estos problemas se pueden resolver usando el PogoShell, pero para quienes no lo usan aquí hay una breve reseña de cómo se manejan.

Estas explicaciones son válidas para la versión USB como para la versión de Puerto Paralelo, cartucho F2A de 256Mbits y la versión 3.1 del F2AW.

Consideraciones
Como todos sabemos, las tarjetas F2A de 256Mb tienen 256Kbytes (2048Kbits) de memoria SRAM. La mayoría de los juegos usan 64Kbytes (512Kbits) de memoria, por lo que, normalmente, se pueden tener saves de 4 juegos al mismo tiempo, sin perderlos y sin mezclarse entre ellos, cada uno de ellos en una porción de memoria llamada banco.

El tamaño del save es independiente del tamaño del rom. Sin importar el tamaño del ROM, ya sea 32, 64, o 128Mbits, SIEMPRE EL TAMAÑO DEL SAVE VA A SER 64Kbytes (512kbits)

Cuando tenemos varios juegos, cuando encendemos la GBA, tenemos un menú similar al siguiente:

Por supuesto, depende de la cantidad de juegos que tengamos. En este ejemplo tenemos 5 juegos. La forma en que la tarjeta F2A maneja los saves es la siguiente:

juego 1 banco 1
juego 2 banco 2
juego 3 banco 3
juego 4 banco 4
juego 5 banco 4
juego 6 banco 4
... ...
juego x banco 4

Esto significa que los juegos que estén en la primera, segunda y tercera posición no tendrán problemas, mientras que los que estén de la cuarta posición en adelante, compartirán el último banco de memoria, por lo que hay que tener cuidado, ya que si guardas un juego que está en ella, sobrescribirá la partida que haya guardado otro juego. Lo más recomendable para esto es que a partir de la 5ª posición coloques juegos que no guarden, o que usen password.

Como paso las partidas salvadas al PC y viceversa?
Para copiar tus juegos guardados con algún emulador (como el VBA) a tu tarjeta y poder continuar tu partida con tu GBA, o si quieres continuar tu partida en tu emulador favorito después de haberlo jugado en tu GBA, hay que ejecutar el programa F2AW.

Para guardar tu partida en tu ordenador, tienes que seleccionar Backup Saver (el cuadro azul) y para copiarlo a tu tarjeta flash, tienes que seleccionar Write Saver (el cuadro rojo). Una vez lo presiones (teniendo ya tu GBA conectada y en espera), se cargará la pantalla de copiado en tu GBA y en tu ordenador verás la siguiente ventana:

Esto puede ser lo más complicado a lo cual te puedas enfrentar, debido a que hay muchas opciones diferentes, y el manual del usuario no explica. Esta pantalla es un tanto confusa, en especial la opción de Saver. Puedes tener en el cuadro, cosas un tanto extrañas, como esto:

El programa clasifica la memoria según el tamaño. Cada banco de 64k está dividido cada uno en 2 bancos de 32k, y a su vez cada uno está dividido en cuatro de 8k. Si seleccionas para descargar un banco de 8k, la memoria la clasifica de la siguiente manera:

 256Kb

Por lo tanto, si por alguna razón quisieras guardar (tanto en tu ordenador como en tu tarjeta) un banco de 8k, tendrías que ver bien cual quieres descargar. En nuestro ejemplo, el 2B3 (en el dibujo está en el medio, de color azul claro), sería seleccionar 2 donde pone 64K, seleccionar B donde pone 32K, seleccionar 3 donde pone 8K y por último seleccionar 8K en Size Select.

Cuando seleccionamos clasificar la memoria en bloques de 32k, el programa la clasifica de la siguiente manera:

 256Kb

Siendo cada bloque de 32 Kbytes. Para descargar un trozo de memoria de 32Kb, simplemente tienes que seleccionar 32K en Size Select, y seleccionar los bancos de 64 y 32k correspondientes. En este caso, la opción de 8K debemos obviarla, y solamente seleccionar 1.

Realmente... ¿para qué puede servir descargar trozos de memoria de 8 y 32Kb? pues muchos ROMs de dominio público, betas, o de prueba, pueden usar memoria de algunos de estos tamaños, y para muchos desarrolladores y programadores, puede ser muy útil.

El siguiente tamaño de memoria disponible es el de 64Kbytes. Este es el que nosotros seleccionaremos en todas las veces que vayamos a usarlo. El programa clasifica la memoria así:

 256Kb

Cada uno de estos bancos corresponde con una entrada del menú, como vimos en la pequeña tabla al comienzo. Para seleccionarlo, en Size Select, debemos seleccionar 64k, en 32 y 8k los dejamos en A y 1 respectivamente. Existen otros dos tamaños de memoria, que son 128 y 256Kbits. El de 128Kb se usa realmente poco, pero el de 256 es bastante útil, incluso para la gente que utiliza PogoShell.

En 128K la memoria se clasifica así:

 256Kb

y en 256K es más obvio:

 256Kb

Nótese que el 2º banco de 128k es el 3 y no el 2.

Para extraer un banco de 128 o 256k, es exactamente el mismo procedimiento para descargar uno de 64, solamente hay que seleccionar el banco de 64k correspondiente (1 o 3 en el caso de 128k), y seleccionar el tamaño deseado. Respaldar y restaurar el save de 256k es muy útil cuando estemos usando Pogoshell, ya que con este archivo en nuestro ordenador, podemos usar una utilidad llamada S-Ram Explorer, para manejar los saves, extraer los que queramos y añadir los que necesitemos.

Una vez aclarado los tipos de save, se selecciona el que sea necesario y le das a OK. La siguiente pantalla es muy similar a la que está a continuación:

Escribes el nombre del archivo a guardar (o seleccionas el archivo a copiar a tu F2A, en su caso) y listo.

Para poder continuar tu partida en tu emulador, es necesario que el archivo que hayas guardado sea igual al nombre del ROM y que estén en la misma carpeta. Por ejemplo, si tu juego se llama Juego Super Bueno.gba, el archivo sav debe ser Juego Super Bueno.sav.

Veamos un pequeño ejemplo.

Este es nuestro menú con estos juegos:

La memoria SRAM de nuestro cartucho la tendríamos repartida así:

 256Kb

Es de notar que los juegos Super Mario World, Double Dragon y Magical Quest son de 32Mbits, mientras que Justice League y Metroid Fusion son de 64 Mbits. Cada save de cada juego va a ocupar SIEMPRE 64Kbytes. También hay que fijarse que el último save está compartido por los últimos juegos, Justice League y Double Dragon. En este caso no es "peligroso", puesto que Double Dragon no tiene opción de guardado, por lo que no sobrescribirá el save de Justice League.

Ahora queremos extraer el save de Magical Quest (32Mbits) para jugarlo en nuestro ordenador. Procedemos a hacer lo siguiente:

Seleccionamos la opción Backup Saver

Luego seleccionamos el banco 2 y tamaño 64K.

Por último escribimos el nombre y le damos a Guardar.

Y listo! Ahora tienes que copiarlo junto con tu ROM y abrirlo con el VBA... Para restaurar un save, es exactamente el mismo proceso, pero con el botón de Write Saver.

Espero que este pequeño tutorial haya sido de utilidad. Si tienes alguna duda, no dudes en contactarme por los foros de Game Boy Planet! - Planet Linker!

Tony Cool.