Interview s Bob!k/C.P.U.

Dotazy kladl Fandal

1) Zdravím Tě, Roberte! Na začátek našeho povídání by asi bylo dobré, kdyby ses nám trochu představil.

Ahoj, zdravím všechny čtenáře Flopu. Jmenuji se Robert Petružela (28) a pocházím z Prostějova, asi momentálně největší Mekky Ataristů v ČR. Zde jsem také vystudoval SPŠ (strojírenství) a později jsem obdržel bakalářský titul na Univerzitě Palackého v Olomouci (Matematická Informatika). Pokud jde o osmibitové Atari, tak tady se snažím ve svém volném čase tvořit něco málo kódu do inter či dem a příležitostně fušovat i do HW. Pájka je mé druhé já. ;-)

2) Jsi jeden z nejmladších aktivních Ataristů na území bývalého Československa, takže k seznámení s Atari muselo u Tebe dojít v již poměrně "útlém" věku. Jak se to všechno seběhlo?

Mno nevím, jestli to bylo brzo či ne, ale stalo se to na základní škole, někdy v půlce sedmé třídy. Řekl bych, že tomu předcházelo dlouhodobé okukovaní herních automatů (coin-op) v temných a hlučných maringotkách. Tam, v naprosto úžasné atmosféře, jsem zatoužil mít něco podobného doma. Po dlouhé "bitvě" a přemlouvání rodičů jsem nakonec vyhrál. Pak už jsem jenom čekal, až se můj vytoužený Commodore C64 objeví v nějakém obchodě. Psal se rok 1992 a počítače byly už daleko dostupnější než kdysi jenom přes TUZEX, ale i tak se mi bohudík tenkrát žádná C64ka sehnat nepodařila. Byl jsem nucen sáhnout po konkurenci - Atari800XE. Zdálo se mi, že je sice o trošku horší po HW stránce, ale co mi chybělo do výkonu, to nahradilo daleko lepším designem. Když jsem do toho ještě potkal kamaráda, který už Atari doma měl, tak jsem ani chvilku nepochyboval, že Atari je taky správná volba. Oficiálně jsem se tak 28.11.1992 stal Ataristou tělem i duší, v momentě, kdy jsem si přinesl svoje Atari domů. To bylo slávy a jásotu. A pak nastal problém...

3) Problém s čím?

Problém se záznamovým zařízením - kazeťákem. Měl jsem smůlu, už z výroby nefungovalo ukládání a tak putoval na reklamaci. Mezi tím jsem, místo hraní her, začal opisovat ukázkové příklady v AtariBASICu z německého manuálu. Vůbec jsem tehdy netušil, co který kus kódu má dělat a proč, ale po čase, kdy už jsem měl tužkou počmáraný celý manuál vysvětlivkami, jsem se v tom začal orientovat. Díky úspěšné reklamaci jsem si také konečně mohl ukládat své výtvory. Můj život se od základu změnil - chtěl jsem se stát skutečným programátorem. Ačkoliv mě programování šíleně chytlo a každou volnou chvilku jsem trávil s BASICem, přes to mi scházelo, že si taky nemůžu sám doma zahrát nějakou super pecku. Chybělo mi totiž TURBO2000! Řeknu vám, není nic horšího, než když nemáte dostatečné informace. Hrozně jsem potřeboval T2000, každý okolo ho měl, ale nikdo nevěděl, kde přesně "roste". Jenom díky náhodě (a stejně si myslím, že náhoda neexistuje), jsem se asi po půl roce, na prostějovské počítačové výstavě, dozvěděl, že nedaleko mě bydlí pán, který opravuje počítače a že snad umí udělat i ono tajemné T2000. Hned to odpoledne jsem za ním vyrazil. Všechno šlo hladce a po týdnu jsem měl konečně své vlastní T2000. Jenomže nebyl jsem bohatší jenom o T2000, ale také jsem dostal velmi cennou, a až čas ukázal, jak moc cennou, informaci.

4) To úplně zní, jako bys narazil na kámen mudrců. Ale teď vážně. Cože tak závažného jsi se to tehdy dozvěděl?

Šlo o to, že jsem se dozvěděl, že existuje v Prostějově Atari klub a přesné termíny jeho schůzek. Dodnes si přesně pamatuji mou první schůzku, na které jsem se cítil úplně trapně, protože jsem tam nikoho neznal, ale také na můj první přijímací pohovor. Ten jsem absolvoval s vedoucím klubu - Zdeňkem Burianem. Nejzákeřnější jeho otázka byla, proč vlastně chci navštěvovat Atari klub. Při mé odpovědi, že se chci naučit pořádně programovat, se všichni okolo smáli. Dobře věděli, jak to tam chodí a že většina lidí si chodí akorát pro "nové" hry. Jenomže jak už jsem řekl dřív, já jsem na Atari začal programováním a proto mě bavilo asi vždycky víc, než hraní sebelepších her.

5) Jakými programovacími jazyky jsi na Atari prošel a odkud jsi čerpal informace na své programátorské cestě?

Pár programovacích jazyků jsem vystřídal, a protože to byla dřevní doba bez Internetu (ano, i já tu dobu pamatuji), tak jsem povětšinou čerpal z nějaké tištěné literatury. Jak už jsem zmínil, prvním mým jazykem byl Atari BASIC. Další logický krok byl přechod na TurboBasicXL. Zde musím sebekriticky přiznat, že jsem ani z daleka nevyužil celý potenciál, který TB nabízel. V podstatě mé programy byly jenom čisté BASICy, ale vykonávání programu bylo x-krát rychlejší díky lepšímu interpretoru. Jenomže ani tahle rychlost mi po čase nestačila, a tak jsem se přesunul dál - k vyšším programovacím jazykům. První pokus byl s Kyan Pascalem a dopadl tehdy úplně tragicky. Díky absenci pořádné literatury jsem se neprobojoval ani přes základní datové typy a to nemluvím ani o komfortu psaní programů. Kyan Pascal, později i mnou testované Deep Blue C, mělo oddělený editor a kompiler a i s využitím disketové mechaniky dokázalo pěkně odradit, hlavně v případě mnohých začátečnických chyb. Když teď na to tak vzpomínám, divím se, že jsem u něj tak dlouho vydržel. Představte si typický sled programovacích operací. Nahrajeme editor, do něj zdrojový kód, uděláme pár změn, uložíme, načteme kompiler, spustíme kompilaci a bác "Chyba v kódu s na řádku n". A znovu, načteme editor, načteme kód, opravíme chybu, uložíme atd., pořád dokola to samé. V porovnání s BASICem to bylo něco úděsného. Ovšem, pokud se už i něco podařilo vyplodit, tak to bylo o mnoho rychlejší, díky zkompilovanému kódu. Jenom se nesměla použít standardní knihovna na grafiku, protože se jinak volal ten stejný kód v paměti ROM, který se volá také z "pomalého" BASICu.

Znechucen všemi těmito pokusy jsem začal prozkoumávat i jiný směr programování - magický strojový kód (assembler). Tady mi vytrhl trn z paty AKPV, protože zde jsem potkal ty správné lidi, kteří byli vždy vstřícní a ochotní poradit. Můj první assembler byl MAC65 a díky Honzovi Wallovi (zdravím), po kterém jsem "zdědil" veškerou potřebnou literaturu, jsem pronikal více a více do tajů programování Atari a jeho adres. Později se k mým velkým rádcům připojil také Radek Štěrba, který pro nás všechny byl obrovským idolem. Řekl bych, že on mě ovlivnil asi ze všech nejvíc. Tímto mu za to všechno moc a moc děkuji. :-)

6) Pokud vím, tak jsi ve strojáku tvořil a tvoříš především různé utility, případně intra, ale o žádné hře z Tvojí produkce jsem nikdy neslyšel...

Ano, to je pravda. Nejspíš to bude tím, že psaní pořádné hry je běh na velmi dlouhou trať a ne každý to po celou dobu vývoje vydrží. Osobně se spíše cítím jako sprinter a proto dělám jenom malé věci a utilitky. Možná je to také tím, že jsem nenarazil na ty správné lidi, co by mě k nějakému takovému výtvoru motivovali. Nicméně, jedinou mou dokončenou hru v TB bych asi doma ještě našel. Ovšem za předpokladu, že by šla v pořádku přečíst ze staré kazety. Díky téhle hře jsem dokonce vyhrál programátorskou soutěž na střední škole. Ne, že by byla tak úžasná, ale svým způsobem byla jiná než ostatní příspěvky. Byla to předělávka známé hry "Zmiz", kde je úkolem, na co nejmenší počet tahů, invertovat kostičky na hrací desce tak, aby nakonec všechny zmizely. Původně se mi zdálo, že to bude zajímavá hra, ale později se ukázalo, že je to pořád dokola to samé a tudíž příšerně nudné. Nakonec jsem se rozhodl ušetřit okolní svět a ven jsem to nepustil. Zase se ukázalo, jak důležitý je dobrý herní design.

7) Ale hry snad na Atari taky hraješ, nebo ne?

Řekl bych, že jsem spíš hrávával. Z důvodu prostorového nedostatku se veškeré mé snažení odehrává pod emulátorem a ten není, alespoň z mého pohledu, na hraní vůbec dělaný. Vím, co si většina z vás teď asi myslí, ale já v tomhle směru preferuji skutečný hardware. Není nad to si na obrovské barevné televizi (poctivých 50Hz) zahrát proti dobrému soupeři např. Rally Speedway. Jinak mezi další oblíbené hry určitě patří Blue Max, Draconus, Zybex, World Karate Championship, River Raid, Bruce Lee a další super klasiky.

8) Takže hry prakticky nehraješ a psaní softwaru bereš, jak říkáš, spíše sprintem. Takže nejvíc času Ti asi zabírá vývoj hardware.

Tohle není až tak úplně pravda. Mě baví programovat, ale jinak než všechny okolo. Mým cílem není "něco" napsat, ale něco pěkně zoptimalizovat. Miluji optimalizace všeho druhu. Dokážu prosedět hodiny a hodiny, kdy se snažím v malé části kódu ušetřit např. "jenom" dva byty nebo cykly. Neznám větší zadostiučinění něž pěkně zoptimalizovaný kód, ať už na rychlost, či velikost. Jasně, trošičku hodně přeháním, ale tohle je úplně něco jiného, než běžný vývoj programů na PC.

Bohužel momentálně mám na své koníčky méně času a tak i vývoj nového HW je spíše ve fázi hibernace. Sice nosím v hlavě, nebo už mám v nějakém rozpracovaném stavu, asi pět nových zajímavých projektů, ale právě kvůli nedostatku času si budete muset na první prototypy ještě chvilku počkat.

9) A máš nějaký opravdu velký sen, který bys na osmibitovém Atari chtěl realizovat? Ať už v oblasti HW nebo SW?

V oblasti HW si ho pomalu, ale za to poctivě plním. Tady bych řekl, že mým snem je rozumět i tomu poslednímu odporu či kondíku v Atari, proč tam je a jakou má funkci. Zatím se mi to daří pouze po digitální stránce a generování obrazu je stále má velká neznámá. Pokud se ale budeme bavit na úrovni vzdušných zámků, tak je to jasně kompletní cycle-exact předělávka Atari do FPGA.

Po SW stránce je můj sen udělat alespoň jedno jediné a pořádné demo, na které by se po čase nostalgicky vzpomínalo se slzou v oku.

10) To jsou opravdu smělé cíle. A když se vrátíme k tomu, co jsi na Atari doposud vytvořil, z čeho máš největší radost?

Myslím, že každý dokončený projekt zákonitě přinese radost, už třeba proto, že se můžete pustit do něčeho nového a lepšího. Pokud jde o mě, tak nejvíc pyšný jsem na S/XEGS RAMCART, který vzniknul ve spolupráci s Radkem Štěrbou. Velmi dobře si vzpomínám na úžasné momenty vývoje, které jsem zažil těsně před uzávěrkou ABBUC 2005 HW soutěže. Ten poslední týden byl velmi hektický, protože se nám nedařilo vyřešit zapeklitý problém se ztrácením dat. Bylo to jako v nějakém šíleném filmu. Střídal jsem jen práci, vývoj a minimum spánku, ale stálo to za to. Problém byl vyřešen a uvědomil jsem si, že když se chce, všechno jde, i když to mnohdy setsakramentsky bolí. V neposlední řadě jsem si také začal více vážit práce ostatních vývojářů.

11) No, naštěstí se ještě pár takových Ataristů najde a jen doufám, že i Ty hodláš zůstat značce Atari věrný i do budoucnosti.

Určitě, alespoň do doby, kdy se budou konat zajímavé akce a setkání příznivců značky Atari jako je například Atariáda v Prostějově či demopárty Forever ve slovenském Trenčíně. Nechtěl bych to zakřiknout, ale v poslední době se mi zdá, že se dnes čím dál víc lidí nostalgicky vrací ke svým osmibitům. A to je jen dobře. Doufejme tedy, že se i jim znovu zalíbí tvoření na téhle jedinečné platformě a dočkáme se spolu mnoha dalších úžasných her, dem, hudeb či obrázků.

12) Tak Ti Bobe pěkně děkujeme za exkluzivní rozhovor pro náš magazín Flop a ať se Ti do budoucna, nejenom na Atari, opravdu daří!

Prosím, rádo se stalo. Už se nemůžu dočkat, až si přečtu další, jak jinak než zase výborné, vydání Flopu. Děláte to dobře a dělejte to tak i nadále, ať se máme pořád na co těšit. Jenom bych měl malou bezvýznamnou prosbičku. Mohli byste do dalšího vydání zařadit více článků o HW či programování CPU 6502?

S přáním "Atari zdar!" se loučím.

--
Dodatek redakce: Děkujeme Fandalovi za odvážné kladení vtíravých otázek a Robertovi za jeho odpovědi.