Pringles Sonic Chip: ZX Spectrum e patatine

Le patatine Pringles possono piacere o meno, ma sicuramente l’iniziativa recentemente lanciata dal noto marchio, facente capo al gruppo Kellog, non lascerà indifferenti i retrogamer e in particolare i fan del Sinclair ZX Spectrum. A 40 anni dal lancio dello ZX Spectrum, Pringles ha infatti deciso di omaggiare l’iconico computer con il concorso Pringles Sonic Chip, che consiste nel decodificare il programma contenuto nella traccia audio del seguente video, utilizzando uno ZX Spectrum, reale o emulato:

Pringlesonic: il video di Pringles con la traccia audio da decodificare.

I primi che riusciranno nell’impresa, si aggiudicheranno una lattina speciale di patatine Pringles.

La comunità dello ZX Spectrum ha accolto la sfida con entusiasmo e il programma contenuto nel video di Pringles è stato prontamente decodificato:

Pringlesonic: il programma è stato decodificato.

Pur non potendo partecipare, in quanto l’iniziativa è riservata agli utenti del Regno Unito, ho comunque deciso di cimentarmi con la sfida.

La parte più difficile è stata ottenere una traccia audio di buona qualità, che potesse essere caricata sullo ZX Spectrum oppure convertita nei formati TZX e TAP, utilizzati comunemente dagli emulatori. Inizialmente, ho provato più volte a registrare l’output audio del video in riproduzione sul web browser del mio portatile, utilizzando Audacity; tuttavia, non sono mai riuscito ad ottenere un file WAV di qualità sufficiente per la conversione in TZX senza errori.
Fortunatamente, mi sono imbattutto nel metodo indicato da Rui F Ribeiro sul gruppo Facebook World of Spectrum, basato sul tool yt-dlp per estrarre l’audio da un video YouTube (nota: è richiesta la presenza di FFmpeg):

yt-dlp -ci -f 'bestvideo[ext=mp4]+bestaudio' -x --audio-format wav "https://www.youtube.com/watch?v=z1375a8rW0k"

Una volta ottenuto il file WAV, l’ho rinominato in pringlesonic.wav e convertito in formato TZX mediante l’utility audio2tape, disponibile nel pacchetto fuse-utils:

audio2tape pringlesonic.wav pringlesonic.tzx

Sono quindi finalmente riuscito a caricare il file TZX ottenuto sull’emulatore Fuse senza problemi.

Caricamento del programma contenuto nella traccia del video (emulatore Fuse).
Caricamento del programma contenuto nel video di Pringles (emulatore Fuse).

Per rendere più autentica l’esperienza, volevo comunque caricare il programma su di un vero ZX Spectrum; nella fattispecie ho pensato allo Spectrum Next che giace sulla mia scrivania, impaziente di essere utilizzato. Purtroppo, anche qui si è verificato un intoppo, infatti l’uscita audio del portatile non è sufficientemente potente e non avevo nell’immediato la possibilità di amplificare il segnale. Tuttavia, essendo il mio ZX Spectrum Next dotato di scheda acceleratrice Raspberry PI 0, mi sono avvalso della possibilità di caricare il file TZX a velocità massima, copiandolo preventivamente sulla scheda SD. Se non avessi avuto la scheda acceleratrice, avrei comunque potuto convertire il file TZX in formato TAP e trasferire quello su scheda SD.

Il video seguente mostra il risultato di cotanto lavoro:

Pringlesonic: caricamento del programma su ZX Spectrum Next.

Bene, mi è proprio venuta voglia di uno snack!

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