Jak uratowałem dysk Amigi
Się jakoś tak poskładało, że wpadła mi w łapki Amiga – ta sama Amiga na której pisałem swój pierwszy w życiu program za kasę (w 1995). Z zainstalowanym ciągle tym programem.
Problem tylko taki, że umarła – szary ekran, nic nie startuje. Miałem spróbować odzyskać z niej jakieś dane. Wyszło na to, że padł dysk i jakiś znachor przede mną go leczył. No a ponieważ nie ma innych systemów to znachor potraktował dysk jakimś Windzianym naprawiaczem. Jak się łatwo domyśleć – nie naprawił. Za to popsuł tablicę partycji 🙂
Po odpięciu dysku Amiga się budzi – więc sam komputer dobry.
Dysk
Dysku to nie widać nigdzie – ani pod OS X, ani pod Windą, ani pod Linuksem.
Mogiła.
Gógl, gógl, gógl.
Gdzieś na którymś Amigowym forum znalazłem info, że czasem się potrafi zastać głowica. Metoda naprawy dosyć prosta: zaraz po podłączeniu zasilania, jak dysk wchodzi na obroty, dać mu klapsa.
No to dałem. Winda nie widzi, OS X nie widzi, Linuks zobaczył 🙂 Oczywiście BIOS się na czerwono pultał, dysk kaszlał ale dał się zobaczyć jako /dev/sda 🙂
Ruch pierwszy, podstawowy i najważniejszy – zrobić obraz nędzy i rozpaczy (czyli tego co zostało):
dd if=/dev/sda of=amiga_zrzut_orig.img bs=512
Zrzucił się. Oczywiście do pracy robimy sobie kopię – żeby zawsze móc zacząć od początku:
bash-3.2$ cp amiga_zrzut_orig.img amiga_roboczy.img
Emulator.
Używam FS-UAE. Żeby mieć jakiś działający konfig Amigi i kilka użytków zainstalowałem Workbench z http://classicwb.abime.net.
Do skonfigurowanej Amigi podpiąłem moje .img jako dysk_1, dodałem w ustawieniach:
hard_drive_1_type = rdb
Amisia wstała, dysk podpięty ale oczywiście nieużywalny.
HDToolBox. Nie nie widzi. Gógl, gógl.
No bo trzeba HTToolBoxowi zmienić urządzenie. Prawy na ikonce, Info
i w zakładce Tooltypes
zamieniamy SCSI_DEVICE_NAME=scsi.device
na SCSI_DEVICE_NAME=uaehf.device
.
No to HDToolBox zobaczył dyski.
Widzimy tu dwa dyski. Dysk 0 to dysk z którego wystartowałem emulator – czyli 'system.hdf’. Dysk 1 to mój pacjent. Wybieram go i klikam Change Drive Type
Tu nie widać żadnych typów napędów, daję więc Define New...
Tu kliknąłem Read Configuration – program odczytał dane dysku. Ważne są: Cylinders (827)
i Blocks per Track (2016)
. Nie chcę wprowadzać żadnych zmian na dysku, żeby nic nie popsuć, więc klikam Cancel, Cancel i wychodzę z HDToolBoxa bez zapisywania zmian.
Dobra, teraz potrzebny jakiś czarodziej do wyczajenia partycji
Wykrywanie partycji
Oj, ile ja tego przewaliłem – QuaterbackTools, DiskSalv, RDB-Salv i jeszcze kilka innych.
Najlepiej poradził sobie RDBrecov
– do ściągnięcia z AmiNetu.
podajemy uaehf.device
jako urządzenie, numer urządzenia, rozmiar sektora (512 w Amidze) i odczytane przez HDToolBox wartości. Czyli u mnie:
RDBrecov uaehf.device 1 s 512 c 827 cs 2016
Pomielił, pomielił i wypuł:
Czyli pierwsza partycja nazywa się „Workbench” i zaczyna się od cylindra 1, druga nazywa się „Dane” i zaczyna od cylindra 22, a trzecia nazywa się „Work” i zaczyna od 531. Jupi – jakiś krok do przodu.
Przywracanie partycji
Odpalam HDToolbox, i teraz już na pewniaka ustawiam urządzenie i przechodzę do podziału na partycje.
Partycja Work i Dane dają się założyć bez problemu. Gorzej z Workbench – wg RDBrecov powinna się zaczynać od cylindra 1, a HDToolBox nie pozwala ustawić początkowego cylindra mniejszego od 2. Zostawiam więc 2 i zobaczymy. Ok
, Save Changes to Drive
, Exit
i Continue
. Amiga się uruchamia od nowa i proszę:
Powskakiwały powyciągane ikonki, widać dyski Work i Dane. Na dyskach są pliki, wszystko z grubsza działa. Niestety Workbench ciągle jest NDOS, nie ma sekwencji startowej i nie ma polskich znaków i klawiatury. I wcale nie pamiętam jak te polskie znaki zrobić 🙂
Nic to – najważniejsze dane odzyskane – więc szybciorem zrobiłem kopię pliku .img już z dobrymi dwiema partycjami. Potem było trochę walki z różnymi programami ratującymi ale żaden nie dawał rady odzyskać partycji Workbench. Dałem sobie spokój na dwa dni.
Jazda po bandzie.
Nie dawał mi spać ten Workbench. Wszystkie programy wykrywające partycje znajdowały go od cylindra 1 ale wredny HDToolBox nie dawał ustawić nic mniej – uparł się na 2 i już.
Ponieważ mam kopię obrazu dysku to możliwe są różne ryzykowne sztuczki. Więc po dwóch dniach wymodziłem taką figurę:
Odpaliłem Linuksa. Odpaliłem parted
– taki stary ale jary program do zarządzania dyskami.
No i śmy se pogadali jak linuksiarz z linuksiarzem:
artur@kocur:~/Pulpit$ parted ~/Pulpit/amiga_zrzut_roboczy.img UWAGA: Nie jestes superuzytkownikiem. Uwazaj na uprawnienia. GNU Parted 3.2 Użycie /home/artur/Pulpit/amiga_zrzut_roboczy.img Witamy w GNU Partedzie! Liste polecen mozna zobaczyc po napisaniu 'help'. (parted) print Pralloc = 0, Reserved = 2, blocksize = 1, root block at 24192 Pralloc = 0, Reserved = 2, blocksize = 1, root block at 557424 Pralloc = 0, Reserved = 2, blocksize = 1, root block at 1368864 Model: (file) Dysk /home/artur/Pulpit/amiga_zrzut_roboczy.img: 854MB Rozmiar sektora (logiczny/fizyczny): 512B/512B Tablica partycji: amiga Flagi dysku: Numer Poczatek Koniec Rozmiar System plikow Nazwa Flaga 1 2064kB 22,7MB 20,6MB Workbench ładowalna 2 22,7MB 548MB 525MB affs1 Dane 3 548MB 854MB 306MB affs1 Work (parted)
Czyli zobaczył obrazek, rozpoznał rozmiar sektora, rozpoznał Amigową tablicę partycji.
Początek pierwszej partycji widzi pod 2064kB. Se wymyśliłem, że skoro to jest 2 cylinder, to pierwszy cylinder będzie gdzieś w połowie – czyli zgaduję 1032kB.
No to zobaczymy. Wywalam pierwszą partycję:
(parted) rm 1 (parted) print Model: (file) Dysk /home/artur/Pulpit/amiga_zrzut_roboczy.img: 854MB Rozmiar sektora (logiczny/fizyczny): 512B/512B Tablica partycji: amiga Flagi dysku: Numer Poczatek Koniec Rozmiar System plików Nazwa Flaga 2 22,7MB 548MB 525MB affs1 Dane 3 548MB 854MB 306MB affs1 Work (parted)
Wywalona. To teraz zrobię partycję od 1032kB i zobaczę co się stanie:
(parted) mkpart primary affs1 1032kB 21.7MB Ostrzeżenie: Wybrano partycje od 1032kB do 21,0MB (sektorów: 2015..41015). Najblizsza z jaka Parted moze sobie poradzic jest od 1032kB do 20,6MB (sektorów: 2016..40319). Czy jest to do przyjecia? Tak/Yes/Nie/No? Nie (parted) mkpart primary affs1 1032kB 22.7MB Ostrzeżenie: Wybrano partycje od 1032kB do 22,0MB (sektorów: 2015..42968). Najblizsza z jaka Parted moze sobie poradzic jest od 1032kB do 21,7MB (sektorów: 2016..42335). Czy jest to do przyjecia? Tak/Yes/Nie/No? Tak Ostrzeżenie: Partycja wynikowa nie jest wyrownana wlasciwie dla najlepszej wydajnosci. Zignoruj/Ignore/Poniechaj/Cancel? Z (parted) print Model: (file) Dysk /home/artur/Pulpit/amiga_zrzut_roboczy.img: 854MB Rozmiar sektora (logiczny/fizyczny): 512B/512B Tablica partycji: amiga Flagi dysku: Numer Poczatek Koniec Rozmiar System plików Nazwa Flaga 1 1032kB 21,7MB 20,6MB affs1 primary 2 22,7MB 548MB 525MB affs1 Dane 3 548MB 854MB 306MB affs1 Work (parted)
Cośtam na czuja założyłem i na spisie partycji wygląda to całkiem nieźle.
Trochę kosmetyki – zmiana nazwy i flaga bootowania:
(parted) name 1 Workbench (parted) set 1 boot Nowy stan? [wlaczone]/on/wylaczone/off? on (parted) print Model: (file) Dysk /home/artur/Pulpit/amiga_zrzut_roboczy.img: 854MB Rozmiar sektora (logiczny/fizyczny): 512B/512B Tablica partycji: amiga Flagi dysku: Numer Poczatek Koniec Rozmiar System plików Nazwa Flaga 1 1032kB 21,7MB 20,6MB affs1 Workbench ładowalna 2 22,7MB 548MB 525MB affs1 Dane 3 548MB 854MB 306MB affs1 Work (parted)
Śliczności.
To z powrotem do FS-UAE
:
Jak widać – nic nie widać. Wrr!
No ale spokojnie – zobaczmy co widzi HDToolBox.
Cylinder początkowy dobry – 1 ale wielkość partycji zła i zły system plików.
Poprawiamy co trzeba i restart….
jest 🙂
No to odpinam emulatorowy dysk i odpalam Amigę tylko z odzyskanego dysku:
Ta dam 🙂 Działa. Polskie literki też są.
No i są moje programy:
10 marca 1995. Pierwszy projekt programistyczny za kasę. Wcześniej była tylko kasa za artykuły do magazynu „Amiga”. Żeby było śmieszniej to ten program księgowy był w ciągłym użytku od 1995 do 2008 roku. Nie pamiętam ile mi zapłacili, ale jak na program działający bez dotykania przez 13 lat to pewnie za mało 🙂
Jazda po bandzie – part two
Skoro się ma więcej szczęścia niż rozumu to trzeba cisnąć, cisnąć i cisnąć.
Wymyśliłem nową zabawę. Przewalę obraz dysku na prawdziwy (ten rozwalony) dysk i wsadzę do Amigi. No to znowu Linux i:
dd if=amiga_odzyskana.img of=/dev/sda bs=512
Tralala! Zrobiłem działa, startuje, piękniej się nie dało.
Jestem dumnym z siebie zuchem 🙂
A jaki z tego wszystkiego morał?
Otóż drogie dzieci: fajne są MacBooki, iMaki, unibody, allinone i wogóle. Śliczne, dizajnerskie i ściśnięte do granic przyzwoitości. Mam, używam i lubię.
Ale w obejściu prawdziwego komputerowca musi być jeden komputer który ma IDE, kupę starych i nowych złącz i kupę miejsca w środku. I Linuksa. Jak to mówił Szakal: „Myślę, że bez pomocy Linuksa nie dałbym rady”.
Dobranoc.
Najnowsze komentarze