IDE disky na 8bit Atari

krupkaj/JaySoft

Když se mi poprvé dostala do rukou disketová jednotka pro osmibity, znamenalo to obrovské usnadnění práce. Odpadlo zdlouhavé a nespolehlivé nahrávání z kazety a navíc přibyla možnost lepším způsobem organizovat data. Jenže postupem času se disketa stává malou. V tu chvíli přichází na řadu harddisk.

V zahraničí je už nějakou dobu rozšířen systém BlackBox. Umožňuje připojení SCSI disků a má i další užitečná rozšíření jako třeba sériový a paralelní port. Tento velmi dobrý systém je současně také poměrně drahý a v našich končinách navíc nesehnatelný. Naštěstí se objevily další možnosti, jak k 8bitovému Atari připojit tentokrát IDE harddisk. Jedním z prvních bylo řešení, které, jak je mi známo, běhalo pouze na modelech XL. Potom bylo dlouho ticho, až se nakonec vynořily dva dostupné způsoby připojení harddisku. První z Holandska a druhý z Polska.

MyIDE

Zřejmě nejjednodušším a taky nejlevnějším způsobem, jak připojit IDE disk k malému Atari, je použití interfacu MyIDE. MyIDE využívá toho, že IDE je vlastně prodlouženou sběrnicí, takže interface pouze chytře konvertuje signály pomocí několika čipů. Jeho nevýhodou ovšem je, že systém komunikuje s IDE zařízením pouze osmibitově, a tím pádem je pro Atari dostupná pouze polovina kapacity disku.

MyIDE je možné buď vestavět přímo do počítače nebo disk připojit ke speciální cartridge s interfacem. Pokud je disk vestavěný dovnitř Atari, doporučuje se vzhledem k odběru disku používat jiný zdroj než originální.

Toto řešení má obrovskou výhodu v rychlosti přenosu dat z disku do počítače. Rychlost je tak velká, že je možné sledovat jednoduché video se zvukem. Kvalita videa je na úrovni 8bit Atari většinou GTIA grafika 9. Na autorově webu si můžete stáhnout pár ukázek.

Takto jednoduché zařízení ale nemůže fungovat bez ovladače. Autor včlenil ovladač přímo do OS Atari, a proto je pro jeho provozování nutné vyměnit ROM za opatchovanou. Bohužel patch OS neřeší vše, a tak se musí navíc patchovat i některé programy. Bez úpravy třeba neběží známý SpartaDOS. Ze stejného důvodu není možné použít ani alternativní systém Q-MEG.

Před použitím se musí disk rozdělit speciální utilitou na oddíly, se kterými se později dá pracovat jako s disky D1 - D8.

Protože maximální velikost partition, kterou je Atari schopno obsloužit, je 16 MB, na větším disku by mohlo zůstat hodně nevyužitého prostoru. Toto zbylé místo se dá využít pro tzv. image mód, kdy lze na harddisk pomoci utility dodávané na systémové disketě nakopírovat binární image z disket. Systém podporuje pouze formáty SD a MD.

Přístup k těmto obrazům je přes 4 místné identifikační číslo. Nedávno se ale objevila utilitka Image Manager, která umí pojmenovávat jednotlivé image a manipulovat s nimi. Pro jména používá místo v posledním image na harddisku.

Programy, které jsou na více disketách, je nutné nahrát tak, aby jednotlivé image byly bezprostředně za sebou. Aktivní image lze během používání přepnout pomocí klávesové kombinace CONTROL-SHIFT-číslo.

Některé programy (nejvíce hry a dema) obchází OS a přistupují na hardware disku přímo. Takové programy s MyIDE bez úpravy nefungují.

SIO2IDE

Na rozdíl od MyIDE, které vsadilo na jednoduchost, se SIO2IDE snaží být co nejvíce kompatibilní se stávajícím hardware.

Interface se připojuje k rozhraní SIO a snaží se emulovat chování disketové jednotky. Ke své činnosti nepotřebuje žádný ovladač v paměti počítače, ale na druhou stranu nenabízí žádné navýšení rychlosti oproti disketové jednotce. Rychlost přenosu je buď standardní 19200 baudů nebo 52000 baudů jako mají disketové jednotky s úpravou US nebo Happy. Interface komunikuje s IDE zařízením plně 16 bitově.

SIO2IDE je postaveno na jednočipovém procesoru Atmel řady AVR s risc architekturou. Verze 3 používá starší, dnes už poměrně špatně sehnatelný ATmega161, nová verze 4 čip ATmega32.

Verze 1 využívala speciální formát disku, takže bylo poměrně složité disk připravit pro používání. Autor naštěstí toto změnil a od verze 3 se data ukládají na disk se souborovým systémem FAT (i FAT32) v obrazech ATR. Tento formát je myslím dostatečně známý nejen z emulátorů. To má velkou výhodu, protože harddisk pro Atari lze jednoduše připravit na PC, třeba i pod obyčejným dosem.

SIO2IDE umí obsloužit i IDE CD mechaniku a rozumí formátu ISO9660. Bohužel ale nepodporuje rozšíření Joliet, a tak jména souborů musí zůstat ve stylu 8+3.

Příprava disku spočívá v nakopírování ATR souborů na harddisk. Jednotlivé image nemusí být jenom v hlavním adresáři disku, ale mohou být i v podadresářích. SIO2IDE je navíc dost pružné, a tak lze používat ATR soubory až do kapacity 16MB. Jak jsem ale zjistil, pro praxi je 16MB disk příliš velký, a tak jako největší používám 8MB.

Bohužel SIO2IDE 3 neumí pracovat s rozfragmentovanými ATR soubory. Tím pádem se musí po přidání nových ATR provést tzv. defragmentace. Naštěstí v balíku SIO2IDE je MS-DOS utilitka, která proleze harddisk a otestuje každý ATR soubor.

Do každého adresáře, který obsahuje ATR soubory, se ještě musí přidat konfigurační soubor sio2ide.cfg. Tento soubor si SIO2IDE při startu načte a přiřadí podle něj jednotlivým DX: zařízením ATR soubory. Formát sio2ide.cfg je velice jednoduchý.
Tady je malý příklad:

D1 = MDDOS453
D2 = HRY1
D5 = FDISK

Na disku FDISK z 3. řádku je speciální Atari program, který umí pomocí jednoduchého menu prolézat strukturou disku a umožní připojovat jednotlivé image na DX: zařízení. Uživatelé SpartaDOSu mohou také používat prográmek pro příkazovou řádku.

Z předchozího odstavce vyplývá, že absence programu fdisk znemožňuje provedení konfigurace. Co tedy můžeme dělat, pokud na žádném z disků není fdisk přítomen? Fdisk nepotřebuje mít spuštěný DOS, aby dokázal nakonfigurovat adresář a uložit do něj konfiguraci. Může tedy být spouštěn třeba z cartridge. Lze také mít v každém adresáři jeden ATR soubor s fdisk programem a přistupovat k němu z Q-MEGu. Pokud je nejhůř, lze přepínačem na SIO2IDE vyřadit nastavené ATR na D1 a natáhnout fdisk z diskety.

Nastavení aktuálního adresáře, ze kterého se berou ATR soubory, si SIO2IDE ukládá do flash paměti použitého jednočipového procesoru, a tak při příštím zapnututí ví, odkud má ATRka číst.

Další "vychytávkou" je přepínač D1 <-> D2. Pokud program (třeba hra) je na dvou disketách, přiřadí se postupně obě na D1 a D2. Když program požádá o vložení diskety 2, jednoduše přepneme přepínač, tím se prohodí D1 s D2 a program může pokračovat.

Společně se SIO2IDE se mi velmi osvědčilo používání systému Q-MEG v poslední verzi 4.4, který obslouží až 8 disků. Kromě možnosti bootování z kteréhokoli disku D1 - D8, umí také přistupovat na disky s velkou kapacitou a spouštět z nich programy (včetně basicovských). Nový Q-MEG zvládá i adresářovou strukturu vytvořenou systémem MyDOS.

Verze SIO2IDE 4 má skvělou novinku. Umí se totiž chovat jako USB mass storage. Tím se stává příprava disku ještě jednodušší. Stačí připojit přes USB kabel k PC, přepnout zařízení ze SIO2IDE na USB2IDE a "nasypat" atr soubory. Odpadá zdlouhavé vytahování disku a připojování do PC na jeho IDE.

Kromě USB portu verze 4 rozumí dlouhým názvům ve stylu VFAT a vypořádá se s rozfragmentovanými soubory. Přístup k datům ve fragmentovaném atr souboru je ale pomalejší.

Compact Flash

Jak s MyIDE, tak se SIO2IDE by teoreticky mělo jít používat Compact Flash karty. CF karty by totiž v režimu True IDE měly být kompatibilní s IDE disky na sektorové úrovni. Jejich výhoda je kromě velikosti také v nízké energetické náročnosti.

S MyIDE je odzkoušeno, že CF karty fungují. Na SIO2IDE v 3 jsem měl problémy s kartami 128MB. Nepodařilo se mi na ně nahrát data tak, aby byly pro SIO2IDE dostupné. Nedávno se ale ukázalo, že na vině je bug ve firmwaru. Autor v březnu vydal novou verzi 4.4, která by už s Compact Flash kartami neměla mít problémy.

krupkaj/JaySoft

linky:
MyIDE
http://www.mr-atari.com/

MyIDE 3rd party software
http://www.mr-atari.com/hardware-3rd.htm

SIO2IDE
http://atariarea.histeria.pl/sio2ide/

SIO2IDE SpartaDOS utilities
http://trub.sys.net.pl/download/sdx/