Conclusiones sobre cc65

Programación retro del Commodore 64

  • Programación retro del Commodore 64
  • “Programación Retro del Commodore 64” es un blog sobre el hardware, el sistema operativo, y la programación del Commodore 64. Y más específicamente sobre programación en ensamblador. Pretende ser un blog con información de calidad, y referencia en español de la programación retro de esta maravillosa máquina.
    • Mi blog
« Publicado el: 01/11/2023 »

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.