3. Desarrollar

3.3. Temas clave para aprender

Lista de temas clave de aprendizaje

Usad esta lista para guiar vuestro aprendizaje y practicar los distintos temas. Os ayudará a focalizar esfuerzo en partes pequeñas que os hacen falta para conseguir tanto programar como manejar el hardware de la Gameboy lo suficiente para empezar a hacer minijuegos.

  • Programación
    • Cómo crear funciones
    • Manejarse con bucles y condicionales
      • Entender saltos condicionales (JP y JR)
      • Entender los Flags (principalmente Z:Zero y CY:Carry)
    • Cómo hacer cálculos
      • Máscaras de bits (con AND, OR y XOR)
      • Sumas y restas en 8 y 16 bits (ADD, ADC, SUB, SBC, CP)
      • Multiplicaciones y divisiones por múltiplos de 2
        • Con desplazamientos (SLA, SRA)
      • Operaciones individuales de bits (BIT, SET, RES)
    • Entender include, proceso de ensamblado, enlazado y globales
    • Usar varios ficheros de código (y entender cómo funciona todo)
    • Entender símbolos y etiquetas (DEF, EQU y EXPORT)
    • Cómo usar las SECTIONs para ubicar las cosas en ROM y RAM
  • Gameboy
    • Cómo borrar el VRAM Tilemap 0 ($9800)
    • Cómo y por qué esperar a VBLANK (Registro hardware rLY $FF44)
    • Qué son las paletas y cómo funcionan
    • Cómo poner la paleta del Background (Registro hardware: rBGP, $FF47)
    • Cómo diseñar tiles a mano (VRAM Tile Data)
      • Entender la codificación binaria y crear algunos de prueba
    • Cómo añadir los datos de nuestros propios tiles a nuestra ROM
    • Cómo copiar los tiles a la VRAM Tile Data ($8000)
    • Cómo y por qué apagar y encender la pantalla (Registro hardware: rLCDC, $FF40)
    • Entender el mapa de memoria
    • Cómo crear un mapa a mano y copiarlo a VRAM Tilemap ($9800)
    • Cómo mantener en memoria posiciones y datos del personaje móvil
      • Cómo dibujarlo a partir de sus coordenadas