Ú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


ZPS | Technické prostředky | Programové vybavení | Dokumentace


8 bity / SAPI-1 / Programové vybavení / V4.x / LST MONITOR


Listing programu MONITOR V4.1F, doplněn o handler snímače FS1503 pro DPP-1
Upraveno dle "MODIFIKACE MONITORU "M4F" PRO KLAVESNICI C259.11" pravděpodobně nebude fungovat podmíněny překlad pro CP/M


'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1


    1	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2	                                TITLE 'MONITOR SAPI-1  V4.1F'
    3	                                ;       30.7.1985       (P+S)
    4	                                ; MODIFIKACE MONITORU "M4F" PRO KLAVESNICI C259.11
    5	                                ;       15.7.1985
    6	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    7	                                ;
    8	                                ; DOPLNEN HANDLER SNIMACE FS1503 PRO DPP-1
    9	                                ;
   10	                                ;  VOLBA SYSTEMU
   11	  FFFF                          SP1     EQU     -1      ; -1 YES
   12	  0000                          SP1A    EQU     0       ;FOR CP/M SYSTEM MONITOR
   13	  0000                          CPM     EQU     00      ;JPR-1 EPROM VERSION
   14	                                ;
   15	                                ;
   16	                                ;       *** DEFINOVANI PAMETOVEHO PROSTORU *
   17	                                ;
   18	  0100                          MONIT   EQU     100H    ; START MONITORU
   19	                                ;  NASTAVENI PAMETI R A M
   20	                                
   21	  4000                          RAM     EQU     4000H   ;START RAM
   22	                                        IF      CPM
   23	                                ERAM    EQU     9FFFH   ;TOP RAM
   24	                                TVBEG   EQU     0E800H  ;TV-RAM
   25	                                EP2     EQU     800H+200H       ; SECOND EPROM
   26	                                        ELSE
   27	  FFFF                          ERAM    EQU     0FFFFH  ;RAM-1 48K
   28	  3800                          TVBEG   EQU     3800H   ;TV-RAM
   29	  0800                          EP2     EQU     800H    ; SECOND EPROM
   30	                                        ENDIF
   31	  4000                          @R@     EQU     4000H   ;RESTART VECTOR
   32	  00CF                          RSTN    EQU     0CFH    ; RST 1
   33	                                
   34	                                ; GLOBAL CONSTANTS
   35	                                
   36	  000D                          CR      EQU     0DH     ; CARRIAGE RETURN
   37	  0009                          HT      EQU     9       ; TAB
   38	  0008                          BACK    EQU     8       ; BACK SPACE
   39	  0007                          BELL    EQU     7       ; BELL
   40	  000A                          LF      EQU     0AH     ; LINE FEED
   41	  0003                          ETX     EQU     03H     ; BREAK CHAR.(CONTROL C)
   42	  0017                          CTRLW   EQU     17H     ; BREAK USER
   43	  0055                          BEGIO   EQU     55H     ; START VALUE FOR I/O BYTE
   44	                                
   45	                                
   46	                                ; I/O STATUS BYTE MASKS AND VALUES
   47	                                
   48	  00FC                          CMSK    EQU     11111100B       ; MASK FOR CONZOLE
   49	  00F3                          RMSK    EQU     11110011B       ; MASK FOR READER
   50	  00CF                          PMSK    EQU     11001111B       ; MASK FOR PUNCH
   51	  003F                          LMSK    EQU     00111111B       ; MASK FOR LIST
   52	                                
   53	                                
   54	  0000                          CTTY    EQU     00000000B       ; CONZOLE=TTY
   55	  0001                          CCRT    EQU     00000001B       ; CONZOLE=CRT
   56	  0002                          BATCH   EQU     00000010B       ; INPUT=READER,OUTPUT=LIST
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-1


   57	  0003                          CUSE    EQU     00000011B       ; USER REFINED CONZOLE
   58	                                
   59	                                
   60	  0000                          RTTY    EQU     00000000B       ; READER=TTY
   61	  0004                          RPTR    EQU     00000100B       ; READER=PTR
   62	  0008                          RUSE1   EQU     00001000B       ; USER DEFINED READER 1
   63	  000C                          RUSE2   EQU     00001100B       ; USER DEFINED READER 2
   64	                                
   65	                                
   66	  0000                          PTTY    EQU     00000000B       ; PUNCH=TTY
   67	  0010                          PPTR    EQU     00010000B       ; PUNCH=PTR
   68	  0020                          PUSE1   EQU     00100000B       ; USER DEFINED PUNCH 1
   69	  0030                          PUSE2   EQU     00110000B       ; USER DEFINED PUNCH 2
   70	                                
   71	                                
   72	  0000                          LTTY    EQU     00000000B       ; LIST=TTY
   73	  0040                          LCRT    EQU     01000000B       ; LIST=CRT
   74	  0080                          LLPT    EQU     10000000B       ; LIST=LPT
   75	  00C0                          LUSE    EQU     11000000B       ; USER DEFINED LIST
   76	                                ;
   77	                                ;       SEPI CONTROL I/O
   78	                                ;
   79	  0012                          UDATA   EQU     12H
   80	  0011                          USTAT   EQU     11H
   81	  0011                          MMODE   EQU     11H
   82	  0010                          UMODE   EQU     10H
   83	  0013                          URES    EQU     13H
   84	  0002                          ALLINT  EQU     02H
   85	                                
   86	  0000'                                 ASEG
   87	                                        IF      SP1
   88	                                ;
   89	                                ;       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   90	                                ;       RESTARTS & CP/M ENTRY
   91	                                ;
   92	                                ;       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   93	                                
   94	                                        IF      CPM
   95	                                        ORG     100H
   96	                                        ENDIF
   97	                                        IF      NOT CPM
   98	                                        ORG     0       ; BEGIN MEMORY
   99	                                        ENDIF
  100	  0000    C3 04CF                       JMP     COLD    ; COLD START
  101	  0003    55                            DB      55H     ;INTEL IOBYT
  102	  0004    40                            DB      40H     ;V 4.0
  103	  0005    C3 003B                       JMP     CCPM
  104	  0008    C3 4000                       JMP     @R@
  105	                                ;
  106	  000B    3E 2D                 MINUS:  MVI     A,'-'
  107	  000D    C3 04B8                       JMP     COA
  108	  0010    C3 4003                       JMP     @R@+3
  109	                                ;
  110	  0013    3E 3D                 EQUAL:  MVI     A,'='
  111	  0015    C3 04B8                       JMP     COA
  112	  0018    C3 4006                       JMP     @R@+6
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-2


  113	                                ;
  114	  001B    3E 3F                 QUES:   MVI     A,'?'
  115	  001D    C3 04B8                       JMP     COA
  116	  0020    C3 4009                       JMP     @R@+9
  117	                                ;
  118	  0023    3A 40ED               IOCHK:  LDA     IOBYT
  119	  0026    C9                            RET
  120	  0027    50                            DB      'P'
  121	  0028    C3 400C                       JMP     @R@+12
  122	                                ;
  123	  002B    79                    IOSET:  MOV     A,C
  124	  002C    32 40ED                       STA     IOBYT
  125	  002F    C9                            RET
  126	  0030    C3 400F                       JMP     @R@+15
  127	                                ;
  128	  0033    2A 40A5               SPCL:   LHLD    CADR
  129	  0036    7E                            MOV     A,M
  130	  0037    C9                            RET             ; FOR PEDIT
  131	  0038    C3 4012                       JMP     @R@+18
  132	                                ;
  133	  003B    79                    CCPM:   MOV     A,C     ;CONTINUE ENTRY TO CPM
  134	  003C    4B                            MOV     C,E     ; INTEL
  135	  003D    D5                            PUSH    D       ;DE->HL
  136	  003E    21 0046                       LXI     H,TCPM
  137	  0041    06 0B                         MVI     B,11    ; MAX CPM ENTRY
  138	  0043    C3 0554                       JMP     INJM@
  139	                                ;-------------------------------
  140	  0046    04CF 005E             TCPM:   DW      COLD,CI
  141	  004A    05E4 02E9                     DW      CO,RI
  142	  004E    02F5 0301                     DW      PO,LO
  143	  0052    028B 0023                     DW      CICO,IOCHK
  144	  0056    002B 0162                     DW      IOSET,ERROR
  145	  005A    0162 01C6                     DW      ERROR,CSTS
  146	                                
  147	  005E    E5                    CI:     PUSH    H
  148	  005F    21 00D3                       LXI     H,CITB
  149	  0062    C3 05E8                       JMP     IOCOM-3
  150	                                ;
  151	                                
  152	  0065    41 51 31              TABCOD: DB      'AQ1'
  153	  0068    1B 0D                         DB      1BH,0DH         ; ESC, CR
  154	  006A    50 30                         DB      'P0'
  155	                                
  156	  006C    5A 53 57 32                   DB      'ZSW2 LO9'
  157	  0070    20 4C 4F 39           
  158	                                
  159	  0074    58 44 45 33                   DB      'XDE3MKI8'
  160	  0078    4D 4B 49 38           
  161	                                
  162	  007C    43 46 52 34                   DB      'CFR4NJU7'
  163	  0080    4E 4A 55 37           
  164	                                
  165	  0084    56 47 54 35                   DB      'VGT5BHY6'
  166	  0088    42 48 59 36           
  167	                                
  168	                                ; POKRACOVANI TABULKY - SHIFT
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-3


  169	  008C    10 11                         DB      10H,11H         ; ^A ^Q
  170	  008E    21                            DB      '!'
  171	  008F    0A 0D                         DB      0AH,0DH
  172	  0091    7F                            DB      7FH
  173	  0092    29                            DB      ')'
  174	                                
  175	  0093    5A                            DB      'Z'
  176	  0094    13 17                         DB      13H,17H         ; ^S, ^W
  177	  0096    3F                            DB      '?'
  178	  0097    09                            DB      9               ; TABELATOR/SHIFT SPC
  179	  0098    3D 23 28                      DB      '=#('
  180	                                
  181	  009B    03                            DB      3               ; EXT/SHIFT X
  182	  009C    26 45 22 2E                   DB      '&E".*@>'
  183	  00A0    2A 40 3E              
  184	                                
  185	  00A3    5B 5C 25 24                   DB      '[\%$,-:<'
  186	  00A7    2C 2D 3A 3C           
  187	                                
  188	  00AB    5D 5F                         DB      ']_'
  189	  00AD    08                            DB      8               ; BACKSPACE
  190	  00AE    5E                            DB      '^'
  191	  00AF    3B 2B 2F                      DB      ';+/'
  192	  00B2    27                            DB      27H             ; ' UVOZOVKA
  193	                                
  194	                                ; I/O DEVICE TABLE
  195	                                ;
  196	  00B3    43 03                 IOTAB:  DB      'C',03H ;CONSOLE (LOCAL, MASK)
  197	  00B5    54 43 42 31                   DB      'TCB1'  ;PHYSICAL
  198	  00B9    52 0C                         DB      'R',0CH ;READER
  199	  00BB    54 50 31 32                   DB      'TP12'
  200	  00BF    50 30                         DB      'P',30H ;PUNCHER
  201	  00C1    54 50 31 32                   DB      'TP12'
  202	  00C5    4C C0                         DB      'L',0C0H        ;LIST
  203	  00C7    54 43 4C 31                   DB      'TCL1'
  204	                                
  205	                                ;  ASSING TABLE FOR LOG. DEVICE
  206	                                ;
  207	  00CB    030D 06A4             COTB:   DW      COLO,CRT,LO,COLOC
  208	  00CF    0301 40CE             
  209	  00D3    0265 0265             CITB:   DW      KBR,KBR,RI,CILOC
  210	  00D7    02E9 40CB             
  211	  00DB    030D 05E4             LOTB:   DW      COLO,CO,LPR,LILOC
  212	  00DF    07B9 40DD             
  213	  00E3    0265 07E8             RITB:   DW      KBR,RDR,R1LOC,R2LOC
  214	  00E7    40D1 40D4             
  215	  00EB    05E4 07D3             POTB:   DW      CO,PUN,P1LOC,P2LOC
  216	  00EF    40D7 40DA             
  217	                                ;
  218	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  219	  00F3    0D 0A                 VERS:   DB      CR,LF
  220	  00F5    53 41 50 49                   DB      'SAPI-1 V4.1'
  221	  00F9    2D 31 20 56           
  222	  00FD    34 2E 31              
  223	  000D                          LVER    EQU     $-VERS  ; DELKA OHLASENI
  224	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-4


  225	                                
  226	                                ;***************************************************
  227	                                        IF      CPM
  228	                                        ORG     MONIT+100H
  229	                                        ELSE
  230	                                        ORG     MONIT   ; *** ZACATEK MONITORU ***
  231	                                        ENDIF
  232	                                ;***************************************************
  233	                                
  234	                                ; TABLE OF EXTERNALLY REFERENCED  ROUTINES
  235	                                
  236	  0100    C3 04CF                       JMP     COLD    ; START MONITORU
  237	  0103    C3 005E                       JMP     CI      ; CONZOLE INPUT <A>
  238	  0106    C3 02E9                       JMP     RI      ; READER INPUT <A>, CY=1 ERROR
  239	  0109    C3 05E4                       JMP     CO      ; CONZOLE OUTPUT <C>
  240	  010C    C3 02F5                       JMP     PO      ; PUNCH OUTPUT <C>
  241	  010F    C3 0301                       JMP     LO      ; LIST OUTPUT <C>
  242	  0112    C3 01C6                       JMP     CSTS    ; CONZOLE INPUT STATUS
  243	  0115    C3 0023                       JMP     IOCHK   ; I/O BYTE CHEK <A>
  244	  0118    C3 002B                       JMP     IOSET   ; I/O BYTE SET <C>
  245	  011B    C3 065F                       JMP     MEMCK   ; SIZE MEMORY CHECK
  246	  011E    C3 0604                       JMP     IODEF   ; DEFINE USER I/O ENTRY POINTS
  247	  0121    C3 0033                       JMP     SPCL    ; I/O CONTROL SPECIAL
  248	  0124    C3 05DD                       JMP     CRLF    ; NOVY RADEK
  249	  0127    C3 05B1                       JMP     EXPR    ; SKLADANI ADRES (N=POCET <C>, SP)
  250	  012A    C3 0162                       JMP     ERROR   ; HLASENI CHYBY
  251	  012D    C3 0667                       JMP     ASHEX   ; PREVOD ASCII->HEX,CHYBA-CARRY
  252	  0130    C3 0646                       JMP     DADR    ; ZOBRAZENI ADRESY <HL>
  253	  0133    C3 0651                       JMP     DBYT    ; ZOBRAZENI ZNAKU <A> NA 'CO'
  254	  0136    C3 0624                       JMP     HILO    ; HL+1,SROVNANI S DE,(HL=0)
  255	  0139    C3 0526                       JMP     NEXT    ; PREDANI MONITORU
  256	  013C    C3 0697                       JMP     SPACE   ; MEZERA NA 'CO'
  257	  013F    C3 067B                       JMP     CINCR   ; ECHO+ANALIZA
  258	  0142    C3 068A                       JMP     TEXT    ; VYPIS TEXTU <HL=ADRESA>,<D=DELKA>
  259	  0145    C3 0547                       JMP     XY      ; PROVEDENI POVELU DLE <A>
  260	  0148    C3 05A6                       JMP     HXASC   ; PREVOD HEX->ASCII DO <A>,<C>
  261	  014B    C3 04BF                       JMP     EXFLG   ; EXTERNAL CONTROL FLAGS
  262	                                ;
  263	                                ;"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
  264	                                ;  ASSIGN I/O DEVICE MODUL
  265	                                ;
  266	  014E    CD 0678               ASIGN:  CALL    CIMIN   ;NAME
  267	                                ; <A>..NAME (EXTERN CALLS)
  268	  0151    21 00B3                       LXI     H,IOTAB ;TABLE
  269	  0154    0E 04                         MVI     C,4     ;COUNTER
  270	  0156    11 0006                       LXI     D,6     ;OFFSET
  271	  0159    BE                    ASS0:   CMP     M       ;IS IT?
  272	  015A    CA 016B                       JZ      ASS1    ;+
  273	  015D    19                            DAD     D       ;ADR
  274	  015E    0D                            DCR     C       ;ALL ?
  275	  015F    C2 0159                       JNZ     ASS0    ;-
  276	                                ;
  277	                                ; ERROR MESSAGE
  278	                                ;
  279	  0162    CD 001B               ERROR:  CALL    QUES
  280	  0165    CD 0218                       CALL    BEEP
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-5


  281	  0168    C3 051E                       JMP     INIC    ;START
  282	                                ;
  283	  016B    CD 0013               ASS1:   CALL    EQUAL
  284	  016E    CD 04B5                       CALL    ECHO    ;PHIS.D
  285	  0171    23                            INX     H
  286	  0172    46                            MOV     B,M     ;MASK
  287	  0173    0E 00                         MVI     C,0     ;IOBYT
  288	  0175    23                    ASS2:   INX     H
  289	  0176    BE                            CMP     M       ;IS IT?
  290	  0177    CA 0186                       JZ      ASS3    ;+
  291	  017A    F5                            PUSH    PSW
  292	  017B    3E 55                         MVI     A,55H   ;OFFSET
  293	  017D    81                            ADD     C
  294	  017E    4F                            MOV     C,A
  295	  017F    DA 0162                       JC      ERROR   ;NO #
  296	  0182    F1                            POP     PSW
  297	  0183    C3 0175                       JMP     ASS2    ;NEXT
  298	  0186    79                    ASS3:   MOV     A,C     ;COMPUTE IOBYT
  299	  0187    A0                            ANA     B       ;MASK
  300	  0188    4F                            MOV     C,A     ;SAVE
  301	  0189    78                            MOV     A,B
  302	  018A    2F                            CMA             ;NEG
  303	  018B    21 40ED               IONEW:  LXI     H,IOBYT
  304	  018E    A6                            ANA     M
  305	  018F    B1                            ORA     C
  306	  0190    77                            MOV     M,A
  307	  0191    C9                            RET
  308	                                ;
  309	                                ; QUERY DEVICE
  310	                                ;
  311	  0192    21 00B3               QUERY:  LXI     H,IOTAB ;TABLE
  312	  0195    3A 40ED                       LDA     IOBYT   ; READ
  313	  0198    47                            MOV     B,A     ;SAVE
  314	  0199    CD 019C                       CALL    $+3
  315	  019C    CD 019F                       CALL    $+3     ;DO IT
  316	                                ; DISPLAY ASSIGN I/O
  317	  019F    CD 0697                       CALL    SPACE
  318	  01A2    7E                            MOV     A,M     ; READ LOGICAL NAME
  319	  01A3    CD 04B8                       CALL    COA
  320	  01A6    CD 0013                       CALL    EQUAL
  321	  01A9    E5                            PUSH    H       ;SAVE ADR
  322	  01AA    23                            INX     H
  323	  01AB    23                            INX     H       ;ADR
  324	  01AC    78                            MOV     A,B
  325	  01AD    E6 03                         ANI     3
  326	  01AF    5F                            MOV     E,A
  327	  01B0    16 00                         MVI     D,0
  328	  01B2    19                            DAD     D       ;PHYSICAL DEVICE ADR
  329	  01B3    7E                            MOV     A,M
  330	  01B4    CD 04B8                       CALL    COA
  331	  01B7    78                            MOV     A,B
  332	  01B8    0F                            RRC
  333	  01B9    0F                            RRC             ;ROTATE IOBYT
  334	  01BA    47                            MOV     B,A
  335	  01BB    E1                            POP     H
  336	  01BC    1E 06                         MVI     E,6     ;OFFSET
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-6


  337	  01BE    19                            DAD     D
  338	  01BF    C9                            RET             ;HL=NEXT ADR
  339	                                ;
  340	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%
  341	                                ; I/O DEVICE CONTROL
  342	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%
  343	                                
  344	  01C0    B7                    CSTS1:  ORA     A
  345	  01C1    FA 40E0                       JM      CSLOC   ;USER CSTS
  346	  01C4    AF                            XRA     A
  347	  01C5    C9                            RET             ;BATCH-NOT READY
  348	                                ;
  349	  01C6    3A 40ED               CSTS:   LDA     IOBYT
  350	  01C9    1F                            RAR
  351	  01CA    1F                            RAR
  352	  01CB    DA 01C0                       JC      CSTS1
  353	                                        IF      NOT CPM
  354	                                
  355	                                ; STATUS KLAVESNICE
  356	                                
  357	  01CE    3A 2400               KBSTS:  LDA     2400H   ; STATUS SC/
  358	  01D1    0F                            RRC
  359	  01D2    3E FF                         MVI     A,0FFH
  360	  01D4    CE 00                         ACI     0
  361	  01D6    C9                            RET
  362	  01D7    FFFF FFFF                     DW      -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
  363	  01DB    FFFF FFFF             
  364	  01DF    FFFF FFFF             
  365	  01E3    FFFF FFFF             
  366	  01E7    FFFF FFFF             
  367	  01EB    FFFF FFFF                     DW      -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
  368	  01EF    FFFF FFFF             
  369	  01F3    FFFF FFFF             
  370	  01F7    FFFF FFFF             
  371	  01FB    FFFF FFFF             
  372	  01FF    FFFF FFFF                     DW      -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
  373	  0203    FFFF FFFF             
  374	  0207    FFFF FFFF             
  375	  020B    FFFF FFFF             
  376	  020F    FFFF FFFF             
  377	  0213    FF FF FF FF                   DB      -1,-1,-1,-1,-1
  378	  0217    FF                    
  379	                                ;
  380	                                        ELSE
  381	                                        PUSH    B
  382	                                        PUSH    D
  383	                                        PUSH    H
  384	                                        MVI     C,6
  385	                                        MVI     E,0FFH
  386	                                        CALL    5
  387	                                        CPI     CTRLW
  388	                                        CZ      RESTA   ; BREAK
  389	                                        ORA     A
  390	                                        POP     H
  391	                                        POP     D
  392	                                        POP     B
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-7


  393	                                        RET
  394	                                ;
  395	                                        ENDIF
  396	                                
  397	  0218    C5                    BEEP:   PUSH    B
  398	  0219    0E 28                         MVI     C,40
  399	  021B    CD 0224                       CALL    CLICK
  400	  021E    0D                            DCR     C
  401	  021F    C2 021B                       JNZ     $-4
  402	  0222    C1                            POP     B
  403	  0223    C9                            RET
  404	                                
  405	  0224    26 24                 CLICK:  MVI     H,24H   ; PORT0
  406	  0226    36 00                         MVI     M,0     ; REPRO ON
  407	  0228    05                    CLCK1:  DCR     B
  408	  0229    C2 0228                       JNZ     CLCK1
  409	  022C    36 02                         MVI     M,2     ; REPRO OFF
  410	  022E    05                    CLCK2:  DCR     B
  411	  022F    C2 022E                       JNZ     CLCK2
  412	  0232    C9                            RET
  413	                                
  414	                                
  415	                                ; PROHLEDAVANI KLAVESNICE ANK-1
  416	                                ;===============================
  417	                                ; KONSTANTNI DOBA PROHLEDAVANI 0.816 MS/488NS.
  418	                                ; PLATNA POSLEDNI NALEZENA KLAVESA.
  419	                                ; B...CITAC DO 8, C... LINEARNI KOD
  420	                                ; D...SHIFT FLAG, SOUCASNE MASKA LED.
  421	                                ; E...CITAC LINEARNIHO KODU KLAVES:
  422	                                ;     A-Q-1-LF-CR-P-0 Z-S-W-SP-L-O-9..
  423	                                ; H...UKAZATEL NA PORT0 JPR-1
  424	                                ; L...VYBER MATICE VODOROVNE
  425	                                
  426	                                ; PO PROVEDENI KOD V 'A', 'C' REGISTRU.
  427	                                ; PRIZNAK 'SHIFT' V 'D' REGISTRU.
  428	                                ; FLAG 'SIGN' SIGNALIZUJE STISKNUTI-
  429	                                ;  PLUS...ANO, MINUS...NE
  430	                                
  431	  0233    E5                    KEYIN:  PUSH    H       ; V2.2  20.1.85
  432	  0234    11 1FFF                       LXI     D,1FFFH ; MASKA&CITAC
  433	  0237    0E 00                         MVI     C,0
  434	  0239    26 24                         MVI     H,24H   ; PORT0
  435	  023B    3E EF                         MVI     A,11101111B
  436	  023D    6F                    NXLIN:  MOV     L,A
  437	  023E    A2                            ANA     D
  438	  023F    77                            MOV     M,A
  439	  0240    06 08                         MVI     B,8     ; CITAC BITU
  440	  0242    7E                            MOV     A,M
  441	  0243    0F                    KEY:    RRC
  442	  0244    1C                            INR     E       ; NACTI KOD
  443	  0245    DA 024E                       JC      NXKEY   ; SKOC, KDYZ NIC
  444	  0248    4B                            MOV     C,E     ; KOD KLAVESY
  445	  0249    C2 024E                       JNZ     NXKEY   ; SHIFT ?
  446	  024C    16 3F                         MVI     D,3FH   ; ANO NASTAV MASKU
  447	  024E    05                    NXKEY:  DCR     B
  448	  024F    C2 0243                       JNZ     KEY
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-8


  449	  0252    7D                            MOV     A,L
  450	  0253    0F                            RRC
  451	  0254    DA 023D                       JC      NXLIN
  452	  0257    0D                            DCR     C       ; NASTAV 'SIGN'
  453	  0258    E1                            POP     H
  454	  0259    F8                            RM              ; STISKNUTA?
  455	  025A    7A                            MOV     A,D     ; SHIFT?
  456	  025B    E6 20                         ANI     20H
  457	  025D    79                            MOV     A,C
  458	  025E    C8                            RZ              ; NE,NAVRAT
  459	  025F    83                            ADD     E       ; ANO, +39
  460	  0260    4F                            MOV     C,A
  461	  0261    C9                            RET
  462	                                
  463	                                        ENDIF
  464	                                ;
  465	                                ;
  466	                                ;
  467	  0262    CD 0313                       CALL    RESTA   ;^W
  468	  0265    CD 0294               KBR:    CALL    KBRD
  469	  0268    FE 17                         CPI     CTRLW
  470	  026A    CA 0262                       JZ      KBR-3   ; SIMUL. INTERRUPT
  471	  026D    FE 11                         CPI     CTRLQ
  472	  026F    C0                            RNZ
  473	                                
  474	  0270    C5                            PUSH    B       ;WINDOW
  475	  0271    D5                            PUSH    D
  476	  0272    E5                            PUSH    H
  477	  0273    06 00                         MVI     B,0
  478	  0275    CD 07A0                       CALL    UCMD    ;CLEAR
  479	  0278    CD 0294                       CALL    KBRD    ;NUMBER OF RESEVED LINES
  480	  027B    E6 0F                         ANI     0FH     ;MAX 15
  481	  027D    32 40EA                       STA     RESL
  482	  0280    06 80                         MVI     B,80H   ;SET NEW LINE
  483	  0282    CD 07A0                       CALL    UCMD
  484	  0285    E1                            POP     H
  485	  0286    D1                            POP     D
  486	  0287    C1                            POP     B
  487	  0288    C3 0265                       JMP     KBR     ;NEW CHAR.
  488	                                ;
  489	  028B    79                    CICO:   MOV     A,C     ; DIRECT CRT/KBRD
  490	  028C    3C                            INR     A
  491	  028D    C2 06A4                       JNZ     CRT     ; ONLY OUTPUT
  492	  0290    CD 01CE                       CALL    KBSTS
  493	  0293    C8                            RZ
  494	                                
  495	  0294    E5                    KBRD:   PUSH    H
  496	                                ;
  497	                                        IF      CPM
  498	                                KBR1    MVI     E,0FFH
  499	                                        MVI     C,6
  500	                                        CALL    5
  501	                                        ANI     7FH
  502	                                        JNZ     KBR1    ;WAIT
  503	                                        ELSE
  504	  0295    26 27                         MVI     H,27H
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-9


  505	  0297    36 02                         MVI     M,2     ; AC/=0  ZVUK/=1
  506	  0299    7E                    KBRD1:  MOV     A,M     ; SC/ = 00
  507	  029A    0F                            RRC
  508	  029B    DA 0299                       JC      KBRD1
  509	  029E    24                            INR     H
  510	  029F    7E                            MOV     A,M     ; KOD ZNAKU
  511	  02A0    2F                            CMA
  512	  02A1    E6 7F                         ANI     7FH
  513	  02A3    6F                            MOV     L,A
  514	  02A4    25                            DCR     H
  515	  02A5    36 03                         MVI     M,3     ; AC/=1
  516	  02A7    7E                    KBRD2:  MOV     A,M
  517	  02A8    0F                            RRC
  518	  02A9    D2 02A7                       JNC     KBRD2
  519	  02AC    36 02                         MVI     M,2     ; AC/=0
  520	  02AE    3A 40E3                       LDA     MODE
  521	  02B1    E6 04                         ANI     4       ; LOWER OPTION?
  522	  02B3    7D                            MOV     A,L
  523	  02B4    E1                            POP     H
  524	  02B5    C2 02DB                       JNZ     CNTRP   ; IF LOWER
  525	  02B8    FE 61                         CPI     61H     ; <'a'
  526	  02BA    DA 02DB                       JC      CNTRP
  527	  02BD    FE 7B                         CPI     7BH     ; >'z'
  528	  02BF    D2 02DB                       JNC     CNTRP
  529	  02C2    D6 20                         SUI     20H     ; LOWER=>UPPER
  530	  02C4    C3 02DB                       JMP     CNTRP
  531	  02C7    FFFF FFFF                     DW      -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
  532	  02CB    FFFF FFFF             
  533	  02CF    FFFF FFFF             
  534	  02D3    FFFF FFFF             
  535	  02D7    FFFF FFFF             
  536	                                
  537	                                        ENDIF
  538	                                ;
  539	  02DB    FE 10                 CNTRP:  CPI     CTRLP   ;^P
  540	  02DD    C0                            RNZ
  541	  02DE    3A 40E3                       LDA     MODE
  542	  02E1    EE 01                         XRI     1
  543	  02E3    32 40E3                       STA     MODE    ; LPR ON/OFF
  544	  02E6    C3 0294                       JMP     KBRD
  545	                                ;
  546	                                ;
  547	  02E9    E5                    RI:     PUSH    H
  548	  02EA    21 00E3                       LXI     H,RITB
  549	  02ED    3A 40ED                       LDA     IOBYT
  550	  02F0    0F                    RICOM:  RRC
  551	  02F1    0F                            RRC
  552	  02F2    C3 05EB                       JMP     IOCOM
  553	                                ;
  554	  02F5    E5                    PO:     PUSH    H
  555	  02F6    21 00EB                       LXI     H,POTB
  556	  02F9    3A 40ED                       LDA     IOBYT
  557	  02FC    0F                            RRC
  558	  02FD    0F                            RRC
  559	  02FE    C3 02F0                       JMP     RICOM
  560	                                ;
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-10


  561	  0301    E5                    LO:     PUSH    H
  562	  0302    21 00DB                       LXI     H,LOTB
  563	  0305    3A 40ED                       LDA     IOBYT
  564	  0308    07                            RLC
  565	  0309    07                            RLC
  566	  030A    C3 05EB                       JMP     IOCOM
  567	                                ;----------------------------
  568	                                ;
  569	  030D    CD 07B9               COLO:   CALL    LPR
  570	  0310    C3 06A4                       JMP     CRT
  571	                                ;----------------------------
  572	                                ;
  573	                                ;
  574	                                ; RUN AND BREAK MODUL:
  575	                                ;
  576	  0313    F3                    RESTA:  DI              ;SAVE ALL
  577	  0314    22 4098                       SHLD    HLSAV
  578	  0317    F5                            PUSH    PSW
  579	  0318    21 0002                       LXI     H,2     ;OFSSET
  580	  031B    39                            DAD     SP
  581	  031C    22 409C                       SHLD    SPSAV
  582	  031F    F1                            POP     PSW
  583	  0320    E1                            POP     H       ;PC
  584	  0321    31 4098                       LXI     SP,HLSAV
  585	  0324    D5                            PUSH    D
  586	  0325    C5                            PUSH    B
  587	  0326    F5                            PUSH    PSW
  588	  0327    EB                            XCHG
  589	  0328    1B                            DCX     D       ; PC-1
  590	  0329    21 409E                       LXI     H,BRAD  ;BREAK ?
  591	  032C    0E 02                         MVI     C,2     ; TWO BREAKS
  592	  032E    C5                    RST10:  PUSH    B       ;COUNTER
  593	  032F    4E                            MOV     C,M
  594	  0330    36 00                         MVI     M,0
  595	  0332    23                            INX     H
  596	  0333    46                            MOV     B,M
  597	  0334    36 00                         MVI     M,0
  598	  0336    23                            INX     H
  599	  0337    79                            MOV     A,C
  600	  0338    B0                            ORA     B       ;0 ?
  601	  0339    CA 034A                       JZ      RST20   ;NO BREAK
  602	  033C    7E                            MOV     A,M     ;RESTORE INSTR
  603	  033D    02                            STAX    B
  604	  033E    23                            INX     H
  605	  033F    E5                            PUSH    H
  606	  0340    60                            MOV     H,B
  607	  0341    69                            MOV     L,C     ;BREAK/INTR ?
  608	  0342    CD 0629                       CALL    COMPR
  609	  0345    E1                            POP     H
  610	  0346    C2 034A                       JNZ     RST20
  611	  0349    1B                            DCX     D       ;PC-1
  612	  034A    C1                    RST20:  POP     B
  613	  034B    0D                            DCR     C
  614	  034C    C2 032E                       JNZ     RST10
  615	  034F    EB                            XCHG
  616	  0350    23                            INX     H       ;RESTORE PC
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-11


  617	  0351    22 409A                       SHLD    PCSAV
  618	  0354    37                            STC
  619	  0355    CD 03AB                       CALL    X+3     ;DISPLAY ALL REGISTERS
  620	  0358    C3 0526                       JMP     NEXT    ;WAIT FOR COMMAND
  621	                                ;
  622	                                ; GO TO COMMAND
  623	                                ;
  624	  035B    CD 0013               GOTO:   CALL    EQUAL
  625	  035E    CD 067B                       CALL    CINCR   ;COMMAND
  626	  0361    DA 0392                       JC      GO@     ;IF CR THEN GOTO FROM OLD PC
  627	  0364    CA 0374                       JZ      GO@BR   ; OLD PC AND BREAK
  628	  0367    CD 05F0                       CALL    EXPRM   ;START ADR
  629	  036A    E1                            POP     H
  630	  036B    22 409A                       SHLD    PCSAV   ;SET NEW
  631	  036E    78                            MOV     A,B     ;ONLY START ADR ?
  632	  036F    FE 0D                         CPI     CR
  633	  0371    CA 0392                       JZ      GO@
  634	  0374    CD 062F               GO@BR:  CALL    RADR    ;READ BREAK ADR
  635	  0377    22 409E                       SHLD    BRAD
  636	  037A    7E                            MOV     A,M     ;SAVE INSTR. CODE
  637	  037B    32 40A0                       STA     INSTR
  638	  037E    36 CF                         MVI     M,RSTN  ;SET RST
  639	  0380    3E 0D                         MVI     A,CR
  640	  0382    B8                            CMP     B       ;ONLY 1-BREAK ?
  641	  0383    CA 0392                       JZ      GO@
  642	                                ; SECOND BREAK
  643	  0386    CD 062F                       CALL    RADR
  644	  0389    22 40A1                       SHLD    BRAD2
  645	  038C    7E                            MOV     A,M
  646	  038D    32 40A3                       STA     INST2
  647	  0390    36 CF                         MVI     M,RSTN
  648	                                ; START PROGRAM
  649	  0392    CD 05DD               GO@:    CALL    CRLF
  650	  0395    F3                            DI
  651	  0396    31 4092                       LXI     SP,ACSAV        ;REASTORE REGISTERS
  652	  0399    F1                            POP     PSW
  653	  039A    C1                            POP     B
  654	  039B    D1                            POP     D
  655	  039C    2A 409C                       LHLD    SPSAV   ;STACK
  656	  039F    F9                            SPHL
  657	  03A0    2A 409A                       LHLD    PCSAV   ; PC
  658	  03A3    E3                            XTHL
  659	  03A4    2A 4098                       LHLD    HLSAV
  660	  03A7    C9                            RET             ;CONTINUE...
  661	                                ;
  662	                                ; EXAMINE REGISTRS
  663	                                ;
  664	  03A8    CD 067B               X:      CALL    CINCR   ;COMMAND
  665	  03AB    21 0419                       LXI     H,RGNAM ;NAME TABLE
  666	  03AE    16 40                         MVI     D,HIGH ACSAV    ;DATA
  667	  03B0    D2 03BE                       JNC     X1      ;CHANGE
  668	  03B3    CD 05DD                       CALL    CRLF
  669	  03B6    CD 03F6               X0:     CALL    XDISP
  670	  03B9    C8                            RZ              ;END
  671	  03BA    23                            INX     H
  672	  03BB    C3 03B6                       JMP     X0
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-12


  673	  03BE    CA 03D5               X1:     JZ      X2      ;NO CHANGE
  674	  03C1    5F                            MOV     E,A     ;SAVE NAME
  675	  03C2    01                            DB      1       ; LXI B,##
  676	  03C3    23                    X10:    INX     H
  677	  03C4    23                            INX     H
  678	  03C5    7E                            MOV     A,M     ; READ NAME REG.
  679	  03C6    E6 7F                         ANI     7FH
  680	  03C8    CA 0162                       JZ      ERROR   ; NO FIND
  681	  03CB    BB                            CMP     E
  682	  03CC    C2 03C3                       JNZ     X10     ; NEXT
  683	  03CF    CD 0400                       CALL    XDIS1   ; DISPLAY IT
  684	  03D2    C3 03D8                       JMP     X2+3
  685	                                ;
  686	  03D5    CD 03F9               X2:     CALL    XDISP+3
  687	  03D8    C8                            RZ
  688	  03D9    CD 0678                       CALL    CIMIN   ;- COMMAND
  689	  03DC    D8                            RC              ;CR - END
  690	  03DD    5E                            MOV     E,M     ;LOW ADR
  691	  03DE    23                            INX     H
  692	  03DF    CA 03D5                       JZ      X2      ;SP - NEXT
  693	  03E2    EB                            XCHG
  694	  03E3    D5                            PUSH    D
  695	  03E4    CD 0636                       CALL    RBYT    ; READ NEW BYTE AND CHANGE
  696	  03E7    05                            DCR     B
  697	  03E8    CA 03EE                       JZ      $+6
  698	  03EB    72                            MOV     M,D     ; HIGH BYTE
  699	                                
  700	  03EC    2B                            DCX     H
  701	  03ED    73                            MOV     M,E     ;LOW
  702	  03EE    D1                            POP     D
  703	  03EF    EB                            XCHG
  704	  03F0    FE 0D                         CPI     CR      ;LAST?
  705	  03F2    C8                            RZ              ;+
  706	  03F3    C3 03D5                       JMP     X2      ;NEXT
  707	                                ;
  708	  03F6    CD 0697               XDISP:  CALL    SPACE
  709	  03F9    7E                            MOV     A,M
  710	  03FA    E6 7F                         ANI     7FH
  711	  03FC    C8                            RZ
  712	  03FD    CD 04B8                       CALL    COA
  713	  0400    CD 0013               XDIS1:  CALL    EQUAL   ;NAME=
  714	  0403    7E                            MOV     A,M
  715	  0404    07                            RLC
  716	  0405    3E 01                         MVI     A,1
  717	  0407    CE 00                         ACI     0       ; COMPUTE LENGHT
  718	  0409    47                            MOV     B,A     ; SAVE
  719	  040A    23                            INX     H
  720	  040B    5E                            MOV     E,M     ; LOW ADR
  721	  040C    1A                            LDAX    D       ;HIG BYTE
  722	  040D    CD 0651                       CALL    DBYT
  723	  0410    78                            MOV     A,B     ;SINGLE REG. ?
  724	  0411    3D                            DCR     A
  725	  0412    1B                            DCX     D
  726	  0413    1A                            LDAX    D       ;READ SECOND BYTE
  727	  0414    C4 0651                       CNZ     DBYT    ;IF 2.BYTE REG. THEN DISP.
  728	  0417    B3                            ORA     E       ;NZY (IN PAGE)
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-13


  729	  0418    C9                            RET
  730	                                ;
  731	                                ; X: COMMAND TABLE
  732	  0419    41 93                 RGNAM:  DB      'A',LOW ACSAV+1
  733	  041B    46 92                         DB      'F',LOW ACSAV
  734	  041D    42 95                         DB      'B',LOW BCSAV+1
  735	  041F    43 94                         DB      'C',LOW BCSAV
  736	  0421    44 97                         DB      'D',LOW DESAV+1
  737	  0423    45 96                         DB      'E',LOW DESAV
  738	  0425    48 99                         DB      'H',LOW HLSAV+1
  739	  0427    4C 98                         DB      'L',LOW HLSAV
  740	  0429    D0 9B                         DB      'P' OR 80H,LOW PCSAV+1
  741	  042B    D3 9D                         DB      'S' OR 80H,LOW SPSAV+1
  742	  042D    00                            DB      0
  743	                                ;
  744	                                ; DISPLAY CONTENS OF MEMORY
  745	                                ;
  746	  042E    CD 05B1               DISP:   CALL    EXPR    ; FROM -TO
  747	  0431    D1                            POP     D
  748	  0432    E1                            POP     H
  749	  0433    E5                    DI0:    PUSH    H       ;FIRST ADR
  750	  0434    CD 0643                       CALL    DNADR   ;NEW ADR
  751	  0437    7E                    DI1:    MOV     A,M
  752	  0438    CD 0694                       CALL    DBYTE
  753	  043B    CD 0624                       CALL    HILO
  754	  043E    DA 0447                       JC      DIA     ;DISPLAY  ASCII
  755	  0441    7D                            MOV     A,L
  756	  0442    E6 07                         ANI     7
  757	  0444    C2 0437                       JNZ     DI1     ;NEXT BYTE
  758	  0447    E1                    DIA:    POP     H
  759	  0448    CD 0697                       CALL    SPACE
  760	  044B    7E                    DI2:    MOV     A,M
  761	  044C    0E 2E                         MVI     C,'.'   ;NO ASCII
  762	  044E    FE 20                         CPI     ' '
  763	  0450    D2 0454                       JNC     $+4
  764	  0453    79                            MOV     A,C
  765	  0454    FE 60                         CPI     60H
  766	  0456    DA 045B                       JC      $+5
  767	  0459    D6 20                         SUI     ' '
  768	  045B    CD 04B8                       CALL    COA
  769	  045E    CD 0624                       CALL    HILO
  770	  0461    D8                            RC
  771	  0462    7D                            MOV     A,L
  772	  0463    E6 07                         ANI     7
  773	  0465    C2 044B                       JNZ     DI2     ;NEXT ASCII
  774	  0468    CD 01C6                       CALL    CSTS
  775	  046B    CA 0433                       JZ      DI0     ;NEXT LINE
  776	  046E    CD 0678                       CALL    CIMIN   ;#VERS."F" -
  777	  0471    D8                            RC              ;#IF SPC WAIT
  778	  0472    C0                            RNZ             ;#ELSE BREAK.
  779	  0473    CD 067B                       CALL    CINCR   ;#CR?
  780	  0476    D2 0433                       JNC     DI0     ;#BREAK,IF CR
  781	  0479    C9                            RET
  782	                                ;
  783	                                ; FILL MEMORY BLOCK WITH BYTE
  784	                                ;
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-14


  785	  047A    0C                    FILL:   INR     C
  786	  047B    CD 05B1                       CALL    EXPR    ;FROM-TO-WITH
  787	  047E    C1                            POP     B
  788	  047F    D1                            POP     D
  789	  0480    E1                            POP     H
  790	  0481    71                    FI1:    MOV     M,C
  791	  0482    CD 0624                       CALL    HILO
  792	  0485    D2 0481                       JNC     FI1
  793	  0488    C9                            RET
  794	                                ;
  795	                                ; MOVE BLOCK MEMORY
  796	                                ;
  797	  0489    0C                    MOVE:   INR     C
  798	  048A    CD 05B1                       CALL    EXPR
  799	  048D    C1                            POP     B
  800	  048E    D1                            POP     D
  801	  048F    E1                            POP     H
  802	  0490    7E                    MO1:    MOV     A,M
  803	  0491    02                            STAX    B
  804	  0492    03                            INX     B
  805	  0493    CD 0624                       CALL    HILO
  806	  0496    D2 0490                       JNC     MO1
  807	  0499    C9                            RET
  808	                                ;
  809	                                ; SUBSTITUTE MEMORY
  810	                                ;
  811	  049A    CD 062F               SUBS:   CALL    RADR    ;ADR
  812	  049D    7E                    SU1:    MOV     A,M
  813	  049E    CD 0651                       CALL    DBYT
  814	  04A1    CD 0678                       CALL    CIMIN   ;- & CINCR
  815	  04A4    D8                            RC              ;CR
  816	  04A5    CA 04AC                       JZ      SU2
  817	  04A8    CD 0636                       CALL    RBYT    ;CHANGE
  818	  04AB    C8                            RZ              ;END
  819	  04AC    23                    SU2:    INX     H       ;NEXT BYTE
  820	  04AD    FE 2C                         CPI     ','     ;IF , THEN DISPLAY ADR
  821	  04AF    CC 0643                       CZ      DNADR
  822	  04B2    C3 049D                       JMP     SU1
  823	                                ;
  824	                                ; CONSOLE MODUL
  825	                                ;
  826	                                ;
  827	  04B5    CD 005E               ECHO:   CALL    CI
  828	  04B8    C5                    COA:    PUSH    B
  829	  04B9    4F                            MOV     C,A
  830	  04BA    CD 05E4                       CALL    CO
  831	  04BD    C1                            POP     B
  832	  04BE    C9                            RET
  833	                                ;
  834	                                        IF      SP1A
  835	                                MINUS:  MVI     A,'-'
  836	                                        JMP     COA
  837	                                ;
  838	                                EQUAL:  MVI     A,'='
  839	                                        JMP     COA
  840	                                ;
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-15


  841	                                QUES:   MVI     A,'?'
  842	                                        JMP     COA
  843	                                ;
  844	                                        ENDIF
  845	                                ;
  846	                                ;SET MODE. I/O FLAGS
  847	                                ;
  848	  04BF    47                    EXFLG:  MOV     B,A
  849	  04C0    79                            MOV     A,C
  850	  04C1    FE 0A                         CPI     EXSER   ; OVERFLOW ?
  851	  04C3    78                            MOV     A,B
  852	  04C4    D0                            RNC
  853	  04C5    E5                            PUSH    H       ; <A> .. COMMAND
  854	                                                        ; <C> .. 0-N SLUZBA
  855	  04C6    06 00                         MVI     B,0     ; 0-MODE, 1-@IF1..4@OF2
  856	  04C8    21 40E3                       LXI     H,MODE  ; 0=0
  857	  04CB    09                            DAD     B       ; 5- RESERVE_LINE, 6-S@FLG
  858	  04CC    77                            MOV     M,A
  859	  04CD    E1                            POP     H
  860	  04CE    C9                            RET
  861	                                
  862	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  863	                                ; ****   S T A R T    M O N I T O R U   ****
  864	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  865	                                ;
  866	  04CF    D3 13                 COLD:   OUT     URES    ; RESET
  867	  04D1    AF                            XRA     A       ;MONITORU
  868	  04D2    D3 10                         OUT     UMODE
  869	  04D4    3E 0D                         MVI     A,0DH
  870	  04D6    D3 11                         OUT     MMODE
  871	  04D8    3E BC                         MVI     A,0BCH  ; A-IN,B-OUT,MOD1
  872	  04DA    D3 33                         OUT     CNTR1   ; DPP-1
  873	                                ;
  874	                                ;-------------------------------------
  875	  04DC    F3                    BEG:    DI              ; COMMAND "C"
  876	  04DD    21 4090                       LXI     H,MSTAK ; SET STACK POINTER
  877	  04E0    F9                            SPHL
  878	  04E1    11 40FF                       LXI     D,@R@+255
  879	  04E4    0E 00                         MVI     C,0
  880	  04E6    CD 0481                       CALL    FI1     ;CLEAR M-RAM
  881	  04E9    3E 55                         MVI     A,BEGIO ;SET IOBYTE
  882	  04EB    32 40ED                       STA     IOBYT
  883	  04EE    CD 069C                       CALL    COINIT  ;TV
  884	  04F1    CD 059A                       CALL    EP2?    ;M-PLUS ?
  885	  04F4    CC 0803                       CZ      EP2+3   ;INIT M-PLUS
  886	  04F7    21 4000                       LXI     H,RAM
  887	  04FA    24                    MEM1:   INR     H       ; NEXT PAGE
  888	  04FB    7C                            MOV     A,H
  889	                                        IF      HIGH ERAM NE 0FFH
  890	                                        CPI     HIGH ERAM+1
  891	                                        ELSE
  892	  04FC    FE 00                         CPI     0
  893	                                        ENDIF
  894	  04FE    CA 050A                       JZ      MEM2
  895	  0501    7E                            MOV     A,M
  896	  0502    2F                            CMA
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-16


  897	  0503    77                            MOV     M,A     ; WRITE COMPLEMENT
  898	  0504    BE                            CMP     M       ; WRITE O.K. ?
  899	  0505    2F                            CMA
  900	  0506    77                            MOV     M,A     ; RAM RESTORE
  901	  0507    CA 04FA                       JZ      MEM1
  902	  050A    2B                    MEM2:   DCX     H       ; LAST BYTE IN RAM
  903	  050B    22 40EE                       SHLD    MEMTOP  ; SAVE ADDRES
  904	  050E    3E 17                         MVI     A,17H   ; LIN. KOD 'C'
  905	  0510    32 40A4                       STA     LASTC   ; LAST CODE
  906	  0513    3E FF                         MVI     A,0FFH
  907	  0515    32 40A8                       STA     FLAG    ; ZAKAZ CSTS
  908	  0518    21 4070                       LXI     H,MSTAK-20H
  909	  051B    22 409C                       SHLD    SPSAV
  910	                                
  911	                                ; OHLASENI MONITORU
  912	                                
  913	  051E    21 00F3               INIC:   LXI     H,VERS  ; TEXT OHLASENI
  914	  0521    16 0D                         MVI     D,LVER ; DELKA TEXTU
  915	  0523    CD 068A                       CALL    TEXT    ; TEXT OHLASENI
  916	                                ;------------------------------------
  917	                                ;  *  VYHODNOCENI POVELU OPERATORA  *
  918	                                ;------------------------------------
  919	                                
  920	  0526    31 4090               NEXT:   LXI     SP,MSTAK        ; SET STACK FOR MONITOR
  921	  0529    21 0526                       LXI     H,NEXT
  922	  052C    E5                            PUSH    H       ;RET. ADR
  923	                                        IF      NOT CPM
  924	  052D    26 30                         MVI     H,30H   ;INTERRUPT ENABLE
  925	  052F    36 02                         MVI     M,2
  926	                                        ENDIF
  927	  0531    CD 05DD                       CALL    CRLF
  928	  0534    3E C3                         MVI     A,0C3H  ; JMP
  929	  0536    32 4000                       STA     @R@     ; SET INTERUPT ADR "08CH"
  930	  0539    21 0313                       LXI     H,RESTA
  931	  053C    22 4001                       SHLD    @R@+1
  932	  053F    0E 2E                         MVI     C,'.'
  933	  0541    CD 05E4                       CALL    CO
  934	  0544    CD 067B                       CALL    CINCR   ; POVEL
  935	  0547    6F                    XY:     MOV     L,A     ; L-COMMAND
  936	  0548    E5                            PUSH    H       ; SAVE
  937	  0549    D6 41                         SUI     'A'
  938	  054B    FA 0526                       JM      NEXT    ; ASCII < "A"
  939	  054E    21 0561                       LXI     H,CTBL  ; ZACATEK COMMAND TABLE
  940	  0551    01 1802                       LXI     B,(LCT SHL 8) OR 2
  941	  0554    B8                    INJM@:  CMP     B
  942	  0555    D2 0162                       JNC     ERROR   ;OVERFLOW
  943	  0558    87                    INJMP:  ADD     A       ;2*
  944	  0559    85                            ADD     L
  945	  055A    6F                            MOV     L,A
  946	  055B    7E                            MOV     A,M
  947	  055C    23                            INX     H
  948	  055D    66                            MOV     H,M
  949	  055E    6F                            MOV     L,A
  950	  055F    E3                            XTHL            ;SET HL
  951	  0560    C9                            RET             ;START
  952	                                
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-17


  953	                                ;----------------------------------
  954	                                ;   *  TABULKA POVELU MOVITORU  *
  955	                                ;----------------------------------
  956	                                
  957	                                ;
  958	  0561    014E                  CTBL:   DW      ASIGN   ; ASSING I/O RUTINE
  959	  0563    0591                          DW      EXROM   ;B
  960	  0565    04DC                          DW      BEG     ; CLEAR
  961	  0567    042E                          DW      DISP    ; DISPLAY MEMORY
  962	  0569    0591                          DW      EXROM   ; END OF FILE
  963	  056B    047A                          DW      FILL    ; FILL MEMORY
  964	  056D    035B                          DW      GOTO    ; GOTO WITH BREAK
  965	  056F    0591                          DW      EXROM
  966	  0571    0591                          DW      EXROM   ;I
  967	  0573    0591                          DW      EXROM   ;J
  968	  0575    0591                          DW      EXROM   ;K
  969	  0577    0591                          DW      EXROM   ;L
  970	  0579    0489                          DW      MOVE    ; MOVE MEM.
  971	  057B    0591                          DW      EXROM   ; N - BLANK
  972	  057D    0591                          DW      EXROM   ;O
  973	  057F    0591                          DW      EXROM   ;P
  974	  0581    0192                          DW      QUERY   ; Q - MEMTOP & IOBYTE
  975	  0583    0591                          DW      EXROM   ; READ TAPE
  976	  0585    049A                          DW      SUBS    ; SUBSTITUTE
  977	  0587    0591                          DW      EXROM
  978	  0589    0591                          DW      EXROM   ;U
  979	  058B    0591                          DW      EXROM
  980	  058D    0591                          DW      EXROM   ;WRITE TO TAPE
  981	  058F    03A8                          DW      X       ;X - EXAMINE
  982	  0018                          LCT     EQU     ($-CTBL)/2
  983	                                
  984	                                
  985	                                ;
  986	                                ; EXTEND ROM WITH MONIT-PLUS ?
  987	                                ;
  988	  0591    CD 059A               EXROM:  CALL    EP2?
  989	  0594    C2 0162                       JNZ     ERROR   ;NO, ERROR
  990	  0597    C3 0806                       JMP     EP2 + 6 ;YES, EXECUTE COMMAND
  991	                                ;
  992	  059A    3A 0800               EP2?:   LDA     EP2
  993	  059D    FE C3                         CPI     0C3H    ;JMP?
  994	  059F    C9                            RET
  995	                                ;
  996	                                ;
  997	                                
  998	                                ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  999	                                ;  *  EXTERNAL RUTINES FOR MONITOR  *
 1000	                                ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
 1001	                                
 1002	                                
 1003	                                
 1004	                                ; HIGH NIBBLE
 1005	  05A0    0F                    HBYTE:  RRC
 1006	  05A1    0F                            RRC
 1007	  05A2    0F                            RRC
 1008	  05A3    0F                            RRC
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-18


 1009	  05A4    E6 0F                 LBYTE:  ANI     0FH
 1010	                                ; PREVOD HEXADECIMALNI CIFRY NA ASCII V "C" REG
 1011	                                
 1012	  05A6    C6 90                 HXASC:  ADI     90H
 1013	  05A8    27                            DAA
 1014	  05A9    CE 40                         ACI     40H
 1015	  05AB    27                            DAA
 1016	  05AC    4F                            MOV     C,A
 1017	  05AD    C9                            RET
 1018	                                
 1019	                                ; SKLADANI ADRES (VSTUP PARAMETRU) DO STACKU, POCET V C-REG
 1020	                                
 1021	  05AE    DA 0162               EXPRO:  JC      ERROR   ;# VERS."C" #
 1022	  05B1    CD 0013               EXPR:   CALL    EQUAL   ; TISK =
 1023	  05B4    21 0000                       LXI     H,0
 1024	  05B7    CD 04B5               EX0:    CALL    ECHO
 1025	  05BA    47                    EX1:    MOV     B,A
 1026	  05BB    FE 27                         CPI     27H     ;'
 1027	  05BD    CA 05F8                       JZ      EX4
 1028	  05C0    CD 0667                       CALL    ASHEX   ; HEX CIFRA ?
 1029	  05C3    DA 05CF                       JC      EX3     ; POSUV "HL" O 4 BITY VLEVO
 1030	  05C6    29                            DAD     H
 1031	  05C7    29                            DAD     H
 1032	  05C8    29                            DAD     H
 1033	  05C9    29                            DAD     H
 1034	  05CA    B5                            ORA     L
 1035	  05CB    6F                            MOV     L,A
 1036	  05CC    C3 05B7                       JMP     EX0     ; DALSI ZNAK
 1037	                                
 1038	  05CF    78                    EX3:    MOV     A,B
 1039	  05D0    CD 067E                       CALL    ANAL
 1040	  05D3    C2 0162                       JNZ     ERROR   ; NENI HEX CIFRA
 1041	  05D6    E3                            XTHL
 1042	  05D7    E5                            PUSH    H
 1043	  05D8    0D                            DCR     C       ; CARKA, MEZERA
 1044	  05D9    C2 05AE                       JNZ     EXPRO   ; DALSI ADRESY
 1045	  05DC    D0                            RNC             ;#VERS."F"#
 1046	                                ;
 1047	  05DD    0E 0D                 CRLF:   MVI     C,CR
 1048	  05DF    CD 05E4                       CALL    CO
 1049	  05E2    0E 0A                         MVI     C,LF    ; DO CR,LF
 1050	                                ;
 1051	  05E4    E5                    CO:     PUSH    H
 1052	  05E5    21 00CB                       LXI     H,COTB
 1053	  05E8    3A 40ED                       LDA     IOBYT
 1054	  05EB    E6 03                 IOCOM:  ANI     3
 1055	  05ED    C3 0558                       JMP     INJMP
 1056	                                
 1057	                                
 1058	  05F0    0E 01                 EXPRM:  MVI     C,1
 1059	  05F2    21 0000                       LXI     H,0
 1060	  05F5    C3 05BA                       JMP     EX1
 1061	                                ;
 1062	  05F8    CD 067B               EX4:    CALL    CINCR   ;COMMAND
 1063	  05FB    47                            MOV     B,A     ;SAVE
 1064	  05FC    CA 05CF                       JZ      EX3
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-19


 1065	  05FF    65                            MOV     H,L
 1066	  0600    6F                            MOV     L,A
 1067	  0601    C3 05F8                       JMP     EX4
 1068	                                
 1069	                                ;  IODEF:... DEFINE USER I/O RUTINE
 1070	                                
 1071	  0604    C5                    IODEF:  PUSH    B
 1072	  0605    E5                            PUSH    H
 1073	  0606    21 40EE                       LXI     H,MEMTOP        ;NEW FUNCTION
 1074	  0609    79                            MOV     A,C     ; NUMBER
 1075	  060A    FE 08                         CPI     8
 1076	  060C    CA 061E                       JZ      IODEF1
 1077	  060F    F2 0162                       JP      ERROR
 1078	  0612    81                            ADD     C
 1079	  0613    81                            ADD     C
 1080	  0614    4F                            MOV     C,A
 1081	  0615    06 00                         MVI     B,0     ; OFFSET
 1082	  0617    21 40CB                       LXI     H,CILOC ; COMPUTE ADR
 1083	  061A    09                            DAD     B
 1084	  061B    36 C3                         MVI     M,0C3H  ; JMP
 1085	  061D    23                            INX     H
 1086	  061E    73                    IODEF1: MOV     M,E
 1087	  061F    23                            INX     H
 1088	  0620    72                            MOV     M,D     ; ADR
 1089	  0621    E1                            POP     H       ; UNSAVE
 1090	  0622    C1                            POP     B
 1091	  0623    C9                            RET
 1092	                                
 1093	                                
 1094	                                ; INKREMENTRUJE "HL" ,KONTROLUJE "HL"=0 NEBO
 1095	                                ;   "HL">"DE"...CARRY=1
 1096	                                
 1097	  0624    23                    HILO:   INX     H
 1098	  0625    7C                            MOV     A,H
 1099	  0626    B5                            ORA     L
 1100	  0627    37                            STC
 1101	  0628    C8                            RZ              ; NAVRAT PO "HL"=0000
 1102	  0629    7A                    COMPR:  MOV     A,D
 1103	  062A    BC                            CMP     H
 1104	  062B    C0                            RNZ
 1105	  062C    7B                            MOV     A,E
 1106	  062D    BD                            CMP     L
 1107	  062E    C9                            RET
 1108	                                
 1109	                                ; READ ADR
 1110	                                
 1111	  062F    0E 01                 RADR:   MVI     C,1
 1112	  0631    CD 05B1                       CALL    EXPR
 1113	  0634    E1                            POP     H
 1114	  0635    C9                            RET
 1115	                                
 1116	                                
 1117	                                ; READ NEW BYTE
 1118	                                
 1119	  0636    C5                    RBYT:   PUSH    B
 1120	  0637    E5                            PUSH    H
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-20


 1121	  0638    CD 05F0                       CALL    EXPRM
 1122	  063B    D1                            POP     D
 1123	  063C    E1                            POP     H
 1124	  063D    73                            MOV     M,E
 1125	  063E    78                            MOV     A,B
 1126	  063F    FE 0D                         CPI     CR
 1127	  0641    C1                            POP     B
 1128	  0642    C9                            RET
 1129	                                
 1130	                                
 1131	                                ; DISPLAY NEW ADR
 1132	                                
 1133	  0643    CD 05DD               DNADR:  CALL    CRLF
 1134	  0646    CD 064C               DADR:   CALL    DADR0
 1135	  0649    C3 0697                       JMP     SPACE
 1136	                                
 1137	                                
 1138	                                        IF      SP1A
 1139	                                ; CHEK I/O STATUS BYTE
 1140	                                
 1141	                                IOCHK:  LDA     IOBYT
 1142	                                        RET
 1143	                                
 1144	                                
 1145	                                ; SET I/O STATUS BYTE
 1146	                                
 1147	                                IOSET:  MOV     A,C
 1148	                                        STA     IOBYT
 1149	                                        RET
 1150	                                        ENDIF
 1151	                                
 1152	                                ; DISPLAY ADDRES INT0 "HL"
 1153	                                
 1154	  064C    7C                    DADR0:  MOV     A,H
 1155	  064D    CD 0651                       CALL    DBYT
 1156	  0650    7D                            MOV     A,L
 1157	                                
 1158	                                ; DISPLAY BYTE INT0 ACC
 1159	                                
 1160	  0651    F5                    DBYT:   PUSH    PSW
 1161	  0652    CD 05A0                       CALL    HBYTE
 1162	  0655    CD 05E4                       CALL    CO
 1163	  0658    F1                            POP     PSW
 1164	  0659    CD 05A4                       CALL    LBYTE
 1165	  065C    C3 05E4                       JMP     CO
 1166	                                
 1167	                                
 1168	                                ; CHEK SIZE RAM MEMORY
 1169	                                
 1170	  065F    E5                    MEMCK:  PUSH    H
 1171	  0660    2A 40EE                       LHLD    MEMTOP
 1172	  0663    7D                            MOV     A,L
 1173	  0664    44                            MOV     B,H
 1174	  0665    E1                            POP     H
 1175	  0666    C9                            RET
 1176	                                
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-21


 1177	                                ; PREVOD ZNAKU ASCII NA HEXADEC
 1178	                                
 1179	  0667    D6 30                 ASHEX:  SUI     '0'     ;#VERS."F"#
 1180	  0669    D8                            RC              ; <'0'
 1181	  066A    FE 17                         CPI     17H     ; >'F'
 1182	  066C    3F                            CMC
 1183	  066D    D8                            RC
 1184	  066E    FE 0A                         CPI     10      ; '0'..'9'
 1185	  0670    3F                            CMC
 1186	  0671    D0                            RNC
 1187	  0672    FE 11                         CPI     11H     ; 0AH..10H
 1188	  0674    D8                            RC
 1189	  0675    D6 07                         SUI     7       ; 'A'..'F'
 1190	  0677    C9                            RET
 1191	                                
 1192	                                
 1193	  0678    CD 000B               CIMIN:  CALL    MINUS   ;-
 1194	                                ;
 1195	  067B    CD 04B5               CINCR:  CALL    ECHO
 1196	  067E    FE 2C                 ANAL:   CPI     ','
 1197	  0680    C8                    ANAL0:  RZ
 1198	  0681    FE 20                         CPI     ' '
 1199	  0683    C8                            RZ
 1200	  0684    FE 0D                         CPI     CR
 1201	  0686    37                            STC
 1202	  0687    C8                            RZ
 1203	  0688    B7                            ORA     A
 1204	  0689    C9                            RET             ; PO CR CARRY=1
 1205	                                
 1206	                                ; VYPIS TEXTU - HL ADRESA, D DELKA
 1207	                                
 1208	  068A    4E                    TEXT:   MOV     C,M
 1209	  068B    23                            INX     H
 1210	  068C    CD 05E4                       CALL    CO
 1211	  068F    15                            DCR     D
 1212	  0690    C2 068A                       JNZ     TEXT
 1213	  0693    C9                            RET
 1214	                                
 1215	  0694    CD 0651               DBYTE:  CALL    DBYT
 1216	  0697    0E 20                 SPACE:  MVI     C,' '   ; DISPLAY MEZERY
 1217	  0699    C3 05E4                       JMP     CO
 1218	                                ;
 1219	                                ;
 1220	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 1221	                                ;       I/O  DEVICE
 1222	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 1223	                                ;
 1224	                                ; T.V. PARAM.
 1225	  0028                          WIDTH   EQU     40
 1226	  0018                          HEIGHT  EQU     24
 1227	  0040                          LINOF   EQU     64      ;OFFSET
 1228	  0018                          LREST   EQU     LINOF - WIDTH
 1229	  3DE7                          TVEND   EQU     TVBEG + 5E7H
 1230	  001F                          ERS     EQU     1FH             ;ERASE SCREEN
 1231	  001E                          EOL     EQU     1EH             ;ERASE END OF LINE
 1232	  0011                          CTRLQ   EQU     11H     ;^Q-RESERVE
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-22


 1233	  0010                          CTRLP   EQU     10H     ;^P-LIST
 1234	  00A0                          CURSOR  EQU     0A0H            ;CODE
 1235	  001D                          HOME    EQU     1DH             ;HOME
 1236	                                ;
 1237	                                ;-------------------------------------------------
 1238	                                
 1239	  069C    21 3800               COINIT: LXI     H,TVBEG
 1240	  069F    22 40A5                       SHLD    CADR            ;SET CURSOR ADR
 1241	  06A2    0E 1F                         MVI     C,ERS           ;CLEAR SCREEN
 1242	                                ;
 1243	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%
 1244	                                ;       CONSOLE OUTPUT
 1245	                                ;       <C>...WRITE ON SCREN
 1246	                                ;
 1247	  06A4    D5                    CRT:    PUSH    D
 1248	  06A5    E5                            PUSH    H
 1249	  06A6    21 073B                       LXI     H,COEX  ;RET-ADR
 1250	  06A9    E5                            PUSH    H       ;PUT TO STACK
 1251	  06AA    2A 40A5                       LHLD    CADR    ;CLEAR CURSOR
 1252	  06AD    3A 40A7                       LDA     CHAR    ;ADR RESTORE
 1253	  06B0    77                            MOV     M,A     ;CHART
 1254	  06B1    CD 075A                       CALL    COADR   ;COMPUTE ADR
 1255	  06B4    79                            MOV     A,C
 1256	  06B5    FE 20                         CPI     ' '     ;IF ' '...'Z' THEN WRITE
 1257	  06B7    D2 06DE                       JNC     CRTWR   ;ELSE DECODE CONTROL
 1258	  06BA    FE 0D                         CPI     CR      ;CHARTS AND DO
 1259	  06BC    CA 0791                       JZ      CR@     ;CHANGE ON SCREEN
 1260	  06BF    FE 0A                         CPI     LF
 1261	  06C1    CA 06FC                       JZ      LF@
 1262	  06C4    FE 1E                         CPI     EOL
 1263	  06C6    CA 076F                       JZ      EOL@    ;ERASE TO END LINE
 1264	  06C9    FE 08                         CPI     BACK
 1265	  06CB    CA 077B                       JZ      BACK@   ;LEFT SHIFT
 1266	  06CE    FE 1D                         CPI     HOME
 1267	  06D0    CA 0796                       JZ      HOME@   ;LEFT UP
 1268	  06D3    FE 1F                         CPI     ERS
 1269	  06D5    CA 072A                       JZ      ERS@
 1270	  06D8    FE 07                         CPI     BELL
 1271	  06DA    CA 0218                       JZ      BEEP
 1272	  06DD    C9                            RET
 1273	                                ;
 1274	  06DE    3A 40E3               CRTWR:  LDA     MODE
 1275	  06E1    E6 C0                         ANI     0C0H    ;MODE
 1276	  06E3    57                            MOV     D,A     ; SAVE
 1277	  06E4    79                            MOV     A,C     ;6.BITS
 1278	  06E5    E6 3F                         ANI     3FH
 1279	  06E7    B2                            ORA     D       ;COMPOSITE
 1280	  06E8    77                            MOV     M,A     ;WRITE!
 1281	  06E9    D6 C0                         SUI     0C0H    ;DOUBLE ?
 1282	  06EB    D4 06EE                       CNC     CONXT   ;+
 1283	  06EE    CD 075A               CONXT:  CALL    COADR   ;COMPUTE NEXT ADR
 1284	  06F1    7A                            MOV     A,D
 1285	  06F2    3C                            INR     A
 1286	  06F3    32 40E9                       STA     COLUM   ;NEW POSITION
 1287	  06F6    D6 28                         SUI     WIDTH   ;END LINE
 1288	  06F8    D8                            RC              ;NO
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-23


 1289	  06F9    32 40E9                       STA     COLUM   ;SET POSITION AND COMPUTE
 1290	                                ; NEXT LINE
 1291	  06FC    7B                    LF@:    MOV     A,E
 1292	  06FD    3C                            INR     A
 1293	  06FE    FE 18                         CPI     HEIGHT  ;END OF SCREEN?
 1294	  0700    DA 079C                       JC      LF@1    ;NO
 1295	  0703    2A 40EA                       LHLD    RESL
 1296	  0706    26 00                         MVI     H,0
 1297	  0708    CD 075D                       CALL    COADR+3 ;FIRST LINE
 1298	  070B    C5                            PUSH    B
 1299	  070C    3A 40EA                       LDA     RESL    ;LINE COUNTER
 1300	  070F    D6 18                         SUI     HEIGHT
 1301	  0711    2F                            CMA
 1302	  0712    4F                            MOV     C,A
 1303	  0713    06 28                 ROLL:   MVI     B,WIDTH
 1304	  0715    EB                            XCHG
 1305	  0716    21 0040               ROLL1:  LXI     H,LINOF ;OFFSET
 1306	  0719    19                            DAD     D
 1307	  071A    7E                            MOV     A,M
 1308	  071B    12                            STAX    D       ;COPY
 1309	  071C    13                            INX     D       ;+
 1310	  071D    05                            DCR     B
 1311	  071E    C2 0716                       JNZ     ROLL1   ;ALL LINE
 1312	  0721    21 0018                       LXI     H,LREST ;NEW LINE
 1313	  0724    19                            DAD     D
 1314	  0725    0D                            DCR     C
 1315	  0726    C2 0713                       JNZ     ROLL    ;NEXT LINE
 1316	  0729    C1                            POP     B
 1317	                                ;
 1318	  072A    CD 076F               ERS@:   CALL    EOL@
 1319	  072D    11 0018                       LXI     D,LREST
 1320	  0730    19                            DAD     D
 1321	  0731    11 3DE6                       LXI     D,TVEND-1
 1322	  0734    CD 0629                       CALL    COMPR
 1323	  0737    D2 072A                       JNC     ERS@
 1324	  073A    C9                            RET
 1325	                                ;
 1326	                                ;
 1327	                                ;  "EXIT" AND SET CURSOR
 1328	  073B    CD 075A               COEX:   CALL    COADR   ;WRITE CURSOR
 1329	  073E    3A 40E3                       LDA     MODE
 1330	  0741    0F                            RRC             ;CY=1.. LIST
 1331	  0742    DC 07B9                       CC      LPR     ;PRINT ECHO
 1332	  0745    7E                            MOV     A,M
 1333	  0746    32 40A7                       STA     CHAR    ;ADD SAVE CHAR
 1334	  0749    22 40A5                       SHLD    CADR
 1335	  074C    3A 40E3                       LDA     MODE    ;#VERS."F"#
 1336	  074F    E6 20                         ANI     20H     ;#SUPRESS CURSOR?
 1337	  0751    C2 0756                       JNZ     COEX1   ;#
 1338	  0754    36 A0                         MVI     M,CURSOR
 1339	  0756    E1                    COEX1:  POP     H       ;UNSAVE
 1340	  0757    D1                            POP     D
 1341	  0758    79                            MOV     A,C
 1342	  0759    C9                            RET             ;END OF CONSOLE OUTPUT
 1343	                                
 1344	                                ;  SUBROUTINES
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-24


 1345	                                ;--------------------------------------------------
 1346	                                
 1347	  075A    2A 40E8               COADR:  LHLD    LINE    ;COMPARE ADR <HL>
 1348	  075D    E5                            PUSH    H
 1349	  075E    26 00                         MVI     H,0
 1350	  0760    29                            DAD     H
 1351	  0761    29                            DAD     H
 1352	  0762    29                            DAD     H
 1353	  0763    29                            DAD     H
 1354	  0764    29                            DAD     H
 1355	  0765    29                            DAD     H       ;64*
 1356	  0766    11 3800                       LXI     D,TVBEG ;TV-RAM
 1357	  0769    19                            DAD     D       ;BEGIN LINE
 1358	  076A    D1                            POP     D       ;SET DE
 1359	  076B    7D                            MOV     A,L     ;D-COLUM
 1360	  076C    B2                            ORA     D       ;E-LINE
 1361	  076D    6F                            MOV     L,A     ;HL...ADR
 1362	  076E    C9                            RET
 1363	                                
 1364	                                
 1365	                                ; ERASE FROM CURSOR TO END LINE
 1366	  076F    36 20                 EOL@:   MVI     M,' '
 1367	  0771    23                            INX     H
 1368	  0772    7D                            MOV     A,L
 1369	  0773    E6 3F                         ANI     3FH
 1370	  0775    FE 28                         CPI     WIDTH
 1371	  0777    DA 076F                       JC      EOL@
 1372	  077A    C9                            RET
 1373	                                
 1374	  077B    7A                    BACK@:  MOV     A,D     ;COLUMN:0 ?
 1375	  077C    B7                            ORA     A
 1376	  077D    C2 078F                       JNZ     BAC@1   ;NO FINST POSITIONS
 1377	  0780    1C                            INR     E       ;IF LINE=0 THEN BEGIN
 1378	  0781    1D                            DCR     E       ;OF SCREEN
 1379	  0782    C8                            RZ
 1380	  0783    3A 40EA                       LDA     RESL    ;SAVE "RESERVE" PARTIONS
 1381	  0786    BB                            CMP     E
 1382	  0787    C8                            RZ              ;YES,GO OUT
 1383	  0788    7B                            MOV     A,E     ;NO SET NEW LINE
 1384	  0789    3D                            DCR     A
 1385	  078A    32 40E8                       STA     LINE
 1386	  078D    3E 28                         MVI     A,WIDTH
 1387	  078F    3D                    BAC@1:  DCR     A
 1388	  0790    16                            DB      16H     ;MVI D,#
 1389	  0791    AF                    CR@:    XRA     A       ;CARIG. RETURN
 1390	  0792    32 40E9                       STA     COLUM
 1391	  0795    C9                            RET
 1392	                                
 1393	                                ;SET CURSOR ON BEGIN "NORMAL" SCREEN
 1394	  0796    CD 0791               HOME@:  CALL    CR@     ;NULL
 1395	  0799    3A 40EA                       LDA     RESL    ;"RESERVE" LINE SET
 1396	  079C    32 40E8               LF@1:   STA     LINE
 1397	  079F    C9                            RET
 1398	                                ;
 1399	                                ; UNDERLINE
 1400	  07A0    3A 40EA               UCMD:   LDA     RESL    ;EMPTY ?
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-25


 1401	  07A3    B7                            ORA     A
 1402	  07A4    C8                            RZ              ;EMPTY
 1403	  07A5    3D                            DCR     A
 1404	  07A6    6F                            MOV     L,A
 1405	  07A7    26 00                         MVI     H,0
 1406	  07A9    CD 075D                       CALL    COADR+3
 1407	  07AC    16 28                         MVI     D,WIDTH
 1408	  07AE    7E                    RESX:   MOV     A,M     ;UNDER LINE
 1409	  07AF    E6 3F                         ANI     3FH     ;ASCII
 1410	  07B1    B0                            ORA     B       ;PARAM
 1411	  07B2    77                            MOV     M,A
 1412	  07B3    23                            INX     H
 1413	  07B4    15                            DCR     D
 1414	  07B5    C2 07AE                       JNZ     RESX
 1415	  07B8    C9                            RET
 1416	                                ;**********************************************************
 1417	                                ;
 1418	                                ; LINE PRINTER
 1419	                                ;
 1420	  07B9    E5                    LPR:    PUSH    H
 1421	  07BA    21 2C01                       LXI     H,2C01H
 1422	  07BD    71                            MOV     M,C
 1423	  07BE    25                            DCR     H
 1424	  07BF    75                            MOV     M,L
 1425	  07C0    24                            INR     H
 1426	  07C1    7E                    LPR1:   MOV     A,M
 1427	  07C2    87                            ADD     A
 1428	  07C3    F2 07C1                       JP      LPR1
 1429	  07C6    25                            DCR     H
 1430	  07C7    36 03                         MVI     M,3
 1431	  07C9    24                            INR     H
 1432	  07CA    7E                    LPR2:   MOV     A,M
 1433	  07CB    87                            ADD     A
 1434	  07CC    FA 07CA                       JM      LPR2
 1435	  07CF    25                            DCR     H
 1436	  07D0    75                            MOV     M,L
 1437	  07D1    E1                            POP     H
 1438	  07D2    C9                            RET
 1439	                                ;
 1440	                                ;
 1441	                                ; PUNCH OUTPUT
 1442	                                ;
 1443	  07D3    C9                    PUN:    RET             ; EMPTY
 1444	  07D4                                  DS      20      ; RESERVA
 1445	                                ;
 1446	                                ; READER INPUT
 1447	                                
 1448	  0030                          PA1     EQU     30H
 1449	  0032                          PC1     EQU     32H
 1450	  0033                          CNTR1   EQU     33H
 1451	                                ;
 1452	  07E8    DB 32                 RDR:    IN      PC1
 1453	  07EA    07                            RLC
 1454	  07EB    07                            RLC
 1455	  07EC    D8                            RC              ;PRETRZENA PASKA
 1456	  07ED    B7                            ORA     A
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-26


 1457	  07EE    F2 07E8                       JP      RDR
 1458	  07F1    DB 30                         IN      PA1
 1459	  07F3    C9                            RET
 1460	                                ;
 1461	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 1462	                                        ORG     @R@
 1463	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 1464	                                ; SYSTEM RAM SAPI-1
 1465	                                ;
 1466	  4000                          RST1:   DS      21      ;RESTART VECTOR
 1467	                                ;<<... USER & MONITOR STACK
 1468	                                ;
 1469	                                ;
 1470	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 1471	                                        ORG     @R@+090H
 1472	                                ;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 1473	                                ; MONITOR DATA
 1474	                                ;
 1475	  4090                          MSTAK:  DS      2       ; SAVE REGISTERS
 1476	  4092                          ACSAV:  DS      2
 1477	  4094                          BCSAV:  DS      2
 1478	  4096                          DESAV:  DS      2
 1479	  4098                          HLSAV:  DS      2
 1480	  409A                          PCSAV:  DS      2
 1481	  409C                          SPSAV:  DS      2
 1482	                                ;
 1483	  409E                          BRAD:   DS      2
 1484	  40A0                          INSTR:  DS      1
 1485	  40A1                          BRAD2:  DS      2
 1486	  40A3                          INST2:  DS      1
 1487	  40A4                          LASTC:  DS      1       ;LAST CODE "REPEAT"
 1488	  40A5                          CADR:   DS      2       ; CURSOR ADR
 1489	  40A7                          CHAR:   DS      1       ; CODE
 1490	  40A8                          FLAG:   DS      1       ; FLAG MEMBR
 1491	  40A9                          LIMIT:  DS      2       ; TIME LIMIT FOR AUTO REPEAT
 1492	  40AB                          @BT:    DS      1
 1493	  40AC                          @PED:   DS      1
 1494	  40AD                          UADR:   DS      2       ;USER ADR
 1495	  40AF                          SADR:   DS      2       ; START ADR
 1496	  40B1                          EADR:   DS      2       ; END ADR
 1497	  40B3                          SUM:    DS      1
 1498	                                
 1499	                                ;*******************************
 1500	                                ;MONITOR PLUS DATA
 1501	  40B4                          JOINT:  DS      1
 1502	  40B5                          FNAME:  DS      11
 1503	  40C0                          BNO:    DS      1       ;BLOCK NUMSER,FILE NUMBER
 1504	  40C1                          BTO:    DS      1
 1505	  40C2                          BNI:    DS      1       ; --- " ---
 1506	  40C3                          BTI:    DS      1
 1507	  40C4                          ADRO:   DS      2
 1508	  40C6                          ADRI:   DS      2
 1509	  40C8                          PBITM:  DS      2
 1510	  40CA                          FND:    DS      1       ; FIND FLAG
 1511	                                
 1512	                                ;-------------------------
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	1-27


 1513	                                ;       USER I/O DEVICE
 1514	                                ;                       IODEF NUMBER
 1515	  40CB                          CILOC:  DS      3       ; (0)
 1516	  40CE                          COLOC:  DS      3       ; (1)
 1517	  40D1                          R1LOC:  DS      3       ; (2)
 1518	  40D4                          R2LOC:  DS      3       ; (3)
 1519	  40D7                          P1LOC:  DS      3       ; (4)
 1520	  40DA                          P2LOC:  DS      3       ; (5)
 1521	  40DD                          LILOC:  DS      3       ; (6)
 1522	  40E0                          CSLOC:  DS      3       ; (7)
 1523	                                ;******************************
 1524	                                ;<< EXTERNE OVLADANE FLAGY: >>
 1525	                                ;******************************
 1526	  40E3                          MODE:   DS      1       ;CRT-MODE
 1527	  40E4                          @IF1:   DS      1       ;OPEN FLAGS
 1528	  40E5                          @IF2:   DS      1
 1529	  40E6                          @OF1:   DS      1
 1530	  40E7                          @OF2:   DS      1
 1531	  40E8                          LINE:   DS      1       ;LINE
 1532	  40E9                          COLUM:  DS      1       ;COLUMN
 1533	  40EA                          RESL:   DS      1       ;RESERVE
 1534	  40EB                          UBYTE:  DS      1       ;USER BYTE (REALTIME..)
 1535	  40EC                          @SFLG:  DS      1       ;#0..NO STOP
 1536	  000A                          EXSER   EQU     $-MODE  ;EXTERNAL SERVICE
 1537	  40ED                          IOBYT:  DS      1       ;I/O CONTROL
 1538	  40EE                          MEMTOP: DS      2       ;MEMTOP "RAM"
 1539	                                
 1540	                                ;-------------------------
 1541	                                ; I/O BUFFERS
 1542	  40F0                                  DS      1       ;BLOCK LABEL
 1543	  40F1                          BOUT:   DS      255     ;BLOCK LENGHT
 1544	  41F0                          BOEND   EQU     $
 1545	                                ;
 1546	  41F0                                  DS      1       ; BLOCK LABELS
 1547	  41F1                          BIN:    DS      255     ;BLOCK  LENGHT
 1548	  42F0                          BIEND   EQU     $
 1549	                                ;
 1550	  42F0                          WRNM:   DS      11
 1551	                                ;=============================
 1552	                                        ORG     @R@ + 300H
 1553	                                ;=============================
 1554	                                ; "MAT" ARRAY
 1555	  4300                                  DS      0FFH
 1556	                                ;=============================
 1557	                                        ORG     @R@ + 400H
 1558	                                ;=============================
 1559	                                ; SYSTEM OR USER PROGRAMS
 1560	                                ;---->>>>>>>>>>>
 1561	                                ;
 1562	                                ;
 1563	                                ;
 1564	                                        END
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	S


Macros:

Symbols:
40AB 	@BT             40E4 	@IF1            40E5 	@IF2            
40E6 	@OF1            40E7 	@OF2            40AC 	@PED            
4000 	@R@             40EC 	@SFLG           4092 	ACSAV           
40C6 	ADRI            40C4 	ADRO            0002 	ALLINT          
067E 	ANAL            0680 	ANAL0           0667 	ASHEX           
014E 	ASIGN           0159 	ASS0            016B 	ASS1            
0175 	ASS2            0186 	ASS3            078F 	BAC@1           
0008 	BACK            077B 	BACK@           0002 	BATCH           
4094 	BCSAV           0218 	BEEP            04DC 	BEG             
0055 	BEGIO           0007 	BELL            42F0 	BIEND           
41F1 	BIN             40C2 	BNI             40C0 	BNO             
41F0 	BOEND           40F1 	BOUT            409E 	BRAD            
40A1 	BRAD2           40C3 	BTI             40C1 	BTO             
40A5 	CADR            003B 	CCPM            0001 	CCRT            
40A7 	CHAR            005E 	CI              028B 	CICO            
40CB 	CILOC           0678 	CIMIN           067B 	CINCR           
00D3 	CITB            0228 	CLCK1           022E 	CLCK2           
0224 	CLICK           00FC 	CMSK            0033 	CNTR1           
02DB 	CNTRP           05E4 	CO              04B8 	COA             
075A 	COADR           073B 	COEX            0756 	COEX1           
069C 	COINIT          04CF 	COLD            030D 	COLO            
40CE 	COLOC           40E9 	COLUM           0629 	COMPR           
06EE 	CONXT           00CB 	COTB            0000 	CPM             
000D 	CR              0791 	CR@             05DD 	CRLF            
06A4 	CRT             06DE 	CRTWR           40E0 	CSLOC           
01C6 	CSTS            01C0 	CSTS1           0561 	CTBL            
0010 	CTRLP           0011 	CTRLQ           0017 	CTRLW           
0000 	CTTY            00A0 	CURSOR          0003 	CUSE            
0646 	DADR            064C 	DADR0           0651 	DBYT            
0694 	DBYTE           4096 	DESAV           0433 	DI0             
0437 	DI1             044B 	DI2             0447 	DIA             
042E 	DISP            0643 	DNADR           40B1 	EADR            
04B5 	ECHO            001E 	EOL             076F 	EOL@            
0800 	EP2             059A 	EP2?            0013 	EQUAL           
FFFF 	ERAM            0162 	ERROR           001F 	ERS             
072A 	ERS@            0003 	ETX             05B7 	EX0             
05BA 	EX1             05CF 	EX3             05F8 	EX4             
04BF 	EXFLG           05B1 	EXPR            05F0 	EXPRM           
05AE 	EXPRO           0591 	EXROM           000A 	EXSER           
0481 	FI1             047A 	FILL            40A8 	FLAG            
40B5 	FNAME           40CA 	FND             0392 	GO@             
0374 	GO@BR           035B 	GOTO            05A0 	HBYTE           
0018 	HEIGHT          0624 	HILO            4098 	HLSAV           
001D 	HOME            0796 	HOME@           0009 	HT              
05A6 	HXASC           051E 	INIC            0554 	INJM@           
0558 	INJMP           40A3 	INST2           40A0 	INSTR           
40ED 	IOBYT           0023 	IOCHK           05EB 	IOCOM           
0604 	IODEF           061E 	IODEF1          018B 	IONEW           
002B 	IOSET           00B3 	IOTAB           40B4 	JOINT           
0265 	KBR             0294 	KBRD            0299 	KBRD1           
02A7 	KBRD2           01CE 	KBSTS           0243 	KEY             
0233 	KEYIN           40A4 	LASTC           05A4 	LBYTE           
'MONITOR SAPI-1  V4.1F'	MACRO-80 3.44	09-Dec-81	PAGE	S-1


0040 	LCRT            0018 	LCT             000A 	LF              
06FC 	LF@             079C 	LF@1            40DD 	LILOC           
40A9 	LIMIT           40E8 	LINE            0040 	LINOF           
0080 	LLPT            003F 	LMSK            0301 	LO              
00DB 	LOTB            07B9 	LPR             07C1 	LPR1            
07CA 	LPR2            0018 	LREST           0000 	LTTY            
00C0 	LUSE            000D 	LVER            04FA 	MEM1            
050A 	MEM2            065F 	MEMCK           40EE 	MEMTOP          
000B 	MINUS           0011 	MMODE           0490 	MO1             
40E3 	MODE            0100 	MONIT           0489 	MOVE            
4090 	MSTAK           0526 	NEXT            024E 	NXKEY           
023D 	NXLIN           40D7 	P1LOC           40DA 	P2LOC           
0030 	PA1             40C8 	PBITM           0032 	PC1             
409A 	PCSAV           00CF 	PMSK            02F5 	PO              
00EB 	POTB            0010 	PPTR            0000 	PTTY            
07D3 	PUN             0020 	PUSE1           0030 	PUSE2           
0192 	QUERY           001B 	QUES            40D1 	R1LOC           
40D4 	R2LOC           062F 	RADR            4000 	RAM             
0636 	RBYT            07E8 	RDR             40EA 	RESL            
0313 	RESTA           07AE 	RESX            0419 	RGNAM           
02E9 	RI              02F0 	RICOM           00E3 	RITB            
00F3 	RMSK            0713 	ROLL            0716 	ROLL1           
0004 	RPTR            4000 	RST1            032E 	RST10           
034A 	RST20           00CF 	RSTN            0000 	RTTY            
0008 	RUSE1           000C 	RUSE2           40AF 	SADR            
FFFF 	SP1             0000 	SP1A            0697 	SPACE           
0033 	SPCL            409C 	SPSAV           049D 	SU1             
04AC 	SU2             049A 	SUBS            40B3 	SUM             
0065 	TABCOD          0046 	TCPM            068A 	TEXT            
3800 	TVBEG           3DE7 	TVEND           40AD 	UADR            
40EB 	UBYTE           07A0 	UCMD            0012 	UDATA           
0010 	UMODE           0013 	URES            0011 	USTAT           
00F3 	VERS            0028 	WIDTH           42F0 	WRNM            
03A8 	X               03B6 	X0              03BE 	X1              
03C3 	X10             03D5 	X2              0400 	XDIS1           
03F6 	XDISP           0547 	XY              



No Fatal error(s)



@BT	 1492#
@IF1	 1527#
@IF2	 1528#
@OF1	 1529#
@OF2	 1530#
@PED	 1493#
@R@	   31#	  104	  108	  112	  116	  121	  126	  131	  878	  929	  931	 1462
	 1471	 1552	 1557
@SFLG	 1535#
ACSAV	  651	  666	  732	  733	 1476#
ADRI	 1508#
ADRO	 1507#
ALLINT	   84#
ANAL	 1039	 1196#
ANAL0	 1197#
ASHEX	  251	 1028	 1179#
ASIGN	  266#	  958
ASS0	  271#	  275
ASS1	  272	  283#
ASS2	  288#	  297
ASS3	  290	  298#
BAC@1	 1376	 1387#
BACK	   38#	 1264
BACK@	 1265	 1374#
BATCH	   56#
BCSAV	  734	  735	 1477#
BEEP	  280	  397#	 1271
BEG	  875#	  960
BEGIO	   43#	  881
BELL	   39#	 1270
BIEND	 1548#
BIN	 1547#
BNI	 1505#
BNO	 1503#
BOEND	 1544#
BOUT	 1543#
BRAD	  590	  635	 1483#
BRAD2	  644	 1485#
BTI	 1506#
BTO	 1504#
CADR	  128	 1240	 1251	 1334	 1488#
CCPM	  103	  133#
CCRT	   55#
CHAR	 1252	 1333	 1489#
CI	  140	  147#	  237	  827
CICO	  143	  489#
CILOC	  210	 1082	 1515#
CIMIN	  266	  688	  776	  814	 1193#

CINCR	  257	  625	  664	  779	  934	 1062	 1195#
CITB	  148	  209#
CLCK1	  407#	  408
CLCK2	  410#	  411
CLICK	  399	  405#
CMSK	   48#
CNTR1	  872	 1450#
CNTRP	  524	  526	  528	  530	  539#
CO	  141	  211	  215	  239	  830	  933	 1048	 1051#	 1162	 1165	 1210	 1217
COA	  107	  111	  115	  319	  330	  712	  768	  828#
COADR	 1254	 1283	 1297	 1328	 1347#	 1406
COEX	 1249	 1328#
COEX1	 1337	 1339#
COINIT	  883	 1239#
COLD	  100	  140	  236	  866#
COLO	  207	  211	  569#
COLOC	  208	 1516#
COLUM	 1286	 1289	 1390	 1532#
COMPR	  608	 1102#	 1322
CONXT	 1282	 1283#
COTB	  207#	 1052
CPM	   13#	   22	   94	   97	  227	  353	  497	  923
CR	   36#	  219	  632	  639	  704	 1047	 1126	 1200	 1258
CR@	 1259	 1389#	 1394
CRLF	  248	  649	  668	  927	 1047#	 1133
CRT	  207	  491	  570	 1247#
CRTWR	 1257	 1274#
CSLOC	  345	 1522#
CSTS	  145	  242	  349#	  774
CSTS1	  344#	  352
CTBL	  939	  958#	  982
CTRLP	  539	 1233#
CTRLQ	  471	 1232#
CTRLW	   42#	  469
CTTY	   54#
CURSOR	 1234#	 1338
CUSE	   57#
DADR	  252	 1134#
DADR0	 1134	 1154#
DBYT	  253	  722	  727	  813	 1155	 1160#	 1215
DBYTE	  752	 1215#
DESAV	  736	  737	 1478#
DI0	  749#	  775	  780
DI1	  751#	  757
DI2	  760#	  773
DIA	  754	  758#
DISP	  746#	  961
DNADR	  750	  821	 1133#
EADR	 1496#

ECHO	  284	  827#	 1024	 1195
EOL	 1231#	 1262
EOL@	 1263	 1318	 1366#	 1371
EP2	   29#	  885	  990	  992
EP2?	  884	  988	  992#
EQUAL	  110#	  283	  320	  624	  713	 1022
ERAM	   27#	  889
ERROR	  144	  145	  250	  279#	  295	  680	  942	  989	 1021	 1040	 1077
ERS	 1230#	 1241	 1268
ERS@	 1269	 1318#	 1323
ETX	   41#
EX0	 1024#	 1036
EX1	 1025#	 1060
EX3	 1029	 1038#	 1064
EX4	 1027	 1062#	 1067
EXFLG	  261	  848#
EXPR	  249	  746	  786	  798	 1022#	 1112
EXPRM	  628	 1058#	 1121
EXPRO	 1021#	 1044
EXROM	  959	  962	  965	  966	  967	  968	  969	  971	  972	  973	  975	  977
	  978	  979	  980	  988#
EXSER	  850	 1536#
FI1	  790#	  792	  880
FILL	  785#	  963
FLAG	  907	 1490#
FNAME	 1502#
FND	 1510#
GO@	  626	  633	  641	  649#
GO@BR	  627	  634#
GOTO	  624#	  964
HBYTE	 1005#	 1161
HEIGHT	 1226#	 1293	 1300
HILO	  254	  753	  769	  791	  805	 1097#
HLSAV	  577	  584	  659	  738	  739	 1479#
HOME	 1235#	 1266
HOME@	 1267	 1394#
HT	   37#
HXASC	  260	 1012#
INIC	  281	  913#
INJM@	  138	  941#
INJMP	  943#	 1055
INST2	  646	 1486#
INSTR	  637	 1484#
IOBYT	  118	  124	  303	  312	  349	  549	  556	  563	  882	 1053	 1537#
IOCHK	  118#	  143	  243
IOCOM	  149	  552	  566	 1054#
IODEF	  246	 1071#
IODEF1	 1076	 1086#
IONEW	  303#

IOSET	  123#	  144	  244
IOTAB	  196#	  268	  311
JOINT	 1501#
KBR	  209	  209	  213	  468#	  470	  487
KBRD	  468	  479	  495#	  544
KBRD1	  506#	  508
KBRD2	  516#	  518
KBSTS	  357#	  492
KEY	  441#	  448
KEYIN	  431#
LASTC	  905	 1487#
LBYTE	 1009#	 1164
LCRT	   73#
LCT	  940	  982#
LF	   40#	  219	 1049	 1260
LF@	 1261	 1291#
LF@1	 1294	 1396#
LILOC	  212	 1521#
LIMIT	 1491#
LINE	 1347	 1385	 1396	 1531#
LINOF	 1227#	 1228	 1305
LLPT	   74#
LMSK	   51#
LO	  142	  207	  241	  561#
LOTB	  211#	  562
LPR	  211	  569	 1331	 1420#
LPR1	 1426#	 1428
LPR2	 1432#	 1434
LREST	 1228#	 1312	 1319
LTTY	   72#
LUSE	   75#
LVER	  223#	  914
MEM1	  887#	  901
MEM2	  894	  902#
MEMCK	  245	 1170#
MEMTOP	  903	 1073	 1171	 1538#
MINUS	  106#	 1193
MMODE	   81#	  870
MO1	  802#	  806
MODE	  520	  541	  543	  856	 1274	 1329	 1335	 1526#	 1536
MONIT	   18#	  230
MOVE	  797#	  970
MSTAK	  876	  908	  920	 1475#
NEXT	  255	  620	  920#	  921	  938
NXKEY	  443	  445	  447#
NXLIN	  436#	  451
P1LOC	  215	 1519#
P2LOC	  216	 1520#
PA1	 1448#	 1458

PBITM	 1509#
PC1	 1449#	 1452
PCSAV	  617	  630	  657	  740	 1480#
PMSK	   50#
PO	  142	  240	  554#
POTB	  215#	  555
PPTR	   67#
PTTY	   66#
PUN	  215	 1443#
PUSE1	   68#
PUSE2	   69#
QUERY	  311#	  974
QUES	  114#	  279
R1LOC	  213	 1517#
R2LOC	  214	 1518#
RADR	  634	  643	  811	 1111#
RAM	   21#	  886
RBYT	  695	  817	 1119#
RDR	  213	 1452#	 1457
RESL	  481	 1295	 1299	 1380	 1395	 1400	 1533#
RESTA	  467	  576#	  930
RESX	 1408#	 1414
RGNAM	  665	  732#
RI	  141	  209	  238	  547#
RICOM	  550#	  559
RITB	  213#	  548
RMSK	   49#
ROLL	 1303#	 1315
ROLL1	 1305#	 1311
RPTR	   61#
RST1	 1466#
RST10	  592#	  614
RST20	  601	  610	  612#
RSTN	   32#	  638	  647
RTTY	   60#
RUSE1	   62#
RUSE2	   63#
SADR	 1495#
SP1	   11#	   87
SP1A	   12#	  834	 1138
SPACE	  256	  317	  708	  759	 1135	 1216#
SPCL	  128#	  247
SPSAV	  581	  655	  741	  909	 1481#
SU1	  812#	  822
SU2	  816	  819#
SUBS	  811#	  976
SUM	 1497#
TABCOD	  152#
TCPM	  136	  140#

TEXT	  258	  915	 1208#	 1212
TVBEG	   28#	 1229	 1239	 1356
TVEND	 1229#	 1321
UADR	 1494#
UBYTE	 1534#
UCMD	  478	  483	 1400#
UDATA	   79#
UMODE	   82#	  868
URES	   83#	  866
USTAT	   80#
VERS	  219#	  223	  913
WIDTH	 1225#	 1228	 1287	 1303	 1370	 1386	 1407
WRNM	 1550#
X	  619	  664#	  981
X0	  669#	  672
X1	  667	  673#
X10	  676#	  682
X2	  673	  684	  686#	  692	  706
XDIS1	  683	  713#
XDISP	  669	  686	  708#
XY	  259	  935#

	 1497#
TABCOD	  152#
TCPM

Ú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


ZPS | Technické prostředky | Programové vybavení | Dokumentace


8 bity / SAPI-1 / Programové vybavení / V4.x / LST MONITOR



SAPI.cz - web o československých osmibitech, zejména SAPI-1. Provozuje EC1045 od roku 2011
Za korekce češtiny dekuji: MELSOFTovi, Silliconovi, Martinu Lukáškovi a NOSTALCOMPovi

Když začínám blbnout z 8bitů tak se chodím léčit mezi otaku.
Animefest.cz