Mouse per Atari ST

Tempo fa ho acquistato su eBay un Atari 1024 STf, è il primo modello di Atari che entra nella mia collezione e l’ho preso in quanto era completo di monitor (che ricordavo essere con frequenze particolari e quindi piuttosto dedicato). Il venditore, un tedesco, mi ha precisato che il computer era sprovvisto di mouse. Per fortuna il mouse dell’Amiga 500 che ho è del tipo con switch per Amiga/Atari, quindi ho pensato di utilizzare quello.
Ma per l’esposizione che avevo in programma di fare, avevo bisogno di un altro mouse tutto per l’Atari, così ho cominciato a cercare in rete per una soluzione (a buon mercato).

eBay si è mostrato piuttosto caruccio… una media di 25/30 sterline più spese per un semplice mouse mi sembrano proprio troppe, capisco che sono mouse dedicati, ma non affronterei mai quella spesa. Piuttosto me lo costruisco!

Come è fatto un mouse Atari (Amiga)?
Vediamo prima come funziona uno per PC. Nel mouse tipo PS/2 (o usb) per ogni encoder, c’è una coppia diodo/fotodiodo che traguarda una rotellina con delle finestrel

le. Il fascio infrarosso è interrotto dalla rotazione e produce un treno di impulsi. L’elettronica del mouse (di solito un chip prodotto da Logitech o simile) mediante algoritmi è in grado di stabilire in quale direzione ci si è spostati e di quanti pixel ci si è mossi semplicemente contando il numero degli impulsi.
Il protocollo PS/2 non è molto complesso (Wikipedia lo spiega abbastanza bene qui): 3 byte, di cui i primo indica segno e stato dei pulsanti, il secondo il movimento sull’asse X e il terzo, l’asse y. Il resto lo fa il software (driver).

L’interno di un mouse Atari, foto di www.nightfallcrew.com

Nel mouse Atari, e i primi bus mouse (ad es. del Macintosh) le coppie diodo/fotodiodo sono due per ogni rotellina, (lo schema è quello di un encoder a quadratura) posti alle estremità della stessa. In questo modo otteniamo in uscita un treno di impulsi (velocità) e una direzione (leggiamo le combinazioni delle coppie diodi/fotodiodi per capire il verso).
Tutto funziona via software, perchè le velocità del treno di impulsi di un mouse è gestibile tranquillamente da una seriale di un 8/16 bit.

 

Lo schema del circuito (da http://ps2m.sotchenko.ru/)

La soluzione.
Se non si ha a disposizione un mouse del tipo Atari/Amiga, si può utilizzare un circuitino abbastanza semplice che permette di interpretare l’uscita a 3 byte di un mouse PS/2 e trasformarla in un treno di impulsi compatibile con la seriale di questi home computer. Date le (basse) velocità in gioco, è più che sufficiente la potenza di calcolo di un PIC della Microchip. Fortunatamente il circuito da realizzare è molto semplice e l’unica “difficoltà” è nel programmare il PIC16F628, cosa semplicissima se si ha il programmatore (del costo di poche decine di euro).
A lato lo schema del circuito (tratto da qui), ho realizzato la versione senza quarzo che funziona egregiamente, potete scaricare il file per la programmazione del PIC da qui o direttamente dal mio sito qui (tasto destro, salva oggetto con nome). Nel software del programmatore impostate i fuse per come segue:
– OSC = INTRC without CLKOUT
– WDT = ON
– LVP = OFF
– MCLRE = OFF

Ho realizzato il tutto su un pezzetto di millefori, integrando i due connettori DB9 (lato Atari) e PS/2 (lato mouse). Noterete due ponticelli che spostati assicurano la compatibilità anche con gli Amiga. Ecco le foto del prototipo:

 

 

Questa voce è stata pubblicata in Hardware DIY e contrassegnata con , , , , . Contrassegna il permalink.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *