Czekadełko. PICO-8.
Na czas oczekiwania na kolejne wpisy i aż nauczę się montować pierwsze wideo, doceń to arcydzieło:
PICO-8 to malutka “wymyślona konsola” (fantasy console) do gier, która pozwala Ci bawić się w programowanie ślicznych 8-bitowych gier i melodii, ale bez babrania się z prawdziwym sprzętem i archaicznymi językami programowania.
Dema, gry i bajery na konsolę PICO-8 piszemy w języku Lua, np:
t = 0
music(0) -- play music from pattern 0
function _draw()
cls()
for i=1,11 do -- for each letter
for j=0,7 do -- for each rainbow trail part
t1 = t + i*4 - j*2 -- adjusted time
y = 45-j + cos(t1/50)*5 -- vertical position
pal(7, 14-j) -- remap colour from white
spr(16+i, 8+i*8, y) -- draw letter sprite
end
end
print("this is pico-8", 37, 70, 14)
print("nice to meet you", 34, 80, 12)
spr(1, 64-4, 90) -- draw heart sprite
t += 1
end
daje nam (w połączeniu z plikiem sprite’ów, czyli gotowych nakładalnych grafik, w tym wypadku napis HELLO WORLD z serduszkiem) efekt widoczny na gifie nieopodal.
Co ciekawe, konsolka ma wbudowany edytor kodu, a gry i dema ładujem znajomymi poleceniami: LOAD nazwa_pliku.p8 i RUN
. Jak na C64, Amstradzie, Spectrum, Atari… wisz, rozumisz.
Projekt jest uroczy, a od twórców wymaga zdolności wyrazu w 128 pikselach wzdłuż i wszerz, w 16 kolorach, no i maksymalnie w 32 kilobajtach.
Muzyka, której doświadczyliście jeśli kliknęliście przycisk na górze posta, wraz z odtwarzaczem (wizualizacją) jest więc remakiem, a nie po prostu odtworzeniem oryginalnego kodu z Amstrada, albo co najmniej napisanym w Lua odtwarzaczem plików z instrukcjami dla procesora AY3 (układu dźwiękowego Amstrada, Atari ST, MSX, ZX Spectrum, TRS-80 i innych; Commodore 64 używało innego układu do generowania dźwięku). Same utwory pochodzą z gier o podanych nazwach. Nie zapomnijcie spróbować przełącząć między nimi za pomocą strzałek w lewo i w prawo.
PICO-8 jest oczywiście całkowicie współczesnym projektem, a sprzęt, który “emuluje” nigdy nie istniał fizycznie. Mimo to, jestem zafascynowany mnogością dzieł na tę platformę.