Come un delfino (ma senza Raoul Bova...).

Creato il 22 giugno 2013 da Marte @CPiramidale

Chi non ha vissuto l'informatica negli anni ottanta non può saperlo, ma la principale prerogativa dei "computers" del periodo era la lentezza... Della serie: avevi il "Commodore 64" con il "floppy disk drive"? Eri fortunato: «LOAD"*",8,1» e, nel frattempo, potevi andare SOLO a farti una gitarella (magari fuori porta...).
Poi tornavi con calma a casa, digitavi "RUN" sulla tastiera e FORSE funzionava qualcosa... Ché magari il disco che ti aveva prestato l'amichetto di turno (pirata in erba... ;) ) era farlocco di brutto e tu avevi buttato al vento solamente dieci preziosissimi minuti di vita.
Del resto, il buon Marte c'aveva solo il registratore mangiacassette tarocco ("mangiacassette" nel senso che spesso i nastri se li pappava per davvero... ;) ) ed i suddetti minuti diventavano delle ore, ché quel beneamato baraccone color ocra & terra di Siena bruciato caricava solo ed esclusivamente quello che gli andava bene a lui, mannaggia!!! :D
Chi ci segue sa che in passato abbiamo già parlato di espedienti come il "JiffyDOS"; accrocchi "hardware" che andavano a sostituire il "kernal" del "C64" e richiedevano delle circuiterie customizzate assemblate anche sui "floppy disk drives", per funzionare correttamente...
Morale: smanettando con l'hardware, riuscivi a velocizzare la macchina. Tuttavia il risultato finale, seppur per certi versi strabiliante, non ti faceva mai gridare veramente al miracolo... Della serie, se il "disk drive" standard di un "C64" liscio leggeva una traccia dal disco in tipo quattro/cinque secondi netti, sfruttando l'espediente del "JiffyDOS" i tempi scendevano intorno ai due secondi o poco meno... Ma il risultato era oltremodo variabile. Dipendeva in larga misura dalla struttura dei dati salvati sul disco... Talune volte l'accelerazione non era assolutamente apprezzabile ed in qualche rara circostanza le customizzazioni del "JiffyDOS" impedivano perfino il corretto funzionamento di taluni programmi (ed allora dovevi disabilitare tutto...). Della serie, quando e se funzionava in maniera impeccabile, per accorgertene te ne accorgevi eccome, dell'incremento di velocità, ma dovevi comunque continuare a pazientare, soprattutto se avevi a che fare con dei "files" belli cicciosi...
Diversamente, qualche giorno fa ho scoperto l'esistenza di implementazioni "hardware" ancora più evolute del buon vecchio "Jiffy". Nel dettaglio, sto parlando del "DolphinDOS".
Il progetto ingegneristico in questione comprendeva la classica customizzazione del "kernal" del "C64" (con le "routines" di turbizzazione canonicamente implementate al posto del codice relativo al registratore mangiacassette), unita alla solita modifica "hardware" della circuiteria del "1541", il quale veniva dotato di un "firmware" customizzato (ok...), di 8K di memoria "RAM" utilizzabile come "trackbuffer" (!) e di un cavo parallelo (!!!) per connettere il "drive" in maniera effettivamente superveloce al "Commodore 64"...

Un dettaglio dell'accrocchio da impiantare nel "1541".


Ora, tutta questa sovrabbondanza di espedienti tecnici (la "Cache RAM", il cavo parallelo...) unita al fatto che le modifiche erano fondamentalmente disponibili solo ed esclusivamente per il "1541" (mentre il "JiffyDOS" proponeva una customizzazione diversa per ogni "floppy disk drive" presente sul mercato...) sembrerebbero connotare un progetto potenzialmente costoso e fallimentare che comunque si contraddistingue per un'ambizione decisamente fuori dal comune...
Ma magari non è così! ;)
Detto questo, sappiate che il buon Marte s'è ancora una volta immolato per voi, provando il tutto mediante il rito canonico dell'emulazione (grazie al sempreverde "WinVICE"). Il risultato del mio "test" è il seguente:

"Non ci posso credere!".


Signori, ve lo devo confessare: non ho mai visto niente di così veloce in vita mia. Con il "DolphinDOS" correttamente configurato, un "C64" è in grado di macinare quasi due tracce al secondo, dal disco (in qualsiasi situazione, tra l'altro...). Della serie: dei "files" che tradizionalmente impiegano dai trentacinque ai quaranta secondi buoni, per essere letti, vengono tranquillamente caricati in qualcosa come 3,5 secondi netti! E c'è di più. Testato dove il "JiffyDOS" falliva miseramente, "DolphinDOS" non ha perso un colpo!
Ok. Sarà anche disponibile in una configurazione limitata e molto poco versatile, ma signori miei: CHE SPETTACOLO! :)
Per il resto, vorreste anche voi provare il "DolphinDOS" sul vostro emulatore preferito? Si?! Allora continuate a seguirmi senza indugio alcuno, che adesso parte lo spiegone globale-totale! :)
Allora, in primo luogo vi servono le immagini delle "ROM" del suddetto hardware. Io le ho trovate tutte compattate in un immenso archivio (45 "Mega" di roba...) che le raccoglie insieme ad altro materiale più o meno utile (e tanta, tantissima rumenta... :D ). Potete scaricarle comodamente anche voi, seguendo questo "link".
A "download" completato, scompattate il tutto in una "directory" comoda per l'utilizzo del contenuto dell'archivio in congiunzione con il vostro programma d'emulazione preferito. Vi ritroverete davanti ad una serie di cartelle. A voi, nello specifico, interessa la "directory" "Dolphin_DOS" e tutto quello che c'è al suo interno.
Bene. Ora che avete sottomano la materia prima grezza, passiamo alla configurazione del "WinVICE". (Che io c'ho messo tipo un paio d'ore per capire come far funzionare per bene il tutto, quindi vi sto risparmiando parecchia fatica ed esperimenti. Fidatevi... :D ).
Allora, dando per scontato che stiate usando l'"x64.exe" con l'emulazione "hardware" dei "drives" attivata (altrimenti stiamo parlando del sesso degli angeli... :P ), aprite il "WinVICE" e configurate il vostro "Drive 8" virtuale (menù "IMPOSTAZIONI" > "IMPOSTAZIONI DRIVE...") come segue: "TIPO DRIVE": "1541", "GESTIONE 40 TRACCE": "MAI", "RILEVA INATTIVITÀ": "RILEVA INATTIVITÀ", "CAVO PARALLELO": "DOLPHIN DOS" e quindi spuntate le prime tre caselle della sezione "ESPANSIONE DEL DRIVE" (ovvero: "$2000 $3FFF RAM", "$4000 $5FFF RAM" e "$6000 $7FFF RAM"). Confermate tutte le modifiche pigiando il tastino "OK".

Il pannello delle impostazioni del drive da riconfigurare...


Fatto? Ottimo! Adesso dobbiamo solamente reimpostare le "ROMs" della nostra macchina virtuale ed abbiamo finito.
Aprite quindi il seguente pannello di configurazione: "IMPOSTAZIONI" > "IMPOSTAZIONI ROM..." e cliccate sulla "tab" denominata "COMPUTER". In questa sottosezione, andrete a modificare il "kernal" del vostro "Commodore 64" virtuale scegliendo il file "...\Dolphin_DOS\kernal-30.rom" (prendendolo logicamente dall'archivio di "ROMs" che avete precedentemente scaricato... ;) ).
Ora, spostatevi nella "tab" "DRIVE" e ripetete l'operazione anche per il "firmware" del "1541", sostituendo il "file" preesistente con "...\Dolphin_DOS\c1541-30.rom" (devo forse ripetervi da dove prenderlo? ;) ).
Confermate anche queste ultime due modifiche pigiando "OK" per chiudere la finestra.
A questo punto, salvate la configurazione, uscite dal "WinVICE" e riapritelo subito dopo. Vi ritroverete davanti ad una schermata identica a questa e sperimenterete anche voi l'ebrezza della velocità!

Son veloce come un delfino!!!


Enjoy!!! :)