Porte logiche
5 Gennaio 2021Amiga1200 Recap
25 Gennaio 2021A cosa servono
Queste cartucce servono per testare il funzionamento del computer in caso non si accenda o per verificare i circuiti interni. Può capitare che il computer si accenda ma ci siano problemi con periferiche o blocchi improvvisi e queste schede possono aiutare a identificare il problema.
Commodore 64
Per il C64 esistono diverse cartucce per testare sia il computer che il floppy drive o test specifici. La più utilizzata per verificare la maggior parte dei componenti è la cartuccia diagnostica Rev. 586220 (per c64) e Rev. 588220 (per sx64)
586220
Questo kit comprende una serie di cavi da collegare alla porta utente, porta cassette, porta floppy, nel connettore tastiera (necessario aprire il computer) e nelle due porte joystick.
Tramite queste connessioni è possibile testare il funzionamento di alcuni chip utilizzando i segnali inviati e ricevuti sulle porte. E’ un test abbastanza completo, facile e veloce da eseguire, in circa un paio di minuti abbiamo il risultato e la conclusione avviene con il test del SID. Il SID viene testato tramite il nostro orecchio, il computer emetterà dei suoni e spetta a noi capire se c’è qualcosa che non va. Alla fine il test ricomincia daccapo fino allo spegnimento del computer.
E’ possibile scaricare l’immagine nella rom e il manuale d’uso in questo link:
http://blog.worldofjani.com/?p=164
Realizzare la cartuccia
Ok troviamo le rom ma poi? per scrivere la rom su una eprom dobbiamo usare un programmatore di Eprom, io vi consiglio il tuttofare MINI-PRO TL866, un programmatore economico ma estremamente versatile, lo potete trovare su molti siti di e-commerce e anche da Aliexpress.
Le Eprom utilizzate da queste cartucce sono generalmente da 8k quindi possiamo usare come minimo una eprom M27C64 – 64K (8Kx8), queste eprom ormai sono obsolete ed è possibile trovarle usate su siti di aste o recuperate su Aliexpress.
Non preoccupatevi se non trovare una Eprom così piccola, è possibile utilizzarne anche di più grandi.. come le M27C128 o 256 addirittura una 512 ma sarebbe sprecata se non vi interessa realizzare una cartuccia multi-rom.
Per il PCB è possibile costruirselo da soli e trovate gli schemi su
GitHub, cercate versaCart probabilmente la troverete già assemblata.
https://github.com/bwack/Versa64Cart
In alternativa ci sono altre schede multicart da utilizzare come la
“Commodore C64 8K ROM Cartridge PCB” disponibile da TFW8b
https://www.thefuturewas8bit.com/shop/cartridges-pcbs/c64-romcart-pcb.html
In questi pcb trovate diversi jumper per configurare la cartuccia, la prima cosa sono gli ingressi A13,14,15 che servono per indirizzare la ROM, quindi tramite questi è possibile selezionare una diversa immagine della cartuccia.
ES: la 27C64 avendo solo 8K può solo avere un’immagine caricata $0-$1FFF (non ha ingresso A13 o superiore)
la 27C128 ha 16K e ingresso A13, quindi è possibile scrivere un’immagine da $0-$1FFF e una da $2000-$3FFF, così se mettiamo A13 a GND avremo la prima immagine e mettendolo a 5V useremo la seconda. Per le altre rom vale la stessa regola, aumentando la memoria avremo un nuovo ingresso da gestire, se non lo sapere questi vanno gestiti in modalità binaria, quindi se abbiamo A13 e A14 possiamo selezionare le rom in questo modo:
banco | A13 | A14 |
---|---|---|
0 | GND | GND |
1 | 5V | GND |
2 | GND | 5V |
3 | 5V | 5V |
Altro switch da conoscere è quello relativo alla romL e romH, questi servono per abilitare la lettura della eprom negli indirizzi bassi o alti, quindi il codice della eprom può essere caricato in memoria bassa $8000-$9FFF o alta $E000-$FFFF
Troviamo anche altri due jumper chiamati Game e Exrom e anche questi servono per caricare il programma in una determinata area di memoria.
Normalmente le cartucce gioco (anche la diagnostica) utilizzano RomL per la eprom e modalità Exrom a GND il resto rimane a livello alto.
Se utilizzate la cartuccia DEAD TEST, questa dovrà essere configurata in modalità ULTIMAX e dovrete avere Game a GND e RomH sulla eprom.
DEAD TEST
Anche questa cartuccia è molto utile per capire i problemi della macchina soprattutto se abbiamo uno schermo nero 🙂
Scheda 2 IN 1
Su questa scheda oltre le 2 diagnostiche ho aggiunto un voltmetro per verificare anche lo stato dell’alimentazione.
Spesso in questi computer l’alimentatore è causa di grossi problemi visto che non è protetto e tensioni troppo elevate possono danneggiare il computer. Potrebbe anche capitare un guasto sul regolatore di tensione e lo si potrà vedere se la tensione è troppo alta o troppo bassa.
Prototipo
Realizziamo una cartuccia!!
Se volete realizzarvi una cartuccia per C64, vi metto lo schema di una cartuccia base da 8K e i link per poter scaricare il progetto e pcb.
Schema e file gerber:
https://github.com/zeus074/c64-cartridge
Progetto su EasyEda:
https://easyeda.com/zeus074_5150/simple-8k-cartridge-c64-128
Lo schema è riferito ad una Rom da 64K (8K x8) e si avvia in modalità normale (anche per la diagnostica).
Se volete utilizzare la modalità ultimax dovete mettere il pin !Game a gnd e scollegare !exrom, dovete scollegare anche il pin !RomL ed al suo posto usare !RomH.
Volete utilizzare una 27C128? no problem, la potete inserire al posto della 27C64 senza problemi, ma dovrete collegare il pin 26 (A13) al gnd per usare gli indirizzi da $0-1FFF o al positivo per usare indirizzi da $2000-3FFF (non lasciarelo libero).
Stessa cosa per una 27C256 potete inserirla al posto della 64K e mettendo il pin A13 a gnd useremo la locazione $4000-5FFF, mettendolo a positivo avremo $6000-7FFF, perchè? perchè nella 27C64 il pin 27 è connesso al positivo e su questa memoria il pin 27 è l’ingresso A14.
Scollegando il pin A14 possiamo scegliere tutti i 4 banchi possibili.