"...a nyní už máte dostatek informací k vyřešení dnešního případu..." - slavná hláška z detektivního seriálu Hříchy pátera Knoxe, jestli si pamatuji správně, to se k seriálu s pátráním po zapomenutých tajuplných praktikách vyloženě hodí :)
Opět skvělý díl: nic nezamlčuje a přitom čtení krásně plyne, aby člověk mezi detaily neztratil pointu celého "příběhu". Ačkoliv celý seriál je pochopitelně moje srdcovka, tak musím říct, že ten "vypravěčský styl" se ještě vylepšuje každým dílem, alespoň podle mého "zcela objektivního názoru" :D Takže objektivní dík!
A teď za kapitolou, kde už by to nemělo narušit tu plynulost vysvětlování, opět následuje můj tradiční Doslov pro zvídavé
Při posouvání na větší vzdálenost samozřejmě potřebujeme kombinovat jemný posuv s klasickým, po znacích (v textových režimech). A to horizontálně i vertikálně. Že by to znamenalo pomocí 6502 přesouvat bloky paměti? Kdepak, opět pomůže náš věrný kouzelník ANTIC: každý scrollovaný řádek má v DL uvedený vlastní začátek videoRAM. Např. 80 bajtů na řádek. Posun doprava nebo doleva pak znamená jen pro tyto řádky inkrementovat nebo dekrementovat spodní bajty jejich ukazatelů VRAM v DL. Typicky tedy i pro celou obrazovku v max. rozlišení je to INC/DEC pouhých 24 bajtů. Podobně vertikální posun: posuneme ty ukazatele v DL, tj. pro celou obrazovku 2x24=48 bajtů (musíme spodní i horní byte).
Tak takhle se na Atari dělají ta grafická kouzla "s procesorem za studena"... Přidejte si k tomu, že se není potřeba starat ani o vykreslování znaků: stačí jen měnit ukazatel na znakovou sadu, a to i několikrát v průběhu obrazu, jak vidíte na snímcích z her, a vidíte, čím tehdy své uživatele Atari umělo nadchnout...
Ale... Jakmile narazíte na strop možností ANTIC a GTIA, tak se ta složitost pro vás rázem otočí o 180°: detailní informace o ANTIC dodnes nejsou oficiálně zveřejněné. A složité je to až na úroveň konstrukce procesoru... Zkrátka klasický problém "magického pomocníka" :)
Zdar a silu, jen takovej dodatekk tomu 'oknu'. Defacto tim urcujes jaka cast pameti se vykresli a teda v praxi potrebujes mit celou scenu v RAM, coz je pri 64K RAM vylozene neprakticke (viz treba Turrican levely na C64: ~100-150 navazujicich VRAM - tj. 100-150K dat, CRAM radsi nepocitaje - takrka *2). Pokud mas tedy rozsahle levely, stejne se skladaji z bloku/superbloku/... a 'rendruje' se nova radka/sloupec - takze musis polochtat klopaky CPU a popresouvat. Pripadne se depakuje on-the-fly - opet posun okna k nicemu. Smysl to ma kdyz kopirujes na pozadi - vis, do jakeho smeru, tak mas treba 1-2 frejmy k dobru. Nicmene to je prakticky double-buffer, tedy trochu jineho, staci par bitu nekde na offset.
Takze tyhle kouzla "s procesorem za studena" jsou nedomyslena - zde schazi zde 'wrap'. Pokud by ANTIC umel zobrazit znaky 0123...X a potom 123...X0 tak by to davalo smysl. Alepon teda nevim, ze by tam takova featura byla. Takhle presne casto funguje HW scrolling - je tam 'wrap' a vyreseno :) Na VICu se takhle da delat fullscreen scolling grafiky. A bez pocitani pixlu be tam tam moc 'levelu' neveslo.
Ten kdo Antic delal nedomyslel tyhle veci v praxy bohuzel (nebo pocitali s Basicem IMHO). Pritom stacilo pomerne malo a dalo by se rict, ze je to dobrej grafickej cip :) Nejvtipnejsi mi prijde HW inverze znaku :)
P.
Trošku mi uniká, v čem je wrapping (jak ho popisuješ) lepší, než mít řádky dlouhé 48 znaků resp. 384 pixelů. Stejně se přesunům nevyhneš, ale jsou to přesuny jen jednoho sloupce ne? Nebo co ten wrapping řeší?
Wrap resi to, ze se nemusim presouvat. Usetrime par cyklu, energii a planeta se zazelena a obraz netrhne :)
Zobrazuju:
0123...X
Postupne shiftuju 'doleva' az fakticky zobrazuju
123...X (nula neni videt, nebo koukaji prave pixly)
Ted se resetnu se shiftem na 0 a mam 2 moznosti (Y=novej znak):
zkopiruju o 1 doleva: 123...XX -> 123...XY
Pokud ale mam WRAP a posunu VRAM +1 tak zobrazuju
123...X0 -> 123...XY
A nestalo mne to nic krom prepisu 0->Y. Pouhe 'okno' do RAM je proste k prdu, neni na to RAM.
Taky to pak cini problem kdyz se updatuje level za behu - treba se borti most za hracem. Pokud pracuju jen ve VRAM jak pisu, nenicim si 'zroj'. Pokud mam okno ve VRAM (mimochodem, misto sta,x uz se musi pouzivat sta (),y -> dalsi cykly navic) tak si temahle 'runtime' animacema nicim 'zdroj' a musim ho pak nejak opravit/nahrat znova. Taktez se moc nedaji optimalizovat animace (nekdy je lepsi updatovat VRAM nez char) a podobne.
P.
Ono není problém mít "celou scénu" v RAM, protože pro většinu tehdejších her ta "celá scéna" byla o velikosti třeba 2x2 nebo 1x5 obrazovek. Což v tom textovém režimu znamená, že i v celkovém součtu to zabírá cca jako polovina jedné jediné obrazovky v ANTIC mode F...
Samozřejmě byly hry, které potřebovaly tuto scénu aktualizovat, generovat, protože jejich celá mapa byla ještě větší. Ale i tak je rozdíl, pokud to jako programátor musím řešit jen když hráč ujede vzdálenost třeba 2-3 obrazovek nebo při každém posunu o 8 pixelů...
jj hele na něco se to hodilo, na něco ne. Zkusím dát z hlavy příklady, kdy to okno mělo význam:
1) East front, celá mapa byla ve video RAM a nikde jinde, jinak se vše počítalo na pozadí ve VBI (když hráč přemýšlel, připravoval si 6502 další tah), v podstatě to byl mutiprocessing
2) Boulder Dash - ten je zmíněnej ve článku. Taky byla celá scéna jen ve video RAM, nikde jinde
3) scrollovačky typu Defender - nejsem si na 100% jistej, ale na 99% to byl taky jedinej širokej pruh
4) Caverns of Khafka - scrolling všemi směry, IMHO zase jen okno bez přesunů
Kde to naopak bylo nutné zkombinovat s přesuny:
1) Zybbex - tam si nedovedu představit, že by to nacpali bez postupného updatu scény (ale můžu se mýli)
Nevím:
Cavelord a Shreckenstein (stejný autor, podobná technologie, teoreticky to může být jediná velká herní plocha s videoRAM oknem, ale bude to chtít prozkoumat)
mimochodem ten Shreckenstein (píšu to dobře nebo tam má být Sch...?) má dva nezávislé scrollingy - pro prvního a druhého hráče. To neumí ani VGA, natož jednodušší čipy než ANTIC :-)
Paralax a i nezavysle scollingy nejsou domena jen ANTICu nebo vypocetni sily (tu nemame)... Trebas neco tady: https://youtu.be/DQpLAIkNVLE?t=111 Nektery hry to maji nezavisle.
Ad k cemu/necemu. To je ten rozdilnej uhel pohledu. Kdyz to mas tak jak to mate - nemas to druhe. A proto nemate hry jako Turrican a tunu dalsich :) Takze na papire vsechny tyhle veci vypadaji suprove, ale v realu (dle mne) to nekdy nadela vic skody nez uzitku.
P.
Máme nebo nemáme, to je relativní. Technologické demo je zde:
https://www.youtube.com/watch?v=kthZdlr6wL0
Ale zase máme Doom https://youtu.be/DuZywAxfGkw?si=ve2CuvtovY56CQ8P&t=66
Nebo https://www.youtube.com/watch?v=zRGpT-Kjxs8 a to už vypadá, že by ten Turrican šel. Ale proč chtít zrovna Turrican, když máme spoustu jiných krásných her, že. Např. https://youtu.be/u9nDCg63wNc?si=zyVzNg1yzhxwRIkw&t=173
Jako jasně, neumí to všechno, ale na tu dobu... Já si nestěžuji. Já teda ne. :-)
Doom a podobne 3D mame taky, rychlostne jsme na tom, v tomto smeru, skoro stejne. Pokud nezmensite view area, pak mate navrch, to mi muzeme jen vertikalne - kino mode :)
P.
dik za odkaz. Jen pro upřesnění: když se na Atárku mluví o fine scrollingu, tak je to většinou pro textové režimy. A tam řešit nějaké přesuny paměti "nic nestojí", to je necelý kilobajt. Turrican na commodoru je čistá grafika?
Necekal bych od tebe takovou 'blbost' :) To se nedalo ucyklovat :) I dokreslovani grafiky po stranach by bylo tezce na hrane. Jestli by se to dalo stihat vubec. Prakticky skoro vsechny tyhle hry jsou ciste znaky.
R.
no právě, takže se bavíme o přesunech "pár bajtů". I kdyby se to muselo dělat pro každý snímek, tak pořád máme nějakých 25000 cyklů na to to ustíhat, ne? A úplně nejhůř by šel double buffering, ale to se IMHO v "textových" módech nikdy moc neřešilo.
Pár bajtů :) Na plnych FPS to je vice nez par bajtu na 1MHz... A ani nakonec nejde o FPS, protoze nakonec v jeden okamzik to musis udelat naraz.
Bajt lze nejrychleji udelat za 4+4 (LDA 16 STA 16), ale spise za 4+5 (LDA 16,x STA 16,x). My mame k dispozici ~20K cyklu (@ 50FPS), po odpoctu DMA a spol. To odpovida ~2.2K 'charu' za frame. U vas o neco vice, zvlaste, pokud zmensite screen a mate vhodny mod :) U nas v realu jeste CRAM a z toho plyne, ze na 'veci okolo' uz neni moc misto. Sice to je dost cyklu navic, ale za ty barvy (a hires/multi kombinaci) to stoji :)
Vsechny Ackove hru jedou pekne VSYNC (pokud nepoustis PAL verzi na NTSC a podobne ;) takze nakonec musis setrit, typicky se pouziva 1 CRAM na 4 znaky, takze misto 4*(lda+sta) mas jen lda+4*sta, coz je podstatny rozdil. Druhak je vhodny vygenerovat lda/sta, to usetri taktez prez tisic cyklu. Double buffer se pouziva kvuly plynulosti, protoze pokud nechces zlomit screen 'kdesi na obrazovce' (a byt VSYNC) tak mas jen 2 moznosti - stihnout to prez/za paprskem, nebo mit 'STA' do jine VRAM a prepnout ja naraz pozdeji. Takze pak kopirovani jeve na polovicnim FPS, ale i tak je to hrozne rychle - 4px za frame.
Takze double buffer - rozhodne jo. Takze v praxi to vypada tak, ze si treba 1 frame pripravis VRAM a druhy frame CRAM+switch. Udelat to behem jednoho frame stoji takrka 90% vykonu a to nikdy nemas (hudba, tick hry, ...). Leda v jednoduchych hrach (kterych je ale vetsina, to zase jo...).
CRAM navic nelze buferovat, je v DRAM mimo 'RAM' (samostate 4 bitove kilo povesene primo na VIC, dokonce v realu horni 4 bity vraci bordel na sbernici).
Navic tim jde krasne rozdelit kod a zjednodusis si engine, protoze se tyhle veci daji rozlozit mimo/do interuptu a zesynchronizovat se. Dlouhodobejsi veci, ktery se deji 'nekdy' pak narusuji strukturu casovani.
Sranda zacina, kdyz do toho jeste dotahujes z drajvu data :)
R.
tech volnych cyklu na Atarku se uvadi 24800, ale to neni presne. Zalezi na povoleni PMG, jestli je to znakovy rezim, na sirce playfieldu (jak spravne pises) atd. Takze rekneme 24000 max. Mas pravdu, prenosy s adresovanim pres X/Y jsou pomalejsi.
Hele diky za debatu! Jak za starych casu...
Kdysi jsem s kamaradem atarakem pomeroval pindiky, kdo jich ma vic a v realu to vyslo, ze u nas bylo na radek 63 cyklu a u vas 64. U nas minus bad lajny (cca ~500 cyklu mene). Takze nakonec byly skoro stejne velci :)
Take dik za pekny pokec. Nekdy mi tyhle debaty u piva schazi... Na novejsich HW to takova zabava neni a vetsina lidi uz nema chut si namahat mozek. Asi to boli...
Kdysi chtel kamarad vysvetlit jak funguji turba i C64/drajvu (5x open colector mezi 2ma systemama prakticky), ale chteli jsme na pivo. Dotahl asi 40 stran dis-asm na traktoru primo do hospy. Slo nam to pekne od ruky :)
Peknej vecer (o:
P.
Jinak když jsme u toho, jestli byl ANTIC dobrý čip - taková pohodová pseudofilozofická debata k obědu :) Tak já si myslím, že je potřeba rozlišovat tři různé časy: kdy byl ANTIC vymyšlen a vyroben, kdy se ANTIC používal v normálním světě a kdy se ANTICem bavili lidi v sovětské okupační zóně. To je právě problém tehdejší hektické doby (podobně to bylo s různými kartami pro PC o pár let později). Když byl ANTIC vymyšlený, tak to byl podle mě skvělý způsob HW podpory tehdy běžných her (jednoduchých arkádovek). Jenže ten čas běžel strašně rychle a trh s hrami se vyvíjel neskutečným tempem. I tak se ANTIC aspoň trochu "držel", ale pochopitelně to byla kolem roku 1988-1989 dávno labutí píseň buď pro nostalgiky nebo pro ty, kdo z politických důvodů byli rádi, že se dostali aspoň k tomu, tj. pro nás v sovětském bloku...
Dnes už to neni na těch emulátorech vidět, seká se to, není to věrný, ale na real Atari na TV obrazovkách text nescrolloval, ten letěl jemně jako vítr... Jasně, prachy si za to nekoupíš, ale je to fajn.
...a když už jsme u těch potenciálně výbušných otázek, tak přidám ještě jednu: "Bude i seriál o C64?" :)
Uvědomil jsem si, že o ZX Spectrum mám alespoň trochu představu ještě z té doby a doplnil jsem si to seriálem tady na rootu, ale o C64 vím úplné minimum. Jen takové drobky jako že uměli praktičtější sprajty (dokonce vícebarevné) a že nějaký kutil dokázal použít jeho disketovou mechaniku jako zvukový výstup - pohybem hlavičky vytváří rozpoznatelnou hudbu :) Ale jaké čipy na grafiku používal, co šikovného uměly?
něco málo bylo tady https://www.root.cz/clanky/graficke-karty-a-graficke-akceleratory-3/ ale zaslouží si větší prostor, to je pravda
Diky, to je dobrý přehled - plus některé komentáře v diskusi pod článkem.
Zkrátka další zajímavý systém, který už asi v tomto životě nestihnu tak dopodrobna ve strojáku prověřit... Už nevěřím ani na ten čas v důchodu, když vidím, kolik jsem na něj už odložil svých nápadů a hobby :)
Ad sprity - asi nejzázadnější rozdíl je v tom, že jde zobrazit stovky spritů zároveň, jediná limitace je 8 horizontálně, ale i tady jde udělat víc, ale to už je spíš na efekt, protože to děsně papá cykly.... A to je na těch hrách vidět. Často je player složený z několika spritů zároveň. Až tak, že některý grafiky kombinujou sprajty a pokrejvaj celej screen dokupy.
C64 nemá diplay list, ale vše se dělá async pomocí zapisů do regsitrů VICu. Což stojí trochu CPU (obecně ne moc), ale zase to nemá žádné limitace. Jinak je funkce rostlináře podobná, včetně schopností display-listu v zásadě. Granularita VRAM není na řádky, ale na screeny/bitmapy (doplňují se horní bity).
P.
Díky. tohle zní nebezpečně zajímavě - asi tak na to se na půl roku zavřít s dokumentací :) Evidentně se tam daly dělat krásné triky...
Jinak "počet sprajtů" byl i na Atari omezený jen na jednom řádku, jen se tomu tak neříkalo z terminologických důvodů. Ale bylo to podobné. Dokonce Raster se tím hodně bavil a jako "dema" dělal často různé obrázky 320x200 v mnoha barvách, i když teoreticky umělo v tomto módu Atari jen jednu barvu ve dvou odstínech. Ty další barvy dělal právě těmi sprajty našoupanými po celé obrazovce. A samozřejmě do toho občas změna té základní barvy v DLI...
To je to, co podle mne se na VICu povedlo lepe - udelali dobrej zaklad a nesnazili se vymyslet pouziti - nechali to byt v zakladu. Tech triku tam je silene moc, ono kdyz se podivas na realne hry na atary/c64 (myslim ty Ackove) - je to opravdu znat. Samozrejmne, kazdymu se libi to jeho - tak to nemyslim. Kdyz to fakt zhodnotis podle poctu toho co se jak hejbe, jak je to dynamicky, .... Uz jen 2x tolik znaku udela propastny rozdil. Mene je nekdy vice :) Na C64 nejvys pos... barevnou paletu - a to jeste blbe rozdelily poloviny (nekde se da pouzit jen 0-7 a posledni bit rozlisuje hires/multi). Kdyz pominu blbe zvolene barvy a nemoznost je menit (chapu, byl by to asi dalsi adresni bit a noha na svabu/nebo nejaky multi store registr...) tak alespon mohli mixnout poradi barev po konzultaci s jakymkolik graficky trochu citicim clovekem. Za tu paletu by meli jit do barevneho pekla :)
R.
zase má ta paleta výhodu, že je na první pohled poznat, která hra je z Commodora :)
Jinak komouš to "musel" mít lepší, protože měli cca 3 roky na to zjistit, co je na atárku nevhodné. A 3 roky v tehdejším IT bylo skutečně hodně, ale to víš sám... (o 2 roky později přišlo ST a Mac, ale popravdě to byly z mého pohledu sice silné, ale nudné stroje).
Asi jo, ale mezi cipama myslim nebyly 3 roky, maximalne 2... VIC uz byl ve VIC-20. VIC-II v C64 uz mel jen nejaka vylepseni (detajly z hlavy nevim).
Nicmene - asi v tom pripadku byli asi barvoslepi - ale to by hodne vysvetlilo :)
P.
Kdybych chtel strilet do vlastnich rad, tak bych napsal, ze POKEY navrhovali lidi bez hudebniho sluchu (bo pri osmibitove delicce proste ciste tony nevychazi), ale radeji pomlcim, resp. si to necham na clanek o POKEY :-)
Nemuzu si pomoci.... Ty fakt veris, ze ma atary nejaky audio cip ? Ja vzdy myslel, ze je to jen delicka zapojena na reprak :)
P.
ps: 2 kanaly na 16ti uz nezni tak falesne ne ? :)
heh oproti beeperu/squeezeru na Spektru nebo PC to bylo zlaty ;) 16bitu dobry, ale proste se za to zaplati jednim kanalem a zase 16 bitu je zbytecne moc. Takze 2x8 bitu + 1x16 bitu je asi to nejlepsi na beznou hudbu.
Ale ono je to jako se vším na osmibitech: pro nás to jsou vzpomínky a emoce, pro obchodníky to bylo jak co nejlevněji vyrobit něco, čím využijeme tehdejší obří hlad po jakékoliv takové "mašince" domů.(*) Takže viděno zvenčí, tj. porovnání počítačové pseudohudby s gramofonem nebo pseudografiky s knihou nebo i s tou tehdejší nijak úchvatnou televizí, to byl bohapustý výsměch. Tu hodnotu jsme v tom viděli jen my, nadšenci, protože jsme věděli, o kolik moc může být ještě hůř, tj. jak málo to umí samo o sobě, než nějaký machr z toho vymáčkne alespoň toto :)(**)
Já si pamatuju, jak jsme s bráchou jako náctiletí projížděli získané kazety plné neznámých programů a her a byli nadšení z některých "muzik" - a chudák máma trpěla a volala, kdy to příšerné pípání konečně vypneme. Nechápali jsme. A pak jsem po letech našel na YT video s nějakou hrou z Atari.
Maminko, po letech se ti omlouvám a hlásím, že už chápu!
=======================================================================
*) Nezapomeňme, že do té doby byly jen herní automaty někde na poutích, kde za každých pár minut nebo spíš desítek vteřin těch úplně nejzákladnějších her člověk platil. A platil a platil...
**)Proto mě nikdy nebavilo se zbytečně tahat za pindíka. Spíš mě štvalo, že z toho totálního minima spolužáků, kdo měl taky počítač (cca 2 ve třídě), mám stejnou značku ani s jedním (tak cca se 2-3 z celé školy(!)) a když k tomu přidám, že programovat nějak pořádněji chtěl tak každý desátý, tak kolik jsem asi tak měl kolem sebe vrstevníků, se kterými jsem mohl své hobby sdílet? A to jsem byl v Praze! No, aspoň mě to otrkalo a naučil jsem se sám chodit mezi dospělé (pražský Atari klub, nedám na něj dopustit.)
22. 5. 2026, 00:50 editováno autorem komentáře
Dovolím si trošku nesouhlasit s tím obchodním modelem. Jasně, cílem každého obchodníka je z toho vytřískat co největší peníze a dvakrát tak to platí pro americké firmy (možná byl výjimkou BBC Micro). Ale řekl bych, že zrovna v éře osmibitů byly ty americké stroje pojaty jako luxusnější zboží a celková kvalita byla hodně vysoko. To nebyl odfláklý x-tý model telefonu, na který se za rok zapomene a kterému po dvou letech stejně odejde nějaké k.....o.
Teď budu mluvit za řadu XL, XE, kterou znám nejlíp. Tam se fakt ještě řešil a zaplatil industrial design (ty kastle jsou prostě pěkné, řada různých materiálů ne jeden výlisek levného plastu, dokonce nešetřili kovem), celkově je to kvalitní (XL až moc - tuším je k tomu donutil FCC, takže uvnitř je ještě Faradayova klec atd.) a o něčem mluví i to, že ty počítače mnohdy v rozumném a funkčním stavu přežily dodneška (ale máme tady Michala, ten o tom ví první poslední).
HW řešíme v článcích, takže limity jsou jasné (a z dnešního pohledu velké), ale i ten FW (tedy OS), to nebylo něco udělané na koleně za týden. Naprostá většina FW věcí je bez chyby, ostatně jak opravit chybu v ROM, když je na světě milion prodaných kusů (a u C64 desítka milionů)?
Uff to jsem se zase rozkecal: no prostě ano, je to spotřební zboží, obchodník řešil poměr cena/výkon (resp. možná zisk/výkon), ale nedíval bych se na to dnešní optikou, kde v podstatě jako zákazníci očekáváme, že nakupujeme s prominutím sh.tware.
PS: ostatně asi největší rozdíl je vidět hned po bootu: tehdy na člověka vyskočilo nějaké OK nebo READY a očekávala se inteligentní akce. Dnes je to animovanej nesmysl, čím víc barev a animací tím líp, ideálně ať to jsou reklamy... (no prostě chápu - tráva byla zelenější :d)
Tedy promluvím za nadšence do fyzického HW a musím souhlasit. Ten HW je udělaný poctivě a prakticky vše co jsem měl štestí a dostalo se mi do rukou, tak fungovalo, i když to bylo více či méně zubožené lety v odložení.
Měl jsem i obavy z toho, že modely XE už byly tlačeny na minimalizaci výrobních nákladů, takže levnější desky plošných spojů, low-end paměťové čipy (kdy se dával jeden kvalitní aby to prošlo QC)... Ale oba co mám fungují naprosto spolehlivě.
Neříkám že vše bylo dokonalé, ty počítače měly i své výrobní bugy, ale na to, že všechny co mám mají 30+ let a všechny fungují (některé potřebovaly nové elektrolyty a ty co mají původní musím hlídat, ale to už je spíš vlastností této součástky, než že by použili úplné krámy), tak to myslím není zlý vzorek.
Mám jedno nefunkční Atari 800XL, ale to z prodejních fotografií vím, že fungovalo před odesláním. Jenže pak si to asi prodejce chtěl ještě vyzkoušet, samozřejmě na originálním zdroji. A jak před nimi pokaždé varuji, tak počítač mi přišel a už nefungoval. Cca polovina RAM čipů nekomunikuje, samotné paměťové čipy se zdají být v pořádku, takže jeden nebo oba custom čipy mající na starost obsluhu RAM to mají za sebou.
Este ze som prilis lenivy na skusanie stareho Atari 130 XE s 30-rocnym repasovanym zdrojom. Zaujimave ale je, ze stare Atari 7800 s povodnym zdrojom pred cca 8 rokmi v pohode bezalo.
Tak ony ty původní zdroje mají tu blbou vlastnost, že v první chvíli fungují. Teda i při měření před připojením člověk nevidí žádný problém. Ale jak se zahřejí, začnou dělat nesmysly. V lepším případě se jen rozzrní obraz, v horším to natvrdo pustí přepětí a usmaží čipy.
Samozřejmě za ta léta byla hromada různých revizí, takže se mohou chovat různě, ale za mne ať C64 či Atari, s původním zdrojem nepoužívat. Pokud teda člověk nemá v oblibě ruskou ruletu.
Jo, já se vyjádřil nepřesně. Nešlo mi ani tolik o kvalitu jednotlivých kusů součástek, i když zlí jazykové tvrdí různé věci, a zrovna o mé milované 130 XE... Naštěstí já osobně nepotkal jiný problém než se zdrojem, takže o tomto nechci šířit žádné nepodložené zprávy.
Myslel jsem spíš starost o dlouhodobý rozvoj platformy jako takové, to předvedlo právě až PC, ať se nám to líbí nebo ne. Osmibitové počítače se prostě (z pohledu výrobce) jednou prodaly a konec, HW i SW. A ještě tak napůl bez dokumentace. A pak se museli amatéři sami postarat o to, jak s tím jednou daným HW dokázat co nejvíc. A proto na každý takový pokrok o krok byli náležitě hrdí - a měli na co, protože to většinou stálo obrovské úsilí, každá malá vychytávka.
Ale z pohledu "emocionálně nevtáhnutého člověka" to nebyla hudba, ale pípání a chrčení. To nebyly obrazy, ale čtyřbarevné omalovánky (kolikrát mi to "mimopočítačový" kdo řekl? Ani nepočítám :) ). Tak tak jsem to myslel: že ty pokroky chápal jen člověk, co věděl, kolik amatérského úsilí stály.
Bohužel jediný osmibit který dosáhl vývoje do dalšího mezníku byl Apple II GS. Projekty které mělo jak Atari tak Commodore skončily v šuplíku. O tom se nedá přít, že kolem devadesátých se ještě prodávaly s tím, že si to koupí ti co nemají na nic lepšího, ale vývoj už nebyl. Jen facelift.
jj je to tak. Prostě všichni narazili na limit a přešli na lepší procesory. Buď na 32bitové (prakticky všichni kromě IBM :-) nebo na 8088 (IBM). On nakonec i ten Apple II GS poháněla 65C816, což je sice odvozeno od 6502ky (museli být kompatibilní a 65C816 dokáže šest pět dvojku emulovat), ale je to 6502 na silných steroidech (16bitové operace, 24bitové adresování - tady se mohl Intel učit :-) - a další rozšíření adresování).
C64 měl možná paletu, ale v rámci ní měl i nějaké normální barvy a nevypadalo to špatně, naopak. Co mají říkat chudáci, kteří (i pak na PC) měli jen těch strašidelných 16 základních barev? Dodnes mě tahle "paleta" straší, normálně trauma z dětství :) A přitom kdybych měl doma Didaktik Gamma, který mi chtěli rodiče pořídit původně, tak se vsadím, že na to dnes nedám dopustit a všem vykládám, jak úžasné bylo, že v téhle hře se skvělým trikem mihla na chvíli i oranžová.
Tak to prostě je - žili jsme těmi stroji, viděli jsme všechno ve skutečnosti JEJICH perspektivou (viz můj příspěvek níže o tom, jak skutečně vypadala ta grafika a hudba :) ). Takže na Atari jsme pokaždé hltali, když bylo více barev na obrazovce najednou a jinak než ta profláknutá duha :) To Spektristi neznají, ti mohli i v nejjemnějším rozlišení klidně všechny barvy z palety na obrazovce najednou a nikdy by je nenapadlo barvy na obrazovce počítat. Na Atari by nás zase nikdy nenapadlo obdivovat, že tady jsou třeba 4 barvy hned u sebe v jednom čtverci 8x8 nebo že postava ve hře nepřebarvuje všechno kolem sebe. A podobně určitě vzpomenou i lidi od C64, čím zase žili oni...
Takže nám na Atari přišlo kouzelné, jak v intru hry Lasermania byla animace mnoha objektů přes půl obrazovky, a ještě s pěkně sladěnou paletou barev. To už je i celkem dynamické, ne? :) https://www.youtube.com/watch?v=pKEx5jI8tkg
Jenže takovéto triky přicházely až později v devadesátkách, kdy už postupně všichni přecházeli na PC...
Když člověk srovná stejnou hru na 800 a C64 (ostatně v jednom článku jsem se právě porovnání verzi trochu věnoval), tak Atari má právě líbivější výraznější barvy. Na druhou stranu sám za sebe mohu říct, že když to člověk nesrovnává vedle sebe, je to vlastně v realitě jedno. Nevadí mi zahrát si verzi pro C64 aniž by mi to přišlo divné. Dneska je to stejně všechno retro jako řemen :-) No a pak je tu zvuk, já prostě ten POKEY mám napouslouchaný a jsem na něj zvyklý. Ale to radši nebudu tahat, nebo tady začne flamewar. :-D
S těmi 16 strašidelnými barvami to nebylo tak zlé. Už od dob EGA (rok 1984) bylo těch 16 barev možné vybírat z 64barevné palety. Jen se to moc nepoužívalo. Samozřejmě paleta AMIGy (4096 barev) nebo ATARI ST (512 barev) byla poněkud větší.
Ako spectrista mi pride paleta C64 univerzalnejsia. JE trochu vyblita, ale ZX Spectrum alebo CPC ma radioaktivnu a to mi pride horsie.
Atari mělo skvělou paletu barev, občas mi přišla pro některé hry až příliš kontrastní, ale obecně to vypadalo dobře. Ale tehdy na Merkuru mi to bylo...na jednu věc. Vždycky byl svátek to vzít dolů do obýváku na Color 110 ST.
Zrovna máme v práci praktikanta ze střední - počítačový obor, tak aby to neměl tak obyčejné, přitáhl jsem do práce Commodore 64 a ukázal v provozu. Nikdy prý nic takového neviděl naživo. Tak snad aspoň zbyde zajímavá vzpomínka.
hele pekny, at se mladej zauci na legende.
(jinak taky jsme meli kombo Merkur resp.Junost (prakticky to stejny ze SSSR) a 110 ST kdyz byl svatek a nezlobili jsme)
Stejné :-) Vždycky zážitek, když se počítač donesl dolů, přistavil se tam stolek se vším všudy. Vždycky se pak vzadu musela přehazovat anténa a výstup počítače, a blokovalo to rodinnou TV, takže využití omezeno. Ale bylo to barevné + na velké obrazovce, takže se daň nepohody vyplatila.
Jinak mladej vypadal docela zaujatě, takže doufám, že vzpomínka bude dobrá. Aspoň viděl něco jiného, co ne všude uvidí. Jak sám říkal, takový počítač viděl v někde muzeu, ale vypnutý za sklem. Přines jsem zrovna čerstvě zrenovovaný/opravený kus, již můj třetí C64C. Mám na ně nějak štěstí :-)
Já to měl podobně, v pokoji nějaká šílená velká ČB TV... Taky v jednom demu mám posunuté o pixel animace ve sprajtech/znacích, protože jsem to prostě neviděl (o:
A v obýváku Tesla color 110ST. Rodiče dělali ranní od 6ti, takže kdyz jsem se ulil ze školy, tak do 14:15 bylo žůžolabůžo :) Na základce jsem míval okolo 100 hodin za pololetí, na střední jsem se dostal ke 190. Pak už mi vyhrožovali, že mne nechaj opakovat... Mne a kamarádovi přezdívali učitelé středoškoláci, že prej jsme tam chodili jen ve středu :)
R.
To je teda vtipné. Já to měl pro změnu zase naopak: pouze ve škole jsem se dostal k takové vzácné starožitnosti jako ČB televize :) Shodou neskutečných náhod jsme se jako rodina dostali k tomu, že jsem mohl najednou získat celý set Atari 130 XE i s vybavením, včetně malé barevné TV. Rodiče byli nadšení, že jim nebudu krást TV v obýváku :)
ČB televize jsem viděl až ve škole na místní síti radiátorů IQ 151. Což byl tehdy pro mě šok: zápis na síťovou disketovou jednotku trval průměrně 40 minut, místo klávesnice sada zvonkových tlačítek už tak z 20% promačkaných - to nešlo stihnout zadané úkoly v BASICu skoro vůbec. ČB obraz byl vedle tohoto úplná prkotina...
A tak jsem se jednou naštval a řekl učitelce, že si přinesu vlastní počítač, jestli jí to nevadí. Ona znala jen ty litinové IQ 151, tak se mi vysmála, jak ho asi donesu. A pak se mi smála podruhé o týden později, když u mě neviděla nic než aktovku. Na ten její výraz následně nikdy nezapomenu: když jsem vyndal svůj sešit a následně po něm počítač, kazeťák, cartridge, kabely, kazety... Sedl si na předem vyhlédnuté místo, kde byla TV i s anténním vstupem (jinak byly pro školy bez anténního vstupu), vše zapojil a během pár minut splnil úkol v Turbo Basicu. No, jak myslíte, že to dopadlo? Hodina se rozpadla, všichni byli kolem mě, obzvlášť když jsem z boční kapsy vytáhl i joystick :) Ale k její cti nutno přiznat, že zábavu nezkazila, jen mě pak po hodině poprosila, ať už ho nenosím nebo se ostatní nenaučí ani to "IF" :D
P.S.: A to si představte, jak by koukala, kdybych měl Spectrum! To se vešlo i do kapsy na svačinu :)
26. 5. 2026, 12:29 editováno autorem komentáře
Jedno IQčku upříst nejde, mělo nezaměnitelný charakter. Já jsem jej nezažil nikdy na vlastní kůži, na základce bylo za mé doby učebna v síti 386 + dvě 486, a u učitelského stolku Pentium 200MHz, to bylo sólo.
A trovna shodou okolností jsem nedávno objevil kanál na YT - Andrew Tesla, a ten tyto mašinky opravuje. Podívání pěkné. Já bych si na IQ musel pořídit novou skříň (nejlépe s vyztuženými poličkami :-D ).
To je mimochodem zajímavá úloha. Asi bych udělal skříň ve stylu dílu kuchyně: spodní část hlubší jako skříňku, pak horní strana této skříňky (pevně truhlářsky spojená) by fungovala jako police pro to IQ 151 a neměla by zadní stěnu a nad tím horní skříňky už s menší hloubkou, pro běžné přenosné počítače. Celé bych to udělal na nábytkových kolečkách s brzdou, aby se nemuselo to IQ 151 přendavat na stůl - jen se popoveze kus od stěny, aby mělo prostor na chlazení. Bez dostatečného chlazení totiž začne dělat náhodné chyby. Plus by to nebylo vůbec zdravé pro tu skříň... Takhle vyřešíme oba problémy naráz.
A do dolní skříně by se vešla i ta dvojdisketová mechanika (měla dva porty na osmipalcové diskety, myslím) - sama o sobě ta mechanika fungovala dobře, to jen v síti měla těžké potíže, protože ovládací SW sám sebe zahltil a výsledek byla čekací doba 40 minut a víc. ( Následovalo ukecávání učitelky, aby se šla podívat na "můj" počítač, jinak by byla "kule" za práci v hodině - neodevzdáno... Jo, to byly doby :) ) Takže doma by to mohlo jít - a mít IQ 151 i s funkční disketovou mechanikou, to by byla pecka! A voda na kafe ohřátá zdarma!
Skvělý nápad! Ještě mu můžete "nenápadně" k tomu říct, že zatímco dnes na Arduino musíme mít cross-compiler a ládovat do něj programy z PC seriovým kabelem, tak tyhle mašinky, i přes své omezené možnosti, fungovaly samostatně a cross-compiler bylo pro drtivou většinu lidí neznámé slovo už jen kvůli tomu, že neměli žádný silnější stroj, ze kterého by mohli cross-compilovat :D
O tom jsme se bavili, že dnes se používají tuny knihoven a podpůrných aplikací, které jsou na to nabalené, ale v těchto dřevních dobách si lidi pěkně vzali strojový kód a programovali pěkně prakticky přímo na úrovni HW, případně v C a pár dalších jazycích. Hlavně teda museli, protože u takto slabého stroje nešlo plýtvat instrukcemi, pokud programátor chtěl opravdu vytáhnout maximum, musel k dobru využít každý takt stroje.
Víc mu k tomu bohužel říct ani ukázat nemůžu, skutečnému programování jsem se opravdu nevěnoval (že jsem mu ukázal dvouřádkový kód v BASICu opravdu nepočítám), to by museli jiní, znalejší.
No, kdyby to znamenalo, že uvidím vaší sbírku, tak bych se nebránil ukázat cokoli ve strojáku na Atari - ale ne aby to vypadalo, že jsem se pozval! :)
Ta podobnost s Arduinem nebo jinými podobnými stroječky je podle mě právě zajímavá: ukázat mladším, že principy zůstávají fakt hodně stejné už 40 let - taky je základní procesor, kde běží program, a pak okolní čipy, které se programují podle datasheetu. Na Atari a C64 je jen ten rozdíl, že byly mapované do paměti místo aby se na ně chodilo přes I/O instrukce. Ale na ZX Spectru byly i ty I/O instrukce...
Moje sbírka se stkví v naší ložnici, to by byla divná pozvánka :-D Ale rozmístění nábytku udává manželka, tak je to kde chtěla. na druhou stranu je to místnost, kde nesvítí přímo slunce, navíc je to schované v tom nejtemnějším koutě, takže ideál. A je tam sušší vzduch, pro počítače ideál (pro nás méně).
Jinak jo, právě s Arduinem a ESP si to sám spojoval, takže za mne úspěch.
<quote>Moje sbírka se stkví v naší ložnici</quote>
Tak to můj návrh skříně pro IQ 151 dostává úplně jiné dimenze :)
:-D No jo no, ještě že namlouvání mám dávno za sebou, na sbírku počítačů příhodně umístěných vedle postele by mi asi žádná neskočila.
V C se tyhle počítače rozhodně neprogramovaly. Existovaly nějaké osekané kompilátory C, ale spíš jen jako kuriozita, pro praktickou práci v podstatě nepoužitelné. Pro začátečníky a méně náročné projekty či prototypování byl zadrátovaný BASIC, pro seriózní práci Assembler. Pak byla propast, následovaly FORTH, Pascal (osekaný, např. pro IQ-151 se podařilo R. Krylovi a spol. z MFF UK implementovat kompilátor splňující specifikaci na úrovni 0, ale za cenu použití rozšiřujícího modulu s podprogramy vyžadovanými při běhu přeloženého programu), KAREL a LOGO, pak ještě o řád větší propast a pak ostatní jazyky ve formě osekaných kuriozit nebo obskurností, které dnes už nikdo ani nezná. Zvláštní případ byla různá rozšíření zadrátovaného BASICu, na Commodoru např. oblíbený Simons' BASIC, dostupný i na cartridgích, včetně oblíbené Final III (zadrátovaný Commodore BASIC je totiž v podstatě převzatý Microsoft BASIC, tedy, jak je odvěkým zvykem u produktů této firmy, stojí za h...).
27. 5. 2026, 10:47 editováno autorem komentáře
Asi spadá mezi ty "kuriozity a obskurnosti", ale dodnes si pamatuju jako jednu z těch efektivnějších věcí co na Atari byly Action.
Byv commodorista, Action! se mě netýkal. Ale vím o něm, a jak píšete - zahrnul jsem ho přesně do této kategorie. Určitě to byl zajímavý počin, nicméně - sice to bylo tak sto krát rychejší než BASIC, ale pořád dva krát pomalejší než Assembler. A to je na architektuře, kde často počítáte jednotlivé takty, stále nedostačující. Prostě ten Assembler byl nedostižný a když v něm člověk získal určitou zběhlost, tak mu vlastně nepřipadal nijak zvlášť omezující. Pak už myslíte v určitých idiomech, takže jste v něm srovnatelně efektivní jako třeba v BASICu, možná i více, vzhledem k omezením BASICu. Takže vždycky člověk skončil u doporučení každé tehdejší knížky - myslíte-li to s programováním vážně, co nejdříve se naučte strojový kód/Assembler.
Pořád obdivuji ty, kdo dokázali v textových režimech 40x24 nebo třeba 32x25 vytvořit rozsáhlé programové vybavení. Samozřejmě nepočítám opravdu velké firmy jako Atari či Activision, ti měli výkonný cross-assembler na minipočítači.
Vzpomínám si, že když jsem přecházel z Turbo BASICU XL pro Atari na Turbo Pascal pro PC, tak mi najednou narostla "produktivita". Celoobrazovkový editor, zvýraznění syntaxe a textový režim 80x43 nebo 80x50 udělají divy.
V tom Assembleru to zas takové omezení nebylo. Navíc ono se tenkrát vyvíjelo trochu jinak než dnes - nejužitečnější periferií programátora byla tiskárna a/nebo sešit, většina programátorské práce nebyla u počítače, ale s tužkou, papírem a začátečníci případně ještě s kalkulačkou (pokročilým často činilo určité problémy v civilním životě se přepínat zpět do desítkové soustavy).
V případě FORTHu pak členění programu do "screen" (16 řádků po 64 znacích) člověka vedlo i k určitému prostorově úspornému uspořádání programu - vlastně v tom o nějakých 20 let předběhl Python, jen ten efekt byl spíše opačný.
To rozhodne, mel jsem velkej cvereckovanej blok a asi 4 barvy propisek, takze dila byla ponekud abstraktni. Bylo zajimave po par tydnech hadat, co ktery cislo co znamena :)
P.
U mě čtverečkovaný sešit propiskou nalajnovaný na 5 sloupců - adresa, opkód, label, instrukce, poznámka. Na programování jsem používal zásadně obyčejnou tužku, kvůli gumování.
Nedávno dcera v obchodě nutně potřebovala gumovací propisku a tak jsem zjistil, že jsou i barevné. A tak tu mám zas 5 barev :) Gumování je svkělá věc, souhlas. Jen ty moderní poměrně rychle zmizí sami (pár let prej) - gumovaní funguje na principu tepla, takže ten inkoust není časově stálej. Ideální na hesla na žlutej papírek vedle monitoru :)
P.
28. 5. 2026, 09:47 editováno autorem komentáře
čterečkovaná A4 + pár barevných tužek je docela "ultimátní" nástroj pro návrh architektury. IMHO lepší než ta různá moderní kreslítka (které tedy používám; možná příště jen naskenuju tu A4 :-)
Vetšinu času jsem na C64 dělal klasicky v monitoru, nebo v assembleru. Brigáda a PC bylo vysvobození, jednu z prvních věcí jsem si napsal přenos a znásilnil cross-asm od p. Vorlíčka (měl jsem zdroják, ale tenkrát jsem neuměl céčko a potřeboval jsem přidat příkazy, ale tak nejak jsem pochopil co je co, kde psát * a kde ne... :) Nejdelší "fajl" na C64 jsem měl cca 8.5K řádek, ale protože RAM a no $ na RAM extension (ala 60K+ který přesně na toto měl 2 banky - runtime+development) tak to byly 4 soubory, který ani nešly přeložit do RAM (nebylo kam), jen otestovat syntax. Přeložit se muselo na drive, on-the-fly. Problém ale dělali labely, takže jsem si musel upravit turbo asm, aby dokazal na disk vyexportovat labely s prefixem. Takže první soubor přeložit na disk, vyexportovat labely s prefixem na disk, nahrát druhej source, vymazat "linker" část, vložit vyexporotvanou část s labelama. Prelozit na disk, vyexportovat labely, .... Nakonec nahrát v monitoru "screen" s připravenýma "load" příkazama, nahrát vše co je potřeba a spustit :) No, sebemenší změna cca 15 minut aby člověk viděl, jestli to je Ok. A když došli labely (od $9000 je tasm, dolu ukladá kod a od $e000 labely) tak se selej soubor musel "vytisknout na disk" a pak "nahrat na klavesnici" aby se to resetlo (do trvalo tak 20 minut na fajl). On totiz labely jen pridaval a neumel je vymazat, ani vynulvoat misto a podivat se, ze by se tam nekam vesel novej... Proste takova klasika :)
Pak se ale nekde sejit a oslavit release stalo za to...
Takže spojit to na PC do jednoho fajlu byla nirvána :)
P.
Na 1541 disketovce je demo, kde se s pomocí jednoho rezistoru vytvoří videovýstup, takže mechanika samotná generuje i obraz. Hudbu pak tvoří zvuky mechaniky.
Tak to je naprostá pecka! Díky za odkaz!
Mimochodem, co myslíte - když to má sériovou linku a uvnitř 6502, nešel by v ní naprogramovat počítač, ke kterému by se připojil jen sériový terminál?
Teoreticky asi půjde dost, je to počítač bez videovýstupu. A samožejmě omezení ve velikosti RAM, ta je jen 2kB. Ale z důvodu obejití kopírovacích ochran si tam tehdy přibastlovali až 48kB. Tedy teoreticky když by tam člověk vyměnil ROM, rozšířil RAM a nabootoval nějaké své rutiny, může fungovat ledasco.
Pro komunikaci se používá VIA, což je zkratka pro Versatile Interface Adapter, tedy ten bych čekal že půjde také případně přiohnout dle potřeby.
Ale tady jen hádám, já se věnuji spíš tomu HW fyzickému, programování jsem se nikdy moc nevěnoval, jen hrátky s BASICem. Na to vyjmenovat instrukce a jejich účel i ze spánku je odborník autor tohoto článku :-)