La maestría interior...
Metal Slug para Atari STE: Video-1 Video-2
En venta memorias de 512 KB y 1 MB para Amiga 500 y Amiga 500 Plus
En venta disco duro tarjeta micro SD para Atari ST/E, compatible SDHC
Mona lisa con lineas aleatorias en el Atari ST, la version original era para los Atari de 8 bits.
http://beyondbrown.mooo.com/post/mona/
No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.
It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx
WTF
No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.
It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx
"Toda opinión vertida por este usuario intentá estar en concordancia con la física y matemáticas vigentes. En caso de no aceptar ambas, en parte o su totalidad, por favor, abstengase de iniciar una discusión dado que los sistemas son incompatibles".
fbustamante (10/02/2021)
Aqui explican como hace scroll el ghost'n goblins de spectrum. Ahora entiendo por que los decorados son tan feos. Básicamente si quieres hacer scroll rápido en el spectrum tienes que "repetir" muchos gráficos.
http://www.emix8.org/ggdisasm/
No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.
It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx
fbustamante (01/03/2021), Karkayu (01/03/2021)
Y seguramente tambien por una cuestión de memoria... no?
De todos modos no he leido la explicación, aunque he visto el artículo por encima y mola.
Si, basicamente tienen los graficos del decorado prerrotados cada dos pixels => 4 veces, pero que me parece feo es que hay muchas zonas con franjas horizontales con muchos tiles repetidos, en parte para llamar a menos rutinas para copiar los gráficos.
Lo que no tenia ni idea es que no usa doble buffer, utiliza la técnica de "racing the beam", básicamente esperas a que el chip de video empiece a dibujar la pantalla (el borde no vale) y te pones a dibujar a toda pastilla todo de arriba a abajo, incluido los sprites, nada de dibujar primero el decorado y después lo sprites. Así tienes mas tiempo hasta que te pille el barrido en el siguiente frame vez, evitas parpadeos y tener la pantalla a medio dibujar. Esto le pasaba a muchos juegos de pc en cga, ega, etc que cuando hacían scroll horizontal tenias el efecto "estanque de patos" con media pantalla en una posición y la otra mitad en otra.
También esta la optimizacion de usar la pila para leer, escribir o los datos para mayor velocidad, con una intruccion puedes escribir dos bytes (push/pop de).
Guarrerias que habia que hacer para hacer scroll decente en el spectrum por no tener scroll por hardware, si no hacías nada de esto y hacías scroll copiando byte a byte tenias truñacos como el kung fu master...
Joffa hacia algo así para sus juegos pero al parecer su código era automodificable.
No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.
It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx
Si, en muchos aspectos pasar a pc fue un salto hacia atrás (un paso seria un cambio pequeño ), excepto cuando empezaron a salir los simuladores de vuelo para los 386 o 486, movían muchos mas polígonos que un Atari ST o Amiga.
Última edición por swapd0; 01/03/2021 a las 13:46
No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.
It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx
josepzin (01/03/2021)
Muy didáctico,
Estuve viendo el interior del código de las AGT, para saber cómo funciona eso del "sync scroll" en los ST normales.
Por lo que he entendido, te quedas esperando ciertos eventos (consumes unas pocas scanlines sin poder hacer mucho); y entonces encuentras un momento en el que puedes cambiar la dirección de memoria donde apunta el framebuffer; así que en cierto sentido es un scroll hardware, salvo que te consume algunas scanlines; pero nada comparado a tener que repintar toda la pantalla.
Ahora entiendo por qué existen juegos como Gods, o Enchanted Land en los ST normales, con su scroll suave.
La maestría interior...
Metal Slug para Atari STE: Video-1 Video-2
En venta memorias de 512 KB y 1 MB para Amiga 500 y Amiga 500 Plus
En venta disco duro tarjeta micro SD para Atari ST/E, compatible SDHC
El Gods no usaba scroll por hardware (sync scroll).
El sync scroll funciona de la siguiente manera.
1- en un ST normal la dirección de memoria tiene que empezar en una pagina de la RAM (múltiplos de 256 bytes) o lo que es lo mismo, al shifter le pasas el byte alto y medio de una dirección donde quieres poner la pantalla.
2- esto hace que modificando estos valore solo puedes hacer scroll vertical en múltiplos de 8 lineas, ya que una linea horizontal ocupa 160 bytes y si avanzas 256 bytes (lo minimo permitido), pues habras avanzado un scan-line y media pantalla en horizontal.
3- Cambiando a modo monocromo y después a modo color en ciertas posiciones de la pantalla, puedes quitar el borde izquierdo, derecho o ambos, esto hace que el chip de video dibuje un poco mas de los 160bytes. Pero solo se aplica en la linea donde lo hagas, si quieres hacer una fullscreen tienes que hacer esto en todos los scan lines.
4- Dependiendo de los cambios que hagas para abrir los bordes, consigues lineas de distinta longitud, desde 56 bytes a unos 230 bytes IIRC
5- ahora escribes un programa en basic que pruebe todas las combinaciones de lineas que puedes generar y apuntas el desplazamiento que resultaria, por ejemplo, si generas 3 lineas de 56bytes tienes un total de 168bytes, o lo que es lo mismo es como si hubieras desplazado la pantalla 8 bytes que equivale a 16 pixels en horizonta, ya que al dibujar esa scanline, el chip ha dibujado 8 bytes de más. Esto se hace arriba del todo de la pantalla, con todos los colores de la paleta puestos a negro para que no veas porqueria.
Y ya esta. Si quieres hacer scroll en menos de 16 pixels tienes que tener varios framebuffers con la pantalla desplazada varios pixels.
Cuando te pones a trastear con esto de vez en cuando, al volver al GenST (o el ensamblador que uses), te encontraras con la pantalla desplazada 4 pixels WTF!!?!?, esto hizo que Paulo Simoes (o algo asi) y los de sync estuvieran trasteando y descubrieron una forma de desplazarla en bloques de 4 pixels de manera estable. Pero que yo sepa solo se uso en esta demo, y en algo muy básico hecho por Paulo Simoes
Buscandola encontre esta que también lo usa.
Última edición por swapd0; 04/03/2021 a las 17:25
No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.
It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx
fbustamante (04/03/2021)
Logicamente por este tipo de movidas los ports de juegos casi siempre tiraban por hacerlo todo por software y desaprovechaban las capacidades de cada equipo...
fbustamante (04/03/2021)
Marcadores