Desde tu primera línea hasta la ejecución, la observación y la repetición de pruebas. Código fuente recopilado: 14 de septiembre de 2026 · Edición inglesa: 14 de septiembre de 2026
Verificación del compilador nativo
Las compilaciones nativas y comprobaciones de ejecución finalizaron correctamente en Windows, Linux, macOS ARM y macOS Intel. KITAQGB superó 48 pruebas y 395 comprobaciones de herramientas por entorno; KITAQFC, 55 y 401. También se probó Rust 1.85. PUBLIC_DISTRIBUTION.json registra los hashes de los binarios instalados y el origen de la validación. Los flujos públicos de GitHub Actions compilan y prueban estas fuentes de forma independiente.
Las salidas de referencia guardadas comprueban bytes de ROM, diagnósticos y formatos de las herramientas. Las anteriores pruebas de emulación C# son registros históricos vinculados a sus fuentes originales. No demuestran automáticamente todas las API Rust, el hardware real ni el arranque completo de juegos mediante el BIOS FDS. El script PNG original no está disponible y se reconstruyó a partir de su especificación; no puede afirmarse igualdad de bytes con él.
KITAQGB nació como una bifurcación de NORCAL, el compilador de C para NES vinculado a Zachtronics. A partir de esa base se desarrolló un compilador de la familia C para Game Boy y Game Boy Color, adaptando la generación de código, la memoria, el vídeo, el audio y los bancos de ROM. Conservamos el aviso de derechos de autor de Keith Holman y reconocemos su trabajo original.
NORCAL toma su nombre del norte de California (Northern California). Inspirándose en esa referencia geográfica, el autor eligió el nombre KITAQGB a partir de Kitakyushu, la ciudad donde nació y creció. KITAQ + GB combina Game Boy con 北九 (キタキュー, Kitakyū), el apodo de Kitakyushu, en la prefectura de Fukuoka, Japón. KITAQ se pronuncia como el japonés «キタキュー»; la guía de pronunciación en inglés es kee-tah-KYOO, con transcripción fonética /ˌkiːtɑːˈkjuː/. La Q final suena como el nombre de la letra Q en inglés. KITAQGB se lee kee-tah-KYOO jee bee, pronunciando G y B por separado en inglés.
El nombre KITAQGB tiene dos significados. Kernel-Informed Toolchain for AI-Quality Game Boy Development expresa el objetivo de una cadena de herramientas que entiende la máquina de destino y apoya tanto a quienes programan como a la IA generativa.
El otro significado es Kids' Imagination Transformed into Actual Quests in Game Boy Forests: una herramienta que convierte la imaginación infantil en aventuras reales en los bosques de Game Boy. Expresa el deseo de transformar pequeñas ideas, garabatos y prototipos creados con ayuda de la IA en aventuras que se puedan jugar de verdad.
Como los manuales de los primeros ordenadores, esta colección empieza con programas breves que puedes escribir, compilar y ejecutar. Primero verás un resultado; después podrás aprender cómo funciona la máquina. No hace falta memorizar todos los términos de antemano.
Para GB, empieza por el primer programa del volumen 1; para FC, por el del volumen 4.
Añade controles, gráficos y sonido con los volúmenes 2 y 5.
Observa la ejecución con KOKURA o KUROSAKI y organiza los diagnósticos con SARAKURA.
Si ya conoces el nombre de una función, utiliza la búsqueda del volumen o su diccionario de API.
La sintaxis del lenguaje, las funciones intrínsecas del compilador, las funciones de biblioteca y los comandos se documentan por separado. Los volúmenes de compiladores incluyen también índices de instrucciones de CPU. Un mismo nombre en GB y FC no garantiza los mismos argumentos ni el mismo comportamiento.
Los siete volúmenes
Volumen
Entrada
Salida o finalidad
KITAQGB
Código C y recursos
ROM de GB/CGB, mapas e información de compilación
Biblioteca KITAQGB
Llamadas desde el juego
Gráficos, sonido, entrada, comunicación y servicios de juego
KOKURA
ROM de GB/CGB
Ejecución, imágenes, audio, estados y observaciones
KITAQFC
Código C y recursos CHR
Imágenes NES/FDS e información de compilación
Biblioteca KITAQFC
Llamadas desde el juego
Gráficos, sonido y dispositivos de NES
KUROSAKI
Imágenes NES/FDS
Ejecución, grabación y análisis
SARAKURA
Información de compilación y eventos de diagnóstico
Informes, planes de corrección y de repetición de pruebas
La fuente incluida
Los ejemplos utilizan la fuente ascii.c, creada por el autor: 26 mayúsculas, 10 cifras, 26 minúsculas y 30 símbolos, para un total de 92 glifos. Puedes verlos en el atlas de tiles. El espacio utiliza un tile vacío. La barra inversa y la barra vertical no están incluidas y se muestran en blanco. gb_font.c y fc_font.c muestran todos los glifos.
Edición y alcance de las comprobaciones
Este manual describe el código fuente del 14 de septiembre de 2026. El inventario de referencia registra los hashes de los fuentes y los ejecutables. Consulta los registros de verificación para conocer las entradas, las condiciones y el alcance de cada prueba.
Una compilación correcta significa que se generó una ROM. Una prueba de ejecución significa que el emulador avanzó los fotogramas indicados. Las comparaciones de píxeles, los controles y el sonido se comprueban por separado. Esto no garantiza compatibilidad con todos los periféricos o consolas reales; los avisos se conservan en los registros.
Preparar el directorio de trabajo
Los ejemplos usan Windows PowerShell. Guarda los archivos C como texto UTF-8. El directorio actual es aquel desde el que ejecutas el comando. Encierra entre comillas las rutas con espacios y, cuando sea necesario, invoca el ejecutable con & "ruta". En los ejemplos que combinan herramientas, coloca sus repositorios y el proyecto del juego dentro de un mismo directorio padre y ejecuta los comandos desde él.
Sustituye game.c, game.gb y game.nes por tus archivos. Los corchetes angulares de <ROM> indican un valor que debes sustituir; no los escribas. Los comandos suelen ocupar una sola línea. La continuación con barra inversa de Bash no es sintaxis de PowerShell.
Leer e imprimir los manuales HTML
Abre index.html desde la carpeta descargada para leer sin conexión. Los estilos, la búsqueda, los ejemplos y las imágenes son locales; no hace falta una CDN. Mantén la estructura completa de directorios. El botón de impresión aplica un diseño sin la columna de navegación.
Los fragmentos de código y las salidas reales de las herramientas mantienen su redacción original para poder cotejarlos directamente con los archivos y los resultados de los comandos.