Antes de seguir, te puedes descargar el PRIMER EJEMPLO que he realizado para el curso. De momento sólo vale para que entiendas PASMO y cómo organizo el código fuente.
Voy a explicar un poco cómo funciona PASMO.
Los archivos que pertenecen al ensamblador dentro de la carpeta BUFFER VOLCADO CON LDI, son: bin2tap.exe, pasmo.exe y AENSAMBLA.BAT.
Si editas AENSAMBLA.BAT verás la siguiente línea de comandos:
Cuando lo ejecutas, ensambla el código existente en APRINCIPAL.ASM creando el código binario APRINCIPAL.bin y el fichero de texto APRINCIPAL.TXT que contiene las etiquetas usadas y su dirección correspondiente. Esto último nos será muy útil para depurar.
Prueba a borrar APRINCIPAL.bin y APRINCIPAL.TXT, y ejecuta AENSAMBLA.BAT.
Si no ha habido ningún error, podrás ejecutar APRINCIPAL.bin en el emulador. En este caso debes poner la dirección de inicio de ejecución en 24000 que es donde empieza el programa.
En el directorio descargado ves que además hay distintos tipos de ficheros:
Ficheros *.ASM: Son los que ensambla PASMO
- APRINCIPAL.ASM: Es el bucle principal. Dentro de él se pueden incluir otros *.ASM para que no resulte tan largo y se vea todo más claro. Para ello se usa la instrucción INCLUDE "*.ASM" donde se quiera meter el código. Por ejemplo al principio aparece INCLUDE "CONTENIDA.ASM".
- CONTENIDA.ASM: Es el código que se va a incluir en la memoria contenida. Yo uso desde 24000 hasta 32768 que es donde acaba. El código contenido en estas direcciones va más lento, por lo que todo lo que se tenga que ejecutar con rapidez o a una velocidad constante se debe ensamblar por encima de 32768 (8000h). En CONTENIDA yo meto los menús, tablas de records, rutinas de preparación de tablas, borrado de pantalla...
- ARUTINAS.ASM: En este fichero meto las rutinas y subrutinas que van fuera del bucle principal. Así el código está más claro y no me lío buscando dónde ponerlas.
- ASPRITES.ASM: Aquí meto los gráficos de los Sprites
- ATABLAS.ASM: Donde van las tablas para controlar los distintos Sprites, que ya explicaré más adelante
Ficheros *.BIN: Son ficheros binarios que se incluyen en una determinada dirección del código.
Se introducen en el código con la instrucción INCBIN "*.BIN".