Assembly in one step

En este blog encontraréis montones de referencias útiles sobre C64. Al comienzo del blog tenéis una selección muy completa, pero no son las únicas, ya que en sucesivos “posts” he ido incluyendo más y más referencias:

Y como no paro de toparme con nuevas referencias de interés, aquí va una nueva que me ha parecido interesante:

“Assembly in one step” es un breve tutorial en inglés sobre programación del 6502. No es una mera revisión de sus instrucciones, sino que incluye:

  • Una descripción de la arquitectura del 6502.
  • Los modos de direccionamiento.
  • El juego de instrucciones.
  • Algunos programas de ejemplo.

Todo ello lo hemos revisado en este blog, y seguramente más a fondo, pero siempre está bien conocer fuentes nuevas y darle un repaso a los temas importantes.

C64 Debugger

C64 Debugger es un completo depurador para C64. No es el único disponible; por ejemplo, CBM prg Studio también tiene su propio depurador integrado.

El instalable de C64 Debugger está disponible en la dirección https://sourceforge.net/projects/c64-debugger/files/. Desde ahí se puede descargar en formato ZIP, siendo la versión actual la 0.64.58.6.

El contenido del ZIP para Windows es algo así:

En realidad, no hace falta instalar nada. Para poder usar C64 Debugger llega con extraer el contenido del ZIP a una carpeta, por ejemplo, a la carpeta “C64 Debugger” del Escritorio, y luego crear un acceso directo al ejecutable C64Debugger.exe.

Si ejecutamos C64Debuger.exe, bien directamente o bien vía el acceso directo, aparece una ventana como la siguiente:

En esta ventana pueden verse las siguientes zonas:

  • A la izquierda, la “vista de desensamblado”, que muestra parte de la memoria del C64 en formato desensamblado, es decir, interpretando el contenido como instrucciones de código máquina. Además, por defecto, muestra la instrucción que se está ejecutando en cada momento, es decir, la instrucción apuntada por el contador de programa.
  • En el centro y arriba, la “vista de mapa de memoria”, que es un rectángulo en modo bitmap que muestra el contenido de la memoria del C64 (cada pixel representa un byte). Aquí la clave es el color de cada pixel, que sirve para interpretar el contenido de la memoria y si se están ejecutando operaciones de lectura (azul) o de escritura (rojo).
  • En el centro y abajo, la “vista de volcado de datos”, que es otro rectángulo que muestra el contenido hexadecimal de parte de la memoria del C64. Además, a la derecha del hexadecimal puede verse, también, la interpretación de esos valores como códigos de pantalla.
  • A la derecha y arriba, se ven los registros del microprocesador.
  • Debajo de los registros, se ve la RAM de pantalla en formato visible, como se vería en la pantalla del C64.

Todo esto se llaman “vistas”, y se pueden cambiar mediante los múltiples atajos de teclas que tiene C64 Debugger (ver fichero C64 Debugger shortcuts v06458.xlsx). También se puede cambiar el foco de una vista a otra, haciendo click con el ratón, y así manipular el contenido de las mismas.

Y como saberse todos estos atajos es casi imposible, conviene acompañar el C64 Debugger con un par de productos complementarios:

El manual de usuario en PDF puede descargarse de la misma página https://sourceforge.net/projects/c64-debugger/files/, si bien el último manual disponible es para la versión 0.64.56 de C64 Debugger:

Por último, una opción muy interesante es la interfaz gráfica o GUI para C64 Debugger. Esta interfaz gráfica añade botones para poder ejecutar las diferentes opciones y vistas de C64 Debugger:

Puede descargarse en formato ZIP desde la página http://bit.ly/C64DebugGUI e, igual que C64 Debugger, no requiere instalación como tal. Llega con extraer el contenido del ZIP a una carpeta y ejecutar C64DebuggerGUI.exe. De hecho, C64DebuggerGUI incluye C64 Debugger en su ZIP.

El principal problema es que, que se sepa, C64 Debugger GUI se quedó en la versión 0.64.2 de C64 Debugger, y no ha sido actualizado desde entonces. Una pena porque resultaba muy útil…

Nuevo libro: Programación Retro del Commodore 64 Volumen III

Tras el éxito de los volúmenes I y II, acaba de publicarse en Amazon el nuevo libro “Programación Retro del Commodore 64 Volumen III”:

Son 193 páginas que describen en detalle cómo programar en ensamblador un juego de tablero, es decir:

  • La representación del tablero.
  • La generación de jugadas.
  • El árbol de juego.
  • La función de evaluación.
  • La búsqueda minimax.
  • La búsqueda alfa-beta (con poda).
  • La profundización iterativa.
  • La ordenación de movimientos.
  • Las tablas de historia.
  • Etc.

El libro está disponible en los principales portales de Amazon:

Yo lo he pasado fenomenal escribiéndolo, así que espero que lo paséis igual de bien leyéndolo y, sobre todo, adaptando las ideas a vuestros propios proyectos con el C64.