comment on fait? je veu faire un fichier visible dans le var/linc en asm, mais je c pas commen faire.
svp aidez moi! j'ai lu un tuto sur la vat/fat, mais y avait rien de marqué la dessu.



include "tios.h" ;ça ça inclut le fichier où il y a la liste des ROM_CALL :D:D:D
;(si tu c pas ce que c'est, je peux rien faire pour toi, dsl #roll#)
xdef _ti89 ;bon, v pas commenter ça quand même :D
xdef _main
_main ;point d'entrée
movem.l d0-a6,-(a7) ;on sauvegarde les registres
pea.l filename(pc) ;charge l'addr de la fin du nom du fichier dans a7
jsr tios::SymFind ;recherche le fichier
tst.w d0 ;si il existe
bne skipcreate ;on quitte le prog
move.l size,(a7) ;sinon, on charge la taille du futur fichier dans (a7)
jsr tios::HeapAlloc ;et on alloc la mem nécessaire
tst.w d0 ;si il n'y a plus suffisemment de mem
beq skipcreate ;on quitte le prog
move.w d0,d3 ;sinon on sauvegarde le handle
DEREF d0,a0 ;on deref... addr de la mem allouée dans a0
move.l size,d1 ;on charge la taille du fichier dans d1
subq.l #2,d1 ;taille-2 (le 1er word ne compte pas pour la taille du fichier)
move.w d1,(a0)+ ;on enregistre la taille dans le 1er word du fichier
subq.l #1,d1 ;on décrémente de un la taille
add.l d1,a0 ;pour aller à l'avant dernier octet du fichier
move.b #$2d,(a0) ;on y met le type de fichier (ici un str)
pea.l filename(pc) ;charge l'addr de la fin du nom du fichier dans a7
jsr tios::SymAdd ;création de l'entrée du fichier dans la vat
tst.w d0 ;si la création a échouée
beq skipcreate_ ;on quitte en désallouant la place prise pour créer le fichier
move.l d0,(a7) ;sinon on envoie le handle dans la pile
jsr tios:: DerefSym ;pour trouver l'entrée de la vat correspondante
move.w d3,12(a0) ;on enregistre le handle de notre nouveau fichier à sa place (12eme octet)
;(9 premiers octets: "nom_du_fichier",0 + 1 + 2 octets propriétés + 2 octets handle)
addq.l #8,a7 ;restaure la pile
bra skipcreate ;fini, on quitte
skipcreate_ ;si l'espace a été alloué mais que la var n'a pas pu être créée
move.w d3,(a7) ;on charge le handle de l'espace alloué dans (a7)
jsr tios::HeapFree ;et on le vire
skipcreate ;on quitte
addq.l #4,a7 ;on nettoie la pile
movem.l (a7)+,d0-a6 ;restaure les registres
rts ;adios
dc.b 0,'testfile' ;nom de ton fichier précédé de 0 (ams le prend par derrière :p)
filename ;par ici koi...
size dc.l 100 ;taille de ton fichier
end





