16.07.2014 Views

Numero 16 Aprile 2008 - Retrocomputing.net

Numero 16 Aprile 2008 - Retrocomputing.net

Numero 16 Aprile 2008 - Retrocomputing.net

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.

Jurassic News - Anno 3 - numero <strong>16</strong> - <strong>Aprile</strong> <strong>2008</strong><br />

appena caricato (immagine nella<br />

pagina a fianco), scopriamo che la<br />

periferica è mappata all’indirizzo<br />

07h, infatti il loop di caricamento include<br />

l’istruzione IN 07h.<br />

A questo punto resettiamo la CPU<br />

per impostare i valori corretti dei<br />

registri, fra i quali importante il PC<br />

che deve puntare all’indirizzo zero,<br />

da dove iniziano le istruzioni del caricatore.<br />

Da notare che il reset non<br />

modifica il contenuto della memoria,<br />

comportamento che è corretto<br />

perché agisce solo sul processore<br />

e non innesca alcuna routine di gestione<br />

della macchina. Settiamo lo<br />

switch A15 e lanciamo il RUN.<br />

Come si accennava gli switch servono<br />

sia per impostare indirizzi e<br />

dati e sia per guidare la macchina,<br />

ad esempio per indirizzare l’I/O.<br />

Il caricamento è immediato ovviamente,<br />

se avessimo dovuto leggere<br />

veramente un nastro perforato<br />

l’operazione avrebbe impiegato<br />

qualche minuto (anche per questo<br />

amo gli emulatori!).<br />

Al termine del caricamento il PC è<br />

fermo su una istruzione HLT (halt,<br />

cioè di stop del processore), dobbiamo<br />

resettare per impostare il<br />

PC all’indirizzo zero e dare il RUN.<br />

Qui bisogna decidere quale output<br />

vogliamo considerare; l’emulatore<br />

prevede infatti la possibilità di collegare<br />

un terminale vero via seriale<br />

o arrivarci con un Tel<strong>net</strong>. La scelta<br />

più comoda è però quella di attivare<br />

la console virtuale, una specie di<br />

terminale built-in, al momento della<br />

configurazione. Per fare in modo<br />

che l’output venga mandato<br />

al terminale e che<br />

l’input per converso sia<br />

accettato dalla tastiera,<br />

dobbiamo definire la<br />

porta di I/O mettendo<br />

alto lo switch dell’indirizzo<br />

A11. Il Run a questo<br />

punto attiva la console virtuale<br />

e ci permette di interagire con il basic<br />

caricato (vedi figura in questa<br />

pagina).<br />

A questo punto ci siamo lanciati<br />

nella programmazione (si fa per<br />

dire), con il più classico dei cicli<br />

FOR e stampa dei primi 20 numeri.<br />

Dobbiamo dire che il sistema risulta<br />

usabilissimo e anche abbastanza<br />

veloce già a 2 MHz, che è il setting<br />

predefinito.<br />

Una modalità di funzionamento<br />

che avvicina maggiormente l’uso<br />

dell’emulatore alla macchina reale,<br />

è la predisposizione di un terminale<br />

fisico in collegamento seriale, oppure<br />

in subordine la gestione di una<br />

console attraverso un programma<br />

di emulazione di terminale, come<br />

ad esempio Hyperlink che è con-<br />

Il pezzo di codice che<br />

carica dati dal nastro<br />

perforato.<br />

Il Basic 4k alla partenza<br />

nella console virtuale.<br />

29

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

Saved successfully!

Ooh no, something went wrong!