home *** CD-ROM | disk | FTP | other *** search
-
- Progetto MouseClock
- Rev. 1.22
- 13-Gen-94
- Copyright (C) 1993 Adriano De Minicis
-
-
-
- CHE COS'E'?
- ===========
-
- MouseClock è un progetto hardware/software di un orologio calendario con
- batteria tampone, di costo e dimensioni contenuti, che si collega
- esternamente (sulla mouse port 2) a qualunque modello di Amiga.
-
-
-
- REQUISITI
- =========
-
- Funziona su qualunque modello di Amiga (è stato testato su A1200, A2000,
- A500) che abbia almeno la versione 1.2 del sistema operativo.
-
- E' necessaria solo un po' di esperienza nella realizzazione dei circuiti
- elettronici. Se non ne avete mai costruito uno è meglio che chiediate aiuto
- a qualche amico piu' esperto.
-
-
-
- INDICE
- ======
-
- 1. Descrizione
- 2. Avviso shareware
- 3. Distribuzione
- 4. Avvertenze (Leggere attentamente)
- 5. Uso di MouseClock (la parte hardware)
- 6. Uso di SetMClock (il programma)
- 7. Messaggi di errore e possibili cause
- 8. Note sull'hardware
- 9. Costruzione
- 10. Taratura
- 11. Ringraziamenti
-
-
-
- 1. DESCRIZIONE
- ==============
-
- MouseClock, come detto è un orologio esterno di ingombro molto ridotto.
- I vantaggi di avere un orologio esterno sono molti:
-
- - L'installazione non annulla la garanzia.
- - E' compatibile con tutti gli Amiga: se quindi decidete di cambiare il
- vostro Amiga potete trasferitre MouseClock senza problemi.
- - Puo' essere usato come orologio di emergenza su un Amiga dotato di
- orologio interno guasto.
-
- Qualcuno potrebbe obiettare che esterno è ingombrante e/o che occupa la
- porta joystick:
-
- - E' molto compatto (il mio prototipo misura 44 x 35 x 16 millimetri).
- - Con pochi componenti in piu' si puo' realizzare una versione "passante"
- per joystick: con un deviatore si seleziona MouseClock o il joystick.
-
- Ma quanto mi costi?
-
- - Molto meno di un orologio interno: con 20-25mila lire circa si acquistano
- tutti i componenti per realizzarlo.
-
- In questo archivio trovate la documentazione (questo file) e il software
- (SetMClock) che permette di utilizzare MouseClock (è compreso il sorgente in
- assembler). Riceverete lo schema elettrico e gli schemi di montaggio su
- basetta millefori se mi invierete il contributo shareware (v.Distribuzione).
-
-
-
- 2. AVVISO SHAREWARE
- ===================
-
- MouseClock è SHAREWARE. Se volete ricevere lo schema elettrico e gli schemi
- di montaggio inviate il contributo shareware in uno dei modi sottoelencati.
- Specificate per favore come causale "MouseClock" (poichè sto sviluppando
- altri progetti probabilmente shareware).
-
- Pagamento
- ---------
- Tramite vaglia postale: inviatemi 10000 lire. Specificate come causale
- "MouseClock". (Solo per l'Italia).
-
- Tramite vaglia postale internazionale: inviatemi 10000 lire (LIT).
- Assicuratevi che io riceva il pagamento in lire e non nella vostra valuta.
- Specificate come causale "MouseClock".
-
- In contanti: inviatemi 10000 lire, oppure 7 dollari USA, o 12 DM (Marchi
- Tedeschi), o 5 GBP (Sterline Inglesi). Ricordatevi di allegare il vostro
- indirizzo e "MouseClock" come causale di versamento.
- Il pagamento in contanti è a vostro rischio. Usate due buste una dentro
- l'altra per maggior sicurezza.
-
- NON INVIATE assegni, vaglia postali USA o Canadesi, ordini contrassegno...
-
- Il mio indirizzo è:
-
- Adriano De Minicis
- Via Latisana 37
- 33054 Lignano Sabbiadoro UD
- Italia
-
- La ragione per cui questo progetto è shareware è che ho impiegato molto piu'
- tempo per scrivere la documentazione, disegnare gli schemi e riscrivere in
- assembler il software (originariamente in GFA Basic compilato, 17K!) che non
- per progettare e realizzare il tutto per il mio nuovo A1200. Non mi sembra
- quindi sbagliato chiedere un contributo (non credo che 10000 lire sia una
- cifra esorbitante) per ripagarmi del tempo perso (purtroppo il tempo libero
- è sempre cosi' scarso!). Dal riscontro che avra' questo progetto decidero' se
- vale la pena di pubblicare i progetti su cui sto lavorando:
-
- - un commutatore a 4 vie per la porta parallela, completamente elettronico
- (niente commutatori meccanici) con tutti i pin bidirezionali, controllato
- da Amiga anche via ARexx
- - un analizzatore logico in versione ridotta
-
-
-
- 3. DISTRIBUZIONE
- ================
-
- I files presenti in questo archivio possono essere copiati e distribuiti
- liberamente (anche su network) purchè vengano distribuiti per intero senza
- modifiche e non a scopo di lucro (è consentito un piccolo addebito per le
- spese di copia e del disco).
-
- Lo schema elettrico che riceverete iniviando il contributo shareware è
- invece sotto copyright, e NON puo' essere ridistribuito in nessun modo.
-
- MouseClock puo' essere costruito solo per uso personale, ne è vietata la
- commercializzazione (contattatemi per eventuali accordi).
-
-
-
- 4. AVVERTENZE (Leggere attentamente)
- ====================================
-
- Il programma SetMClock pone come uscite alcune linee della mouse port 2
- (GamePort). Pertanto prima di lanciare SetMClock scollegare qualunque
- dispositivo da quel conettore per evitare possibili danni al dispositivo e/o
- all'Amiga. Nota: quando SetMClock termina, la porta torna allo stato
- originario.
-
- E' possibile collegare un joystick su un connettore ausiliario se si
- costruisce la versione passante di MouseClock (occorrono solo pochi
- componenti aggiuntivi).
-
- ATTENZIONE:
- -----------
- MAI inserire o togliere MouseClock quando Amiga è acceso, specialmente se
- non avete tolto lo schermo metallico del connettore DB9 femmina di
- MouseClock. Infatti cio' puo' provocare un cortocicuito su Amiga (con le
- immaginabili conseguenze) dato che i due pin 7,8 (+5V, GND) della MousePort2
- sono uno vicino all'altro ed è molto facile provocare un cortocircuito con
- lo schermo dell'altro connettore. Pertanto CONSIGLIO VIVAMENTE di tagliare
- via lo schermo metallico dal connettore femmina di MouseClock (non di
- Amiga!). In tal caso non c'è piu' pericolo di cortocircuiti, anche se
- sconsiglio comunque di inserire/togliere MouseClock ad Amiga acceso (sebbene
- io l'abbia fatto molte volte, non è detto che prima o poi non si danneggi
- qualcosa)
-
- NON MI ASSUMO NESSUNA RESPONSABILITA' PER EVENTUALI DANNI DI QUALUNQUE
- GENERE CAUSATI DALL'UTILIZZO E/O DALLA COSTRUZIONE DI QUESTO PROGETTO.
-
- Siete ancora qui? bene!, proseguiamo con:
-
-
-
- 5. USO DI MouseClock (LA PARTE HARDWARE)
- ========================================
-
- Usare MouseClock è semplice: basta collegarlo alla porta mouse 2 (gameport)
- quando Amiga è spento (leggete le avvertenze sopra riportate!).
-
- Versione base di MouseClock
- ---------------------------
- Usate SetMClock per accedere all'orologio (vedi sotto).
-
- Estensione joystick di MouseClock
- ---------------------------------
- Questa versione permette di collegare un joystick al connettore DB9
- ausiliario (solo joystick normali, non analogici o paddle).
- Posizionate il deviatore su 'Clock' prima di lanciare SetMClock (altrimenti
- SetMClock non vede l'orologio!). L'utilizzo di un joystick quando il
- deviatore è su 'Clock' (o viceversa) non causa danni.
-
-
-
- 6. USO DI SetMClock (IL PROGRAMMA)
- ==================================
-
- SetMClock è il programma che consente di settare l'ora di sistema da quella
- di MouseClock o viceversa. E' l'equivalente di SetClock. Essendo scritto
- interamente in assembler è sufficientemente compatto (circa 3K).
-
- SetMClock per poter funzionare correttamente ha bisogno del file
- "MClock.upd" (4 bytes) nella directory "S:". Tale file viene creato per la
- prima volta con l'opzione 'save'. E' necessario poichè il chip utilizzato
- da MouseClock non memorizza l'anno, che quindi va salvato su disco. L'anno
- viene aggiornato automaticamente confrontando la data attuale con quella
- presente nel file (giorno, mese, anno dell'ultimo aggiornamento di
- MouseClock). Se il giorno attuale (letto da MouseClock) è precedente a
- quello nel file allora l'anno è il successivo e viene riscritto. L'unico
- caso in cui SetMClock non si accorge del cambiamento è se il computer rimane
- spento dall'inizio dell'anno fino almeno alla data nel file. Ad es. se
- "MClock.upd" contiene '15 Gen 1993' e MouseClock segna '10 Gen' siamo
- sicuramente nel 1994 (il tempo non torna indietro!); se invece MouseClock
- segna '15 Gen' o un giorno successivo siamo ancora nel 1993 (tranne il caso
- particolare detto sopra). Per evitare questo piccolo problema conviene
- aggiornare comunque MouseClock ad es. alla fine di gennaio, in modo che
- l'anno successivo SetMClock ha un mese per accorgersi che l'anno e'
- cambiato.
-
- Per chi non ha l'hard-disk conviene copiare il file "S:MClock.upd" in tutti
- i dischi di boot in cui si vuole usare SetMClock.
-
- ATTENZIONE: Non lanciate SetMClock se avete collegato una periferica diversa
- da MouseClock nella mouse port 2. Leggete il capitolo
- "Avvertenze".
-
- NOTA: Evitate di lanciare piu' copie in parallelo di SetMClock, poiche'
- interferirebbero tra di loro, dando risultati sbagliati (nessun
- danno).
-
-
- Utilizzo da CLI/Shell
- ---------------------
- SetMClock load Setta la data e l'ora di sistema leggendola da
- MouseClock. E' necessario il file "S:MClock.upd".
- Se volete il sistema aggiornato ogni volta che Amiga
- viene acceso, includete questo comando nella
- startup-sequence (o nella user-startup).
-
- SetMClock save Salva la data e l'ora di sistema in MouseClock e nel
- file "S:MClock.upd" (creandolo, se non esiste). Usare
- il comando AmigaDOS 'date' o le preferences 'Time' (2.0)
- per settare il tempo di sistema. Esempio:
-
- date 1-jun-93 12:34
- setmclock save
-
- Nota: i secondi vengono considerati zero. Quindi per
- ridurre l'errore conviene aspettare che i secondi siano
- prossimi a zero prima di salvare (o usare l'opzione
- 'zero').
-
- SetMClock zero Azzera i secondi (di MouseClock) avanzando di un minuto
- se sec>30. Aggiorna il file "S:MClock.upd" e poi esegue
- un 'load'
-
- SetMClock Visualizza due linee di help.
-
-
- Utilizzo da Workbench
- ---------------------
- Usare un'icona di tipo 'project' il cui default tool è SetMClock (con path
- opportuno) e i tooltypes sono:
-
- MODE=load \
- MODE=save } Usare UNO SOLO di questi (equivalgono a quelli da CLI)
- MODE=zero /
-
- Se non ci sono tooltypes si assume come default 'load'.
-
- Si possono usare le tre icone che ho fornito come esempio. Attenzione: se
- spostate SetMClock in un'altra directory (ad es. C:) occorre modificare
- corrispondentemente il default tool di quelle icone.
-
- E' comodo usare il WB se si è fatto il boot da un disco nella cui startup
- non viene chiamato SetMClock.
-
-
-
- 7. MESSAGGI DI ERRORE E POSSIBILI CAUSE
- =======================================
-
- Can't find battery backed up clock
- ----------------------------------
- MouseClock non collegato alla seconda porta Mouse, oppure non funzionante.
- Nel caso abbiate costruito la versione passante è probabile che il deviatore
- sia in posizione "joystick".
-
- Battery backed up clock not set
- -------------------------------
- MouseClock è presente, ma data e ora sono azzerate. Questo accade ogni
- volta che viene a mancare l'alimentazione a batteria, e quindi anche appena
- costruito. Per ovviare a questo errore basta settare data e ora con
- SetMClock save. Se l'errore si ripresenta ogni volta che Amiga viene
- spento, allora la batteria potrebbe essere scarica oppure non collegata.
- Controllare (la tensione della batteria dovrebbe essere maggiore di 2.2V).
-
- Can't open S:MClock.upd
- -----------------------
- Il file "S:MClock.upd" non esiste o non puo' venire aperto.
-
- Can't save S:MClock.upd
- -----------------------
- Il file "S:MClock.upd" non puo' essere salvato (ad es. disco di sistema
- protetto in scrittura).
-
- Bad data in S:MClock.upd
- ------------------------
- I dati nel file "S:MClock.upd" sono stati alterati. Ripristinarli con
- SetMClock save.
-
-
-
- 8. NOTE SULL'HARDWARE
- =====================
-
- Per ridurre il numero di linee di I/O usate (in modo da poterlo collegare
- alla mouse port), ho usato un chip orologio con bus I²C (IC1). L'altro
- integrato (IC2) fa da interfaccia tra Amiga e il bus I²C. I diodi D1 e D2,
- collegati alle linee di feedback dei segnali I²C, servono ad evitare che una
- eccessiva corrente scorra dalla batteria tampone ad Amiga quando questo è
- spento. Se i diodi fossero cortocircuitati ci sarebbe una corrente di
- perdita dalla batteria notevolmente superiore alla correnete assorbita da
- IC1, causando una scarica troppo rapida.
-
-
-
- 9. COSTRUZIONE
- ==============
-
- Insieme allo schema elettrico troverete lo schema di montaggio su basetta
- preforata (passo 2.54 mm). Tale schema si riferisce alla versione base di
- MouseClock. Per l'estensione joystick le modifiche sono poche, e possono
- essere volanti.
-
- Sullo schema dei collegamenti i pallini piu' grossi indicano le saldature da
- fare. Per i collegamenti consiglio di usare del filo per wire-wrap di
- piccolo diametro ,ad esempio un AWG 28 (0.32mm). Chi non volesse usare la
- basetta preforata, ma preferisse costruirsi il circuito stampato puo'
- trasformare direttamente lo schema dei collegamenti in quello delle piste
- (dato che non ci sono incroci tra i collegamenti).
-
- La batteria che ho usato ha un diametro di 15 mm, e un'altezza di 7 mm,
- mentre il compensatore ha un diametro di 7 mm (dimensioni approssimate).
- Se utilizzate componenti di dimensioni diverse puo' essere necessario
- modificare leggermente i collegamenti.
-
- Consiglio di utilizzare zoccoli per i due circuiti integrati, e di tagliare
- via con un seghetto lo schermo metallico del connettore DB9 femmina.
-
- Conviene montare per primi gli zoccoli, poi i due terminali per il jumper
- (senza collegare ancora il jumper), resistenze, condesatori, quarzo e
- transistor, proseguendo con il conettore DB9, i diodi (e gli eventuali
- componenti per l'estensione joystick), lasciando per ultima la batteria.
- Prima di montare la batteria assicurarsi che i collegamenti siano esatti e
- non ci siano cortocircuiti, specialmente tra l'alimentazione a 5V e massa
- (pin 7 e 8 del connettore DB9). Un cortocircuito tra queste linee puo'
- danneggiare il vostro Amiga, quindi ATTENZIONE!. Non lasciatevi prendere
- dalla fretta di provare subito il circuito!.
-
- Quando siete sicuri che tutto è a posto, montate la batteria (con jumper
- scollegato). E' meglio usare del cavetto isolato per collegare il terminale
- negativo della batteria. Fate attenzione una volta collegata la batteria a
- non provocare cortocircuiti appoggiando la basetta su oggetti metallici
- (potreste danneggiare la batteria: le NiCd non gradiscono cortocircuiti!).
- Controllate nuovamente che tutto sia a posto e non ci siano cortocircuiti.
- Inserite quindi i due circuiti integrati nei rispettivi zoccoli, badando di
- non scambiarli o inserirli a rovescio.
-
- Un ultimo controllo e poi finalmente collegate il jumper che da' tensione al
- circuito. Nel caso abbiate costruito la versione joystick ponete il
- deviatore su 'clk'. Spegnete l'Amiga, collegate il circuito alla mouse port
- 2, accendete Amiga, e da WB cliccate sull'icona ClkLoad: se appare il
- requester "Can't find battery backed up clock" allora avete commesso qualche
- errore. Spegnete Amiga, scollegate MouseClock e ricontrollate tutto
- (potrebbe essere il deviatore non posizionato su 'clk'). Quando tutto
- funziona dovrebbe apparire il requester "Battery backed up clock not set"
- (l'orologio è azzerato) oppure "Can't open S:MClock.upd". Provate a salvare
- data e ora cliccando su ClkSave: non dovrebbero esserci messaggi.
- Riprovate con ClkLoad: se non dà messaggi tutto è ok, complimenti! Per
- l'uso di SetMClock o per i messaggi di errore vedere le rispettive
- spiegazioni.
-
- Se il circuito non funziona e non riuscite a trovare l'errore, provate a
- controllare se c'è un'onda quadra ad 1Hz tra il pin 5 di IC1 e massa.
- Se non c'è allora l'oscillatore a quarzo non funziona: provate a ruotare
- il compensatore.
-
- NOTA: La batteria NiCd sarà probabilmente scarica quando costruirete
- MouseClock. Per ricaricarla lasciate il computer acceso per alcune
- ore (di solito occorrono 14 ore per la carica, ma non è necessario
- lasciare Amiga acceso per tutto quel tempo, se usate spesso Amiga).
- Se avete un caricabatterie NiCd potete usarlo per ricaricare la
- batteria prima di montarla sul circuito.
-
- Buon lavoro! :-)
-
-
-
- 10. TARATURA
- ============
-
- La taratura del circuito puo' essere anche omessa, dato che l'orologio e'
- abbastanza preciso.
-
- Se avete un frequenzimetro con una buona risoluzione alle basse frequenze
- (deve visualizzare le frazioni di Hertz), ruotate il compensatore fino a
- leggere esattamente 128 Hz sul pin 8 di IC1.
-
- Se non avete un frequenzimetro la procedura è piu' lunga: se notate che
- dopo una settimana l'orologio anticipa o ritarda troppo, provate a ruotare
- leggermente il compensatore in uno dei due sensi. Controllate dopo una
- settimana: se l'errore tende a calare, il verso è giusto, altrimenti il
- compensatore va ruotato in senso opposto. Occorrono poi vari aggiustamenti
- per ridurre l'errore.
-
-
-
- 11. RINGRAZIAMENTI
- ==================
-
- Desidero ringraziare Roberto Borri per i suggerimenti e il debugging,
- Fred Fish per la sua grandiosa PD-collection, e la Commodore Amiga per il
- nuovo chipset AGA (era ora!).
-
-