05.06.2015 Views

PROGRAMMARE IN ERRE

Programming in ERRE language - fourth

Programming in ERRE language - fourth

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

PC<br />

OPEN(“O”,4,”LPT1:”)<br />

C64<br />

OPEN(4,4,7)<br />

ottengo la possibilità di scrivere sulla stampante collegata al PC su LPT1: o sulla stampante<br />

principale del C-64 (device #4 - il ‘7’ indica modalità "business mode" sulle stampanti Commodore)<br />

usando il comando PR<strong>IN</strong>T(#4,A$) dove A$ può essere una costante stringa o una variabile stringa.<br />

Ovviamente CLOSE(4) chiude il file e quindi la stampa.<br />

Si propone una tabella riassuntiva per i dispositivi utilizzabili:<br />

dispositivo device PC device C64<br />

Tastiera KYBD: 3<br />

Schermo SCRN: 0<br />

Nastro CAS1: (*) 1<br />

Disco da A: a Z: (se esistono) da 8 a 11<br />

Stampante da LPT1: a LPT3: da 4 a 6 (**)<br />

seriale RS232 COM1: e COM2: 2<br />

(*) solo sul PC-IBM originale<br />

(**) il 6 si riferisce al plotter Commodore 1520<br />

Come visto nell'esempio della stampante, alcuni dispositivi non utilizzeranno la OPEN con tutti i<br />

parametri indicati: ad esempio per "aprire" lo schermo come un file su PC si darà una<br />

OPEN("O",1,"SCRN:") mentre su C-64 basterà una OPEN(1,3); i manuali dei singoli computer<br />

daranno comunque informazioni più particolareggiate.<br />

Nota: La sintassi di OPEN nel caso si utilizzi (su PC) una porta seriale è leggermente diversa:<br />

OPEN("COMx:dati_porta_seriale",numero_file)<br />

dove con "dati_porta_seriale" si indica la velocità, il tipo di parità, il numero di bit di dati ed il<br />

numero di bit di stop: un esempio possibile è "2400,N,8,1". Questo diversitaà ha una sua propria<br />

giustificazione se si tiene conto che un file aperto su una COM è contemporaneamente aperto sia<br />

in lettura che in scrittura<br />

Esempio sull'utilizzo dei file sequenziali<br />

Vediamo un esempio (semplice) di utilizzo dei file sequenziali: viene fatto uso sia delle strutture di<br />

controllo (vedi cap. 5) che dell'istruzione EXCEPTION (vedi cap. 8) che serve a gestire gli errori di<br />

programma, in questo caso - nel PC - l'esistenza del file da visualizzare, mentre su C-64 basta<br />

interrogare il canale #15 che ci comunica gli errori del 1541.<br />

Esempio per PC<br />

PROGRAM LETTURA<br />

EXCEPTION<br />

FERROR%=TRUE ! si è verificata l'eccezzione !!!<br />

PR<strong>IN</strong>T("Il file richiesto non esiste ! (Errore nø";ERR;")")<br />

- 46 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!