ROMs con autoboot y arranque personalizado

Discursiones en general sobre el proyecto que no tienen cabida en otro foro / General discussion for uncateorized topics about the ZX-Uno project
Responder
Avatar de Usuario
desUBIKado
Mensajes: 1002
Registrado: 05 Ago 2016, 22:33

ROMs con autoboot y arranque personalizado

Mensaje por desUBIKado » 18 Mar 2018, 23:13

El típico arranque con una rom que tiene el esxDOS activado es este
01_Arranque_esxDOS.jpg
01_Arranque_esxDOS.jpg (75.5 KiB) Visto 6407 veces
pero queda un poco feo, así que he conseguido que cada vez que arranque mi ZX-Uno me encuentre con esta pantalla
03_Arranque_2A.jpg
03_Arranque_2A.jpg (89.37 KiB) Visto 6407 veces
¡Más bonico, verdad !

Para conseguirlo utilizo unas roms con autoboot que he confeccionado. Aquí las tenéis las últimas de la lista
02_menu_roms_spectrum.jpg
02_menu_roms_spectrum.jpg (162.97 KiB) Visto 6407 veces
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
04_loader_zx1pack.jpg
04_loader_zx1pack.jpg (142.26 KiB) Visto 6407 veces
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
08_arranque_BBC_BASIC.jpg
08_arranque_BBC_BASIC.jpg (140.15 KiB) Visto 6407 veces
y si no quiero que se ejecute el autoboot, en el arranque mantengo pulsada la tecla CAPS SHIFT
09_carpeta_beeb.jpg
09_carpeta_beeb.jpg (85.63 KiB) Visto 6407 veces
Todo esto se consigue porque en la carpeta raíz de la tarjeta SD tengo el siguiente programa BOOT.BAS
07_boot.bas.jpg
07_boot.bas.jpg (118.57 KiB) Visto 6407 veces
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.
06_betabasic4.jpg
06_betabasic4.jpg (78.3 KiB) Visto 6407 veces
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:
05_disabled_autoboot.jpg
05_disabled_autoboot.jpg (81.12 KiB) Visto 6407 veces
Y el contenido del programa /BEEB/BOOT.BAS es este:
10_boot_bbcbasic.jpg
10_boot_bbcbasic.jpg (106.2 KiB) Visto 6407 veces
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.
03_Arranque_2A.jpg
03_Arranque_2A.jpg (89.37 KiB) Visto 6407 veces
Última edición por desUBIKado el 27 Nov 2020, 09:52, editado 5 veces en total.

Avatar de Usuario
desUBIKado
Mensajes: 1002
Registrado: 05 Ago 2016, 22:33

Re: ROMs con autoboot y arranque personalizado

Mensaje por desUBIKado » 18 Mar 2018, 23:14

Las roms que tengo ahora en mi ZX-Uno
2018.03.16 ZX-UNO - ROMS WITH AUTOBOOT.zip
(1.24 MiB) Descargado 294 veces
y el comando .128
128.zip
(172 Bytes) Descargado 283 veces

Avatar de Usuario
cherrerap
Mensajes: 244
Registrado: 19 Ene 2017, 00:30
Ubicación: Lima / Perú

Re: ROMs con autoboot y arranque personalizado

Mensaje por cherrerap » 19 Mar 2018, 16:13

Genial ! Gracias por el aporte.

Imagino que al ser una ROM modificada, podría tener algun problema (mínimo) con algun juego que realice un test de ROM por algun sistema anticopia, aunque pienso deberían ser casos muy contados...

alvcyke
Mensajes: 71
Registrado: 31 Oct 2017, 10:58

Re: ROMs con autoboot y arranque personalizado

Mensaje por alvcyke » 22 Jun 2018, 09:16

Buenas días a todos.

He leído todo lo escrito aquí y, la verdad, me ha encantado. Me ha gustado mucho. Enhorabuena.

Desde que lo vi, y leyendo también todo lo del "ZX-UNO PACK V3.4" (que ha sido lo que he metido en tarjeta SD), he intentado conseguirlo, pero no ha sido posible. Cuando arranca el ZxUno salta directamente al Menú del Pack, no pasa por el Menú del +2A. Llevo tiempo intentándolo (voy consiguiendo cosas poco a poco, estoy bastante verde en todo esto) y no soy capaz de dejarlo como está descrito aquí, que es como me gustaría dejarlo.

Podríais echarme un cable, por favor?.

No sé si será que estoy arrancando con una ROM incorrecta, o que no tengo los archivos necesarios en la raíz de la SD.

Agradecería vuestra ayuda.

Muchas Gracias.

Un saludo.

Avatar de Usuario
desUBIKado
Mensajes: 1002
Registrado: 05 Ago 2016, 22:33

Re: ROMs con autoboot y arranque personalizado

Mensaje por desUBIKado » 23 Jun 2018, 18:57

Hola alvcyke te voy contestando.

El ZX1PACK tiene una "Versión Alternativa dentro de la carpeta SPECCY arrancando con BOOT.TAP". En esta versión el fichero BOOT.TAP que se encuentra en la carpeta raíz de la SD es el que arranca el ZX1PACK. La rom con autoarranque que utilizas estará ejecutando al arrancar ese fichero BOOT.TAP y por eso entra directamente en el ZX1PACK sin pasar por el menú del +2A.

Para que te funcione como a mi lo que debes hacer es crear un programa BASIC en la carpeta raíz de la SD que se llame BOOT.BAS, y que contenga las siguientes instrucciones:

Código: Seleccionar todo

10 .tapein /BOOT.TAP
20 .128
Para codificarlo hazlo arrancando con una rom de 48K, que así te dejará poner comandos . sin problemas como primera instrucción de una línea de código. También se puede hacer con el editor de BASIC de los 128,posting.php?mode=edit&f=27&p=23919 pero entonces hay que empezar la línea con un carácter dos puntos ":".

Luego lo grabas en el directorio raíz de la tarjeta SD con el comando SAVE *"BOOT.BAS" LINE 10

La explicación de lo que hace es muy sencilla. Con el comando .tapein lo dejas todo preparado para que cuando se pulse por ejemplo en el menú del +2A la entrada "Loader" se cargue el fichero /BOOT.TAP que arranca el ZX1PACK. Con el comando .128 pasas del modo de 48K al modo 128K.

Ahora para que sea ese el programa que se ejecute cuando se arranca el core de Spectrum tienes 2 opciones:

1ª Si no tienes instalada la versión 0.8.6 final del esxDOS, por ejemplo la 0.8.6-beta4, debes usar una rom con autoboot que arranque el fichero /BOOT.BAS. En el fichero ZIP que dejé con mis ROMs tienes una.

2ª Y esta es la opción que uso actualmente. Tengo instalado el esxDOS 0.8.6 final que ya tiene soporte de autoarranque, ejecutando en el arranque el programa /SYS/AUTOBOOT.BAS si existe. Para que el autorranque sea efectivo se debe parametrizar este en el fichero /SYS/CONFIG/ESXDOS.CFG

En mi caso, el programa /SYS/AUTOBOOT.BAS que hice tiene la siguiente línea:

Código: Seleccionar todo

10 LOAD *"/BOOT.BAS"
Esta segunda opción es mejor porque las roms con autoarranque que creé tenían una serie de problemas que no suceden con las roms normales que se autoarrancan con el esxDOS 0.8.6 final

alvcyke
Mensajes: 71
Registrado: 31 Oct 2017, 10:58

Re: ROMs con autoboot y arranque personalizado

Mensaje por alvcyke » 24 Jun 2018, 18:07

Gracias, desUBIKado.

He leído tu mensaje por encima. No me puedo poner con ello, porque entre ayer y hoy me ha surgido un nuevo problema; esta vez en la tarjeta SD y/o en el teclado. Seguramente haré algún comentario a ello e Preguntas de Principiante (viewtopic.php?f=12&t=2085).

Estudiaré lo que me has escrito, y en cuanto pueda me pongo con ello. Aunque por lo que has escrito, parece que quedan cosas por contar.

Muchas Gracias.

Responder