ROMs con autoboot y arranque personalizado
Publicado: 18 Mar 2018, 23:13
El típico arranque con una rom que tiene el esxDOS activado es este
pero queda un poco feo, así que he conseguido que cada vez que arranque mi ZX-Uno me encuentre con esta pantalla
¡Más bonico, verdad !
Para conseguirlo utilizo unas roms con autoboot que he confeccionado. Aquí las tenéis las últimas de la lista
Empezamos con la tercera por abajo que es la que tengo puesta como rom de arranque por defecto. Cuando arranco me sale el Menú del +2A, y si doy al ENTER ejecuto el Loader que me arranca el ZX1PACK
y de ahí a elegir un juego, una demo, etc.
Si en el arranque mantengo pulsada la tecla "B", en lugar del menú +2A lo que arranco es el Beta Basic 4.0
y si no quiero que se ejecute el autoboot, en el arranque mantengo pulsada la tecla CAPS SHIFT
Todo esto se consigue porque en la carpeta raíz de la tarjeta SD tengo el siguiente programa BOOT.BAS
Como veis en el programa si pulso "B" o "b" se ejecutan las línas 200 y 210, que cambia a la carpeta donde tengo los ficheros con el Beta BASIC 4.0 y luego carga el programa mediante un snapshoot de 128K.
Con la línea 50 engancho la cinta con el arranque del ZX1PACK de forma que cuando luego entro en el Loader del menú del +2A carga la compilación.
Con la línea 100 ejecuto el comando 128 que he creado para el esxDOS, y que pasa del modo 48K al modo 128K de la rom con la que se haya arrancado, y entonces es cuando aparece el menú del +2A.
¡Mola!
Bueno sigamos. La penúltima rom lo que hace es cargar el fichero /BOOT.TAP que es el que viene en la compilación ZX1PACK para cuando se instala dentro de la carpeta SPECCY, que es como yo lo tengo instalado. De esta forma arranca directamente la compilación ZX1PACK sin pasar por el menú del +2A.
Tanto esta rom como la anterior cargan los ficheros que están en la carpeta raíz (por eso tienen un / antes del nombre). Esto es importante porque creo que la rom de autorranque que viene con el ZX1PACK lo que carga en el autorranque es BOOT.TAP sin especificar que sea en la carpeta raíz, y cuando reseteas después de cargar un juego la carpeta donde te encuentras no suele ser la raíz, por lo que no carga de nuevo el menú principal del ZX1PACK. Con mis roms este problema no pasa.
Y ya para acabar, la última es una rom con autorranque que he hecho para usar el emulador de BBC Basic.
He comprobado que dentro del emulador no funcionan los comandos LOAD* o SAVE*, ni los comandos DOT del esxDOS, pero si antes de cargar la rom con el emulador se engarza un fichero .TAP con .tapein y .tapeout, los comandos SAVE y LOAD lo utilizarán, permitiendo de esta forma poder salvar y recuperar los programas que tecleemos.
Así, esta rom carga un fichero BOOT.BAS que debe encontrarse en la carpeta /BEEB/. El contenido que tengo en esa carpeta es el siguiente:
Y el contenido del programa /BEEB/BOOT.BAS es este:
Estando dentro del BBC Basic se puede sacar el navegador NMI del esxDOS y cambiar el fichero .TAP con el que se quiera trabajar por otro si así se desea.
Estas roms con autorranque tiene unas limitaciones al trabajar con el navegador NMI del esxDOS (¡ojo uso la versión nueva de david_ps!) que no tienen las roms normales, y es que si bien cargan los snapshots Z80 y SNA sin problemas, no así los .TAP y los TRD. Para los .TAP hay que engarzarlos pulsando la tecla 'I', y luego salir del navegador NMI con ESC y usar el Loader del +2A para cargarlo. Los TRD hay que pulsar CAPS SHIFT + ENTER para entrar en el TR-DOS y luego desde ahí ya cargar los programas con RUN"nombre_programa". Los .BAS no cargan (hacen reset), así que hay que ir al +3 BASIC y luego cargarlos con LOAD*"nombre_programa". Tampoco funciona la carga directa de ficheros .PZX con .loadpzx FICHERO.PZX. Es necesario hacer .loadpzx -n FICHERO.PZX y luego LOAD ""-
Otra cosa curiosa que he visto de las roms de 128K con el esxDOS activado es que cuando pasamos al modo 128 con el comando .128, al principio no funcionan los comandos DOT (.ls, .cd, etc), pero sí los comandos con *. El caso es que si hacemos un CAT *, además de presentarnos el contenido de la carpeta actual de la tarjeta SD, de repente empiezan a funcionar los comando .ls, .cd, etc ¡Curioso!
En el siguiente comentario de este hilo os dejo las roms y el comando .128 por si os lo queréis descargar, ya que por entrada no deja más de 10 adjuntos, y con las imágenes ya los he gastado todos.
pero queda un poco feo, así que he conseguido que cada vez que arranque mi ZX-Uno me encuentre con esta pantalla
¡Más bonico, verdad !
Para conseguirlo utilizo unas roms con autoboot que he confeccionado. Aquí las tenéis las últimas de la lista
Empezamos con la tercera por abajo que es la que tengo puesta como rom de arranque por defecto. Cuando arranco me sale el Menú del +2A, y si doy al ENTER ejecuto el Loader que me arranca el ZX1PACK
y de ahí a elegir un juego, una demo, etc.
Si en el arranque mantengo pulsada la tecla "B", en lugar del menú +2A lo que arranco es el Beta Basic 4.0
y si no quiero que se ejecute el autoboot, en el arranque mantengo pulsada la tecla CAPS SHIFT
Todo esto se consigue porque en la carpeta raíz de la tarjeta SD tengo el siguiente programa BOOT.BAS
Como veis en el programa si pulso "B" o "b" se ejecutan las línas 200 y 210, que cambia a la carpeta donde tengo los ficheros con el Beta BASIC 4.0 y luego carga el programa mediante un snapshoot de 128K.
Con la línea 50 engancho la cinta con el arranque del ZX1PACK de forma que cuando luego entro en el Loader del menú del +2A carga la compilación.
Con la línea 100 ejecuto el comando 128 que he creado para el esxDOS, y que pasa del modo 48K al modo 128K de la rom con la que se haya arrancado, y entonces es cuando aparece el menú del +2A.
¡Mola!
Bueno sigamos. La penúltima rom lo que hace es cargar el fichero /BOOT.TAP que es el que viene en la compilación ZX1PACK para cuando se instala dentro de la carpeta SPECCY, que es como yo lo tengo instalado. De esta forma arranca directamente la compilación ZX1PACK sin pasar por el menú del +2A.
Tanto esta rom como la anterior cargan los ficheros que están en la carpeta raíz (por eso tienen un / antes del nombre). Esto es importante porque creo que la rom de autorranque que viene con el ZX1PACK lo que carga en el autorranque es BOOT.TAP sin especificar que sea en la carpeta raíz, y cuando reseteas después de cargar un juego la carpeta donde te encuentras no suele ser la raíz, por lo que no carga de nuevo el menú principal del ZX1PACK. Con mis roms este problema no pasa.
Y ya para acabar, la última es una rom con autorranque que he hecho para usar el emulador de BBC Basic.
He comprobado que dentro del emulador no funcionan los comandos LOAD* o SAVE*, ni los comandos DOT del esxDOS, pero si antes de cargar la rom con el emulador se engarza un fichero .TAP con .tapein y .tapeout, los comandos SAVE y LOAD lo utilizarán, permitiendo de esta forma poder salvar y recuperar los programas que tecleemos.
Así, esta rom carga un fichero BOOT.BAS que debe encontrarse en la carpeta /BEEB/. El contenido que tengo en esa carpeta es el siguiente:
Y el contenido del programa /BEEB/BOOT.BAS es este:
Estando dentro del BBC Basic se puede sacar el navegador NMI del esxDOS y cambiar el fichero .TAP con el que se quiera trabajar por otro si así se desea.
Estas roms con autorranque tiene unas limitaciones al trabajar con el navegador NMI del esxDOS (¡ojo uso la versión nueva de david_ps!) que no tienen las roms normales, y es que si bien cargan los snapshots Z80 y SNA sin problemas, no así los .TAP y los TRD. Para los .TAP hay que engarzarlos pulsando la tecla 'I', y luego salir del navegador NMI con ESC y usar el Loader del +2A para cargarlo. Los TRD hay que pulsar CAPS SHIFT + ENTER para entrar en el TR-DOS y luego desde ahí ya cargar los programas con RUN"nombre_programa". Los .BAS no cargan (hacen reset), así que hay que ir al +3 BASIC y luego cargarlos con LOAD*"nombre_programa". Tampoco funciona la carga directa de ficheros .PZX con .loadpzx FICHERO.PZX. Es necesario hacer .loadpzx -n FICHERO.PZX y luego LOAD ""-
Otra cosa curiosa que he visto de las roms de 128K con el esxDOS activado es que cuando pasamos al modo 128 con el comando .128, al principio no funcionan los comandos DOT (.ls, .cd, etc), pero sí los comandos con *. El caso es que si hacemos un CAT *, además de presentarnos el contenido de la carpeta actual de la tarjeta SD, de repente empiezan a funcionar los comando .ls, .cd, etc ¡Curioso!
En el siguiente comentario de este hilo os dejo las roms y el comando .128 por si os lo queréis descargar, ya que por entrada no deja más de 10 adjuntos, y con las imágenes ya los he gastado todos.