Navigátorposledních 10 z diskuze |
Skoro dva roky života s aplikacemi Printfox a PagefoxNa 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.
Od binárky ke zdrojovému kódu v assembleruNa ú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.
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.
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č PagefoxKdyž 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.
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.
Fonty jako klíčový problémZatí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.
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.
Nástroje místo ruční práceZ 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.
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.
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 hardwaruSkuteč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).
Proč má smysl si Pagefox dnes vyzkoušetPagefox 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í.
Č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 jako otevřenější systémSouč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 dnesDnes 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. DoslovV 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
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é! |
Poslední recenzereakce na článkyTOP 10 HRY
|