Risultati del BASIC 10Liner Contest 2022

Sabato scorso sono stati pubblicati i risultati dell’undicesima edizione del BASIC 10Liner contest, tradizionale competizione a cui si può partecipare realizzando giochi e programmi per computer a 8 bit in sole 10 righe di codice in linguaggio BASIC.

BASIC 10Liner Contest: “volantino” del concorso
BASIC 10Liner Contest: “volantino” del concorso

Analogamente allo scorso anno, ho partecipato per la categoria PUR-80 (massimo 80 caratteri per linea; abbreviazioni consentite) realizzando tre giochi, di cui due per ZX Spectrum (Bastilude, Fishie – Keep the sea plastic free!) e uno per ZX81 (JAMGame – Just Another Memory Game).

Fishie – Keep the sea plastic free! è entrato nella TOP 10, classificandosi 7° su 38 giochi in gara nella categoria PUR-80. Bastilude, nonostante la 25esima posizione, è stato particolarmente apprezzatto dal pubblico, che gli ha accordato il 2° posto nella classifica speciale Public’s Choice. JAMGame, infine, con la sua 18esima posizione si è assestato nella parte media della graduatoria.

Risultati del BASIC 10Liner Contest 2022.
Risultati del BASIC 10Liner Contest 2022 (grazie a Filippo Santellocco per l’immagine con tutti i risultati).
Nella classifica originale, Fishie è erroneamente associato al C64.

Nonostante sperassi in un posizionamento migliore di Bastilude, anche quest’anno posso ritenermi più che soddisfatto dei risultati raggiunti e come al solito ho già qualche idea che spero di poter sviluppare per la prossima edizione.

Ho avuto modo di esaminare o provare pochissimi dei giochi e programmi realizzati dagli altri concorrenti; tra questi ritengo particolarmente degni di nota 8-bit Sunset (vincitore della categoria SCHAU) e STOP THE micro EXPRESS (vincitore della categoria EXTREM-256). Quest’ultimo si avvale di una tecnica molto interessante di utilizzo dell’istruzione LPRINT, che ha consentito all’autore di rendere eccezionalmente fluide le animazioni.

Concludo con un ringraziamento a Gunnar, organizzatore del contest, ai giudici e a tutti i partecipanti!

Link e riferimenti

Read in English

JAMGame: solo un altro gioco di memoria (ZX81)

JAMGame (Just Another Memory Game) è un piccolo videogioco di memoria, ispirato al classico gioco elettronico Simon, per computer Sinclair ZX81.

JAMGame: schermata di gioco.
JAMGame: terzo livello; la sequenza proposta dal computer termina con “4” e il giocatore ha appena inserito la sequenza “1234”.

JAMGame è il mio terzo gioco in gara per l’undicesima edizione del BASIC 10Liner Contest, categoria PUR-80. In base alle regole della competizione, è stato realizzato con 10 linee di programma in linguaggio BASIC, con ciascun linea lunga al massimo 80 caratteri.

La realizzazione di programmi completi in sole 10 righe di codice risulta particolarmente sfidante su computer come lo ZX81, il cui interprete BASIC consente l’utilizzo di una sola istruzione per linea. Nella maggior parte dei dialetti BASIC, al contrario, è possibile introdurre più istruzioni per linea, separandole con il carattere “:”.

Listato di JAMGame (ZX81 emulato con EightyOne)

Navigando alla pagina di JAMGame su itch.io, potrai sia giocare online (dispositivi mobili non supportati), sia scaricare un archivio contenente il gioco stesso e la relativa documentazione, inclusa la spiegazione del codice.

Descrizione del gioco

JAMGame è un gioco di memoria per giocatore singolo. In ciascun round, il computer mostra una sequenza di numeri pseudocasuali compresi nell’intervallo tra 1 e 4, dopodiché il giocatore deve riprodurre la sequenza premendo i tasti corrispondenti, seguiti da “Enter”.
Con l’avanzare del gioco, la lunghezza della sequenza aumenta. Se il giocatore digita la
sequenza sbagliata, il gioco termina e per fare un’altra partita, il programma deve essere nuovamente eseguito.
L’alternanza di due caratteri grafici aiuta a distinguere le singole cifre della sequenza da riprodurre. Quando la sequenza presentata dal computer è terminata, il carattere “░” viene visualizzato vicino all’ultima cifra.

JAMGame: video di una partita (registrato con l’emulatore ZEsarUX).

Listato

Il codice del programma è riportato di seguito. Per una spiegazione dettagliata, rimando alla pagina di JAMGame su itch.io, da cui è possibile scaricare un archivio .zip contenente il gioco e la relativa documentazione.

1 LET L=3
2 LET A$=""
3 FOR I=1 TO L
4 LET A$=A$+STR$(1+INT(RND*4))
5 PRINT AT 0,0;"LEVEL:";L-2,,A$(I);" ";CHR$(9+(I/2=INT(I/2))*(I<L)-1*(I=L))
6 NEXT I
7 INPUT B$
8 IF B$<>A$ THEN STOP
9 LET L=L+1
10 GOTO 2

Link e riferimenti

Read in English