SYSTEM OPERACYJNY QMEG


       1. Wstep

System operacyjny QMEG OS V3 przeznaczony jest dla komputerow ATARI 800XL lub
1300XE. System moze zarzadzac RAM dyskami. Wykorzystywanie dodatkowej pamieci
(do 192 kB) realizowane jest poprzez 16 kB banki pamieci w zakresie adresow
$4000-$7FFF. Sterowanie bankami odbywa sie przez PORTB ($D301). QMEG obsluguje
wszystkie kompatybilne ze standardem PERCOM "przyspieszacze" dla dyskow 1050
(Happy, Speedy, Turbo). Dodatkowo, mozna tez przy pomocy drukarki EPSON
wydrukowac caly zastaw znakow ATARI (lub dowolny inny).
W przeciwienstwie do oryginalnego OS-u, QMEG OS nie moze wystartowac SELF
TEST-u przez szyne systemowa, poniewaz nie ma go juz w tym miejscu pamieci.
Usuniety jest takze miedzynarodowy zestaw znakow. Aby zachowac czytelnosc
wszystkich tekstow, (ktore moglyby odwolywac sie do tego drugiego zestawu
znakow) QMEG ignoruje wszystkie proby wykonania rozkazu POKE 756,224.

QMEG OS jest kompatybilny z OS-em 800XL. Oczywiscie zawsze moga wystapic
problemy z programami, ktore dla wlasnych potrzeb uzywaja komorek za strony 2 i
3 (na tych stronach QMEG OS ma wlasne komorki systemowe). Ale i programy, ktore
normalnie uruchomic mozna na ATARI 400/800, daja sie uruchomic pod QMEG OS-em.


       2. Monitor OS

MONITOR OS zainstalowany jest w miejscu dotychczas zajmowanym przez SELF TEST,
tutaj znajduja sie wszystkie funkcje QMEG OS-u.

              2.1 Wywolania MONITORA OS

Do MONITORA OS przejsc mozna:

a) z BASIC-a komenda "BYE";
b) z DOS-a przez "RUN E471";
c) z MONITORA MLM poprzez "Q";
d) po nacisnieciu klawiszy SELECT, RESET.

Kombinacja SELECT, RESET zawsze powoduje przejscie do MONITORA OS, bez wzgledu
na stan procesora (takze wtedy, gdy komputer sie zawiesil). Przy tej kombinacji
klawiszy pamiec operacyjna nie jest kasowana, ta kombinacja nie dziala wiec jak
zimny start komputera.
Monitor zglosi sie na ekranie nastepujaco:

       QMEG OS V3 (c)'87 S. Dorndorf
                WAINTING

       --------------------------------
       Prg $:Drive  1 2 3 4 8 | AB Ram
       RAM  :Type   - - A B A | MX Disk
       --------------------------------

               2.2 Zarzadzanie RAM dyskami

QMEG OS potrafi sterowac dodatkowym rozszerzeniem pamieci dla 800XL (130XE).
Dodatkowa pamiec RAM 192 kB moze byc traktowana jako dwa RAM dyski A i B.
Istnieja nastepujace mozliwosci konfiguracji tych dyskow:

       RAM dysk A                      RAM dysk B
--------------------------------------------------------
a) SS pojedyncza gest.         pojedyncza gest.
       90 kB                           90 kB
b) gestosc 1050                XE gestosc 1050
       128 kB                          64 kB
c) D- podwojna gestosc         dysk nie wystepuje
       180 kB

Przez nacisniecie klawisza S, M lub D nastepuje wybranie rodzaju dyskow. Litera
ta odpowiada wybraniu dysku A, dysk B definiowany jest juz automatycznie.
Rodzaj wybranych dyskow wskazywany jest w prawej czesci ekranu pod literami AB.
RAM dysk oznaczony litera X jest kompatybilny z RAM dyskiem D8: w systemie DOS
II+/D wersji 6.2.
Aby uzywac te RAM dyski nalezy przpisac im jakis adres, od 1 do 4 lub 8.
Dokonuje sie tego poprzez uzycie klawiszy A i B.

               2.3 Przypisywanie adresow dyskowych

Aby przypisac RAM dyskom adresy fizycznego urzadzenia nalezy przy pomocy
klawisza SPACE ustawic kursor na wybranym numerze napedu (1 do 4 lub 8) i
nacisnac litere A lub B. W tym momencie napedowi #n przypisany zostanie wybrany
RAM dysk. Wszystkie odwolania do napedow realizowane z poziomu BASICA-a lub
DOS-u kierowane beda do przypisanego RAM dysku. Jezeli adres zostal wybrany
omylkowo, to po naprowadzeniu kursora nalezy nacisnac klawisz "-". Pod adresem
dyskowym pojawia sie oznaczenia przypisanego mu RAM dysku.

               2.4 Czytanie i zapis RAM dysku A (kopiowanie dyskietek)

Aby wczytac cala dyskietke do RAM dysku A nalezy:
- zalozyc dyskietke zrodlowa do napedu #n;
- ustawic kursor pod liczba n;
- nacisnac klawisz "R" (read);
Po nacisnieciu klawisza START, RAM dysk A zostanie sformatowany i nastepnie
zawartosc dyskitki zostanie przekopiowana do tego RAM dysku. Podczas
kopiowania na ekranie pokazywany jest licznik kopiowanych sektorow. Jezeli
podczas kopiowania wystapi blad, to mozliwa jest jedna z trzech akcji:
a) START  - nastapi proba powtorzenia operacji;
b) SELECT - nastapi zignorowanie tej operacji (pominiecie blednego sektora);
c) OPTION - zakonczenie wczytywania.

Aby przepisac zawartosc calego RAM dysku A na dyskietke, nalezy wsunac do
napedu dyskietke docelowa, kursor naprowadzic na zadany nr dysku i wcisnac
klawisz "W" (Write). Nacisniecie START spowoduje, ze dyskietka zostanie
najpierw sformatowana a nastepnie zawartosc RAM dysku A zostanie przepisana.
Jezeli dyskietka docelowa nie ma byc formatowana, to zamiast START nalezy
nacisnac SELECT.
Przypisujac stacji nr.1 RAM dysk A mozna bootowac wczytana dyskietke, inicjujac
zimny start klawiszami SHIFT i INVERSE.

               2.5 Skorowidz dyskietki w systemie DOS 2.*

Po nacisnieciu klawisza "L", na ekranie wyswietlonych zostanie pierwszych osiem
nazw zbiorow z dyskietki (lub RAM dysku). Kolejne nacisniecie "L" wyswietla
nastepna osemke nazw. Klawisz SPACE powoduje powrot do MONITORA OS.
Uwaga! Jesli RAM dysk jest zablokowany, nalezy nacisnac SHIFT-L, wowczas jednak
pamiec od adresu $7F00 do $7FFF zostanie ponownie zapisana !!!

               2.6 Ladowanie programow maszynowych formatow COM i BIN

Podobnie jak w pkt. 2.5 nalezy przeczytac zawartosc skorowidza dyskietki lub
RAM dysku za pomoca "L", a nastepnie nalezy nacisnac cyfre odpowiadajaca
wybranemu programowi. Zawartosc pamieci roboczej zostanie wymazana, a wskazany
program zostanie zaladowany (pojawi sie komunikat: Loading xxxxxxxx.yyy) i
wystartowany. Kod maszynowy programu musi byc "startowalny" takze bez DOS-u.

               2.7 Zarzadzanie BASIC-em i CARTRIDGE-m

Zarzadzanie wykorzystywaniem (wybor) niektorych blokow pamieci odbywa sie przez
uzycie odpowiedniej kombinacji klawiszy. To jakie bloki sa aktualnie uzywane
wskazywane jest pod symbolem Prg w lewej czesci wyswietlanej tabliczki monitora

  Kombinacja           Znaczenie              skrot
----------------------------------------------------
a) START-Z     Wlaczenie BASIC-a ROM           BAS
b) START-C     Wlaczenie Cartridge-a           CAR
c) START-X     Wlaczenie RAM pod adr. C000     RAM

BASIC oraz CARTRIDGE startuja ze startu zimnego, co mozna osiagnac kombinacja
RESET-START.

               2.8 Startowanie DOS-u z RAM dysku C.

Specjalnie dla DOS-u wydzielony jest RAM dysk C. Ma on wielkosc 5.25 kB. Aby
zapisac DOS do tego RAM dysku, nalezy wczytac DOS a nastepnie (z BASIC-a) wydac
instrukcje POKE 1792,196. Tak poprawiony DOS nalezy zeskladowac na nowej
dyskietce.
Kiedy DOS wczytany bedzie z tej dyskietki, nastapi automatyczne zaladowanie
DOS-u do RAM dysku C. Aby wystartowac DOS z tego RAM dysku nalezy (w MONITORZE
OS) wcisnac klawisze CONTROL-CAPS. Wykorzystanie tej mozliwosci pozwala
"trzymac" w pamieci DOS tak dlugo, jak dlugo komputer jest wlaczony. Do
wykorzystania zalecany jest DOS II+/D (wersja 6.1 i 6.2), ktory wspolpracuje z
QMEG OS-em w obu gestosciach zapisu i roznymi RAM dyskami.
RAM dysk C umieszczony jest na ostatnich 44 sektorach RAM dysku X, dlatego tez
jest z QMEG OS-u niedostepny (ERROR 139).

               2.9 Tryby ULTRA SPEEDY, TURBO i HAPPY

Aby floppy dysk #n pracowal w trybie ULTRA nalezy ustawic kursor na wymaganym
numerze floppy dysku i nacisnac klawisz "U". Jezeli wszysto jest w porzadku,
pod wybranym numerem pojawi sie litera "U", w przeciwnym razie pojawi sie znak
"-" i stacja nie przejdzie do tego trybu.
Aby wlaczyc tryb HAPPY, nalezy w analogiczny sposob nacisnac klawisz "H".
Powrot do normalnego trybu pracy stacji uzyskuje sie przez nacisniecie klawisza
"-".

               2.10 Dodatkowe funkcje HAPPY

Dla trybu HAPPY wystepuja dodatkowe funkcje MONITORA OS:
SHIFT-I  zimny start stacji;
SHIFT-O  wylaczenie bufora sciezki.

               2.11 Kontrolowany zimny start

Kontrolowany zimny start nastepuje automatycznie (rodzaj funkcji "U") albo po
nacisnieciu "N". W niektorych, chronionych programach nalezy uzyc kombinacji
SHIFT-INVERSE, przez co nastapi zimny start systemu.
Oczywiscie jesli niezbedny jest BASIC nalezy miec wcisniety OPTION.

               2.12 Wl/Wyl RAM dyskow i przelaczanie bankow.

Wcisnieci "P" powoduje zablokowanie RAM dysku. Tlo ekranu zmieni sie na rozowe
i jednoczesnie adres 54017 (PORTB) jest zabezpieczony przed zapisem. Moze to
byc bardzo pomocne przy ladowaniu programow dla komputerow serii 400/800. Przy
zablokowanej komorce PORTB nie dziala monitor MLM poniewaz umieszczony jest w
obszarze, w jakim 800XL ma SELT TEST. Ponowne nacisniecie "P" odblokowuje
system.

               2.13 Funkcja $

Dla wlascicieli monitorow i telewizorow monochromatycznych, pod znakiem $ w
tabliczce MONITORA OS wskazywany jest jego aktualny stan.
a) "-" stan normalny;
b) "R" nacisnieto R (czytanie);
c) "W" nacisnieto W (pisanie);
d) "P" Ram dysk zablokowany.

               2.14 Opuszczenie MONITORA OS.

MONITOR OS opuscic mozna nastepujaco:
a) ESC                 powrot do DOS-u;
b) CNTL-CAPS           nowy start DOS-u z RAM dysku C;
c) RESET               powrot do DOS-u bez BASIC-a i CARTRIDGE
d) SHIFT-INVERSE       kontrolowany zimny start;
e) RETURN              skok do MONITORA MLM 2.1


       3. MONITOR MLM 2.1

Monitor MLM 2.1 jest prostym narzedziem do analizy i dokonywania zmian w
pamieci.

               3.1 Skok do MLM 2.1

Z MONITORA OS do MLM przechodzi sie po nacisnieciu RETURN. Z DOS-u po
"RUN E480". Prawie wszystkie rozkazy MLM zaczynaja sie adresem, ktory znajduje
sie w liczniku programowym AD i jest umieszczany na stale. Przy tych rozkazach
mozna takze adres ten opuscic, dopoki w MLM znajduje sie wartosc AD.
Komorki pamieci PBCTL ($D303) nie mozna zmieniac. Podobnie nie mozna uzywac
przerwan w obszarze pamieci od $5000 do $5800.

               3.2 Znak poczatkowy w MLM

a) $    MLM oczekuje, ze wszystkie adresy beda podawane w postaci hex. Adresy
        dziesietne musza byc podane z porzedzajacym je znakiem #.
b) #    MLM oczekuje, ze wszystkie adresy beda podawane dziesietnie. Adresy hex
        musza byc poprzedzone znakiem $.
c) ?    Zadanie jest niewykonalne.
d) >xxx wykryto blad I/O (nr dziesietnie).

               3.3 Rozkazy MLM

N      nowy start MLM (lub "$E480GO");
Q      skok do MONITORA OS (lub "$E471GO");
H      wlaczenie trybu heksadecymalnego;
Z      wlaczenie trybu dziesietnego.

               3.4 Prosta arytmetyka w MLM.

a) adr=        przeliczanie adresu na wartosc hex lub dziesietna;
b) adr+adr     dodanie adresow;
c) adr-adre    odjecie adresow;
d) =           pokazuje wartosc AD.

               3.5 Wyswitlanie zawartosci pamieci.

a) adr;        wyswitlonych zostanie pierwszych 8 bajtow od adresu adr. Adres
               podany jest hex lub decymalnie.
b) adr         jak w pkt a) lecz w trybie hex bajty te pokazane sa w kodzie
               ATASCI.
c) adr"        pierwsze 8 bajtow od adresu adr pokazanych bedzie jako kody
               ATASCI.
d) adr'        pierwsze 8 bajtow od adresu adr pokazanych bedzie jako kody
               obrazu.
e) adrL        zawartosc pamieci od adresu adr zostanie zdisasseblowana na 20
               wierszy.

We wszystkich rozkazach mozna zamiast "adr" napisac "adr.adr" co oznaczac
bedzie obszar miedzy adresami. Jezeli rozkaz zostanie uzupelniony na koncu
znakiem "*" to ostatni rozkaz bedzie powtarzany. Przerwanie tego mozliwe jest
poprzez klawisz BREAK.

               3.6 Zmiana zawartosci komorek pamieci.

a) adr;bajt bajt bajt ...
               Poczynajac od adresu adr, pamiec zapelniona zostanie kolejnymi
               bajtami zapisanymi za adresem. Mozna zamiast bajtow podac
               wartosci liczbowe, ktore zapisywane sa do pamieci w kolejnosci
               LO bajt i HI bajt.
b) adr"ATASCII Poczynajac od adresu adr, do pamieci zostanie wprowadzony
               lancuch kodow ATASCII podany po adresie.
c) adr'kody obrazu
               Poczynajac od adresu adr, do pamieci zostanie wprowadzony
               lancych podany jako kody obrazu.

               3.7 Przenoszenie, porownywanie i wypelnianie pamieci.

a) adr1.adr2 M adr3    Zawartosc pamieci od adresu adr1 do adr2 zostanie
                       przeniesiona na obszar zaczynajacy sie od adr3.
b) adr1.adr2 V adr3    Zawartosc pamieci od adresu adr1 do adr2 zostanie
                       porownana z zawartoscia pamieci adr3. Przy roznicy
                       zostana pokazane adresy i porownywane bajty.
c) adr1;bajt
   adr1.adr2 M adr1+1  Zawartosc pamieci od adr1 do adr2 zostanie wypelniona
                       zawartoscia adresu adr1.

               3.8 Przeszukiwanie pamieci roboczej

a) adr1.adr2;bajt bajt Pamiec robocza jest przeszukiwana od adresu adr1 do adr2
                       w poszukiwaniu podanych bajtow albo slow "bajt bajt ..."
                       Adresy znalezionych bajtow zostana wyswietlone.
b) adr1.adr2"ATASCII   Pamiec robocza jest jak w pkt a) przeszukiwana w celu
                       znalezienia lancucha znakow ATASCII podanych w rozkazie.
c) adr1.adr2'kody obr. Jak w pkt a) z tym, ze poszukiwany jest lancuch kodow
                       obrazu.

               3.9 Czytanie/zapis sektorow z/na dysk.

a) adrsecnr.count     Zawartosc pamieci od adresu adr zapisz na dysk od
                       sektora secn do sektora secnr+count-1.

Wartosc count musi byc mniejsza od 255 (wartosc 0 oznacza 256). Rozkazy
obsluguja takze podwojna gestosc dyskow.

               3.10 Modyfikowanie rejestrow i start programow

a) R           Pokazana zostanie zawartosc rejestrow symulowanego procesora.
b) W=bajt      Umieszczenie wartosci "bajt" w akumulatorze.
c) X=bajt      Umieszczenie wartosci "bajt" w rejestrze X.
d) Y=bajt      Umieszczenie wartosci "bajt" w rejestrze Y.
e) P=bajt      Umieszczenie wartosci "bajt" w rejestrze F procesora.
f) adrGO       MLM zaladuje rejestry A, X, Y i F wartosciami symulowanego
               procesora 6502 i skoczy poprzez JSR pod adres adr.

Jezeli napotkany zostanie rozkaz BRK, nastapi przerwanie programu, i zostanie
wywolany MLM z rozkazem R.

               3.11 Wykorzystanie RAM przez MLM.

a) zerowa strona korzysta z adresow 4-7, 21, 22, 112-120.
b) W OS RAM uzyte sa adresy: 583-619, 713-724.

Adresow tych nie mozna zmieniac w trybie MLM.

       4. Klawisze funkcyjne

CTRL-HELP      zablokowanie/odblokowanie klawiatury;
CTRL-4         wl/wyl dzwieku z klawiatury;
CTRL-5         wl/wyl migajacego kursora;
CTRL-6         wylaczenie obrazu (ANTIC-a) co podwyzsza szybkosc pracy
               procesora o ok. 30%. Obraz powraca po nacisnieciu dowolnego
               klawisza.
CTRL-7         ustawienie predkosci powtarzanie znakow przy wcisnietym
               klawiszu. Mozna ustawic szybkosc mala, srednia i duza.
CTRL-8         dziala jak BREAK, ale wykorzystywane jest tylko przy edytowaniu
               z klawiatury.
CTRL-9         jesli kursor nie jest w lewym rogu to skoczy tam.
CTRL-0         przenosi kursor na koniec ekranu.

       5. Sterowanie drukarka.

               5.1 Drukowanie przy pomocy drukarki EPSON.

Za pomoca drukarki EPSON mozna latwo wydrukowac dowolne teksty, przy czym
uzyskac mozna listingi wysokiej jakosci. Do wydrukowania mozna uzywac skrotu
"P:" zamiast "P2:". Aby zapewnic foramt drukowanego tekstu mozna wykorzystac
nastepujace adresy:

adres  wartsosc        znaczenie
------------------------------------------------
29     RAMTOP-B        Adres poczatku bufora graficznego (tylko bajt HI adresu)
30     60              max. liczba znakow w wierszu
31     60              liczba wierszy na strone
757    224             adres poczatku generatora znakow (tylko bajt HI adresu)
758    'K              rozkaz dla drukarki EPSON 'L lub 'K
                       (pojedyncza/podwojna gestosc).

Wartosci te sa ustawianie po kazdorazowym RESET na nowo.
Uwaga! Podaczas drukowanie przy pomocy "P2:" drukarka musi miec do dyspozycji
512 bajtowy bufor. HI bajt adresu tego bufora musi zostac umieszczony w komorce
29. Po wydrukowaniu liczby wierszy podanych w komorce 31, nastapi automatyczny
wysow papieru do nowej strony. Wartosc 0 w tej komorce oznacza wylaczenie
automatycznego wysuwu strony.

               5.2 Druk z podwojna gestoscia - 120 znakow w wierszu

Aby osiagnac ten efekt nalezy pod adresem 756 umiescic wartosc 'L (dziesietnie
76) i odpowiednio zmienic zawartosc komorki 30. Efekt ten osiagnac mozna takze
poprzez specjalne uzycie adresu drukarki, mianowicie "P3:gn", w ktorym:
- g okresla rozkaz graficzny K lub L;
- n okresla ilosc znakow w wierszu.
Wartosc n od 3 do 9 oznacza odpowidnio od 30 do 90 znakow w wierszu, wartosc 0
1 i 2 oznacza odpowiednio 100, 110 i 120 znakow w wierszu.
Przyklad: LIST "P3:L2" oznacza, z listing BASIC-a bedzie wyprowadzony na
drukarke z podwojna gestoscia, 120 znakow na wiersz.
Uwaga: przy uzywaniu podwojnej gestosci druku bufor drukarki musi miec 1 kB.
Podczas drukowania przez "P2:" nie wolno nacisnac klawisza BREAK.
Jezeli uzyty zostanie roznaz ON w DOS II+/D nalezy przed tym rozkazem nacisnac
RESET, albowiem w przeciwnym razie komorka 29 wskazuje na adres BASIC-ROM.

               5.3 Centronics

System QMEG ma mozliwosc wspolpracy z interfacem Centronics. Interface musi byc
obslugiwany przez dodatkowy uklad PIA 6520 zajmujacy adresy $D600-$D6FF. Porty
PIA nalezy podlaczyc w nastepujacy sposob:

       PIA     Centronics      Funkcja

       PA0-PA7 pin 2-9         DATA 0-7
       PB0     pin 1           STROBE
       PB7        --           0-centronics wlaczony
                               1-centronics wylaczony
       PB6     pin 11          BUSY
       PB5        --           1-konwersja konca znaku wiersza (155 na 13, 10)
                               0-bez konwersji

       6. SIO i DISKINTERFACE

               6.1 Diskinterface (DSKINV)

a) 34  "       formatowanie w srdnie gestosci;
b) 35  #       automatyczne formatowanie w podwojnej gestosci formatu PERCOM;
c) 63  ?       wlaczenie szybkiego zapisu i ULTRA SPEED;
d) 81  Q       zatrzymanie silnika;
e) 72  H       w zaleznosci od DAUX1 i DAUX2 (778 i 779) wlacza dodatkowe
               funkcje HAPPY;
f) 83  S       rozkaz STATUSU wlacza R/W (czytanie i zapis) i rozkaz P -
               automatycznie na poprawna dlugosc sektorow (adres DSKLN 725).

               6.2 SIO i USIO

QMEG OS wykorzystuje dwa podprogramy SIO. Jednym jest podprogram USIO, ktory
pracujac bez przerwac I/O realizowany jest szybciej niz normalne SIO. USIO jest
wywolywany przy wszystkich szybkich operacjach dyskowych (Speedy, Happy).
Dopoki nie jest wywolnay RAM dysk dostepny jest normalny podprogram SIO 800XL.
SIO wytwarza cztery przerwania:
1. 128 Nacisniecie klawisza BREAK.
2. 139 Rozkaz niedozwolony.
3. 140 Blad transmisji danych.
4. 144 Rozkaz jest prawidlowy, ale niewykonalny.

               6.3 RAM dyski A i B

Oba RAM dyski mozna uzywac poprzez SIO lub DSKINV tak jak inne floppy dyski.
RAM dyski rozpoznaja takze sygnaly typu PERCOM PUT i rozkazy statusowe. Po
sformatowaniu oba RAM dyski maja taki sam format. Bledy RAM dyskow maja numery:
1. 139 Za mala lub za duza liczba sektorow;
2. 138 Proba zapisu do RAM dysku B, sformatowanego w innej gestosci.

Jezeli QMEG OS zainstalowany jest w komputerze z rozszerzeniem pamieci typu 1
(zobacz rozdz. 8) przy uzywaniu RAM dyskow w obsarze $4000-$7FFF nie moze byc
umieszczony zaden Display List ani obszar obrazu, gdyz mogloby w tej sytuacji
dojsc do zalamania systemu.
Podczas dostepu do RAM dysku QMEG OS wlacza Display List jesli w komorce DLIEN
(787) znajduje sie wartosc wieksza od 127.

               6.4 Tablica Konfiguracji Napedow

Tablica ta jest na stale ustawiona wg kolejnosci napedow i zajmuje adresy od
1008 do 1015 (dla napedow od 1 do 8). Naped #0 jest zawsze identyczny z RAM
dyskiem A a naped #5 z dyskiem #8.

Wartosc        Tryb pracy      Skrot w MONITORZE OS
0 lub >4       tryb normalny           "-"
1              tryb ULTRA SPEED        "U"
2              RAM dysk A              "A"
3              RAM dysk B              "B"
4              tryb HAPPY              "H"


       7. Organizacja pamieci.

Ponizej podano miejsca pamieci, ktore maja inne znaczenie niz w 800XL.

               7.1 Strona zerowa

adres  opis
0,1    Oba bajty sa wolne i nie sa wymazywane nawet przy starcie zimnym.
4-7    MLM
18-20  Czas (niekasowalny przez RESET).
21,22  MLM, OEMON-File loader, DISKIF
28-31  "P2:"
54,55  Wskaznik bufora grafiki dla "P2:"
74,75  Do dowolnego wykorzystania.
96,97  IX, IY dla procedury DRAWTO.
112-120 MLM i zmienne dla DRAWTO.

               7.2 OS RAM (strony 2 i 3)

563              Do dowolnego wykorzystania.
568,569  VCTRLB  wektor dla CTRL-8
581      FMTFL   format PERCOM RAM dysku (128-single, 0-medium, 1-double).
583-619  OSMON-Display List, MLM-bufor wiersza, "P2:"-bufor zmiany bitu znaku.
648      FNKEYS  128-klawisze funkcyjne wlaczone, 0-wylaczone.
654,655  STTEMP  Szybkosc dla DSKIF.
700,745          Przeznaczone do pozniejszego uzycia.
713-724          Zmienne dla MLM i bufor PERCOM dla DSKIF.
727      FLASH   128= kursor migajacy, 0= wylaczony.
728      FLASH   205= kursor migajacy aktywny.
735      FLINE   Licznik wierszy dla automatycznego wysuwu stron przy "P2:"
757      PFONT HI bajt adresu generatora znakow dla "P2:".
758      P2CMD   Rozkaz dla drukowania poprzez "P2:", K- normalnie, L-podwojna
                 gestosc.
759      PMODE   1= druk przez "P2:", 0= druk przez "P:".
760,761  PCOL, PTEMP kolejne zminne "P2:".
787      DLIEN   128= DLI wlaczony wg RAM dysku.
832-959  IOCB    Uzywany jest takze dla ekranu MONITORA OS.
1003     RSTAPH  Przy RESET APPHMI ustawiane jest na 0 (oznacza to, ze edytor
                 moze byc stale otwarty).
1004,1005 DBAUD  Procedury transmisji dla ULTRA SPEED.
1006     PBLOCK  128= po RESET ram dysk jest zablokowany.
1007     TYPEA   Format RAM dysku A.
1008-1015 ASSIGN Tablica Konfiguracji Dyskow.
1017     ROMSCM  Wartosc CHECKSUM dla calego QMEG OS.
1018-1020        Do dowolnego wykorzystania.


       8. Hardware.

QMEG OS V3 wspolpracuje z nastepujacym hardware-m.

               8.1 Rozszerzenia pamieci

RAM dyski moga miec 128 albo 320 kB. Zarzadznie dodatkowa pamiecia realizowane
jest jak w przypadku modelu 130XE, poprzez 16kB baki pamieci w obszarze $4000-
$7FFF, sterowane pojedynczmi bitami PORTB ($D301). QMEG OS wykorzystuje dwa
typy obslugi portu B:


     PORTB B
1)     7       0=SELF TEST wlaczony, 1=wylaczony (jak w 800XL).
       4       0=dostep do ANTICA i CPU poprzez bity 2,3,5 i 6 wg przedzielone-
               go banku pamieci, 1=dostep normalny.

2)   (Rozszerzenie COMPY SHOP 320 kB).
       7       0=SELT TEST wlaczony jesli bity 4 i 5 =1, w przeciwnym razie
               wylaczony.
       5       0=wylacznie dostep ANTIC.
       4       0=wylacznie dostep CPU poprzez bity 2,3,6 i 7 do bankow pamieci,
               1=normalny dostep do pamieci.

Przy obu typach rozszerzenia wykorzystuje sie banki pamieci od 1 do 15
(nr wyznaczaony jest przez cztery wymienione bity). Rozroznienie typu nastepuje
automatycznie.

               8.2 Rozszerzenia dla stacji 1050

QMEG OS rozpoznaje wszystkie rozszerzenia stacji 1050 kompatybilne ze stadardem
PERCOM przy podwojnej gestosci zapisu tj. 180kB (takich jak RANA, HAPPY,
SPEEDY, TURBO).
Wlasciciele rozszerzen HAPPY i SPEDDy maja zachowana pelna szybkosc transmisji.
Nalezy jednak zapamietac, ze napedy #1 i #2 moga byc dowolne (jeden HAPPY i
jeden SPEEDY). Napedy #3 i #4 musza byc jednak tego samego typu jak naped #1.


							-- Gumi/Tgt --