IntyBASIC: un compilador de BASIC para Intellivision
Mientras trabajaba en
Space Raid
para Intellivision me preguntaba acerca de las posibilidades para hacer más
fácil el desarrollo de juegos en Intellivision.
Hay un conjunto completo de utilidades de emulación (
jzintv) y
programación en ensamblador (as1600) creadas por Joseph Zbiciak (intvnut).
Pero en cada programa se requiere comenzar casi desde cero
y hay pocas librerías.
La consola Intellivision
Siendo que el Intellivision fue creado en 1979 justo al
mismo tiempo que el BASIC explotó como un lenguage de microcomputadoras de
propósito general, ¿que era más natural que un compilador de BASIC? ;)
Comencé a trabajar en octubre de 2013 en mi proyecto
ultrasecreto y la versión 0.1 se publicó el 28 de enero del 2014 con versiones
para Windows, Mac y Linux.
Siguiendo el estilo de las herramientas de intvnut,
IntyBASIC es un compilador cruzado que toma código fuente BASIC y lo traslada
a código ensamblador CP1610. Sólo tiene que teclear esto para probar su juego:
intybasic game.bas game.asm
as1600 game.asm -o game
jzintv game
Incluye soporte para las características de video y
sonido del Intellivision en la forma de órdenes como SPRITE y SOUND,
intentando estar cercano al hardware pero lo más fácil posible para el
usuario.
He mantenido actualizado el compilador según como sus
usuarios y yo mismo encontramos errores o requerimos nuevas características
útiles.
Se incluye por cierto la utilidad IntyColor para convertir
imágenes BMP al formato de video utilizado por el Intellivision.
IntyBASIC ha resultado muy exitoso en su propósito debido
a los entusiastas miembros de la comunidad de
AtariAge y ha conducido a una
explosión de nuevos juegos y homebrews en el mundo Intellivision y además un
concurso de programación IntyBASIC.
Descargas
Sugiero descargar la versión más reciente (v1.4.2)
de los foros de Atariage.
La versión Windows de IntyBASIC funciona desde XP, pero si
tu versión no tiene service packs puede necesitar el
runtime de Visual C++ 2008.
Si utilizas Mac requieres Mac OS X v10.6 o mejor. En el caso
de Linux cualquier versión reciente debe funcionar.
El manual del usuario está incluído en el archivo ZIP.
Te sugiero que te registres en Atariage donde puedes obtener
ayuda sobre como usar IntyBASIC leyendo el foro de
Intellivision Programming
o escribiendo un post con tu pregunta.
El libro
El éxito de IntyBASIC me inspiró a escribir un libro nombrado "Programming Games for Intellivision".
Sigue la técnica de aprendizaje que me resultó útil cuando empecé a aprender lenguaje BASIC: juegos publicados en partes,
que requerían ser tecleados a mano, con explicaciones detalladas de cada parte.
El libro tiene 192 páginas y está disponible en pasta suave y pasta dura:
Mire el análisis de
The No Swear Gamer y gran review paso a paso por
Gray Defender.
Advanced Game Programming for Intellivision
Inspirado por el éxito de mi primer libro, escribí otro libro con técnicas más avanzadas de programación. En particular quise explorar el desarrollo de juegos con apariencia profesional en términos de pantallas de título, fluidez de juego, sonido y música.
Se incluye el código fuente completo de Oh Mummy! Pumpkin Master, Meteor Storm y Dungeon Warrior. Cada uno de estos juegos incluye una técnica en particular que quería documentar: Oh Mummy! el movimiento del jugador en un laberinto y como los enemigos persiguen al jugador. Pumpkin Master, técnicas para SHMUPs que permiten crear muchas balas sin exceder el total de sprites. Meteor Storm, técnicas para escalado pseudo-3D de sprites, animación de zonas de pantalla con múltiples imágenes. Dungeon Warrior, técnicas para dibujo de laberintos pseudo-3D en la pantalla, incluyendo el escalado de los enemigos según la profundidad, y por supuesto el algoritmo de los RPG.
Se dedica un capítulo completo a la creación de efectos de sonido y conversión de hojas de música a IntyBASIC, además tips para convertir imágenes en gráficos de Intellivision.
El libro tiene 294 páginas, y está disponible en pasta suave: (pronto en pasta dura)
Enlaces
Última modificación: 31-mar-2021