Publicaciones de la categoría: Manuales

The Game Boy Encyclopedia Book by DaddaRuleKonge

DaddaRuleKonge es conocido en mundillo reto por confeccionar recopilatorios de sistemas en formato libro, tras Atari 2600/7800, Jaguar, Vertrex, Snes, Megadrive, VirtualBoy etc, y por fin le ha tocado a Game Boy.

El libro no ofrece nada muy destacable o que no puedas encontrar por la red de redes, pero hay que reconocer y agradecer a DaddaRuleKonge el increíble trabajo de recopilación y clasificación de toda esa información, más el trabajo de corrección y maquetación  inherente a cualquier publicación.

Destacar la clasificación por rareza que hace el autor en los juegos, casi imprescindible en el actual mercado de segunda mano. Por lo que puede usarse como guía de compras para coleccionistas. Tal y como comenta su autor:

Este es un libro escrito para coleccionistas o personas
interesadas en la Game Boy original 
(incluyendo Game Boy Pocket y Game Boy Light).

Os dejo el enlace directo a The Game Boy Encyclopedia Book, no olvidéis dar soporte al creador enviándole un Euro por Paypal.

Anuncios

Manual de programación GBA

Aprovecho para colgar este manual de programación para el sistema AGB “AGB Programming Manual“, y completar de esta forma la entrada que hice en su día con varios manuales de programación y servicio.

AGB Programming Manual

Que usted lo programe bien..

Cabecera de los cartuchos de Game Boy

Después de investigar como funciona el Nintendo Logo Check, me ha picado la curiosidad de como esta diseñada la estructura de una ROM/Cartucho de Game Boy.

??????????????????????

La parte mas interesante es la Cabecera de la ROM/Cartucho, este área esta definida entre las posiciones 0100 y 014F, recordemos que una vez se validaba el cartucho se saltaba a la dirección 0100 donde esta el programa principal del cartucho.

Inicio de Ejecución 0100-0103

Normalmente esta área de 4 bytes se rellena con instrucciones NOP (no hacer nada en ensamblador) seguida de un JP  0150h (salta a la dirección 0150 ).

Logo de Nintendo 0104-0133

En esta área se encuentra la imagen con el logo de Nintendo que se usa en el Nintendo Logo Check, como curiosidad si cambiamos el logo a partir de la byte 19h la Game Boy Color arrancara mostrando la mitad superior de logo cambiado y la inferior no, en cambio una Game Boy Pocket no funcionara ya que verifica todo el logotipo.

Titulo de Juego 0134-0143

Aquí se guarda en ASCII el titulo del juego en mayúsculas, si el tamaño es inferior a 16 caracteres se rellena con ceros, este espacio fue reducido en la Game Boy Color, es el titulo que habitualmente se muestra en lo emuladores, catalogadores cartuchos flash etc..

Código del Fabricante 013F-0142

Este área aparece en los juegos de Game Boy Color, recortando el Titulo del juego a 11 caracteres, supuestamente forma parte del control de fabricación por terceros.

Marca Game Boy Color 0143

En los cartuchos mas antiguos este campo también formaba parte de titulo. Esta marca se utiliza en los cartuchos para indicar si son compatibles con Game Boy Color, Game Boy o ambas. En el caso de ser compatibles con ambas e introducir el juego en un modelo monocromo se cancela la inicialización de paletas.

Nuevo Código de Licencia 0144-0145

Un código de dos caracteres ASCII que identifica al editor del juego, supuestamente forma parte del control de las licencias con las third party.

Marca Super Game Boy 0146

Especifica si el cartucho dispone de soporte para Super Game Boy, solo se activa el modo SGB si este byte contiene el valor 03h.

Tipo de Cartucho  0147

Identifica que tipo de Memory Bank Controller (MBC) usa el cartucho, si es que usa alguno y si dispone de algún tipo de hardware añadido.

  00h  ROM ONLY                 13h  MBC3+RAM+BATTERY
  01h  MBC1                     15h  MBC4
  02h  MBC1+RAM                 16h  MBC4+RAM
  03h  MBC1+RAM+BATTERY         17h  MBC4+RAM+BATTERY
  05h  MBC2                     19h  MBC5
  06h  MBC2+BATTERY             1Ah  MBC5+RAM
  08h  ROM+RAM                  1Bh  MBC5+RAM+BATTERY
  09h  ROM+RAM+BATTERY          1Ch  MBC5+RUMBLE
  0Bh  MMM01                    1Dh  MBC5+RUMBLE+RAM
  0Ch  MMM01+RAM                1Eh  MBC5+RUMBLE+RAM+BATTERY
  0Dh  MMM01+RAM+BATTERY        FCh  POCKET CAMERA
  0Fh  MBC3+TIMER+BATTERY       FDh  BANDAI TAMA5
  10h  MBC3+TIMER+RAM+BATTERY   FEh  HuC3
  11h  MBC3                     FFh  HuC1+RAM+BATTERY
  12h  MBC3+RAM

Tamaño de la ROM 0148

Identifica el tamaño de la ROM incluida en el cartucho normalmente son multiplos de 32KBytes

  00h -  32KByte (no ROM banking)
  01h -  64KByte (4 banks)
  02h - 128KByte (8 banks)
  03h - 256KByte (16 banks)
  04h - 512KByte (32 banks)
  05h -   1MByte (64 banks)  - only 63 banks used by MBC1
  06h -   2MByte (128 banks) - only 125 banks used by MBC1
  07h -   4MByte (256 banks)
  52h - 1.1MByte (72 banks)
  53h - 1.2MByte (80 banks)
  54h - 1.5MByte (96 banks)

Tamaño de la RAM 0149

Identifica el tamaño de la RAM externa incluida en el cartucho.

  00h - None
  01h - 2 KBytes
  02h - 8 Kbytes
  03h - 32 KBytes (4 banks of 8KBytes each)

Código Destino 014A

Especifica si la versión de este juego es para ser vendida en Japón o no. 00h – Japones / 01h No Japones ¿?¿?

Código Licencia anterior 014B

Identifica a la compañía o editor con un código entre 00 y FFh. A excepción del código 33h que se usa para indicar el uso del Nuevo Código de Licencia en la dirección 0144-0145.

Numero de versión del juego 0140C

Normalmente 00h.

Comprobación de Cabecera 014D 

Contiene una suma de comprobación de 8 bits con el contenido de la direcciones 0134 a 014C.
Los 8 bits más bajos del resultado del checksum deben coincidir con el valor almacenado en esta posición. El juego no funcionará si esta suma de comprobación no es correcta.

Comprobación Global 014E – 014F

Contiene una suma de comprobación de 16 bits usando toda la ROM del cartucho. Producida por la adición de todos los bytes del cartucho (excepto para los dos bytes de suma de comprobación). La Gameboy no verifica esta suma de comprobación.

Después de esta disección un poco rollo, os dejo una herramienta para que podáis ver las cabeceras de distintas ROM.

Manuales Técnicos y de Programación para GB/GBC/GBA

Aprovecho para colgar unos cuantos manuales técnicos y de programación  para nuestras queridas Game Boy.

Algunos son muy interesantes y merece la pena echarles un vistazo aunque solo sea para entender como funcionan estas maquinas.

Game Boy Programming Manual.

Page.PDF - gameboyprogrammingmanual.pdf - Mozilla Firefox

Este es el manual que se entregaba a los desarrolladores de GB/SGB. Son 300 paginas de información muy detallada sobre la GB y su programación en ASM.

Game Boy CPU Manual.

GBCPUman.pdf - Adobe Reader

Según indica el manual textualmente:

“Lenguaje ensamblador Comandos, sincronizaciones,  Opcodes y todo lo que siempre quiso saber sobre la GB, pero tenia
miedo de preguntar.”

Game Boy Advance Programming Manual:

Gameboy-Advance-Programming-Manual-v1.1.pdf - Adobe Reader

El mismo caso que en Game Boy pero en GBA, manual de programación que se entregaba a los desarrolladores.

¿Es la Game Boy un juguete?

GBC_INF_TECNICA.pdf - Adobe Reader

Con esta interesante pregunta se realiza una disección del hardware de la GB/GBC/SGB muy interesante.

CGB Service Manual

CGB Service Manual.pdf - Adobe Reader

Un sencillo manual de servicio y partlist para GBC. Como montar, desmontar y reparar la maquina.