DSKLua 1.2.0
Au menu, un nouveau petit bug résolu pour DSKLua. Les accès aux fichiers DSK à partir de SJASM+ n’ont jamais été aussi fiables !
Pour fêter cela, voici un exemple d’utilisation de l’outil tel que je le fais pour mes programmes (notamment pour la démo Flush 2025, celle avec la musique qu’on n’arrive plus à se retirer de la tête).
Pour que cela fonctionne correctement il suffit de mettre un label « start » juste après le org dans votre listing, puis de copier ce bloc de LUA en fin de fichier. A la compilation, SJASM+ créera un fichier « monfichier.dsk », contenant votre code assemblé dans un fichier « test.bin ». Simple et pratique !
LUA PASS3
if(not dsk.init()) then
sj.error("Can't create the DSK file")
else
if (not dsk.save("test.bin",dsk.AMSDOS_FILETYPE_BINARY,sj.get_label("start"),sj.current_address,sj.get_label("start"))) then
sj.error("Can't save the file")
else
if(not dsk.write("monfichier.dsk")) then
sj.error("Can't save the DSK file")
else
print("DSK saved.")
end
end
end
ENDLUA
Il est possible également d’insérer un fichier dans un dsk existant via la fonction dsk.read(« nomdufichier »), qui remplacera le dsk.init(). On peut également choisir la version du DSK (1 ou 5, qui correspond à la version normale ou étendue du format), et même y insérer du Basic. Bref, toutes les petites opérations disque habituelles pour un développeur sur CPC sont accessibles.