lunedì 13 aprile 2009

Ai bei tempi: Wordstar 2000, VGA demo in 3k, AmiPro sotto Windows 3.0 e altro ancora

Stralcio dai "post" in cui spiego perché sono deluso dai prodotti Apple...

Sono diventato "Mac-user" nel 2005 solo per motivi di costo.

Quando non avevo ancora un computer, il primo computer che adocchiai fu un Apple III (esatto, un Apple III), con mostruoso hard disk da 5 (cinque) megabyte (megabyte, esatto), all'epoca denominato "ProFile" o qualcosa del genere. Il sistema completo costava 8,5 milioni di lire iva esclusa, cioè circa cento volte di più del massimo tetto di spesa che avrebbero consentito i miei. Per avere qualcosa di più potente avevo come alternativa un sistema Z80 con ugualmente 128k RAM, una stampante e una carretta di periferiche (a soli 9,5 milioni di lire iva esclusa), un "signor" computer che tuttavia ebbe altrettanto successo che l'Apple III (cioè... quasi zero).

Dopo gli home computer passai nel 1987 ad un PC-compatibile che pagai ottocentomila lire (unità centrale completa, più una tastiera), cioè un quarto o un quinto di un Apple equivalente dell'epoca. Era velocissimo: otto megahertz (cioè 0,008 gigahertz). Andai avanti con MS/DOS per molti anni, cominciando a usare sporadicamente Windows solo verso il 1991 (quando c'era ancora Windows 3.0: ci utilizzavo Ami Pro in 640k RAM in "modalità reale", con ben una novantina di kilobyte utilizzabili come area di lavoro). Quando arrivò nel 1992 Windows 3.1, continuai ad utilizzarlo sporadicamente (e solo per avviarci qualche programma in particolare), visto che in MS/DOS si aveva il totale controllo della macchina e non si rischiavano freeze improvvisi.

Passai a Linux nel 1994 (modestamente fui il primo a farlo conoscere all'università di Salerno: "guardate! un Unix gratuito! dieci dischetti! si possono avere anche i sorgenti!" - e pensare che fino a poco tempo prima avevamo tentato disperatamente di installare uno Xenix 286 che al decimo dischetto di installazione - 5.25" da 1.2Mb - chiedeva una maledetta key di attivazione).

Il primo Linux che feci conoscere all'università era una distribuzione Slackware con kernel Linux 0.99pl13 o giù di lì. La mia primissima partizione Linux era di poco più di 52000 kilobytes (esatto, cinquantadue mega) in cui c'entrava tutto, compresi compilatori e manuali. Poco tempo dopo la allargai a 80 mega, e non passò molto che gli dedicai l'intero hard disk. Erano i tempi in cui con 4 Mb RAM (cioè 0,004 gigabyte di RAM) si riusciva a vedere l'ambiente grafico X/Windows (incredibile). Oggi il più puzzone dei computer con Windows o Mac OS X richiede 512Mb RAM solo per tentare di accendersi, mentre le ultime distribuzioni di Linux, per un ambiente grafico, si contentano di 256 o addirittura 128Mb RAM.

L'ultimo Windows che i miei computer abbiano mai visto è stato il Windows 3.1 (non il 3.11, ma il 3.1, che anche sui '386 girava meglio che il 3.11: per di più in modalità standard, lanciato con win/s), che comunque utilizzavo con molta parsimonia perché da MS/DOS avevi command-line, facilità di accesso alla scheda grafica e alle altre risorse, una libertà di programmazione che sotto Windows non c'era, e tanti altri vantaggi - a cominciare dal fatto che non rischiavi un freeze un attimo prima di fare il backup.

Per la tesi di laurea di mia sorella utilizzammo infatti Wordstar 2000 in ambiente MS/DOS (dopo tanti anni fatti col Wordstar 3.3, il WS2000 era lo sbocco naturale); subito dopo, per la mia, utilizzai Word 6.0 (precedente a Word '95) ma solo per esplicita richiesta del relatore che voleva il .DOC "compatibile Windows" (ma stampai ugualmente in modalità nativa, cioè testo, non in modalità bitmap: ad eccezione delle figure, il file completo di stampa dell'intera tesi era meno di 290 kilobytes. Per utilizzare di notte la rumorosa stampante ad aghi, la misi tra due grossi cuscini).

Nel pacchetto software che consegnai ai relatori assieme alla tesi di laurea lasciai nella directory BIN (anche sotto MS/DOS e Windows chiamavo le mie directory BIN ETC USR etc etc) anche il mio ultimissimo VGA demo "Fintro", con effetti speciali sulle palette della VGA, scritte scorrevoli, rotazione continua dello schermo, interrupt-driven, con random generator, che rappresentava una massa di stelle cadenti, tutto in soli 3588 bytes di eseguibile parzialmente compresso, che girava su qualsiasi '286 con soli 128k RAM.

Fu il mio ultimo VGA demo (l'epoca del singolo programmatore che crea tutto ex novo era finita da un pezzo; per i demo c'erano in giro da anni squadroni di esperti dotati dell'hardware più aggiornato, delle librerie grafiche e sonore più avanzate, e senza limiti di spese telefoniche e internet). Tra le feature di questo demo, la clamorosa assenza di una JMP iniziale. C'era infatti il mio nome e cognome in ASCII all'inizio del file (ed il messaggio di errore "NEEDS 286+VGA+128K!"), che veniva eseguito come codice macchina! Le istruzioni immediatamente successive provvedevano a risistemare i registri del microprocessore "ammaccati" dall'esecuzione di istruzioni così torbide.

4 commenti:

  1. Ciao,
    mi fa piacere sapere che anche tu provieni da quel mondo di celebrolesi impazziti che si scrivevano programmini di grafica 3D con tanto di gouraud shading in assembler. Altro che accelleratori grafici...
    Che bei tempi erano quelli e che nostalgia.
    Ciauz

    RispondiElimina
  2. Erano gli ultimi tempi in cui un software serio poteva essere scritto da una sola persona.

    Ed erano anche gli ultimi tempi in cui pochi avevano il coraggio di dire: "vuoi una grafica più veloce? compra un computer più veloce".

    Già all'epoca imperersavano i coder Amiga che con qualche libreria 3D+audio scrivevano megademo in pochi giorni...

    RispondiElimina
  3. Amiga,
    non ho mai avuto il piacere, certo che c'erano dei bei giochi ma la ho sempre considerata alla stregua di una console dei giorni nostri.
    Certo che però quando è uscita l'amiga 500 io avevo un 80286 con una VGA risicatissima e le demo che riuscivo a fare non erano paragonabili specialmente sul fronte audio...
    Poi sucessivamente le cose si sono riequilibrate con i386DX e le mitiche Sound blaster a 8 bit

    Bei tempi...
    Adesso abbiamo .Net e Java che svuotano le cache di prorocessori dual core per fare cacchiate. Ma che ci si può fare?
    Ogni generazione ai l'inforamtica che si merita.

    Ciao

    RispondiElimina
  4. Sapevo che "ogni generazione ha il governo che si merita", ma... hai ragione, è vero anche che "ogni generazione ha l'informatica che si merita"!! :)

    RispondiElimina