Vlákno názorů k článku Sériová sběrnice osmibitových počítačů Atari SIO: předchůdce USB od MilanV - Zarazil mě ten nepoměr mezi obrovským počtem potřebných...

  • 20. 7. 2026 1:38

    MilanV

    Zarazil mě ten nepoměr mezi obrovským počtem potřebných pinů a nízkým počtem připojitelných zařízení. Obzvlášť když tady v článku je zmíněný ještě rozdíl mezi jejich teoretickým a prakticky možným počtem. Ale když jsem se o tom snažil něco zjistit, tak jsem našel akorát zmínku v návodu k disketové jednotce - a to, že běžné DOSy ani aplikace nepočítaly s tak vysoko položeným LOMEM, který by byl nutný kvůli bufferům pro více zařízení. Takže HW omezení v té sériové sběrnici tak drastické nebylo a ona sama by to po HW stránce zvládla?

    Nějak se mi to nezdá - moderní cartridge, pokud vím, běžně emulují 8 disketových mechanik, takže systém s nimi pracovat umět musí. Podobně když jsem měl už tehdy virtuální disketové mechaniky v rozšířené RAM. Jak to tedy je?

    P.S.: Na svou otázku "proč nepoužili I2C nebo SPI, aspoň by to byl standard" jsem si odpověděl sám - s překvapením jsem zjistil, že obě sběrnice jsou i ideově mladší než tyto počítače, natož jejich prosazení v praxi... Musím uznat, že v tom jsem měl teda naprosto špatný odhad :)

  • 20. 7. 2026 12:15

    cblusb

    HW omezení celkem odpovídala dobovému použití.

    Řekněme, že v maximalistické (ale stále zcela realistické variantě) by měl uživatel dvě disketové jednotky, tiskárnu, modem a magnetofon. Taková sestava na drobný business v první polovině 80. let - AtariWriter, SynCalc, SynFile, PrintShop a nějaký program na obsluhu modemu. Související les kabelů a nároky na prostor nebudeme uvažovat.

    Pro SIO hardware a obsluhující rutiny firmware počítače naprosto a s rezervou zvládnutelné. Softwaru na vyšší úrovni (DOS, aplikace) by trochu docházel dech, protože do 48 KB RAM se pak musel vejít DOS, jeden aplikační program, uživatelská data a ovladače zařízení D1:, D2:, P: a R:.

    Samozřejmě firmware počítače dokázalo pracovat s osmi mechanikami na úrovni SIO. Už proto, že vždy v jednom okamžiku obsluhuje pouze jednu. Na úrovni DOSu už to bylo složitější, protože takový DOS musí udržovat informace o několika otevřených souborech najednou a soubory mohou být na disketách v různých mechanikách. Obslužné datové struktury, zejména vyrovnávací paměti a pomocné datové bloky by pak trochu nabobtnaly.

  • 22. 7. 2026 23:03

    MilanV

    Já myslím, že problém byl asi hlavně v tom, že kód na osmibitech nebyl nezávislý na umístění v RAM a nebyly žádné jednotky MMU. Takže když nějaká hra nebo aplikace začínaly svůj kód na adrese, která byla pod vaším osobním LOMEM, tak prostě smůla, ne?
    Proto bylo ustálené, co je tak přibližně zvykem jako maximum, a na takto vysoký LOMEM se spoléhalo, že ho nikdo nepřeleze. A to i když by teoreticky i s vyšším LOMEM bylo ještě pořád dost místa na danou hru nebo program.

  • 24. 7. 2026 14:41

    cblusb

    Jediný DOS, který podporoval relokovatelné binárky byl SpartaDOS (a jeho deriváty). Ten relokovatelný formát binárek ale používal SpartaDOS spíš sám pro sebe, zejména pro svoje vlastní rezidentní programy (omezení vzájemných konfliktů)

    O tom, že by někdo dodával obchodní software nebo hry v relokovatelném formátu nevím.

    Procesor 6502 byl bohužel příliš jednoduchý, neměl nic na způsob bázových (jako System/360) nebo segmentových (jako 8086) nebo An (jako 68000) registrů.

    Napsat kód pro 6502, který by běžel kdekoliv v paměti je těžké. Nejde ani tak o instrukce - absolutním skokům se dá s trochou snahy vyhnout - jako spíš o přístup k datům.

    Jak bojovat s MEMLO - https://www.wudsn.com/index.php/productions-atari800/tutorials/tips

    24. 7. 2026, 14:42 editováno autorem komentáře