cargando Z80s en el +3

Todo sobre la creación, diseño y programación de nuevo software para
nuestro Spectrum

Moderador: Sir Cilve Sinclair

cargando Z80s en el +3

Notapor djr el Vie Mar 22, 2013 7:23 am

==========================================================================================================
[EDITADO]
Los ficheros descargables en este mensaje fueron retirados, Z80 Loader ya tiene su propio espacio en Speccy.org
aquí http://z80loader3.speccy.org/

Espero gustoso cualquier crítica o sugerencia.

Saludos y gracias.
==========================================================================================================


No sé si este sea el foro correcto, pero es que hace ya unos cuantos años (probablemente 13) me hice un programa para cargar Z80s en un +3 el cual se me rompió hace como una década.

Como recientemente volví a tener un +3, este viejo programa me está resultando sumamente útil, por tal motivo quisiera compartirlo para quien pudiera interesar.

Antes de continuar; tengo entendido que un Divide puede cargar perfectamente un Z80, o también lo hace un +3 modificado con las roms del +3e, pero este programa tiene la ventaja de que no requiere ningún hardware especial, ni modificación de ninguna clase, también permite pokear en los Z80s.

Por lo tanto un +3 en su forma más básica y pura puede cargar Z80s a través de este programa cargador.

La idea es simple, se meten en un disquete tantos Z80s como sea posible, se copia también el programa cargador y se ejecutan estas 3 instrucciones basic:

Código: Seleccionar todo
CLEAR 28671: LOAD "RUNZ80.BIN" CODE: RANDOMIZE USR 28672


y eso es todo, a continuación se muestra una lista de los Z80s en el disquete y se selecciona el que queremos cargar con los cursores y ENTER, como se vé en esta captura:

Imagen

También es probable que se quiera cargar un Z80 en particular sin tener que pasar por el menú, y hasta opcionalmente querer pokearlo, esta sería la forma:

Código: Seleccionar todo
 10 CLEAR 28671: LOAD "RUNZ80.BIN"CODE 28672: RESTORE 110
 20:
 30 DIM p(4,2)
 40 FOR i=1 TO 4
 50 READ p(i,1): READ p(i,2)
 60 NEXT i
 70:
 80 LET a$="GBERET"
 90 RANDOMIZE USR 28672
100:
110 DATA 41651,0: REM vidas
120 DATA 41652,0
130 DATA 41653,0
140 DATA 41654,0


en la linea 50 se llena una matriz "p" con los pokes a meter, y en la variable alfanumérica "a$" de la línea 80 se indica el nombre del Z80 que queremos cargar.

Aquí una captura del "Z80 Loader" en acción:

Imagen
Imagen

En este enlace hay una imagen de diskette que puede ser probada directamente en un emulador, la cual contiene un puñado de Z80s y los 2 ejemplos anteriores mas un pequeño instructivo que hice hace años.

http://rapidshare.com/files/1051854566/RUNZ80.DSK

Lógicamente esta imagen de disquete es para probar el cargador en un emulador, ya que no tiene ninguna lógica ni sentido ejecutarlo en este entorno, aunque si servirá para volcar la imagen en un disquete verdadero de 3.5" con las CPDTOOLS por ejemplo.

Sin embargo si no podemos hacer uso de las CPDTOOLS, entonces en este enlace:

http://rapidshare.com/files/2643941027/runz80.tap

hay un TAP con el programa en cuestión para que puede ser pasado a un +3, usando alguna utilidad como K7ZX o similar de la siguiente manera:

Código: Seleccionar todo
LOAD "t:"
CLEAR 28671
MERGE "": LOAD ""CODE
SAVE "runz80" LINE 10
SAVE "runz80.bin" CODE 28672,5085


Y finalmente aquí dejo a disposición de quien quiera el código fuente, el cual está preparado para ser ensamblado con TASM con las opciones "-80 -l -f00 -g3", con la única precaución que este es un texto 100% DOS puro.

http://rapidshare.com/files/4182876431/RUNZ80.ASM

Pues mas nada... espero que este programa al que bauticé RUNZ80 pueda ser de utilidad para alguien.


Saludos.
Ultima edición por djr el Dom Mar 24, 2013 8:55 am, editado 2 veces en total
Imagen

L BREAK into program, 10:1
Avatar de Usuario
djr
Herbert
 
Mensajes: 93
Registrado: Mie Ago 22, 2012 8:10 am

Re: cargando Z80s en el +3

Notapor sromero el Vie Mar 22, 2013 9:32 am

Hola,

Me parece un programa estupendo, y creo que se merece estar alojado en algún sitio más "speccy-related" que rapidshare :D

En Speccy.org nos gustaría ofrecerte, si lo quieres, alojamiento web para que pongas los ficheros del programa y los presentes. Los puedes subir por FTP y te pones una web todo lo sencilla o compleja que quieras para presentarlo. La URL sería http://z80loader.speccy.org, http://z80loader3.speccy.org, http://z80loaderPlus3.speccy.org o similar (la que tú nos digas).

Si no quieres complicarte la vida con la web, puedes hacer una web html puro rollo "fondo blanco + logotipo z80loader + el texto de este hilo + enlace a los ficheros"...

Si te parece bien, confírmalo en este hilo y te creamos la cuenta y te pasamos las credenciales de acceso FTP por mensaje privado. Nosotros nos encargaríamos además de publicar la noticia en el portal y en nuestra cuenta de Twitter, para presentar la aplicación, que creemos que es muy útil.

Un saludo.
NoP / Compiler
Avatar de Usuario
sromero
Nonamed
 
Mensajes: 1221
Registrado: Mar Abr 17, 2007 12:35 pm
Ubicación: Valencia

Re: cargando Z80s en el +3

Notapor oblo el Vie Mar 22, 2013 10:13 am

Está pero que muy bien, muchas gracias por compartirlo :) Otra cosa más para probar esta semana santa.

salu2
Avatar de Usuario
oblo
Sabreman
 
Mensajes: 327
Registrado: Lun Feb 07, 2011 10:53 am

Re: cargando Z80s en el +3

Notapor miguel el Vie Mar 22, 2013 11:03 am

Está muy bien el programa, pero que muy bien.

Santi ya te ha ofrecido hosting. Si no quieres/sabes/puedes/apetece hacer la WEB, yo me ofrezco a hacerte una sencillita en dos patadas. Sin compromiso, no te sientas obligado.

Saludos y gracias.
Mi colección retro.
10 PRINT "TODOS SOMOS SROMERO, MENOS UNO QUE SE CREE QUE SÍ"
20 GO TO 10
Avatar de Usuario
miguel
Manic Miner
 
Mensajes: 293
Registrado: Mar Abr 17, 2007 12:27 am
Ubicación: Parla - Madrid

Re: cargando Z80s en el +3

Notapor antoniovillena el Vie Mar 22, 2013 1:33 pm

A mí también me ha gustado. Sería interesante ampliarla para soportar archivos .SNA. Mi pequeña aportación ha sido crearte un archivo make.bat que está aquí:

http://retrolandia.net/foro/showthread.php?tid=71
Imagen
Avatar de Usuario
antoniovillena
Nonamed
 
Mensajes: 1162
Registrado: Dom Ene 09, 2011 9:55 am

Re: cargando Z80s en el +3

Notapor djr el Vie Mar 22, 2013 2:33 pm

sromero escribió:Si te parece bien, confírmalo en este hilo y te creamos la cuenta y te pasamos las credenciales de acceso FTP por mensaje privado. Nosotros nos encargaríamos además de publicar la noticia en el portal y en nuestra cuenta de Twitter, para presentar la aplicación, que creemos que es muy útil.


¡Pues adelante entonces!, mándame las credenciales y veré de hacerlo en la noche del sábado que pienso que podré hacerme de un par de horas para dedicarle.

Pienso que http://z80loader3.speccy.org estaría bien, si a ti te parece.

Un saludo y gracias por acoger esta utilidad.

(hay mas mensajes en este hilo que mas tarde responderé ahora debo salir corriendo para mi trabajo) :(
Imagen

L BREAK into program, 10:1
Avatar de Usuario
djr
Herbert
 
Mensajes: 93
Registrado: Mie Ago 22, 2012 8:10 am

Re: cargando Z80s en el +3

Notapor djr el Dom Mar 24, 2013 9:20 am

Los ficheros descargables en el primer mensaje de este hilo fueron retirados,
Z80 Loader ya tiene su propio espacio en Speccy.org
aquí http://z80loader3.speccy.org/

Espero gustoso cualquier crítica o sugerencia.

Saludos y gracias.
Imagen

L BREAK into program, 10:1
Avatar de Usuario
djr
Herbert
 
Mensajes: 93
Registrado: Mie Ago 22, 2012 8:10 am

Re: cargando Z80s en el +3

Notapor antoniovillena el Dom Mar 24, 2013 11:08 am

Acabo de ampliar la información en el hilo que creé explicando los detalles del archivo make.bat.

Al final de la página oficial aparece esto:
(tema pendiente de cómo hacer para que un fichero Z80 termine dentro de un disquete usable por nuestro +3, escucho sugerencias buscando el método más rápido y práctico, los invito a este hilo para discutirlo)


Puedes hacerlo con la utilidad iDSK. Tan sólo tienes que añadir los archivos .Z80 al archivo .DSK con la siguiente orden:
Código: Seleccionar todo
iDSK archivo.dsk -i archivo.z80 -t 0
Imagen
Avatar de Usuario
antoniovillena
Nonamed
 
Mensajes: 1162
Registrado: Dom Ene 09, 2011 9:55 am

Re: cargando Z80s en el +3

Notapor Izaro el Mar Mar 26, 2013 2:27 pm

si señor gran aplicacion
Izaro
rst 0
 
Mensajes: 10
Registrado: Lun Abr 30, 2012 5:28 pm

Re: cargando Z80s en el +3

Notapor sromero el Mar Mar 26, 2013 4:05 pm

antoniovillena escribió:Acabo de ampliar la información en el hilo que creé explicando los detalles del archivo make.bat.


Además de enlazarlo, podría ser interesante "reproducir" la información aquí para que si alguien llega a este hilo desde la web del autor del Z80Loader+3, lo tenga todo "autocontenido" ...

¿Te animas a hacer un pequeño resumen similar al del hilo que enlazas?
NoP / Compiler
Avatar de Usuario
sromero
Nonamed
 
Mensajes: 1221
Registrado: Mar Abr 17, 2007 12:35 pm
Ubicación: Valencia

Re: cargando Z80s en el +3

Notapor antoniovillena el Mar Mar 26, 2013 4:44 pm

Ok, procedo.

Voy a explicar los dos pasos por separado. El primer paso es ensamblar y crear la imagen de disco de 3", y el segundo paso es introducir en la imagen de disco los diferentes snapshots. Seguramente la mayor parte de vosotros estéis interesados en lo último.

Proceso de ensamblado y creación de imagen:

Uso el siguiente archivo make (he modificado el original renombrando runz80 por disk para que el disco sea autoejecutable).

Código: Seleccionar todo
zmakebas -r -o disk runz80.bas
sjasmplus runz80.asm
GenTape runz80.tap                          ^
        basic 'runz80'       10 disk        ^
        hdata 'runz80.bin' 7000 runz80.bin
genp3h  disk        basic    10
genp3h  runz80.bin  hdata  7000
iDSK runz80.dsk -n -i runz80.bin disk -t 0


La primera instrucción genera el binario disk a partir del archivo fuente runz80.bas mediante la utilidad zmakebas.

La segunda instrucción ensambla el archivo runz80.asm con SjASMPlus, generando el archivo binario runz80.bin.

La tercera instrucción crea el archivo TAP partiendo de los archivos generados anteriormente. Se puede crear igualmente un TZX ó un WAV sin más que cambiar la extensión. La utilidad necesaria para hacer esto se llama GenTape.

Por último tenemos la creación del archivo .DSK. A diferencia del autor que usó CPDTOOLs, yo he empleado iDSK. También es necesaria la utilidad genp3h para generar las cabeceras.

Añadir snapshots al archivo .DSK:

Partiendo del runz80.dsk anterior, añadir snapshots sería tan sencillo como ejecutar la siguiente orden:

Código: Seleccionar todo
iDSK runz80.dsk -i manic.z80 fernando.z80 -t 0


Aquí tenéis el archivo runz80.dsk, resultado de haber aplicado los 2 pasos anteriores.
Imagen
Avatar de Usuario
antoniovillena
Nonamed
 
Mensajes: 1162
Registrado: Dom Ene 09, 2011 9:55 am

Re: cargando Z80s en el +3

Notapor sromero el Mar Mar 26, 2013 6:45 pm

Mil gracias :)
NoP / Compiler
Avatar de Usuario
sromero
Nonamed
 
Mensajes: 1221
Registrado: Mar Abr 17, 2007 12:35 pm
Ubicación: Valencia

Re: cargando Z80s en el +3

Notapor Shikitin el Mie Mar 27, 2013 10:38 am

Gracias, me parece estupendo. :D
Imagen
Avatar de Usuario
Shikitin
Herbert
 
Mensajes: 64
Registrado: Lun Mar 12, 2012 12:27 pm
Ubicación: En un lugar de la Mancha...


Volver a Programación y nuevos desarrollos

¿Quién está conectado?

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