Amiga DOS cz.3

Apostrof pozwala na umieszczenie w łańcuchach alfanumerycznych znaków zastrzeżonych dla wzorca (patrz opis poniżej) i ich kombinacji. Uwaga! Tylko w angielskim obłożeniu klawiatury (z trzech najczęściej używanych obłożeń - "usa", "d" i "gb"; instaluje się ono automatycznie np. na Workbenchu dodawanym do CDTV z angielską klawiaturą) "normalny" apostrof (`) uzyskiwany jest przez naciśnięcie [Alt] i [`] i działa w sposób opisany niżej.

Składnia dla wszystkich systemów jest taka sama:

>rozkaz ADOS<  >łańcuch<  `# | ? | #? | ~ |`  >łańcuch<

Gdyby wspomniane znaki nie zostały umieszczone w apostrofie, wówczas komputer potraktowałby je jako wzorzec dla nazwy zbioru i efekt uzyskany mógłby być zupełnie inny od zamierzonego. Przykładowo: chcemy zmazać z dysku zbiór, który został "zabezpieczony" przed tym przez nadanie mu złośliwej nazwy "Zbior#". Należy zatem wykonać następujący rozkaz :


Delete zbior`#`

albo : zamierzamy zmazać z dysku DF1: kilka zbiorów, które ktoś siląc się na amerykański snobizm nazwał : Instrukcja#1, Instrukcja#2, Instrukcja#3 itd. Tu także pomoże nam apostrof. Rozkaz będzie wyglądał następująco :


Delete DF1:Instrukcja`#`#?

Można także za pomocą apostrofu stworzyć zbiór, który później jakiś lamer będzie usiłował zmazać (bezskutecznie zresztą). UWAGA: Instrukcja nie działa na Amigach z niemieckim obłożeniem klawiatury !


"" (pusty cudzysłów)

Składnia dla wszystkich wersji systemu jest taka sama, np.


COPY FROM >nazwa zbioru< TO ""

Lub


COPY FROM "" TO >nazwa urządzenia<

Gdzie :

nazwa zbioru to poprawna nazwa zbioru w ADOS (może być ze ścieżką), a nazwa urządzenia to rozumiana przez ADOS nazwa urządzenia logicznego lub fizycznego (nazwy tych urządzeń były omówione w poprzednim odcinku).

Zastępuje nazwę katalogu aktualnego, co jest przydatne zwłaszcza w wypadku, gdy ścieżka do tego katalogu jest długa albo gdy chcemy skopiować zawartość całego podkatalogu. Przykładowo rozkazy :


COPY FROM df0/roboczy/muzyka/protracker/moduly/#? TO df1:

i


COPY FROM "" TO df1:

są identyczne (oczywiście, jeśli w momencie użycia tego drugiego jesteśmy w podkatalogu roboczy/muzyka/protracker/moduly na dysku df0:). Za pomocą obu skopiujemy całą zawartość tego podkatalogu na dysk df1:

Operatora "" można użyć tylko w tych rozkazach ADOS, w których składni występują słowa FROM i TO.


CTRL\ (jednoczesne naciśnięcie klawiszy [CTRL] i [\]

Naciśnięcie tych dwóch klawiszy oznajmia Amidze, że ma być zapisany znacznik końca zbioru (EOF). Korzysta się z tego znacznika na przykład wówczas, gdy piszemy tekst zbioru na konsoli, jak poniżej :


COPY FROM * df0:zbior
blabla bla
ble ble

Ponieważ ten inteligentny tekst był wszystkim, co chcieliśmy zapisać w zbiorze o nazwie "zbior", to w tym momencie należy nacisnąć jednocześnie klawisze [CTRL] i [\], aby to wszystko zostało zapisane na dyskietce. Jeśli nie potrafisz sobie poradzić z jednoczesnym naciśnięciem tych klawiszy, to najpierw naciśnij [CTRL] i przytrzymując go, naciśnij [\].


ALT` (jednoczesne naciśnięcie klawiszy [Alt] i [`] apostrof

UWAGA: Kombinacja ta działa tylko z systemami 2.04, 2.1 i 3.0, a dodatkowo jedynie na Amigach z angielskim obłożeniem klawiatury. "klawiatura" amerykańska ma do tej kombinacji klawiszy przypisany oddzielny klawisz, natomiast na "klawiaturach" niemieckich klawisz ten nie występuje. (Na klawiaturach made in Germany po prostu używamy tutaj zwykłego apostrofu.) Na ekranie wprowadzony tak apostrof będzie wyglądał jak "normalny", ale Amiga DOS potraktuje go nieco inaczej.

Powyższa kombinacja klawiszy pozwala na usunięcie z ekranu rozkazu zawartego w apostrofach (ale UWAGA: wprowadzonego nie jako "apostrof", lecz jako "[ALT] + apostrof"). Jednocześnie jednak rozkaz ten zostanie wykonany, a w miejsce usuniętego rozkazu zostanie wstawiony jego wynik. Ktoś zapyta: "po co to, skoro wynik po wykonaniu rozkazu i tak zostałby wyświetlony ?". Racja, ale spróbujcie w sposób normalny wykonać coś takiego :


ECHO " Dzisiaj mamy `DATE`"

No i co, nie udało się ? A z "alternatywnym apostrofem" się uda. Przy wszystkich zabawach z wykorzystaniem apostrofu pamiętajmy, że na klawiaturze niemieckiej występuje on na klawiszu łącznie z tyldą (~). Jest to duży szary klawisz po lewej stronie klawisza [1/!]. Na klawiaturze angielskiej apostrof jest na tym samym klawiszu co cudzysłów (drugi od prawej w trzecim rzędzie). Jest on tam także na klawiaturze amerykańskiej, a specjalny klawisz dla "alternatywnego apostrofu" u Amerykańców to klawisz na prawo od niego.

#? (joker - wzorzec dla nazw zbioru)

Parametr ten pozwala określić wzorzec dla nazwy zbioru. Korzysta się z niego wówczas, jeśli chcemy, aby jakiś rozkaz ADOS podziałał na kilka zbiorów. Wzorce mogą przyjmować różne postacie.

? - do wzorca pasuje dowolny pojedynczy znak. Można też używać wielokrotności znaku zapytania we wzorcu, co zastąpi tyle liter, ile jest znaków zapytania, jednak występujących w tych miejscach, gdzie we wzorcu jest pytajnik.

#? - do wzorca pasują dowolne znaki użyte w nazwie przed lub po wzorcu.

(#?- jak wyżej. Nawiasów używamy jednak wtedy, gdy chcemy zanegować wzorzec (patrz znak [~]) lub w jednym wzorcu umieścić kilka jego składników, choćby (%|?2).

~ - tylda jest negacją (NOT) wzorca podanego za tym znakiem w nawiasach.

% - do wzorca pasuje znak "pusty". Jest to, jak się za chwilę okaże, bardzo wygodne w niektórych wypadkach.

| - znak separacji pól określa możliwość wyboru. Dotyczy wyłącznie cyfr, na których wykonane jest logiczne "lub" (OR). Brzmi to dość skomplikowanie, lecz jak zaraz zobaczycie, jest bardzo proste. UWAGA: może występować tylko w nawiasach.

[] - do wzorca pasują tylko te zbiory, w których nazwie występuje grupa, czyli znaki umieszczone w nawiasach kwadratowych. Grupa musi zawsze liczyć trzy znaki. Mogą to być również zatem dwa znaki oddzielone myślnikiem, na przykład [afj] czy [d-k] albo [1a3], czy też [1-9].

UWAGA: nawiasy kwadratowe oraz tylda, mogą występować we wzorcu tylko dla systemów powyżej wersji 2.

Jak to wszystko wygląda w praktyce ? Przykładowo :


DIR df0:K#?

wyświetli nam wszystkie nazwy podkatalogów i zbiorów na dyskietce ze stacji df0: rozpoczynające się na literę K (nie jest ważne, czy wpiszemy tę literę dużą czy małą literą, nie ma także znaczenia, czy nazwy zbiorów zaczynają się od dużej czy małej litery).


COPY df1:#?.info TO RAM:

skopiuje wszystkie ikony z dysku w stacji df1: do RAM-u


DELETE dh0:t(#?)a

usunie z twardego dysku wszystkie zbiory, a także puste katalogi i podkatalogi, których nazwy zaczynają się na t, a kończą się na a (bez względu na to, ile liter mieści się pomiędzy "t" i "a"). Zbiory w katalogach nie zostaną zmazane, nawet jeśli pasują do wzorca. Oczywiście poza nawiasami mogą występować dłuższe łańcuchy, na przykład :


tr(#?)bka

będzie odnosić się zarówno do zbioru o nazwie "trąbka", jak i do zbioru o nazwie "transportowyobrazsobka". Identyczny efekt uzyskamy opuszczając nawias, to znaczy pisząc :


DELETE dh0:T#?a

Aby lepiej zrozumieć działanie znaku zapytania we wzorcu, załóżmy, że na dysku df1: mamy nagrane zbiory o nazwach: tama, teka, tuba, tromba i tralalina. Rozkaz :


DELETE t?ka

zmaże nam zbiory teka i tyka. Rozkaz :


DELETE t??a

też usunie te dwa zbiory, a dodatkowo zbiory tama i tuba.

W podobny sposób wyjaśnię działanie znaku procenta, znaku separacji pól i nawiasów kwadratowych. Posłużę się tutaj jednak nieco innymi nazwami zbiorów. Załóżmy, że mamy zbiory o nazwach obraz1, obraz2 i tak dalej aż do obraz99, a także zbiór o nazwie obraz bez żadnej cyferki. Rozkaz :


DELETE (1|2)

zmaże z dysku tylko zbiory o nazwach obraz1 i obraz2, a :


DELETE (1|3?)

zbiory obraz1 i wszystkie zbiory od obraz30 do obraz39 włącznie, natomiast :


DELETE (%|4)

pozbawi nas zbiorów obraz4, a


DELETE obraz~(%|4)

zmaże prawie wszystko, pozostawiając te zbiory, które pasują do wzorca, czyli w naszym wypadku obraz i obraz4.


DIR obraz[345]

wyświetli nazwy tych zbiorów, które w nazwie mają numery od 3 do 5 (tj. obraz34 czy obraz53).


DIR obraz[1-6]

wyświetli nazwy tych zbiorów, które w nazwie mają numery od 1 do 6 (tj. obraz1, obraz2, obraz3, obraz4, obraz5, obraz6), a:


DIR dh2:[a-n]

nazwy tych zbiorów lub katalogów, na dysku dh2:, które składają się z jednej i mieszczą się w przedziale od "a" do "n". W wypadku, jeśli nagrany byłby tam tylko fabryczny Workbench, otrzymalibyśmy w wyniku jedynie :


C (dir)
L (dir)

Dodatkowe przykłady możecie zobaczyć na rysunkach.


ADDBUFFERS (dodaj bufory)

Składnia i Wzorzec (template) są dla wszystkich systemów takie same :

ADDBUFFERS [DRIVE] >stacja< [,BUFFERS] >liczba<

Gdzie: stacja to nazwa stacji dyskietek (od df0: do df3:), liczba zaś to liczba dodanych buforów. Wzorzec: DRIVE/A, BUFFERS/N

Nierzadko denerwuje użytkownika wolne działanie stacji dyskietek. Można to nieco przyspieszyć przez utworzenie w RAM-ie tzw. cache. Można to zrobić korzystając z rozkazu ADDBUFFERS. Liczba dodanych buforów mieści się w zakresie od 0 do 10117. UWAGA: Każdy dodany bufor zabiera około 512 bajtów pamięci.

Od systemu 2.0 rozkaz został nieco rozbudowany. Możemy za jego pomocą nie tylko dodawać, ale i odejmować bufory. Wartość liczby użytej w rozkazie może być dowolna. Jeśli po odjęciu jej od aktualnej liczby buforów pozostałoby mniej niż 3 bufory, wówczas liczba buforów zostanie przyjęta jako 3. W systemach od 2.0 w górę rozkaz wypisuje także, ile buforów ma aktualnie dana stacja. Aby dowiedzieć się o tym, można także (tylko w systemach 2.0 w górę) użyć rozkazu bez określenia liczby dodanych buforów

Jeśli dodamy za dużo buforów, nie zmieszczą się one w pamięci. W systemach 1.2 i 1.3 otrzymamy wówczas komunikat: "Insufficient memory for buffers" i rozkaz nie zostanie wykonany. W systemach wersji wyższej liczba będzie zaokrąglona do takiej, na jaką pozwala pamięć. Natomiast nie ma zabezpieczenia przed przekroczeniem górnej granicy w systemach wyższych niż 2.0. Jeśli do A1200 z 6 Mb pamięci dodamy na przykład 1 000 000 buforów, to rozkaz wprawdzie "zadziała" i obetnie liczbę buforów do maksimum, czyli 10120, jednak na jakiekolwiek działanie inne niż odjęcie zbytecznych buforów (nawet na Dir df0:) pamięci już zabraknie (na to, aby operacje dyskowe mogły być wykonywane musi być co najmniej 100 Kb dostępnej pamięci).

UWAGA: Użycie liczby ujemnej w systemach pozostałych (na przykład 1.3) spowoduje pojawienie się komunikatu o błędzie : "Invalid char `-` in number". W systemach tych nie ma także informacji o liczbie buforów.

Mało kto wie, że rozkaz ten działa nie tylko na stacje dyskietek, ale również na stację CD-ROM, a nawet na twardy dysk i urządzenia CC0: Jednak dodawanie buforów do tych urządzeń (poza CD-ROM-em) mija się z sensem, gdyż uzyskany efekt będzie niewspółmierny do liczby utraconej pamięci.


AddBuffers DF1: 44

Powyższy rozkaz doda nam 44 bufory (zabierając jednocześnie 22 Kb pamięci) do stacji df1: przez co będzie można do tak stworzonego cache wczytać jednocześnie dwie ścieżki dyskietki. UWAGA! Należy pamiętać o odstępie pomiędzy dwukropkiem a liczbą buforów. Jeśli bowiem napisalibyśmy jak poniżej :


AddBuffers DF1:44

otrzymalibyśmy komunikat, że nazwa urządzenia (tutaj df1:44) jest w kontekście tego rozkazu nieprawidłowa.


AddBuffers DF0:

spowoduje pojawienie się na ekranie napisu (przykładowo) :


df0: has 20 buffers

UWAGA: Zadziała to wyłącznie w systemach wersji 2 i 3. Wyniki działania rozkazu AddBuffers przedstawia poniższa tabelka :

STACJA DF0: dyskietka z Workbenchem 1.3. Amiga 1200 z 6 MB pamięci (domyślnie 20 buforów), Amiga 500 z 1 MB pamięci (domyślnie 10 buforów).

Liczba Buforów Czas (A1200) Czas (1500) Pamięć mniejsza
Domyślna (20/10) 9 Sek. 16 Sek. 10 KB (5 KB)

Po zastosowaniu dodatkowo :

Liczba Buforów Czas (A1200) Czas (1500) Pamięć mniejsza
AddBuffers 10 8 Sek. 14 Sek. 15 KB
AddBuffers 100 7 Sek. 13 Sek. 54 KB
AddBuffers 1000 6 Sek. - (brak RAM) 558 KB
AddBuffers 10117 - (brak RAM) - (brak RAM) 6,09 MB
AddBuffers -1000 10 Sek. - (nieosiągalne) 0

Jak widać dodawanie zbyt wielkiej liczby buforów nie jest opłacalne, wcale bowiem nie przyspiesza stacji proporcjonalnie do start w pamięci. Przyjeło się dodawać maksymalnie do 25 buforów. Skąd wzieła się ta liczba ? Jeśli utworzymy rozkazem ADDBUFFERS cache w RAM-Dysku, wówczas informacje wczytywane z dysku będą tam kierowane. Jeden bufor to 512 Bajtów (czyli długość jednego sektora na dysku). Dyski 880 KB do Amigi mają 11 sektorów na ścieżce i są dwustronne. A zatem, aby wczytać naraz całą ścieżkę, wystarczą 22 bufory (co zabierze nam około 11 KB pamięci, a tego prawie nie zauważymy

Nie należy się także przejmować niewielkimi różnicami czasowymi w powyższej tabelce. Katalog główny Workbencha 1.3 nie jest zbyt duży. Prawdziwą korzyść ze stosowania (byle z umiarem) tego rozkazu odczujemy dopiero przy ładowaniu dużych zbiorów z dyskietki. Zalecany umiar wynika stąd, że nie da się przeskoczyć ograniczeń w szybkości pamięci RAM. Maksymalnie można zwiększyć szybkość wczytywania danych do około 15%.

Jeśli przy tworzeniu własnego dema okaże się, że zabrakło "deka" pamięci, to zamiast stosować niezbyt pewnie działającą procedurę "add21kb", lepiej usunąć z sekwencji startowej rozkaz ADDBUFFERS wraz z parametrami.


AddDataTypes (dodaj typy danych)

Składnia dla systemu 3.0 i 3.1 :

AddDataTypes [FILE] >pełna nazwa zbioru | nazwa podana wzorcem< [QUIET] [REFRESH]

Gdzie : pełna nazwa zbioru - to nazwa (wraz ze ścieżką), na której znajduje się aktualnie zbiór określający typ danych (nie może to być katalog DEVS/DATATYPES, nazwa podana wzorcem - to ta sama nazwa podana z wykorzystaniem opisanego nieco wyżej wzorca (na przykład wówczas, gdy chcemy dodać hurtem wszystkie nowe typy danych). Parametr QUIET spowoduje, że na ekranie nie pojawią się nazwy dodawanych typów danych, zaś parametr REFRESH spowoduje sprawdzenie katalogu DEVS:DATATYPES po wykonaniu dopisania

W pozostałych wersjach systemu operacyjnego tego rozkazu nie ma.

Wzorzec dla obu systemów : AddDataTypes FILES/M, QUIET/S, REFRESH/S

Od systemu 3.0 wprowadzono zbiory określające format wyświetlania zawartości różnych zbiorów i nazwano je typami danych (DataType). Rozkaz AddDataTypes jest wykorzystywany po to, aby "zainstalować" nowe typy danych (na przykład przez różne nakładki systemowe w rodzaju MultiView). Przypominam, że system 3.0 ma następujące typy danych :

  • 8SVX - format dla zbiorów dźwiękowych,
  • AMIGAGUIDE - format dla systemowej "ściągi" o nazwie AmigaGuide,
  • FTXT - format dla zbiorów tekstowych,
  • ILBM - format dla zbiorów graficznych

Workbench 3.1 dopuszcza kolejne typy danych, takie jak :

  • ASCII - dla zbiorów tekstowych napisanych po ustawieniu przez LOCALE, języka narodowego,
  • PICTURE - dla obrazków w formacie JPEG,
  • SOUND - dla zbiorów z dźwiekiem formatu IFF, różniocym się nieco od 8SVX,
  • TEXT - ulepszony typ danych FTXT,
  • ANIM - dla animacji w formacie ANIM-7,
  • ANIMATION - dla animacji w formacie ANIM-5,
  • CDXL - dla zdigitalizowanych filmów wideo w formacie CDXL - 1/4 ekranu, 12 klatek na sekundę,

Nic oczywiście nie stoi na przeszkodzie, aby te nowe typy danych "zainstalować" w systemie 3.0. Służy temu właśnie opisywany rozkaz. Będzie można za jego pomocą "zainstalować" wszystkie nowe typy danych, jakie się pojawią w przyszłości.

Rozkazu użyjemy wówczas, gdy chcemy dograć do katalogu CLASSES/DATATYPES nowe zbiory z typami danych. Na przykład :


AddDataTypes DF1:ROB/#?.DATATYPE QUIET REFRESH

spowoduje przegranie do katalogu DEVS:DataTypes, podkatalogu ROB na dyskietce df1: wszystkich znajdujących się tam zbiorów z rozszerzeniem datatype. Nazwy dopisywanych zbiorów z typami danych nie zostaną wypisane na ekranie. Zawartość katalogu DEVS:DataTypes zostanie sprawdzona.

UWAGA: Zalecam ostrożność przy stosowaniu tego rozkazu, jest on bowiem "użytkownikoodporny" i zadziała także przy wpisaniu dowolnej nazwy zbioru. Może to się obejść bez żadnych konsekwencji, spróbujcie jednak zainstalować jako datatype na przykład rozkaz execute z katalogu C: a będzie Was czekać ponowna instalacja Workbencha. Natomiast użycie rozkazu :


AddDataTypes

bez żadnego parametru nie spowoduje żadnych zakłóceń. Początkującym radzę mimo wszystko instalować typy danych przez przeciągnięcie (drag) ich ikon z jednego okna do drugiego.


AddMonitor (dodaj monitor)

Składnia dla systemu 2.0 :

AddMonitor   [NAME=] >nazwa<   [NUMBER=] >numer<   [HBSTRT= >n<]   [HBSTOP= >n1<]   [HSSTRT= >n2<]   [HSSTOP= >n3<]   [VBSTRT= >n4<]   [VBSTOP= >n5<]   [VSSTRT= >n6<]   [VSSTOP= >n7<]   [MINROW= >n8<]   [MINCOL= >n9<]   [TOTROWS= >n0<]   [TOTCLKS= >m<]   [BEAMCON0= >m1<]

Wzorzec : NAME/A,   NUMBER/A,   HBSTRT/K,   HBSTOP/K,   HSSTRT/K,   HSSTOP/K,   VBSTRT/K,   VBSTOP/K,   VSSTRT/K,   VSSTOP/K,   MINROW/K,   MINCOL/K   TOTROWS/K,   TOTCLKS/K,   BEAMCON0/K

Składnia dla systemu 2.1 :

AddMonitor   [NUM=] >numer<   [NAME] >nazwa<   [HBSTRT= >n<]   [HBSTOP= >n1<]   [HSSTRT= >n2<]   [HSSTOP= >n3<]   [VBSTRT= >n4<]   [VBSTOP= >n5<]   [VSSTRT= >n6<]   [VSSTOP= >n7<]   [MINROW= >n8<]   [MINCOL= >n9<]   [TOTROWS= >n0<]   [TOTCLKS= >m<]   [BEAMCON0= >m1<]

Wzorzec : NUM/A,   NAME/A,   HBSTRT/K,   HBSTOP/K,   HSSTRT/K,   HSSTOP/K,   VBSTRT/K,   VBSTOP/K,   VSSTRT/K,   VSSTOP/K,   MINROW/K,   MINCOL/K   TOTROWS/K,   TOTCLKS/K,   BEAMCON0/K

Gdzie :

nazwa - określa nazwę dołączanego monitora, numer - nadany mu typ z zakresu 1 do 4 (1 - NTSC, 2 - PAL, 3 - Multiscan, 4 - A2024).

HBSTRT - za pomocą "n" określa numer wiersza ekranu, na którym ma rozpocząć zaciemnianie poziome, HBSTOP - zaś za pomocą "n1" - numer wiersza, na którym ma się ono zakończyć.

HSSTRT - określa przez "n2" numer pierwszego wiersza synchronizacji poziomej, HSSTOP - natomiast (przez "n3" - numer ostatniego wiersza dla tej synchronizacji. Jak łatwo się domyślić - parametry VBSTRT, VBSTOP, VSSTRT i VSSTOP (za pomocą odpowiednio "n4"   "n5"   "n6" i "n7" określają te same parametry, jednak w odniesieniu do pionu).

MINROW - określa przez "n8" minimalną liczbę wierszy ekranu, NINCOL zaś odpowiednio minimalną liczbę kolumn.

TOTROWS - oznacza całkowitą liczbę wierszy ekranu (zdefiniowaną przez "n0"), w TOTCLKS zaś "m" określa całkowitą liczbę cykli. Odpowiednie wartości należy wziąć z instrukcji danego monitora

Najważniejszy parametr to BEAMCON0, w którym "m1" jest wartością wpisywaną do rejestru kontrolnego wizji. Kolejne pozycje tej wartości (z zakresu od 0 do 256) :

  • Bit 0 - kontroluje synchronizację poziomą,
  • Bit 1 - kontroluje synchronizację pionową,
  • Bit 2 - kontroluje sygnał Composite,
  • Bit 3 - włącza i wyłącza ściemnianie dla sygnału Composite,
  • Bit 4 - włącza i wyłącza synchronizację,
  • Bit 5 - przełączenie PAL/NTSC,
  • Bit 6 - włącza i wyłącza specjalny tryb pracy monitora (o ile monitor takim dysponuje),
  • Bit 7 - włącza licznik strumienia wizji,
  • Bit 8 - włącza i wyłącza działanie wartości podanych przez HSSTRT i HSSTOP,
  • Bit 9 - włącza i wyłącza działanie wartości podanych przez VSSTRT i VSSTOP,
  • Bit 10 - zmienia synchronizację sygnału Composite,
  • Bit 11 - włącza i wyłącza możliwość zmiany długości wiersza,
  • Bit 12 - włącza i wyłącza działanie wartości podanych przez VBSTART i VBSTOP,
  • Bit 13 - włącza i wyłącza blokowanie "pióra",
  • Bit 14 - włącza i wyłącza możliwość ściemniania,
  • Bit 15 - pozwala na przełączenie monitora A2024 w tryb najwyższej rozdzielczości.

UWAGA: Jeśli do tej pory nie mieliście do czynienia z techniką telewizyjną, ABSOLUTNIE NIE WOLNO WAM UŻYWAĆ TEGO PARAMETRU. Niewłaściwie podane wartości mogą bowiem zrobić z Waszego monitora pralkę automatyczną, odkurzacz, opiekacz lub bombę atomową we wczesnej fazie rozszczepienia cząstek.

W pozostałych wersjach systemu operacyjnego tego rozkazu nie ma.

Rozkaz, jak już można się było domyślić, pozwala na dopasowanie przyłączonego monitora tak, aby Amiga w pełni mogła wykorzystać jego możliwości. Przykładowo :


AddMonitor NUM=3 NAME=MULTISCAN

pozwoli nam wykorzystywać monitor MultiScan ze wszystkimi trybami, jakie dopuszcza system 2.1, a


AddMonitor NAME=MULTISCAN NUM=3

umożliwi wykorzystanie tego samego monitora z systemem 2.0.


AddMonitor NAME=MULTISCAN NUM=3 BEAMCON0=32

zapisze w rejestrze kontrolnym wartość, która przełączy nam monitor na system PAL (bo 32 w zapisie dwójkowym %0000000000100000). Na kolejne rozkazy AmigaDOS należy poczekać miesiąc.

Marek Pampuch
Amiga Magazyn, marzec 1994r.