Bon, pour la dernière routine de Kevin, OK, mais prenons un autre exemple, un fichier texte de 10 octets:
pea Format(pc) ; Entre l'adresse du format du fichier a creer
move.w #8,-(a7) ; Entre la taille du fichier a creer
move.w #$4000,-(a7) ; C'est un Token
pea Fichier(pc) ; Entre l'adresse du nom du fichier
jsr doorsos::VarStore ; Appelle la fonction qui cree le fichier
jsr doorsos::SymFind ; On va chercher le Handle, stocké dans d0
lea 12(a7),a7 ; Restaure la pile
even
dc.b 0,"mainfichier"
Fichier dc.b 0
even
dc.b 0,1,$20,$61,$61,$61,0
Format dc.b $e0
even
Ca fonctionne très bien, mais si maintenant on veut créer un texte de 30000 octets (rempli de caractères nuls, donc à remplir soi-même après

), on pourrait faire:
pea Format(pc) ; Entre l'adresse du format du fichier a creer
move.w #29998,-(a7) ; Entre la taille du fichier a creer
move.w #$4000,-(a7) ; C'est un Token
pea Fichier(pc) ; Entre l'adresse du nom du fichier
jsr doorsos::VarStore ; Appelle la fonction qui cree le fichier
jsr doorsos::SymFind ; On va chercher le Handle, stocké dans d0
lea 12(a7),a7 ; Restaure la pile
even
dc.b 0,"mainfichier"
Fichier dc.b 0
even
ds.b 29997
Format dc.b $e0
even
Ca fonctionne aussi, mais le seul prob est que le prog qui crée ce texte fait lui aussi plus de 30000 octets (ce qui est tout à fait normal bien sûr).
Donc je voudrais savoir comment faire dans un cas comme celui-ci ? Allouer ? Mais comment, car ce n'est pas la même chose qu'une simple allocation pour un écran virtuel, par exemple.
P.S. : G bien compris le format des fichiers et les tags de type de fichier, mais est-ce que quelqu'un pourrait m'expliquer (ou m'indiquer une doc qui explique) ce que sont les
even et à koi ils servent ; et pourquoi le format des fichiers est-il placé avant le label
Format ? En fait, je ne comprend pas du tout comment sont structurées les données

[edit]Edité par Asterix le 24-09-2001 à 23:44:06[/edit]