Evas10n: 10-liner Breakout (ZX Spectrum)

Evas10n: schermata di gioco

Recentemente, sono stato coinvolto nel BASIC 10Liner Contest tanto che, a pochi giorni di distanza dal mio precedente contributo, ho già completato e inviato un nuovo progetto!

Questa volta si tratta di Evas10n, videogioco in stile Breakout per il computer Sinclair ZX Spectrum, candidato alla categoria “PUR-80” (gioco realizzato in linguaggio BASIC in 10 righe, massimo 80 caratteri per riga). A differenza della maggior parte dei giochi appartenenti a questo genere, in Evas10n non occorre distruggere tutti i muri, ma lo scopo è farsi strada attraverso i muri per raggiungere la cima dello schermo. In questo aspetto, è simile all’implementazione per CHIP-8 di Carmelo Cortez (che puoi giocare online dal tuo browser utilizzando la mia macchina virtuale), a sua volta derivata da Wipe Off di Joseph Weisbecker.

Sebbene visivamente sia simile a Breakin, un altro gioco in stile Breakout che ho realizzato lo scorso anno, il programma di Evas10n è stato completamente riscritto, per rispettare il vincolo delle 10 righe di codice.

Video del gameplay, registrato durante lo sviluppo di Evas10n

Puoi sia scaricare un archivio .zip, contenente il codice sorgente, i file pronti per l’utilizzo con gli emulatori e tutta la documentazione (con istruzioni d’uso e spiegazione dettagliata del listato BASIC), che giocare a Evas10n con il tuo browser web (è richiesta la tastiera), mediante l’emulatore ZX Spectrum online. Il gioco è anche disponibile sulla pagina dedicata su itch.io.

I tasti per controllare la barra sono “z” (sinistra) e “x” (destra).
Fai rimbalzare la “palla” contro i mattoni per farti strada verso la parte superiore dello schermo. Per invertire la direzione della palla, colpiscila con uno dei vertici superiori della barra. Se la palla tocca il bordo inferiore dello schermo, sarà persa; hai 6 palle a disposizione. Il gioco termina quando palla raggiunge la parte superiore dello schermo; in tal caso la scritta “FREE!” sarà visualizzata e il gioco si bloccherà. Se fallisci, una nuova partita comincerà automaticamente.

Read in English

Il triangolo di Sierpiński con lo ZX81: aggiornamento

Triangolo di Sierpinski su ZX81 - versione migliorata
Triangolo di Sierpinski su ZX81 – versione migliorata

Recentemente, sono venuto a conoscenza del BASIC 10Liner Contest e ho immediatamente pensato che il mio programma per generare il frattale noto come Triangolo di Sierpinski sul Sinclair ZX81, con le opportune modifiche, avrebbe potuto essere incluso a buon diritto tra i partecipanti della categoria “SCHAU”. Infatti, questa categoria è dedicata a demo, strumenti e applicazioni realizzati in 10 righe di codice (con lunghezza massima di 256 caratteri), mentre le altre categorie sono specifiche per i giochi.

Così, ho colto l’opportunità di riscrivere il codice, in modo da:

  • ridurre la lunghezza del programma (massimo 10 righe),
  • migliorare la qualità dell’immagine generata.

Il listato risultante è mostrato di seguito: il programma è effettivamente lungo 9 linee; inoltre, la scelta dei punti (X=0, Y=0), (X=30, Y=40) e (X=0, Y=60) quali vertici del triangolo garantisce un’immagine perfettamente simmetrica.

Listato del programma
Implementazione del programma di generazione del Triangolo di Sierpinski con algoritmo chaos game in 10 (anzi, 9!) righe

Bonus: per un’autentica esperienza retrocomputeristica, qui puoi trovare la versione TELETEXT/TELEVIDEO del listato BASIC e dell’output del programma!

Puoi scaricare un archivio zip contenente il codice sorgente, la documentazione completa e i file pronti per l’utilizzo con gli emulatori, oppure semplicemente vedere il programma in azione con l’emulatore online di ZX81.
Al completamento del caricamento, dovrebbe apparire una schermata bianca, con in fondo il messaggio “0/0”. A questo punto, per eseguire il programma, occorre premere il tasto “R” (ora dovrebbe essere visibile la scritta “RUN”, seguita da un cursore nero) ed infine il tasto “ENTER”.

Enjoy the SCHAU! 😉

Read in English