0xFF Ensamblador ZX Spectrum Pong – Introducción
El objetivo del presente tutorial es adquirir las nociones básicas que nos permitirán, más adelante, realizar nuestros propios desarrollos en Ensamblador ZX Spectrum.
Para hacer más ameno el proceso, vamos a desarrollar, paso a paso, una versión de uno de los videojuegos más famosos de todos los tiempos, Pong.
Tabla de contenidos
Ensamblador ZX Spectrum Pong
Nuestra versión va a ocupar poco más de 1.5 Kb y es compatible con los modelos de 16, 48 y 128 Kb de ZX Spectrum.
A cada paso veremos algo nuevo, y el resultado será algo funcional, haremos cosas que luego cambiaremos, hasta concluir el desarrollo de nuestro Pong en ensamblador ZX Spectrum.
No se pretende hacer un código optimizado, más bien mostrar, paso a paso, cómo hacer las cosas de distintas maneras.
Herramientas que vamos a usar
A continuación, se detallan las herramientas que vamos a usar para el desarrollo de nuestro Pong.
Editor de texto
Cualquier editor de texto vale, por sencillo que sea, como es el caso del Bloc de notas de Windows.
Otros editores gratuitos, más potentes y con resaltado de sintaxis son:
- Notepad++
- Visual Studio Code, instalando la extensión Z80 Assembly (imanolea.z80-asm)
- Sublime Text, instalando el paquete z80asm-ti
Emulador de ZX Spectrum
Son muchos los emuladores de ZX Spectrum, siendo quizá los gratuitos los mejores.
Para el tutorial vamos a utilizar ZEsarUX, un emulador de desarrollo español y disponible para Windows, Mac y Linux.
Compilador de ensamblador
Para este tutorial vamos a utilizar PASMO, que es un ensamblador cruzado con versiones para Windows, Mac y Linux, y que genera código ejecutable, para entre otros, el ZX Spectrum.
PASMO funciona por línea de comandos, por lo que, si usas Windows, es recomendable incluirlo en la variable Path para que se pueda ejecutar desde cualquier directorio.
A continuación, os dejo un vídeo explicando como incluir la ruta de PASMO en las variables de entorno.
Control de código fuente
Es una buena práctica tener algún tipo de control de código fuente, para que en caso de que algo deje de funcionar poder ver como estaba en una versión anterior.
Es nuestro caso he optado por Git, creando un repositorio local e instalando en Visual Studio Code la extensión Git Graph (mhutchie.git-graph).
Este no es un requisito obligatorio, aunque es muy recomendable.
Enlaces de interés
- Notepad++
- Visual Studio Code
- Sublime Text
- ZEsarUX
- PASMO
- Git
- Curso de ensamblador Z80 de Compiler Software
- Referencia Z80
- Ensamblador Z80 en Telegram
- Tutorial completo en formato PDF
- Poyecto en itch.io.
- Archivo .dsk con los juegos de los tutoriales
- Personalización y depuración con ZEsarUX
Ensamblador para ZX Spectrum PONG por Juan Antonio Rubio García.
Comentarios al código por Spirax.
Correcciones al texto original realizadas por Joaquín Ferrero.
Esta obra está bajo licencia de Creative Commons Reconocimiento-NoComercial-CompartitIgual 4.0 Internacional License.
Este tutorial ha sido publicado con anterioridad en AUA y se han grabado vídeos que están publicados a través de Retro Parla.
No olvides visitar las webs amigas.
También puedes visitar el resto de tutoriales:
Y recuerda, si lo usas no te limites a copiarlo, intenta entenderlo y adaptarlo a tus necesidades.
Pingback: Taller de ensamblador para ZX Spectrum 16K - Pong - Espamática
Pingback: 0x00 Ensamblador ZX Spectrum Marciano - Introducción - Espamática
Pingback: 0x0F Ensamblador ZX Spectrum Marciano - Depuración - Espamática
Pingback: 0x01 Ensamblador ZX Spectrum OXO - tablero de juego - Espamática