Curso Crea Juegos al Estilo Maquinita con Boriel BASIC 🟡③

Aprender a desarrollar videojuegos ⚫①
¡Bienvenidos a un apasionante viaje al corazón de la nostalgia! Este curso te invita a redescubrir la magia de las maquinitas —esas pequeñas joyas electrónicas como Game & Watch, Tronica o los coloridos Jungler, Popeye y Defender— y a crear tus propios juegos inspirados en ellas usando Boriel BASIC en el ZX Spectrum.
No importa si nunca has programado o si el ZX Spectrum es un desconocido para ti: esta guía está pensada para principiantes y amantes del retro por igual. Desde explorar la historia de estas máquinas icónicas hasta construir un juego completo con múltiples pantallas, gráficos vibrantes y mecánicas adictivas, te guiaremos paso a paso con ejemplos prácticos, ejercicios y un proyecto final que podrás compartir con el mundo.
Vamos a diseñar y programar juntos un juego completo que capture la esencia de las maquinitas LCD, con gráficos monocromáticos o en color, usando un emulador de ZX Spectrum. Solo necesitas un ordenador, curiosidad y entusiasmo. ¡No se requiere experiencia previa!
Introducción: La Magia de las Maquinitas
- ¿Qué eran las maquinitas?
- Game & Watch (Nintendo, 1980-1991): Dispositivos portátiles con pantallas LCD monocromáticas, diseños compactos y jugabilidad sencilla que cautivaron a millones.
- Tronica y otras marcas: Variaciones con temáticas únicas, como Shuttle Voyage o Monkey Jump, que ofrecían experiencias similares.
- Maquinitas en color: Títulos como Jungler, Popeye y Defender, que añadían paletas limitadas para un toque visual más vibrante.
- Impacto cultural: Cómo estas máquinas definieron la portabilidad, la simplicidad y la nostalgia en los videojuegos.
- Por qué el ZX Spectrum es perfecto para recrearlas
- Similitudes: Hardware limitado y estética retro que evocan los 80.
- Ventajas de Boriel BASIC: Un lenguaje moderno y eficiente para programar en el ZX Spectrum.
- Qué conseguiremos
- Un motor reutilizable para crear juegos al estilo maquinita.
- Un juego completo con múltiples pantallas, monocromo o en color, listo para compartir.
Capítulo 1: Descubriendo el ZX Spectrum
- 1.1 Un icono de los 80
- El lanzamiento del ZX Spectrum en 1982 y su impacto en Europa.
- Modelos principales: 48K y 128K, y sus diferencias.
- 1.2 Cómo funciona el ZX Spectrum
- Pantalla: 256x192 píxeles, dividida en 32x24 caracteres.
- Colores: 8 tonos y el desafío del attribute clash.
- Sonido: El beeper (48K) y el chip AY (128K).
- 1.3 Emuladores para revivir la magia
- Instalación de emuladores como Fuse y ZEsarUX.
- Cargar programas en formatos .tap y .tzx.
- 1.4 Tus primeros pasos
- Configurar tu entorno: Un editor de texto y un emulador.
- Ejercicio: Mostrar un mensaje en pantalla.
Práctica: Escribe un programa que muestre "¡Bienvenidos al ZX Spectrum!" y pruébalo en tu emulador de elección.
Capítulo 2: Primeros Pasos con Boriel BASIC
- 2.1 ¿Qué hace especial a Boriel BASIC?
- Diferencias con el Sinclair BASIC: Más funciones, mejor rendimiento.
- Por qué es ideal para crear juegos retro.
- 2.2 Preparando el entorno
- Descargar e instalar el compilador ZX BASIC desde boriel.com.
- Cómo compilar tu primer programa a .tap.
- 2.3 Dominando lo básico
- Variables: UBYTE, UINTEGER y más.
- Estructuras de control: "I"F, FOR, WHILE, SUB.
- Comandos esenciales: PRINT, CLS, BEEP.
- 2.4 Tu primer programa
- Mostrar texto y añadir un pitido retro.
- Ejercicio: Mover un carácter por la pantalla con teclas.
Práctica: Crea un programa que mueva un sprite (carácter ASCII) usando las teclas Q y A.
Capítulo 3: Gráficos que Cautivan
- 3.1 La pantalla del ZX Spectrum
- Entender la resolución y los atributos de color (8x8).
- Cómo lidiar con el attribute clash.
- 3.2 Creando sprites con UDG
- Diseñar gráficos 8x8 con POKE UDG.
- Herramientas recomendadas: ZX-Paintbrush y UDG Editor.
- 3.3 Estilo monocromático (Game & Watch)
- Fondo negro y sprites blancos para imitar pantallas LCD.
- Ejemplo: Una nave y un meteorito para "Space Escape".
- 3.4 Colores al estilo Jungler y Popeye
- Usar INK 1-7 para paletas vibrantes pero limitadas.
- Ejemplo: Sprites de Popeye (verde, rojo) o Jungler (multicolor).
- Trucos para minimizar el attribute clash.
- 3.5 Animaciones simples
- Cambiar UDG para simular movimiento.
- Ejemplo: Un enemigo que parpadea.
Práctica: Diseña dos sprites UDG (jugador y obstáculo) y muéstralos en pantalla, uno monocromo y otro en color.
Capítulo 4: Controles y Mecánicas Adictivas
- 4.1 Capturando las teclas
- Usar INKEY$ para leer teclas como Q, A o M.
- Crear controles personalizables y fluidos.
- 4.2 Mecánicas al estilo maquinita
- Movimiento del jugador con límites en pantalla.
- Objetos dinámicos: Generación aleatoria con RND.
- Colisiones: Detectar cuándo dos sprites se tocan.
- 4.3 Puntuación y desafío
- Gestionar el puntaje con UINTEGER.
- Aumentar la dificultad: Más velocidad o más objetos.
- 4.4 Ejemplo práctico
- Un juego simple de esquivar obstáculos, inspirado en Game & Watch: Fire.
Práctica: Programa un juego donde un personaje esquive objetos que caen, con un sistema de puntuación.
Capítulo 5: Múltiples Pantallas, Múltiples Aventuras
- 5.1 El arte del "canvas de pantalla"
- Usar estados (screenState) para simular pantallas LCD.
- Inspiración: Niveles de Game & Watch o escenas estáticas de Tronica.
- 5.2 Diseñando pantallas
- Crear la función DrawScreen para mostrar sprites y fondos según el estado.
- Ejemplo: Pantalla 1 (esquivar), Pantalla 2 (disparar), Pantalla 3 (objetivo final).
- 5.3 Transiciones suaves
- Cambiar pantallas según puntaje o eventos.
- Añadir animaciones: Parpadeo, limpieza de pantalla (CLS) y sonidos.
- 5.4 Colores vibrantes
- Adaptar pantallas para juegos como Jungler (nave multicolor) o Popeye (rescate).
Práctica: Crea un juego con dos pantallas (una monocroma, otra en color) que cambie al alcanzar 50 puntos.
Capítulo 6: Sonidos que Transportan
- 6.1 El sonido del ZX Spectrum
- El beeper (48K) y sus pitidos característicos.
- El chip AY (128K) para efectos más ricos.
- 6.2 Sonidos al estilo maquinita
- Efectos para movimiento, colisiones y cambios de pantalla.
- Ejemplo: Pitidos cortos para Game & Watch, melodías simples para Popeye.
- 6.3 Optimizando el sonido
- Evitar retrasos en el juego al usar BEEP.
- Combinar sonidos con la lógica del juego.
Práctica: Añade sonidos a un juego existente para movimiento, colisión y victoria.
Capítulo 7: Un Motor para Todas tus Maquinitas
- 7.1 Construyendo el motor
- Módulos clave: InitGame, DrawScreen, HandleInput, UpdateGame, ChangeScreen.
- Variables globales para posiciones, puntaje y estado.
- 7.2 Personalización sin límites
- Cambiar sprites UDG para diferentes juegos.
- Adaptar mecánicas: Esquivar, disparar, completar objetivos.
- 7.3 Monocromo y color
- Configurar INK/PAPER para Game & Watch o Defender.
- Ejemplo: Un motor para un juego inspirado en Jungler.
- 7.4 Pruebas y mejoras
- Probar en emuladores como Fuse o ZEsarUX.
- Corregir problemas como attribute clash o ralentizaciones.
Práctica: Desarrolla un motor base y adáptalo para un juego con tres pantallas.
Capítulo 8: Tu Propia Maquinita - Proyecto Final
- 8.1 Soñando el juego
- Elegir un concepto: Game & Watch (monocromo), Tronica, o en color (Popeye, Defender).
- Diseñar tres pantallas con mecánicas y estética únicas.
- 8.2 Haciéndolo realidad
- Usar el motor del Capítulo 7.
- Crear sprites UDG (monocromo o en color).
- Añadir sonidos y transiciones fluidas.
- 8.3 Perfeccionando el juego
- Reducir parpadeos y optimizar rendimiento.
- Ajustar la dificultad para que sea divertido.
- 8.4 Compartiendo tu creación
- Compilar el juego a .tap.
- Publicar en itch.io.
- Crear capturas o un vídeo para promocionarlo en X.
Proyecto Final: Un juego completo con tres pantallas, como "Space Defender" o "Fireman Rescue".
Apéndices
- A. Glosario
- Términos clave: UDG, attribute clash, .tap, BEEP, etc.
- B. Herramientas recomendadas
- Enlaces a ZX BASIC, Fuse, ZEsarux, ZX-Paintbrush.
Referencias Bibliográficas
Fuentes que apoyan el contenido
- Nintendo Co., Ltd. (2020). "Game & Watch: Super Mario Bros." 🌐🟡③
- Página oficial de Nintendo que detalla la reedición de Game & Watch, incluyendo su historia y características técnicas. Confirma el diseño compacto, pantallas LCD y jugabilidad simple.
- Spectrum for Everyone / Technical 🌐🟡③
- Especificaciones técnicas detalladas del ZX Spectrum, que incluyen el procesador Zilog Z80A, la ULA (Uncommitted Logic Array), configuraciones de memoria (16K/48K/128K), pantalla (256x192 píxeles con colisión de colores o "attribute clash") y sonido (beeper y chip AY-3-8912 en modelos 128K). Ofrece información sobre el diseño y revisiones del hardware, útil para comprender la arquitectura técnica y las limitaciones del ZX Spectrum.
- Boriel BASIC Documentation (2023). "ZX BASIC Compiler Documentation" 🌐🟡③
- Documentación oficial del compilador Boriel BASIC, que describe su sintaxis, optimización y uso en ZX Spectrum. Respalda los Capítulos 2 y 7 sobre programación y creación del motor. Verificado en el sitio oficial.
- Segura Durán, J. (2023). Boriel Basic para ZX Spectrum: Manual para torpes...y para los que no lo son tanto
- Libro en español que explica cómo usar Boriel BASIC para crear programas y juegos en ZX Spectrum, con ejemplos detallados de gráficos UDG, sprites, tiles y mecánicas de juego. Apoya los Capítulos 3, 4 y 7. Publicado de forma independiente. ISBN: 979-8-87154654-3
Fuentes que refutan o matizan el contenido
- Ninguna fuente verificable disponible.
One More Thing

¡Desbloquea el poder de MetsuOS y descubre que la privacidad y la seguridad son la clave para desencadenar tu verdadero potencial en línea!
Contenido registrado en Safe Creative
¡Usa el código de promocional 7ZYM4Z y ahorrate unos eurillos en tu suscripcion de Safe Creative!
MetsuOS Needs You!
Apoyanos en este proyecto difundiendolo en tus redes, o mejor, haznos una donación a la cuenta paypal para poder dedicar más tiempo y recursos a el. No olvides comentarnos que parete te interesa más junto con tu donación.
En este momento, además de mantener los servicios, estoy centrado en crear la siguiente iteración del software que me permite hacer todo esto y creando una biblioteca personal física para poder contrastar contenido.
Sobre el sistema de validez de un contenido en MetsuOS
Empezando a incorporar los niveles de validación de un contenido (también llamada sabiduría o niveles de conocimiento) ⚫🔴 🟡 🟢 🔵⚪ ¿Qué són?
- ⚫① - Dark1 - Conocimiento en Bruto. Modo Cuñao, hablo pero no puedo respaldarlo.
- 🔴② - Rojo2 - Conocimiento Impulsivo, pasional, "lo mio es lo correcto".
- 🟡③ - Yellow3 - Conocimiento Crítico: se comienza a explorar el hecho de que pueda haber otras perspectivas.
- 🟢④ - Green4 - Conocimiento Natural: Surge al comprender la naturaleza de la realidad y del ser humano en una materia.
- 🔵⑤ - Blue5 - Conocimiento Científico: Supone la suma de las fases anteriores aplicando el rigor de lo descubierto por la ciencia hasta ahora, sin caer en la -anticientífica- "opinión científica/opinión de expertos".
- ⚪⑥ - Light6 Conocimiento Consolidado: Se alcanza al integrar todo lo anterior desde una perspectiva empática y asumiendo una verdad probabilística dinámica dependiente del contexto.
Sobre la categorización de los tipos de conocimiento
- Conocimiento Gnoseológico: ⚫① 🔴② 🟡③ 🟢④
- Conocimiento Epistemológico: 🔵⑤
- Conocimiento Metsukeológico: ⚪⑥
La Metsukeología (de Metsuke vision global y logos conocimiento) es la ciencia que estudia el conocimiento como un conjunto potencial de conocimiento del que podemos obtener, procesar o percibir partes concretas dentro de un marco contextual específico, y cuyo contexto general real está muy por encima de lo que somos capaces, como especie, de percibir, procesar e integrar de forma completa (definición en progreso).
La Metsucología (de Metsu aniquilación - en este contexto en forma de colapso - , logos conocimiento) es la ciencia que estudia como extraemos verdades percibidas - colapsadas - como conocimiento desde nuestra perspectiva real (tanto epistemológico como gnoseológico) al tomar una parte específica del conocimiento metsukeológico potencial enmarcado en un contexto concreto, obligando a colapsar el conocimiento potencial en conocimiento específico (definición en progreso).
Mas sobre el contexto
DISCLAIMER: Mi consideración de anticientífico respecto al consenso científico es una hipotesis de trabajo propia, que supone que toda asignación de validez, incluso aquella derivada de la conclusión por acumulación de evidencia NO debe ser supeditada a debate, ni acuerdo, debe ser algo probabilistico sin intervención del ego humano. Podría estar equivocado y, en este punto, es donde se aplicaría entonces ese mismo consenso que ahora considero no valido (incluso dañino)
Existen indicadores para algunas cuestiones adicoinales como los siguientes:
- 🌐 - Contenido Externo sobre cuya validez/validación no tenemos control (usualmente enlaces que salen de #MetsuOS)
- ⚖️ - Analisis
- ⚖️📚 - Análisis Bibligráfico
- ⚖️🔬 - Análisis Científico
- ⚖️🏛️ - Análisis Estructural
- ⚖️🧠 - Análisis Filosófico
- 📖 - Referencia
- 📖📚 - Referencia Bibliográfica / Libro
- 📖🔬- Referencia Científica / Paper
- 📖🏛️ - Referencia Estructural
- 📖🧠 - Referencia Filosófica
- 🔍️- Paradigma
Cuando hablamos de un contenido que incluye un texto que hace referencia a otro.
- 🔴②-🌐🟡③ - Nivel del contenido del documento Rojo2, nivel del contenido externo del que habla el documento Yellow3.
- 🔴②-⚖️📚 🔴② - Nivel del contenido del documento Rojo2, en base a análisis bibliográfico nivel Rojo2
También aplicaremos el Sistema de fiabilidad de fuentes y credibilidad de contenidos de la OTAN 🔴②, este sistema incluye una valoración de la fiabilidad de la fuente de A a F (siendo A la de mayor fiabilidad) y una varloración de credibilidad del contenido de 1 a 6 (siendo 1 la mayor credibilidad).
En MetsuOS la agregaremos al final uniendo amos valores como si fuera una coordenada. Por ejemplo: ⚫①-D4 o 🟡③-B2. Esto ayudarña a contextualizar la información sobre la solidez del conocimiento al que se hace referencia en cada momento.
Hay que tener en cuenta que, cuando hay elementos subjetivos o parcialmente subjetivos, el punto de referencia seré yo mismo. Quizá más adelante pueda objetivizar esto más (seria lo deseable), pero en tanto no tenga herramientas que me lo permitan, debo ceñirme al principio de honestidar intelectual, y esperar que mis sesgos dañen lo menos posible la información (en parte este es el nudo gordiano que pretendo resolver, y por ello es dificil resolverlo a priori).
Así de forma resumida, podríamos decir que esta definición es nivel 🔴② (Rojo2 xD) ¿Crees que me dejo algo? Si es así por favor ayudame a mejorarlo contactándome a través de X (Twitter) en mi cuenta, @metsuke 🌐
Consulta la versión completa de la descripcion en ⚫🔴🟡🟢🔵⚪ (🔴②) Un poco más de detalle
- Información IA: Generado asistido por IA (Grok-3, Raúl Carrillo aka Metsuke). Supervisado por Humano.
- Ultima Modificación: 2025-07-08 18:24:02.042000+00:00
- Versión Documento: 0.3.3