Tajemnice ATARI

COS

Na co mi to?

   Kiedy komputerowy neofita przebrnie już przez okres pierwszych trudności (co odpowiedzieć, kiedy on do mnie "READY"?), a także przez okres pierwszych fascynacji (gdyby robili trochę mocniejsze joysticki, dotarłbym do setnego mostu!), próbuje zwykle wykorzystać swą maszynę w sposób nieco ambitniejszy, bardziej twórczy, i tu posiadacz "pamięci taśmowej" staje przed problemem. O ile większość gier istnieje w wersjach dyskowych i kasetowych, to prawie wszystkie programy użytkowe są przeznaczone dla posiadaczy stacji dysków. Być może wynika to z faktu, że większość zawodowych programistów pamięta magnetofon tylko jako podstępnego wroga z wczesnego dzieciństwa i nie traktuje poważnie tego typu pamięci zewnętrznej.

   Dawniej, to znaczy przed powstaniem COS-u, programy nagrane na kasecie uruchamiane były przez wyłączenie komputera i ponowne włączenie go. Taka metoda ma szereg poważnych wad.

   Po pierwsze włączanie i wyłączanie stanowi potencjalne zagrożenie dla układów komputera: 90% wszystkich uszkodzeń zdarza się w tych momentach.

   Po drugie na skutek wyłączenia zasilania znika wszystko, co dotąd siedziało w pamięci komputera: RAM-dysk, rezydentny sterownik złącza "centronics", starannie ustawiona data i czas...

   Po trzecie dyskowe programy binarne mają inną strukturę niż kasetowe, a więc nie jest możliwe bezpośrednie ich przenoszenie: stosuje się niezbyt wygodny "wykrzyknik", który trzeba dołączać przed każdym programem.

   COS jest takim właśnie "wykrzyknikiem", lecz uruchamianym tylko raz dziennie! Jest on funkcjonalnym odpowiednikiem dyskowego DOS-u i podobnie jak on umożliwia uruchamianie programów, zwłaszcza użytkowych, traktowanych jak dodatkowe (zewnętrzne) polecenia COS-u. COS jest stale obecny w pamięci komputera i pozwala wielokrotnie uruchamiać i opuszczać różne programy a także interpreter BASICu. Stanowi on dodatkowy "pomost" między użytkownikiem a komputerem. Pozwala instalować programy rezydentne, czyli tzw. nakładki, jak na przykład RamFile z TA 8/91, XE Basic (przedstawiony w tym numerze), XLFriend (edytor tekstów, tabela kodów, kalkulator i monitor pamięci), wchodzący w skład pakietu Quick Assemblera i wiele, wiele innych, by móc korzystać z nich przez długi czas, podczas działania różnych programów. COS dość wiernie udaje DOS, zatem większość programów dyskowych skopiowanych na taśmę dowolnym kopierem będzie się uruchamiać pod COS-em bez kłopotu. Dedykowany kopier NameCopy (drukowany w TA 2/91) pozwala ponadto na przekazywanie na kasetę także nazw programów dyskowych oraz wydłuża niekiedy przerwy między blokami dla potrzeb procedur inicjallzacji (gdy są). Sposób działania, obsługa sekwencji RESET, uruchamianie programów wiernie naśladuje DOS, może być dobrym ćwiczeniem dla użytkownika ATARI przed planowanym zakupem napędu dysków.

Co z tym zrobić?

   Aby otrzymać zdatny do uruchomienia COS należy przepisać dwie części programu generującego, to jest Mini-Zgrywus, znajdujący się na str. 9 oraz dane właściwego COS-u (powyżej). Można je przepisać razem, jako jeden program, lub osobno, a później scalić, używając rozkazów LIST i SAVE. Całość po uruchomieniu przez RUN nagrywa COS na taśmie w postaci pliku "boot".

I co dalej?

   Dla wczytania COS-u, należy włączyć komputer przy wciśniętym klawiszu START. Jeżeli dodatkowo będzie naciśnięty OPTION, to interpreter BASIC-a zostanie wyłączony (powiększy się za to rozmiar wolnej pamięci). Jeżeli klawisz OPTION nie jest naciśnięty, to COS zaraz po wczytaniu przekaże sterowanie do BASIC-a. Można jednak do niego zawsze powrócić rozkazem DOS (nie COS!). Nie ma też powodu, by się bardzo przejmować klawiszem OPTION. Przy pomocy COS-u można włączać i wyłączać BASIC zależnie od potrzeb.

   COS wyświetla znaczek ">", co oznacza stan oczekiwania na polecenie użytkownika. Można wówczas wprowadzić dowolne z poleceń wewnętrznych, lub parę gwiazdek ("**"), co spowoduje wczytanie i uruchomienie programu z kasety. Takim programem może być np. QA, NCOPY, PE, CZYTAJ. Ich lista jest nieograniczona. Jeśli program był kopiowany przy użyciu NCopy, to podczas wczytywania COS wyświetli jego nazwę i wielkość liczoną w blokach. Każdy taki program można rozumieć jako dodatkowe, zewnętrzne polecenie COS-u.

Opis poleceń wewnętrznych:

  • DIR - spis zawartości kasety należy przewinąć taśmę na początek niewiadomego programu, włączyć "PLAY" w magnetofonie i jednocześnie wcisnąć jakiś klawisz komputera. Po odczytaniu pierwszego bloku programu COS wyświetli jego nazwę (name), rozszerzenie (ext) i długość (len), o ile zostały wprowadzone przy użyciu NCopy. W przeciwnym razie pojawi się ciąg znaków zapytania. Należy potem odszukać początek następnego nieznanego programu, itd. Poszukiwania ułatwia stale włączony, podczas operacji DIR, silnik magnetofonu. Zakończenie polecenia - klawiszem BREAK.
  • MEM - aktualny rozmiar wolnej pamięci COS wyświetla dolną (Lo) i górną (HI) granicę nieużywanej pamięci. Liczby podane są w notacji szesnastkowej.
  • CAR - obsługa wbudowanego BASIC-u. Bez parametru powoduje przejście do interpretera BASIC-u, o ile jest on włączony. Z parametrem ON - włącza BASIC nawet. Jeśli podczas startu komputera wciśnięty był klawisz OPTION. Z parametrem OFF wyłącza BASIC.
  • RUN - uruchomienie programu w pamięci. Rozkaz ten bez parametru powoduje uruchomienie ostatnio wczytywanego polecenia zewnętrznego. Z parametrem, którym musi być adres w notacji szesnastkowej, uruchamia program drzemiący w pamięci operacyjnej od podanego adresu. Dla przykładu: RUN E477 spowoduje "zimny start" bez potrzeby wyłączania komputera.
  • MOT - sterowanie silnika magnetofonu. Z parametrem ON włącza silnik magnetofonu, a z parametrem OFF wyłącza go.
  • VER - wyświetlenie nagłówka COS z numerem wersji.
  • CLS - wymazanie zawartości ekranu.
  • HLP - wyświetlenie listy rozkazów wewnętrznych.

       W opisie składni rozkazów, pojawiającym się po HLP, dużymi literami zapisano te elementy, które należy przepisać tak, jak podano. Nawiasy kwadratowe otaczają element, który można pominąć. Kreska pionowa dzieli elementy, spośród których trzeba dokonać wyboru. Napis złożony z małych liter należy zastąpić stosownym parametrem.
    1000 REM *--------------------------*
    1002 REM : COS  wersja 1.4          :
    1004 REM :   Janusz B. Wi$niewski   :
    1006 REM : (c) 1992 Tajemnice ATARI :
    1008 REM *--------------------------*
    1010 DATA 000b00078507a9ba850aa90885
    1020 DATA 0ba93e850ca908850da0008c44
    1030 DATA 02c8840984ca4c74e4202a0730
    1040 DATA 5d8548a9009d48039d49034c56
    1050 DATA e4854320230730498545254849
    1060 DATA fff0f1a5488544202307303885
    1070 DATA 47a5488546a5449d4403a5459d
    1080 DATA 450338a546e544a8a547e54518
    1090 DATA c8d00269019d4903989d4803a5
    1100 DATA 44c9c0d008a545c901d002f001
    1110 DATA 18a0016020820a20a509306620
    1120 DATA 35073061a543d05b202d08e6ca
    1130 DATA eec608d011a210203507100ac0
    1140 DATA 88d04820840a6ce002a9858de2
    1150 DATA 02a9078de302082056e4289830
    1160 DATA 309019a55ee9288548a55fe900
    1170 DATA 8549a010b9be01206c09914888
    1180 DATA 10f520ef07a001b9e002990407
    1190 DATA 8810f730b26ce202a0af844320
    1200 DATA 840aa90085448545f8a0070643
    1210 DATA a5446544854426458810f3d8a9
    1220 DATA f28548a90b8549a00da544207b
    1230 DATA 09a545208409a9f2a00ba2114c
    1240 DATA 6f08a9858de0028d0407a9078d
    1250 DATA e1028d050760a9f88de702a90c
    1260 DATA 8de802a92e8d0602a9098d0702
    1270 DATA a9148dd902a9038dda02adf803
    1280 DATA f0cc208508a9608d6408a916a0
    1290 DATA 0ca23a8d44038c45038e4803a2
    1300 DATA 008e4903a90b8d42034c56e4a2
    1310 DATA 23a00e209908a95ba00ba22520
    1320 DATA 6f08a223a00d84438600a02020
    1330 DATA ad08a44320ad08c600d0f7a09b
    1340 DATA ad470348ad460348986020df0a
    1350 DATA d858a2ff9a8efc02e88642a901
    1360 DATA 85ca8ec60820ee0930e9a000ad
    1370 DATA 800cc93ed001c820620930da84
    1380 DATA 0020e708b0d018a98065008548
    1390 DATA a90c69008549a200a000e02db0
    1400 DATA bbb148dd510cd016e8c8c00390
    1410 DATA f3b148c99bf004c920d0062021
    1420 DATA 094cba08e8c8c00590fab0d5bd
    1430 DATA 510c8548bd520c85496c4800d8
    1440 DATA 586868a9e48548a90b8549a00b
    1450 DATA 3868e90208207b092868e90020
    1460 DATA 7b09a9e4a00ba20f206f084cba
    1470 DATA 08c8b9800c3005c920d0f6c8b9
    1480 DATA 800cc920f0f8c900600a08c9c0
    1490 DATA b006e93fb00269c0286a604820
    1500 DATA 8409684a4a4a4a290f0930c93a
    1510 DATA 9002690691488860a20020840a
    1520 DATA a9049d4403a90c9d4503a90cd0
    1530 DATA 17a011b9050c99be018810f7a9
    1540 DATA 039d4403a90c9d4503a904489d
    1550 DATA 4a03a9039d4203a9809d4b0320
    1560 DATA 56e46809039d42039860a201b9
    1570 DATA 800cc94fd00bb9810cdd7e0cf0
    1580 DATA 05ca10f538608a1860a200a90b
    1590 DATA 9d4203a94f9d4403a90c9d4503
    1600 DATA a9029d4803a9009d49032056e4
    1610 DATA a9059d4203a9809d4403a90c9d
    1620 DATA 4503a9789d4803a99b8d830c20
    1630 DATA 56e4bd800cc99bf012297fc961
    1640 DATA 9006c97bb00249209d800ce8d0
    1650 DATA e79860a980a00ba22f206f08a0
    1660 DATA 2020ad08a20fa0122099082082
    1670 DATA 0a20250b20a509301820350730
    1680 DATA 1390052056e4300ca9bea001a2
    1690 DATA 12206f084c580ac080f0054cf4
    1700 DATA 07a210a90c9d42032056e4a903
    1710 DATA 8d0fd260c9309012c93a900ac9
    1720 DATA 41900ac947b006e906290f1860
    1730 DATA 3860a400205809302bb9800c20
    1740 DATA 920ab026a90085488549b9800c
    1750 DATA 20920a90036c4800a204064826
    1760 DATA 49b00dcad0f705488548c8d0e3
    1770 DATA 6c0407a9afa00ba2174c6f08a4
    1780 DATA 00205809300f20d509b0eb85ca
    1790 DATA 49018df8034c74e4adf803d006
    1800 DATA 202d086cfabfa9c6a00ba20f4c
    1810 DATA 6f08a40020580920d509b0c3d0
    1820 DATA 07ad02d30908d005ad02d329f7
    1830 DATA 8d02d360a9d58548a90b8549a0
    1840 DATA 0eade502207b09ade602207b09
    1850 DATA a006ade702207b09ade802207b
    1860 DATA 09a9d5a00ba2104c6f0820164a
    1870 DATA 4257204361737365747465204f
    1880 DATA 7065726174696e672053797374
    1890 DATA 656d20312e34029b526577696e
    1900 DATA 642066696c65732c99c2d2c5c1
    1910 DATA cb19746f2073746f709b9b2020
    1920 DATA 6e616d6520202020657874206c
    1930 DATA 656e9b53796e74617820657272
    1940 DATA 6f7221fd2054727920484c509b
    1950 DATA 4e6f2063617274726964676521
    1960 DATA fd9b4c6f3d2e2e2e2e2048693d
    1970 DATA 2e2e2e2e9b42524b206174202e
    1980 DATA 2e2e2e21fd9b492f4f20657272
    1990 DATA 6f72202e2e2e21fd9b43452020
    2000 DATA 3f3f3f3f3f3f3f3f3f3f3f203f
    2010 DATA 3f3f9b2a2a9b434152205b4f4e
    2020 DATA 7c4f46465d9b434c539b444952
    2030 DATA 9b484c509b4d454d9b4d4f5420
    2040 DATA 4f4e7c4f46469b52554e205b68
    2050 DATA 65785d9b5645529b3e44495243
    2060 DATA 0a52554eaa0a56455285084341
    2070 DATA 52e80a434c539209484c506908
    2080 DATA 4d454d2e0b4d4f54120b2a2a9b
    2090 DATA 8607464e
    


    Janusz B. Wiśniewski



  • Powrót na start | Powrót do spisu treści | Powrót na stronę główną

    Pixel 2001