Rush #01: Programación para Spectrum: Técnicas 3D Innovadoras

Gráficos 3D rápidos para SPECCY, ¿es esto posible? Tal vez el siguiente artículo revele para usted las capacidades previamente desconocidas de SPECCY y resulte útil al trabajar con objetos tridimensionales. El artículo está dirigido a lectores más o menos preparados, pero puede ser útil incluso para usuarios principiantes...

A pesar de cierta caoticidad y falta de claridad en la presentación de la información, aquí se describe, en cierta medida, un método excepcional para trabajar con objetos 3D en tiempo real. El procedimiento es notable porque funciona muy rápido. La esencia de este método radica en que no se rota cada punto individualmente, sino toda una superficie de una vez. Este método puede ser útil no solo para crear efectos vectoriales geniales, sino también para escribir nuevos juegos. ¡Y cómo se verían genial los viejos juegos vectoriales, rehacidos teniendo en cuenta los últimos logros de codificación! Por ejemplo, ¡ELITE funcionando de 2 a 3 veces más rápido o más suave!

Pasemos, en realidad, al material proporcionado por RUFF, incluso antes de que sintiera el gusto por escribir juegos en Amiga y comenzara a "codificar" allí con éxito... Un buen ejemplo que ilustra el algoritmo descrito a continuación es el efecto de la demo "Hallutinations in Opera": un hombre 3D giratorio, compuesto solo de vectores.

Una vez leí un artículo en "ECHO 1" sobre la representación de objetos 3D. Allí se describe el método tradicional que todos (los que saben) utilizan. Es, por supuesto, muy interesante rotar puntos alrededor de los ejes X, Y y Z utilizando fórmulas especiales.

Para rotar alrededor del eje X:
Y' = COS(N) * Y - SIN(N) * Z
Z' = SIN(N) * Y + COS(N) * Z

Alrededor del eje Y:
X' = SIN(N) * Z + COS(N) * X
Z' = COS(N) * Z - SIN(N) * X

Alrededor del eje Z:
X' = COS(N) * X - SIN(N) * Y
Y' = SIN(N) * X + COS(N) * Y

(N - ángulo de rotación)

Este método tiene desventajas. O más bien, una desventaja muy grande: ¡toma mucho tiempo! Las operaciones de multiplicación (por rápidas que sean) y el cálculo de COS y SIN (incluso usando una tabla) llevan un tiempo considerable. Si consideramos el problema de los signos y el hecho de que normalmente se rotan objetos alrededor de los tres ejes a la vez (algunos incluso utilizan una calculadora BASIC), no queda más remedio que calcular primero las coordenadas y luego representar los gráficos. Algunos incluso cargan por separado las coordenadas calculadas en BASIC. ¡Eso es un lamerismo! (salvo en casos aislados). Sin embargo, a veces se encuentran programas con CÁLCULO 3D EN TIEMPO REAL. ¡Pero cómo se ralentizan!

...Eso fue una introducción. Ahora, más cerca del asunto. He ideado un nuevo método para representar objetos 3D. Aquí están sus ventajas:

- Es mucho (!!!) más rápido que el método descrito anteriormente. Para calcular las coordenadas de un solo punto, se necesitan aproximadamente 200 ciclos (si se desea, se puede hacer aún más rápido).
- Un objeto 3D no solo se puede rotar, sino también deformar (estirar, comprimir, etc.).

No puedo proporcionar aquí el listado completo de este efecto, así que lo doy en partes que ustedes mismos ensamblarán y complementarán según lo necesiten.

Aquí está el primer fragmento: el procedimiento mismo para imprimir un objeto 3D:

PRINT:

LD (SAV+1),SP ; guardo SP
LD SP,...

; ... - Esta es la dirección inicial de las coordenadas de los puntos del objeto 3D. Cada punto ocupa 4 bytes (3 bytes - coordenadas X, Y, Z; 1 byte - byte superior de la tabla de ejes (de la que hablaré más adelante). Este byte, por cierto, se denota más adelante como TABAX).

EXX
LD HL,BUFER ; Búfer especial para limpiar la pantalla
; (ver más abajo)

LD B,175 ; número de puntos-vectores

LP1

; A continuación, se presenta el procedimiento para imprimir un solo punto:

EXX
POP BC ; en BC - Y,X
POP HL ; en HL - byte superior de la tabla de ejes, Z

LD A,(HL)
LD E,L
LD L,B
INC H
ADD A,(HL)
INC H
LD L,C
ADD A,(HL)
ADD A,HX
LD C,A
INC H
LD A,(HL)
LD L,E
INC H
ADD A,(HL)
LD L,B
INC H
ADD A,(HL)
ADD A,LX
LD L,A

; Ahora las coordenadas de los puntos (X e Y en la pantalla) están calculadas y se han colocado en los registros C y L. A continuación, se presenta el procedimiento para imprimir el punto en las coordenadas de estos registros (69 ciclos). Para ello, se necesita una tabla especial, así que quien no conozca este procedimiento puede usar el suyo.

PLOT:
LD H,TABLE_P
LD D,(HL)
INC H
LD A,(HL)
INC H
LD L,C
ADD A,(HL)
INC H
LD E,A
LD A,(DE)
OR (HL)
LD (DE),A

; Bueno, ya está. Hemos impreso el punto, ahora se puede (si se desea) colocar en un búfer especial la dirección en la pantalla de este punto (para poder limpiar rápidamente la pantalla usando el método POP HL: LD (HL),0: POP HL: LD (HL),0: POP HL...).

LD A,D
EXX
DEC HL ; La dirección del búfer crece al revés (para comodidad).
LD (HL),A
EXX
LD A,E
EXX
DEC HL
LD (HL),A

DJNZ LP1 ; Siguiente punto.

SAV LD SP,0
RET

Las instrucciones LD SP,0 : RET se ven un poco extrañas, pero ahorran memoria.

Espero que hayan adivinado que este procedimiento por sí solo no hará nada. AÚN se necesita escribir un procedimiento para limpiar la pantalla y un procedimiento para crear las tablas de ejes. Aquí no las incluyo por el mayor volumen (longitud) que ocupan. Por supuesto, podría haber escrito el procedimiento de limpieza de la pantalla, pero respecto a esto, cada uno tiene sus propios principios (quien escribiría un instalador, quien colocaría todo en DUPs, etc. y etc.). En resumen, escríbanlo ustedes mismos. En cuanto a la creación de tablas con las coordenadas de los ejes, es mejor que primero explique el principio.

Y ===== ....
________________ === == . .
/!^ ! == . .
/ !* ! === . .
/ !>48 ! === . .
/ !* ! === . .
! !* .A ! == . .
! !* ! === == . .
! !* ! ===== ....
! !* !
! !* ! dibujo 1
! !* !
! !* 32 !
! _______^________!
! 30/****************>/ X
! ^/* /
! /* /
!/<________________/

Mire el DIBUJO 1. Como habrán adivinado, este es un cubo. Imagina que dentro de él hay un objeto 3D. Cada punto de este objeto tiene tres coordenadas en los ejes Y, X y Z. Aquí los ejes no son infinitos. Por ejemplo, pueden consistir en 64 puntos (coordenadas). Es decir, se puede especificar un punto con tres números de 0 a 63. Y ahora lo más interesante...

Tomemos, por ejemplo, el punto A con coordenadas Y=48, X=32, Z=30. ¿Cómo saber sus coordenadas en la pantalla, teniendo en cuenta que el eje Z está girado como en el dibujo? En cada eje hay un punto marcado con la coordenada correspondiente. Lo principal es conocer las coordenadas Y y X de esos puntos y del centro (punto de intersección de los ejes) en la pantalla. Supongamos que los conocemos:

Coordenadas desde la esquina superior izquierda Y,X:

En el eje Y - 70,46
En el eje X - 172,140
En el eje Z - 180,40
Centro - 172,46

Para calcular las coordenadas en la pantalla del punto "A", aplicamos dos fórmulas simples:

Designemos las coordenadas en la pantalla (lo mismo que arriba, solo que en lugar de números letras):

En el eje Y - Yy, Xy
En el eje X - Yx, Xx
En el eje Z - Yz, Xz
Centro - Yc, Xc

Entonces, las fórmulas son:

Y = (Yy - Yc) + (Yx - Yc) + (Yz - Yc) + Yc
X = (Xy - Xc) + (Xx - Xc) + (Xz - Xc) + Xc

Sustituyendo los valores:

Y = (70 - 172) + (172 - 172) + (180 - 172) + 172 = 78
X = (46 - 46) + (140 - 46) + (40 - 46) + 46 = 134

Las coordenadas del punto "A" en la pantalla son 78,134.

El programa de impresión de objetos 3D mencionado anteriormente hacía precisamente eso: calculaba la suma (aunque de manera un poco diferente), imprimía el punto y recordaba la dirección en la pantalla. ¿Y qué debería hacer el programa de cálculo de coordenadas de los ejes? — Por supuesto, calcular las coordenadas de los ejes... Pero primero, aclaremos las fórmulas... Ustedes, probablemente, ya han estado desglosando los paréntesis, simplificando las coordenadas del centro y están seguros de que no me he dado cuenta de eso. En realidad, se puede hacer, pero tiene poco sentido.

Aquí está el asunto: de cada coordenada del punto del eje se resta la coordenada del centro. Regresando a las coordenadas de los puntos de los ejes. Como habrán adivinado, será necesario calcular las coordenadas de los 64 puntos de los ejes. Y estas coordenadas las calcularemos no como están en la pantalla, sino con el centro en coordenadas 0,0. Luego solo queda sumar las coordenadas del centro.

El procedimiento mismo para calcular las coordenadas de los ejes no toma mucho tiempo. Por ejemplo, en mi caso (si coloco el procedimiento al inicio de la interrupción) la exploración de fotogramas ni siquiera llega a las primeras líneas de la pantalla. Pero se necesita un búfer para las coordenadas de los ejes. Calculemos su longitud: un eje - 64 puntos, es decir, 128 coordenadas. Hay un total de 3 ejes, por lo que el total de coordenadas es 128 * 3 = 384 coordenadas. Una coordenada - un byte. Pero para acelerar la representación del sprite 3D, es mejor almacenar las coordenadas de un eje en 512 bytes (coordenadas Y - 256 bytes, coordenadas X - 256 bytes. De los 256 bytes, solo se utilizan 64). En total, el búfer será de 512 * 3 = 1536 bytes. Tampoco es mucho.

Bueno, y ahora el programa en sí. El principio de funcionamiento se explicará a medida que avancemos. Como ya se mencionó anteriormente, calcularemos las coordenadas de los ejes como si el centro tuviera coordenadas 0;0. Y luego, al imprimir, sumaremos las coordenadas del centro. Esto ahorrará tiempo. Por cierto, las coordenadas del centro en mi programa se almacenarán en el par de registros IX, así que no cambien su contenido, o guárdenlo y luego recupérenlo (mi programa de cálculo de coordenadas de los ejes está relacionado con el programa de impresión del sprite 3D a través del par IX y el contenido del búfer de coordenadas de los ejes).

AX
; Procedimiento para calcular las coordenadas de los ejes. Las coordenadas (en la pantalla) de los puntos extremos de los ejes se especifican en los registros HL', BC, HL. Las coordenadas del centro en DE. Por cierto, para aquellos que no quieren que el objeto 3D se comprima y estire, pueden usar fórmulas de rotación 3D para rotar esos 4 puntos (busquen).

TABAX EQU 250 (64000 = 250 * 256)

; Byte superior del búfer, en el que se calculan las coordenadas de los ejes. La dirección del búfer es múltiplo de 256 (!!!)

LD A,E
SUB 32
LD E,A
LD A,L
SUB 32
LD L,A
LD A,C
SUB 32
LD C,A
EXX
LD A,L
SUB 32
LD L,A
EXX
LD HX,D ; Se refiere al byte superior de IX,
LD LX,E ; byte inferior de IX.
; (Instrucciones no documentadas del procesador Z-80. 6 ciclos)
LD A,L
PUSH AF
LD A,C
PUSH AF
EXX
LD A,L
PUSH AF
EXX
LD A,H
PUSH AF
LD A,B
PUSH AF
EXX
LD A,TABAX
LD (VAR),A
LD A,H
LD B,HX
CALL K64
POP AF
LD B,HX
CALL K64
POP AF
LD B,HX
CALL K64
POP AF
LD B,LX
CALL K64
POP AF
LD B,LX
CALL K64
POP AF
LD B,LX
CALL K64
RET

K64

; K64 - el procedimiento más importante. Es llamado por el programa un total de 6 veces. Calcula las 64 coordenadas intermedias. La coordenada objetivo está en el registro A, y la fuente en B. La fuente es nuestro centro, así que en B siempre está la coordenada del centro (Y o X). En realidad, aquí solo se necesita para obtener la diferencia (A - B o B - A) y para determinar la dirección (positiva o negativa). Dado que las coordenadas del centro son 0;0 - la dirección de la tabla en 64 bytes (donde colocar todos los números) es múltiplo de 256. Su byte superior se establece en la dirección VAR. Este byte, por cierto, el programa lo incrementa automáticamente en 1 al final. Así que primero calculé las coordenadas Y, llamando a este procedimiento, y luego las X, llamándolo de nuevo. Hay tres ejes, por lo que el procedimiento K64 se llama 6 veces.

CP B
JP C,LOOP1
SUB B
LD L,A
LD H,0
ADD HL,HL
ADD HL,HL
EX DE,HL
LD HL,0

LOOP2

EXX
LD A,(VAR)
LD H,A
INC A
LD (VAR),A
LD L,0
EXX

DUP 64 ; o algún ciclo, tipo
; LD B,64:...:DJNZ ...
LD A,H
ADD HL,DE
EXX
LD (HL),A
INC L
EXX

EDUP

RET

LOOP1

LD C,A
LD A,B
SUB C
LD L,A
LD H,0
ADD HL,HL
ADD HL,HL
EX DE,HL
LD HL,0

LOOP3

EXX
LD A,(VAR)
LD H,A
INC A
LD (VAR),A
LD L,0
EXX

DUP 64 ; o algún ciclo, tipo
; LD B,64:...:DJNZ ...
SBC HL,DE
LD A,H
EXX
LD (HL),A
INC L
EXX

EDUP

RET

CP B
JP C,LOOP4
SUB B
LD L,A
LD H,0
ADD HL,HL
ADD HL,HL
EX DE,HL
LD H,B
LD L,0
JP LOOP2

LOOP4

LD C,A
LD A,B
SUB C
LD L,A
LD H,0
ADD HL,HL
ADD HL,HL
EX DE,HL
ADD A,C
LD H,A
LD L,0
JP LOOP3

VAR

NOP
NOP

Bueno, eso es todo... Para aquellos que no se han metido en todos los matices, o no quieren cambiar y mejorar este método, sino que quieren escribir todo a su manera, algunas recomendaciones:

1. No olviden el formato de almacenamiento de las coordenadas del objeto 3D. No olviden los búferes (coordenadas de los ejes, búfer de eliminación).
2. Calcule las coordenadas de los puntos extremos de los ejes (Kz, Kx, Ky y el centro) utilizando fórmulas de rotación o una tabla sinusoidal.
3. El algoritmo del programa de impresión debe ser algo así:

EI
HALT
DI
CALL PRINT

Colocamos en HL', BC, HL, DE los siguientes valores de la tabla sinusoidal (también hay que tener en cuenta que no sean demasiado grandes, de lo contrario, el sprite puede salirse de la pantalla y entrar por el otro lado).

CALL AX

Limpieza de la pantalla utilizando el búfer de ELIMINACIÓN.

Es deseable adaptar todo para trabajar con dos pantallas.

JP BEGIN

Contenido de la publicación: Rush #01

  • AMIGA NOTICIAS
    Amiga Inc trabaja en Amiga OS 3.5 con mejoras como soporte de unidad de CD y PowerPC. Desarrollo dividido para procesadores M68K y PPC. Lanzamiento retrasado a finales de 1999 o principios de 2000.
  • NOTICIAS AMIGA
    Descripción del visor 'Fast JPEG 1.10' para Amiga, enfocándose en sus características, instalación y uso. Destaca ventajas como el procesamiento rápido sin pérdida de calidad y ofrece consejos para el usuario. Se invita a los lectores a compartir sus experiencias con el software.
  • AMIGA NOTICIAS
    Programación básica para Amiga clásica, discutiendo desafíos y compartiendo conocimientos en codificación Amiga. Resumen de capacidades gráficas de Amiga y características del procesador. Introducción a las especificidades del lenguaje ensamblador de Amiga.
  • AMIGA NEWS
    Resumen de eventos relacionados con la plataforma Amiga desde principios hasta mediados de 1998. Incluye nuevos hardware, lanzamientos de software y colaboraciones destacadas de empresas. Se planifican futuras actualizaciones y desarrollos para el próximo número.
  • NOTICIAS DE AMIGA
    Colección de trucos y secretos para juegos clásicos de Amiga recopilada por Postcard Man. Se anima a los lectores a compartir sus hallazgos sobre juegos complejos. Se proporciona selección de consejos y códigos de niveles para varios juegos.
  • AMIGA NEWS
    Discusión sobre las tarjetas gráficas de Phase-5 y las capacidades del procesador Permedia 2. Detalles sobre la aceleración 2D/3D del Permedia 2 y su compatibilidad. Mención de los procesadores GLINT Delta y comparación de precios y disponibilidad.
  • NOTICIAS DE AMIGA
    Análisis de la supervivencia de Amiga en los 90, destacando los esfuerzos de la comunidad y los avances tecnológicos. Discusión sobre mejoras de hardware y desarrollo de software. Aliento para una mayor exploración y aprendizaje sobre la plataforma Amiga.
  • Programación para Spectrum
    Explicación de un método rápido para gráficos 3D en tiempo real en el ZX Spectrum. Introduce técnicas eficientes de rotación y deformación para objetos 3D. Destaca mejoras sobre métodos tradicionales con ejemplos prácticos.
  • Programación de Spectrum - Ticklish Jim
    Discusión sobre la combinación de efectos de sonido con música para el chip AY de Spectrum. Ejemplos del desarrollo de 'CSC: Deja Vu' y desafíos técnicos enfrentados. Contiene guía práctica y ejemplos de código.
  • Programación de Spectrum
    Discusión sobre el reflejo de bytes y la restauración de fondo en la programación de ZX Spectrum, con ejemplos.
  • Programación para Spectrum
    Guía completa para programadores de sistemas con consejos prácticos para crear software eficiente y fácil de usar, incluyendo técnicas de codificación, compatibilidad con dispositivos y estrategias de prueba de programas.
  • Programación para Spectrum
    Técnicas avanzadas de codificación y métodos modernos de gráficos para ZX Spectrum. Consejos para optimizar procedimientos gráficos y codificación en ensamblador. Consejos útiles para programadores para mejorar el rendimiento y la eficiencia.
  • El Final
    Reflexiones sobre la creación del primer número de la revista 'Rush', sus objetivos, audiencia y desarrollo futuro.
  • ZX-SOFT - Вячеслав Медноногов
    Actualizaciones de desarrollo del nuevo juego 'Black Raven II' de Vyacheslav Mednoy, incluyendo cambios en la jugabilidad, introducción de nuevos hechizos y mejoras de rendimiento.
  • ZX-SOFT
    Descripción general de las nuevas funciones en el comandante actualizado de REAL software para ZX Spectrum, incluyendo gestión de archivos, autodetección y visualización de medios. Mejoras en el manejo de texto, fuente y música. Se abordan preguntas sobre futuras actualizaciones.
  • ZX-SOFT
    Debate sobre qué demo merecía el primer puesto en Funtop'98: Forever de DR o Refresh de XTM. Las discusiones en la comunidad demoscene destacan el choque entre destreza técnica y profundidad conceptual. Las diferentes opiniones reflejan la evolución de las preferencias en la demoscene.
  • Autores
    Reconocimiento a colaboradores y socios en la creación de la revista Rush. Detalle de roles de cada autor y colaboraciones. Reconocimiento a soporte técnico y asociaciones mediáticas.
  • Specky Virtual
    Discusión sobre la conversión de gráficos de PC a Spectrum, con opiniones de varios expertos. Se detallan técnicas para mejorar la calidad de conversión y herramientas como Photoshop. Énfasis en el refinamiento post-conversión en editores gráficos de Spectrum.
  • Espectro Virtual
    Discusión sobre el emulador CBSpeccy para ZX-Spectrum en Amiga, destacando sus características, opiniones de la comunidad y rendimiento técnico. Críticas y elogios por sus capacidades de emulación, en particular en comparación con los emuladores de PC. Examen de posibles mejoras y debates comunitarios sobre las actualizaciones de versión.
  • Espectro Virtual
    FAQ sobre la emulación de ZX-Spectrum en PC, cubriendo emuladores populares y formatos de archivos. Instrucciones para usar diferentes emuladores y gestionar tipos de archivos como Hobeta y TR-DOS. Discusión sobre servidores y recursos rusos orientados al ZX.
  • Introducción
    Introducción a la revista Rush, enfatizando la creatividad, la escena progresiva y el objetivo de crear una fuente de información superior. La revista busca reunir grupos prometedores y ofrecer una perspectiva única. Se enfoca en el contenido y la atmósfera, invitando a los creadores a contribuir.
  • Introducción - Grunge
    Introducción a Rush, una nueva revista para entusiastas de Speccy/Amiga, busca ofrecer contenido de calidad y noticias mientras fomenta la retroalimentación de los lectores.
  • Entrevista - Konex
    Entrevista con el grupo ANTARES después de FUNTOP-98. Discusión sobre sus demos, desafíos y planes futuros. Perspectivas sobre la formación y dinámica del grupo.
  • Entrevista - Kvazar, DUX
    Entrevista con Alexander Seleznev (KVAZAR), discutiendo su historia con las computadoras, el estado de la escena ZX Spectrum y planes futuros.
  • Entrevista - Kvazar
    Entrevista con el grupo de Vitebsk POWER sobre la demo 'Crazy Love', experiencias de desarrollo y proyectos futuros.
  • Informatorium
    Exploración de un CD con emuladores para varias plataformas, destacando Spectrum. Detalla la organización y diversidad de contenidos. Concluye con ideas del CD-ROM Project y su colección de software Spectrum.
  • Informacrium
    Compilación de direcciones de Internet interesantes y útiles relacionadas con recursos de Amiga, incluyendo revistas, fabricantes de hardware y empresas de software.
  • Informacrium - Viator
    Resumen de las publicaciones existentes y futuras sobre la plataforma Amiga. Discusión sobre la disponibilidad y los desafíos de distribución de la literatura Amiga. Llamado a la colaboración con nuevas publicaciones.
  • Sobre la Revista
    Discusión sobre la creación de una revista multiplataforma centrada en Spectrum, Amiga y PC. Énfasis en una comprensión más amplia de la escena informática. Fomentar el profesionalismo y la adaptación a la tecnología cambiante.
  • Mundos Paralelos
    Descripción de la evolución del sistema operativo Windows y los procesadores de PC de 1981 a 2000. Hitos en el desarrollo de MS-DOS, Windows, procesadores Intel y competencia con AMD y Cyrix. Desafíos para mantener la compatibilidad con nuevas tecnologías de procesadores.
  • Mundos Paralelos
    Resumen de modelos Macintosh y su relevancia en los campos de diseño y gráficos, cubriendo precios y especificaciones de 1997-1998. La discusión incluye la evolución del hardware de Apple, notablemente la serie PowerMac, y compara los nuevos procesadores G3 con sus contrapartes de PC. Destaca el resurgimiento de Macintosh después de la crisis y su influencia continua en el mercado.
  • Desarrollo del Spectrum - Slider
    El artículo analiza una nueva extensión gráfica para el ZX Spectrum que mejora las paletas de colores sin aumentar las demandas de recursos. Al usar una señal de flash modificada, se crean nuevos colores sin interferir con la compatibilidad del software existente. El artículo proporciona detalles de implementación y aborda preocupaciones sobre el uso práctico.
  • Desarrollo del Spectrum
    Conexión de un módem CDOS al ordenador 'Compact-128' abordando conflictos de puertos del teclado. Descripción de modificaciones de hardware para resolver el problema. La solución incluye bloqueo automático mediante un inversor de transistor.
  • Desarrollo de Spectrum - Ars
    Discusión sobre el desarrollo de AZX-Monstrum 512K, su compatibilidad de hardware, opciones de procesador y posibles mejoras en gráficos y sistema operativo.
  • Desarrollo de SPECTRUM
    Discusión sobre la nueva plataforma informática de Clive Sinclair, la ZX2000, diseñada para superar a las PC con mayor velocidad, asequibilidad y eficiencia de batería.
  • Desarrollo del Spectrum - Андрей Савичев
    Examen de la evolución y la relevancia continua del procesador Z80 y su papel en los sistemas embebidos. Comparación del Z80 con sus sucesores, destacando ventajas como eficiencia energética y mejoras de comando. Resumen de CPUs integrados basados en Z80 y sus periféricos.
  • Anuncio
    Este artículo es un anuncio de productos de Scorpion, incluyendo hardware para ZX Spectrum y software para Amiga, junto con detalles de precios y pedidos.
  • Publicidad
    Colección de anuncios para hardware y software de Amiga y ZX Spectrum, con información de contacto para vendedores y detalles sobre la nueva suscripción a la revista Amiga.
  • Anuncio
    Anuncio de la placa de música General Sound de X-TRADE. Incluye precios, detalles técnicos e instrucciones de compra. Presenta una sección de preguntas frecuentes e información de compatibilidad.
  • Sentido Sin Sentido - Viator
    Reflexiones filosóficas sobre el existencialismo, la inmortalidad y el destino humano. La narrativa teje historias de ambición, la búsqueda de la vida eterna y una caída utópica. Una mezcla de introspección y ficción especulativa.
  • Escena vs Profesionales
    Exploración de la creatividad de la demoscene frente al desarrollo comercial de juegos. Discusión sobre el potencial para programas de calidad profesional por miembros de la escena. Llamado a la colaboración con grupos destacados de la escena.
  • Crónica de la Escena - Андрей Савичев
    Reflexiones sobre el atractivo perdurable del ZX Spectrum, la resiliencia de su comunidad y su posible resurgimiento en Rusia.
  • Cronología de la Escena
    Descripción general de las actividades del grupo Rush, incluidos proyectos pasados, esfuerzos actuales y planes futuros, con énfasis en el desarrollo de software y juegos.
  • Crónicas de la escena
    El artículo analiza varias noticias de la escena ZX Spectrum, incluidas lanzamientos de juegos, demoparties y actualizaciones de desarrolladores y equipos.
  • Crónicas de la Escena
    El artículo trata sobre el festival internacional de arte computacional FUNTOP'98 que se celebró en Moscú, destacando los eventos clave, asistentes notables y las distintas competiciones celebradas durante el evento.
  • Escena Cronia
    Discusión sobre el desarrollo de la escena Amiga a través de la colaboración, abordando el aislamiento del usuario y promoviendo la expansión de la red.
  • Gestión de la Interfaz
    El artículo describe el control de la interfaz para ZX Spectrum y Amiga, incluidos las teclas y funciones de navegación. Se mencionan características de funcionamiento en Amiga con monitores PAL y se proporciona un contacto para soporte. También se señala que los archivos de texto tienen codificación estándar MS-DOS.