Kit de programación radastaniano para ZX Uno en ZX Basic

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
Haplo
MSX Turbo R
MSX Turbo R
Mensajes: 278
Registrado: 14 Abr 2014, 22:24
Sistema Favorito: PC
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Nintendo NES/Clónica
Ubicación: Ciudad Real
Gracias dadas: 33 veces
Gracias recibidas: 5 veces

Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor Haplo » 28 May 2015, 20:15

Abro este hilo para no mezclar los progresos que vayamos haciendo con este modo gráfico exclusivo para ZX-Uno.
Como reza el asunto, de lo que se trata es de ir poniendo a disposición de quien quiera hacer cositas en el modo radastaniano, códigos en formato ZX Basic para que los pueda usar desde ese entorno sin romperse la cabeza.

Advierto que no soy precisamente un genio de la programación, hacía mucho que no programaba (sobre todo en ensamblador) y eso se nota. Así que no temáis rectificarme o echarme una mano al pescuezo cuando veáis alguna cagadita :mrgreen:

Como es natural, éste es un hilo abierto y se agradece cualquier aporte o feedback.

He cogido lo que publicó Radastan y he tratado de adaptarlo como buenamente he podido. Mi poca experiencia en ZX Basic me ha complicado la aventura (precisamente me metí en este "fregao" para practicar y aprender) y gracias a na_th_an, A. Villena y McLeod, he sacado algo usable.

El kit de momento es muy, muy sencillo. De hecho, la versión que he sacado no tiene algunas rutinas que hizo radastán en motorzxuno.h, algunas las quité porque no me funcionaban ( o no sé cómo hacerlo) y otras las he modificado. Esto por supuesto es temporal y más que nada para tener algo para empezar. Al comparar las 2 versiones (motorzxuno.h y motorzxuno.bas), se aprecia mucho mejor las diferencias.

La demo que usa el kit también la he hecho algo más "interesante", ya que además de pintar el paisaje original, he puesto un bloque a modo de "personaje" que se puede mover por la pantalla usando las teclas q,a,o,p. Al desplazarse va dejando una estela porque me pareció algo chulo y revelador de la naturaleza de este modo gráfico.

radaszx1.JPG
radaszx1.JPG (35.78 KiB) Visto 8514 veces


radaszx2.JPG
radaszx2.JPG (41.52 KiB) Visto 8514 veces




A trasteaaarrr!!

demo.zip
(2.64 KiB) Descargado 424 veces

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor Hark0 » 05 Jun 2015, 06:08

Jur... cuántas cosas por probar... y cuan poco tiempo leches...
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
radastan
Amiga 2500
Amiga 2500
Mensajes: 4542
Registrado: 11 Jun 2007, 19:29
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Sega Genesis/Megadrive
Primera consola: TV Games/Pong Clone
Ubicación: Córdoba
Gracias dadas: 9 veces
Gracias recibidas: 40 veces
Contactar:

Re: Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor radastan » 05 Jun 2015, 09:59

Dímelo a mi. ¿Sabes lo que es tener los medios, los conocimientos, pero que tu vida laboral y familiar no te deje hacer NADA? Estoy desesperado, no he podido programar ni una línea en dos semanas.
Yo tengo una máquina del tiempo, se llama ZX Spectrum, siempre me devuelve a los buenos momentos.
(\.../) (\.../) (\.../) (\.../)
( *.*) ('.'= ) ('.'= ) ('.'= )
(")_(") (")_(") (")_(") (")_(")
╔═══╦═══╦═══╦══╦══╗
║╔═╗║╔═╗║╔═╗╠╣╠╩╣╠╝
║║─║║╚══╣║─╚╝║║─║║
║╚═╝╠══╗║║─╔╗║║─║║
║╔═╗║╚═╝║╚═╝╠╣╠╦╣╠╗
╚╝─╚╩═══╩═══╩══╩══╝

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor Hark0 » 05 Jun 2015, 10:03

radastan escribió:Dímelo a mi. ¿Sabes lo que es tener los medios, los conocimientos, pero que tu vida laboral y familiar no te deje hacer NADA? Estoy desesperado, no he podido programar ni una línea en dos semanas.


Calla calla.... que mañana voy a la RMD.... y ya he dejao a la que te dije... con esa carita que todos sabemos...
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
Haplo
MSX Turbo R
MSX Turbo R
Mensajes: 278
Registrado: 14 Abr 2014, 22:24
Sistema Favorito: PC
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Nintendo NES/Clónica
Ubicación: Ciudad Real
Gracias dadas: 33 veces
Gracias recibidas: 5 veces

Re: Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor Haplo » 05 Jun 2015, 14:14

Ayer estuve "radastaniando" algunos sprites del proyectillo que tengo entre manos y casi me quedo bizco de tanto tirar de zoom, jejej

Iremos viendo como queda, porque de entrada los personajes tendrían que ser de 8x10 o 10x12, ya que estoy limitado también a un área de juego específico. Esto de trabajar a tan baja resolución tiene sus contras, el sintetizar una personalidad o naturaleza en un gráfico con tan pocos pixels es todo un arte.

Avatar de Usuario
na_th_an
Amiga 1200
Amiga 1200
Mensajes: 1273
Registrado: 10 Oct 2012, 11:17
Sistema Favorito: (Otro)
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Sega Master System
Gracias dadas: 18 veces
Gracias recibidas: 15 veces

Re: Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor na_th_an » 05 Jun 2015, 14:39

Puah, en ZX81 con 2 colores y 64x48 píxeles... ahí sí que es complicado ;) ;) :D

Avatar de Usuario
Haplo
MSX Turbo R
MSX Turbo R
Mensajes: 278
Registrado: 14 Abr 2014, 22:24
Sistema Favorito: PC
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Nintendo NES/Clónica
Ubicación: Ciudad Real
Gracias dadas: 33 veces
Gracias recibidas: 5 veces

Re: Kit de programación radastaniano para ZX Uno en ZX Basic

Mensajepor Haplo » 16 Jun 2015, 15:38

Para no mezclar lenguajes, continúo por aquí la duda que planteaba en este mensaje duda con la paleta

Pues no sé dónde está el problema, si cambio las dimensiones del DIM, quito o añado elementos, el compilador se queja en todos los casos. He probado todo lo que se me ha ocurrido y al final he desistido de configurar así la paleta.

Lo he resuelto tirando de tabla en asm:

Código: Seleccionar todo

inicio()

SUB FASTCALL inicio ()

   ' Activamos el modo radastaniano
   OUT 48955,64
   OUT 65339,3

   ' Definimos la paleta
   DIM i As UByte
   FOR i=0 TO 15
      OUT 48955,i
      OUT 65339, PEEK (@paleta+i)
   NEXT i
   'muestra la paleta
   FOR i=0 TO 15
      POKE (16384+i*2), PEEK (@verpaleta+i)
      POKE (16385+i*2), PEEK (@verpaleta+i)
      POKE (16384+64+i*2), PEEK (@verpaleta+i)
      POKE (16385+64+i*2), PEEK (@verpaleta+i)
   NEXT i
   pause 0
END SUB

verpaleta:
' valores iguales del 0 al 15 para pixel izq y dcho
ASM
   DEFB %00000000
   DEFB %00010001
   DEFB %00100010
   DEFB %00110011
   DEFB %01000100
   DEFB %01010101
   DEFB %01100110
   DEFB %01110111
   DEFB %10001000
   DEFB %10011001
   DEFB %10101010
   DEFB %10111011
   DEFB %11001100
   DEFB %11011101
   DEFB %11101110
   DEFB %11111111
END ASM

paleta:
' Valores de la paleta
ASM
   DEFB 0,64,8,3,99,110,128,84,28,18,31,180,188,252,182,255
END ASM


Con este cambio ya funciona como debe. También había un error tonto al mostrar la paleta en pantalla.
test2.JPG
test2.JPG (34.72 KiB) Visto 8250 veces


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

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