Zx Spectrum: rutina en ensamblador para manejar SPRITES

Foro dedicado a la programación en todo tipo de sistemas clásicos.
Conectado
Avatar de Usuario
Bubu
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 617
Registrado: 04 Abr 2018, 23:10
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Nintendo GameBoy
Gracias dadas: 14 veces
Gracias recibidas: 19 veces

Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor Bubu » 06 Nov 2018, 01:50

¡Jarl, torpedos!

¿conoce alguien una rutina en ensamblador para el manejo de SPRITES? Me gustaría que cumpliera estas cosas:

- 8 sprites simultáneos máximo
- Movimiento en vertical, horizontal o diagonal (uséase, cualquier dirección)
- Animación mientras se mueve
- Sin parpadeo
- Manejo del color del sprite sobre el color del fondo (aunque haya "attribute clash")
- No es necesaria la prioridad del sprite (Z-order)
- Con o sin sprites preshifted
- Uso de máscaras (transparencias)


Como en Spectrum está ya tó inventao, a ver si alguien me pasa algún enlace en el que venga el motor de sprites en ensamblador, y si es posible algún ejemplo compilado (.z80) para cargar direstamente en emulador.


Thanx in advance!!
Si algo funciona... ¡¡NO LO TOQUES!! ¡¡NI DE COÑA!!

Conectado
Avatar de Usuario
Bubu
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 617
Registrado: 04 Abr 2018, 23:10
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Nintendo GameBoy
Gracias dadas: 14 veces
Gracias recibidas: 19 veces

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor Bubu » 06 Nov 2018, 10:57

Recientemente he descubrido el motor "NIRVANA", pero me parece brutalmente bestial lo que hace, ya que permite 8 sprites a 2 colores por cada 2 scanlines, uséase, sprites multicolor, pero a cambio creo que consume casi toda la CPU en colorear. Además, implementarlo en ASM no es tan trivial, y no encuentro un tutorial al respecto.
Estoy buscando algo más básico, a ver si alguno de vosotros lo coñoce.

P.ej. lo que se muestra en este vidrio:

https://www.youtube.com/watch?v=L_mtf-fUF94


pero por ninguna parte está el engine.
Si algo funciona... ¡¡NO LO TOQUES!! ¡¡NI DE COÑA!!

Avatar de Usuario
gamer80
Atari 1040 STf
Atari 1040 STf
Mensajes: 674
Registrado: 31 Oct 2011, 19:34
Ubicación: ESPARTA
Gracias dadas: 14 veces
Gracias recibidas: 17 veces
Contactar:

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor gamer80 » 06 Nov 2018, 12:44

A mi también me parece alucinante el motor Nirvana, ¿has probado el Gandalf deluxe?. Si parece el Spectrum un CPC :o
Busca por aqui https://www.worldofspectrum.org/forums/discussion/45538/redirect/p1
"Hazlo o no lo hagas, pero no lo intentes" -Maestro Yoda-

Conectado
Avatar de Usuario
Bubu
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 617
Registrado: 04 Abr 2018, 23:10
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Nintendo GameBoy
Gracias dadas: 14 veces
Gracias recibidas: 19 veces

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor Bubu » 06 Nov 2018, 12:58

Sí, sí que lo he catado. Fíjate si es brutal el NIRVANA que en el ZXSPIN ni funciona correctamente, he tenido que ponerlo en el SPECTACULATOR para que lo emule bien. Incluso he juegado a la obra de arte llamada "EL STOMPO", de 2014, juegazo donde se hace un uso del NIRVANA exquisito.
Pero es que ponerme a estudiarlo me llevaría mucho tiempo creo yo, pues no veo por ninguna parte ningún tutorial al respecto, teniendo en cuén que yo pogramo direstamente en ensamblador, nada de Z88DK ni C ni BASIC ( soy así de masoca :D )
Si algo funciona... ¡¡NO LO TOQUES!! ¡¡NI DE COÑA!!

Avatar de Usuario
explorer
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 248
Registrado: 11 May 2014, 17:10
Sistema Favorito: Atari ST
primer_sistema: Atari 800XL/600XL
consola_favorita: Atari 2600
Primera consola: Atari 2600
Ubicación: Valladolid, España
Gracias recibidas: 50 veces
Contactar:

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor explorer » 06 Nov 2018, 13:38

Aquí tienes uno, aunque está más basado en NIRVANA+ (Wiki).


Conectado
Avatar de Usuario
Bubu
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 617
Registrado: 04 Abr 2018, 23:10
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Nintendo GameBoy
Gracias dadas: 14 veces
Gracias recibidas: 19 veces

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor Bubu » 06 Nov 2018, 13:50

Se observa que los sprites no tienen máscara, por lo que cuando un sprite se pone delante del fondo, el fondo desaparece. Yo necesito que el fondo siga ahí, por eso creo que el NIRVANA no es lo que busco ahora pispo. Para otros proyestos quizás sí lo estudie :)
Si algo funciona... ¡¡NO LO TOQUES!! ¡¡NI DE COÑA!!

Avatar de Usuario
gamer80
Atari 1040 STf
Atari 1040 STf
Mensajes: 674
Registrado: 31 Oct 2011, 19:34
Ubicación: ESPARTA
Gracias dadas: 14 veces
Gracias recibidas: 17 veces
Contactar:

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor gamer80 » 06 Nov 2018, 16:15

Si, si que eres masoca... hacer algo medio decente en ensamblador te puede llevar 1 ó 2 años :roll:
Y más habiendo hoy dia engines como el de la Churrera donde se pueden hacer cosas mu bonicas en na de tiempo.
Saludos y adelante!
"Hazlo o no lo hagas, pero no lo intentes" -Maestro Yoda-

Conectado
Avatar de Usuario
Bubu
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 617
Registrado: 04 Abr 2018, 23:10
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Nintendo GameBoy
Gracias dadas: 14 veces
Gracias recibidas: 19 veces

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor Bubu » 06 Nov 2018, 16:17

Hay una pequeña gran diferencia: con la churrera se hacen... churros, uséase, juegos muy buenos, pero todos iguales. Tú ves 10 juegos de la churrera y les pillas inmediatamente la similitud entre uno y otro. Es normal que esto sea así. Sería como tener en papel un dibujo en plantilla, y cá "pogramador" lo colorea como más le guste, pero la plantilla es siempre la pispa. En cambio, pogramar en ensamblador es tener un lienzo en blanco y pinturas, jiji.
Si algo funciona... ¡¡NO LO TOQUES!! ¡¡NI DE COÑA!!

Avatar de Usuario
gamer80
Atari 1040 STf
Atari 1040 STf
Mensajes: 674
Registrado: 31 Oct 2011, 19:34
Ubicación: ESPARTA
Gracias dadas: 14 veces
Gracias recibidas: 17 veces
Contactar:

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor gamer80 » 06 Nov 2018, 16:24

Pues ya en ensamblador, en wos puedes bajarte algún libro, o el de código máquina de la Microhobby que lo explicaba bien.
A ver si sacan un motor en plan Game Maker para los que no tenemos tiempo :roll:
"Hazlo o no lo hagas, pero no lo intentes" -Maestro Yoda-

Conectado
Avatar de Usuario
Bubu
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 617
Registrado: 04 Abr 2018, 23:10
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Nintendo GameBoy
Gracias dadas: 14 veces
Gracias recibidas: 19 veces

Re: Zx Spectrum: rutina en ensamblador para manejar SPRITES

Mensajepor Bubu » 06 Nov 2018, 20:58

El blog de climacus tiene un tutorial con ejemplos y fuentes sobre sprites que promete bastante:

http://programacionjuegosspectrum.blogs ... ccion.html
Si algo funciona... ¡¡NO LO TOQUES!! ¡¡NI DE COÑA!!


Volver a “Programación”

¿Quién está conectado?

Usuarios navegando por este Foro: Namek y 7 invitados