Říj 172013
 

Na Bytefest jsem si vzal Gamabook a diviDE s flash kartou, která se připojuje už rovnou do desky. Takový 3,5 harddsik i s kšandou. Mimochodem, nebyl to dobrý nápad. Taková karta nejde rozumně připojit k notebooku a cokoliv s ní dělat. A to jsem právě potřeboval.

Potřeboval jsem si na ní něco nahrát, protože v divIDE už jsem měl ESXDOS 8.5, ale soubory na kartě chyběly. Nakonec jsem si půjčil od Factora6 redukci CF-IDE a něco spáchal, ale nebylo to ono. Nakonec jsem se rozhodl, že budu dělat v emulátoru FUSE. Potřeboval jsem HDF image. Měl jsem zálohu celého oddílu s MDOS3 disketami a použil jsem utilitu RAW2HDF. Fungovalo to, ale pořád to nebylo ono.

Nabootoval jsem MDOS3 v pořádku. Našel jsem první disketu (bootovací) v pořádku. Ale při pokusu o jakoukoliv diskovou operaci, například LOAD *, CAT, RUN to pořád nesmyslně hlásilo chybu „Drive is not ready“. Sakra proč?

Tedy jsem strávil několik hodin bádáním, trasováním a prohlížením komentovaných výpisů a výpisů překladu až mi to došlo: raw2hdf mi totiž vytvořil virtuální disk, který nemá oddíly a samotná data tedy začínají hned na sektoru číslo 0. A to je ten problém. Když se totiž podíváme na popis služeb MDOS3, tak tam uvidíme na konci tabulku MAPTAB, která definuje použití drivů a,b,c,d a ve kterém sektoru začíná virtuální disketa. A když tam jsou nuly, nebyla vložena virtuální disketa a tedy správně má hlásil chybu „Drive is not ready“. A právě v mém případě začíná první disketa v sektoru 0.

Jak je tedy správné použití RAW2HDF? Je třeba si udělat obraz celé CF karty:

dd if=/dev/sdb of=image_of_cf (/dev/sdb nahraďte aktuálním zařízením čtečky CF)
a pak už jen
raw2hdf image_of_code image.hdf

A máme funkční obraz HDF pro emulátor fuse.

Je nám líto, ale formulář pro přidávání komentářů je momentálně uzavřen.