Return Home: un matamarcianos para Amstrad CPC desarrollado íntegramente en ensamblador Z80

Ya podéis echar un vistazo a Return Home, un nuevo shoot ‘em up para los modelos Amstrad CPC 464, 664 y 6128 que destaca tanto por su jugabilidad como por su impresionante apartado técnico. El proyecto ha sido desarrollado íntegramente en ensamblador Z80, prescindiendo por completo del firmware del ordenador para exprimir al máximo el hardware de la máquina.

En Return Home nos ponemos a los mandos de una nave espacial cuyo único objetivo es regresar a casa. La acción transcurre con la nave situada en el lado derecho de la pantalla, disparando hacia la izquierda mientras interminables oleadas de enemigos aparecen desde ese mismo lado. Todo ello acompañado por un llamativo escenario compuesto por un scroll de ciudad, un fondo de estrellas con tres capas de parallax y una transición visual que va mostrando cómo la gran ciudad deja paso poco a poco a tranquilas zonas residenciales a medida que nos acercamos al hogar.

El juego se desarrolla a lo largo de cinco sectores, cada uno más exigente que el anterior. La progresión está perfectamente estructurada mediante patrones, oleadas y sectores, alcanzando un total de 375 enemigos si queremos completar la aventura. Además, cada sector incrementa la velocidad de los enemigos, obligando al jugador a mejorar constantemente sus reflejos.

Para mantener la acción variada, el título incorpora cinco tipos de enemigos, cada uno con su propio comportamiento y diseño: trayectorias sinusoidales, ataques diagonales, formaciones en muro, grandes enemigos con movimiento ondulante y peligrosas serpientes. A ello se suma un sistema de mejoras de armamento, que recompensa las rachas de eliminaciones consecutivas permitiendo evolucionar desde un disparo simple hasta un potente disparo triple. Sin embargo, cualquier error hará perder estas mejoras, aumentando la tensión durante la partida.

Uno de los aspectos más llamativos de Return Home es el enorme trabajo técnico realizado por su autor. El juego funciona completamente sin firmware, tomando el control del CPC desde el arranque y comunicándose directamente con componentes como el Gate Array, el CRTC, el PSG y el teclado. También utiliza doble búfer por hardware, alternando entre dos páginas de vídeo de 16 KB para conseguir una animación completamente fluida.

Todo el contenido gráfico ha sido generado específicamente para el juego. Incluye una fuente de caracteres propia, sprites enmascarados creados en tiempo de ejecución, una ciudad generada de forma procedural, un espectacular efecto raster en la pantalla de título y una pantalla final en overscan de 32 KB comprimida para aprovechar al máximo el espacio disponible en disco.

El proyecto también pone a disposición de los desarrolladores todo su código fuente bajo licencia MIT, incluyendo la herramienta de construcción, documentación técnica y un detallado análisis del rendimiento, donde se explica cómo se optimizó el consumo de ciclos de CPU instrucción por instrucción.

Actualmente, Return Home ha sido probado con éxito en varios emuladores como JavaCPC, WinAPE, Caprice, Retro Virtual Machine y Arnold, aunque sus autores indican que todavía está pendiente de ser verificado en hardware real.

Sin duda, estamos ante un proyecto que demuestra hasta dónde puede llegar el Amstrad CPC cuando se programa directamente sobre el hardware, ofreciendo un auténtico escaparate de técnicas avanzadas de programación para uno de los microordenadores de 8 bits más queridos por la comunidad.



Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *