HRA

Maziacs
Herní styl Labyrinth/Maze
Multiplayer Bez multiplayeru
Rok vydání 1984
Programátor Andy French
Grafik (Unknown)

INTRO

Skoro dva roky života s aplikacemi Printfox a Pagefox

Na začátku nebyl žádný velký plán ani vize „projektu“. Jen chuť zkusit využít Commodore 64 i na běžné psaní textů, a ne jenom na hry. Velmi rychle se však ukázalo, že většina historických textových editorů si s češtinou buď vůbec neporadí, nebo ji řeší kompromisy, které dnes spíše překážejí: odlišné mapování klávesnice, nahrazování znaků, nejednotné chování. Výsledkem nebyla radost z psaní, ale neustálý boj a hledání písmenek (až na Protext 2.0). A právě tady začíná cesta, která se během několika měsíců proměnila z drobných úprav binárky v komplexní projekt zahrnující lokalizaci, reverzní inženýrství, tvorbu nástrojů, dokumentaci i kompatibilitu s moderním hardwarem.


Textomat++ Textomat++ - klávesnice Vizawrite Vizawrite - klávesnice Protext 2.0 Protext 2.0 Printfox Printfox - klávesnice

Od binárky ke zdrojovému kódu v assembleru

Na úplném začátku jsem měl k dispozici jen aplikaci Printfox – a to v několika různě počeštěných verzích, každou po svém, bez jednotného přístupu.

Printfox Printfox

Drobné úpravy z mé strany vznikaly ad hoc, často bez hlubšího porozumění vnitřní struktuře programu. Zlom nastal ve chvíli, kdy se mi podařilo dohledat zdrojové kódy Printfoxu verze 1.3 od Clause Schleretha. Ty otevřely možnost vytvořit překlad systematičtěji, ne jen přepisem hodnot v hex editoru.

Printfox

Cíl byl zpočátku skromný: upravit rozložení klávesnice tak, aby se dalo psát česky tak, jak je u nás zvykem. Bez znalosti assembleru a bez hlubšího technického zázemí o tom, jak Commodore 64 funguje. Tato fáze se ukázala jako klíčová – učení probíhalo „odzadu“, metodou pokus–omyl, čtením cizího kódu, porovnáváním verzí a postupným odhalováním logiky, která nikde formálně popsána nebyla. Nebyla… tedy byla, jen jsem o tom tehdy nevěděl.

Cestou se objevovaly drobné chyby, nepřesnosti a překlepy v původní dokumentaci. Přirozeně tak vznikla potřeba manuál opravit, zpřesnit a doplnit. Tím se uzavřela první etapa: Printfox byl počeštěný, plně použitelný a znovu srozumitelně zdokumentovaný – nejen jako program, ale jako celek.

Proč Pagefox

Když byl Printfox dokončen, technicky už mi nepřinášel nové výzvy. Pozornost se tak přirozeně přesunula k pokročilejším DTP nástrojům – a tím se stal Pagefox. Cartridge s programem, který nabízel grafický WYSIWYG přístup a práci se stránkami, rozložením i grafikou. Pagefox byl na svou dobu mimořádně ambiciózní. Prostudoval jsem několik recenzí v klubových časopisech, ale o české verzi jsem se nikde nedočetl.

Pagefox Pagefox

Podobnost s Printfoxem naznačovala, že by přenos zkušeností mohl fungovat i tady. Realita však byla mnohem drsnější: žádné zdrojové kódy. Jen dump cartridge, stručný popis přepínání paměťových bank ROM a RAM, nezdokumentované struktury a velké binární bloky dat. Prvním krokem bylo Pagefox vůbec získat a spustit. Druhým pak čistě analytická práce: hledání známých struktur v hex dumpu, porovnávání s Printfoxem, identifikace mapování klávesnice, definic znaků a textových tabulek. Často to byla práce bez jistoty – jen hypotézy, které se buď potvrdily, nebo skončily ve slepé uličce. Bylo mi jasné, že i když nastavím české mapování, přeložím rozhraní a předělám původní abecedu textového editoru na českou, výstup bude pořád rozbitý kvůli nečeskému písmu v ROM.

HEX dump

Fonty jako klíčový problém

Zatímco překlad textů byl „jen“ otázkou nalezení správných míst v binárce, fonty znamenaly skutečnou výzvu. Aby měla čeština smysl, musela být kompletní – ne jen nahrazené znaky, ale konzistentní písmo v celém systému. Tím vznikla potřeba tvorby pomocných nástrojů s využitím AI. Pomocné nástroje ne nutně elegantní, ale především funkční.

Nejdřív jsem musel zjistit, jak je vlastně uložena sada integrovaných písem v ROM. K dispozici bylo několik indicií: například to, že začátek souboru obsahoval řadu čísel odpovídajících pořadí písem v aplikaci, zatímco další hodnoty sloužily k namapování dat jednotlivých písem. Z těchto poznatků vznikl první nástroj pro extrakci písem z ROM.

HEX dump písma

Brzy se ukázalo, že fonty v ROM nejsou komprimované stejně jako ty z Printfoxu – nahrání existujícího českého písma přímo do ROM vedlo k rozbití písem v aplikaci. Následoval proto systematický proces: rozbalit binárku fontů, rozdělit ji na jednotlivá písma, otevřít je v Characterfoxu, uložit, znovu složit dohromady a porovnat s originálem. Ve chvíli, kdy byla výsledná binárka bitově shodná s originálem, bylo jasno – způsob uložení písma je pochopený a zásahy nejsou destruktivní hack, ale kontrolovaný proces.

ZS extract

Nástroje místo ruční práce

Z původních ručních zásahů se postupně stala „výrobní linka“: překlady šly rovnou do binárky a kolem nich začal vznikat celý ekosystém nástrojů. Patří mezi ně například utility pro převod obrázků z dnes běžného formátu PNG do formátu Printfox/Pagefox, nástroje pro náhled a editaci písma v matici 8×8, utility pro generování náhledů písem nebo textový editor pro Printfox/Pagefox texty. Řada z nich je použitelná i mimo samotný projekt.

PNG to PG Char Editor ZS viewer PT editor

Zvláštní kapitolou je pak terminálový editor c64-acme-ted, nástroj pro editaci assemblerových zdrojáků s náhledem na hex dump a písma C64. Původně vznikl jako interní pomůcka, ale postupně přerostl celý projekt. Podobně i obrázkové konvertory dnes tvoří most mezi moderním světem a historickým DTP nástrojem Pagefox.

C64 ACME Editor C64 ACME Editor

Velká část těchto nástrojů navíc vznikala ve spolupráci s AI: já jsem definoval zadání, AI generovala první verze nástrojů, já je testoval, opravoval a znovu zpřesňoval požadavky. Z původního experimentu se tak stala regulérní večerní rutina – iterace, ladění, verzování – a místo jednorázového hacku vznikl otevřený ekosystém, na kterém se dá dál stavět.

Testování na reálném hardwaru

Skutečný „konflikt“ přišel až s reálným hardwarem. Pagefox cartridge jsem v té době ještě nevlastnil, a tak jsem musel využít Kung Fu Flash, kde Pagefox fungoval správně. Potřeboval jsem ho ale provozovat hlavně na Ultimate1541 II+L (pro emulaci tiskárny), kde naopak nefungoval – naštěstí ne mojí chybou v úpravách, ale kvůli chybě ve firmware. Následovala dlouhá komunikace s autorem projektu Ultimate1541. V dané době to nebyla velká priorita, protože paralelně probíhal vývoj Ultimate64 Elite II.

Mezitím nastal čas pochopit samotné fungování Ultimate a zkoušet věci opravit vlastními silami, i když to bylo „hodně velké sousto“. Nakonec se problém podařilo vyřešit přímo ve firmwaru Ultimate1541, což znamenalo nejen funkční Pagefox na moderním hardware, ale i uzavření jednoho z největších technických dluhů celého projektu. Na závěr bylo potřeba vše ověřit a otestovat, a tak vznikl kompletně nový český manuál, vytvořený v mé verzi Pagefox CS na počítači C128 s Ultimate1541 II+L (U2+L).

Pagefox CS - návod Pagefox CS - návod

Proč má smysl si Pagefox dnes vyzkoušet

Pagefox není jen další historický editor. Je to plnohodnotný DTP systém pro Commodore 64, navržený tak, aby se s ním dalo pracovat, ne jen experimentovat. Česká verze z něj dnes dělá nástroj, který je paradoxně přístupnější než kdykoli dřív.

Z pohledu uživatele nabízí Pagefox něco mimořádného: skutečný WYSIWYG. To, co vidíte na obrazovce, je přesně to, co dostanete na papíře. Práce se stránkami, textovými a grafickými rámci, obrázky i písmem probíhá přímo na „ploše“ – všechno je okamžité, vizuální a překvapivě intuitivní.

Pagefox CS Pagefox CS Pagefox CS

Čeština bez kompromisů

Česká verze Pagefoxu nevznikla jako jednorázový překlad, ale jako postupně vybrušovaný celek. Dnes nabízí plnou podporu české klávesnice i diakritiky včetně pro nás přirozeného rozložení kláves a bohatou sadu českých fontů (včetně verzí s velkými písmeny a diakritikou) – to vše bez potřeby přemýšlet nad tím, „jak se to české písmeno píše zrovna tady“.

Pagefox CS

Pagefox jako otevřenější systém

Současná verze Pagefox CS už není černá skříňka: část programu je čitelná v ACME formátu a klíčové sekce (fonty, barvy, texty) jsou zdokumentované. Díky tomu mohou přibývat funkce, které by člověk dnes u Pagefoxu asi už nečekal – například otevírání českých textů ve formátu Vizawrite nebo experimentální nativní podpora 24jehličkových tiskáren.

Současně je to pro mě pravděpodobně bod, kde se vývoj v této podobě uzavírá. Ne proto, že by Pagefox neměl kam dál růst, ale proto, že teď už má otevřenou strukturu, dokumentované klíčové části a prostor pro další nápady. Pokud se najde někdo, koho bude bavit pokračovat tam, kde jsem skončil, jakákoli pomoc, experiment nebo rozšíření jsou více než vítané.

Jaký je Pagefox dnes

Dnes je Pagefox CS nástroj, který si může vyzkoušet kdokoli s Commodorem 64 nebo 128 (případně jeho moderní náhradou v podobě Ultimate64 či emulátoru) a chutí psát, zkoušet a objevovat. Není to nostalgie. Je to nová „krabicová verze“ aplikace Pagefox CS – funkční pracovní prostředí, které i po desítkách let pořád dává smysl. Stačí otevřít manuál, zapnout počítač s Pagefoxem a začít pracovat – nebo objevovat.

Doslov

V textu mohou být nedostatky, možná i špatná terminologie, tak to berte s rezervou. Je to opravdu amatérský počin člověka, který na počátku nevěděl nic moc.

Bylo to náročné, poučné i nostalgické. Velké poděkování patří hlavně rodině za podporu a toleranci „nočních směn“.

Tenhle projekt je věnován všem fandům retro počítačů Commodore 64 a 128 – a nejen jim.

Tomáš K.

Odkazy

(https://github.com/xinteksik/C64-Pagefox-cs) (https://github.com/xinteksik/C64-Printfox-cs) (https://github.com/LeshanDaFo/C64-Printfox) (https://www.c64-wiki.de/wiki/Pagefox) (https://www.hackup.net/2021/08/pagefox-reverse-engineered-and-replicated/) (https://homecomputerguy.de/en/2021/08/16/desktop-publishing-on-c64-with-pagefox/) (https://github.com/ricardoquesada/regenerator2000) (https://github.com/GideonZ/1541ultimate/issues/492)

Nový příspěvek k článku

podpis :
První znak podpisu musí být vykřičník, jinak se příspěvek neodešle (ochrana proti spamu)

26.01.2026 - sc128

Super práce! Děkuji. Chybí mi už jen zmínka o možnosti práce s moderním úložištěm, FAT-formatted-media, tj. něco na způsob sd2iec. Abych nemusel data zbytečně kopírovat a "pouzdřit" v d64. Ale to je nejspíš záležitost RTFM... Jdu na to. A ještě jednou díky!

26.01.2026 - PCH

No. Tak klobouk dolů !!! Jestli tohle vzniklo s minimálními znalostmi assembleru a hardware, tak neskutečné!
To používání AI má tedy asi i smysl ... zvláště poté, co mi jeden programátor, který naprogramoval GLSL Shader Vizualizátor a vlastnící patenty na bankovní systémy a i PAYPAL napsal, že efekty skrze program už jsou pasé, protože je AI vygeneruje tak, jak si budeme přát.
S tím jsem nesouhlasil, ale tady smekám!

Advert

Hardcode and datamining by PCH of UNREAL, Hardware guru by RAY of UNREAL, Bugs report by SILLICON of UNREAL
UNREAL 2014-2021 Czech republic