Emozioni d'altri tempi con Duke Nukem 3D e spirito hacking!

Premessa

Foto Pixabay con licenza CC0

Da ragazzo... ehi si parliamo di quasi 30 anni fa, desideravo spasmodicamente un motorino.
Negli anni '90 non esistevano nemmeno gli scooter ed il mio sogno era un Fifty 50cc che poteva vantare ben 4 marce!
Come tutti i genitori, i miei si opposero fermamente a quell'oggetto che ai miei occhi significava "libertà" mentre ai loro rappresentava "pericolo"; così, per lenire le mie preghiere, mi comprarono il mio primo computer.

Si trattava di un i386SX ("SX" sta per "senza coprocessore matematico") che era molto meno potente del i386DX; montava uno schermo da 14 pollici che emetteva radiazioni come se non ci fosse un domani.
La mia attrezzatura era completata da un modem esterno 14.4kb/s acquistato lavorando una stagione intera come cameriere e con il quale mi connettevo ad alcune BBS per leggere informazioni e scaricare qualche fotografia degna della tempesta ormonale allora in atto.

All'età di 17 anni fui catapultato nel mondo dell'informatica e tra dischetti piratati e compagni di scuola smanettoni mi arrivò per le mani Duke Nukem 3D.
Si trattava di uno sparatutto che per l'epoca era un autentico capolavoro. Le console non esistevano ancora e quel gioco mi regalò un numero di ore inimmaginabili di puro divertimento.

Era l'epoca del DOS che, essendo un sistema operativo piuttosto arcaico, separava la RAM in memoria bassa e memoria alta e da pochi mesi stava iniziando a fare capolino la prima interfaccia grafica Microsoft con Windows 3.0 che scimmiottava l'ottimo Amiga.

Memoria alta e memoria bassa

Foto Pixabay con licenza CC0

Duke Nukem 3D aveva necessità di sfruttare la memoria bassa del DOS ma, il sistema operativo, destinava questo spazio a programmi di sistema necessari alla gestione del computer.

Iniziai dunque a studiare il DOS, a comprendere il funzionamento del autoexec.bat e del config.sys e a smadonnare con l'help in linea: la missione era liberare la memoria bassa per poter giocare!

Il passo successivo fu comprendere il Basic e muovere i primi passi verso la programmazione. Inizialmente anche questa conoscenza era finalizzata a far partire differenti porzioni di software a seconda che, una volta acceso il PC, dovessi lavorare oppure giocare.

Le prime esperienze di rete

Un'esperienza che ricordo ancora in modo molto vivido, fu l'idea di giocare in rete che venne ad un mio amico.

Ora... non immaginatevi i giorni nostri con Internet, computer portatili e protocolli di rete stabili come il TCP/IP...

Provate ad immaginare tre ragazzi che si caricavano un tower da 20 kg nello zaino a spalle con migliaia di cavi tra alimentazione, mouse, tastiera e un monitor formato "padella gigante" in braccio. Immaginateli mentre si recavano a casa dell'uno o dell'altro il sabato pomeriggio in bus subito dopo pranzo per giocare fino a tarda notte, fermarsi a dormire e riprendere il mattino dopo. Per buona pace dei genitori...

Ma la parte più succosa era l'infrastruttura di "rete" che non contemplava certo router o i cavi RJ45...
L'unica cosa sulla quale si poteva fare affidamento per connettere i PC era un cavo seriale.
Ovviamente non si poteva collegare più di due macchine per volta ed il terzo amico si spostava da una postazione all'altra per guardare il gioco e cercando di consigliare il giocatore di turno.

Da seriale a parallelo

In questo scenario, tuttavia la connessione risultava lenta... molto lenta... Le videate andavano a scatti ed il nostro amato Duke Nukem risultava, di fatto, ingiocabile.
Eravamo diciassettenni senza internet e dovevamo cercare le informazioni tramite libri in biblioteca e rivenditori poco informati ma dopo alcune settimane capimmo che il problema era il basso numero di informazioni che il cavo seriale riusciva a trasmettere in un secondo.

Dopo una veloce consultazione si decise di passare alla porta parallela ma qui le difficoltà aumentarono. Passavamo giornate intere per far capire ai vari sistemi che volevamo dialogassero tra loro.

Smanettavamo su files di configurazione, davamo vita a continui ed eterni riavvii e per tenerci svegli bevevamo coca cola a nastro; alla fine, però, riuscimmo nel nostro intento...

Ricordo ancora quando il mio PC iniziò finalmente a comunicare in parallelo con quello di Fabrizio, il mio amico. Lo ritenemmo un momento degno di passare alla storia e ci sentimmo degli hacker fatti e finiti :-)

Le partite ripresero, le schermate si susseguivano in maniera più fluida ma notammo che se la risoluzione era alta rimaneva comunque un forte ritardo tra me e lui mentre abbassando la risoluzione a livelli infimi riuscivamo ad avere una buona esperienza di gioco ma a discapito di una grafica a quadrettoni stile Minecraft. In una parola inaccettabile.

Il coprocessore matematico

A questo punto andammo nel campo delle ipotesi e delle prove.

Non c'era nessuno con il quale confrontarci; per i nostri genitori eravamo adolescenti ormai sulla via della perdizione, i nostri insegnanti non avevano idea di cosa parlassimo e, come detto, non esisteva internet. Alla fine capimmo che il problema era costituito dai processori.

Il mio povero i386SX senza coprocessore matematico doveva confrontarsi con un 486DX dotato di coprocessore ed era una lotta impari che si ripercuoteva sulle performance grafiche.
Iniziai dunque a informarmi e a comprendere cosa fosse una Motherboard ma anche cosa fossero tutte quelle schede che uscivano dalla scheda madre, cosa potessi infilare negli slot, la funzione della scheda grafica etc etc.

Ora... di cambiare il PC non se ne parlava; una scheda grafica costava troppo ma ero comunque intenzionato a giocare alla pari e dopo varie contrattazioni decisi di rinunciare alla paga dei successivi 12 mesi (oggi lo chiamerei anticipo TFR ahahah) per acquistare un coprocessore.

L'idea era saldarlo sulla scheda madre sperando di non fondere nulla e non rovinare il complesso equilibrio tra i circuiti di silicio che si intrecciavano su quella piastra verde.

Il passaggio successivo fu assoldare al prezzo di una pizza un altro mio amico che frequentava perito elettronico ed una sera di febbraio (ricordo il mese perché fuori faceva un freddo polare ma io e questo mio amico sudavamo come se fosse pieno agosto) riuscimmo a saldare il coprocessore sulla scheda madre.

Vi immaginate quando feci il boot del sistema e questo rilevo il coprocessore?
Aggiunsi anche un banco di 2Mb di RAM raggiungendo ben 4Mb totali! Un bolide!

Conclusioni

Finalmente raggiunsi lo scopo e le sessioni di gioco diventarono molto più competitive.
Volevo condividere con voi una certa nostalgia ed un tumulto di vecchie emozioni che riaffiorano nel ricordare tutto ciò ma soprattutto il fatto che ormai l'informatica moderna, con la sua miniaturizzazione, non prevede più questo livello di hacking e trovo che sia un po' un peccato perché i ragazzi, oggi, hanno la pappa pronta e non sono portati a sperimentare.

Tra smartphone e console, ormai siamo diventati dei semplici "consumatori" di un prodotto ma ingabbiati nel non conoscere nulla più di quanto il produttore ci fa vedere.

Ormai coloro che vogliono di più dai propri dispositivi o lo fanno a livello software con la programmazione oppure a livello di makers con schede stile Arduino o similari.

E voi che ne pensate?
Avete mai smanettato pesantemente con i vostri computer o siete più tipi da console? :-)


H2
H3
H4
3 columns
2 columns
1 column
15 Comments
Ecency