Emulare online: sempre più in Alto

Non c’è solo il Macintosh. Il web è pieno di emulatori di tutti i tipi, con i quali si possono usare vecchie macchine e vecchi sistemi operativi direttamente nel browser, senza installare nulla sul proprio computer.

L’idea iniziale per questo post era quella di proporre un lista ragionata dei migliori emulatori online, ma poi ho deciso di lasciar perdere, ci sono già delle liste ben fatte ed è inutile ripetersi.
La mia preferita è una lista molto dettagliata di emulatori in JavaScript, che è di sicuro il modo più moderno ed efficace (anche se magari non il più efficiente) per realizzare un emulatore online, oggi.

Interessanti anche le liste contenute in Roundup: Retro Computers in Your Browser e in A Big List of Browser-Based Emulators and Ports of Classic Games, che però contengono parecchi link ormai defunti, oltre che un po’ di emulatori che richiedono Flash, Java o qualche strano plugin per funzionare.

Senza dimenticare la Software Library dell’Internet Archive, dove si trova un po’ di tutto, anzi il vero problema è proprio quello di riuscire ad orientarsi fra la tantissima roba disponibile.

Se proprio devo consigliare un paio di cose da provare, sceglierei Apple //jse e PCjs Machines, facili e comodi da usare e con tantissimo software di buona qualità disponibile.

Ma fin qui, diciamolo, non c’è niente di particolarmente eccitante, in fondo l’Apple II si poteva emulare tranquillamente anche in un widget di Dashboard!

Perché non provare invece qualcosa di più interessante, una macchina ormai quasi dimenticata, ma senza la quale non ci sarebbero i computer come li conosciamo (e li usiamo) oggi?

Parlo di sua maestà, l’Alto, sviluppato al Palo Alto Research Center (PARC) della Xerox nei primi anni ’70. Il primo computer personale, ma anche il primo computer che conteneva, anche se in modo ancora acerbo, gli elementi di una interfaccia utente grafica, parecchi anni prima del Lisa e del Macintosh.

Dell’Alto non è stato venduto nemmeno un esemplare — tutti gli esemplari prodotti sono stati usati all’interno della Xerox oppure regalati(!) a università e centri di ricerca USA, oltre che alla Casa Bianca e alla Camera dei Rappresentanti — ma rimane lo stesso una pietra miliare nella storia dell’informatica.

Sembra incredibile ma esiste un emulatore online dell’Alto, lento, anzi lentissimo, e soggetto a continui crash, ma comunque molto utile per conoscere un oggetto affascinante (ed imprescindibile) della storia della tecnologia.

Per usare l’emulatore bisogna cliccare prima su questo link e poi sul disco di boot (Boot Disk), rappresentato dall’icona del disco rigido con il pallino verde, che compare nella finestra di testo a sinistra del monitor dell’Alto.

Una volta completato l’avvio del sistema comparirà la scritta “Xerox Alto Executive/12”, con alcuni dati relativi al sistema operativo in esecuzione, e poi il prompt dei comandi (l’equivalente del Terminale del Mac), rappresentato da un >.
Spostando il mouse sull’immagine del monitor si può finalmente provare ad usare l’Alto (preferibilmente scegliendo il tasto di zoom, in modo da ingrandire l’immagine del monitor su tutta la finestra del browser).

Un comando fondamentale per interagire con l’Alto è il ?, che mostra il contenuto del disco montato nell’emulatore. L’Alto usa però la tastiera americana, per inserire il ? con tastiera italiana dobbiamo premere contemporaneamente SHIFT e -.

Comparirà (lentamente!) una lista dei file presenti sul disco, quasi tutti giochi, insieme ad una freccia tremolante che rappresenta il puntatore del mouse, la prima indicazione che stiamo usando un sistema con una interfaccia grafica.

I programmi eseguibili hanno il suffisso .Run (più o meno come il suffisso .exe che indica i programmi eseguibili su Windows). Per lanciare un programma basta scrivere una parte univoca del nome (il sistema operativo non distingue fra maiuscole e minuscole), anche senza estensione, e premere Invio.

Per cominciare, consiglio di lanciare il programma Ti55.Run, un emulatore (dentro l’emulatore!) di una calcolatrice Texas Instruments TI-55, utilizzabile completamente con il mouse. Per uscire dall’emulatore basta schiacciare il tasto (virtuale) OFF che “spegne” la calcolatrice.

Non male anche il gioco del labirinto, maze, nel quale si usa il mouse per tracciare il percorso che congiunge il quadratino chiaro lampeggiante di partenza a quello nero di arrivo. E dove, come in un labirinto reale, per tornare sui propri passi bisogna proprio rifare il percorso al contrario. Oppure pinball, l’intramontabile flipper della nostra (o almeno della mia) giovinezza, che però è così lento da essere praticamente inutilizzabile, trek, un gioco spaziale che ha bisogno di un manuale di 20 pagine per poter essere usato, o turkey, un gioco del 15 grafico in cui le tessere vengono mosse con il mouse.

Se qualcosa va storto (e qualcosa va spesso storto), la cosa più semplice è ricaricare la finestra del browser e far ripartire l’emulatore da zero.

Purtroppo l’emulatore online dell’Alto contiene praticamente solo giochi. Per provare altre applicazioni fondamentali dell’Alto, come Bravo, il primo editor grafico di testi, o Draw, un programma di grafica vettoriale, ci vuole qualcosa di più.

Appuntamento alla prossima volta.

Bibliografia

Per saperne di più sull’Alto, consiglio fortemente la lettura di questo articolo di BYTE, pubblicato nel numero di settembre 1981. BYTE è stata per tutti gli anni ’80 e i primi anni ’90 la rivista fondamentale nel campo del personal computing (e non solo), con un livello di dettaglio e di approfondimento degli articoli che sarebbe assolutamente impensabile oggi.

Molto interessante anche l’introduzione alla storia del restauro di un vecchio Alto appartenuto ad Alan Kay (il padre della programmazione ad oggetti e del Dynabook, il computer educativo ideale da cui discendono i notebook e i tablet di oggi).

Tagged with: , , , , , , , ,
Pubblicato su software

Attenti ad HandBrake!

Più che un post questa è una vera e propria comunicazione di servizio.

Gli sviluppatori di HandBrake, quello che è probabilmente il miglior convertitore video per il Mac (e non solo), si sono accorti che uno dei loro server è stato compromesso e che le copie di HandBrake scaricate fra il 2 e il 6 maggio potrebbero contenere un cavallo di Troia (trojan horse), cioè un codice maligno capace ad esempio di intercettare quello che si scrive con la tastiera o, nei casi estremi, persino di prendere il controllo del Mac.

Controllare HandBrake

Chi avesse scaricato ed installato HandBrake nei giorni critici deve controllare che che in Monitoraggio attività non compaia il processo activity_agent e che il checksum del file HandBrake-1.0.7.dmg non corrisponda a quelli riportati qui.

Ricordo che il programma Monitoraggio Attività si trova nella cartella Applicazioni > Utility, mentre per calcolare il checksum del file HandBrake-1.0.7.dmg (che supponiamo sia nella cartella Downloads) basta lanciare il Terminale (si trova anch’esso in Applicazioni > Utility) ed eseguire i comandi

$ cd Downloads
$ shasum -a 1 HandBrake-1.0.7.dmg && shasum -a 256 HandBrake-1.0.7.dmg

L’esecuzione del comando shasum su una copia legittima di HandBrake produce in risposta

6d2e5158f101dad94ede3d5cf5fda8fe9fd3c3b9  HandBrake-1.0.7.dmg
3cd2e6228da211349574dcd44a0f67a3c76e5bd54ba8ad61070c21b852ef89e2  HandBrake-1.0.7.dmg

mentre le copie maligne di HandBrake riportano dei valori completamente diversi.

Rimuovere HandBrake

Per rimuovere la versione corrotta di HandBrake insieme al suo trojan, bisogna eseguire dal Terminale i comandi seguenti (esattamente come sono scritti!):

$ launchctl unload ~/Library/LaunchAgents/fr.handbrake.activity_agent.plist
$ rm -rf ~/Library/RenderFiles/activity_agent.app

Inoltre, se il comando

$ ls -al ~/Library/VideoFrameworks/

riporta l’esistenza di un file proton.zip, bisogna rimuovere anche questo file insieme alla cartella che lo contiene con

$ rm -rf ~/Library/VideoFrameworks/

Fatto questo si può rimuovere HandBrake dal Mac trascinando l’icona dell’applicazione nel cestino oppure usando un programma di disinstallazione come AppCleaner o simili.

È opportuno anche riavviare il Mac, in modo da essere sicuri di rimuovere il programma activity_agent dalla memoria.

Infine, per maggiore sicurezza gli sviluppatori di HandBrake consigliano anche di modificare tutte le password salvate nel Portachiavi del Mac o nel browser. E questa è veramente una bella, grossa, seccatura!

Purtroppo sembra non ci sia più nessun freno (nemmeno a mano) a questa ondata di malware per il Mac.

Tagged with: , , ,
Pubblicato su software

Emulare il Macintosh online (seconda parte)

Nella puntata precedente abbiamo visto che da qualche settimana è disponibile un emulatore online del primo Macintosh, con il quale si possono provare parecchie applicazioni storiche per il Mac direttamente dal browser.

Le applicazioni presenti in questo momento sono 77, non tantissime, ma è probabile che aumentino con il tempo.

Ci sono due versioni di MacOS (proprio così, con Sierra siamo tornati allo stesso nome ma con una maiuscola in meno), un System 6 ridotto all’osso e un System 7 (del 1991) con un buon numero di applicazioni installate, a mostrare cosa poteva fare un Mac un quarto di secolo fa (System 7 è praticamente contemporaneo a Windows 3.0, uno dei sistemi operativi più inutili e pieni di bachi che abbia mai utilizzato).

Ci sono poi un po’ di giochi classici, che continuamo a vedere riproposti ancora oggi in tutte le salse, con solo un vestito più carino. Non mancano le applicazioni di produttività personale e qualche numero delle prime riviste in formato elettronico (e-zine).

Per lo sviluppo ci sono alcuni BASIC, ma c’è soprattutto HyperCard (con qualche stack relativo) a dimostrare la genialità di un programma troppo avanzato per i suoi tempi.

Insomma, con questo emulatore si possono provare parecchie cose interessanti, utili per mostrare ai più giovani le virtù (e i limiti) dei Mac degli anni ’80 e ’90, e che fanno respirare un soffio di nostalgia a chi c’era già e quei Mac e quei sistemi operativi li ha usati davvero.

Ma fra le tutte applicazioni disponibili, quella che mi ha incuriosito di più è stata DataFlow Version 0.0 (attenzione al numero di versione).

Non ne avevo mai sentito parlare, però non pretendo di certo di conoscere tutto il software sviluppato per il Mac (o per qualunque altra piattaforma). Forse quello che mi ha colpito è la finestra scarna e quasi vuota del programma, molto diversa rispetto a tutti gli altri programmi disponibili.

Lancio l’emulatore e la prima impressione è che DataFlow sia un programma come tanti, qualcosa per realizzare diagrammi di flusso o simili.

Ma poi guardo con più attenzione e mi accorgo che in realtà DataFlow è molto di più, è un sistema, anche se assai rudimentale, di programmazione visuale basato sul concetto di programma a flusso di dati (da cui il nome).

In pratica un programma di questo tipo è composto da un certo numero di blocchi fondamentali che eseguono una operazione predefinita sui dati in ingresso e poi li trasmettono al blocco successivo. Poiché i blocchi di elaborazione sono indipendenti fra loro, questo semplice concetto porta naturalmente al calcolo parallelo, senza i trucchi e gli inganni di tanti linguaggi adattati in modo un po’ raffazzonato allo scopo.

L’idea era relativamente nuova per l’epoca (con DataFlow siamo più o meno alla fine degli anni ’80) ma ha generato sistemi di programmazione molto avanzati, utilizzati ancora oggi in ambiti estremamente diversi. Come ad esempio LabVIEW di National Instruments per il controllo della strumentazione elettronica, Simulink di MathWorks per la modellazione di sistemi dinamici, Quartz Composer di Apple per la composizione grafica e, più recentemente, TensorFlow di Google, diventato in pochissimo tempo uno degli strumenti più popolari, anzi direi proprio hot, nel campo della programmazione e dell’intelligenza artificiale.

Insomma DataFlow è un anticipo del futuro, una vera chicca buttata lì con noncuranza fra un foglio elettronico ed un giochino senza tante pretese.

Usarlo non è semplice, almeno per le abitudini odierne. L’interfaccia è rozza, i blocchi grafici non si possono spostare dopo averli posizionati sul foglio (io almeno non ci sono riuscito), le linee di connessione vanno un po’ troppo per i fatti loro, si vede che è una versione molto acerba (versione 0.0, oggi la chiameremmo una versione alfa se non meno). Alla fine comunque sono riuscito a fare un programmino semplice semplice, che prende due numeri interi e ne calcola somma, prodotto e quoziente.

Niente di che, è chiaro, ma quello che è particolarmente bello è che il programma è dinamico, se si cambiano i numeri in ingresso mentre il programma è in esecuzione le caselle di uscita aggiornano immediatamente i risultati. Oggi è scontato, ma trent’anni fa?

Naturalmente i programmi moderni fanno molto di più e in modo molto più comodo, ma i fondamenti ci sono già tutti in DataFlow. È bello che l’Internet Archive l’abbia sottratto all’oblio del tempo.


Un semplice programma in LabVIEW (sopra), e in una vecchia versione di Simulink (sotto).

Tagged with: , , , , , , , ,
Pubblicato su programmazione

Apple o non Apple, questo è un problema

L’abbiamo letto e sentito (e magari anche detto) mille volte: per evitare che ci vengano carpite in modo fraudolento informazioni personali riservate — login e password di servizi importanti, dati della carta di credito, informazioni bancarie — è fondamentale controllare sempre che l’indirizzo (URL) del sito riportato nella barra degli indirizzi del browser sia quello legittimo.

Infatti, anche se per un qualunque malintenzionato è piuttosto facile creare un sito fittizio identico a quello legittimo, quello che non può riprodurre è proprio l’URL del sito, che è attribuito in modo univoco ed è gestito da un singolo database distribuito in tutto il mondo.

Un malintenzionato potrà quindi anche ricreare in modo perfetto l’aspetto del sito di PayPal, http://paypal.com, ma dovrà per forza di cose usare un URL leggermente diverso, magari http://pay.pal.com, http://mypaypal.com, o simili, sperando che il malcapitato che ci finisce non se ne accorga. Basta quindi un po’ di attenzione per evitare problemi.

Almeno finora.

Provate ad inserire nella barra degli indirizzi del vostro browser questo URL apparentemente inoffensivo, https://www.xn--80ak6aa92e.com.

Se usare Firefox, Opera o Chrome (fino alla versione 57.x), quando premete Invio siete portati ad un sito web il cui URL sembra essersi trasformato quasi magicamente in quello di Apple.


A questo punto, basterebbe riprodurre l’aspetto del sito di Apple per rendere il sito finto praticamente indistinguibile da quello legittimo, con gravissimi pericoli per la sicurezza dei malcapitati che dovessero finirvi.

Per fortuna, Safari non è soggetto a questo problema e mostra sempre nella barra degli indirizzi l’URL originale. Anche i browser Microsoft, Edge e il venerabile Internet Explorer, sono immuni, a meno di non usare il Russo come lingua di sistema.

Il bug è legato all’uso dei caratteri unicode per gli indirizzi web, o meglio alla rappresentazione dei caratteri unicode tramite i soli caratteri ASCII (detta rappresentazione punycode).

L’URL https://www.xn--80ak6aa92e.com/ rappresenta delle lettere dell’alfabeto cirillico che sembrano identiche (o quasi) a quelle dell’alfabeto latino, ma che rimandano ad indirizzi web completamente diversi da quelli originali.1 La stessa cosa si può fare anche con altri alfabeti che hanno lettere simili alle nostre, fra cui il greco e l’armeno (anche se mi sembra per quest’ultimo le letetre simili siano veramente poche).

I dettagli tecnici del bug si possono leggere qui.

Quello che mi preme di più è spiegare come proteggersi. Perché è chiaro che inizieranno prestissimo degli attacchi basati su questa debolezza della codifica unicode, attacchi molto più pericolosi e difficili da smascherare di quelli che abbiamo dovuto subire finora.

Come già detto, Safari, Edge ed Internet Explorer non sono a rischio. Per chi usa Chrome, basta aggiornare alla versione 58.x appena rilasciata. Per Opera non è chiaro cosa succederà, ma comunque Opera ha una quota di utenti relativamente ridotta rispetto agli altri due browser a rischio.

Il vero problema è Firefox. Perché gli sviluppatori di Firefox hanno annunciato che cambiare il comportamento di default del browser creerebbe problemi agli “utenti le cui lingue non usano l’alfabeto latino” e che invece “loro vogliono che tutte le lingue e gli alfabeti siano trattati allo stesso modo su internet”.

Un intento nobile, ma anche pericoloso. Per fortuna c’è la possibilità di cambiare il comportamento di default di Firefox, accedendo alle pzioni avanzate di configurazione del browser.

Per farlo, basta scrivere about:config nella barra degli indirizzi del browser e premere Invio. Comparirà una scritta bella grande che ci informa che l’operazione può invalidare la garanzia, compromettendo la stabilità, la sicurezza e le prestazioni del browser. Decisamente eccessivo. Non preoccupatevi e cliccate senza paura sul tasto che vi fa accettare il rischio.

Inserite ora la stringa punycode nella barra di ricerca in alto. Comparirà un unico parametro di configurazione, network.IDN_show_punycode, il cui valore di default è false. Fate doppio click su false, trasformandolo in true, e chiudete la pagina di configurazione. Da ora in poi anche Firefox si comporterà come Safari e sarete al sicuro da possibili attacchi di questo tipo.

Per ulteriori approfondimenti, consiglio di leggere prima di tutto l’articolo originale che descrive il problema, Phishing with Unicode Domains di Xudong Zheng. Molto interessante e dettagliato anche This Phishing Attack is Almost Impossible to Detect On Chrome, Firefox and Opera di Mohit Kumar, mentre Chrome And Firefox Adding Protection Against This Nasty Phishing Trick e Chrome and Firefox Phishing Attack Uses Domains Identical to Known Safe Sites, riportano altri due esempi di URL a rischio.


  1. Se si guarda attentamente, la ӏ di apple visibile nella barra degli indirizzi non è proprio una l ma una lettera dell’alfabeto cirillico). 
Tagged with: , , , , , , , , ,
Pubblicato su software

Emulare il Macintosh online

Il retrocomputing — il recupero, il restauro e la conservazione di vecchi computer e del relativo software e documentazione, un tema a metà fra l’archeologia informatica e la semplice nostalgia (ma personalmente propendo per la prima alternativa) — è un argomento piuttosto caldo in questi ultimi giorni.

Ne ho parlato pochi giorni fa a proposito del sito Storie di Apple, che cerca di recuperare la storia, nota e semisconosciuta, dell’azienda di Cupertino.

Ne hanno parlato in tanti in questa settimana,1 dopo che il benemerito Internet Archive ha annunciato, proprio il giorno di Pasqua, l’attivazione di un emulatore online del primo Macintosh, il computer che ha cambiato la storia della tecnologia. La collezione attuale di sistemi operativi, applicazioni e giochi per i primi Macintosh è piuttosto ristretta, ma è probabile che cresca rapidamente.

L’emulatore (si tratta di PCE.js, la versione in JavaScript dell’emulatore PCE originale) può essere usato direttamente nel browser, indipendentemente dal sistema operativo sottostante e senza installare niente sul proprio computer. Una cosa che trovo sempre straordinaria, un segno chiarissimo della potenza dei computer attuali (emulare non è mai uno scherzo) e della trasformazione sempre più spinta del browser web in un vero e proprio sistema operativo.

Ma l’annuncio pasquale contiene una seconda parte trascurata da quasi tutti i commentatori, che però a me fa molto più gola. Dove viene detto che l’Internet Archive contiene ormai anche un’ampia collezione di Macworld Magazine — compreso il primissimo numero con Steve Jobs e il Macintosh 128K in copertina — e di libri relativi al Macintosh (questi sono solo quelli pubblicati nel 1984 o nel 1985). Tutti disponibili anche in pdf, per poter essere scaricati e sfogliati più comodamente sul proprio computer o tablet.2

Come questo numero di Macworld, che non potrebbe essere stato meno profetico.

Oppure questa Chilton’s guide to Macintosh repair and maintenance che, molto prima di iFixit, insegnava come mettere le mani nel proprio (costoso!) Macintosh.

Ma non è finita qui.


  1. Fra questi, Ian Paul, The Internet Archive brings Apple’s classic Macintosh to your browser su Macworld, Andrew Cunningham, Classic Mac OS and dozens of apps can now be run in a browser window su ArsTechnica, Tim Hardwick, Internet Archive Offers In-Browser Emulation of Classic Macintosh Software, Circa 1984-1989, Charley Locke, Aw Yiss: You Can Now Play Old-School Mac Games in Your Browser su Wired. In italiano, a parte un breve articolo su Applicando, Il primo Mac del 1984 si può emulare online e il commento stimolante come sempre del mio amico Lux, Segni del tempo, non ho trovato altro. 
  2. Perché, se è vero che il browser sta diventando un sistema operativo, ci sono cose che secondo me funzionano ancora molto meglio sul desktop (anche scollegati dalla rete), e la lettura dei pdf è fra quelle. 
Tagged with: , , , , , , ,
Pubblicato su software
Informativa
Questo sito utilizza cookie di terze parti per inviarti pubblicità e servizi in linea con le tue preferenze. Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie, clicca qui. Scorrendo questa pagina, cliccando su un link o su qualunque altro elemento o proseguendo la navigazione in altra maniera, acconsenti all'uso dei cookie.
Follow MelaBit on WordPress.com
Categorie
Archivi
%d blogger hanno fatto clic su Mi Piace per questo: