-- SORD m.5 ------------------------------------------------------------------ 1. UVOD ************* Pametova oblast od adresy &7000 do adresy &7300 je vyhrazena pro tzv. systemo- ve promenne, tj. pro promenne, ktere informuji o cinnosti systemu a urcuji podrobeji nektere cinnosti systemu. Promenne jsou urceny umistenim ( hexadeci- malni adresa ) a jmenem, takovym jake je pouzito v MONITOR HANDLING. U promen- nych je uvedena i jejich inicializacni hodnota pro jednotlive jazyky ( I, G, F pripadne D ) a system ( S ). Jednotlive interpretry jazyku BASIC vyuzivaji tuto oblast pameti stejne jako MONITOR ROM. Navic vyuzivaji jeste dalsi oblast RAM pro sve potreby. Tato oblast na oblast systemovych promennych navazuje. 2. Systemove promenne pro MONITOR ROM ******************************************* 2.1. Systemova stranka ========================== adresa hodnota nazev charakteristika -------|-------|-------|------------------------------------------------------ 7000 186C IVCTC0 Adresa pro preruseni od kanalu 0 obvodu Z80 CTC. Vyuziva se pro obvod Z80 SIO, je-li pripojen modul SI-5. Jinak je volny a lze jej pouzit 7002 1861 IVCTC1 Adresa pro preruseni od kanalu 1 obvodu Z80 CTC.Vyuzit nejcasteji k obsluze zvukoveho generatoru ( SML inter- preter a v BG pri PLAY ). Mene casto jako casovac periferii 7004 186C IVCTC2 Adresa pro preruseni od kanalu 2 obvodu Z80 CTC. Vyuziva se jako hodiny CLOCK pro obvod Z80 SIO, je-li pripojen modul SI-5. Jinak je volny a lze jej pouzit 7006 01DF IVCTC3 Adresa pro preruseni od kanalu 3 obvodu Z80 CTC.Vyuzi- van pro styk s videoprocesorem VDP, obsluhu uzivatel- skeho preruseni,klavesnice,joypady,... Je vzdy pouzit 7008 C30000 IVCTC6 Instrukce ve strojovem kodu zajistujici provedeni operace RST 6. Je definovana uzivatelem pro snazsi spolupraci se systemem 700B C30000 IVCTC7 viz IVCTC6, ale pro RST 7 700E I:14CD SCCDTA Adresa tabulky pro odskoky pri stisku CTRL/klavesa. G:4E2E V teto tabulce jsou postupne zarazeny dvoubytove F:61D2 adresy odpovidajici klavesam CTRL/A,B,...,*, ,... S:14CD 7010 7000 SMEMTA Adresa zacatku RAM pameti systemu. Tato adresa je urcena po zapnuti pocitace testem pameti RAM, ktery zjistuje jeji spravnost 7012 I:8000 SMEMEA Adresa konce pameti systemu. Hodnota je urcena G:9000 po zapnuti testem pameti F:9000 S:8000 7014 7300 SUMMTA Adresa pocatku uzivatelovy pameti 7016 I:8000 SUMMEA Adresa konce uzivatelovy pameti G:9000 F:9000 S:8000 7018 00 SVSSW Promenna urcujici stav obrazovek v systemu. BIT: 7,6,5,4: ..... bez vyznamu 3 - LAYOUT ... usporadani pameti VRAM: 0: GI 1: GII 2 - DSPPGE ... cislo display stranky ( viditelne ) 1 - DSPTBL ... obrazovka displaye: 0: procesni 1: skryta 0 - WRTPGE ... cislo psaci stranky ( procesni ) 7019 21 STDLY Urceni prenosove rychlosti na kazetovy magnetofon. Pri zpetnem prehravani do pocitace se pocitac automaticky prizpusobi dane rychlosti. Rychlost lze spocitat: B:=(1/(D1+N1)+2/(D2+2*N1))/3 kde N1 .... N*8.929 E-6 N je hodnota v STDLY D1 .... 35.36 E-6 D2 .... 49.71 E-6 2.2 Informativni stranka klavesnice ======================================== 701A I:90 KINFLG Urceni vlastnosti klavesnice pro vstup. BIT: G:90 7 - zvuk pri stisku klavesy F:90 6 - rolovani probehlo S:94 5 - 1 = je stiskla klavesa RESET 4 - psani pri prubeznem ukladani do vyrovnavaci pameti klavesnice ( umoznuje FUNC klavesy ) 3 - nevyuzit 2 - mod jeste nebyl menen 1,0 - nastaveni modu vstupu: 00: LETTER 01: CAPS 10: GRAPHIC 11: nedefinovan 701B 09E7 KBCTET Adresa konverzni tabulky pro klavesnici.V teto tabulce jsou postupne ulozeny znakove ekvivalenty ktere se maji zobrazit po stisku klavesy 701D 00 ASWN01 Informace o stavu klavesy ATTACK na prvnim joypadu 701E 00 JOYDR1 Informace o stavu packy na prvnim joypadu 701F 00 ASWN02 Informace o stavu klavesy ATTACK na druhem joypadu 7020 00 JOYDR2 Informace o stavu packy na druhem joypadu 7021 002E JOYPRC Adresa preruseni pri stisku packy ovladace 7023 002E ASWPRC Adresa preruseni pri stisku tlacitka ATTACK 7025 I:3AA6 RSTPRC Adresa preruseni pri stisku SHIFT + RESET G:2FE9 F:26A8 S:021B 7027 I:3AAF HLTPRC Adresa preruseni pri stisku CTRL + RESET G:2FF2 F:26CA S:021B 7029 00 PSHKAD Adresa posledniho stiskleho tlacitka. Kodove odpovida INKEY(0) 702A 00 LSKYST Informace o poslednim stisklem SHIFT,FUNC a CTRL. BIT: 7 - specialni CTRL flag.Tyka se <FUNC> + <1>,<2> a <3> 6 - ? 5 - ? 4 - ? 3 - pravy SHIFT 2 - levy SHIFT 1 - FUNC 0 - CTRL 702B 00 LKYADR Adresa posledniho schvaleneho tlacitka. Tlacitko je schvaleno teprve po urcite dobe drzeni 702C 05 CHATIT Citac pro zamezeni omylu stisku ( tj. zakmitu tlacitka ) 702D 1E ARPSTI Inicializacni hodnota pro citac zacnuti autorepeatu 702E -- ARPSTW Citac pro autorepeat. Cita se od hodnoty v ARPSTI k nule. Je-li v nule jeste stiskle tlacitko, dojde k autorepeatu 702F 04 ARPITI Inicializacni hodnota pro citac cekani v autorepeatu 7030 -- ARPITW Citac ceka v autorepeatu. Timto citacem je urcena doba cekani mezi vypisy znaku v autorepeatu 7031 70DF KBUFTA Adresa vyrovnavaci pameti klavesnice. Do tohoto prostoru vyrovnavaci pameti se pri psani prubezne ukladaji jednotlive kody stisklych klaves 7033 -- KDTPPT Citac pridavani ( vstupu ) do bafru klavesnice 7034 -- KDTGPT Citac cteni ( vystupu ) z bafru klavesnice 7035 3F KBFSIZ Delka vyrovnavaci pameti klavesnice 7036 0000 KINWTM Pocet period pro stav klavesnice WAIT. Tj. pro stav zakazu cteni 7038 32 KINWTH Standardni delka periody pro WAIT 7039 -- TERMAL Kod ukoncovaciho znaku pro vstup dat. Souvisi s rutinou ACELN v MONITOR ROM 703A 04 BELKF Frekvence zvuku stisku klavesy 703B 02 BELKLF Delka zvuku stisku klavesy 2.3. Stranka rizeni prerusovani =================================== 703C I:27 EVMGFG Urcuje stav prerusovaciho systemu. Pro jednoduchost je G:67 prerusovaci system nazyvan EVENT system, jedno preruseni F:67 je jeden EVENT. BIT: S:23 7 - DWNDFG flag docitani sestupneho citace 6 - UESW proces EVENT uzivatele 5 - KEYSW proces KEY klavesnice 4 - JOYSW proces JOY ovladacu 3 - DWCTSW sestupny citac DWCNT bezi 2 - UPCTSW dopredny citac UPCNT bezi 1 - CLOCKSW proces CLOCK hodin 0 - SPRSW proces SPRITE pohybu 703D I:00 EVMXNO Maximalni pocet EVENTU ( preruseni lze uskutecnovat G:02 naraz nekolik ) F:02 S:00 703E I:0000 EVIFTA Adresa tabulky informaci o jednotlivych EVENT ( je-li G:72F2 rovna 0000, nejsou v danem systemu eventy vedeny ). F:72D5 Tvar jedne polozky v tabulce, BYTE: S:0000 +00 +01 - SUPDLY interval do preruseni +02 - SUPITV inicializacni hodnota intervalu preruseni +03 - citac intervalu +04 +05 - EVPRC adresa rutiny pro obslouzeni EVENTU +06 - ... dalsi polozka v tabulce 7040 00 UEVMGF Uzivatelsky EVENT flag operaci ( bit 0 : 0 = NE, 1 = ANO ) 7041 32 UPCTBI Inicializacni cas pro urceni hodin v doprednem citaci - UP COUNTER. Jde v podstate o urceni casu, kdy se ma citac zvetsit o 1 7042 -- UPCTBW Citac pro urceni hodin v doprednem citaci 7043 -- UPCNT Dopredny citac. Zvysuje svoji hodnotu o 1 za jednotku casu urcenou UPCTBI. Jsou z nej odvozovany hodnoty dodavane funkci TIME v I,G,F 7045 32 DWCTBI Inicializacni cas pro urceni hodin v sestupnem citaci ( DOWN COUNTER ) 7046 -- DWCTBW Citac pro urceni hodin v sestupnem citaci 7047 0000 DWCNT Sestupny citac. Zmensuje svoji hodnotu o 1 za cas urceny DWCTBI 7049 -- CLKBTW Standardni interval systemovych hodin 704A 00 CLOCKS Systemove hodiny - sekundy 704B 00 CLOCKM Systemove hodiny - minuty 704C 00 CLOCKH Systemove hodiny - hodiny 704D FF ALMTM Cas pro alarm - minuty 704E FF ALMTH Cas pro alarm - hodiny 704F I:002E ALMPRC Adresa preruseni pro vykonani ALARMu G:3031 F:002E S:002E 7051 002E EVHPRC Adresa obslouzeni tzv. dnoveho procesu, tj. prekroceni 23:59:59 7053 I:002E SPRPRC Adresa obsluzne rutiny pro obsluhu preruseni G:5765 pro sprajty F:002E S:002E 7055 -- SPSTUS Kopie STATUS registru VDP tykajiciho se sprajtu. BIT: 7 - prerusovaci flag ( vzdy = 1 ) 6 - flag peti sprajtu v rade ( 1 = jsou ) 5 - flag srazky sprajtu ( 1 = srazka ) 4,3,2,1,0 - cislo sprajtu, jez je paty v rade 7056 02 SPSTEP Urcuje krok sprajtu v ose X 7057 01 SPSTPC Urcuje krok sprajtu v ose Y 7058 00 BELKC Citac pro urceni delky zvuku klavesy 7059 00 BELC Citac pro urceni delky zvuku BEL 2.4. Stranka tiskarny ========================= 705A I:03 POUTFG Nastaveni vystupni charakteristiky. BIT: G:03 2 - tabulace plati F:03 1 - autonewline S:07 0 - 0=CR 1=CR+LF 705B 50 PMXCLM urceni maximalniho poctu znaku na radek 705C __ PHDPOS Informativni pozice tiskove hlavy 2.5. Hudebni stranka ======================== 705D 1854 SEXTA Adresa obsluzne rutiny pro zvukovy generator 705F 1A79 SEXPA Adresa tabulky dat pro urceni nastroju ve zvukovem generatoru 7061 1F TMPOD Konstanta pro inicializaci citace rychlosti ( tempa ) hudby 7062 __ TMPOC Citac rychlosti ( tempa ) hudby 7063 00 MSCAL Data transpozicni pro zvukovy generator 7064 14 byte SGSYT1 Interpreter - tabulka pro 1. kanal 7072 14 byte SGSYT2 Interpreter - tabulka pro 2. kanal 7080 14 byte SGSYT3 Interpreter - tabulka pro 3. kanal Tvar tabulek ( adresa ... obsah ) : ------------------------------------ +00 +01 ... adresa vyrovnavaci pameti pro prislusny kanal ( 1-715F; 2-717F; 3-719F ) +02 ... delka vyrovnavaci pameti 20 +03 ... vystupni citac 00 +04 ... vstupni citac 00 +05 ... hold cas - cas mezery 07 +06 ... hlasitost 00 +07 ... oktava 02 +08 ... implicitni delka tonu 10 +09 +0A ... adresa ulozeni dat 0000 +0B ... data vystupni citac 10 +0C ... citac delky tonu 00 +0D ... citac HOLD casu 00 2.6. Stranka magnetofonu ( ACMT stranka ) ============================================= 708E 00 SYSFMT Nastaveni prenosovych parametru. BIT: 2 - OPNFMT 1=flag OPEN 1 - LDMONT 0=OLD 1=VERIFY 0 - BUFSMT kam nahravat: 0=RAM 1=VRAM 708F __ PUTPMT Ukazatel dat pro PUT a GET GETPMT 7090 __ AVILMT Delka nacteneho bloku 7091 __ BSIZMT Delka vyrovnavaci pameti 7092 ____ RWBFMT Adresa vyrovnavaci pameti 2.7. Stranka procesni obrazovky =================================== 7094 00 DIFLGA Nastaveni parametru obrazovky. BIT: 7,6,5 - MODE ... mod obrazovky 000 ... GI 001 ... GII 010 ... M 100 ... T 4 - CUROUT ... kursor mimo VIEW 3 - CURON ... kursor je videt 2 - SRLOC ... obrazovka uzamknuta 1 - DMODE1 ... 0 kody CTRL se vykonaji 1 kody CTRL se zobrazi 0 - DMODE0 ... 0 mod klavesnice je psani 1 mod klavesnice je insert 7095 3800 CODTLA Adresa zacatku obrazovky 7097 3B80 CCOTLA Adresa tabulky barev znaku 7099 2800 CPATLA Adresa tabulky predloh ( usporadani I ) znaku 709B 3B00 SATTLA Adresa tabulky vlastnosti sprajtu 709D 2000 SPATLA Adresa tabulky predloh sprajtu 709F E1 BDCOLA Barva pozadi obrazovky 70A0 00 UPRMVA Horni rozmer VIEW 70A1 00 LFTMVA Levy rozmer VIEW 70A2 18 HEITVA Spodni rozmer VIEW 70A3 20 WIDTVA Pravy rozmer VIEW 70A4 18 HITDA Spodni rozmer obrazovky 70A5 20 WIDTDA Pravy rozmer obrazovky 70A6 00 CURSYA Souradnice kursoru - Y 70A7 00 CURSXA Souradnice kursoru - X 70A8 3800 CURADA Adresa kursoru v pameti VRAM 70AA 00 CCUCRA Znak na pozici kursoru 70AB 10 DISPCA Doba po kterou je kursor videt 70AC 10 ERSECA Doba po kterou neni kursor videt 70AD 08 BELFA Frekvence zvuku znaku BEL 70AE 0E BELFLA Delka zvuku znaku BEL 70AF I:09 GRFLA Informace o grafickych parametrech obrazovky. BIT: G:08 7 - velikost sprajtu ( 0 = 8*8 ; 1 = 16*16 ) F:08 6 - zvetseni sprajtu ( 0 = 1krat ; 1 = 2krat ) S:09 5,4,3 - infomativni velikost sprajtu: 100 ... 32*32 010 ... 16*16 001 ... 8*8 2,1,0 - graficky mod: 100 ... XOR 010 ... AND 001 ... OR 000 ... vymena 70B0 0000 GCURYA Souradnice grafickeho kursoru - Y 70B2 0000 GCURXA Souradnice grafickeho kursoru - X 70B4 I:0000 GIMPRA Adresa pro obslouzeni procesu uzivatele v GII G:4ED4 F:628C S:0000 70B6 I:0000 MPLPRA Adresa pro obslouzeni procesu v MULTICOLORu G:4ED4 F:628C S:0000 2.8. Stranka skryte obrazovky ================================= 70B8 DIFLGP Vyznam je tyz jako u stranky procesni obrazovky. Promenne maji pouze koncovku P misto A 70DA MPLPRP ...... 2.9. Stranka FUNC ===================== 70DC I:1A FKMGFG Nastaveni parametru FCTN. BIT: G:1A 7 - format s citacem nebo bez citace ( 0 nebo 1 ) F:1A 4 az 0 - pocet klaves nadefinovanych pres FUNC S:00 70DD I:3FAE FKIFTA adresa tabulky pro vydekodovani textu pres FUNC. G:4DD1 Format tabulky: F:5D05 +00 +01 ... adresa pro FUNC + A S:0000 +02 +03 ... adresa pro FUNC + B atd ... Format ulozenych dat: adresa s citacem adresa bez citace citac: 04 'B' 'M' 'C' 'O' 'O' 'V' 'L' 'E' 00 2.10. Stranka vyrovnavacich pameti ===================================== 70DF 64 byte KEYBUF Vyrovnavaci pamet pro klavesnici 711F 64 byte ACMBTF Vyrovnavaci pamet pro magnetofon ( a "FX:" ) 715F 32 byte SGPBF1 Vyrovnavaci pamet zvukovy generator kanal 1 717F 32 byte SGPBF2 Vyrovnavaci pamet zvukovy generator kanal 2 719F 32 byte SGPBF3 Vyrovnavaci pamet zvukovy generator kanal 3 2.11. Stranka sprajtu ( v BI vyuzita pro systemove promenne ) ================================================================ 71BF G:0C MXPSNO Maximalni pocet POSTu - tj. SPRITu jez se mohou F:00 pohybovat. Pocet je omezen kapacitou tabulky informaci S:00 o pohybu sprajtu 71C0 71E2 SPIFTA Adresa tabulky informaci o pohybu sprajtu 71C2 32 byte SPLINK Tabulka informaci o spojovani sprajtu. Pro kazdy sprajt je vyhrazen 1 byte. Vyznam bitu: 7,6,5 - tvar spojeni: 000 - nespojeno 001 - na stejne pozici 010 - vpravo 100 - dolu 011 - vlevo 101 - nahoru 110 - nedefinovan 111 - nedefinovan 2.12. Stranka informaci o sprajtech ====================================== 71E2 60 byte SPIFTB 721D ... konec tabulky Zde jsou umisteny informace o pohybu sprajtu cislo 0 az 11. Pro kazdy sprajt je zde 5 byte informace. Prvy byte udaje o sprajtu - SPIFLG. BIT: 7 - platnost udaju 6,5 - urcuji jaky typ pohybu ma sprajt a zaroven jak vypadaji dalsi 4 byte 4 az 0 - cislo sprajtu jehoz se informace tykaji Jsou tri mozne formaty dat: --------------------------- Typ A: byte 1 - R 0 0 cislo a typ sprajtu byte 2 - rychlost pohybu byte 3 - citac pro rychlost pohybu byte 4 - vektor pohybu v ose X byte 5 - vektor pohybu v ose Y Typ B: byte 1 - R 0 1 cislo sprajtu a typ sprajtu byte 2 - rychlost pohybu byte 3 - citac pro rychlost pohybu byte 4 - Kam dojet v ose X byte 5 - Kam dojet v ose Y Typ C: byte 1 - R 1 0 cislo sprajtu a typ sprajtu byte 2 - objektivni pozice X zadana byte 3 - citac pro X byte 4 - objektivni pozice Y zadana byte 5 - citac pro Y Poznamka: V BG odpovida typ A ... MOVE STEP typ B ... MOVE TO a typ C ... MOVE ON 2.13. Specialni stranka MONITOR ROM ====================================== 7223 __ UEVCT Doplnkovy citac pro EVENT 7224 __ UEVPT Doplnkovy ukazatel pro EVENT 7226 40 byte LNBUF Radkova vyrovnavaci pamet 724E ---- SCRDFR Data rolovani - krok rolovani 7250 ---- SCRCOR Data rolovani 7252 ---- CURPSV Pozice kursoru X,Y - pouzito pri kompilaci 7254 -- SCRLCH Priznak rolovani 7255 3 byte AVRHL Delky dob pri cteni z magnetofonu 7258 32 byte ACHBTF Vyrovnavaci pamet magnetofonu pro nahrani identifikacniho bloku 7278 72 byte NOTUSE Nepouzity prostor vyhrazeny pro potreby nektereho systemu BASIC 72C0 64 byte SYSTKL Systemovy zasobnik. ( V I,G,F je tento prostor vyuzit systemem BASIC. ) 7300 SYSTAK Od teto adresy zacina uzivatelsky prostor pro programy 3. Systemove promenne jazyku BASIC **************************************** 3.1. Systemove promenne jazyka BASIC-I ========================================== 71BF 7383 adresa zacatku programu v jazyce BASIC 71C1 ____ adresa konce programu v jazyce BASIC a zaroven adresa zacatku ulozeni promennych jazyka BASIC 71C3 ____ adresa konce ulozeni promennych jazyka BASIC 71C5 7FFF adresa konce RAM 71CB ____ adresa prostoru rezervovaneho uzivateli 71CD ____ cislo prave vykonavane radky 71CF ____ adresa prave vykonavaneho kodu 71D7 13 LEN X 71D8 20 kod znaku, jez se vytiskne za cislo 7203 32 byte prostor pro nahrani hlavicky z magnetofonu ( IDT ) 3.2. Systemove promenne jazyka BASIC-G ========================================== 7259 ____ adresa zacatku sekce programu 726A 745A adresa zacatku programu 726C ____ adresa konce programu a zaroven adresa zacatku ulozeni promennych jazyka BASIC 726E ____ adresa konce ulozeni promennych 7270 ____ konec pameti RAM vyuzitelne pro BASIC-G 7278 ____ cislo prave vykonavane radky 7282 13 LEN X 7288 ____ dno pro GOSUB 729A 8FFF posledni adresa RAM 72A9 souvislost s TRACE 730A 4 byte implicitni delka not pro 1. kanal SGC 730E 4 byte implicitni delka not pro 2. kanal SGC 7312 4 byte implicitni delka not pro 3. kanal SGC 731A 32 byte prostor pro nahrani hlavicky z magnetofonu ( IDT ) 3.3. Systemove promenne jazyka BASIC-F ========================================== 711F __ NMBTRC cislo mechaniky "FX:" ( zacatek 32 byte ) 7120 __ ATRCMT zacatek prostoru pro ID blok zaznamu - atribut 7121 9 byte NAMCMT jmeno zaznamu 712A ____ ADRCMT adresa ulozeni zaznamu 712C ____ LENCMT delka zaznamu 712E ____ STRCMT autostart zaznamu 7130 16 byte zbytek ID bloku ( 7131 IDENTC zde je "BF" pri SAVE ) 721E 6357 MSKPOI adresa tabulky pro tvorbu bodu v grafice 7220 FF MSKPNT maska bodovych operaci, zpravidla 0FFH 7221 00 GMDPRM 2. parametr GMODE ( 0 nebo 1 ) 7222 00 PMDEXC 2. parametr PMODE. BIT: 0 - poradi parametru 1 - poradi tisku bitu 7223 az 7225 viz 2.13 7226 ____ Meziuschova souradnice Y grafickeho kurzoru pri PAINT 7228 ____ Meziuschova souradnice X grafickeho kurzoru pri PAINT 722A az 7261 viz 2.13 7262 ____ REGAF zde je ulozen registr AF po RET ze strojoveho kodu 7264 ____ REGBC registr BC 7266 ____ REGDE registr DE 7268 ____ REGHL registr HL 726A F:77F2 ADRPRG programove meze - zacatek programu D:945F 726C F:77F4 ADRVAR - konec programu, zacatek promennych D:9461 726E F:77F4 ENDVAR - konec promennych D:9461 7270 !!!! USRSPA adresa zacatku uzivatelskeho prostoru ( SUMMEA-256 ). Od USRSPA jsou zasobnikove a operacni prostory. Poloha se urcuje implicitne CLEAR n ( neuvedene n = 256 ) 7272 ____ STRTOM adresa pocatku operacniho prostoru, komplet aritmetika 7274 ____ TOPTOM adresa konce operacniho prostoru, ztotozneni hodnot STRTOM a TOPTOM nuluje operacni prostor 7276 !!!! TOPSYS posledni byte uzivatelskeho prostoru ukazuje SP, inicializuje CLEAR 7278 ____ AKTNMB cislo prave vykonavane radky 727A ____ LASTLB adresa posledne pouziteho navesti 727C ____ AKTCHR adresa prave vykonavaneho kodu 727E ____ NXTADT adresa dalsiho prikazu ( radku ) 7280 ____ ERRSP adresa havarijniho SP. Nastavuje se na CLEAR TOPSYS+1 7282 FFFE ERRGSP adresa havarijniho SP pro GOSUB / RETURN 7284 00 ERR kod posledni chyby 7285 00 nevyuzit 7286 0000 ERRL radka posledni chyby 7288 306A ERRL$ adresa navesti posledni chyby 728A 77F1 RSTORE adresa ukazatele pro cteni dat ( RSTORE-1 ) 728C ____ LSTDTA adresa posledniho cteni DATA 728E 02 INTYPE implicitni typ vstupu ( 0 - INT, 2 - DBL, 4 - STR ) 728F 02 OTTYPE implicitni typ vystupu ( 0 - INT, 2 - DBL, 4 - STR ) 7290 12 LENTXT delka nove deklarovanych retezcu ( LEN X ) 7291 __ FLAGA bajt priznaku kompilace. BIT: 4 - uplny radek, 5 - aktivni AUTO 7 - vyskyt vykonnych ciselne radkovych prikazu 7292 02 maximalni pocet interuptu basiku 7293 __ INTLVT EVENT jazyka BASIC, momentalni uroven povoleneho preruseni, porovnava se s nove prichozim. BIT: 0 - COINC 3 - EVENT 5 - STEP 7 - STOP 1 - KEY 4 - ON ERROR 6 - TRACE 7294 __ FLAGE pomocny prerusovaci registr. BIT: 7 - je ON ERROR ... / nastala chyba 6 - je ON EVENT ... 7295 ____ ADRERR adresa odskoku pri ON ERROR ... 7297 ____ ADREVT adresa odskoku pri ON EVENT ... 7299 ____ adresa odskoku pri ON KEY ... 729B ____ adresa odskoku pri ON COINC ... 729D ____ adresa odskoku pri ON ALARM ... (?) 729F ____ ADRCNT adresa odskoku pri CONT ( navrat po CONT ) 72A1 ____ pomocna promenna 72A3 __ INTRGC kopie prerusovaciho registru pri STOP pro CONT ( 7293 ) 72A4 00 FLAGC navesti urovni pri IF, EXE, CALC ... BIT: 0 - je platne ELSE, jinak byl uz platny THEN 4 - je vykonne EXE ( CALC ), dalsi neni povoleno 72A5 __ FLGVAR urceni platnosti adres promennych v programu ( 00 - neplatne, FF - platne ) 72A6 __ FLGADR urceni platnosti adres skoku a navesti v programu 72A7 00 CHNA cislo kanalu pro primy mod konzoly - tisk READY,AUTO ... 72A8 00 DEVA cislo zarizeni pro primy mod konzoly 72A9 00 CHNB cislo kanalu pro neprimy mod konzoly - funkce LIST, FILES, PUT, GET, RECORD ... 72AA 00 DEVB cislo zarizeni pro neprimy mod konzoly 72AB __ OPENCH cislo otevreneho kanalu 72AC ____ LAUTO cislo radky pro AUTO 72AE ____ SAUTO krok cislovani pro AUTO 72B0 73F3 TXTHD adresa textu pro vytvoreni hlavicky. Text se pak presouva na 7133 72B2 F:57 NMBCMD pocet prikazu v tabulce prikazu D:6F 72B3 F:2786 CODCMD adresa konverzni tabulky prikazu - tabulka vykonnych D:8D34 adres 72B5 F:5924 ASCCMD adresa konverzni tabulky prikazu - tabulka v ASCII D:8820 tvaru 72B7 F:2A NMBFNC pocet funkci v tabulce funkci D:3F 72B8 F:2DD2 CODFNC adresa konverzni tabulky funkci - tabulka vykonnych D:8E14 adres 72BA F:5B24 ASCFNC adresa konverzni tabulky funkci - tabulka v ASCII D:8ABB tvaru 72BC 02 MAXINT maximalni pocet preruseni v basiku 72BD F:21C3 KOMPVR uzivatelska rutina pro kompilaci promennych. ( FN ) D:7923 Vzdy 3 byte: JP xxxx 72C0 24CF LISTVR uzivatelska rutina pro vypis promennych 72C3 F:24CC STORVR uzivatelska rutina pro vlozeni promennych ( vypocet FN ) D:7961 72C6 F:21C3 RUNNVR uzivatelska rutina pro zalozeni promennych D:7961 72C9 F:21C3 CLRVAR uzivatelska rutina pro nulovani promennych D:79C2 72CC F:21C3 ERSVAR uzivatelska rutina po skonceni nulovani adres promennych D:79D5 72CF F:24CC ENDCHR uzivatelska rutina dalsich ukoncovacich znaku ( jeste 4 ) D:79B5 72D2 F:21C3 LREADY uzivatelska rutina k vykonani vypisu textu "Ready" D:7B80 Nasleduji dve tabulky preruseni dle systemoveho EVENTu : -------------------------------------------------------- 72D5 8000 SUPDLY polozka tabulky obsluhy procedury EVENT v basiku 72D7 ____ SUPITV delka cekani do do dalsiho preruseni + citac 72D9 F:26D9 ADREVP adresa procesu EVENT D:7881 72DB 8000 SUPDLY polozka tabulky EVENTu - obsluha SLEEP 72DD ____ SUPITV delka cekani do do dalsiho preruseni + citac 72DF 3072 ADRSLP adresa procesu SLEEP 72E1 6 byte volny prostor pro dalsi tabulku obsluhy 72E7 4000 PSLEEP pocet period pro SLEEP 72E9 __ FSLEEP flag vedeni SLEEP ( aktivni / neaktivni ) 72EA 6739 RPAINT adresa rutiny PAINT pro hranicni znak 72EC 00 parametr GCOPY, meritko zobrazeni 72ED 68C3 PRICLM adresa rutiny pro tisk znaku po bodech ( tisk sloupce jemne grafiky na "PRI:" ) 72EF 6879 INIPRI adresa rutiny pro inicializaci "PRI:". Dle systemu tiskne retezec dle INIPR a posle obsah BC jako pocet bodu na "PRI:" 72F1 6944 tiskarna ( 0,1 - rutina ) 72F3 67C1 INCH6 adresa textu, ktery nastavuje tiskarnu na 6 INCH 72F5 5 byte TINCH6 prostor pro text definice radkovani 6/i. Standardne je definovan retezec: DB 03,1B,'A',0C,0. V BD se meni prikazem PMODE ,,,,< string > 72FA 67C8 INCH9 adresa textu, ktery nastavuje tiskarnu na 9 INCH 72FC 5 byte TINCH9 text DB 03,1B,'A',08,0 7301 67CF INIPR adresa textu pro inicializaci "PRI:" 7303 3 byte TINIPR prostor pro inicializacni text "PRI:", standardne je definovan retezec: DB 02,1B,'K' 7306 ____ ABUF buffer pro meziuschovy: ukazatel zasobniku GOSUB; adresa ulozeni promennych pri CHAIN ALL; adresa ukla- dani promennych pri DIM; uschova znaku pri LIST 7307 __ ADLIST (20) - LIST, (00) - CLIST 7308 ____ CHADDB ukazatel pri prubehu COMPILE a ukazatel pri preruseni odkazu v programu 730A __ LNLEN v COMPILE celkova delka prekladaneho radku 730B 8 byte BUF hlavni buffer aritmetiky 7313 8 byte BUFPOM pomocny buffer 731B 8 byte BUF2 pomocny buffer aritmetiky 7323 15 byte NUMBUF buffer 7332 __ NUMEXP uschova exponentu pri tisku cisla 7333 __ NUMFP pocet desetinnych mist pri NUM$ 7334 8 byte MBUF1 vedlejsi buffer aritmetiky 733C 8 byte MBUF2 7344 8 byte MBUF3 734C 7 byte MBUF4 cele cislo v binarnim tvaru 7353 8 byte BUF1 mezipamet aritmetiky 735B 741A ADRDBL adresa buffru pro tisk DBL cisla 735D __ FLAGT flag pro tisk cisel. BIT: 7 - tisk DBL v EXP tvaru 6 - zaokrouhlovani povoleno 5 - pouze tisk mantisy 735E __ FLAGB flag operaci DBL. BIT: 0 - v buffru jsou platna cisla 735F __ THETA typ uhlove miry ( jako v basiku ) 7360 7 byte DBLRND mantisa nahodneho cisla 7367 ____ INTRND zdrojove cislo pro RND 7369 96 byte TBLCHN tabulka kanalu 0 az 15 po 6ti bytech. BYTE: 0 - typ zarizeni 1 - cislo driveru ( jednotky A-H FD-5 ) 2 - cislo kanalu ( uvnitr jednotky FD-5 ) 3,4 - adresa tabulky vlastnosti zarizeni 5 - pozice v zarizeni ( poloha hlavy v "PRT:" ) Typy zarizeni jsou: 00 - CNS, 01 - GRP, 02 - PRT, 03 - PRI, 04 - CMT, 05 - FX, 06 - SIO, FF - CLOSE. ( 7369 - CHN00, 73C3 - CHN15 ) 73C9 04 IMOPEN implicitni atribut OPEN ( 04 => data ) 73CA 84 IMLIST implicitni atribut LIST ( 84 => LIST ) 73CB 04 IMPDEV implicitni cislo systemoveho zarizeni 73CC 00 IMPDRV implicitni cislo driveru ( jednotky A-H FD-5 ) 73CD 00 IMPTRK implicitni cislo mechaniky ( 0-7 v jedne FD-5 ) 73CE 80 USRDEV pokracovani tabulky zarizeni. Hodnota s nastavenym 7 bitem - tabulka je neplatna 73CF 0000 USRDVA adresa uzivatelova zarizeni 73D1 00 FNDATA kod hledane nahravky 73D2 00 status zarizeni "FX:". BIT: 6 - vysila se break na jednotku FD-5 zarizeni "FX:" 3 - akcni text na "FX:" 2,1,0 - cislo driveru ( zarizeni "FX:" ) 73D3 00 akcni smer komunikace 1. Postupne se provadeji nasta- vene rutiny ( od 0 do 3 ). BIT: 3 - registry vratit z "FX:" 2 - data z "FX:" 1 - data do "FX:" 0 - je vysilan akcni text 73D4 __ akcni smer komunikace 2. Viz 73D3 73D5 0B delka ridiciho textu pro "FX:" 73D6 73E1 adresa ridiciho textu pro "FX:" 73D8 40 delka vystupniho bufferu pro "FX:" 73D9 711F adresa vystupniho bufferu pro "FX:" 73DB 40 delka vstupniho bufferu pro "FX:" 73DC 715F adresa vstupniho bufferu pro "FX:" 73DE 08 delka bufferu registru z "FX:" ( zpetne hlaseni ) 73DF 7262 adresa bufferu pro zpetne hlaseni z "FX:" 73E1 3 byty prostor pro ridici text pro "FX:" 73E4 ____ prostor pro registry pri operacich s "FX:" 73E6 ____ delka nacitaneho zaznamu z "FX:" ( record ) 73E8 ____ druh operace s "FX:". 0 = jen hlavicka 73EA ____ adresa zacatku bloku prenosu dat 73EC __ kopie SYSFMT - rizeni magnetofonu 73ED __ typ pameti pri operacich s "FX:" 73EE ____ casove konstanty urcujici dobu cekani na odpoved od "FX:" 73F0 ____ meziuschova SP pri komunikaci s "FX:" 73F2 0A citac stisku RESET 73F3 26 byte HEADTX text pro tvorbu hlavicky viz 72B0 740D 256 byte LINBUF pro radkovou vyrovnavaci pamet a zaroven: 740D ____ RENMST cislo radky pro RENUM a NOLIST a souradnice X bodu konce PAINT platneho pixelu 740F ____ RENMSS krok radky pro RENUM a NOLIST a souradnice X noveho testovaneho bodu pri PAINT 7411 ____ RENMIS adresa puvodni radky pro RENUM a NOLIST a meziuschova souradnice X bodu konce PAINT platneho pixelu 7413 __ prerusenych PAINTu 7414 __ smer pohybu barveni v ose Y. 00 dolu, FF nahoru 7415 ____ Meziuschova sour. X noveho testovaneho bodu pri PAINT 7317 ____ Meziuschova SP pri PAINT 7419 ____ spodni hodnota VIEW vyjadrena v grafickych souradnicich 741E __ NMBCLR pocet hranicnich barev pro PAINT 741F 16 byte PAICLR kody hranicnich barev pro PAINT 744D __ flag "PRI:". BIT: 0 - priznak, zda je znak na jednu nebo dve radky ( nastaveno rutinou tisku ) 6 - prvni znak tisku 7 - posledni radek k tisku 744E ____ pocet bodu ( sloupcu znaku ) na radek + 2 body ( sloupce ) na ramecek pro "PRI:" 750E 256 byte BUFKOM buffer pro kompilaci radku z ASCII do vnitrni repre- zentace 7630 256 byte BUFDAT buffer pro kompilaci radku pri OLD z LIST; CALC, EXE 7751 159 byte buffer pro zapis bloku pri operacich s "CMT:" 77F2 ( D:945F ) od teto adresy zacina prostor pro uzivatelske programy 4. Seznam systemovych promennych serazeny podle abecedy ************************************************************* 4.1. Systemove promenne MONITOR ROM ======================================= ACHBTF 7258 DWCTBI 7045 MSCAL 7063 UPCTBW 7042 ACMBTF 711F DWCTBW 7046 MXPSNO 71BF UPRMVA 70A0 ALMPRC 704F ERSECA 70AC NOTUSE 7278 UPRMVP 70C4 ALMTH 704E ERSECP 70D0 PHDPOS 705C WIDTDA 70A5 ALMTM 704D EVHPRC 7051 PMXCLM 705B WIDTDP 70C9 ARPITI 702F EVIFTA 703E POUTFG 705A WIDTVA 70A3 ARPITW 7030 EVMGFG 703C PSHKAD 7029 WIDTVP 70C7 ARPSTI 702D EVMXNO 703D PUTPMT 708F ARPSTW 702E FKIFTA 70DD RSTPRC 7025 ASWN01 701D FKMGFG 70DC RWBFMT 7092 ASWN02 701F GCURXA 70B1 SATTLA 709B ASWPRC 7023 GCURXP 70D5 SATTLP 70BF AVILMT 7090 GCURYA 70B0 SCCDTA 700E AVRHL 7255 GCURYP 70D4 SCRCOR 7250 BDCOLA 709F GIMPRA 70B4 SCRDFR 724E BDCOLP 70C3 GIMPRP 70D8 SCRLCH 7254 BELC 7059 GPLPRA 70B2 SEXPA 705F BELFA 70AD GPLPRP 70D6 SEXTA 705D BELFLA 70AE GRFLA 70AF SGPBF1 715F BELFLP 70D2 GRFLP 70D3 SGPBF2 717F BELFP 70D1 HEITVA 70A2 SGPBF3 719F BELKC 7058 HEITVP 70C6 SGSYT1 7064 BELKF 703A HITDA 70A4 SGSYT2 7072 BELKLF 703B HITDP 70C8 SGSYT3 7080 BSIZMT 7091 HLTPRC 7027 SMEMEA 7012 CCOTLA 7097 IVCTC0 7000 SMEMTA 7010 CCOTLP 70BB IVCTC1 7002 SPATLA 709D CCUCRA 70AA IVCTC2 7004 SPATLP 70C1 CCUCRP 70CE IVCTC3 7006 SPIFTA 71C0 CHATIT 702C IVCTC6 7008 SPIFTB 71E2 CLKBTW 7049 IVCTC7 700B SPLINK 71C2 CLOCKS 704A JOYDR1 701E SPRPRC 7053 CLOCKH 704C JOYDR2 7020 SPSTEP 7056 CLOCKM 704B JOYPRC 7021 SPSTPC 7057 CODTLA 7095 KBCTET 701B SPSTUS 7055 CODTLP 70B9 KBFSIZ 7035 STDLY 7019 CPATLA 7099 KBUFTA 7031 SUMMEA 7016 CPATLP 70BD KDTGPT 7034 SUMMTA 7014 CURADA 70A8 KDTPPT 7033 SVSSW 7018 CURADP 70CC KEYBUF 70DF SYSFMT 708E CURPSV 7252 KINFLG 701A SYSTAK 7300 CURSXA 70A7 KINWTH 7038 SYSTKL 72C0 CURSXP 70CB KINWTM 7036 TERMAL 7039 CURSYA 70A6 LFTMVA 70A1 TMPOC 7062 CURSYP 70CA LFTMVP 70C5 TMPOD 7061 DIFLGA 7094 LKYADR 702B UEVCT 7223 DIFLGP 70B8 LNBUF 7226 UEVMGF 7040 DISPCA 70AB LSKYST 702A UEVPT 7224 DISPCP 70CF MPLPRA 70B6 UPCNT 7043 DWCNT 7047 MPLPRP 70DA UPCTBI 7041 ------------------------------------------------------------------------------ Podle ruznych materialu a na zaklade vlastnich zku- senosti sestavil a napsal LZR Soft. V Kladne 1988. Vydani devate, pocet vy- tisku dle potreby. Vytis- teno na tiskarne LA120. -------------------------------------------------------- pro WWW upravil K5 --