DYSKIETKA NA DYSKU W jednym z poprzednich numerów naszego miesiëcznika pisaîem o róûnego rodzaju programach, sîuûâcych do îâczenia i kompresji wielu plików oraz zgrywania ich w formie jednego archiwum. Tym razem proponujë przyjrzeê sië programom, sîuûâcym do kompresji i zgrywania do plików caîych dyskietek. Jarosîaw Horodecki Programy te powstaîy zapewne gîównie z myôlâ o prostym przenoszeniu, zapisanych na dyskietkach, danych, które trudno jest spakowaê za pomocâ zwykîych archiwizerów. Z pewnoôciâ w znacznym stopniu uîatwiîy one takûe skîadowanie na innych niû dyskietka noônikach wielu gotowych do natychmiastowego rozpakowania i uûycia programów, uruchamialnych jedynie z dyskietki. Pliki stworzone za pomocâ archiwizerów dyskowych znajdziemy wiëc na przykîad na pîytach kompaktowych, czy teû w BBS-ach, gdzie stanowiâ najwygodniejszy sposób przechowywania caîych dysków. Przejdúmy jednak do konkretów. Jakie wiëc programy, kompresujâce dysk, znajdziemy w bibliotece amigowego oprogramowania? Trzeba przyznaê, ûe nie ma ich zbyt wiele. Przedstawië wiëc chyba wszystkie najwaûniejsze pozycje. Niewâtpliwie niekwestionowanym liderem i obecnie jedynym realnie istniejâcym na rynku programem jest doskonaîy DiskMasher. Ze wzglëdu na duûâ liczbë róûnych dodatkowych wersji, pokazujâcych sië na amigowskim rynku, trudno jest jednoznacznie okreôliê, która z wersji DiskMashera jest w stu procentach prawdziwa (pochodzâca od producenta) i najnowsza. Niewâtpliwie jednak jest to wersja o numerze 2.0x, gdzie x jest dowolnâ liczbâ od 1 do 9. Bardzo popularna jest jednak w dalszym ciâgu wersja 1.11 tegoû programu. Przyznam, ûe uûywana przeze mnie do dziô. DiskMasher ukazywaî sië zawsze w dwóch wersjach. Na poczâtku jako command-line, czyli wersja przeznaczona do uûytku z poziomu CLI lub Shella, moûliwa teû do prostego wykorzystania w programach rodzaju DirectoryOpus czy DiskMaster. Jako druga ukazywaîa sië natomiast wersja dla Workbencha, wyposaûona od numeru 1.53 w ten sam interfejs uûytkownika, który zmieniî sië diametralnie dopiero wraz z wydaniem wersji 2.0. Najpierw przyjrzyjmy sië dokîadniej obsîudze DiskMashera z poziomu CLI/Shella. Niewâtpliwie wykonywanie podstawowych czynnoôci, jak pakowanie i rozpakowywanie dysków nie jest trudne. Wszelkie rozkazy przekazywane sâ DiskMasherowi za pomocâ odpowiednich sîów kluczowych i parametrów, jakie wpisujemy zaraz za komendâ. Zacznijmy wiëc od rozpakowania dysku, spakowanego DiskMasherem. Zakîadamy, ûe dysk przeznaczony do spakowania, znajduje sië w napëdzie DF0:. Z poziomu AmigaDOS-u wydajemy wiëc nastëpujâcâ komendë: dms read plik from df0: cmode heavy2 low 0 high 79 Rozkaz READ to oczywiôcie ustawienie trybu dziaîania DiskMashera tak, aby odczytywaî dane z dyskietki. Po sîowie FROM umieszczona jest nazwa urzâdzenia, z którego majâ byê czytane dane. Warto zwróciê uwagë, ûe nie musi to byê stacja dysków. Dane moûna takûe czytaê z dowolnego innego urzâdzenia, zapisujâcego dane w formie w stu procentach zgodnej z dyskietkâ (na przykîad RAD:). Kolejny fragment, czyli sîowo CMODE, to sposób kompresji, jaki ma byê uûyty. Do wyboru sâ cztery sposoby: NONE, SIMPLE, HEAVY1 oraz HEAVY2. Oczywiôcie kaûda z tych metod ma swojâ okreôlonâ efektywnoôê, a co za tym idzie, równieû czas kompresji. Warto jednak poôwiëciê nieco wiëcej czasu na kaûdâ dyskietkë i skorzystaê z kompresji HEAVY2. Pozostaîe dwie opcje, czyli LOW oraz HIGH, to po prostu okreôlenie pierwszej i ostatniej ôcieûki, dziëki czemu moûna wyznaczyê jedynie dowolny fragment dyskietki, przeznaczonej do spakowania. Pominiëcie tych parametrów spowoduje, ûe nastâpi spakowanie caîej dyskietki. Drugâ równie waûnâ co pakowanie operacjâ jest oczywiôcie rozpakowanie wczeôniej przygotowanego pliku na dyskietkë: dms write to df0: notext nopause Pierwszy parametr to oczywiôcie sîowo kluczowe, przeîâczajâce DiskMasher w tryb zapisu danych z pliku na dysk, po opcji TO wpisujemy natomiast nazwë urzâdzenia, na jakie rozpakujemy plik. Dwie ostatnie opcje, czyli NOTEXT oraz NOPAUSE, powodujâ kolejno wyîâczanie pokazywania dopisanych do archiwum plików tekstowych oraz wyîâczenie oczekiwania na potwierdzenie po wyôwietleniu zawartoôci bootblocku lub wspomnianych plików tekstowych. Przy opcjach zapisu i odczytu warto jeszcze wspomnieê o moûliwoôci kodowania danych za pomocâ hasîa. Sîuûâ do tego komendy ENCRYPT oraz DECRYPT, uûywane odpowiednio podczas czytania dysku i nagrywania na dysk. Oczywiôcie po tych sîowach kluczowych naleûy podaê hasîo, wedîug którego dane majâ byê zakodowane. DiskMasher potrafi oczywiôcie robiê jeszcze kilka innych rzeczy. Za pomocâ rozkazu REPACK moûna wiëc przepakowaê gotowe juû archiwum, na przykîad zmieniajâc stopieï kompresji, opcja VIEW umoûliwia wyôwietlenie informacji o archiwum, natomiast TEST sprawdza poprawnoôê danych w archiwum, szybko przeglâdajâc caîy plik. Nowy DiskMasher jest zasadniczo bardzo podobny do omówionej wersji. Jest jednak kilka udoskonaleï niewâtpliwie znacznie zwiëkszajâcych uniwersalnoôê programu. Nowy DMS potrafi wiëc pakowaê takûe dyski o wysokiej gëstoôci zapisu (high density), a nawet dyski w formatach innych niû AmigaDOS (na przykîad PC). Standardowo wbudowana jest takûe weryfikacja danych, zapisywanych na dyskietce. Wadâ nowego DiskMashera jest natomiast nieco powolniejsze dziaîanie i, o dziwo, nieco mniejszy stopieï kompresji. DiskMasher, jak juû wspomniaîem, jest mimo swoich wad wîaôciwie jedynym liczâcym sië obecnie programem. Warto jednak wspomnieê o kilku innych kompresorach dysków. Byê moûe dla kogoô któryô z nich okaûe sië ciekawszy i bardziej przydatny niû niekwestionowany lider -- DiskMasher. Do pewnego czasu bardzo znanym programem byî takûe niewâtpliwie Zoom. Trudno powiedzieê, co sprawiîo, ûe program ten nie przyjâî sië jednak na amigowskim poletku. Moûe powodem byî brak jego nowych wersji. Jak na rok 1992 byî to jednak program zupeînie przyzwoity. Przede wszystkim jego obsîuga odbywaîa sië z poziomu elegancko wykonanego GUI. Takiego standardowego interface'u uûytkownika DiskMasher nie doczekaî sië wîaôciwie po dziô dzieï. Z poziomu czytelnych gadûetów, rozmieszczonych w otwieranym przez Zooma niewielkim okienku, mamy dostëp do wszystkich jego funkcji. Moûna wiëc dyski pakowaê i rozpakowywaê (START COMPRESSION oraz START DECOMPRESSION), sprawdzaê zawartoôê archiwum (START FILE CHECK) lub wyôwietlaê jâ na ekranie (START FILE VIEW). Jest to wiëc wszystko to, co ma DMS, moûe z wyjâtkiem przepakowania danych. Zoom ma jednak tylko jeden tryb pakowania. Na powolnych komputerach, niestety, nie za szybki. Nie ma chyba sensu bardziej szczegóîowe omawianie tego programu. Warto wspomnieê, ûe moûliwe jest równieû korzystanie z niego z poziomu AmigaDOS-u. Trzeba teû chyba nadmieniê, ûe w odróûnieniu od DMS-a, Zoom od samego poczâtku wyposaûony byî w opcjë weryfikacji danych, zapisywanych na dysk. Cóû, mimo to program ten umarî ômierciâ naturalnâ. Kolejny programik, na którego archiwa moûna sië jeszcze gdzieniegdzie natknâê, to Warp. Przez doôê dîugi okres jednâ z zalet tego programu byîo to, ûe umoûliwiaî on pakowanie równieû dysków sformatowanych na innych platformach, w tym równieû PC. Za wadë z pewnoôciâ naleûy uznaê niezbyt duûâ prëdkoôê pakowania. Rozpakowanie danych przebiega natomiast bardzo szybko, zwîaszcza gdy korzystamy z dodatkowego programiku, znajdujâcego sië w pakiecie, nazwanego Unwarp. Przejdúmy jednak do konkretów. Sama obsîuga programu jest bardzo prosta, pod pewnymi wzglëdami podobna do DiskMashera. Aby uruchomiê program Warp w trybie zapisu lub odczytu danych z dyskietki, wystarczy posîuûyê sië odpowiednim sîowem kluczowym, podanym jako parametr. Oto prosty przykîad: warp read 0 79 nazwa_pliku Kilka sîów wyjaônienia. Znaczenie sîowa READ jest chyba oczywiste, kolejne dwie liczby natomiast to po prostu pierwsza i ostatnia ôcieûka fragmentu dyskietki, jaki chcemy spakowaê. Rozpakowanie dyskietki za pomocâ Warpa jest chyba na tyle proste, ûe nie muszë tutaj nic wyjaôniaê. Wystarczy zamiast parametru READ podaê sîowo WRITE oraz pominâê numery ôcieûek. To juû wszystko, co Warp potrafi. Nie ma, niestety, opcji testujâcej archiwum, nie ma takûe moûliwoôci zajrzenia do jego wnëtrza. Szkoda. Warto jednak wspomnieê jeszcze o programiku Unwarp, który umoûliwia nieco sprawniejsze rozpakowywanie archiwum. Jego zalety to przede wszystkim szybkoôê, moûliwoôê rozpakowania tylko kilku ôcieûek ze wskazanego archiwum, a takûe moûliwoôê skorzystania z dowolnego urzâdzenia o strukturze dyskietki (Warp moûe korzystaê tylko z napëdu o numerze 0). Oto przykîad: unwarp nazwa_pliku to df0: low 10 high 45 noval I krótkie jego omówienie. Pierwszy parametr jest chyba doôê prosty do rozszyfrowania. Kolejne dwa, czyli LOW oraz HIGH, równieû nie sprawiâ trudnoôci uwaûnemu Czytelnikowi. Ostatnie sîowo natomiast, czyli NOVAL, to opcja umoûliwiajâca wyîâczanie "odômiecania" zawartoôci dyskietki po jej rozpakowaniu. Opcja ta w niektórych specyficznych wypadkach jest wrëcz niezbëdna. Pozostaîe programiki, o których chciaîbym jeszcze wspomnieê, nie sâ obecnie zbyt czësto uûywane, nigdy zresztâ nie zdobyîy wiëkszej popularnoôci. Przy okazji omawiania kompresorów dyskowych trzeba jednak o nich wspomnieê. Pierwszy z tych maîo znanych to DiskImploder, w skrócie nazywany Dimp. Razem z wersjâ przeznaczonâ do uûytku z poziomu CLI lub Shella rozpowszechniana jest takûe wersja dla Workbencha, nazwana DimpWin. Warto tutaj zauwaûyê, ûe o ile z poziomu Workbencha program ten jest wrëcz dziecinnie prosty w obsîudze, o tyle jego obsîuga z poziomu CLI jest niezbyt wygodna. Oto przykîad rozkazu, czytajâcego dane z dysku w wersji commandline: dimp READ df0: 0-40,50 archiwum -M7 -NB -X Krótkie wytîumaczenie. Pierwsze dwa parametry sâ chyba oczywiste. Wâtpliwoôci moûe natomiast budziê parametr trzeci, czyli ôcieûki przeznaczone do spakowania. Otóû Dimp ma moûliwoôê pakowania jedynie okreôlonych ôcieûek, niekoniecznie znajdujâcych sië w jednym bloku. Wystarczy oddzielajâc poszczególne pozycje za pomocâ przecinka podaê zakresy ôcieûek oraz ewentualnie ich numery, przeznaczone do spakowania. Sîowo ARCHIWUM to oczywiôcie nazwa pliku i koïcowe trzy opcje to kolejno: stopieï kompresji (od 0 do 7), wyîâczenie czyszczenia nie uûywanych bloków (-NB) oraz stworzenie samorozpakowujâcego sië, uruchamialnego, archiwum (-X). Moûna równieû wyîâczyê kompresjë, korzystajâc z opcji -NC. O wiele prostszâ skîadnië ma rozkaz rozpakowujâcy: dimp WRITE archiwum DF0: Nie wymaga chyba dodatkowych wyjaônieï. Dimp ma takûe moûliwoôê wyôwietlenia informacji o archiwum, o ile skorzystamy z parametru INFO. Informacje o samym programie wyôwietla natomiast parametr ABOUT. To chyba wszystko, co moûna powiedzieê o Dimpie. Pozostaje jeszcze oczywiôcie wersja dla Workbencha, jest ona jednak tak prosta w obsîudze, ûe nie wymaga chyba podawania jakichkolwiek instrukcji. Nastëpny programik to LhWarp. Program ten dostëpny jest tylko w wersji dla CLI/Shella, obsîuga jego jest jednak bardzo podobna do innych programów, omówionych w tym tekôcie. Najpierw jak zwykle pakujemy dysk: lhWarp read 0 archiwum 0 79 Wyjaônienia chyba nie sâ potrzebne. Mamy tu po prostu kolejno: realizowanâ funkcjë, numer urzâdzenia, nazwë archiwum oraz ôcieûkë poczâtkowâ i koïcowâ pakowanego fragmentu dyskietki. Dostëpnych jest jednak kilka dodatkowych opcji, o których warto wspomnieê. Moûna wiëc skorzystaê z innego urzâdzenia niû DFx: (np.: -dRAD:), ustawiê jeden z kilku trybów kompresji: szybka (-q), ôciskanie (-s), kompresja (-c) i obie metody (-b). Moûna teû wyîâczyê wyszukiwanie zajëtych sektorów (-m) oraz zrezygnowaê z oczekiwania na klawisz [Return] (-n). Rozpakowanie pliku na dyskietkë jest równie îatwe. Wystarczy parametr READ zastâpiê parametrem WRITE. Oczywiôcie nie ma wtedy sensu stosowanie opcji dotyczâcych pakowania. Ostatni juû program, jaki przedstawië w tym tekôcie, to Zap. Jest to swoista ciekawostka. Niewâtpliwie jego zaletâ jest îatwoôê obsîugi, która moûliwa jest wprawdzie tylko z poziomu CLI lub Shella, jednak nie wymaga specjalnego wysiîku. Dwie komendy: zap r archiwum Zap w archiwum sîuûâ odpowiednio do spakowania oraz rozpakowania pliku. Wspomniana îatwoôê obsîugi wydaje sië jednak byê jedynâ zaletâ tego programu. Dlaczego? Wystarczy spojrzeê na zaîâczonâ tabelkë. To juû wszystkie programy, jakie chciaîem omówiê w tym tekôcie. Moûe niektórzy zauwaûâ jeszcze dwa dodatkowe programiki, znajdujâce sië w tabelce. Z pewnoôciâ wkrótce i one zostanâ doôê szczegóîowo omówione w osobnym artykule, który niewâtpliwie warto im poôwiëciê.