martes, 26 de noviembre de 2019

Aprendiendo Assembler para el Commodore 64

Después de adquirir un par de libros maravillosos y ponerme a devorarlos, he comenzado a desarrollar un pequeño "entorno" de herramientas para facilitar el desarrollo usando Assembler en el Commodore 64. 

Este desarrollo lo estoy realizando usando la herramienta CBM .prg Studio. Dicha herramienta es muy completa y me ha facilitado mucho la vida tanto para aprender como para terminar de comprender conceptos básicos del C64. 

La idea detrás de "C64DevToolKit" (así lo he bautizado) no es estrictamente tener un set de librerías que facilite la programación, sino aprovechar para aprender implementando los conceptos básicos del Assembler. 


Seguro que hay muchas formas de hacer dichas librerías mucho más eficientes, pero como he detallado, la idea principal es aprender en el camino, y , sobre todo, disfrutar de ello. 

En esta primera versión, se usan muchos de los conceptos básicos como son:

1) Las posibilidades del propio lenguaje ASM. 

2) Uso de subrutinas y macros. 

3) Definición de direcciones de memoria y variables de uso común.

4) Uso de alguna que otra facilidad del Kernal del C64. 

5) ScreenCodes y caracteres PETSCII.

6) Facilidades de la herramienta CBM Prog Studio. 

7) Direccionamiento y uso de memoria 16 Bits usando modo indexado y la Página 0 de memoria. 

8) Y alguna otra cosa más. 

La funcionalidad de esta primera versión es muy básica, pero he ordenado el proyecto al estilo "moderno", tratando de compactar y reutilizar funcionalidad; como lo haríamos con librerías "modernas". 

Seguiré completando el desarrollo, con muchas más cosas, a medida que tenga la posibilidad. 

Los próximos pasos serán cosas como suma, multiplicación, el uso del reloj interno, salida de valores numéricos por pantalla y lo que se me valla cruzando, que sea básico, como lo que he desarrollado hasta ahora. 

El proyecto se puede descargar de este enlace

La herramienta CBM .prg Studio tiene su propia entrada en este blog y su página web está en este enlace


No hay comentarios: