RETRODREAMSAMIGA & SPECTRUM
Menu

← Curiosità

Commodore Amiga

1985

Guru Meditation: un errore con senso dell'umorismo

Il messaggio d'errore più famoso dell'Amiga nacque da un gioco in cui bisognava stare fermi sopra un accessorio per l'Atari 2600, e i numeri che lo accompagnano dicono esattamente che cosa è andato storto.

Prima del computer, Amiga vendeva accessori per la console Atari 2600. Il più originale fu il Joyboard, una pedana di plastica su cui il giocatore stava in piedi e si inclinava in avanti, all'indietro e di lato invece di muovere un joystick. Veniva con un gioco di sci, Mogul Maniac; altri due, uno di surf e uno di sequenze, non uscirono mai. Il crollo dei videogiochi del 1983 ne uccise le vendite [2].

Il Joyboard lasciò un'eredità inattesa. Secondo Jeremy Reimer, R. J. Mical, che scriveva alcune delle routine più complicate del sistema, ci fece un gioco semplice, Zen Meditation, per calmarsi: l'obiettivo era restare assolutamente immobili sulla pedana. Il gioco diventò uno scherzo interno, e quando si dovette scrivere il testo di un messaggio di errore grave, qualcuno pensò a "Guru Meditation" [1]. L'immagine rimasta, si dice, è quella di un programmatore seduto a gambe incrociate sul Joyboard, come un guru [3].

L'obiettivo del gioco era restare assolutamente immobili; chi si muoveva provocava una "guru meditation".

Sullo schermo il messaggio compare in un rettangolo nero in alto, con il testo rosso quando l'errore è fatale. Premendo il tasto sinistro del mouse la macchina si riavvia; il tasto destro apre il ROMWack, un debugger. Gli errori recuperabili, i Recoverable Alerts, compaiono in giallo nelle versioni 2.x e 3.x e permettono, quasi sempre, di salvare il lavoro prima di riavviare [3].

I due numeri che seguono non sono decorazione. Il primo dice che cosa è successo; il secondo è, in genere, l'indirizzo del task in esecuzione [3]. Negli errori del processore, il primo numero è l'eccezione del 68000: 3 è un accesso a un indirizzo dispari, 4 un'istruzione illegale, 5 una divisione per zero. Negli errori di sistema, il bit più alto segna l'errore come fatale, il resto del primo byte dice quale parte del sistema ha fallito (01 è la exec.library, 02 la graphics.library, 07 la dos.library) e il resto descrive l'errore, come la mancanza di memoria [4]. C'è persino un codice, 48454C50, che in ASCII si legge "HELP", per quando nemmeno il sistema conosce la causa [3].

Racconta Reimer che la parola Guru finì per sparire dal sistema perché un dirigente della Commodore la trovava poco seria, e il messaggio si ridusse a "Software Failure" [1]. Più tardi, in AmigaOS 4.0 e successivi, il guru lasciò il posto a un "Grim Reaper", la morte con la falce, che mostra ancora il numero dell'errore [3].

Il nome è sopravvissuto all'Amiga. VirtualBox chiama Guru Meditation lo stato in cui una macchina virtuale si blocca, i microcontrollori ESP8266 ed ESP32 scrivono "Guru Meditation Error" quando vanno in panico, e anche il server di cache Varnish usa l'espressione negli errori gravi [3].

Fonti

  1. [1]A history of the Amiga, part 2: The birth of Amiga (pág. 2) · Ars Technica (Jeremy Reimer), cópia em landley.net, 2007
  2. [2]The 68000 Wars, Part 1: Lorraine · The Digital Antiquarian (Jimmy Maher), 2015
  3. [3]Guru Meditation · Wikipédia (en)
  4. [4]exec/alerts.h (NDK do AmigaOS, v39.3) · GitHub (kusma/amiga-dev)