11 min readProgetto Magic Desk – di Carletto Provetto

Come tutto accadde

 

Mappa del lavoro
Mappa del Lavoro

Capito??!!

Qui stiamo parlando con dei professionisti, mica con degli scrittori improvvisati al tempo del coronavirus.

Bisogna progettare, schematizzare, ricercare, informarsi, scassare le palle agli amici, minacciare ed essere minacciati insomma, bisogna mettersi in gioco 🙂

E poi devi entrare nello sgabuzzino e cercare i componenti necessari dentro i cassettini e poi sposta, apri, prendi la lente di ingrandimento, tira giù qualche santo del calendario multireligioso per non far dispetto a nessuna credenza, rimetti a posto, fai la lista delle cose che ti mancano e compra, ordina e compra, chiedi agli amici per accelerare i tempi, fatti menare ma per finta, perchè te sei più veloce e loro mica ti riprendono dopo che gli hai fregato i componenti insomma, storie di vita comune pure prima dei tempi della clausura.

Il progetto della Magic Desk ha origini lontane, nel 2019, quando l’amico Stefano C. mi chiede aiuto per avere dei componenti che gli servivano per sperimentare questa nuova cartridge.

Il circuito stampato lo aveva già ordinato e la sua mente frizzante aveva già programmato l’acquisto di altre varianti, sempre per sperimentare e sempre avere la cartuccia più vicina alle sue aspettative.

Fortunatamente avevo quasi tutto ma qualcosa l’ha dovuta comprare, mica sono un negozio in fondo 🙂

Io fornivo e lui sperimentava, gettando le basi per solide conoscenze e tenendoci vicini nelle nostre attività ludiche (come direbbero le nostre mogli, le nostre perdite di tempo).

Comunque, mica puoi stare sempre a ricarico degli amici, devi applicarti anche tu se vuoi esaudire i tuoi desideri per cui, dopo molto tempo per incastrare gli impegni, è arrivato finalmente per
me il momento di farmi da solo le Magic Desk personalizzate.

Prima di
tutto bisogna acquistare i circuiti stampati o pcb.

Vi chiedo una sola cortesia: comprate direttamente dal link fornito dai creatori del progetto, così facendo premieremo il loro lavoro con una piccola percentuale sulla spesa e li stimoleremo a continuare lo sviluppo del progetto. Risparmiare 1€ per non avere più supporto è da stolti, meglio spendere 1€ in più ed avere supporto e sviluppi.
Vi ricordo che non è che spendete l’euro in più sulla singola pcb ma su cinque o dieci a seconda del pacchetto minimo di stampa.
Quindi siate responsabili e comprate i circuiti stampati a questo link:


https://www.pcbway.com/project/shareproject/C64_Magic_Desk_512k_Cartridge.html

 

Una volta procuratoci il circuito stampato dobbiamo preparare i componenti da metterci su seguendo il circuito elettrico e la lista dei componenti che trovate alla pagina:


https://github.com/msolajic/c64-magic-desk-512k/blob/master/README.md

 

Non si sa mai, eccola per voi:

Lista componenti:

1x74LS02
1x74LS273
1x27C512
1 pulsantino da stampato 6x6mm (orizzontale o verticale in
funzione del vostro montaggio)

opzionali in funzione del montaggio
che vorrete fare:

1 zoccolo 14 pin (7+7)
1 zoccolo 20 pin (10+10)
1 zoccolo 32 pin o 28
pin (16+16 o 14+14) in funzione della vostra eprom

Visto che c’è
sempre confusione sulle eprom e sui loro valori di capacità, vi riporto uno
schemino che potrebbe esservi utile:

27C256 = 32Kbyte (256Kbit per un totale di 8 banchi — 256/8=32)
27C512 = 64Kbyte (512Kbit per un totale di 8 banchi — 512/8=64)
27C010 =
27C1000 = 128Kbyte (1,024Mbit per un totale di 8 banchi)
27C020 = 27C2001 = 256Kbyte (2,048Mbit per un totale di 8 banchi)
27C040 = 27C4001 = 512Kbyte (4,096Mbit per un totale di 8 banchi)

Detto questo,
iniziamo a montare i componenti, ricordando la vecchia regola per cui si parte sempre da quelli più bassi per arrivare a quelli più alti.
Visto che avrei dovuto usare principalmente delle 27C512, ho montato uno zoccolo ZIF per usare sempre lo stesso circuito ma cambiando la sola eprom.

 

Materiale Necessario
Materiale Necessario

 

PCB parte anteriore
PCB parte anteriore

 

PCB parte posteriore
PCB parte posteriore

 

PCB - Dettaglio pad di configarazione
PCB – Dettaglio pad di configarazione

 

PCB - Zoccoli per TTL
PCB – Zoccoli per TTL

 

PCB - Montaggio ZIF
PCB – Montaggio ZIF

 

PCB - Montaggio tadto reset
PCB – Montaggio tadto reset

 

Finalmente assemblata la scheda, dovrete decidere quale eprom utilizzare, perchè è necessario fare dei ponticelli con lo stagno
nella parte di sotto della scheda, secondo il seguente schema:

N.B. gli x x x rappresentano i pad sullo stampato mentre il simbolo
= sta a significare che le due x devono essere unite da una goccia di stagno

JA17 [X X X]       
JA18 [X X X]      
JF  [X X X]      
JA16 [X X X]
   27C512          27C010          29F010          27C020          29F020          27C040          29F040
   ------          ------          ------          ------          ------          ------          ------

JA17 [X X=X]    JA17 [X X X]    JA17 [X X X]    JA17 [X=X X]    JA17 [X=X X]    JA17 [X=X X]    JA17 [X=X X]
JA18 [X X X]    JA18 [X X=X]    JA18 [X X X]    JA18 [X X=X]    JA18 [X X=X]    JA18 [X X=X]    JA18 [X=X X]
 JF  [X X X]     JF  [X X=X]     JF  [X X=X]     JF  [X X=X]     JF  [X X=X]     JF  [X=X X]     JF  [X X=X]
JA16 [X X X]    JA16 [X=X X]    JA16 [X=X X]    JA16 [X=X X]    JA16 [X=X X]    JA16 [X=X X]    JA16 [X=X X]

P.S. i settaggi li ho copiati direttamente dal sito dell’autore, fate riferimento a quelli per sicurezza.

Questi settaggi sono necessari, in quanto la 27C512 ha meno piedini delle altre eprom per cui, oltre a sbagliare le linee dati, si correrebbe il rischio di mandare i 5V dell’alimentazione dove
non si dovrebbe, pena la distruzione del chip quindi, ricordate i settaggi una volta scelta la eprom scelta.
Questo il settaggio per la mia 27C512.

 

PCB - Settaggio 27C512
PCB – Settaggio 27C512

 

 

Certo, quando tu vuoi costruirti una cartuccia del genere, sicuramente hai
già chiaro in mente i giochi o i programmi che vorrai caricarci.
Oppure,
come ho fatto io, anche sapendo quello che volevo caricare, mi sono scontrato
con le reali dimensioni dei giochi e della eprom.
Nel mio
piccolo, volevo mettere quattro dei giochi presenti su questa cassetta, niente
di particolare, ma a me piacciono e la uso ogni volta che devo testare un
Commodore 64 con il caricamento da datassette.

TUTTO C64 - Giochi da caricare
TUTTO C64 – Giochi da caricare

Il software di creazione del file binario della eprom, prevede che i giochi siano in formato PRG.

Non sono un grande navigatore di giochi e programmi, neanche di conseguenza conosco i siti dove poterli reperire.

Il mio riferimento certo è però il sito Edicola 8 bit di Giuseppe Di Lillo e del suo webmaster Motoschifo, l’immensa raccolta di tutto il materiale informatico uscito in
edicola negli anni 80 del secolo scorso, un gigantesco lavoro di catalogazione di un patrimonio culturale che altrimenti sarebbe andato perduto.
Sostenete il sito con una donazione o fornendo il materiale mancante alla raccolta.

Ho cercato il nome dei giochi trovando anche il corrispettivo titolo originale, il formato desiderato, le schermate ed i video del gioco, nonché la possibilità di giocare online.

Reperiti i files della nostra raccolta, dobbiamo ora utilizzare il software di gestione della nostra compilation e testare il file binario generato con un emulatore per il Commodore 64.

Per poter creare il file bin da mettere nella eprom, ci sono più software, io ho utilizzato quello fornito dall’autore e che potete trovare qui:


Magic Desk Cartridge Generator 3

oppure direttamente qui

Magic Desk Cartridge Generator 3

Specialmente nell’ultimo link, ci sono tutte le spiegazioni per l’utilizzo del sw, io per mancanza di memoria la riporto qui di seguito in modo che, nel caso mi dimenticassi qualche passo, saprei cosa fare e come comportarmi.

Avrete in download un file compresso che dovrete scompattare in una cartella con il nome da voi scelto, nel caso non vogliate tenere quello standard fornito dal
programma; visto che si dovrà utilizzare il sw in modalità shell, ho preferito rinominarlo e metterlo sulla root del disco.
Per scompattarlo vi servirà necessariamente 7zip.

Di seguito quello che apparirà una volta eseguite le operazioni precedenti:

 

Generator - Elenco File
Generator – Elenco File

 

Generator - Elenco PRG
Generator – Elenco PRG

Della prima immagine ci interessano 3 voci:

1) la cartella prg,
che sarà la cartella che conterrà i flie prg Commodore 64 per la nostra compilation (C_nome);
2) il file compilation.cfg, file che dovremo editare per averere l’elenco dei giochi da inserire nel file bin;
3) il file crtgen.py che permette la creazione del file bin, file da inserire nella eprom.

Quindi:

PASSO 1) prendete i vostri files e metteteli nella cartella PRG.

PASSO 2) aprite il file compilation.cfg (io uso Notepad++). Nell’immagine che segue vi ho messo le informazioni più importanti per creare la vostra compilation, nel caso voleste
smanettare ulteriormente, sul sito del programma ci sono ulteriori opzioni con le relative spiegazioni.
Non credete si possa cambiare il suono o lo sfondo con una immagine perché non è possibile.

 

 

Passo 2.5) controllate che abbiate installato il linguaggio di programmazione Python e che l’eseguibile sia nel path del vostro sistema,
in modo da poter lanciare il comando da qualsiasi directory vi troviate. Va da se che dovrete far funzionare i programmi che vi ho consigliato con il vostro sistema operativo, per cui leggete bene i link che vi ho indicato e cercate informazioni riguardo le possibili e molto probabili anomalie che potrete incontrare.

Passo 3) lanciate il comando di creazione per file bin.

 

Generator - Creazione del BIN
Generator – Creazione del BIN

 

Avete visto che bell’errore è uscito fuori?

Questo perché la voglia di metterci i giochi che mi interessavano ha avuto la meglio sul conteggio degli effettivi Kbyte di occupazione. Io ho configurato il valore size=64 in quanto
sto usando una 27C512, invece se fate al volo il conteggio dell’occupazione vi escono 125Kbyte, quindi quasi il doppio.
Ci sono anche dei programmi che permettono di compattare i file prg, ma io sono ancora un novellino e mi limiterò ad usare le reali dimensioni dei files, ogni cosa a suo tempo.
Ridimensioniamo quindi le nostre aspettative, mettiamoci solo due giochi e rilanciamo il comando:

 

Generator - Creazione del BIN seconda prova
Generator – Creazione del BIN seconda prova

 

Perfetto.
Siamo quasi alla fine della nostra avventura.

Ora io vi immagino che siate dei perfetti commodoristi e che, a voi, avere la macchina reale o la macchina virtuale sia la stessa cosa: io invece che perfetto non sono, figuriamoci commodorista, io un emulatore per vecchie glorie otto bit non ce l’avevo quindi io, da bravo alunno, ho scassato gli zibbidei a Stefano C. e Faber Pixel per aiutarmi in questa ulteriore impresa.

Quindi prima di passare al penultimo passo di questa nostra chiacchierata, scaricatevi l’emulatore per la famiglia Commodore e lanciate l’eseguibile per il C64, in attesa di verificare se il lavoro fatto finora, sia stato fatto bene.

Gli amici mi hanno consigliato VICE, che potete trovare qui. Nel mio caso, sul portatile ho Windows 10 che è incompatibile con le GTK attuali per cui, se fosse, scaricatevi la versione precedente qui.

Scaricate, scompattate e mettete tutto nella cartella a voi più congeniale. Alla fine, lanciando i file x64.exe avrete questa schermata:

 

VICE - Schermata di boot
VICE – Schermata di boot

 

VICE

vi serve necessariamente per verificare la bontà della vostra compilation, prima di riversare il file bin nella eprom e, per far questo, utilizziamo un programma presente nella cartella di VICE, che
converte i file .bin in .crt, con questa sintassi (i percorsi sono i miei, convertiteli nelle vostre cartelle di installazione):

 

VICE - CartConv - creazione del CRT
VICE – CartConv – creazione del CRT

 

Ora, trascinate il file .crt che avete creato all’interno della schermata blu del Commodore 64 e, se tutto è stato fatto a dovere, avrete la vostra cartuccia emulata pronta per essere riversata sulla eprom e giocata.

 

VICE - Run del CRT
VICE – Run del CRT

 

Ho fatto un articolo molto lungo ed ho abusato della vostra pazienza, per cui vi risparmio anche la parte della “bruciatura” della eprom con il bin della vostra compilation.

Mi preme, però, ringraziare Stefano C.Faber Pixel per gli aiuti che mi hanno dato, le parolacce elargite, le promesse carbonaresche e sarciccesche, nonchè la voglia di incontrarci di nuovo, dal vivo, dopo che tutto questo anomalo periodo sarà concluso (che sia ben chiaro, pagate voi).

Un saluto a tutti e …… siate curiosi, sperimentate, fallite, riuscite ma siate amici.

Ciao, Carlo.

 

 

 

 

Licenza Creative Commons
Quest’opera è distribuita con Licenza Creative Commons Attribuzione – Non commerciale – Non opere derivate 4.0 Internazionale.

Redazione PicoE