ÚVOD | Novinky | 8 Bitů | Příslušenství | Drobnosti | TTL | Kontakt
SAPI-1 | ONDRA | PMI-80 | PMD-85 | klony PMD-85 | klony SM50/40 | PETR | PLAN-80A | IQ151 | TNS | FK-1 | HVĚZDA | SP 830 | PCS 1-QR6000
ZPS | Technické prostředky | Programové vybavení | Dokumentace
FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1 1 .LIST 2 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3 TITLE FIRMWARE SAPI-1 MONITOR V5.0/E 4 ; 9.2.1988 (P.P.) 5 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 6 ; 7 ; MONITOR + MIKOS V5.0 TVORI FIRMWARE SYSTEMU SAPI-1. 8 ; V5.0 JE KOMPATIBILNI S VERZI V4.0 A JE ULOZENA 9 ; V 5K EPROM. 10 ; DALSI SKUPINA PROGRAMU JE NA KAZETE: 11 ; 1) BASIC EXP V5.0 12 ; 2) TEDIT 1 13 ; 3) TOOL ASM-80 14 ;.......................................... 15 ; ROZDELENI PAMETI U ZPS-2: 16 ; 0000H-13FFH FIRMWARE EPROM 5K 17 ; 2400H-33FFH PORTY 18 ; 3800H-3FFFH VIDEO RAM 19 ; 4000H-42FFH 1K SYSTEMOVE RAM 20 ; 4400H-0FFFFH RAM---> SYSTEMOVE PROGRAMY 21 ; \--> UZIVATELSKE PROGRAMY 22 ;========================================= 23 0000' ASEG 24 ; 25 ; *** DEFINOVANI PAMETOVEHO PROSTORU * 26 ; 27 4000 @R@ EQU 4000H ; ZACATEK SYSTEMOVE RAM (1K) 28 00CF RSTN EQU 0CFH 29 ; 30 ; 31 4400 BASIC EQU 4400H ; START 32 4C00 TRACER EQU 4C00H ; START 33 4400 PEDIT EQU 4400H ; START 34 ; 35 ;----------------------------------------------- 36 37 0000 MONIT EQU 0 ; ROM VERZE - ZPS2 38 0C00 EP2 EQU 0C00H 39 0000 ERAM EQU 0000 40 1400 TVROM EQU 1400H 41 3800 TVBEG EQU 03800H ; TV-RAM 42 43 ; 44 ; KONSTANTY ASCII... 45 ; 46 000D CR EQU 0DH ; CARRIAGE RETURN 47 0009 HT EQU 9 ; TAB 48 0008 BACK EQU 8 ; BACK SPACE 49 0018 RIGHT EQU 18H ; FORWARDS 50 001A UP EQU 1AH ; UP 51 001B ESC EQU 1BH ; ESCAPE 52 0007 BELL EQU 7 ; BELL 53 000A LF EQU 0AH ; LINE FEED 54 0003 ETX EQU 03H ; BREAK CHAR.( CONTROL C) 55 0004 EOT EQU 4 ; END OF FILE 56 000B VT EQU 0BH FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-1 57 001A SUB@ EQU 1AH ; CTRL Z 58 0017 PRNT EQU 17H ; BREAK CTRL W 59 007F DEL EQU 7FH ; DELETE 60 001C WNDCD EQU 1CH ; ZMENA OKNA 61 0055 BEGIO EQU 55H ; POCATECNI HODNOTA PRO I/O BYTE 62 ; 63 ; T.V. PARAMETRY 64 ; 65 0028 WIDTH EQU 40 66 0018 HEIGHT EQU 24 67 0040 LINOF EQU 64 ; OFFSET 68 0018 LREST EQU LINOF - WIDTH 69 3DE7 TVEND EQU TVBEG + 5E7H 70 00A0 CURSOR EQU 0A0H 71 0067 CURCH EQU 67H 72 001F ERS EQU 1FH ; ERASE SCREEN 73 001E EOL EQU 1EH ; ERASE END OF LINE 74 0011 CTRLQ EQU 11H ; ^Q-REZERVUJ 75 0010 CTRLP EQU 10H ; ^P-LIST 76 001D HOME EQU 1DH ; HOME 77 ; 78 ;------------------------------------------------- 79 ; RIDICI I/O 80 ; 81 ;KLAVESNICE 82 2400 PORTK EQU 2400H ; 2400H-27FFH 83 ;TISKARNA 84 2B00 PORTLC EQU 2B00H ; 2800H-2BFFH 85 2C00 PORTLD EQU 2C00H ; 2C00H-2FFFH 86 ;PRERUSENI 3214 87 3000 PORTI EQU 3000H ; 3000H-33FFH 88 ; 89 ; 90 ; DESKA PARALERNICH PORTU 91 ; 92 001B CWR1 EQU 1BH ; RIDICI SLOVO 8255A/1 93 0018 PA1 EQU 18H 94 0019 PB1 EQU 19H 95 001A PC1 EQU 1AH 96 001F CWR2 EQU 1FH ; RIDICI SLOVO 8255A/2 97 001C PA2 EQU 1CH 98 001D PB2 EQU 1DH 99 001E PC2 EQU 1EH 100 ; 101 ; UART - MAGNETOFON + SERIOVY PRENOS 102 ; 103 0012 UDATA EQU 12H ; UART-DATA 104 0011 USTAT EQU 11H ; STATUS 105 0011 MMODE EQU 11H ; MODEM 106 0010 UMODE EQU 10H ; UART 107 0013 URES EQU 13H ; RESET 108 ; 109 0001 ALLINT EQU 01H ; POUZE RST0 110 111 ;=============================================== 112 ; ZACATEK PROGRAMU FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-2 113 ;=============================================== 114 ; 115 ORG MONIT ; ROM/RAM DEFINICE 116 0000 C3 018B JMP COLD ; INICIALIZACE SYSTEMU 117 118 ;**************************************************** 119 ; POMOCNE PROGRAMY 120 ;**************************************************** 121 0003 55 DB 55H 122 0004 50 DB 50H ; V 5.0 123 0005 C3 F006 JMP 0F006H 124 0008 C3 4000 JMP @R@ 125 ; 126 000B 3E 2D MINUS: MVI A,'-' 127 000D C3 0568 JMP COA 128 0010 C3 4003 JMP @R@+3 129 ; 130 0013 3E 3D EQUAL: MVI A,'=' 131 0015 C3 0568 JMP COA 132 0018 C3 4006 JMP @R@+6 133 ; 134 001B 3E 3F QUES: MVI A,'?' 135 001D C3 0568 JMP COA 136 0020 C3 4009 JMP @R@+9 137 ; 138 ; CTI IOBYTE <A> 139 ; 140 0023 3A 40E2 IOCHK: LDA IOBYT 141 0026 C9 RET 142 0027 50 DB 'P' 143 0028 C3 400C JMP @R@+12 144 ; 145 ; NASTAV IOBYTE <C> 146 ; 147 002B 79 IOSET: MOV A,C 148 002C 32 40E2 STA IOBYT 149 002F C9 RET 150 0030 C3 400F JMP @R@+15 151 ; 152 ; SPECIAL:<A>..ZNAK,<B>..MODE,<DE>..LOG.ADR 153 ; <HL>..FYZ.ADR 154 ; 155 0033 2A 40E8 SPCL: LHLD LINE ; LOG. ADR KORZORU 156 0036 EB XCHG 157 0037 21 DB 21H 158 0038 C3 4012 JMP @R@+18 159 003B 2A 4081 LHLD CADR ; FYZ. ADR ZNAKU 160 003E 3A 40F0 LDA KEY ; KEY ->B 161 0041 47 MOV B,A 162 0042 7E MOV A,M ; CTI ZNAK Z T.V. 163 0043 C9 RET 164 165 ; KOPIRUJ RI -> PO 166 ; 167 0044 CD 05AA COPY: CALL RI 168 0047 DA 04D4 JC CRLF FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-3 169 004A 4F MOV C,A 170 004B CD 05D3 CALL LO ; "H" VYBERE PERIF. 171 004E C3 0044 JMP COPY 172 ; 173 ; READ DALSI BYTE 174 ; 175 0051 3E 30 RBYT0: MVI A,'0' 176 0053 C5 RBYT: PUSH B 177 0054 E5 PUSH H 178 0055 CD 04E1 CALL EXPRM 179 0058 D1 POP D 180 0059 E1 POP H 181 005A 73 MOV M,E 182 005B 78 MOV A,B 183 005C FE 0D CPI CR 184 005E C1 POP B 185 005F C9 RET 186 187 ;************************************** 188 ; OBECNA CAST O.S. 189 ;************************************** 190 ; 191 ; VOLANI O.S Z MONITORU 192 ; 193 0060 0E FF KOS: MVI C,-1 194 0062 C3 40D0 JMP KOS@ 195 ; 196 ;INIT O.S 197 ; 198 0065 0E 00 KOSI: MVI C,0 199 0067 C3 40D0 JMP KOS@ 200 ; 201 ; SLUZBY KOMPATIBILNI Z MONITOREM V4.0 202 ; 203 006A 0E 01 FIND: MVI C,1 204 006C C3 40D0 JMP KOS@ 205 006F 0E 02 OPEN: MVI C,2 206 0071 C3 40D0 JMP KOS@ 207 0074 0E 04 LOADCD: MVI C,4 208 0076 C3 40D0 JMP KOS@ 209 0079 0E 05 SAVECD: MVI C,5 210 007B C3 40D0 JMP KOS@ 211 007E 0E 06 BINAR: MVI C,6 212 0080 C3 40D0 JMP KOS@ 213 214 ;**************************************************** 215 ; 216 0083 22 0D JMENO: DB '"',CR ; PRAZDNE 217 ; 218 ; INSTALUJ HANDLER PRO TISKARNU 219 ; 220 0085 CD 0500 HNDIN: CALL RADR 221 0088 87 ADD A ; *2 222 0089 FE 10 CPI HNDMX 223 008B D0 RNC ; VETSI... 224 008C 26 00 MVI H,0 FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-4 225 008E 6F MOV L,A 226 008F 11 009D LXI D,TABHND 227 0092 19 DAD D ; ADR. ADRESY HNDLR 228 0093 7E MOV A,M 229 0094 32 40CE STA LO@ + 1 ; PREPIS 230 0097 23 INX H 231 0098 7E MOV A,M 232 0099 32 40CF STA LO@ + 2 233 009C C9 DUMMY: RET 234 ;------------------------ 235 ; TABULKA HANDLERU 236 ; 237 009D 009C TABHND: DW DUMMY ; 0.. PRAZDNY HANDLER 238 009F 00B0 DW LO@@ ; 1.. C 211 239 00A1 00E4 DW CENTRO ; 2.. CENTRONICS 240 00A3 00C9 DW D100S ; 3.. D 100 S 241 00A5 00AD DW D180 ; 4.. D 180 242 00A7 05C1 DW PO ; 5.. PUNCH DEVICE 243 00A9 40C7 DW CO@ ; 6.. CONSOLE OUTPUT 244 00AB 05FF DW SEROUT ; 7.. SERIOVY VYSTUP 245 0010 HNDMX EQU $-TABHND 246 ; 247 ;**************************************************** 248 ; LIST OUTPUT <C>... ZNAK 249 ;**************************************************** 250 ; 251 00AD 79 D180: MOV A,C 252 00AE 2F CMA 253 00AF 4F MOV C,A 254 255 00B0 LO@@: 256 00B0 E5 PUSH H 257 00B1 26 2C MVI H,2CH 258 00B3 71 MOV M,C 259 00B4 7E LO@1: MOV A,M 260 00B5 E6 40 ANI 40H 261 00B7 CA 00B4 JZ LO@1 262 00BA 25 DCR H 263 00BB 36 03 MVI M,3 264 00BD 24 INR H 265 00BE 7E LO@2: MOV A,M 266 00BF E6 40 ANI 40H 267 00C1 C2 00BE JNZ LO@2 268 00C4 25 DCR H 269 00C5 36 01 MVI M,1 270 00C7 E1 POP H 271 00C8 C9 RET 272 ; 273 ; SERIOVY INTERFACE PRO :LP: 274 ; 275 00C9 3E 0E D100S: MVI A,0EH ; SERIOVE PRIPOJENI D100 276 00CB D3 11 OUT MMODE ; PREPOJ 277 00CD DB 11 D101: IN USTAT 278 00CF E6 40 ANI 40H 279 00D1 C2 00CD JNZ D101 280 00D4 79 MOV A,C FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-5 281 00D5 D3 12 OUT UDATA 282 00D7 3E 02 MVI A,2 283 00D9 D3 10 OUT UMODE 284 00DB DB 11 D102: IN USTAT 285 00DD E6 40 ANI 40H 286 00DF CA 00DB JZ D102 287 00E2 79 MOV A,C 288 00E3 C9 RET 289 290 ; 291 ; INTERFACE CENTRONICS 292 ; 293 00E4 CENTRO: 294 00E4 E5 PUSH H 295 00E5 26 2C MVI H,2CH 296 00E7 71 MOV M,C 297 00E8 7E CENTR1: MOV A,M 298 00E9 E6 60 ANI 60H 299 00EB FE 20 CPI 20H 300 00ED C2 00E8 JNZ CENTR1 ; CEKEJ NA BUSY 301 00F0 25 DCR H 302 00F1 36 00 MVI M,0 303 00F3 E3 XTHL 304 00F4 E3 XTHL 305 00F5 79 MOV A,C 306 00F6 36 02 MVI M,2 307 00F8 E1 POP H 308 00F9 C9 RET 309 310 ;**************************************************** 311 ; KONTROLA KONCE KODU PRED TABULKOU 312 ; 313 00FA R100 EQU $ 314 IF R100 GT 100H 315 .PRINTX 'SPATNY KONEC KODU NA 100H' 316 AAAAAAAAAA 317 ENDIF 318 ;**************************************************** 319 320 ORG 100H ; TABULKA SLUZEB !!! 321 ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 322 ; 323 ; TABULKA "ZAKLADNICH SLUZEB SYSTEMU SAPI-1 324 ; 325 0100 C3 018B JMP COLD ; STUDENY START 326 0103 C3 0596 JMP CI ; CONZOLE INPUT <A> 327 0106 C3 05AA JMP RI ; READER INPUT <A>, CY=1 ERROR 328 0109 C3 05F4 JMP CO ; CONZOLE OUTPUT <C> 329 010C C3 05C1 JMP PO ; PUNCH OUTPUT <C> 330 010F C3 05D3 JMP LO ; LIST OUTPUT <C> 331 0112 C3 058B JMP CSTS ; CONZOLE INPUT STATUS 332 0115 C3 0023 JMP IOCHK ; I/O BYT CHEK <A> 333 0118 C3 002B JMP IOSET ; I/O BYT SET <C> 334 011B C3 051B JMP MEMCK ; MEMTOP 335 011E C3 056F JMP IODEF ; DEFINICE UZIVATELSKYCH PERIFERII 336 0121 C3 0033 JMP SPCL ; I/O CONTROL SPECIAL FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-6 337 0124 C3 04D4 JMP CRLF ; NOVY RADEK 338 0127 C3 04A8 JMP EXPR ; SKLADANI ADRES (N=POCET <C>, SP) 339 012A C3 0A3B JMP ERROR ; OSETRENI CHYBY 340 012D C3 0523 JMP ASHEX ; PREVOD ASCII -> HEX 341 0130 C3 050B JMP DADR ; ZOBRAZENI ADRESY <HL> 342 0133 C3 05E8 JMP DBYT ; ZOBRAZENI ZNAKU <A> 343 0136 C3 04F5 JMP HILO ; HL+1, SROVNANI S DE 344 0139 C3 0203 JMP NEXT ; OVLADANI MONITORU 345 013C C3 09CF JMP SPACE ; MEZERA NA CRT 346 013F C3 053A JMP CINCR ; ECHO+ANALYZA 347 0142 C3 0558 JMP TEXT ; VYPIS TEXTU <HL=ADR>,<D=DELKA> 348 0145 C3 0222 JMP XY ; "DO" PRIKAZ <A> 349 0148 C3 0513 JMP HXASC ; PREVOD HEX -> ASCII 350 014B C3 06A1 JMP EXFLG ; EXTERNI RIZENI FLAGU 351 014E C3 0270 JMP ASSIGN ; PRIRAZENI I/O PERIF. 352 ; -- ROZSIRENI SLUZEB -- 353 0151 C3 0549 JMP TX ; ZOBRAZENI NASLEDUJICIHO TEXTU 354 0154 C3 0708 JMP WND@ ; NASTAVENI OKNA 355 0157 C3 40D0 JMP KOS@ ; CALL O.S. <C>-SLUZBA,<HL>-DATA 356 015A C3 0B62 JMP RNAME ; <HL>.. EXT. A VYST. ADR 357 015D C3 0348 JMP INTER ; NASTAVENI PRERUSENI + EI 358 0160 C3 08AD JMP KODWM ; <HL>.. NOVE KODY, CS 359 0163 C3 08B5 JMP KODASC ; <HL>..ZMENY KODU Z KLAVESNICE 360 0166 C3 40DC JMP GRAF ; <HL>..DATA, <D>..KOD, <E> SLUZBA 361 0169 C3 40DF JMP RESER ; 362 ;*************************************************** 363 ; 364 ; TABULKY PRO INSTALACI SYSTEMOVYCH HANDLERU 365 ; 366 016C C3 0995 SYSTAB: JMP CI@@ ; VSTUP ZNAKU :CI: 367 016F C3 0617 JMP CO@@ ; VYSTUP ZNAKU :CO: 368 0172 C3 0982 JMP CSTS@@ ; STATUS :CI: 369 0175 C3 009C JMP DUMMY ; :LO: 370 0178 C3 0A3B JMP ERROR ; INIT O.S. 371 017B SMTAB: ; -- ; TABULKA PRO SM 7202 372 017B C3 098B JMP SERIN ; SERIOVY VSTUP 373 017E C3 05FF JMP SEROUT ; SERIOVY VYSTUP 374 0181 C3 097B JMP SMST ; STATUS SER. VSTUPU 375 0184 C3 009C JMP DUMMY 376 0187 C3 009C JMP DUMMY 377 018A SYSEND EQU $ 378 018A 55 DB BEGIO 379 380 381 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 382 ; **** S T A R T M O N I T O R U **** 383 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 384 ; 385 018B COLD: 386 018B F3 BEG: DI ; PRIKAZ "B" 387 018C 21 406D LXI HL,MSTAK ; NASTAV STACK POINTER 388 018F F9 SPHL 389 0190 AF XRA A 390 0191 77 BEG0: MOV M,A 391 0192 2C INR L 392 0193 C2 0191 JNZ BEG0 ; NULUJ M-RAM FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-7 393 ; 394 0196 3C INR A 395 0197 D3 13 OUT URES ; RESET UART 396 0199 D3 10 OUT UMODE ; MODEM 397 019B 3C INR A 398 019C 26 28 MVI H,(HIGH PORTK)+4 399 019E 77 MOV M,A 400 019F 25 DCR H 401 01A0 77 MOV M,A 402 01A1 3E 0D MVI A,0DH ; SERIOVY PRENOS 403 01A3 D3 11 OUT USTAT ; STATUS UART 404 ; 405 01A5 21 016C LXI H,SYSTAB ; NASTAV 406 01A8 11 018A LXI D,SYSEND ; SYSTEMOVE PERIFERIE 407 01AB 01 40C4 LXI B,CI@0 408 01AE CD 0480 CALL MO1 409 ; 410 01B1 21 4000 LXI H,@R@ ; NAJDI KONEC RAM 411 01B4 36 C3 MVI M,0C3H 412 01B6 24 MEM1: INR H ; DALSI STRANKA 413 01B7 CA 01C3 JZ MEM2 414 01BA 7E MOV A,M 415 01BB 2F CMA 416 01BC 77 MOV M,A ; ZAPIS DOPLNEK 417 01BD BE CMP M ; ZAPIS O.K. ? 418 01BE 2F CMA 419 01BF 77 MOV M,A ; OBNOVA PAMETI 420 01C0 CA 01B6 JZ MEM1 421 01C3 2B MEM2: DCX H ; POSLEDNI BYTE 422 01C4 22 40BF SHLD MEMTOP ; ULOZ MEMTOP 423 ; 424 01C7 3E 67 MVI A,CURCH ; NASTAV KURZOR CS 425 01C9 32 40EF STA CUR@ 426 ; 427 01CC CD 089F CALL CINIT ; KLAVESNICE 428 ; 429 01CF 21 3800 LXI H,TVBEG ; NASTAV T.V. 430 01D2 22 4081 SHLD CADR 431 01D5 3E C3 MVI A,0C3H 432 01D7 32 40C1 STA ERRSW 433 01DA 77 MOV M,A 434 01DB BE CMP M 435 01DC C4 1400 CNZ TVROM 436 01DF CD 0549 CALL TX 437 01E2 1D 9F DB HOME,ERS OR 80H 438 ; 439 01E4 3A 0C00 LDA EP2 ; JE O.S V EPROM ? 440 01E7 FE C3 CPI 0C3H 441 01E9 CC 0C03 CZ EP2+3 ; INICIALIZUJ O.S. 442 ; 443 ; ZOTAVENI PO CHYBE "INIC-6" !! 444 01EC 21 404D LXI H,MSTAK-20H 445 01EF 22 4079 SHLD SPSAV 446 ; 447 ; OHLASENI MONITORU 448 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-8 449 01F2 CD 0549 INIC: CALL TX 450 01F5 0D 0A DB CR,LF 451 01F7 4D 4F 4E 49 DC 'MONITOR V5.0' 452 01FB 54 4F 52 20 453 01FF 56 35 2E B0 454 ; 455 ;------------------------------------ 456 ; * VYHODNOCENI POVELU OPERATORA * 457 ;------------------------------------ 458 459 0203 31 406D NEXT: LXI SP,MSTAK ; NASTAV STACK PRO MONITOR 460 0206 21 0203 LXI H,NEXT 461 0209 E5 PUSH H ; ADRESA NAVRATU 462 020A 21 0353 LXI H,RESTA 463 020D 22 4001 SHLD @R@+1 464 0210 21 01EC LXI H,INIC-6 ; ZPRACOVANI CHYBY 465 0213 22 40C2 SHLD ERRSW+1 466 0216 CD 0348 CALL INTER ; NASTAV PRERUSENI 467 0219 CD 0549 CALL TX 468 021C 0D 0A AE DB CR,LF,'.' OR 80H 469 021F CD 053A CALL CINCR ; POVEL !!!!! 470 ; 471 0222 6F XY: MOV L,A ; L-PRIKAZ 472 0223 E5 PUSH H ; SAVE 473 0224 D6 41 SUI 'A' 474 0226 FA 0203 JM NEXT ; ASCII < "A" 475 0229 21 023C LXI H,CTBL ; ZACATEK TABULKY PRIKAZU 476 022C 01 1A02 LXI B,(LCT SHL 8) OR 2 477 022F B8 INJM@: CMP B 478 0230 D2 0A3B JNC ERROR ; PRETECENI 479 0233 87 INJMP: ADD A ; 2* 480 0234 85 ADD L 481 0235 6F MOV L,A 482 0236 7E MOV A,M 483 0237 23 INX H 484 0238 66 MOV H,M 485 0239 6F MOV L,A 486 023A E3 XTHL ; NASTAV HL 487 023B C9 RET ; START 488 ; 489 ;---------------------------------- 490 ; * TABULKA POVELU MONITORU * 491 ;---------------------------------- 492 493 ; 494 023C 0270 CTBL: DW ASSIGN ; NASTAV I/O 495 023E 09F4 DW BCMD ; BASIC 496 0240 018B DW BEG ; CLEAR 497 0242 041F DW DISP ; ZOBRAZ PAMET 498 0244 0A5A DW EOF ; KONEC HEX 499 0246 046A DW FILL ; NAPLN PAMET 500 0248 02FA DW GOTO ; GOTO & BREAK 501 024A 0085 DW HNDIN ; INSTALUJ HANDLER 502 024C 0065 DW KOSI ; INIT O.S 503 024E 0A29 DW JUMP ; J 504 0250 0060 DW KOS ; K FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-9 505 0252 09D4 DW LOADB ; L 506 0254 0479 DW MOVE ; PRESUN PAMET 507 0256 0044 DW COPY ; N 508 0258 09AE DW CHMODE ; ZMENA MODE 509 025A 0A1E DW PCMD ; PEDIT 510 025C 02C6 DW QUERY ; NASTAVENI I/O 511 025E 0A6E DW READ@ ; R 512 0260 048A DW SUBS ; ZMENA OBSAHU 513 0262 0A16 DW TCMD ; TOOL 514 0264 0A4D DW UKAZ ; U ADR 515 0266 09C3 DW VERIFY ; V 516 0268 0AD2 DW WRITE ; W 517 026A 039B DW X ; OBSAHY REGISTRU 518 026C 09B5 DW Y ; NASTAV PRERUSENI 519 026E 09BC DW Z ; CASOVANI MGF 520 001A LCT EQU ($-CTBL)/2 521 IF HIGH ($-CTBL) 522 .PRINTX "CHYBA VE STRANCE S POVELY" 523 CHY EQU $ 524 ENDIF 525 ; 526 ; 527 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 528 ; REALIZACE POVELU MONITORU 529 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 530 ; 531 ; NASTAV I/O MODUL 532 ; 533 0270 CD 0537 ASSIGN: CALL CIMIN ; JMENO 534 ; <A>..NAME (EXTERN CALLS) 535 0273 21 02AE LXI H,IOTAB ; TABULKA 536 0276 0E 04 MVI C,4 ; POCITADLO 537 0278 11 0006 LXI D,6 ; OFFSET 538 027B BE ASS0: CMP M 539 027C CA 0287 JZ ASS1 ; + 540 027F 19 DAD D ; ADRESA 541 0280 0D DCR C ; VSE? 542 0281 C2 027B JNZ ASS0 ; - 543 0284 C3 0A3B JMP ERROR 544 0287 CD 0013 ASS1: CALL EQUAL 545 028A CD 0562 CALL ECHO 546 028D 23 INX H 547 028E 46 MOV B,M 548 028F 0E 00 MVI C,0 ;IOBYT 549 0291 23 ASS2: INX H 550 0292 BE CMP M 551 0293 CA 02A2 JZ ASS3 ; + 552 0296 F5 PUSH PSW 553 0297 3E 55 MVI A,55H ; OFFSET 554 0299 81 ADD C 555 029A 4F MOV C,A 556 029B DA 0A3B JC ERROR ; NE # 557 029E F1 POP PSW 558 029F C3 0291 JMP ASS2 ; DALSI 559 02A2 79 ASS3: MOV A,C 560 02A3 A0 ANA B FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-10 561 02A4 4F MOV C,A ; ULOZ 562 02A5 78 MOV A,B 563 02A6 2F CMA ; NEGUJ 564 02A7 21 40E2 IONEW: LXI H,IOBYT 565 02AA A6 ANA M 566 02AB B1 ORA C 567 02AC 77 MOV M,A 568 02AD C9 RET 569 ; 570 ; I/O TABULKA 571 ; 572 02AE 43 03 IOTAB: DB 'C',03H ; CONSOLE 573 02B0 54 43 42 31 DB 'TCB1' 574 02B4 52 0C DB 'R',0CH ; READER 575 02B6 54 50 31 32 DB 'TP12' 576 02BA 50 30 DB 'P',30H ; PUNCHER 577 02BC 54 50 31 32 DB 'TP12' 578 02C0 4C C0 DB 'L',0C0H ; LIST 579 02C2 54 43 4C 31 DB 'TCL1' 580 ; 581 ; VYPIS NASTAVENI I/O 582 ; 583 02C6 2A 40BF QUERY: LHLD MEMTOP 584 02C9 CD 0508 CALL DNADR 585 02CC 21 02AE LXI H,IOTAB ; TABULKA 586 02CF 3A 40E2 LDA IOBYT ; CTI 587 02D2 47 MOV B,A ; ULOZ 588 02D3 CD 02D6 CALL $+3 589 02D6 CD 02D9 CALL $+3 590 ; ZOBRAZ NASTAVENI I/O 591 02D9 CD 09CF CALL SPACE 592 02DC 7E MOV A,M ; CTI LOGICKE JMENO 593 02DD CD 0568 CALL COA 594 02E0 CD 0013 CALL EQUAL 595 02E3 E5 PUSH H ; ULOZ ADR. 596 02E4 23 INX H 597 02E5 23 INX H ; ADR. 598 02E6 78 MOV A,B 599 02E7 E6 03 ANI 3 600 02E9 5F MOV E,A 601 02EA 16 00 MVI D,0 602 02EC 19 DAD D ; FYZICKA ADR. 603 02ED 7E MOV A,M 604 02EE CD 0568 CALL COA 605 02F1 78 MOV A,B 606 02F2 0F RRC 607 02F3 0F RRC ; ROTUJ IOBYT 608 02F4 47 MOV B,A 609 02F5 E1 POP H 610 02F6 1E 06 MVI E,6 ; OFFSET 611 02F8 19 DAD D 612 02F9 C9 RET ; HL=DALSI ADR. 613 ; 614 ; GOTO + VYHODNOCENI PRERUSENI + PROHLIZENI REG. 615 ;*********************************************** 616 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-11 617 ; 618 ; "GO TO" PRIKAZ 619 ; 620 02FA CD 0013 GOTO: CALL EQUAL 621 02FD CD 053A CALL CINCR ; PRIKAZ 622 0300 DA 0331 JC GO@ ; IF CR THEN GOTO 623 0303 CA 0313 JZ GO@BR 624 0306 CD 04E1 CALL EXPRM ; START ADR 625 0309 E1 POP H 626 030A 22 4077 SHLD PCSAV 627 030D 78 MOV A,B ; JEN START ADR ? 628 030E FE 0D CPI CR 629 0310 CA 0331 JZ GO@ 630 0313 CD 0500 GO@BR: CALL RADR ; CTI BREAK ADR 631 0316 22 407B SHLD BRAD 632 0319 7E MOV A,M ; ULOZ INSTR. KOD 633 031A 32 407D STA INSTR 634 031D 36 CF MVI M,RSTN 635 031F 3E 0D MVI A,CR 636 0321 B8 CMP B ; JEN 1-BREAK ? 637 0322 CA 0331 JZ GO@ 638 ; O.S. BREAK 639 0325 CD 0500 CALL RADR 640 0328 22 407E SHLD BRAD2 641 032B 7E MOV A,M 642 032C 32 4080 STA INST2 643 032F 36 CF MVI M,RSTN 644 ; START 645 0331 CD 04D4 GO@: CALL CRLF 646 0334 F3 DI 647 0335 31 406F LXI SP,ACSAV 648 0338 F1 POP PSW 649 0339 C1 POP B 650 033A D1 POP D 651 033B 2A 4079 LHLD SPSAV ; ZASOBNIK 652 033E 2B DCX H 653 033F 2B DCX H 654 0340 F9 SPHL 655 0341 2A 4077 LHLD PCSAV ; PC 656 0344 E3 XTHL 657 0345 2A 4075 LHLD HLSAV 658 ; 659 ; POVOLENI A NASTAVENI PRERUSENI 660 ; 661 0348 F5 INTER: PUSH PSW 662 0349 F3 DI ; ZAKAZ PRI MODIFIKACI 663 034A 3A 40EE LDA PRER ; RIDICI SLOVO 664 034D 32 3000 STA 3000H ; NASTAV 665 0350 F1 POP PSW 666 0351 FB EI ; A TAKY POVOL 667 0352 C9 RET ; POKRACUJ 668 ; 669 ;*********************************************; 670 ; RUN & BREAK MODUL: 671 ; 672 0353 F3 RESTA: DI FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-12 673 0354 22 4075 SHLD HLSAV 674 0357 F5 PUSH PSW 675 0358 21 0004 LXI H,4 ; OFFSET 676 035B 39 DAD SP 677 035C 22 4079 SHLD SPSAV 678 035F F1 POP PSW 679 0360 E1 POP H ; PC 680 0361 31 4075 LXI SP,HLSAV 681 0364 D5 PUSH D 682 0365 C5 PUSH B 683 0366 F5 PUSH PSW ; BYL BREAK ? 684 0367 EB XCHG 685 0368 1B DCX D ; PC-1 686 0369 21 407B LXI H,BRAD ; BREAK ? 687 036C 0E 02 MVI C,2 ; DVA BREAKY 688 036E C5 RST10: PUSH B 689 036F 4E MOV C,M 690 0370 36 00 MVI M,0 691 0372 23 INX H 692 0373 46 MOV B,M 693 0374 36 00 MVI M,0 694 0376 23 INX H 695 0377 79 MOV A,C 696 0378 B0 ORA B ; 0 ? 697 0379 CA 038A JZ RST20 ; NEBYL BREAK 698 037C 7E MOV A,M ; OBNOV INSTR. 699 037D 02 STAX B 700 037E 23 INX H 701 037F E5 PUSH H 702 0380 60 MOV H,B 703 0381 69 MOV L,C ; BYL BREAK ? 704 0382 CD 04FA CALL COMPR 705 0385 E1 POP H 706 0386 C2 038A JNZ RST20 707 0389 1B DCX D ; PC-1 708 038A C1 RST20: POP B 709 038B 0D DCR C 710 038C C2 036E JNZ RST10 711 038F EB XCHG 712 0390 23 INX H ; OBNOV PC 713 0391 22 4077 SHLD PCSAV 714 0394 37 STC 715 0395 CD 039E CALL X+3 ; ZOBRAZ VSECHNY REG. 716 0398 C3 0203 JMP NEXT 717 ; 718 ;************************************* 719 ; 720 ; ZOBRAZ & ZMEN OBSAHY REGISTRU 721 ; 722 039B CD 053A X: CALL CINCR ; PRIKAZ 723 039E 21 040A LXI H,RGNAM ; TABULKA JMEN 724 03A1 16 40 MVI D,HIGH ACSAV ;DATA 725 03A3 D2 03B1 JNC X1 ; ZMENA 726 03A6 CD 04D4 CALL CRLF 727 03A9 CD 03E7 X0: CALL XDISP 728 03AC C8 RZ ;END FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-13 729 03AD 23 INX H 730 03AE C3 03A9 JMP X0 731 03B1 CA 03C6 X1: JZ X2 ; ZADNA ZMENA 732 03B4 5F MOV E,A ; ULOZ JMENO 733 03B5 01 DB 1 ; LXI B,## 734 03B6 23 X10: INX H 735 03B7 23 INX H 736 03B8 7E MOV A,M ; CTI JMENO REG. 737 03B9 CA 0A3B JZ ERROR 738 03BC BB CMP E 739 03BD C2 03B6 JNZ X10 ; DALSI 740 03C0 CD 03F1 CALL XDIS1 741 03C3 C3 03C9 JMP X2+3 742 ; 743 03C6 CD 03EA X2: CALL XDISP+3 744 03C9 C8 RZ 745 03CA CD 0537 CALL CIMIN ; - PRIKAZ 746 03CD D8 RC ; CR - END 747 03CE 5E MOV E,M ; DOLNI ADR. 748 03CF 23 INX H 749 03D0 CA 03C6 JZ X2 750 03D3 EB XCHG 751 03D4 D5 PUSH D 752 03D5 CD 0053 CALL RBYT ; CTI NOVY BYTE A ZMEN 753 03D8 05 DCR B 754 03D9 CA 03DF JZ $+6 755 03DC 72 MOV M,D ; DOLNI BYTE 756 757 03DD 2B DCX H 758 03DE 73 MOV M,E 759 03DF D1 POP D 760 03E0 EB XCHG 761 03E1 FE 0D CPI CR ; POSLEDNI? 762 03E3 C8 RZ ; + 763 03E4 C3 03C6 JMP X2 ; DALSI 764 ; 765 03E7 CD 09CF XDISP: CALL SPACE 766 03EA 7E MOV A,M 767 03EB E6 7F ANI 7FH 768 03ED C8 RZ 769 03EE CD 0568 CALL COA 770 03F1 CD 0013 XDIS1: CALL EQUAL ; JMENO= 771 03F4 7E MOV A,M 772 03F5 07 RLC 773 03F6 3E 01 MVI A,1 774 03F8 CE 00 ACI 0 ; SPOCTI DELKU 775 03FA 47 MOV B,A ; ULOZ 776 03FB 23 INX H 777 03FC 5E MOV E,M ; SPODNI ADR. 778 03FD 1A LDAX D ; HORNI BYTE 779 03FE CD 05E8 CALL DBYT 780 0401 78 MOV A,B 781 0402 3D DCR A 782 0403 1B DCX D 783 0404 1A LDAX D ; CTI DRUHY BYTE 784 0405 C4 05E8 CNZ DBYT ; PRO 2.BYTE REG. ZOBRAZ FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-14 785 0408 B3 ORA E 786 0409 C9 RET 787 ; 788 ; X: TABULKA PRIKAZU 789 040A 41 70 RGNAM: DB 'A',LOW ACSAV+1 790 040C 46 6F DB 'F',LOW ACSAV 791 040E 42 72 DB 'B',LOW BCSAV+1 792 0410 43 71 DB 'C',LOW BCSAV 793 0412 44 74 DB 'D',LOW DESAV+1 794 0414 45 73 DB 'E',LOW DESAV 795 0416 48 76 DB 'H',LOW HLSAV+1 796 0418 4C 75 DB 'L',LOW HLSAV 797 041A D0 78 DB 'P' OR 80H,LOW PCSAV+1 798 041C D3 7A DB 'S' OR 80H,LOW SPSAV+1 799 041E 00 DB 0 800 ; 801 ; PRACE S PAMETI: PROHLIZENI, PLNENI, PRESUV A ZAMENA 802 ;**************************************************** 803 ; 804 ; ZOBRAZENI OBSAHU PAMETI 805 ; 806 041F CD 04A8 DISP: CALL EXPR ; OD - DO 807 0422 D1 POP D 808 0423 E1 POP H 809 0424 E5 DI0: PUSH H ; PRVNI ADR. 810 0425 CD 0508 CALL DNADR ; NOVA ADR. 811 0428 7E DI1: MOV A,M 812 0429 CD 09CC CALL DBYTE 813 042C CD 04F5 CALL HILO 814 042F DA 0438 JC DIA ; ZOBRAZ ASCII 815 0432 7D MOV A,L 816 0433 E6 07 ANI 7 817 0435 C2 0428 JNZ DI1 ; DALSI BYTE 818 0438 E1 DIA: POP H 819 0439 CD 09CF CALL SPACE 820 043C 7E DI2: MOV A,M 821 043D CD 0894 CALL BIG 822 0440 FE 20 CPI ' ' 823 0442 DA 044A JC DI4 824 0445 FE 7B CPI 7BH 825 0447 DA 044C JC DI5 826 044A 3E 2E DI4: MVI A,'.' 827 044C CD 0568 DI5: CALL COA 828 044F CD 04F5 CALL HILO 829 0452 D8 RC 830 0453 7D MOV A,L 831 0454 E6 07 ANI 7 832 0456 C2 043C JNZ DI2 ; DALSI ASCII 833 0459 CD 058B CALL CSTS 834 045C CA 0424 JZ DI0 ; DALSI RADEK 835 045F CD 0537 CALL CIMIN ; ' '..PRERUSENI 836 0462 D8 RC ; CR 837 0463 CD 053A DI3: CALL CINCR 838 0466 D8 RC ; CR 839 0467 C3 0424 JMP DI0 840 ;************************************* FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-15 841 ; 842 ; NAPLNENI PAMETI KONSTANTOU 843 ; 844 046A 0C FILL: INR C 845 046B CD 04A8 CALL EXPR ; OD-DO-CIM 846 046E C1 POP B 847 046F D1 POP D 848 0470 E1 POP H 849 0471 71 FI1: MOV M,C 850 0472 CD 04F5 CALL HILO 851 0475 D2 0471 JNC FI1 852 0478 C9 RET 853 ;************************************* 854 ; 855 ; PRESUN BLOKU PAMETI 856 ; 857 0479 0C MOVE: INR C 858 047A CD 04A8 CALL EXPR 859 047D C1 POP B 860 047E D1 POP D 861 047F E1 POP H 862 0480 7E MO1: MOV A,M 863 0481 02 STAX B 864 0482 03 INX B 865 0483 CD 04F5 CALL HILO 866 0486 D2 0480 JNC MO1 867 0489 C9 RET 868 ;************************************* 869 ; 870 ; ZMENA OBSAHU PAMETI 871 ; 872 048A CD 0500 SUBS: CALL RADR ; ADR. 873 048D 7E SU1: MOV A,M 874 048E CD 05E8 CALL DBYT 875 0491 CD 0537 CALL CIMIN 876 0494 D8 RC ; CR 877 0495 CA 049C JZ SU2 878 0498 CD 0053 CALL RBYT ; ZMENA 879 049B C8 RZ ; KONEC 880 049C 23 SU2: INX H ; DALSI BYTE 881 049D FE 2C CPI ',' ; PRO "," ZOBRAZ ADR. 882 049F CC 0508 CZ DNADR 883 04A2 C3 048D JMP SU1 884 ; 885 ;******************************************** 886 ; PODPROGRAMY MONITORU A SLUZBY 887 ;******************************************** 888 ; 889 ; SKLADANI ADRES (VSTUP PARAMETRU) DO ZASOBNIKU, 890 ; POCET V C-REG. 891 ; 892 04A5 DA 0A3B EXPR0: JC ERROR 893 04A8 CD 0013 EXPR: CALL EQUAL ; TISK = 894 04AB 21 0000 LXI H,0 895 04AE CD 0562 EX0: CALL ECHO 896 04B1 47 EX1: MOV B,A FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-16 897 04B2 FE 27 CPI 27H ; "'" 898 04B4 CA 04E9 JZ EX4 899 04B7 CD 0523 CALL ASHEX 900 04BA DA 04C6 EX2: JC EX3 ; HEX CIFRA ? 901 04BD 29 DAD H ; POSUV "HL" O 4 BITY VLEVO 902 04BE 29 DAD H 903 04BF 29 DAD H 904 04C0 29 DAD H 905 04C1 B5 ORA L 906 04C2 6F MOV L,A 907 04C3 C3 04AE JMP EX0 ; DALSI ZNAK 908 909 04C6 78 EX3: MOV A,B 910 04C7 CD 053D CALL ANAL 911 04CA C2 04DA JNZ EX5 ; NENI HEX CIFRA 912 04CD E3 XTHL 913 04CE E5 PUSH H 914 04CF 0D DCR C ; CARKA, MEZERA 915 04D0 C2 04A5 JNZ EXPR0 ; DALSI ADRESY 916 04D3 D0 RNC 917 ; 918 04D4 CD 0549 CRLF: CALL TX 919 04D7 0D 8A DB CR,LF OR 80H 920 04D9 C9 RET 921 ; 922 04DA CD 0549 EX5: CALL TX 923 04DD 88 DB 88H ; BACK SPACE 924 04DE C3 04AE JMP EX0 ; ZRUS CHYBU 925 ; 926 04E1 0E 01 EXPRM: MVI C,1 927 04E3 21 0000 LXI H,0 928 04E6 C3 04B1 JMP EX1 929 ; 930 04E9 CD 053A EX4: CALL CINCR ; PRIKAZ 931 04EC 47 MOV B,A ; ULOZ 932 04ED CA 04C6 JZ EX3 933 04F0 65 MOV H,L 934 04F1 6F MOV L,A 935 04F2 C3 04E9 JMP EX4 936 ;************************************** 937 938 939 ; INKREMENTUJE "HL" ,KONTROLUJE "HL"=0 NEBO 940 ; "HL">"DE"...CARRY=1 941 942 04F5 23 HILO: INX H 943 04F6 7C MOV A,H 944 04F7 B5 ORA L 945 04F8 37 STC 946 04F9 C8 RZ ; NAVRAT PO "HL"=0000 947 04FA 7A COMPR: MOV A,D 948 04FB BC CMP H 949 04FC C0 RNZ 950 04FD 7B MOV A,E 951 04FE BD CMP L 952 04FF C9 RET FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-17 953 954 ; CTI ADRESU 955 956 0500 0E 01 RADR: MVI C,1 957 0502 CD 04A8 CALL EXPR 958 0505 E1 POP H 959 0506 7D MOV A,L 960 0507 C9 RET 961 962 ; ZOBRAZ NOVOU ADRESU 963 964 0508 CD 04D4 DNADR: CALL CRLF 965 050B CD 05E3 DADR: CALL DADR0 966 050E C3 09CF JMP SPACE 967 ; 968 ; PREVOD HEXADECIMALNI CIFRY NA ASCII V "C" REG 969 970 0511 E6 0F HXANIB: ANI 0FH 971 ; 972 0513 C6 90 HXASC: ADI 90H 973 0515 27 DAA 974 0516 CE 40 ACI 40H 975 0518 27 DAA 976 0519 4F MOV C,A 977 051A C9 RET 978 979 ; ZJISTI KONEC RAM <A>,<B>..HIGH 980 981 051B E5 MEMCK: PUSH H 982 051C 2A 40BF LHLD MEMTOP 983 051F 7D MOV A,L 984 0520 44 MOV B,H 985 0521 E1 POP H 986 0522 C9 RET 987 988 989 ; PREVOD ZNAKU ASCII NA HEXADEC. 990 991 0523 CD 0894 ASHEX: CALL BIG ; VELKA PISMENA 992 0526 D6 30 SUI '0' 993 0528 D8 RC ; FILTR < (00-2F) 994 0529 FE 17 CPI 17H ; '0'..'F'..HEX 995 052B 3F CMC 996 052C D8 RC ; CY=1..CHYBA 997 052D FE 0A CPI 10 998 052F 3F CMC 999 0530 D0 RNC ; 0-9 .. KOD 1000 0531 FE 11 CPI 11H 1001 0533 D8 RC ; CHYBA 1002 0534 D6 07 SUI 7 1003 0536 C9 RET ; A-F .. KOD 1004 1005 0537 CD 000B CIMIN: CALL MINUS ; - 1006 ; 1007 053A CD 0562 CINCR: CALL ECHO 1008 053D FE 2C ANAL: CPI ',' FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-18 1009 053F C8 ANAL0: RZ 1010 0540 FE 20 CPI ' ' 1011 0542 C8 ANAL2: RZ 1012 0543 FE 0D CPI CR 1013 0545 37 STC 1014 0546 C8 RZ 1015 0547 B7 ORA A 1016 0548 C9 RET ; PO CR CARRY=1 1017 ; 1018 ; TEXT PRIMO ZA VOLANIM 1019 ; 1020 0549 E3 TX: XTHL 1021 054A 7E MOV A,M 1022 054B E6 7F ANI 7FH 1023 054D CD 0568 CALL COA 1024 0550 7E MOV A,M 1025 0551 07 RLC 1026 0552 23 INX H 1027 0553 D2 054A JNC TX+1 1028 0556 E3 XTHL 1029 0557 C9 RET 1030 1031 ; VYPIS TEXTU - HL ADRESA, D DELKA 1032 1033 0558 7E TEXT: MOV A,M 1034 0559 23 INX H 1035 055A CD 0568 CALL COA 1036 055D 15 DCR D 1037 055E C2 0558 JNZ TEXT 1038 0561 C9 RET 1039 ; 1040 ; ECHO 1041 ; 1042 0562 CD 0596 ECHO: CALL CI 1043 0565 CD 0894 CALL BIG 1044 0568 C5 COA: PUSH B 1045 0569 4F MOV C,A 1046 056A CD 05F4 CALL CO 1047 056D C1 POP B 1048 056E C9 RET 1049 1050 ; IODEF:... DEFINICE UZIVATELSKYCH I/0 RUTIN 1051 1052 056F 79 IODEF: MOV A,C ; CISLO 1053 0570 FE 15 CPI IONUM 1054 0572 F0 RP 1055 0573 C5 PUSH B 1056 0574 E5 PUSH H 1057 0575 81 ADD C 1058 0576 81 ADD C 1059 0577 4F MOV C,A 1060 0578 06 00 MVI B,0 ; OFFSET 1061 057A 21 40A6 LXI H,CILOC ; SPOCTI ADR. 1062 057D 09 DAD B 1063 057E 36 C3 MVI M,0C3H 1064 0580 23 INX H FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-19 1065 0581 4E MOV C,M 1066 0582 73 MOV M,E 1067 0583 23 INX H 1068 0584 46 MOV B,M 1069 0585 72 MOV M,D ; ADR. 1070 0586 50 MOV D,B ; DE..PUVODNI OBSAH 1071 0587 59 MOV E,C 1072 0588 E1 POP H 1073 0589 C1 POP B 1074 058A C9 RET 1075 ; 1076 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1077 ; I/O PERIFERIE 1078 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1079 ; 1080 ; VOLBA PERIFERII PODLE IOBYTE 1081 ; 1082 058B 3A 40E2 CSTS: LDA IOBYT ; USER1, USER2 1083 058E 1F RAR 1084 058F 1F RAR 1085 0590 DA 40BB JC CSLOC ; USER CSTS 1086 0593 C3 40CA JMP CSTS@ ; SYSTEM.CSTS 1087 ; 1088 0596 CD 05A1 CI: CALL DEV 1089 0599 0841 0841 CITB: DW CI@,CI@,RI,CILOC 1090 059D 05AA 40A6 1091 1092 IF HIGH ($-CITB) 1093 .PRINTX "CHYBA V DEFINICI I/O TABULKY" 1094 ERRIO EQU $ 1095 ENDIF 1096 ; 1097 05A1 3A 40E2 DEV: LDA IOBYT 1098 05A4 E6 03 DEV0: ANI 3 1099 05A6 E3 XTHL 1100 05A7 C3 0233 JMP INJMP 1101 ; 1102 05AA 3A 40E2 RI: LDA IOBYT 1103 05AD 0F RRC 1104 05AE 0F RRC 1105 05AF CD 05A4 CALL DEV0 1106 ; 1107 05B2 0841 40D3 RITB: DW CI@,RI@,R1LOC,R2LOC 1108 05B6 40AC 40AF 1109 ; 1110 IF HIGH ($-RITB) 1111 .PRINTX "CHYBA V DEFINICI I/O TABULKY" 1112 ERRIO EQU $ 1113 ENDIF 1114 ; 1115 05BA 0F HBT: RRC 1116 05BB 0F RRC 1117 05BC 0F RRC 1118 05BD 0F RRC 1119 05BE CD 0511 LBT: CALL HXANIB 1120 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-20 1121 05C1 3A 40E2 PO: LDA IOBYT 1122 05C4 0F RRC 1123 05C5 0F RRC 1124 05C6 0F RRC 1125 05C7 0F RRC 1126 05C8 CD 05A4 CALL DEV0 1127 ; 1128 05CB 05F4 40D6 POTB: DW CO,PO@,P1LOC,P2LOC 1129 05CF 40B2 40B5 1130 ; 1131 IF HIGH ($-POTB) 1132 .PRINTX "CHYBA V DEFINICI I/O TABULKY" 1133 ERRIO EQU $ 1134 ENDIF 1135 ; 1136 05D3 3A 40E2 LO: LDA IOBYT 1137 05D6 07 RLC 1138 05D7 07 RLC 1139 05D8 CD 05A4 CALL DEV0 1140 ; 1141 05DB 060A 05F4 LOTB: DW COLO,CO,LO@,LILOC 1142 05DF 40CD 40B8 1143 1144 IF HIGH ($-LOTB) 1145 .PRINTX "CHYBA V DEFINICI I/O TABULKY" 1146 ERRIO EQU $ 1147 ENDIF 1148 ; 1149 ; ZOBRAZ ADRESU Z "HL" 1150 1151 05E3 7C DADR0: MOV A,H 1152 05E4 CD 05E8 CALL DBYT 1153 05E7 7D MOV A,L 1154 1155 ; ZOBRAZ BYTE <A> 1156 1157 05E8 F5 DBYT: PUSH PSW 1158 05E9 0F RRC 1159 05EA 0F RRC 1160 05EB 0F RRC 1161 05EC 0F RRC 1162 05ED CD 05F1 CALL LBYTE 1163 05F0 F1 POP PSW 1164 05F1 DNIBL: 1165 05F1 CD 0511 LBYTE: CALL HXANIB 1166 ; 1167 05F4 CD 05A1 CO: CALL DEV 1168 ; 1169 05F7 060A 060D COTB: DW COLO,COOUT,LO,COLOC 1170 05FB 05D3 40A9 1171 ; 1172 IF HIGH ($-COTB) 1173 .PRINTX "CHYBA V DEFINICI I/O TABULKY" 1174 ERRIO EQU $ 1175 ENDIF 1176 ;**************************************************** FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-21 1177 ; OBSLUHA T.V. A NEBO TERMINALU 1178 ;**************************************************** 1179 ; 1180 ; CONSOLE OUTPUT 1181 ; <C>...ZAPISE NA OBRAZOVKU 1182 ; 1183 ; SM 7202 .. SERIOVY VYSTUP 1184 ; 1185 05FF DB 11 SEROUT: IN USTAT 1186 0601 E6 40 ANI 40H 1187 0603 CA 05FF JZ SEROUT 1188 0606 79 MOV A,C 1189 0607 D3 12 OUT UDATA 1190 0609 C9 RET 1191 ; 1192 ; ZOBRAZ A TISKNI 1193 ; 1194 060A CD 05D3 COLO: CALL LO 1195 ; 1196 ;******************************************** 1197 ; OBSLUHA T.V. A SIMULACE DISPLEJE <C>..ZNAK 1198 ;******************************************** 1199 ; 1200 060D 3A 40E3 COOUT: LDA MODE 1201 0610 0F RRC 1202 0611 DC 40CD CC LO@ ; TISK 1203 0614 C3 40C7 JMP CO@ ; TERMINAL 1204 ; 1205 ;-------------------------------- 1206 ; 1207 0617 79 CO@@: MOV A,C 1208 0618 FE 7F CPI 7FH ; DEL 1209 061A C8 RZ 1210 061B FE 09 CPI HT 1211 061D CA 082F JZ TAB@ 1212 0620 D5 PUSH D 1213 0621 E5 PUSH H 1214 0622 C5 PUSH B 1215 0623 2A 4081 LHLD CADR ; VYMAZ KURSOR 1216 0626 FE 20 CPI ' ' ; PRO ' '...'Z' PIS 1217 0628 DA 065A JC CONTROL ; RIZENI T.V. 1218 ; 1219 ; ZAPIS ZNAKU DO VIDEO RAM 1220 ; 1221 062B 3A 40F9 CO@WR: LDA XFLG ; ADRESACE KURSORU? 1222 062E B7 ORA A 1223 062F C2 06E1 JNZ ADRCUR ; + 1224 0632 79 MOV A,C ; VYTVOR KOD PRO AND-1 1225 0633 CD 0894 CALL BIG 1226 0636 E6 3F ANI 3FH 1227 0638 77 MOV M,A ; ZAPIS ZNAK ! 1228 0639 3A 40E3 LDA MODE 1229 063C E6 C0 ANI 0C0H 1230 063E C4 071B CNZ ATTR 1231 ; 1232 0641 CD 0723 COEXAT: CALL CONXT ; VYPOCTI DALSI ADRESU FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-22 1233 ; ZAPIS NOVY KURZOR 1234 0644 C1 COEXX: POP B 1235 0645 7E COEX0: MOV A,M 1236 0646 32 40F8 STA CHAR 1237 0649 22 4081 SHLD CADR 1238 064C 3A 40E3 LDA MODE ; KURSOR (Y/N) 1239 064F E6 20 ANI 20H 1240 0651 C2 0656 JNZ COEX1 1241 0654 36 A0 MVI M,CURSOR 1242 0656 E1 COEX1: POP H 1243 0657 D1 POP D 1244 0658 79 MOV A,C 1245 0659 C9 RET ; KONEC CONSOLE OUTPUT 1246 1247 ;*********************************************** 1248 ; 1249 ; ZPRACOVANI RIDICICH ZNAKU ( SIMULACE SM7202 ) 1250 ; 1251 065A CONTROL: 1252 065A 21 069B LXI H,COEX ; ADRESA NAVRATU 1253 065D E5 PUSH H ; OBNOVENI ZNAKU MISTO 1254 065E CD 06C5 CALL OBNOV ; KURZORU 1255 0661 79 MOV A,C 1256 0662 FE 0D CPI CR 1257 0664 CA 07BF JZ CR@ 1258 0667 FE 0A CPI LF 1259 0669 CA 0733 JZ LF@ 1260 066C FE 1E CPI EOL 1261 066E CA 0796 JZ EOL@ 1262 0671 FE 08 CPI BACK 1263 0673 CA 07A6 JZ BACK@ 1264 0676 FE 18 CPI RIGHT 1265 0678 CA 0723 JZ CONXT 1266 067B FE 1D CPI HOME 1267 067D CA 07B9 JZ HOME@ 1268 0680 FE 1F CPI ERS 1269 0682 CA 0761 JZ ERS@ 1270 0685 FE 1A CPI UP 1271 0687 CA 07C6 JZ UP@ 1272 068A FE 0B CPI VT 1273 068C CA 0785 JZ VT@ 1274 068F FE 1C CPI WNDCD 1275 0691 CA 0705 JZ WNDCH 1276 0694 FE 1B CPI ESC 1277 0696 C0 RNZ 1278 0697 32 40F9 ESC@: STA XFLG 1279 069A C9 RET 1280 ; 1281 ; VYPOCTI NOVOU POZICI 1282 ; 1283 069B CD 06CC COEX: CALL COADR 1284 069E C3 0644 JMP COEXX ; ZAPIS KURZOR 1285 ; 1286 ;------------------------------------------------- 1287 ; PODPROGRAMY 1288 ;-------------------------------------------------- FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-23 1289 ; 1290 ; NASTAV MODE A I/O FLAGY 1291 ; 1292 06A1 47 EXFLG: MOV B,A 1293 06A2 0C INR C ; SPEC. FUNKCE 1294 06A3 CA 007E JZ BINAR 1295 06A6 0D DCR C 1296 06A7 79 MOV A,C 1297 06A8 FE 15 CPI EXSER ; PRETECENI? 1298 06AA 78 MOV A,B 1299 06AB D0 RNC 1300 06AC E5 PUSH H ; <A> .. PRIKAZ 1301 ; <C> .. 0-N SLUZBA 1302 06AD 06 00 MVI B,0 ; 0-MODE, 1-@IF1..4-@OF2 1303 06AF 21 40E3 LXI H,MODE ; C=O 1304 06B2 09 DAD B 1305 06B3 46 MOV B,M ; <B>..PUVODNI NASTAVENI 1306 06B4 77 MOV M,A 1307 06B5 E1 POP H 1308 06B6 79 MOV A,C 1309 06B7 FE 05 CPI 5 1310 06B9 D8 RC ; C=5,6 .. OBNOV KORZOR 1311 06BA FE 07 CPI 7 1312 06BC D0 RNC 1313 06BD D5 EXFLG1: PUSH D 1314 06BE E5 PUSH H 1315 06BF CD 06C5 CALL OBNOV 1316 06C2 C3 0645 JMP COEX0 ; OBNOV KURZOR 1317 ; 1318 ; OBNOVA KURSORU 1319 ; 1320 06C5 2A 4081 OBNOV: LHLD CADR 1321 06C8 3A 40F8 LDA CHAR 1322 06CB 77 MOV M,A 1323 ; 1324 ; VYPOCTI NOVOU ADRESU 1325 ; 1326 06CC 2A 40E8 COADR: LHLD LINE ; SPOCTI ADR.<HL> 1327 06CF E5 PUSH H 1328 06D0 26 00 MVI H,0 1329 06D2 29 DAD H 1330 06D3 29 DAD H 1331 06D4 29 DAD H 1332 06D5 29 DAD H 1333 06D6 29 DAD H 1334 06D7 29 DAD H ; 64* 1335 06D8 11 3800 LXI D,TVBEG ; TV-RAM 1336 06DB 19 DAD D ; ZACATEK RADKU 1337 06DC D1 POP D 1338 06DD 7D MOV A,L ; D-SLOUPEC 1339 06DE B2 ORA D ; E-RADEK 1340 06DF 6F MOV L,A ; HL...ADR 1341 06E0 C9 RET 1342 ; 1343 ; ADRESACE KURZORU: ESC, Y, X 1344 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-24 1345 06E1 3D ADRCUR: DCR A 1346 06E2 79 MOV A,C ; ZNAK 1347 06E3 CA 06F3 JZ ADRCX ; "X" 1348 06E6 D6 20 SUI ' ' ; "Y" 1349 06E8 FE 18 CPI HEIGHT 1350 06EA D0 RNC 1351 06EB 32 40E8 STA LINE 1352 06EE 3E 01 MVI A,1 1353 06F0 C3 06FC JMP ESC@0 1354 06F3 D6 20 ADRCX: SUI ' ' 1355 06F5 FE 28 CPI WIDTH 1356 06F7 D0 RNC 1357 06F8 32 40E9 STA COLUM 1358 06FB AF XRA A ; ZRUS PRIZNAK 1359 06FC 32 40F9 ESC@0: STA XFLG 1360 06FF CD 06C5 CALL OBNOV 1361 0702 C3 0644 JMP COEXX 1362 ; 1363 ; ZMENA OKNA 1364 ; 1365 0705 21 40F2 WNDCH: LXI H,WNDP ; ADRESA NOVYCH PARAMETRU 1366 0708 11 40E8 WND@: LXI D,LINE ; PUVODNI NASTAVENI 1367 070B 06 06 MVI B,6 ; DELKA 1368 070D 1A WND@0: LDAX D 1369 070E 4E MOV C,M ; ZAMENA 1370 070F 77 MOV M,A 1371 0710 79 MOV A,C 1372 0711 12 STAX D 1373 0712 13 INX D 1374 0713 23 INX H 1375 0714 05 DCR B 1376 0715 C2 070D JNZ WND@0 1377 0718 C3 06BD JMP EXFLG1 ; OBNOV KURZOR 1378 ; 1379 ; ZPRACUJ ATTRIBUT 1380 ; 1381 071B B6 ATTR: ORA M 1382 071C 77 MOV M,A 1383 071D D6 C0 SUI 0C0H 1384 071F D4 0723 CNC CONXT 1385 0722 C9 RET 1386 ; 1387 ; VYPOCTI DALSI ADRESU 1388 ; 1389 0723 23 CONXT: INX H ; JE TO 1390 0724 CD 081F CALL CMAX ; POSLEDNI ZNAK 1391 0727 47 MOV B,A 1392 0728 7D MOV A,L ; KONEC RADKU ? 1393 0729 E6 3F ANI 3FH 1394 072B 32 40E9 STA COLUM 1395 072E B8 CMP B ; KONEC RADKU 1396 072F D8 RC ; NE 1397 0730 CD 07BF CONX1: CALL CR@ ; NASTAV SLOUPEC 1398 ; 1399 ; NOVY RADEK 1400 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-25 1401 0733 CD 0785 LF@: CALL VT@ 1402 0736 D0 RNC 1403 ; 1404 ; ROLUJ OBRAZOVKU 1405 ; 1406 0737 2A 40EA ROLL@: LHLD RESL 1407 073A 79 MOV A,C 1408 073B 95 SUB L 1409 073C 3D DCR A 1410 073D 4F MOV C,A ; POCET RADKU 1411 073E CD 081F CALL CMAX 1412 0741 94 SUB H 1413 0742 47 MOV B,A ; POCET ZNAKU 1414 0743 CD 06CF CALL COADR+3 ; PRVNI RADEK 1415 0746 EB ROLL: XCHG 1416 0747 21 0040 LXI H,LINOF ; OFFSET 1417 074A 19 DAD D 1418 074B C5 PUSH B 1419 074C E5 PUSH H ; PRO DALSI RADEK 1420 074D 7E ROLL1: MOV A,M 1421 074E 12 STAX D 1422 074F 13 INX D ; + 1423 0750 23 INX H 1424 0751 05 DCR B 1425 0752 C2 074D JNZ ROLL1 ; VSECHNY RADKY 1426 0755 E1 POP H 1427 0756 C1 POP B 1428 0757 0D DCR C ; KONEC ? 1429 0758 C2 0746 JNZ ROLL 1430 075B CD 0796 ROLL2: CALL EOL@ 1431 075E C3 06CC JMP COADR 1432 ; 1433 ; VYMAZ ZBYTEK OBRAZOVKY 1434 ; 1435 0761 CD 0796 ERS@: CALL EOL@ 1436 0764 2A 40E8 LHLD LINE 1437 0767 3A 40EB LDA RESC 1438 076A 67 MOV H,A ; 1.ZNAK NA RADKU 1439 076B CD 0827 CALL LMAX ; POCET RADKU 1440 076E 95 SUB L 1441 076F 3D DCR A 1442 0770 4F MOV C,A ; CITAC 1443 0771 CA 06CC JZ COADR ; KONEC 1444 0774 CD 06CF CALL COADR+3 1445 0777 11 0040 ERS@1: LXI D,LINOF 1446 077A 19 DAD D 1447 077B E5 PUSH H 1448 077C CD 0796 CALL EOL@ 1449 077F E1 POP H 1450 0780 0D DCR C 1451 0781 C2 0777 JNZ ERS@1 1452 0784 C9 RET 1453 ; 1454 ; VERTIKALNI TAB. 1455 ; 1456 0785 CD 0827 VT@: CALL LMAX ; POSLEDNI RADEK ? FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-26 1457 0788 4F MOV C,A 1458 0789 3A 40E8 LDA LINE ; CISLO RADKU 1459 078C 3C INR A 1460 078D B9 CMP C ; KONEC? 1461 078E 3F CMC 1462 078F D8 RC 1463 0790 32 40E8 STA LINE 1464 0793 C3 06CC JMP COADR 1465 1466 1467 ; VYMAZ ZBYTEK RADKU 1468 ; 1469 0796 7D EOL@: MOV A,L 1470 0797 E6 3F ANI 3FH ; CISLO ZNAKU 1471 0799 47 MOV B,A 1472 079A CD 081F CALL CMAX ; MAX. POCET ZNAKU 1473 079D 90 SUB B ; POCET ZNAKU PRO VYMAZ 1474 079E 36 20 EOL@1: MVI M,' ' ; CISTI 1475 07A0 23 INX H 1476 07A1 3D DCR A 1477 07A2 C2 079E JNZ EOL@1 1478 07A5 C9 RET 1479 ; 1480 ; VRAT KURZOR ZPET 1481 ; 1482 07A6 3A 40EB BACK@: LDA RESC ; JE TO 1. ZNAK 1483 07A9 BA CMP D 1484 07AA 7A MOV A,D 1485 07AB C2 07B5 JNZ BAC@1 1486 07AE CD 07C6 CALL UP@ 1487 07B1 D0 RNC ; HORNI OKRAJ 1488 07B2 CD 081F CALL CMAX 1489 07B5 3D BAC@1: DCR A 1490 07B6 C3 07C2 JMP CR@+3 1491 ; 1492 ; NASTAV ZACATEK OBRAZOVKY 1493 ; 1494 07B9 3A 40EA HOME@: LDA RESL 1495 07BC 32 40E8 STA LINE 1496 ; 1497 ; NOVY RADEK 1498 ; 1499 07BF 3A 40EB CR@: LDA RESC 1500 07C2 32 40E9 STA COLUM 1501 07C5 C9 RET 1502 ; 1503 ; KURZOR NAHORU 1504 ; 1505 07C6 3A 40EA UP@: LDA RESL 1506 07C9 BB CMP E 1507 07CA C8 RZ ; REZERVA 1508 07CB 7B MOV A,E 1509 07CC B7 ORA A 1510 07CD C8 RZ ; VRCHOL 1511 07CE 3D DCR A 1512 07CF 32 40E8 STA LINE FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-27 1513 07D2 37 STC 1514 07D3 C9 RET 1515 ;**************************************************** 1516 ; PREKODOVANI ZNAKU PRO :CI: 1517 ;---------------------------- 1518 ; PREVOD PRO 262.3 PL-CS 1519 ; 1520 07D4 D2 80 8D 1D TABZN: DB 0D2H,80H,8DH,1DH ; CS-LOCK, HOME 1521 07D8 82 81 83 81 DB 82H,81H,83H,81H ; CS-COPY 1522 07DC C1 1A C2 0B DB 0C1H,1AH,0C2H,0BH ; KURZOR 1523 07E0 C3 18 C4 08 DB 0C3H,18H,0C4H,08H 1524 07E4 D0 DC D1 E0 DB 0D0H,0DCH,0D1H,0E0H ; '^ 1525 07E8 00 DB 0 ; KONEC 1526 ; 1527 ; TABULKA ZNAKU: 1528 ; 1529 07E9 CSKOD: ; CISLA NA CS-KODY 1530 07E9 D7 2B C5 D3 DB 0D7H,02BH,0C5H,0D3H,0C3H 1531 07ED C3 1532 07EE D2 DA D9 C1 DB 0D2H,0DAH,0D9H,0C1H,0C9H 1533 07F2 C9 1534 ; 1535 ; PREVOD WM-KODU A CISEL 1536 ; 1537 07F3 2C 2D 2E TBWM: DB ',-.' ; ,-. 1538 07F6 81 DB 81H ; CS 0 1539 07F7 30 31 32 33 DB '0123456789' 1540 07FB 34 35 36 37 1541 07FF 38 39 1542 0801 RRAM EQU $ 1543 ;***************************************************** 1544 IF RRAM GT 809H 1545 .PRINTX 'SPATNA TABULKA O.S' 1546 QQQQQQ 1547 ENDIF 1548 1549 ORG 809H ; SLUZBY MIKOSU 1550 0809 C3 006A JMP FIND 1551 080C C3 006F JMP OPEN 1552 080F C3 0A69 JMP CLOSE 1553 0812 C3 0074 JMP LOADCD 1554 0815 C3 0079 JMP SAVECD 1555 0818 50 45 52 49 DB 'PERINA ' 1556 081C 4E 41 20 1557 ;**************************************************** 1558 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1559 ; PRACE S OKNY 1560 ; 1561 081F 3A 40ED CMAX: LDA RESC1 ; MAX POCET ZNAKU 1562 0822 B7 ORA A 1563 0823 C0 RNZ ; JE ZADAN 1564 0824 3E 28 CMAX0: MVI A,WIDTH 1565 0826 C9 RET 1566 ; 1567 0827 3A 40EC LMAX: LDA RESL1 ; MAX POCET RADKU 1568 082A B7 ORA A FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-28 1569 082B C0 RNZ 1570 082C 3E 18 LMAX0: MVI A,HEIGHT 1571 082E C9 RET 1572 1573 1574 082F C5 TAB@: PUSH B 1575 0830 CD 09CF CALL SPACE 1576 0833 3A 4081 LDA CADR ; MODULO 8 1577 0836 E6 07 ANI 7 1578 0838 C2 0830 JNZ TAB@+1 1579 083B C1 POP B 1580 083C 79 MOV A,C 1581 083D C9 RET 1582 ; 1583 ;**************************************************** 1584 ; OBSLUHA KLAVSNICE NEBO TERMINALU <A>..ZNAK 1585 ;**************************************************** 1586 ; 1587 083E CD 01EC CALL INIC-6 ; ^W 1588 0841 3A 40F0 CI@: LDA KEY ; NASTAV TYP KURZORU 1589 0844 B7 ORA A 1590 0845 3E A0 MVI A,CURSOR ; NORMALNI ZNAK 1591 0847 CA 0852 JZ SETCUR 1592 084A 3E 5E MVI A,5EH ; ' ^ 1593 084C F2 0852 JP SETCUR 1594 084F 3A 40EF LDA CUR@ ; CS-LOCK 1595 0852 E5 SETCUR: PUSH H 1596 0853 2A 4081 LHLD CADR 1597 0856 77 MOV M,A ; ZAPIS 1598 0857 E1 POP H 1599 0858 CD 40C4 CALL CI@0 ; HANDLER 1600 085B C5 CI@1: PUSH B 1601 085C 47 MOV B,A 1602 085D CD 093F CALL DEKOD ; DEKODUJ KLAVESY 1603 0860 3A 4086 LDA CSKOD@ ; KOD CS 1604 0863 4F MOV C,A 1605 ;NORMALNI MOD NEBO CS 1606 0864 3A 40E3 LDA MODE 1607 0867 E6 04 ANI 4 1608 0869 C2 08C2 JNZ CICS ; CESKA ABECEDA 1609 ; POCITACOVE ZNAKY ... 1610 086C 78 MOV A,B 1611 086D C1 POP B 1612 086E CD 0894 CALL BIG 1613 0871 FE 17 CPI PRNT 1614 0873 CA 083E JZ CI@-3 ; ^W 1615 0876 FE 10 CPI CTRLP 1616 0878 CA 0889 JZ CHANGE ; ^P 1617 087B FE 11 CPI CTRLQ ; ^Q 1618 087D C0 RNZ 1619 087E CD 0841 CALL CI@ 1620 0881 E6 0F ANI 0FH ; MAX 0-15 1621 0883 32 40EA STA RESL 1622 0886 C3 0841 JMP CI@ ; NOVY ZNAK 1623 ; 1624 0889 3A 40E3 CHANGE: LDA MODE FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-29 1625 088C EE 01 XRI 1 1626 088E 32 40E3 STA MODE 1627 0891 C3 0841 JMP CI@ 1628 ; PREVOD NA VELKA PISMENA 1629 0894 E6 7F BIG: ANI 7FH 1630 0896 FE 7B CPI 7BH 1631 0898 D0 RNC 1632 0899 FE 61 CPI 61H 1633 089B D8 RC 1634 089C D6 20 SUI 20H 1635 089E C9 RET 1636 ; 1637 ; INICIALIZACE 1638 ; 1639 089F 3E 01 CINIT: MVI A,ALLINT ; POVOL A NASTAV RST 0 1640 08A1 32 40EE STA PRER ; NASTAV UROVEN 1641 08A4 21 07D4 LXI H,TABZN ; DEKODOVANI 263 CS-PL 1642 08A7 CD 08B5 CALL KODASC 1643 08AA 21 07F3 LXI H,TBWM 1644 ; 1645 ; SLUZBA PRO NASTAVENI WM. KODU A CS. KODU 1646 ; 1647 08AD 01 4083 KODWM: LXI B,WMKOD 1648 08B0 1E 0D MVI E,14-1 ; DELKA 1649 08B2 C3 08BA JMP FIL@ 1650 ; 1651 ; SLUZBA PRO NASTAVENI PREVODU ZNAKU 1652 ; 1653 08B5 01 4091 KODASC: LXI B,PREV 1654 08B8 1E 14 MVI E,21-1 1655 ; POMOCNY 1656 08BA 16 00 FIL@: MVI D,0 ; DELKA 1657 08BC EB XCHG 1658 08BD 19 DAD D ; KONCOVA ADR. 1659 08BE EB XCHG 1660 08BF C3 0480 JMP MO1 1661 ; CTENI ZNAKU Z KLAVESNICE S CESKYMI KODY 1662 ;======================================== 1663 08C2 79 CICS: MOV A,C 1664 08C3 B8 CMP B 1665 08C4 3E 81 MVI A,81H ; CS-KOD 1666 08C6 CA 08F9 JZ ZMECS 1667 08C9 78 MOV A,B 1668 08CA FE DC CPI 0DCH ; HACEK 1669 08CC CA 08F9 JZ ZMECS 1670 08CF FE E0 CPI 0E0H ; CARKA 1671 08D1 CA 08F9 JZ ZMECS 1672 08D4 FE 80 CPI 80H ; CS-LOCK 1673 08D6 CA 08F4 JZ ZMENA 1674 08D9 3A 40F0 LDA KEY 1675 08DC B7 ORA A 1676 08DD FA 0920 JM CESKY ; 1 ZNAK CS 1677 08E0 C2 0900 JNZ CTICS ; CS LOCK 1678 08E3 78 MOV A,B 1679 08E4 C1 POP B 1680 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-30 1681 ; VYPOCTI WM-KOD MISTO CISEL 1682 ; 1683 08E5 FE AC WMDO: CPI 0ACH 1684 08E7 D8 RC ; NENI CS-KOD 1685 08E8 FE BA CPI 0BAH ; JE > '9' OR 80H 1686 08EA D0 RNC 1687 08EB E5 PUSH H 1688 08EC 21 0747 LXI H,TBWM - 0ACH 1689 08EF CD 0973 CALL KODUJ 1690 08F2 E1 POP H 1691 08F3 C9 RET 1692 ; 1693 ; ZMEN KEY TLACITKO SET 1694 08F4 3A 40F0 ZMENA: LDA KEY 1695 08F7 EE 01 XRI 1 1696 08F9 32 40F0 ZMECS: STA KEY 1697 08FC C1 POP B 1698 08FD C3 0841 JMP CI@ 1699 ; CTI CS.KOD 1700 0900 CTICS: 1701 0900 78 MOV A,B 1702 0901 C1 POP B 1703 0902 FE C0 CPI 0C0H ; CS U 1704 0904 D0 RNC 1705 0905 B7 ORA A 1706 0906 F2 090C JP CTIC1 1707 0909 E6 7F ANI 7FH ; UDELEJ CISLA 1708 090B C9 RET 1709 090C CD 0919 CTIC1: CALL CISLO 1710 090F D8 RC ; NENI 1711 0910 E5 CTIC2: PUSH H ; MISTO CISLA CS 1712 0911 21 07B9 LXI H,CSKOD-'0' 1713 0914 CD 0973 CALL KODUJ 1714 0917 E1 POP H 1715 0918 C9 RET 1716 ; JE CISLO ? CY=0 ANO 1717 0919 FE 30 CISLO: CPI '0' ; MISTO CISEL CS. KOD 1718 091B D8 RC 1719 091C FE 3A CPI '9'+1 1720 091E 3F CMC 1721 091F C9 RET 1722 ; CESKY - 1 ZNAK 1723 0920 CESKY: 1724 0920 FE E0 CPI 0E0H 1725 0922 CC 0953 CZ ZCARKA 1726 0925 FE DC CPI 0DCH 1727 0927 CC 095A CZ ZHACEK 1728 092A D6 81 SUI 81H 1729 092C CA 0931 JZ $+5 ; ZRUS CS !! 1730 092F 3E 01 MVI A,1 1731 0931 32 40F0 STA KEY ; NASTAV SET NA CS 1732 0934 78 MOV A,B 1733 0935 C1 POP B 1734 0936 CD 0919 CALL CISLO 1735 0939 D2 0910 JNC CTIC2 1736 093C EE A0 XRI 0A0H FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-31 1737 093E C9 RET 1738 ; 1739 ; ZMEN HACEK 1740 093F E5 DEKOD: PUSH H 1741 0940 21 4090 LXI H,PREV-1 1742 0943 F5 ZHA0: PUSH PSW 1743 0944 23 ZHA1: INX H 1744 0945 7E MOV A,M 1745 0946 B7 ORA A 1746 0947 CA 0950 JZ ZHA2 ; KONEC 1747 094A 23 INX H 1748 094B B8 CMP B ; ZNAK 1749 094C C2 0944 JNZ ZHA1 1750 094F 46 MOV B,M ; ZMENA 1751 0950 F1 ZHA2: POP PSW 1752 0951 E1 POP H 1753 0952 C9 RET 1754 ; ZMEN CARKU 1755 0953 E5 ZCARKA: PUSH H 1756 0954 21 0965 LXI H,TCARKA-1 1757 0957 C3 0943 JMP ZHA0 1758 ; ZMEN KODY KLAVES 1759 095A E5 ZHACEK: PUSH H 1760 095B 21 0960 LXI H,THACEK-1 1761 095E C3 0943 JMP ZHA0 1762 ;----------------------------- 1763 0961 75 6A 55 4A THACEK: DB 'ujUJ',0 ; ZMENY PRO HACEK 1764 0965 00 1765 0966 72 66 52 46 TCARKA: DB 'rfRFewEWlkLK',0 ; CARKU 1766 096A 65 77 45 57 1767 096E 6C 6B 4C 4B 1768 0972 00 1769 ;--------------------------------------- 1770 ; VYPOCTI NOVY KOD 1771 0973 C5 KODUJ: PUSH B 1772 0974 06 00 MVI B,0 1773 0976 4F MOV C,A 1774 0977 09 DAD B 1775 0978 7E MOV A,M 1776 0979 C1 POP B 1777 097A C9 RET 1778 ; 1779 ;**************************************************** 1780 ; ZJISTI STATUS ZY=1..NENI ZNAK, #0 JE ZNAK 1781 ;**************************************************** 1782 ; 1783 ; STATUS SM 7202 ZY=1 .. NENI ZNAK 1784 ; 1785 097B DB 11 SMST: IN USTAT 1786 097D 17 RAL 1787 097E 3E 00 MVI A,0 1788 0980 9F SBB A 1789 0981 C9 RET 1790 ; 1791 ; STATUS KLAVESNICE ZY=0 JE ZNAK 1792 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-32 1793 0982 3A 2400 CSTS@@: LDA PORTK 1794 0985 0F RRC 1795 0986 3E FF MVI A,-1 1796 0988 CE 00 ACI 0 1797 098A C9 RET 1798 ; 1799 ;**************************************************** 1800 ; HANDLER PRO KLAVESNICI 1801 ;**************************************************** 1802 ; 1803 ; CTENI ZNAKU ZE SERIOVE LINKY 1804 ; 1805 098B DB 11 SERIN: IN USTAT 1806 098D 17 RAL 1807 098E D2 098B JNC SERIN ; SERIOVY VSTUP 1808 0991 DB 12 IN UDATA 1809 0993 B7 ORA A 1810 0994 C9 RET 1811 ; 1812 ; VSTUP ZNAKU Z KLAVESNICE 1813 ; 1814 0995 CD 0982 CI@@: CALL CSTS@@ 1815 0998 DA 0995 JC CI@@ 1816 099B E5 PUSH H 1817 099C 26 28 MVI H,(HIGH PORTK) + 4 1818 099E 7E MOV A,M 1819 099F 2F CMA 1820 09A0 6F MOV L,A ; DATA 1821 09A1 25 DCR H 1822 09A2 36 03 MVI M,3 1823 09A4 7E CI2: MOV A,M 1824 09A5 0F RRC 1825 09A6 D2 09A4 JNC CI2 1826 09A9 36 02 MVI M,2 1827 09AB 7D MOV A,L 1828 09AC E1 POP H 1829 09AD C9 RET 1830 ; 1831 ; NASTAV MODE 1832 ; 1833 09AE CD 0500 CHMODE: CALL RADR 1834 09B1 32 40E3 STA MODE 1835 09B4 C9 RET 1836 ; 1837 ; NASTAV UROVEN PRERUSENI 1838 ; 1839 09B5 CD 0500 Y: CALL RADR ; CTI 1840 09B8 32 40EE STA PRER 1841 09BB C9 RET ; ZAPIS 1842 ; 1843 ; NASTAV CASOVANI MGF 1844 ; 1845 09BC CD 0500 Z: CALL RADR 1846 09BF 32 40F1 STA CASK 1847 09C2 C9 RET 1848 ; FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-33 1849 ; VERIFY: KONTOLNI SOUCET 1850 ; 1851 09C3 CD 04A8 VERIFY: CALL EXPR ; OD-DO 1852 09C6 D1 POP D 1853 09C7 E1 POP H 1854 09C8 CD 0A41 CALL VYPSUM 1855 09CB 78 MOV A,B 1856 09CC CD 05E8 DBYTE: CALL DBYT 1857 09CF 0E 20 SPACE: MVI C,' ' 1858 09D1 C3 05F4 JMP CO 1859 1860 ;------------------------------------------------ 1861 ; 1862 ; ZAVED 1. PROGRAM NA PASCE 1863 ; 1864 09D4 21 0083 LOADB: LXI H,JMENO 1865 09D7 CD 0074 CALL LOADCD 1866 09DA 2A 40FC LHLD SADR ; 1.ADR 1867 09DD 7E MOV A,M 1868 09DE FE C3 CPI 0C3H 1869 09E0 C2 0A4D JNZ UKAZ 1870 09E3 11 4401 LXI D,BASIC+1 1871 09E6 CD 04F5 CALL HILO 1872 09E9 C2 0A29 JNZ JUMP ; START (NENI SYS.) 1873 09EC 13 INX D 1874 09ED 13 INX D 1875 09EE 1A LDAX D ; BASIC/TOOL.. 1876 09EF FE C3 CPI 0C3H 1877 09F1 CA 0A1E JZ PCMD ; NENI BASIC 1878 ; 1879 ; SKOK NA SYSTEMOVE PROGRAMY 1880 ; 1881 09F4 06 42 BCMD: MVI B,'B' ; BASIC 1882 09F6 21 4400 LXI H,BASIC 1883 09F9 11 40FA B0: LXI D,@BT 1884 09FC 7E B1: MOV A,M 1885 09FD FE C3 CPI 0C3H ; SKOK 1886 09FF C2 0A3B JNZ ERROR ; NENI EPROM SYSTEM 1887 0A02 1A LDAX D 1888 0A03 B8 CMP B ; TEPLY START ? 1889 0A04 CA 0A0F JZ B2 ; + 1890 0A07 B7 ORA A 1891 0A08 C2 0A3B JNZ ERROR 1892 0A0B 78 MOV A,B 1893 0A0C 12 STAX D ; NASTAV FLAGY 1894 0A0D 2B DCX H 1895 0A0E 11 DB 11H 1896 ; 1897 0A0F 23 B2: INX H 1898 0A10 23 INX H 1899 0A11 23 INX H 1900 0A12 E5 PUSH H ; TEPLY START 1901 0A13 C3 0348 JMP INTER 1902 ; 1903 0A16 06 54 TCMD: MVI B,'T' 1904 0A18 21 4C00 LXI H,TRACER FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-34 1905 0A1B C3 09F9 JMP B0 1906 ; 1907 0A1E 06 50 PCMD: MVI B,'P' ; PEDIT 1908 0A20 21 4400 LXI H,PEDIT 1909 0A23 11 40FB LXI D,@PED 1910 0A26 C3 09FC JMP B1 1911 ; 1912 ; SKOK DO UZIVATELSKEHO PROGRAMU 1913 ; 1914 0A29 CD 0A4D JUMP: CALL UKAZ 1915 0A2C EB XCHG 1916 0A2D 7D MOV A,L ; ZADNY PROGRAM 1917 0A2E B4 ORA H 1918 0A2F CA 0A3B JZ ERROR ; PRAZDNY 1919 0A32 E5 PUSH H ; START 1920 0A33 CD 0A41 CALL VYPSUM 1921 0A36 3A 4100 LDA SUM 1922 0A39 B8 CMP B 1923 0A3A C8 RZ 1924 ; 1925 ; OSETRENI CHYBY 1926 ; 1927 0A3B CD 001B ERROR: CALL QUES 1928 0A3E C3 40C1 JMP ERRSW ; PREDEJ RIZENI PO CHYBE 1929 ; 1930 0A41 06 00 VYPSUM: MVI B,0 ; SUMA 1931 0A43 7E J1: MOV A,M 1932 0A44 80 ADD B 1933 0A45 47 MOV B,A 1934 0A46 CD 04F5 CALL HILO 1935 0A49 D2 0A43 JNC J1 1936 0A4C C9 RET 1937 ; 1938 ; UKAZ ADRESY PROGRAMU OD-DO 1939 ; 1940 0A4D 2A 40FC UKAZ: LHLD SADR 1941 0A50 CD 0508 CALL DNADR 1942 0A53 EB XCHG 1943 0A54 2A 40FE LHLD EADR 1944 0A57 C3 050B JMP DADR 1945 ; 1946 ; "END OF FILE" PRIKAZ 1947 ; 1948 1949 0A5A CD 0500 EOF: CALL RADR ; START.ADR 1950 0A5D 06 01 MVI B,1 ; TYP ZAZNAMU 1951 0A5F AF XRA A ; PARAM. 1952 0A60 5F MOV E,A ; POCET BYTE 1953 0A61 CD 0B2C CALL PBEG 1954 0A64 AF XRA A 1955 0A65 92 SUB D ; KONTROLNI SOUCET 1956 0A66 CD 0B49 CALL PBYTE 1957 0A69 0E 03 CLOSE: MVI C,3 ; CLOSE 1958 0A6B C3 40D0 JMP KOS@ 1959 ; 1960 ; CTI HEX INTEL FORMAT FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-35 1961 ; 1962 0A6E CD 006A READ@: CALL FIND 1963 0A71 CD 04D4 CALL CRLF 1964 0A74 CD 0500 CALL RADR ; OFFSET 1965 0A77 3E DB 3EH ; MVI A,# 1966 0A78 E1 RED1: POP H 1967 0A79 E5 PUSH H 1968 0A7A CD 0B56 REDC1: CALL MREAD ; CTI BYTE 1969 0A7D D6 3A SUI ':' ; ZACATEK ZAZNAMU ? 1970 0A7F C2 0A7A JNZ REDC1 ; ANO 1971 0A82 57 REDC2: MOV D,A ; NULOVANI KONTR. SOUCTU 1972 0A83 CD 0B0F CALL RBYTE ; DELKA RADKU 1973 0A86 CA 0AB7 JZ RED3 ; KDYZ 0, KONEC 1974 0A89 5F MOV E,A ; NASTAVENI CITACE 1975 0A8A CD 0B0F CALL RBYTE ; HORNI ADR. 1976 0A8D F5 PUSH PSW 1977 0A8E CD 0B0F CALL RBYTE ; SPODNI ADR. 1978 0A91 C1 POP B 1979 0A92 4F MOV C,A 1980 0A93 09 DAD B ; OFFSET ADRESY 1981 0A94 CD 0B0F CALL RBYTE ; PRIZNAK 1982 0A97 CD 0B0F RED2: CALL RBYTE ; STROJ. KOD 1983 0A9A 77 MOV M,A 1984 0A9B BE CMP M ; TEST PAMETI 1985 0A9C 0E 4D MVI C,'M' ; ERROR 'M' 1986 0A9E C2 0AAE JNZ REDER 1987 0AA1 23 INX H 1988 0AA2 1D DCR E ; CITAC BYTE STROJ. KODU 1989 0AA3 C2 0A97 JNZ RED2 1990 0AA6 CD 0B0F CALL RBYTE ; KONTR. SOUCET Z PASKY 1991 0AA9 CA 0A78 JZ RED1 ; OK 1992 0AAC 0E 53 MVI C,'S' ; ERROR 'S' - KONTROLNI SUMA 1993 0AAE CD 05F4 REDER: CALL CO ; TYP CHYBY 1994 0AB1 CD 050B CALL DADR 1995 0AB4 C3 0A3B JMP ERROR 1996 0AB7 E5 RED3: PUSH H 1997 0AB8 CD 0B0F CALL RBYTE ; HORNI START.ADR 1998 0ABB 67 MOV H,A 1999 0ABC CD 0B0F CALL RBYTE ; SPODNI START.ADR 2000 0ABF 6F MOV L,A 2001 0AC0 CD 0B0F CALL RBYTE ; KONTROLNI SUMA 2002 0AC3 CD 0B0F CALL RBYTE 2003 0AC6 C2 0AAC JNZ REDER-2 ; CHYBA 2004 0AC9 D1 POP D 2005 0ACA 7A MOV A,D 2006 0ACB B3 ORA E ; OFFSET ? 2007 0ACC D1 POP D 2008 0ACD C0 RNZ ; ANO, NE START 2009 0ACE 7C MOV A,H 2010 0ACF B5 ORA L ; START.ADR 2011 0AD0 C8 RZ ; NE 2012 0AD1 E9 PCHL 2013 ; 2014 ; ZAPIS HEX FORMAT 2015 2016 0AD2 0E 02 WRITE: MVI C,2 FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-36 2017 0AD4 CD 04A8 CALL EXPR 2018 0AD7 CD 04D4 CALL CRLF 2019 0ADA D1 POP D 2020 0ADB E1 POP H 2021 0ADC 7D WR1: MOV A,L 2022 0ADD C6 10 ADI 10H 2023 0ADF 4F MOV C,A 2024 0AE0 7C MOV A,H 2025 0AE1 CE 00 ACI 0 2026 0AE3 47 MOV B,A 2027 0AE4 7B MOV A,E 2028 0AE5 91 SUB C 2029 0AE6 4F MOV C,A 2030 0AE7 7A MOV A,D 2031 0AE8 98 SBB B 2032 0AE9 DA 0AF1 JC WR2 2033 0AEC 3E 10 MVI A,10H ; >16 2034 0AEE C3 0AF4 JMP WR3 2035 0AF1 79 WR2: MOV A,C ; <16 2036 0AF2 C6 11 ADI 11H 2037 0AF4 B7 WR3: ORA A 2038 0AF5 C8 RZ ; DALSI 2039 0AF6 D5 PUSH D ; USCHOVA HORNI ADR. 2040 0AF7 5F MOV E,A ; NASTAVENI CITACE 2041 0AF8 AF XRA A 2042 0AF9 47 MOV B,A ; TYP 2043 0AFA CD 0B2C CALL PBEG 2044 0AFD 7E WR4: MOV A,M 2045 0AFE 23 INX H 2046 0AFF CD 0B49 CALL PBYTE ; STROJ. KOD 2047 0B02 1D DCR E 2048 0B03 C2 0AFD JNZ WR4 2049 0B06 AF XRA A 2050 0B07 92 SUB D 2051 0B08 CD 0B49 CALL PBYTE ; KONTR. SOUCET 2052 0B0B D1 POP D 2053 0B0C C3 0ADC JMP WR1 2054 2055 2056 ; PRECTE 2 ZNAKY, SESTAVI BYTE, TVORI KONTR. SOUCET 2057 2058 0B0F CD 0B56 RBYTE: CALL MREAD ; CTE ZNAK S MASKOU 7F 2059 0B12 CD 0523 CALL ASHEX ; PREVOD ASCII-HEX 2060 0B15 07 RLC 2061 0B16 07 RLC 2062 0B17 07 RLC 2063 0B18 07 RLC 2064 0B19 4F MOV C,A 2065 0B1A CD 0B56 CALL MREAD 2066 0B1D CD 0523 CALL ASHEX 2067 0B20 B1 ORA C ; SESTAVI BYTE 2068 0B21 4F MOV C,A 2069 0B22 82 ADD D ; KONTROLNI SOUCET 2070 0B23 57 MOV D,A 2071 0B24 79 MOV A,C 2072 0B25 C9 RET FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-37 2073 2074 ; KONEC VYRAZU 2075 2076 0B26 FE 09 TERM: CPI HT 2077 0B28 C8 RZ 2078 0B29 C3 053D JMP ANAL 2079 2080 2081 2082 ; PIS ZACATEK ZAZNAMU 2083 2084 0B2C 57 PBEG: MOV D,A ; NULUJ KONTROLNI SUMU 2085 0B2D 0E 0D MVI C,CR 2086 0B2F CD 05C1 CALL PO 2087 0B32 0E 0A MVI C,LF 2088 0B34 CD 05C1 CALL PO 2089 0B37 0E 3A MVI C,':' 2090 0B39 CD 05C1 CALL PO 2091 0B3C 7B MOV A,E ; E .. POCET BYTE 2092 0B3D CD 0B49 CALL PBYTE 2093 0B40 7C MOV A,H ; HL .. ADR 2094 0B41 CD 0B49 CALL PBYTE 2095 0B44 7D MOV A,L 2096 0B45 CD 0B49 CALL PBYTE 2097 0B48 78 MOV A,B ; TYP 2098 0B49 F5 PBYTE: PUSH PSW 2099 0B4A CD 05BA CALL HBT 2100 0B4D F1 POP PSW 2101 0B4E F5 PUSH PSW 2102 0B4F CD 05BE CALL LBT 2103 0B52 F1 POP PSW 2104 0B53 82 ADD D 2105 0B54 57 MOV D,A 2106 0B55 C9 RET 2107 ; 2108 ; CTE ZNAK S MASKOU, PRO CHYBU NASTAVI CARRY 2109 2110 0B56 CD 05AA MREAD: CALL RI 2111 0B59 DA 0A3B JC ERROR 2112 0B5C E6 7F ANI 7FH ; POTLACENI PARITNIHO BITU 2113 0B5E CA 0B56 JZ MREAD 2114 0B61 C9 RET 2115 ; 2116 ; 2117 ; CTI JMENO Z KLAVESNICE NEBO PROGRAMU 2118 ; 2119 0B62 EB RNAME: XCHG 2120 0B63 7E MOV A,M ; HL UKAZUJE NA EXTERNI TEXT 2121 0B64 32 4101 STA EXTEXT ; ".. JE JMENO 2122 0B67 FE 22 CPI '"' 2123 0B69 23 INX H 2124 0B6A 06 3E MVI B,62 ; MAX. DELKA 2125 0B6C 11 4103 LXI D,NAMBUF 2126 0B6F D5 PUSH D ; ADR PRO ZAPIS 2127 0B70 C2 0BB6 JNZ RNAMC ; CTI Z CI 2128 0B73 3E 20 RNAM1: MVI A,' ' FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-38 2129 0B75 12 STAX D 2130 0B76 7E MOV A,M 2131 0B77 CD 0894 CALL BIG 2132 0B7A CD 0BB1 CALL ANAL1 2133 0B7D CA 0B87 JZ RNAM2-1 2134 0B80 12 STAX D 2135 0B81 23 INX H 2136 0B82 13 INX D 2137 0B83 05 DCR B 2138 0B84 C2 0B73 JNZ RNAM1 ; JE JESTE MISTO 2139 0B87 EB XCHG 2140 0B88 23 RNAM2: INX H 2141 0B89 36 20 MVI M,' ' ; KONEC 2142 0B8B 3E 44 MVI A,LOW @RAM ; VYCISTI BUFFER 2143 0B8D 23 INX H 2144 0B8E 36 00 MVI M,0 2145 0B90 BD CMP L 2146 0B91 C2 0B8D JNZ $-4 2147 0B94 E1 POP H ; ANALYZA POVELU 2148 0B95 7E MOV A,M 2149 0B96 FE 40 CPI '@' ; APPEND ? 2150 0B98 23 INX H 2151 0B99 CA 0BAD JZ RNAM3 2152 0B9C FE 2E CPI '.' ; REWIND 2153 0B9E CA 0BAD JZ RNAM3 2154 0BA1 7E MOV A,M ; VOLBA IOBYTE 2155 0BA2 FE 3A CPI ':' ; DEF. USER 1/2 2156 0BA4 2B DCX H 2157 0BA5 3E 00 MVI A,0 ; NENI 2158 0BA7 C2 0BAD JNZ RNAM3 2159 0BAA 7E MOV A,M ; ZAPIS KOD 2160 0BAB 23 INX H 2161 0BAC 23 INX H 2162 0BAD 32 4102 RNAM3: STA OPT ; <A>.. OPTION 2163 0BB0 C9 RET ; <HL>.. 1. ADRESA JMENA 2164 ; 2165 ; ANALYZA ODDELOVACE 2166 ; 2167 0BB1 FE 22 ANAL1: CPI '"' 2168 0BB3 C3 0542 JMP ANAL2 2169 ;----------------------------------- 2170 0BB6 D5 RNAMC: PUSH D 2171 0BB7 CD 0549 CALL TX 2172 0BBA 0D 0A DB CR,LF 2173 0BBC 20 4E 41 5A DC ' NAZEV:' 2174 0BC0 45 56 BA 2175 0BC3 E1 POP H 2176 0BC4 5D MOV E,L 2177 0BC5 36 20 RNAM6: MVI M,' ' 2178 0BC7 CD 0596 CALL CI 2179 0BCA CD 0894 CALL BIG 2180 0BCD FE 03 CPI ETX 2181 0BCF CA 0203 JZ NEXT 2182 0BD2 FE 0D CPI CR 2183 0BD4 CA 0BFA JZ RNAM9 2184 0BD7 FE 7F CPI DEL FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-39 2185 0BD9 CA 0BE1 JZ RNAM7 2186 0BDC FE 08 CPI 8 2187 0BDE C2 0BF1 JNZ RNAM8 2188 0BE1 7B RNAM7: MOV A,E 2189 0BE2 BD CMP L ; PRVNI 2190 0BE3 CA 0BC5 JZ RNAM6 2191 0BE6 2B DCX H 2192 0BE7 04 INR B 2193 0BE8 CD 0549 CALL TX ; DELETE 2194 0BEB 08 20 88 DB 08,20H,88H 2195 0BEE C3 0BC5 JMP RNAM6 2196 0BF1 77 RNAM8: MOV M,A 2197 0BF2 23 INX H 2198 0BF3 CD 0568 CALL COA 2199 0BF6 05 DCR B 2200 0BF7 C2 0BC5 JNZ RNAM6 2201 0BFA CD 04D4 RNAM9: CALL CRLF 2202 0BFD C3 0B88 JMP RNAM2 2203 ;********** KONEC MONITORU *************** 2204 0C00 FF DB 255 2205 ; 2206 0C01 @@@MON EQU $ 2207 ; 2208 ;********************************************* 2209 ; ROZDELENI S Y S T E M O V E R A M 2210 ;********************************************* 2211 ; 2212 4000 RST1 EQU @R@ ; RST VEKTORY 2213 ;........>>> 2214 ;...... 2215 ;<<... UZIVATELSKY & MONITOR. ZASOBNIK 2216 ; 2217 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2218 .PHASE @R@+6DH 2219 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2220 ; DATA MONITORU 2221 ; 2222 406D MSTAK: DS 2 ; USCHOVA REGISTRU 2223 406F ACSAV: DS 2 2224 4071 BCSAV: DS 2 2225 4073 DESAV: DS 2 2226 4075 HLSAV: DS 2 2227 4077 PCSAV: DS 2 2228 4079 SPSAV: DS 2 2229 ; 2230 407B BRAD: DS 2 2231 407D INSTR: DS 1 2232 407E BRAD2: DS 2 2233 4080 INST2: DS 1 2234 4081 CADR: DS 2 ; ADRESA KURSORU 2235 ;------------------------- 2236 4083 WMKOD: DS 14 ; KOD PRO KURZORY 2237 4091 PREV: DS 21 ; PREVODNI KODY..0 2238 4086 CSKOD@ EQU WMKOD+3 2239 ;------------------------- 2240 ; USER I/O DEVICE FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-40 2241 ; 2242 40A6 CILOC: DS 3 ; 0 2243 40A9 COLOC: DS 3 ; 1 2244 40AC R1LOC: DS 3 ; 2 2245 40AF R2LOC: DS 3 ; 3 2246 40B2 P1LOC: DS 3 ; 4 2247 40B5 P2LOC: DS 3 ; 5 2248 40B8 LILOC: DS 3 ; 6 2249 40BB CSLOC: DS 3 ; 7 2250 40BE DS 1 2251 40BF MEMTOP: DS 2 ; 8 2252 40C1 ERRSW: DS 3 ; 9 2253 40C4 CI@0: DS 3 ; 10 2254 40C7 CO@: DS 3 ; 11 2255 40CA CSTS@: DS 3 ; 12 2256 40CD LO@: DS 3 ; 13 2257 40D0 KOS@: DS 3 ; 14 2258 40D3 RI@: DS 3 ; 15 2259 40D6 PO@: DS 3 ; 16 2260 40D9 CCPM: DS 3 ; 17 2261 40DC GRAF: DS 3 ; 18 2262 40DF RESER: DS 3 ; 19 2263 ;-------------------------- 2264 ; 2265 0015 IONUM EQU ($-CILOC)/3+1 2266 ; 2267 40E2 IOBYT: DS 1 ; RIZENI I/O ZARIZENI 2268 ; 2269 ;****************************** 2270 ;<< EXTERNE OVLADANE FLAGY: >> 2271 ;****************************** 2272 40E3 MODE: DS 1 ; CO-MODE 2273 40E4 @IF1: DS 1 2274 40E5 @IF2: DS 1 2275 40E6 @OF1: DS 1 2276 40E7 @OF2: DS 1 2277 40E8 LINE: DS 1 ; RADEK 2278 40E9 COLUM: DS 1 ; SLOUPEC 2279 40EA RESL: DS 1 ; REZERVACE 2280 40EB RESC: DS 1 ; SLOUPEC 2281 40EC RESL1: DS 1 ; POSLEDNI RADEK 2282 40ED RESC1: DS 1 ; POSLEDNI SLOUPEC 2283 40EE PRER: DS 1 ; UROVEN PRERUSENI 2284 ; 2285 ; PROMENE PRO OPERACNI SYSTEM 2286 ; 2287 40EF CUR@: DS 1 2288 40F0 KEY: DS 1 2289 40F1 CASK: DS 1 2290 40F2 WNDP: DS 6 ; PARAMETRY PRO 2.OKNO 2291 0015 EXSER EQU $-MODE 2292 ; 2293 40F8 CHAR: DS 1 2294 40F9 XFLG: DS 1 2295 ; 2296 ;**************************************************** FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE 1-41 2297 ; DATA SPOLECNA PRO MONITOR A O.S. 2298 ;**************************************************** 2299 ; 2300 ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2301 40FA @BT: DS 1 2302 40FB @PED: DS 1 2303 40FC SADR: DS 2 ; START.ADR 2304 40FE EADR: DS 2 ; KONC.ADR 2305 4100 SUM: DS 1 2306 4101 EXTEXT: DS 1 2307 4102 OPT: DS 1 2308 4103 NAMBUF: DS 65 2309 4144 @RAM EQU $ 2310 ;******************************* 2311 .DEPHASE 2312 ; 2313 END ; [P] FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE S Macros: Symbols: 0C01 @@@MON 40FA @BT 40E4 @IF1 40E5 @IF2 40E6 @OF1 40E7 @OF2 40FB @PED 4000 @R@ 4144 @RAM 406F ACSAV 06E1 ADRCUR 06F3 ADRCX 0001 ALLINT 053D ANAL 053F ANAL0 0BB1 ANAL1 0542 ANAL2 0523 ASHEX 027B ASS0 0287 ASS1 0291 ASS2 02A2 ASS3 0270 ASSIGN 071B ATTR 09F9 B0 09FC B1 0A0F B2 07B5 BAC@1 0008 BACK 07A6 BACK@ 4400 BASIC 09F4 BCMD 4071 BCSAV 018B BEG 0191 BEG0 0055 BEGIO 0007 BELL 0894 BIG 007E BINAR 407B BRAD 407E BRAD2 4081 CADR 40F1 CASK 40D9 CCPM 00E8 CENTR1 00E4 CENTRO 0920 CESKY 0889 CHANGE 40F8 CHAR 09AE CHMODE 0596 CI 09A4 CI2 0841 CI@ 40C4 CI@0 085B CI@1 0995 CI@@ 08C2 CICS 40A6 CILOC 0537 CIMIN 053A CINCR 089F CINIT 0919 CISLO 0599 CITB 0A69 CLOSE 081F CMAX 0824 CMAX0 05F4 CO 40C7 CO@ 0617 CO@@ 062B CO@WR 0568 COA 06CC COADR 069B COEX 0645 COEX0 0656 COEX1 0641 COEXAT 0644 COEXX 018B COLD 060A COLO 40A9 COLOC 40E9 COLUM 04FA COMPR 065A CONTROL 0730 CONX1 0723 CONXT 060D COOUT 0044 COPY 05F7 COTB 000D CR 07BF CR@ 04D4 CRLF 07E9 CSKOD 4086 CSKOD@ 40BB CSLOC 058B CSTS 40CA CSTS@ 0982 CSTS@@ 023C CTBL 090C CTIC1 0910 CTIC2 0900 CTICS 0010 CTRLP 0011 CTRLQ 40EF CUR@ 0067 CURCH 00A0 CURSOR 001B CWR1 001F CWR2 00C9 D100S 00CD D101 00DB D102 00AD D180 050B DADR 05E3 DADR0 05E8 DBYT 09CC DBYTE 093F DEKOD 007F DEL 4073 DESAV 05A1 DEV 05A4 DEV0 0424 DI0 0428 DI1 043C DI2 0463 DI3 044A DI4 044C DI5 0438 DIA 041F DISP 0508 DNADR 05F1 DNIBL 009C DUMMY 40FE EADR 0562 ECHO 0A5A EOF 001E EOL 0796 EOL@ 079E EOL@1 0004 EOT 0C00 EP2 0013 EQUAL 0000 ERAM 0A3B ERROR 40C1 ERRSW 001F ERS 0761 ERS@ 0777 ERS@1 001B ESC 0697 ESC@ 06FC ESC@0 0003 ETX 04AE EX0 04B1 EX1 04BA EX2 04C6 EX3 04E9 EX4 FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE S-1 04DA EX5 06A1 EXFLG 06BD EXFLG1 04A8 EXPR 04A5 EXPR0 04E1 EXPRM 0015 EXSER 4101 EXTEXT 0471 FI1 08BA FIL@ 046A FILL 006A FIND 0331 GO@ 0313 GO@BR 02FA GOTO 40DC GRAF 05BA HBT 0018 HEIGHT 04F5 HILO 4075 HLSAV 0085 HNDIN 0010 HNDMX 001D HOME 07B9 HOME@ 0009 HT 0511 HXANIB 0513 HXASC 01F2 INIC 022F INJM@ 0233 INJMP 4080 INST2 407D INSTR 0348 INTER 40E2 IOBYT 0023 IOCHK 056F IODEF 02A7 IONEW 0015 IONUM 002B IOSET 02AE IOTAB 0A43 J1 0083 JMENO 0A29 JUMP 40F0 KEY 08B5 KODASC 0973 KODUJ 08AD KODWM 0060 KOS 40D0 KOS@ 0065 KOSI 05BE LBT 05F1 LBYTE 001A LCT 000A LF 0733 LF@ 40B8 LILOC 40E8 LINE 0040 LINOF 0827 LMAX 082C LMAX0 05D3 LO 40CD LO@ 00B4 LO@1 00BE LO@2 00B0 LO@@ 09D4 LOADB 0074 LOADCD 05DB LOTB 0018 LREST 01B6 MEM1 01C3 MEM2 051B MEMCK 40BF MEMTOP 000B MINUS 0011 MMODE 0480 MO1 40E3 MODE 0000 MONIT 0479 MOVE 0B56 MREAD 406D MSTAK 4103 NAMBUF 0203 NEXT 06C5 OBNOV 006F OPEN 4102 OPT 40B2 P1LOC 40B5 P2LOC 0018 PA1 001C PA2 0019 PB1 001D PB2 0B2C PBEG 0B49 PBYTE 001A PC1 001E PC2 0A1E PCMD 4077 PCSAV 4400 PEDIT 05C1 PO 40D6 PO@ 3000 PORTI 2400 PORTK 2B00 PORTLC 2C00 PORTLD 05CB POTB 40EE PRER 4091 PREV 0017 PRNT 02C6 QUERY 001B QUES 00FA R100 40AC R1LOC 40AF R2LOC 0500 RADR 0053 RBYT 0051 RBYT0 0B0F RBYTE 0A6E READ@ 0A78 RED1 0A97 RED2 0AB7 RED3 0A7A REDC1 0A82 REDC2 0AAE REDER 40EB RESC 40ED RESC1 40DF RESER 40EA RESL 40EC RESL1 0353 RESTA 040A RGNAM 05AA RI 40D3 RI@ 0018 RIGHT 05B2 RITB 0B73 RNAM1 0B88 RNAM2 0BAD RNAM3 0BC5 RNAM6 0BE1 RNAM7 0BF1 RNAM8 0BFA RNAM9 0BB6 RNAMC 0B62 RNAME 0746 ROLL 074D ROLL1 075B ROLL2 0737 ROLL@ 0801 RRAM 4000 RST1 036E RST10 038A RST20 00CF RSTN 40FC SADR 0079 SAVECD 098B SERIN 05FF SEROUT 0852 SETCUR 097B SMST 017B SMTAB 09CF SPACE 0033 SPCL 4079 SPSAV 048D SU1 049C SU2 001A SUB@ 048A SUBS FIRMWARE SAPI-1 MONITOR V5.0/E MACRO-80 3.44 09-Dec-81 PAGE S-2 4100 SUM 018A SYSEND 016C SYSTAB 082F TAB@ 009D TABHND 07D4 TABZN 07F3 TBWM 0966 TCARKA 0A16 TCMD 0B26 TERM 0558 TEXT 0961 THACEK 4C00 TRACER 3800 TVBEG 3DE7 TVEND 1400 TVROM 0549 TX 0012 UDATA 0A4D UKAZ 0010 UMODE 001A UP 07C6 UP@ 0013 URES 0011 USTAT 09C3 VERIFY 000B VT 0785 VT@ 0A41 VYPSUM 0028 WIDTH 08E5 WMDO 4083 WMKOD 0708 WND@ 070D WND@0 001C WNDCD 0705 WNDCH 40F2 WNDP 0ADC WR1 0AF1 WR2 0AF4 WR3 0AFD WR4 0AD2 WRITE 039B X 03A9 X0 03B1 X1 03B6 X10 03C6 X2 03F1 XDIS1 03E7 XDISP 40F9 XFLG 0222 XY 09B5 Y 09BC Z 0953 ZCARKA 0943 ZHA0 0944 ZHA1 0950 ZHA2 095A ZHACEK 08F9 ZMECS 08F4 ZMENA No Fatal error(s) @@@MON 2206# @BT 1883 2301# @IF1 2273# @IF2 2274# @OF1 2275# @OF2 2276# @PED 1909 2302# @R@ 27# 124 128 132 136 143 150 158 410 463 2212 2218 @RAM 2142 2309# ACSAV 647 724 789 790 2223# ADRCUR 1223 1345# ADRCX 1347 1354# ALLINT 109# 1639 ANAL 910 1008# 2078 ANAL0 1009# ANAL1 2132 2167# ANAL2 1011# 2168 ASHEX 340 899 991# 2059 2066 ASS0 538# 542 ASS1 539 544# ASS2 549# 558 ASS3 551 559# ASSIGN 351 494 533# ATTR 1230 1381# B0 1883# 1905 B1 1884# 1910 B2 1889 1897# BAC@1 1485 1489# BACK 48# 1262 BACK@ 1263 1482# BASIC 31# 1870 1882 BCMD 495 1881# BCSAV 791 792 2224# BEG 386# 496 BEG0 390# 392 BEGIO 61# 378 BELL 52# BIG 821 991 1043 1225 1612 1629# 2131 2179 BINAR 211# 1294 BRAD 631 686 2230# BRAD2 640 2232# CADR 159 430 1215 1237 1320 1576 1596 2234# CASK 1846 2289# CCPM 2260# CENTR1 297# 300 CENTRO 239 293# CESKY 1676 1723# CHANGE 1616 1624# CHAR 1236 1321 2293# CHMODE 508 1833# CI 326 1042 1088# 2178 CI2 1823# 1825 CI@ 1089 1089 1107 1588# 1614 1619 1622 1627 1698 CI@0 407 1599 2253# CI@1 1600# CI@@ 366 1814# 1815 CICS 1608 1663# CILOC 1061 1090 2242# 2265 CIMIN 533 745 835 875 1005# CINCR 346 469 621 722 837 930 1007# CINIT 427 1639# CISLO 1709 1717# 1734 CITB 1089# 1092 CLOSE 1552 1957# CMAX 1390 1411 1472 1488 1561# CMAX0 1564# CO 328 1046 1128 1141 1167# 1858 1993 CO@ 243 1203 2254# CO@@ 367 1207# CO@WR 1221# COA 127 131 135 593 604 769 827 1023 1035 1044# 2198 COADR 1283 1326# 1414 1431 1443 1444 1464 COEX 1252 1283# COEX0 1235# 1316 COEX1 1240 1242# COEXAT 1232# COEXX 1234# 1284 1361 COLD 116 325 385# COLO 1141 1169 1194# COLOC 1170 2243# COLUM 1357 1394 1500 2278# COMPR 704 947# CONTROL 1217 1251# CONX1 1397# CONXT 1232 1265 1384 1389# COOUT 1169 1200# COPY 167# 171 507 COTB 1169# 1172 CR 46# 183 216 450 468 628 635 761 919 1012 1256 2085 2172 2182 CR@ 1257 1397 1490 1499# CRLF 168 337 645 726 918# 964 1963 2018 2201 CSKOD 1529# 1712 CSKOD@ 1603 2238# CSLOC 1085 2249# CSTS 331 833 1082# CSTS@ 1086 2255# CSTS@@ 368 1793# 1814 CTBL 475 494# 520 521 CTIC1 1706 1709# CTIC2 1711# 1735 CTICS 1677 1700# CTRLP 75# 1615 CTRLQ 74# 1617 CUR@ 425 1594 2287# CURCH 71# 424 CURSOR 70# 1241 1590 CWR1 92# CWR2 96# D100S 240 275# D101 277# 279 D102 284# 286 D180 241 251# DADR 341 965# 1944 1994 DADR0 965 1151# DBYT 342 779 784 874 1152 1157# 1856 DBYTE 812 1856# DEKOD 1602 1740# DEL 59# 2184 DESAV 793 794 2225# DEV 1088 1097# 1167 DEV0 1098# 1105 1126 1139 DI0 809# 834 839 DI1 811# 817 DI2 820# 832 DI3 837# DI4 823 826# DI5 825 827# DIA 814 818# DISP 497 806# DNADR 584 810 882 964# 1941 DNIBL 1164# DUMMY 233# 237 369 375 376 EADR 1943 2304# ECHO 545 895 1007 1042# EOF 498 1949# EOL 73# 1260 EOL@ 1261 1430 1435 1448 1469# EOL@1 1474# 1477 EOT 55# EP2 38# 439 441 EQUAL 130# 544 594 620 770 893 ERAM 39# ERROR 339 370 478 543 556 737 892 1886 1891 1918 1927# 1995 2111 ERRSW 432 465 1928 2252# ERS 72# 437 1268 ERS@ 1269 1435# ERS@1 1445# 1451 ESC 51# 1276 ESC@ 1278# ESC@0 1353 1359# ETX 54# 2180 EX0 895# 907 924 EX1 896# 928 EX2 900# EX3 900 909# 932 EX4 898 930# 935 EX5 911 922# EXFLG 350 1292# EXFLG1 1313# 1377 EXPR 338 806 845 858 893# 957 1851 2017 EXPR0 892# 915 EXPRM 178 624 926# EXSER 1297 2291# EXTEXT 2121 2306# FI1 849# 851 FIL@ 1649 1656# FILL 499 844# FIND 203# 1550 1962 GO@ 622 629 637 645# GO@BR 623 630# GOTO 500 620# GRAF 360 2261# HBT 1115# 2099 HEIGHT 66# 1349 1570 HILO 343 813 828 850 865 942# 1871 1934 HLSAV 657 673 680 795 796 2226# HNDIN 220# 501 HNDMX 222 245# HOME 76# 437 1266 HOME@ 1267 1494# HT 47# 1210 2076 HXANIB 970# 1119 1165 HXASC 349 972# INIC 449# 464 1587 INJM@ 477# INJMP 479# 1100 INST2 642 2233# INSTR 633 2231# INTER 357 466 661# 1901 IOBYT 140 148 564 586 1082 1097 1102 1121 1136 2267# IOCHK 140# 332 IODEF 335 1052# IONEW 564# IONUM 1053 2265# IOSET 147# 333 IOTAB 535 572# 585 J1 1931# 1935 JMENO 216# 1864 JUMP 503 1872 1914# KEY 160 1588 1674 1694 1696 1731 2288# KODASC 359 1642 1653# KODUJ 1689 1713 1771# KODWM 358 1647# KOS 193# 504 KOS@ 194 199 204 206 208 210 212 355 1958 2257# KOSI 198# 502 LBT 1119# 2102 LBYTE 1162 1165# LCT 476 520# LF 53# 450 468 919 1258 2087 2172 LF@ 1259 1401# LILOC 1142 2248# LINE 155 1326 1351 1366 1436 1458 1463 1495 1512 2277# LINOF 67# 68 1416 1445 LMAX 1439 1456 1567# LMAX0 1570# LO 170 330 1136# 1169 1194 LO@ 229 232 1141 1202 2256# LO@1 259# 261 LO@2 265# 267 LO@@ 238 255# LOADB 505 1864# LOADCD 207# 1553 1865 LOTB 1141# 1144 LREST 68# MEM1 412# 420 MEM2 413 421# MEMCK 334 981# MEMTOP 422 583 982 2251# MINUS 126# 1005 MMODE 105# 276 MO1 408 862# 866 1660 MODE 1200 1228 1238 1303 1606 1624 1626 1834 2272# 2291 MONIT 37# 115 MOVE 506 857# MREAD 1968 2058 2065 2110# 2113 MSTAK 387 444 459 2222# NAMBUF 2125 2308# NEXT 344 459# 460 474 716 2181 OBNOV 1254 1315 1320# 1360 OPEN 205# 1551 OPT 2162 2307# P1LOC 1128 2246# P2LOC 1129 2247# PA1 93# PA2 97# PB1 94# PB2 98# PBEG 1953 2043 2084# PBYTE 1956 2046 2051 2092 2094 2096 2098# PC1 95# PC2 99# PCMD 509 1877 1907# PCSAV 626 655 713 797 2227# PEDIT 33# 1908 PO 242 329 1121# 2086 2088 2090 PO@ 1128 2259# PORTI 87# PORTK 82# 398 1793 1817 PORTLC 84# PORTLD 85# POTB 1128# 1131 PRER 663 1640 1840 2283# PREV 1653 1741 2237# PRNT 58# 1613 QUERY 510 583# QUES 134# 1927 R100 313# 314 R1LOC 1107 2244# R2LOC 1108 2245# RADR 220 630 639 872 956# 1833 1839 1845 1949 1964 RBYT 176# 752 878 RBYT0 175# RBYTE 1972 1975 1977 1981 1982 1990 1997 1999 2001 2002 2058# READ@ 511 1962# RED1 1966# 1991 RED2 1982# 1989 RED3 1973 1996# REDC1 1968# 1970 REDC2 1971# REDER 1986 1993# 2003 RESC 1437 1482 1499 2280# RESC1 1561 2282# RESER 361 2262# RESL 1406 1494 1505 1621 2279# RESL1 1567 2281# RESTA 462 672# RGNAM 723 789# RI 167 327 1089 1102# 2110 RI@ 1107 2258# RIGHT 49# 1264 RITB 1107# 1110 RNAM1 2128# 2138 RNAM2 2133 2140# 2202 RNAM3 2151 2153 2158 2162# RNAM6 2177# 2190 2195 2200 RNAM7 2185 2188# RNAM8 2187 2196# RNAM9 2183 2201# RNAMC 2127 2170# RNAME 356 2119# ROLL 1415# 1429 ROLL1 1420# 1425 ROLL2 1430# ROLL@ 1406# RRAM 1542# 1544 RST1 2212# RST10 688# 710 RST20 697 706 708# RSTN 28# 634 643 SADR 1866 1940 2303# SAVECD 209# 1554 SERIN 372 1805# 1807 SEROUT 244 373 1185# 1187 SETCUR 1591 1593 1595# SMST 374 1785# SMTAB 371# SPACE 345 591 765 819 966 1575 1857# SPCL 155# 336 SPSAV 445 651 677 798 2228# SU1 873# 883 SU2 877 880# SUB@ 57# SUBS 512 872# SUM 1921 2305# SYSEND 377# 406 SYSTAB 366# 405 TAB@ 1211 1574# 1578 TABHND 226 237# 245 TABZN 1520# 1641 TBWM 1537# 1643 1688 TCARKA 1756 1765# TCMD 513 1903# TERM 2076# TEXT 347 1033# 1037 THACEK 1760 1763# TRACER 32# 1904 TVBEG 41# 69 429 1335 TVEND 69# TVROM 40# 435 TX 353 436 449 467 918 922 1020# 1027 2171 2193 UDATA 103# 281 1189 1808 UKAZ 514 1869 1914 1940# UMODE 106# 283 396 UP 50# 1270 UP@ 1271 1486 1505# URES 107# 395 USTAT 104# 277 284 403 1185 1785 1805 VERIFY 515 1851# VT 56# 1272 VT@ 1273 1401 1456# VYPSUM 1854 1920 1930# WIDTH 65# 68 1355 1564 WMDO 1683# WMKOD 1647 2236# 2238 WND@ 354 1366# WND@0 1368# 1376 WNDCD 60# 1274 WNDCH 1275 1365# WNDP 1365 2290# WR1 2021# 2053 WR2 2032 2035# WR3 2034 2037# WR4 2044# 2048 WRITE 516 2016# X 517 715 722# X0 727# 730 X1 725 731# X10 734# 739 X2 731 741 743# 749 763 XDIS1 740 770# XDISP 727 743 765# XFLG 1221 1278 1359 2294# XY 348 471# Y 518 1839# Z 519 1845# ZCARKA 1725 1755# ZHA0 1742# 1757 1761 ZHA1 1743# 1749 ZHA2 1746 1751# ZHACEK 1727 1759# ZMECS 1666 1669 1671 1696# ZMENA 1673 1694# 65# WNDP 1365 2290# WR1 2021# 2053 WR2 2032 2035# WR3 2034 2037# WR4 2044# 2048 WRITE 516 2016#
ÚVOD | Novinky | 8 Bitů | Příslušenství | Drobnosti | TTL | Kontakt
SAPI-1 | ONDRA | PMI-80 | PMD-85 | klony PMD-85 | klony SM50/40 | PETR | PLAN-80A | IQ151 | TNS | FK-1 | HVĚZDA | SP 830 | PCS 1-QR6000
ZPS | Technické prostředky | Programové vybavení | Dokumentace