Cinematronics, 1983 · la ROM europea
L’europeo non ha i tre giri dell’americano: ha un mazzo, e te lo dà tutto. Quando muori non ti toglie una carta: te la rimette in testa.
«Parte che ti dà tutte le scene in ordine: 1, 2, 3, 4, 5, 6, 7, 8… se muori, nell’ordine in cui muori, le sposta in cima alla lista.»
Alan, 8 agosto 2026 — a memoria, prima di qualunque prova
Detto così, dalla parte di chi ci ha giocato. Poi siamo andati a vedere se la macchina era d’accordo. Lo era.
L’europeo non ha i tre giri dell’americano: ha un mazzo, e lo percorre. Il conto sta in un byte solo, in testa alla tavola: 36. Il Drago sta a parte, e non è una carta del mazzo.
⇒ In Europa giochi tutto il gioco. Non ci sono tre alternative fra cui il caso sceglie: ci sono trentasei scene, e sono tutte tue. Quello che il caso decide è soltanto l’ordine.
Il mescolamento non avviene quando premi Start: avviene durante l’attrazione, mentre il cabinato è lì da solo. Il codice scambia la prima carta con una a caso, dodici volte e mezzo al secondo — uno scambio ogni ottanta millesimi. In due secondi il mazzo ha già perso metà del suo ordine.
⇒ Dal momento in cui infili il gettone l’ordine è già deciso, e non cambierà più. La tua partita è stata mescolata da quanto a lungo la sala è rimasta vuota.
Quella frase — «mescolata da quanto a lungo la sala è rimasta vuota» — l’avevamo scritta come un’immagine. Il 6 settembre 2026, guardando la macchina invece dei byte, abbiamo scoperto che è la descrizione esatta del meccanismo.
Il sorteggio è una sola istruzione:
0DF5 ED 5F LD A,R <- «il dado» 0DFA 91 SUB C ; modulo 36, a sottrazioni
R è il registro di refresh dello Z80: un contatore che si incrementa a ogni istruzione letta. Non è un generatore di numeri: è un contapassi. Dopo un reset parte da zero, e siccome la macchina accesa esegue sempre lo stesso codice nello stesso ordine, al momento dello scambio numero N quel contatore vale sempre lo stesso numero.
⇒ Lo scambio numero N è sempre lo stesso. Due macchine europee accese e lasciate sole, allo stesso istante, danno lo stesso mazzo.
Tre accensioni a freddo, registrate una dopo l’altra col pannello del mazzo acceso, e allineate sulla schermata blu. Si confrontano le trentanove voci della lista, una per una.
Il metro: quanto valgono due mazzi davvero diversi? La stessa registrazione, cinque secondi dopo, cambia da 25 a 32 voci su 39.
Il confronto: due accensioni diverse, allo stesso istante, cambiano zero voci. Quattro istanti provati, quattro volte zero. E la terza registrazione, sfasata di un solo scambio, va anche lei a zero riallineandola — con un massimo netto: uno scambio prima 0, uno scambio dopo 13.
Nella tua mano. Nello stesso filmato, dopo lo Start, i tre mazzi non hanno più niente in comune: il giocatore ha premuto in tre istanti diversi. La ROM srotola una sequenza scritta; tu scegli soltanto dove tagliarla.
⇒ Non è casuale. È soltanto ottanta millesimi più veloce di te. In linea di principio il mazzo si può calcolare: se sapessi il fotogramma esatto in cui hai premuto, sapresti le tue scene. La macchina non ha un segreto — ha un orario.
L’ordine di fabbrica entra in memoria una volta sola, all’accensione: in trentadue kilobyte di programma, LD HL,2008 compare due volte e LD DE,A002 una, tutte dentro la routine 0765, che ha un solo chiamante — 0064, tre byte dopo che si è montato lo stack. Cioè l’avvio.
Premere Start non ricopia niente: si gioca sul mazzo che si trova, comunque sia messo. E quando la partita finisce, l’attrazione riprende a mescolare da lì — con dentro anche gli scambi delle morti.
⇒ Dalla seconda partita in poi il mazzo porta dentro tutta la storia della macchina, e non ci si ritorna mai. L’unico modo per tornare all’inizio è staccare la spina.
⚠ La prova delle tre accensioni è stata fatta in emulazione. Sul ferro vero, se il mazzo cambiasse da accensione ad accensione, la variabilità verrebbe dall’avvio — dal lettore, che ci mette il tempo che ci mette a partire — non dal mescolatore: quello, quello è un orologio.
Nel mazzo camminano due segnaposti. Il cursore di pesca avanza a ogni scena e, arrivato in fondo, ricomincia dalla base. La sentinella parte dalla testa e si muove solo quando muori.
Alla morte la ROM non inserisce e non rimescola: scambia. La carta che hai fallito prende il posto di quella sotto la sentinella, e quella va dove stava la fallita. Poi la sentinella avanza di uno.
Non ti rimette il mazzo a caso: ti rimette davanti gli sbagli, e te li rimette presto. E siccome la sentinella avanza a ogni morte mentre il traguardo resta lo stesso, ogni caduta allunga la partita. Alan, giocando con quaranta vite e morendo apposta: «siamo arrivati alla scena 36 e il gioco ha ricominciato a darti le scene da capo, non ci ha dato il Drago».
Fra le trentasei carte ce ne sono due che vanno nominate qui, perché sono le sole discese di tutta la partita e perché capitano sempre tutte e due: l’Elevator, la ventesima carta del mazzo di fabbrica, e la sua stesura specchiata, la trentesima.
⇒ In Europa si scende due volte, e sono discese da tre piani. La discesa da nove piani dell’americana, di qua dall’oceano, non esiste.
Che i due comandi in gioco siano davvero destra e sinistra non lo diciamo noi: lo dice il gioco. Nel mazzo europeo ci sono sette coppie di scene con la loro stesura specchiata, e in tutte e sette scambiando i due lati la scena diventa esattamente il suo specchio.
I piani, le finestre in cui saltare, quanto paga scendere ancora e perché le tre macchine non te la danno uguale: l’Elevator ha una pagina sua. → Un ascensore dove si scende soltanto
Questo è il mazzo come esce di fabbrica, prima che l’attrazione lo mescoli: l’ordine che vedi qui non è quello che ti capiterà. La sigla breve è il numero del record — il nome che la macchina si dà — e la parola scritta nel mazzo è quel numero, senza nessuna indirezione in mezzo.
| # | la carta, come la chiama il catalogo | mosse | il massimo | la strada |
|---|---|---|---|---|
| 1 / 9 | Tentacles | 6 | 2.799 | spada 350su 400destra 343giù 373sinistra 397aspettaaspettasu 300 |
| 2 / 30 | Snake Room | 4 | 2.500 | spada 300spada 400spada 500su 1.300 |
| 3 / 42 | Fire Pit | 4 | 4.750 | aspettaaspettadestraaspettadestraaspettadestraaspettadestra 1.750 |
| 4 / 58 | Yellow Brick Road | 9 | 6.950 | sinistra 350su 450destra 550su 650sinistra 750su 850spada 950destra 1.050su 1.350 |
| 5 / 86 | Bubbling Cauldron | 5 | 3.200 | su 350spada 450destra |
| 6 / 102 | Giddy Goons | 4 | 2.550 | spada 350destraaspettaspada 650aspettasu 850 |
| 7 / 118 | Flattening Staircase | 4 | 2.100 | sinistra 350spada 450sinistra 550sinistra 750 |
| 8 / 132 | Forge | 5 | 3.050 | spada 350spada 450sinistra 650spada 750spada 850 |
| 9 / 151 | Grim Reaper | 4 | 3.500 | aspettasu 1.000spada 450giù 550su 1.500 |
| 10 / 170 | Wind Room | 1 | 350 | aspettadestra 350 |
| 11 / 177 | Bower | 1 | 500 | su 500 |
| 12 / 184 | Fire Room | 4 | 1.600 | destra 250sinistra |
| 13 / 197 | Flying Horse | 6 | 3.000 | destra 250sinistra 350destra 450sinistra 550sinistra 650sinistra 750 |
| 14 / 215 | Robot Knight | 9 | 5.850 | destra 250sinistra 350su 450sinistra 550destra 650sinistra 750destra 850spada 950su 1.050 |
| 15 / 239 | Crypt Creeps | 6 | 3.000 | su 250spada 350su 450spada 550sinistra 650spada 750 |
| 16 / 258 | Catwalk Bats | 5 | 2.250 | su 250su 350spada 450destra 550destra 650 |
| 17 / 273 | Fire Pit Rev | 4 | 2.000 | sinistraaspettasinistraaspettasinistraaspettasinistra 650 |
| 18 / 289 | Yellow Brick Road Rev | 9 | 7.750 | destra 350su 450sinistra 550su 650destra 750su 850spada 950sinistra 1.050su 2.150 |
| 19 / 317 | Giant Bat | 5 | 4.550 | spada 450sinistra 550su 650spada 950sinistra 1.950 |
| 20 / 334 | Elevator da 3 piani | 1 | 3.550 | aspettaaspettaaspettaaspettaaspettasinistra 2.050 |
| 21 / 346 | Forge Rev | 5 | 4.150 | spada 450spada 550destra 650spada 750spada 1.750 |
| 22 / 365 | Flying Horse Rev | 6 | 5.800 | sinistra 550destra 650sinistra 750destra 850destra 950destra 2.050 |
| 23 / 383 | Pot of Gold | 12 | 15.400 | sinistraaspettadestraaspettadestraaspettadestra 950aspettadestraaspettadestra 1.150su 1.250spada 1.350sinistra |
| 24 / 412 | Alice Room | 1 | 1.200 | destra 1.200 |
| 25 / 419 | Crypt Creeps Rev | 6 | 5.400 | su 650spada 750su 850spada 950destra 1.050spada 1.150 |
| 26 / 438 | Grim Reaper Rev | 4 | 4.400 | aspettasu 1.200spada 650giù 750su 1.800 |
| 27 / 457 | Tilting Room | 3 | 3.550 | giù 750aspettasu 850sinistra 1.950 |
| 28 / 470 | Throne Room | 4 | 4.600 | destra 750su 850destra 950destra 2.050 |
| 29 / 484 | Robot Knight Rev | 9 | 9.550 | sinistra 550destra 650su 750destra 850sinistra 950destra 1.050sinistra 1.150spada 1.250su 2.350 |
| 30 / 508 | Elevator Rev da 3 piani | 1 | 5.000 | aspettaaspettaaspettaaspettadestra 2.500 |
| 31 / 520 | Pirates | 13 | 14.650 | sinistra 450destra 550sinistra 650destra 750su 850su 950su 1.050su 1.150destra 1.250sinistra 1.350destra 1.450sinistra 1.550destra |
| 32 / 556 | Mudmen | 10 | 12.000 | spada 650su 750su 850destra 950sinistra |
| 33 / 584 | Black Knight | 3 | 3.250 | sinistra 650sinistra 750destra 1.850 |
| 34 / 595 | Boulder Trench | 7 | 6.950 | aspettagiù 550aspettagiù 650aspettagiù 750aspettagiù 850aspettagiù 950aspettagiù 1.050su 2.150 |
| 35 / 621 | Three Caves | 3 | 2.700 | suaspettasu 650aspettasinistra 1.500 |
| 36 / 634 | Pirates (bis) | 13 | 14.650 | sinistra 450destra 550sinistra 650destra 750su 850su 950su 1.050su 1.150destra 1.250sinistra 1.350destra 1.450sinistra 1.550destra |
| in tutto | 196 | 179.049 |
⚠ Le mosse contate sono quelle che devi dare. Dove c'è scritto aspetta la finestra si apre lo stesso, ma stare fermi porta dove porta la mossa: premere non serve, e non paga di più. I punti accanto a un gesto sono quelli che entrano in cassa dopo averlo dato, fino alla mossa seguente.
Il finale non sta nel mazzo: la macchina lo va a prendere da una parola sua (record 670) quando il cursore ritorna sulla sentinella. Vale 23.550 punti in 11 mosse — più di qualunque carta — e paga a scalinata, cento punti a gradino.
La cosa si vede meglio da fuori. Nella ROM italiana, esattamente allo stesso punto del programma — stesso indirizzo, stesso ingresso, stessa uscita — non c’è lo scambio.
| il gestore della morte | quanto è lungo | che cosa fa |
|---|---|---|
| Europa | 129 byte | scambia, confronta col fondo, riavvolge, avanza i due segnaposti |
| Italia | 13 byte | avanza il cursore, avanza la sentinella, e salta fuori |
In Europa, se sbagli una scena la rivedi.
In Italia, se sbagli una scena l’hai persa per sempre — e in cambio la partita si accorcia di una.
Stesso film, stesso disco, stesso punto del programma. Due idee opposte di che cosa hai comprato col gettone. → il mazzo della Sidam
Quello che c’è scritto qui sopra viene dai byte. Questi video lo fanno vedere dalla macchina che lo fa, con il veggente che gioca al posto nostro e i pannelli accesi: sono la stessa cosa provata in un altro modo.
ROM Dragon’s Lair europeo, 1983, Z80, chip ELU45-ELU48 mappati a 0x0000, 0x2000, 0x4000, 0x6000. Chi la cerca fra le raccolte di ROM la trova come laireuro.
0x2000 = 0x24 = 36. Il mazzo di fabbrica sono 36 parole a partire da 0x2008; il Drago è 0x029E, fuori dal mazzo.0x07C6): il mazzo va in A002 per il giocatore 1 e in A082 per il secondo.0x0DED, LD A,R modulo 36, scambia mazzo[0] con mazzo[caso]. Chiamato solo se il bit 0 di A001 dice «sono in attrazione». La catena chiamante pende dall’interrupt che il CTC batte ogni dieci millesimi di secondo e agisce una volta su quattro: 25 scambi al secondo.A13A (P1) / A13C (P2), sentinella A13E / A140. Il codice li raggiunge per interposta persona, da A154 e A156.0x10A3. Legge la parola sotto il cursore e quella sotto la sentinella e se le scambia; poi 0x10D6 INC (HL) due volte (una carta è una parola), 0x10DB confronto col fondo (A158), 0x10E4 LD DE,(A15C) = si ricomincia dalla base. Da 0x10F9 lo stesso per la sentinella.0x109E), stessa uscita (0x111F). In Italia in mezzo ci sono tredici byte:ITA 109E 2A 54 A1 LD HL,(A154) ; il cursore
10A1 34 34 INC (HL) x2 ; avanti di una carta
10A3 2A 56 A1 LD HL,(A156) ; la sentinella
10A6 34 34 INC (HL) x2 ; avanti di una carta
10A8 C3 1F 11 JP 111F ; e basta.
EU 109E ... 111E 129 byte ; scambio, fondo, riavvolgimento
⚠ Un indirizzo non viaggia da una macchina all’altra. 0x0DED in Europa è il mescolatore; in Italia, allo stesso indirizzo, ci sono byte che non sono nemmeno codice. Le tre macchine (americana, europea, Sidam) si confrontano, non si mescolano.
Il dettaglio sta in IL_MAZZO_EU_CHIUSO.md e SBARCO_EU.md, dove lo scambio è guardato anche dal vivo a vite infinite, morendo apposta per vedere il mazzo muoversi.