The Assembly Wars
Sfidi un chip rivale in 3 missioni, in tempo reale: mentre pensi, anche il rivale gioca. Chi completa per primo una missione conquista un chip. Ogni missione ha un tempo massimo, più lungo se servono più mosse.
Se il rivale finisce prima di te o scade il tempo, il chip va al rivale e la missione si ripete: prima rivedi i tuoi errori e come si risolve. Dal secondo tentativo puoi scegliere l'allenamento: stessa missione, senza rivale e senza tempo. Superata così vale meno MHz, ma intanto la impari.
Ogni carta costa cicli di clock, che si ricaricano da soli: inc e dec costano 1, mov e cmp 2, add e sub 3. La barra arriva al massimo a 5 cicli, quindi non si accumulano: se non ne hai abbastanza, aspetta che si ricarichi.
Come in laboratorio: quando giochi una carta devi prevedere cosa succederà, poi la CPU la esegue.
Anche il rivale prevede: quando sbaglia va in stallo. In alto vedi la sua CPU, la carta che ha appena giocato e i suoi registri.
Raggiungi l'obiettivo, per esempio CX = 6, giocando le carte nell'ordine giusto. Le carte si possono riusare. Se i registri prendono una strada sbagliata, COMPILE fa ripartire la tua CPU da capo.
Il programma è già scritto: la riga in ciano è la prossima, come con NEXT nell'emulatore. A ogni riga scegli cosa succede: un valore, i flag o dove salta la CPU. Il segno ◀ RIV mostra dove è arrivato il rivale.
Dal nastro arriva una carta alla volta, per esempio 1101, 0x2F o AL. Toccala nella pila giusta (una cifra, un valore, una misura). Vince chi smista per primo 8 carte giuste. Una pila sbagliata mette in pausa con la spiegazione, poi stallo.
La CPU didattica delle slide (PC, IR, AR, DR, R0, SR, SP) è ferma su un fotogramma. Gioca la carta del prossimo micro-passo, per esempio AR ← 100, IR ← LOAD, PC ← 101. Nella RAM, giallo = istruzione in corso, ciano = indicata dal PC, bordo tratteggiato = cella aperta da AR.
Se il gioco è aperto dal sito, invia al docente dati anonimi su come si gioca: risposte giuste e sbagliate, missioni, aiuti usati. Non raccoglie nomi, email o altri dati personali; ogni apertura ha un codice casuale diverso. Se il docente ha condiviso un link con la classe (es. ?classe=3A), viene salvato anche il codice classe. Si può disattivare in fondo alla schermata principale.
Previsione giusta +1 MHz, missione vinta +5, partita vinta +10. Gradi: Transistor → Porta logica → Registro → ALU → CPU → Supercomputer.
I registri si vedono come nell'emulatore: AX, BX, CX, DX in esadecimale, con la metà alta H e la metà bassa L in due caselle, e sotto il valore in decimale.
I tasti 1-9 scelgono carte, risposte o pile; Esc annulla la carta; Invio chiude le finestre.