GEOS a produkční SW
V tématu o Commodore 64 by bylo velkou škodou nezmínit OS s grafickou nadstavbou nazvaný GEOS (Graphic Environment Operating System), která vyšel původně právě pro C64 v roce 1986. Vyvinula jej firma Berkeley Softworks (později známá jako GeoWorks). Ve výchozím stavu v sobě obsahuje rovnou textový procesor a grafický program (ekvivalent dnešního malování). Tento OS byl pak přímo dodáván i Commodorem, a to v balení spolu s redesignovaným modelem C64-II. Funguje na základní nerozšířené konfiguraci počítače.
Brzy po vydání začaly pro GEOS vznikat nové aplikace, tedy integrované programy bylo brzy možné doplnit o rozšiřující aplikace. Na osmibit velmi progresivní řešení.
Jak je vidět na screenshotu výše, GEOS používá černobílé zobrazení, byť počítač funguje v grafickém režimu a barvy jsou normálně dostupné. Nicméně to ničemu nevadí, neboť působí velice přehledně a i ikony jsou vykresleny vizuálně atraktivně.
Ovládání desktopu je ve výchozím stavu nastaveno na joystick, což dělá delší přejezdy kurzorem po obrazovce poněkud zdlouhavé, nicméně není problém OS tímto způsobem ovládat. Je možné přepnout na ovládání pomocí myši, nicméně to jsem nemohl odzkoušet (neboť ji pro C64 nevlastním). Spouštění aplikací je možno poklepáním přímo na ikonu, a na horní liště je menu, které se přizpůsobuje aktuálně běžící aplikaci. Změny a nová data se ukládají zpět na disketu.
Poklepáním na soubor se otevírá přidružená aplikace, zde třeba soubor Readme s informacemi o verzi systému, který automaticky otevírá integrovaný textový editor geoWrite.
geoWrite je WYSIWYG editor, na svoji dobu a platformu velmi pokročilý, neboť nabízí různé možnosti formátování písma, různé fonty k výběru a dokonce možnost vkládání obrázků. Vkládat lze konce stránek, titulní stránku, záhlaví i zápatí.
Aplikace umožňuje náhled na stránku, jak bude vypadat při tisku, vyhledávat v textu i funkci, která se dnes označuje jako Najít a nahradit.
Na své stáří a limity platformy je geoWrite opravdu použitelný nástroj s funkcemi, díky kterým by i dnes byl použitelný jako editor pro základní práci s textem.
Jak jsem již zmínil, kromě textového procesoru je jednou z větších aplikací integrovaných v GEOSu i aplikace geoPaint, což je aplikace dnes díky Microsoftu nejlépe známá pod ustálenou frází jako „malování“.
Jak je vidět, aplikace obsahuje většinu potřebných nástrojů očekávaných v programu tohoto typu. Kromě základní tužky, štětce a gumy tu máme nástroj pro vytvoření čtverců/obdélníků a oválů, včetně variant s výplněmi. U toho si můžeme zvolit, zda se nám rozměry výsledného objektu ukazují v palcích či pixelech. Máme zde nástroj pro vkládání textu, kde můžeme zvolit z několika stylů písma (tučné, kurzíva, podtržené atp.) a typ písma (všechny tyto možnosti odpovídají tomu, jak je možné formátovat text v geoWrite).
Dále je k dispozici nástroj pro kreslení rovné úsečky, měření délky, sprej a výplň. Ve všech nástrojích máme na výběr z barevné palety.
Poslední šikovnou funkcí je výřez, kde si můžeme zvolit, zda výřez chceme posunout či zkopírovat, a zda chceme obsah výřezu otočit (lze přes obě osy + 180°) či invertovat. Jak je vidět, geoPaint obsahuje veškeré funkce, které lze od jednoduchého programu na malování očekávat.
Jediná věc, která lze vytknout, je ovládání joystickem. To pro takovou aplikaci je skutečně nepoužitelné, zde bych považoval myš jako nutnost.
GEOS obsahuje další drobné užitečné aplikace, např. kalkulačku či Note Pad na vytváření poznámek. V pravém horním rohu si lze všimnout hodin s datem, u hodin je možno dokonce nastavit alarm. Bohužel tahle funkce je zde spíš pro okrasu, neboť jak jsem již zmínil v technických detailech, čip CIA použitý v C64 obsahuje podporu pro RTC, nicméně nemá zálohu. Tedy při každém spuštění GEOSu je nutné hodiny opět nastavit.
Je třeba uznat, že z pohledu funkcionality je GEOS lepší než takový TOS na Atari ST. Nicméně ten má jednu obří výhodu, a to, že startuje z ROM. U GEOSu je nutno po každém spuštění počítače jej nahrát z diskety. A nejenom to, vzhledem k omezené kapacitě paměti RAM se skoro každý prvek OS načítá z diskety. Tedy prakticky každé otevření okna, nabídky či spuštění aplikace vyústí v načítání z FDD.
Lze samozřejmě namítnout, že takový Workbench na Amize není na tom o nic lépe, nicméně Amiga dokáže nabídnout instalaci na HDD, která práci s OS značně vylepší (od modelu 600 je podpora pevného disku nativně, starší modely s pomocí karty obsahující řadič IDE). Takový komfort nebylo C64 schopné nabídnout.
Tato závislost na disketě s daty je komplikací, neboť pokud chceme spouštět další software (na reálném hardware), je v ideálním případě vhodné mít dvě disketové mechaniky, kterou jednu obsadíme disketou s GEOSem a druhou použijeme pro doplňkový software. Ten jsem zmínil na začátku kapitoly, jeho spuštění je opravdu snadné, neboť stačí vložit disketu, otevřít ji poklepáním na ploše a spustit aplikaci poklepáním na ikonu programu. Namátkově jsem vybral aplikace geoBASIC, geCalc, geoChart a geoCom (geo-3D).
První ze zmíněných aplikací je prostě Basic spustitelný přímo v prostředí GEOSu. Na rozdíl od integrovaného Basicu nabídne nástrojovou lištu pro usnadnění práce, nicméně díky jeho vykreslování v grafickém režimu je poněkud méně responzivní a překreslování výstupu je zpomalené.
Na screenshotu výše vidíte příklad asi nejprimitivnějšího programu v BASICu. Jen pro krátké vysvětlení, u BASICového programu se příkazy píší na očíslované řádky, je zvykem jednotlivé řádky odskakovat po desítkách. První řádek obsahuje příkaz PRINT, kde se ovšem nejedná o odeslání výstupu na tiskárnu, ale na obrazovku (tedy o „výtisk“ na obrazovku). Mezi uvozovkami je pak surový text, který chce příkazem zobrazit. Na druhém řádku příkaz GOTO jednoduše přesměruje pokračování kódu na uvedený řádek. Tedy v tomto případě se vrátí zpět na řádek 10, kde provede znovu příkaz PRINT a pokračuje neustále dokola v nekonečné smyčce.
Příkaz GOTO v kombinaci s podmínkami IF-THEN (pokud je splněno, tak proveď X, pokud ne, tak Y) jsem používal v BASICu u svého amatérského „programování“ při tvoření jednoduchých textovek, kdy jsem pomocí GOTO přesměroval program podle potřebné reakce na daný řádek s výsledkem-odpovědí. To byl samozřejmě značně primitivní způsob tvoření textovek, řádné textové hry používají parser, který zpracovává slovní příkazy od uživatele.
Zpět ale k uvedenému příkladu, program se spouští pomocí příkazu RUN, což tedy v tomto případě vede k nekonečnému výpisu textu Hello C64 na obrazovku.
geoCalc je tabulkový procesor, stejně jako dříve zmíněný geoWrite velmi slušně použitelný pro základní práci.
U jednotlivých buněk můžeme definovat styly, formáty, zarovnání textu a šířku buňky. Do buněk můžeme vpisovat základní vzorce, a i můžeme využít nabídku dostupných funkcí. Na screenshotu níže vidíme použití funkce ABS, tedy funkce, která vrací absolutní hodnotu čísla.
Jak je vidět na příkladu, v buňce A1 máme vzorec pro zobrazení absolutní hodnoty z buňky B1. Funkce nám správně vrací hodnotu bez záporného znaménka.
Vzorce je možno pomocí funkce COPY/PASTE kopírovat a vkládat do dalších buněk. Tabulkový procesor v rámci kopírování i inteligentně upravuje samotné vzorce, tj. když jsem v uvedeném příkladu dal do buňky C2 vzorec =A2+B2, při kopírování do dalších buněk geoCalc automaticky měnil hodnoty vzorce, tedy obsah C3 až C6 je vyplněný pouze pomocí funkce vložení, a správná čísla buněk ve vzorci si upravil automaticky, tedy jsem již do vzorců nijak ručně nezasahoval. Velmi příjemná funkce, dnes jsme na to zvyklí, že tabulkové procesory se snaží předvídat, co chceme vyplnit, a usnadnit nám práci (nebo zkomplikovat, když tam sveřepě vkládají něco, o co nestojíme). Nicméně u softwaru z roku 1986–87 je to příjemné překvapení.
geoChart je program k tvorbě grafů. Dnes je taková komponenta součástí tabulkových procesorů, v době GEOSu se jednalo o samostatnou aplikaci. Je tedy nutno předem připravit data k zobrazení v jiné aplikaci, a poté je zobrazit grafu v geoChartu. Typicky býval pro přípravu dat použit právě tabulkový procesor geoCalc, nicméně data ve správném formátu je možno připravit např. i v integrovaném Note Padu. Grafy je možno zobrazit a poslat na tiskárnu. Jedná se o pěknou a přehlednou aplikaci, možná ale už tenkrát mohly někomu chybět barvy, které u grafů pomáhají s přehledností. Je to hodně vidět u druhého příkladu (což je jen změněný typ grafu z prvního příkladu), kde je odlišení provedeno pomocí různých výplní, a není to zrovna nejpřehlednější.
Mnou zmíněný výpis není kompletní sadou kancelářského software dostupného pro tuto platformu, nezmínil jsem např. geoFile, což je databázová aplikace atp.
geo-3D je jednoduchý program pro vygenerování 3D objektu ze zadaných parametrů.
Nicméně využití tohoto programu je spíše jen ukázkové, neboť úprava vzhledu výchozí vykreslené kostky probíhá poměrně dlouhým výpočtem, a při zadání větších odchylek systém havaruje na chybu výpočtu (na reálném hardware dojde k prostému záseku a nutnému restartování počítače, emulátor VICE suše oznámí, že došlo k náhlému zastavení při zpracování instrukce procesorem, a na které adrese k tomu došlo).
Celkově je GEOS velmi atraktivním prvkem u Commodoru 64. Vizuálně působí atraktivně, dá se snadno používat i ovládat, a nejedná se jen o cvičení, zda je možné něco na platformě rozeběhnout, ale skutečná použitelnost je pak mizivá. Už základní aplikace nabízejí prostor pro skutečně produktivní práci, s doplňujícími aplikacemi můžeme získat kompletní balík kancelářských aplikací. Když vezmeme v potaz, že vše běží na osmibitovém CPU, jehož frekvence se uvádí v jednotkách MHz, a má k dispozici pouze 64kB RAM, tak se programátorům z Berkeley povedla opravdu skoro zázračná práce.
V tématu o produkčních aplikacích nelze nezmínit ty aplikace, které jsou určeny pro hudební tvorbu. Zatímco pozdější Atari ST uspělo díky nativní podpoře MIDI rozhraní, v případě SIDu šlo o jeho vlastní zvukové schopnosti, které okouzlily mnoho hudebníků. Jak jsem již zmínil, mnoho počítačů dnes najdete s kryty provrtanými a doplněnými o ovladače pro hudební aplikace. Spousta počítačů také bude mít vybrakovaný SID, neboť ten se nadále použil do nějakého samostatného syntezátoru. Sehnat náhradu je dnes horší, neboť tyto čipy se již nevyrábí. Existuje alternativa s programovatelnou logikou obsahující emulaci, do které jsou zaneseny veškeré znalosti ohledně SIDu, je určena přímo pro montáž do patice místo původního čipu, a dokonce je možné ji přepínat mezi emulací původního a inovovaného provedení SIDu. Je to alternativa ke shánění použitého vytaženého čipu s často neznámým stavem.
K C64 existuje i řada cartridgí s hudebním softwarem a doplňujícím rozhraním (např. pro externí klávesnice či podporu MIDI).
Bohužel já nejsem hudebník, tedy si u zmíněných aplikací mohu jen tak pohrát s rozhraním, vygenerovat nějaké zvuky, ale nic, co bych mohl jakýmkoli způsobem dále prezentovat, a co bych mohl jakkoli fundovaně popsat.
Ale samozřejmě by bylo poměrně na škodu nepředvést hudební schopnosti počítače, když se jimi tak proslavil. Tedy zde je pár ukázek od povolanějších autorů hudby. Některé skladby jsou nahrané z mého reálného hardware, kde je, jak jsem již zmínil, revidovaná verze SID čipu, tedy může znít trochu jinak, než byli zvyklí majitelé původního „breadboxu“.
- Great Giana Sisters (C64II real HW)
- Monty on the Run (C64 emulator)
- The Last V8 (C64II real HW)
- Turbo Outrun (C64 emulator)
- Turbo Outrun (C64II real HW)
Bohužel někde ale moje 8580 zní zcela špatně, viz zde je záznam hudby ze hry Netherworld z emulátoru, nastaveného jako původní breadbox, a záznamu z reálného čipu:
Můj čip není vadný, když v emulátoru nastavím emulaci na typ 8580, dočkám se stejně špatného výsledku.
Posledním bodem, který bych rád zmínil, je zvuk konkurence – POKEY v Atari 800. Oba zvukové čipy mají své jedinečné vlastnosti a je možné pouhým sluchem rozeznat původ. Nechci tu zabředávat do věčné diskuze, zda je lepší SID nebo POKEY. Oba mají svoje silné a slabší stránky, některé skladby lépe sednou jednomu, jiné druhému.
Viz zde příklad ze hry RedMax, kterou jsem zmínil v předchozích kapitolách:
Jak jsem již dříve uvedl, verze pro POKEY se mi líbí více, působí lehce úderněji a živěji. Nicméně jak už to bývá, tenhle názor je vždy silně individuální. A oba počítače zní skvěle, hlavně když vezmeme v potaz, že vznikly již v 70.-80. letech minulého století. Autorům jejich návrhu se povedlo předběhnout svoji dobu.
Pozn. Udělal jsem s partnerkou slepý test, kdy ona neznajíc ani jednu z verzí, jsem pustil obě varianty, která ji zní líp. Vyhrál to POKEY.
C64 je právem legendou
Shrnout myšlenky ohledně Commodoru 64 bude celkem snadné. Během seznamování s hardwarem jsem se přesvědčil o tom, že je právem legendární. Jak jeho technické zpracování, tak jeho schopnosti jsou zábavné k objevování i dnes.
Čím je počítač výjimečný, to je až neskutečné množství dostupného software, kterým vyčnívá nad ostatní osmibity. Ať už mluvíme o hrách, které vyšly v hájemství osmibitů exkluzivně pouze pro C64, tak produkční software, kdy grafická nadstavba GEOS nabízí nejen rozhraní u osmibitů neobvyklé, ale hlavně office programy, které jsou propracované a skutečně použitelné. K dispozici je i množství hudebního software, to já ale nejsem schopen ocenit.
Jestli nějak lituji svých začátků u Atari? Vůbec ne, každý počítač má své kouzlo, a i když u Commodore by bylo k dispozici víc možností, třeba zmíněné hry původem u šestnáctibitů a GEOS, stejně bych se pravděpodobně k tomuto software nedostal, neboť většina vyžaduje FD mechaniku, a já bych skoro s jistotou skončil u datasetu. Diskety byly v našich končinách víc raritní a mechaniky cenově atakovaly (či předbíhaly) samotný počítač. Nemluvě o samotných disketách, kazety byly běžně dostupné, levnější, a snadno kopírovatelné.
Stává se tak dalším z vyzkoušených počítačů, které mají místo na mé soukromé výstavce.
Na konec bych chtěl opět poděkovat své partnerce, že mi tento koníček doma trpí, serveru Root.cz za prostor k vydávání seriálu a všem čtenářům a diskutérům za názory.