Tajemnice ATARI

MARK i RELEASE

    Programy MARK i RELEASE tworzą zestaw przeznaczony do obsługi tzw. nakładek. Programy tego typu po wczytaniu przyklejają się do DOS'a poprzez zmianę niektórych wektorów systemowych i pozostają stale obecne w pamięci, oferując różne udogodnienia. Różnego typu nakładki były wielokrotnie publikowane na łamach TA.

    O ile zainstalowanie nakładki nie przedstawia większych problemów, to pozbycie się jej z pamięci bywa niekiedy niemożliwe. Niektórzy autorzy w ogóle nie uwzględniają tej opcji w swoich programach, wychodząc prawdopodobnie z założenia "razem aż do śmierci" (do zimnego startu).

    Jak wiadomo, chcąc odinstalować nakładkę trzeba znać stan systemu przed jej zainstalowaniem. Temu właśnie służy program MARK: po wczytaniu bada on stan wektorów systemu operacyjnego oraz DOS'u (COS'u), a uzyskane dane zapisuje w pamięci komputera do późniejszego użytku. Te informacje są zapisywane jako specyficzna nakładka, która nie spełnia żadnych innych funkcji poza tym, że istnieje i potrafi się ochronić podczas RESETu podnosząc nad siebie MEMLO. Zajmuje ona bardzo mało miejsca, bo przeciętnie tylko około 30 bajtów.

    Po zaMARKowaniu stanu systemu można już wczytywać dowolne nakładki w dowolnej ilości. Gdy nam się znudzi ich obecność, uruchamiamy program RELEASE. Odszukuje on w pamięci zainstalowaną tam MARKę i na jej podstawie odtwarza stan wektorów systemowych oraz zwalnia pamięć przesuwając MEMLO na pozycję sprzed MARKowa-nia. Usuwa to zarówno MARKę, jak i wszystkie później wczytane nakładki.

    W wypadku, gdy mamy kilka programów rezydentnych i nie chcemy usuwać wszystkich naraz, trzeba je wczytywać przeplatając MARKowanIem: MARK, nakładka, MARK, inna nakładka... Takie postępowanie jest możliwe dzięki temu, że RELEASE odszukuje i usuwa ostatnią MARKę, pozostawiając bez zmian poprzednie. Mając zainstalowane np. dwie MARKI trzeba dwa razy użyć programu RELEASE, aby usunąć obie. Można to porównać ze stosem talerzy-nakładek poprzedzielanych deseczkami-MARKa-mi: podnosząc do góry najwyższą deseczkę (RELEASE) podnosimy razem z nią tylko te talerze, które zostały na stos położone później niż ona sama. Chcąc podnieść następne talerze, trzeba zdejmować kolejne deseczki.

    Programy MARK i RELEASE są przystosowane do nakładek, które instalują się poprzez wplecenie się w przerwania lub w procedury obsługi urządzeń (tablica HATABS). Nie będą więc działać z nakładkami, które przepisują system operacyjny lub BASIC z ROM'u do RAM'u i tam modyfikują jego treść.

    Starałem się uczynić te programy odpornymi na błędy i pomyłki. Nie da się zaMARKować dwa razy tego samego miejsca (prowadziłoby to do niepotrzebnego zużycia pamięci). RELEASE przed odtworzeniem wektorów sprawdza formalną postać MARKI - jest to zabezpieczenie na wypadek uszkodzenia jej zawartości przez jakiś nieodpowiedzialny program nie zwracający uwagi na MEMLO. Odtwarzanie stanu systemu według popsutej MARKI na pewno doprowadziłoby do jego zawieszenia.

1000 REM *--------------------------*
1002 REM : Mark                     :
1004 REM :  autor: Wojciech Palacz  :
1006 REM : (c) 1992 Tajemnice ATARI :
1008 REM *--------------------------*
1010 DATA ffff00907f906885d46885d5e6
1020 DATA d4d002e6d5a000b1d4c9eaf012
1030 DATA a20b8e4203a2008e48038e4903
1040 DATA 2056e410e06cd4002000909b4d
1050 DATA 61726b20312e3120627920576f
1060 DATA 6a63696563682050616c61637a
1070 DATA 9b2d2d2d2d2d2d2d2d2d2d2d2d
1080 DATA 2d2d2d2d2d2d2d2d2d2d2d2d2d
1090 DATA 2d2d9beaa989cde80290016020
1100 DATA 00904e6f206d656d6f72792e9b
1110 DATA ea6c0a00e002e3028090299080
1120 DATA 90a292ade70285d6ade80285d7
1130 DATA a012b9d79191d68810f818a5d6
1140 DATA 691385d69002e6d7a9ea85d8a9
1150 DATA 9185d9a000b1d8f05448c8b1d8
1160 DATA aac8b1d885dac8b1d885db18a5
1170 DATA d8690485d89002e6d98aa888b1
1180 DATA d8d1dad0108810f768188a65d8
1190 DATA 85d890cbe6d9d0c7a0006891d6
1200 DATA e6d6d002e6d78aa888b1da91d6
1210 DATA 8810f9188a65d685d690d7e6d7
1220 DATA d0d391d6e6d6d002e6d7ade702
1230 DATA 85daade80285dba006a50c91da
1240 DATA c8a50d91daa009a5d691daa00e
1250 DATA a5d791da38a50ce90585dea50d
1260 DATA e90085dfa012b9d791f004d1de
1270 DATA d06b8810f4a009b1decde702d0
1280 DATA 5fa00eb1decde802d05618a5de
1290 DATA 691285de9002e6df18a5da6912
1300 DATA 85dca5db690085dd38a5d6ede7
1310 DATA 0238e913a8b1dcd1ded02e88d0
1320 DATA f7a900a01491da8810fb200090
1330 DATA 50726576696f7573206d61726b
1340 DATA 206973207374696c6c204f4b2e
1350 DATA 9bea6c0a0018ade7026905850c
1360 DATA ade8026900850da5d68de702a5
1370 DATA d78de8022000904d61726b2073
1380 DATA 65742e9bea6c0a004d41524b20
1390 DATA 200000a9008de702a9008de802
1400 DATA 6001020a0000000202790051fb
1410 DATA 03020002cec004020602cdc005
1420 DATA 02080219fc06020a022ceb0702
1430 DATA 0c02adea08020e02ecea090210
1440 DATA 02cdc00a021202cdc00b021402
1450 DATA cdc00c02160230c00d022202e2
1460 DATA c00e0224028ac20f02260211ec
1470 DATA 1002280200001102360292c012
1480 DATA 01f402e013031a035030e41403
1490 DATA 1d034340e4150320034500e416
1500 DATA 0323035310e4170326034b20e4
1510 DATA 1803290300000019032c030000
1520 DATA 001a032f030000001b03320300
1530 DATA 00001c0335030000001d033803
1540 DATA 00000000

1000 REM *--------------------------*
1002 REM : Release                  :
1004 REM :  autor: Wojciech Palacz  :
1006 REM : (c) 1992 Tajemnice ATARI :
1008 REM *--------------------------*
1010 DATA ffff00906c906885d46885d5e6
1020 DATA d4d002e6d5a000b1d4c9eaf012
1030 DATA a20b8e4203a2008e48038e4903
1040 DATA 2056e410e06cd4002000909b52
1050 DATA 656c6561736520312e31206279
1060 DATA 20576f6a63696563682050616c
1070 DATA 61637a9b2d2d2d2d2d2d2d2d2d
1080 DATA 2d2d2d2d2d2d2d2d2d2d2d2d2d
1090 DATA 2d2d2d2d2d2d2d2d9bea60e002
1100 DATA e3026d9029906d908492ade702
1110 DATA 85d6ade80285d7a5d6d002c6d7
1120 DATA c6d6a5d7c9079055a012b9b991
1130 DATA f004d1d6d0e78810f4a900a006
1140 DATA 11d6c811d6a00911d6a00e11d6
1150 DATA f0d1207391a000b1d8f042d1da
1160 DATA f00e90c2b1daf0be20909120ae
1170 DATA 91d0e8208991209091b1d8d1da
1180 DATA d0058810f730a520ae9120a391
1190 DATA d0cf2000904d61726b206e6f74
1200 DATA 20666f756e642e9bea6c0a0078
1210 DATA ad0ed448293f8d0ed4a006b1d6
1220 DATA 850cc8b1d6850da5d68de702a5
1230 DATA d78de802207391a002b1da85dc
1240 DATA c8b1da85dda000b1daf028d1d8
1250 DATA f00f209091b1da91dc8810f920
1260 DATA ae91d0dc208991209091b1d891
1270 DATA dc8810f920a39120ae91d0c768
1280 DATA 8d0ed4582000904d656d6f7279
1290 DATA 202620766563746f7273207265
1300 DATA 6c65617365642e9bea6c0a0018
1310 DATA a5d6691385d8a5d7690085d9a9
1320 DATA cc85daa99185db60e6d8d002e6
1330 DATA d960a001b1daaaa88818a5da69
1340 DATA 0485da9002e6db60188a65d885
1350 DATA d89002e6d960188a65da85da90
1360 DATA 02e6db604d41524b20200000a9
1370 DATA 008de702a9008de8026001020a
1380 DATA 0000000202790051fb03020002
1390 DATA cec004020602cdc00502080219
1400 DATA fc06020a022ceb07020c02adea
1410 DATA 08020e02ecea09021002cdc00a
1420 DATA 021202cdc00b021402cdc00c02
1430 DATA 160230c00d022202e2c00e0224
1440 DATA 028ac20f02260211ec10022802
1450 DATA 00001102360292c01201f402e0
1460 DATA 13031a035030e414031d034340
1470 DATA e4150320034500e41603230353
1480 DATA 10e4170326034b20e418032903
1490 DATA 00000019032c030000001a032f
1500 DATA 030000001b0332030000001c03
1510 DATA 35030000001d03380300000000


Wojciech Palacz




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

Pixel 2002