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

Con gran alegría anuncio que se acaba de publicar en Amazon el nuevo libro “Programación Retro del Commodore 64 Volumen IV”:

En este volumen IV se revisa a fondo este aspecto tan interesante como poco conocido: la programación en C para el Commodore 64. Más concretamente, se revisan aspectos generales de cc65, como cómo compilar y enlazar, cómo es el entorno de ejecución, cómo usar librerías específicas para hacer entrada / salida por pantalla, manejar el joystick o el ratón, hacer gráficos bitmap, etc.

También se revisa al lenguaje de programación C propiamente dicho, si bien esta tarea merecería un libro en sí mismo.

Por último, también se desarrolla un juego clásico en C, como es el Tetris. Esto permite al lector hacerse una buena idea de lo mucho que se puede hacer en C para el C64.

Conclusiones sobre cc65

A lo largo de las últimas 40 entradas le hemos dado un buen repaso a un aspecto tan interesante como poco conocido: la programación en C para el C64.

Tradicionalmente el C64 se ha programado en BASIC o en código máquina / ensamblador, pero no en C u otros lenguajes. Sin embargo, programar en C para el C64 es posible desde hace años gracias a cc65, un entorno de programación C para ordenadores con el microprocesador 6502 / 6510, como nuestro querido C64.

Más concretamente, hemos visto aspectos generales de cc65, como cómo compilar y enlazar, cómo es el entorno de ejecución, cómo usar librerías específicas para hacer entrada / salida por pantalla, manejar el joystick o el ratón, hacer gráficos bitmap, etc.

También le hemos dado un buen repaso al lenguaje C, si bien esta es una tarea que se merece un blog o un libro en sí mismo.

Para rematar, en poco más de 10 pasos hemos desarrollado un juego clásico en C, como es el Tetris. Sin duda, la implementación es mejorable (ej. se pueden usar caracteres personalizados, se le puede meter sonido, reducir el parpadeo, etc.), pero nos da una buena idea de lo mucho que se puede hacer en C para el C64.

C está a medio camino entre el ensamblador / código máquina y el BASIC. Por un lado, es de alto nivel, como el BASIC, pero admite mucha más estructura. Por otro lado, es compilado, no interpretado, lo que significa que en última instancia lo que se genera y ejecuta es código máquina, que es mucho más rápido que BASIC. Y con C es muy fácil acceder a memoria y a registros como los del VIC o el SID. En definitiva, lo mejor de ambos mundos, a mi entender.

En el fondo, si os fijáis bien, casi se puede leer el código máquina entre las líneas de C…

Espero que lo hayáis disfrutado tanto como yo y que sirva para inspirar vuestros propios proyectos,

HVSW.