Il programma che stiamo per scrivere crea un file su disco completamente vuoto assegnando solamente il nome il drive e se il file è in formato normale, di sola lettura, non visibile, ecc.... digitiamo: -a 100 ---> inseriamo i comandi 14A0:0100 mov ah,3c --> crea il file 14A0:0102 mov cx,0 --> determina il tipo di file: normale 14A0:0105 mov dx,200 --> indirizzo in cui va a cercare il nome e il drive del file 14A0:0108 int 21 14A0:010A int 20 14A0:010C -a 200 14A0:0200 db 'c:dati.dat',0 --> stringa del nome file. lo '0' indica la fine della stringa 14A0:020B Questo prog. scrive un file vuoto in c: con il nome di dati.dat di tipo normale Tipo file determinato da 'mov cx,X' : · 0h --> normale · 1h --> sola lettura · 2h --> non visibile · 4h --> file di sistema · 8h --> Etichetta del disco · 10h --> sotto directory · 20h --> file di archivio SALVARE DEI DATI SU DI UN FILE Vi ricordo che il file deve essere stato creato in precedenza su disco con il listato descritto poco sopra ad esempio. Altrimenti non funziona nulla! digitiamo:
-a 100 --> inseriamo i comandi 14A0:0100 mov ah,3d --> apre il file 14A0:0102 mov al,01 --> file di sola scrittura 14A0:0104 mov dx,200 --> nome del file 14A0:0107 int 21 14A0:0109 mov di,ax --> salva di 'di' il descrittore del file 14A0:010B mov ah,42 14A0:010D mov al,02 14A0:010F mov bx,di 14A0:0111 mov cx,0000 14A0:0114 mov dx,0000 14A0:0117 int 21 --> si posiziona alla fine del file per evitare che vengano sovrascritti i dati precedenti 14A0:0119 mov ah,40 --> scrive il file 14A0:011B mov bx,di --> mette la descrizione in bx 14A0:011D mov cx,80 --> numero max di byte da salvare è 80. 14A0:0120 mov dx,300 --> caratteri da scrivere all' ind. 300h. 14A0:0123 int 21 14A0:0125 mov ah,3e --> chiusura file 14A0:0127 mov bx,di --> mette la descrizione in bx 14A0:0129 int 21 14A0:012B int 20 --> ritorno al dos -a 200 14A0:0200 db 'c:dati.dat',0 --> percorso e nome file. 14A0:020C -a 300 14A0:0300 db 'ciao belli!' --> stringa da salvare (in questo caso non deve superare gli 80 byte)
All'ind. 102h il comando 'mov al,01' indica che il file è di sola scrittura ma possono esserci anche altri parametri: · al=0 --> sola lettura · al=1 --> sola scrittura · al=2 --> sia lettura che scrittura · Oltre a questi parametri esistono anche quelli per la condivisione di rete dalla ver. dos 3.0 in avanti, a cui non faro riferimento.