Manual de uso del interface MEGAFLASH (CAP. 2)

Tanto si estás empezando a programar para sistemas clásicos como si quieres compartir tus conocimientos, aquí encontrarás información al respecto.

Manual de uso del interface MEGAFLASH (CAP. 2)

Notapor wilco2009 » 06/06/2016 16:48

Programas de gestión de las ROMs (Parte 1).
Una de las principales ventajas del interface MEGAFLASH sobre su antecesor el MEGAROM, es que pueden copiarse individualmente las ROMs desde el CPC.
Para ello necesitaremos utilizar un programa que nos permita gestionar dichas ROMs.
Vamos a ver en detalle dos programas que nos permiten gestionar las ROMs del MEGAFLASH; El "MEGAFLASH ROM manager" de Future Soft y el "ROMAN" de Brueggi.

Ambos programas tienen como funciones básicas las de cargar y volcar ROMs desde y hacia disco. Permitiendo insertarlas en uno de los huecos disponibles entre el 0 y el 31. Pero a mi juicio no se puede prescindir de ninguno de los dos, ya que hay funciones que tiene uno y no tiene el otro y viceversa.

MEGAFLASH ROM Manager
Imagen

MEGAFLASH ROM Manager es un programa realizado por Future soft para gestionar las ROMs del interface MEGAFLASH.

Para empezar a configurar nuestra memoria flash, os recomiendo que empecéis con el Megaflash ROM Manager, ya que tiene dos opciones que no aparecen en el otro.
Ambas opciones vienen en el submenú "ROM Management" y son:
  • "Copy ROM": Sirve para copiar una ROM ubicada en una posición en otra.
  • "Initialize Flash": Sirve para inicializar la memoria flash cuando nos viene nueva de fábrica.

Este programa tiene una peculiaridad que quizás no le resulte extraña al que está acostumbrado a un CPC, pero a mí me costó un ratillo de averiguar. Se trata de que para seleccionar las opciones hay que utilizar la tecla "copia" en lugar de la tecla "enter".

El programa se suministra en formato disco y con varias versiones en formato ROM.
Como inicialmente nuestra memoria Flash está vacía y sin inicializar, tendremos que cargar el programa desde disco. Para ello descargaremos el programa aquí.
Adjunto aquí también un enlace alternativo en google drive.

Dentro del ZIP, entre otros archivos, encontraremos lo siguiente:
- "MegaFlashROManager_4_BASIC_V1.45.dsk": contiene la versión de disco del programa.
- "MegaFlashROManager_4_BASIC_V1.45_ROM&Booster.DSK": contiene las versiones de ROM del programa.
El resto de los archivos los ignoraremos por ahora, pero estas dos imagenes de disco las deberemos pasar a un floppy con nuestro programa favorito.
En mi caso utilizo CPCWinXP que lo podéis descargar aquí.

Imagen
Para pasar los programas a floppy utilizaremos el botón de la izquierda con una flecha hacia el disco rotulado como "DSK File", seleccionando el archivo y dejando el resto de opciones por defecto.

Una vez tenemos ambos floppies, insertaremos la versión de disco en el CPC ya sea el disco A o el B.

Teclaremos |A ó |B dependiendo de donde hayamos metido el disco y pulsaremos intro.

Entonces teclearemos RUN"-RMA.BAS" e intro para cargar el programa, tras lo que nos aparecerá un menú como el de arriba.

Lo primero que debemos hacer antes de nada es inicializar la memoria flash. Para ello seleccionaremos la opción "Initialize Flash" dentro del submenú "ROM Management".

Imagen

Tras lo cual el programa nos solicitará que cambiemos el selector a modo escritura.

Imagen

Pero antes de cambiar dicho selector, deberemos hacer una cosa para permitir desproteger el chip. Hay que poner los jumpers de selección de ROM7 y ROM0 a la derecha para permitir al sistema acceder a toda la memoria del chip.

https://lh4.googleusercontent.com/--95E ... C_2771.JPG

Una vez los jumpers en su sitio, ya podemos cambiar el selector a su posición de escritura con lo que se encenderá el led indicando el estado.

Imagen

Tras un instante cambiará el color del borde y oiremos un sonido intermitente que nos indica que la operación ha terminado.

Imagen

Antes de pulsar cualquier tecla devolveremos el selector a su posición original.

Imagen

Una vez desprotegida la memoria flash y siguiendo con las tareas de preparación, vamos a realizar una copia del Basic interno en la ROM0 del chip y del AMSDOS en la ROM7 del mismo.

Para ello devolveremos los jumpers a la posición izquierda para inhabilitar las ROMs del chip y poder acceder a las ROMs del CPC.

Imagen

La idea es copiar las ROMs internas en otro lado para poder después copiarlas en el hueco que les toca.

Utilizaremos la opción Copy ROM del programa, situada en el submenú "ROM Management"

Imagen

Una vez seleccionada nos aparecerá una pantalla que mostrará el contenido actual de las 32 ROMs.
En dicha pantalla deberemos seleccionar la ROM origen.

Seleccionaremos la ROM7 que corresponde al AMSDOS interno del CPC (ya que tenemos los jumpers a la izquierda).

Imagen

Inmediatamente el programa nos pedirá que seleccionemos el lugar donde queremos copiar dicha ROM.
Seleccionaremos por ejemplo la ROM6.

Imagen

Tras lo anterior, y al igual que cuando inicializamos el chip, el programa nos pedirá que cambiemos el selector a modo escritura.

Imagen

Lo haremos de nuevo y pulsaremos una tecla, tras lo cual hara la copia desde la posición original (ROM7) hasta la posición destino (ROM6).

Imagen

Cuando oigamos el sonido correspondiente devolveremos el selector de lectura/escritura a suposición de lectura.

Realizaremos la misma operación pero ahora con la ROM0 (Basic) copiandola a la ROM1.
La situación actual es que tenemos una copia de las dos ROMs internas en dos huecos accesibles en todo momento, por lo que podremos cambiar ahora los jumpers de nuevo a la derecha para poder acceder a las ROM0 y 7 del chip que actualmente están vacías.
Una vez el selector en dicha posición haremos la copia en sentido inverso, es decir desde la ROM6 a la ROM7 y desde la ROM1 a la ROM0.

Al final podremos utilizar la opción Test ROM para comprobar que todo ha ido correctamente, debiendo obtener un resultado como el de la pantalla de abajo.

Imagen

Una vez copiado el Basic y el AMSDOS en sus lugares correspondientes, aun deberemos realizar una tarea preparativa adicional.
Resulta que el 6128 solo inicializa las ROMs desde la 0 hasta la 15, por lo que si queremos aprovechar las ROMs de la 16 a la 31 deberemos instalar un pequeño programa llamado booster en la posición número 15.

Pero resulta que los señores de TFM han pensado que se podía aprovechar mucho mejor esos 16K y han sacado una versión en ROM de su MEGAFLASH ROM Manager que incluye el booster, con lo cual tendremos ambos programas en la ROM15 y nos ahorraremos una posición

Dicha ROM viene en el segundo disco que preparamos al principio y que todavía no hemos usado, por lo que insertaremos dicho disco en el lector.

Dentro del disco encontraremos una serie de archivos con extensión ROM que son programas preparados para cargar en un hueco de nuestro interface.

Utilizaremos la opción "Load 1 ROM" que se encuentra dentro del submenú "File".

Imagen

Escribiremos el nombre del archivo deseado, que en nuestro caso es "-rma---b.ROM", y seguiremos el mismo procedimiento de escritura que hemos utilizado para la Inicialización del chip y para la copia.

Y el resultado será que tendremos el programa "RMA & BOOSTER" en la ROM15.

A partir de ese momento ya no será necesario cargar desde disco el programa de gestión de ROMs, pudiendo llamar al programa en cualquier momento con el comando RSX "|rma".

Quizás sea el momento idóneo para salir del programa con la opción "Reset CPC" del menú "ROM Management" y probar a arrancar el programa.

El procedimiento anterior será el que podremos utilizar para cargar cualquier ROM en el chip, aunque a mi personalmente me parece más sencillo utilizar el programa ROMAN para dicha tarea.

Pero eso lo explicaremos en la próxima entrega, ya que este capítulo se ha quedado un poco largo y probablemente necesitaremos un poco de tiempo para digerirlo.
Los retrocacharros de Wilco
Djurkwhad: ¿Como te llamaba tu mamaita?
Roger: Un Error. Pero mis amigos me llaman Roger. Roger Wilco.
Avatar de Usuario
wilco2009
Veterano
Veterano
 
Mensajes: 591
Registrado: 07/01/2013 15:47

Volver a Desarrollo y programación

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados