Verze 1.7 tentokrát nepřináší nový prohlížeč ani další velkou položku do menu. Místo toho jsem se pustil do věcí, které nejsou na screenshotu tak efektní, ale člověk je pozná přesně ve chvíli, kdy přestanou zlobit. Myš teď funguje napříč dialogy a pluginy, starší soubory s nastavením už nemají šanci rozházet ovládání a Calm Commander by měl nově fungovat i na ZX Spectrum Next s 1 MB RAM.
Další rest z devadesátek odškrtnut. Super Methane Brothers, původně vydaní v roce 1993 pro Amigu, dorazili i na ZX Spectrum Next. A protože jsem se tentokrát rozhodl portovat hru, ve které se nepřátelé likvidují plynem, vysávají do zbraně a následně vystřelují do zdi, můžu s klidným svědomím říct, že jsem zase jednou sáhl po naprosto normálním projektu.
V prvním díle jsem rozebíral cutscény – vektorovou animaci, kterou Z80 kreslí pixel po pixelu sám. Tentokrát jde o pravý opak: o grafiku, kterou kreslit vůbec nechci. Místnosti, postavy, předměty a ikony má Flashback uložené jako hotové obrázky a Next má na hotové obrázky hardware – Layer 2, sprity a tilemapu. Otázka tedy nezní „jak to nakreslit“, ale „do čeho to převést, aby to nakreslil hardware sám“. A ukázalo se, že nejtěžší není převod pixelů, ale pořadí. Původní hra kreslí všechno do jednoho obrazu a kdo je vpředu, rozhoduje, kdo se kreslil poslední. Next skládá vrstvy sám a na pořadí kreslení mu nezáleží vůbec. Tenhle díl je o tom, jak se jedno pravidlo přeloží do druhého – a o jednom bitu, který to celé unese.
Když se občas objevím na nějaké demopárty nebo jiné počítačové akce, stává tradicí, že místní bojovníci si to rozdávají ve hře International Karate+ na počítači Commodore 64. Já mám rád bojové hry, mám rád rychlé bojové hry a tak víte co... proč nemít pořádné Internation Karate+ na ZX Spectru Next. A jelikož si občas k srdci vezmu to co mi ostatní říkají, tak kdysi mi PCH říkal - nenapodobujte hry z jiného počítače, využijte vlastností vlastní platformy a udělejte hru lepší. Asi to neřekl úplně takto, ale víte co tím chtěl říct.
Po spoustě měsíců práce mám konečně pocit, že do sebe všechno zapadlo. NXPaint řeší grafiku, MXTracker hudbu a NextForge přidává poslední velký kus: místo, kde můžu přímo na ZX Spectrum Next psát a překládat vlastní programy. Grafika, hudba a kód. Moje malá svatá trojice je tím pádem kompletní. A ano, soubory si pak samozřejmě můžu přesunout tam, kam potřebuji, pomocí CalmCommanderu. Když už si člověk vyrábí vlastní ekosystém, byla by škoda nechávat některé části zahálet.
S Martinem Bórikem jsme na ByteFestu mluvili o portu hry Flashback z PC na ZX Spectrum Next. Řekl jsem si ale, že nechci jen vyrobit další port a tvářit se, že všechno vzniklo mávnutím ruky (protože tomu tak není). Chci to poctivě rozebrat, jak původní hra funguje, co z ní můžeme zachovat a kde už hardware Nextu začne říkat: „Tak dobře, ale tohle si spočítej sám.“
Pravé tlačítko myši, kliknu na místo a jednotka tam dojde. Přesně ten typ úkolu, který vypadá na jedno odpoledne. Na mapě 64 × 64 dlaždic z toho nakonec byly čtyři různé algoritmy, několik velmi přesvědčivých chyb a…
Jak se tak více ponořuji do hardware počítače ZX Spectrum Next, jsem nucen si zde odkládat svoje poznatky o nabytých zkušenostech. Jak jsem již uvedl, dělám na demu pro demo párty Forever, ale jelikož ten je až za dlouhou dobou, rozhodl jsem se (jestli to stihnu) vytvořit takové oldschool demo pro jinou demopárty, která se koná za cca 2 měsíce. A co by to bylo za oldschool demo, bez pohybujících se barevných barů, scrolltextů, které se vlní atd... A tak jsem tak nějak narazil na copper. Copper je nejmenší koprocesor, jaký v Nextu je, a zároveň ten, který nejvíc mění to, jak demo vypadá. Umí přesně dvě věci: počkat, až paprsek dojede na určené místo obrazovky, a zapsat hodnotu do některého Next registru. Žádné počítání, žádné skoky, žádná paměť, ze které by mohl číst data. Zní to jako málo, jenže Next registry ovládají palety, posuny vrstev, jejich pořadí, průhlednost i rozlišení, takže věta "na řádku 100 zapiš do registru X" znamená ve skutečnosti "od řádku 100 dolů se obrazovka chová jinak". A protože to všechno dělá hardware sám, procesor u toho nemusí být - Z80 mezitím může počítat další snímek, nebo klidně nedělat vůbec nic.
Pracuji na demu pro Forever 2027 (ano, raději dříve než později). U dem se totiž velmi snadno stane, že člověk v lednu prohlásí, jak má všechno krásně rozmyšlené, v únoru začne psát první efekt a v březnu zjistí, že Forever byl minulý víkend. Tentokrát jsem tedy začal s předstihem a když jsem přemýšlel jak celé demo pojmu, narazil jsem na režím LoRes - ano, demo bude pro ZX Spectrum Next. Na papíře vypadá tento režim skoro podezřele skromně: 128 krát 96 bodů, 16 barev a 6144 bajtů videopaměti. Jenže přesně tahle skromnost z něj dělá velmi užitečný nástroj. Obraz je dost malý na to, aby jej Z80N zvládal přepočítávat v reálném čase, ale pořád dost velký na tunely, plasmy, metabally, deformace, částicové efekty, jednoduché 3D nebo pořádně barevný herní svět.