Ú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í / ZPS-2 / BASIMS V4.0




BASIMS může běžet pouze pod MONITORem V4.x a !!! MIKOSem V4.0F !!! a to kvůli tomu že přílepek pro podporu IMS-2 přes desku DPS-1 se přímo odkazuje na několik podprogramů v MIKOSu V4.0F.





Návod


    ROZSIRENI BASICU V4.0 PRO SPOLUPRACI S DESKOU DPS-1 PRO IMS-2 (IEEE 488)
    ========================================================================


	PREDEM BYCH RAD UPOZORNIL VSECHNY UZIVATELE, ZE JAK BYLO KONSTATOVANO
 V AR ING.SMUTNYM, DESKA DPS-1 MUZE PRACOVAT V SYSTEMU SAPI-1 POUZE JAKO
 RIDIC (CONTROLER) A NEMUZE BYT POUZITA JAKO STANDARTNI PERIFERIE PRO SBERNI-
CI IMS-2.
	PRI UVAHACH O SIRI SOFTWARE JSME POSTUPNE DOSPELI K NAZORU, ZE 90 %
UZIVATELU POSTACUJE DESKA I S TIMTO OMEZENIM, TZN. ZE JE SCHOPNA PRISTROJE 
S NI SPOLUPRACUJICI NAADRESOVAT, VYSLAT JIM POTREBNE PRIKAZY A PREVZIT OD 
NICH NAMERENA DATA. 


	PRIKAZY PRO IMS-2 V BASICU V4.0
	===============================
	ABYCHOM SE VYHNULI SLOZITYM UPRAVAM BASICU, NAHRADILI JSME KLICOVE 
SLOVO  E D I T  KLICOVYM SLOVEM  I M S #. (EDITACNI FUNKCE LZE TEDY NADALE
VOLAT POUZE POMOCI KLICOVEHO SLOVA  @  ).PRIKAZY PRO IMS-2 TEDY VYPADAJI TAKTO
 - KLICOVE SLOVO NASLEDOVANE PISMENEM FUNKCE A PRIPADNYMI PARAMETRY.

 1. -  IMS# N		-PROVEDE NULOVANI SBERNICE POMOCI SIGNALU IFC

 2. -  IMS# O ADR ; SEZNAM
			- O (OUTPUT)
			- ADR - V ROZSAHU 0-30 (PRI PREKROCENI MEZI JE HLA-
			  SENO SN ERROR)
			- SEZNAM - STEJNE JAKO V PRIKAZU PRINT

			- TENTO PRIKAZ ZPUSOBI NAADRESOVANI PRISTROJE S ADRE-
			  SOU (ADR) JAKO POSLUCHACE A VYSLANI POZADOVANEHO
			  PRIKAZU NEBO DAT

 3. -  IMS# T ADR	- TENTO PRIKAZ PROVEDE NAADRESOVANI PRISTRIJE S ADRE-
			  SOU (ADR) JAKO MLUVCIHO A DESKY DPS-1 JAKO POSLUCHACE

 4. -  IMS# I SEZNAM STRINGOVYCH PROMENNYCH
			- I  (INPUT)
			- SEZNAM  S T R I N G O V Y C H  PROMENNYCH     !!!
			  DATA VSTUPUJICI DO POCITACE JSOU NACITANA JAKO 
			  RETEZCE ZNAKU ASCII A LZE JE PROTO PRIRADIT POUZE
			  RETEZCOVYM PROMENNYM (POLIM RET. PROMENNYCH) A DAL-
			  SI ZPRACOVANI PROVEST V BASICU POMOCI RETEZCOVYCH
			  FUNKCI (JEDNA-LI SE O ZNAKOVE UDAJE) CI POMOCI
			  FUNKCE  V A L  (JEDNA-LI SE O CISELNE UDAJE)

	VSECHNY PRIKAZY KROME IMS# I  LZE POUZIT I V DIALOGOVEM REZIMU.


	PRIKLAD PROGRAMU PRO SPOLUPRACI SAPI-1 S VOLTMETREM M1T330 
	==========================================================

1000 REM IMS-2<==>M1T330 -ADR 3
1010 IMS# N
1020 IMS# O3;"R4D0E"  ! R4-AUT.VOLBA ROZSAHU,D0-BEZ FILTRU,E-1 MERENI
1030 IMS# T3
1040 IMS# I A$        ! VSTUP NAMERENEHO UDAJE
1050 PRINT A$


  PO RUN
V+1.2564E+1     - MERENE NAPETI JE 12.564 V


	MOZNE PROGRAMOVE CHYBY
	======================
  - JE NUTNE PRECIST Z PRISTROJE PRESNE STEJNY POCET UDAJU, KTERY JSME OD NEJ
    NAPROGRAMOVANIM VYZADALI
  - BUDEME-LI POZADOVAT VETSI POCET UDAJU  -  PROGRAM SE ZABLOKUJE !
  - BUDEME-LI VYZADOVAT MENSI POCET UDAJU  -  MUZE U NEKTERYCH PRISTROJU 
      DOJIT PRI DALSIM CTENI KE SPATNEMU PRIRAZENI DAT

  - POZOR NA SPRAVNE ADRESY
  - VYSLEME-LI PROGRAMOVACI PRIKAZY NA NEEXISTUJICI ADRESU SYSTEM SE SICE NE-
    ZABLOKUJE ALE TAKE SE NIC NEDOZVIME
  - BUDEMELI VYZADOVAT DATA OD NEEXISTUJICIHO MLUVCIHO - SYSTEM SE ZABLOKUJE !



Část ovladače pro IMS-2 z dokumentace


	MACRO-80 3.44	09-Dec-81	PAGE	1


    1	                                ;##############################
    2	                                ;# S B E R N I C E  I M S - 2 #
    3	                                ;##############################
    4	                                        ;
    5	  0030                          IMSPA   EQU 30H         ;VST.RIDICI PORT A
    6	  0031                          IMSPB   EQU 31H         ;VST.RIDICI PORT B
    7	  0032                          IMSPC   EQU 32H         ;VYST.RIDICI PORT C
    8	  0033                          IMSCW   EQU 33H         ;RID.REG.OBVODU PRO RIZENI
    9	  0034                          DATPA   EQU 34H         ;VST.DATOV7 PORT A
   10	  0035                          DATPB   EQU 35H         ;VYST.DATOVY PORT B
   11	  0036                          DATPC   EQU 36H         ;STAV.REG.,PORT C
   12	  0037                          DATCW   EQU 37H         ;RID.REG.OBVODU QRO DATA
   13	  000D                          CR      EQU 0DH         ;CR
   14	  000A                          LF      EQU 0AH         ;LF
   15	  0003                          EXT     EQU 03H         ;KONEC DAT
   16	  3000                          INIPR   EQU 3000H       ;INICIAL.PRER.SYSTEMU
   17	  4012                          ADRPR   EQU 4012H       ;ADR/SKOK.INSTR.DO PODPR.
   18	                                                        ;OBSLUHY PRERUSENI
   19	  0F98                          TIME    EQU 0F98H       ;CEKANI !! PRIMI SKOK DO MIKOS V4.0F !!
   20	  51BF                          VYRAZ   EQU 51BFH       ;VYHODN.VYRAZU V BASICU
   21	  47D1                          SNERR   EQU 47D1H       ;SN CHYBA
   22	  50AA                          READ    EQU 50AAH       ;ULOZENI PRECTENICH HODNOT
   23	  4C56                          INT     EQU 4C56H       ;PREVOD NA INTEGER
   24	  4F97                          PRINT   EQU 4F97H       ;VYSLE ZADANE HODNOTY
   25	                                        ;
   26	                                ;HLAVNI PROGRAM
   27	                                ;--------------
   28	                                        ;
   29	                                        ORG 6102H
   30	                                        ;
   31	  6102    7E                    IMSHL:  MOV A,M
   32	  6103    FE 4F                         CPI 'O          ;VYSTUP NA IMS
   33	  6105    CA 611A                       JZ VYST
   34	  6108    FE 54                         CPI 'T          ;ADR.PRO VSTUP Z IMS2
   35	  610A    CA 6148                       JZ ADRTA
   36	  610D    FE 49                         CPI 'I          ;VSTUP Z IMS
   37	  610F    CA 6159                       JZ VSTUP
   38	  6112    FE 4E                         CPI 'N          ;NULOVANI
   39	  6114    CA 6185                       JZ NULO
   40	  6117    C3 47D1                       JMP SNERR       ;SYNT.CHYBA
   41	                                        ;
   42	                                ;VYSTUP NA IMS-2
   43	                                ;---------------
   44	                                        ;
   45	  611A    32 60C6               VYST:   STA 60C6H       ;IOBIT
   46	  611D    23                            INX H
   47	  611E    CD 51BF                       CALL VYRAZ
   48	  6121    E5                            PUSH H
   49	  6122    CD 4C56                       CALL INT
   50	  6125    4B                            MOV C,E
   51	  6126    CD 6199                       CALL IMS+3      ;OUADR
   52	                                        ;---------
   53	  6129    E1                            POP H
   54	  612A    DA 47D1                       JC SNERR        ;CHYBA
   55	  612D    7E                            MOV A,M
   56	  612E    FE 00                         CPI 0
	MACRO-80 3.44	09-Dec-81	PAGE	1-1


   57	  6130    C8                            RZ
   58	  6131    FE 3B                         CPI ';'
   59	  6133    C2 47D1                       JNZ SNERR       ;SYNT.CHYBA
   60	  6136    23                            INX H
   61	  6137    7E                            MOV A,M
   62	  6138    FE 00                         CPI 0
   63	  613A    C3 4F97                       JMP PRINT       ;VYSLE ZADANE ZNAKY
   64	                                ;ODSKOK Z BASICU
   65	                                        ;
   66	  613D    FE 42                         CPI 'B'
   67	  613F    C8                            RZ
   68	  6140    FE 4F                         CPI 'O'
   69	  6142    CA 619F                       JZ IMS+9        ;OUIMS
   70	                                        ;-------
   71	  6145    C3 449C                       JMP 449CH
   72	                                ;ADRESOVANI PRO VSTUP Z IMS-2
   73	                                ;----------------------------
   74	                                        ;
   75	  6148    23                    ADRTA:  INX H
   76	  6149    CD 51BF                       CALL VYRAZ
   77	  614C    E5                            PUSH H
   78	  614D    CD 4C56                       CALL INT
   79	  6150    4B                            MOV C,E
   80	  6151    CD 619C                       CALL IMS+6      ;INADR
   81	                                        ;---------
   82	  6154    DA 47D1                       JC SNERR        ;CHYBA
   83	  6157    E1                            POP H
   84	  6158    C9                            RET
   85	                                        ;
   86	                                ;VSTUP Z IMS-2
   87	                                ;-------------
   88	                                        ;
   89	  6159                          VSTUP:
   90	  6159    CD 618E                       CALL MEZ        ;VYNACHAT MEZERY
   91	  615C    FE 00                         CPI 0
   92	  615E    CA 47D1                       JZ SNERR        ;CHYBA
   93	  6161    E5                            PUSH H
   94	  6162    21 6009                       LXI H,6009H     ;ADR.BUFFERU PRO VSTUP.RETEZEC
   95	  6165    06 01                         MVI B,1
   96	  6167    CD 61A2               VS1:    CALL IMS+12     ;INIMS
   97	                                        ;----------
   98	  616A    FE 2C                         CPI ',          ;KONEC DAT (,)
   99	  616C    CA 617B                       JZ VS2
  100	  616F    77                            MOV M,A
  101	  6170    04                            INR B
  102	  6171    23                            INX H
  103	  6172    79                            MOV A,C         ;V REG. C JE 'EXT'
  104	  6173    FE 03                         CPI EXT         ;KONEC DAT (EOI)
  105	  6175    CA 617B                       JZ VS2
  106	  6178    C3 6167                       JMP VS1
  107	  617B    36 00                 VS2:    MVI M,0
  108	  617D    21 6008                       LXI H,6008H
  109	  6180    36 2C                         MVI M,',        ;CARKA
  110	  6182    C3 50AA                       JMP READ        ;ULOZENI PRECTEN.HODNOTY
  111	                                        ;
  112	                                ;NULOVANI
	MACRO-80 3.44	09-Dec-81	PAGE	1-2


  113	                                ;--------
  114	                                        ;
  115	  6185    CD 618E               NULO:   CALL MEZ        ;MEZERY
  116	  6188    E5                            PUSH H
  117	  6189    CD 6196                       CALL IMS        ;NULOVANI IMS-2
  118	                                        ;---------
  119	  618C    E1                            POP H
  120	  618D    C9                            RET
  121	                                        ;
  122	                                ;VYNECHA MEZERY
  123	                                        ;
  124	  618E    23                    MEZ:    INX H
  125	  618F    7E                            MOV A,M
  126	  6190    FE 20                         CPI ' '
  127	  6192    C0                            RNZ
  128	  6193    C3 618E                       JMP MEZ
  129	                                        ;
  130	                                ;IMS PRO BASIC
  131	                                ;=============
  132	  6196    C3 6298               IMS:    JMP KONVS       ;NULOVANI IMS-2
  133	  6199    C3 61EF                       JMP OUADR       ;ADRESOVANI PRO VSTUP <C>
  134	  619C    C3 61FE                       JMP INADR       ;ADRESOVANI PRO VYSTUP <C>
  135	  619F    C3 61C1                       JMP OUIMS       ;VSTUP NA IMS-2 <C>
  136	  61A2    C3 61D6                       JMP INIMS       ;VYSTUP Z IMS-2 <A>
  137	                                        ;
  138	                                ;INICIALIZACE
  139	                                ;------------
  140	                                        ;
  141	  61A5    32 6091               INIT:   STA 6091H
  142	  61A8    3E C3                         MVI A,0C3H      ;KOD INSTR.JMP
  143	  61AA    32 4012                       STA ADRPR
  144	  61AD    21 62C2                       LXI H,PRER      ;ADRESA.PODPR.OBSL.PRERUSENI
  145	  61B0    22 4013                       SHLD ADRPR+1
  146	                                        ;
  147	  61B3    3E 92                         MVI A,10010010B ;NASTAVENI RID.PORTU
  148	  61B5    D3 33                         OUT IMSCW
  149	  61B7    3E 0B                         MVI A,00001011B ;NAHODI CEN
  150	  61B9    D3 33                         OUT IMSCW
  151	  61BB    3A 6091                       LDA 6091H
  152	  61BE    C3 440B                       JMP 440BH
  153	                                        ;
  154	                                ;VYSTUP NA IMS-2 (POSILANY ZNAK V REG.C
  155	                                ;------------------------------------------
  156	                                        ;
  157	  61C1    79                    OUIMS:  MOV A,C
  158	  61C2    CD 624F                       CALL OUTDAT     ;POSILA DATA NA IMS
  159	  61C5    DA 47D1                       JC SNERR        ;CHYBA
  160	  61C8    79                            MOV A,C         ;POSLANY ZNAK
  161	  61C9    FE 0A                         CPI LF          ;KONEC PRIKAZU
  162	  61CB    37                            STC
  163	  61CC    3F                            CMC             ;CY=0
  164	  61CD    C0                            RNZ
  165	                                        ;
  166	  61CE    CD 62AD                       CALL KONDA      ;KONEC VYSTUP.DAT
  167	  61D1    CD 628A                       CALL KONVY      ;KONEC NYSTUPU
  168	  61D4    B7                            ORA A           ;CY=0
	MACRO-80 3.44	09-Dec-81	PAGE	1-3


  169	  61D5    C9                            RET
  170	                                        ;
  171	                                ;VSTUP Z IMS-2 (CTENY ZNAK DO REG.A)
  172	                                ;-----------------------------------
  173	                                        ;
  174	  61D6    CD 6268               INIMS:  CALL INDAT      ;VSTUP DAT Z IMS-2
  175	  61D9    E6 7F                         ANI 7FH         ;NULUJE 8.BIT
  176	  61DB    4F                            MOV C,A         ;PRECTENY ZNAK
  177	  61DC    3E 1E                         MVI A,30
  178	  61DE    3D                    CEK:    DCR A           ;CEKANI
  179	  61DF    C2 61DE                       JNZ CEK
  180	  61E2    DB 30                         IN IMSPA
  181	  61E4    E6 04                         ANI 4           ;TEST EIO
  182	  61E6    79                            MOV A,C
  183	  61E7    C8                            RZ
  184	                                        ;
  185	  61E8    CD 6298                       CALL KONVS      ;KONEC VSTUP.DAT
  186	  61EB    79                            MOV A,C
  187	  61EC    0E 03                         MVI C,EXT       ;KONEC DAT
  188	  61EE    C9                            RET
  189	                                        ;
  190	                                ;ADRESOVANI POSLUCHACE  (BIN.ADR.PRISTROJE V REG.C)
  191	                                ;--------------------------------------------------
  192	                                        ;
  193	  61EF    CD 621F               OUADR:  CALL INITA      ;INICIAL.MLUVCIHO
  194	  61F2    16 20                         MVI D,20H       ;KOD POSLUCHACE
  195	  61F4    CD 6228                       CALL ADROU      ;VYSLANI ADRESY
  196	  61F7    D8                            RC              ;PRI CHYBE
  197	  61F8    3E 06                         MVI A,6         ;SHODI ATN
  198	  61FA    D3 33                         OUT IMSCW
  199	  61FC    B7                            ORA A           ;CY=0
  200	  61FD    C9                            RET
  201	                                        ;
  202	                                ;ADRESOVANI MLUVCIHO    (BIN.ADR.PRISTROJE V REG.C)
  203	                                ;------------------------------------------------
  204	                                        ;
  205	  61FE    CD 621F               INADR:  CALL INITA      ;INICIAL.MLUVCIHO
  206	  6201    16 40                         MVI D,40H       ;KOD MLUVCIHO
  207	  6203    CD 6233                       CALL ADRIN      ;VYSLANI ADRESY
  208	  6206    D8                            RC              ;PRI CHYBE
  209	  6207    CD 6210                       CALL INILI      ;INICIAL.POSUCHACE
  210	  620A    3E 06                         MVI A,6         ;SHODI ATN
  211	  620C    D3 33                         OUT IMSCW
  212	  620E    B7                            ORA A           ;CY=0
  213	  620F    C9                            RET
  214	                                        ;
  215	                                ;INICIALIZACE POSLUCHACE
  216	                                        ;
  217	  6210    3E 0F                 INILI:  MVI A,00001111B ;UVOLNENI SIG.NDAC
  218	  6212    D3 33                         OUT IMSCW
  219	  6214    3E B0                         MVI A,10110000B ;NASTAVENI DAT PORTU
  220	  6216    D3 37                         OUT DATCW
  221	  6218    3E 03                         MVI A,00000011B ;ZABLOKOVANI SIGNALU DAV
  222	  621A    D3 37                         OUT DATCW
  223	  621C    DB 34                         IN DATPA
  224	  621E    C9                            RET
	MACRO-80 3.44	09-Dec-81	PAGE	1-4


  225	                                        ;
  226	                                ;INICIALIZACE MLUVCIHO
  227	                                        ;
  228	  621F    3E 0E                 INITA:  MVI A,00001110B ;ZABLOKOVANI SIG.NDAC
  229	  6221    D3 33                         OUT IMSCW
  230	  6223    3E 94                         MVI A,10010100B ;STROB.VYST.DAT.PORTU B
  231	  6225    D3 37                         OUT DATCW
  232	  6227    C9                            RET
  233	                                        ;
  234	                                ;VYSTUP ADRESY
  235	                                        ;
  236	  6228    79                    ADROU:  MOV A,C         ;KONTROLA ADRESY
  237	  6229    FE 1F                         CPI 1FH
  238	  622B    3F                            CMC
  239	  622C    DC 627C                       CC ERRAO        ;CHYBA ADRESY
  240	  622F    D8                            RC              ;PRI CHYBE
  241	  6230    C3 623B                       JMP ADR
  242	  6233    79                    ADRIN:  MOV A,C         ;KONTROLA ADRESY
  243	  6234    FE 1F                         CPI 1FH
  244	  6236    3F                            CMC
  245	  6237    DC 6283                       CC ERRAI        ;CHIBA ADRSY
  246	  623A    D8                            RC
  247	                                        ;
  248	  623B    3E 07                 ADR:    MVI A,7H        ;NAHODI ATV
  249	  623D    D3 33                         OUT IMSCW
  250	  623F    3E 03                         MVI A,03H       ;NAHODI REN
  251	  6241    D3 33                         OUT IMSCW
  252	  6243    3E 01                         MVI A,1         ;CAS T8
  253	  6245    CD 0F98                       CALL TIME
  254	  6248    79                            MOV A,C         ;ADR.PREV.DO.BINARU
  255	  6249    B2                            ORA D           ;PRIDA ADR.KE KODU
  256	  624A    CD 624F                       CALL OUTDAT     ;VYSTUP 1 BYTU
  257	  624D    D8                            RC              ;PRI CHYBE
  258	  624E    C9                            RET
  259	                                        ;
  260	                                ;VYSTUP 1 BYTU DAT NA IMS-2
  261	                                        ;
  262	  624F    57                    OUTDAT: MOV D,A
  263	  6250    DB 31                 OU:     IN IMSPB        ;VYST.RIDICI PORT B
  264	  6252    E6 60                         ANI 60H
  265	  6254    CC 6272                       CZ ERRLI        ;CHYBA PRI NAHOZ.NDAT
  266	  6257    D8                            RC              ;PRI CHYBE
  267	  6258    FE 40                         CPI 40H
  268	  625A    C2 6250                       JNZ OU          ;SKOK PRI SHOZEN.NDAC
  269	  625D    7A                            MOV A,D
  270	  625E    D3 35                         OUT DATPB       ;VYST.DAYOVY. PORT B
  271	  6260    DB 36                 OU1:    IN DATPC        ;STAV.REG.,PORTU C
  272	  6262    E6 02                         ANI 2
  273	  6264    CA 6260                       JZ OU1
  274	  6267    C9                            RET
  275	                                        ;
  276	                                ;VSTUP 1 BYTE DAT Z IMS-2
  277	                                        ;
  278	  6268    DB 36                 INDAT:  IN DATPC        ;STAV.REG.,PORTU C
  279	  626A    E6 20                         ANI 20H         ;TEST IBFA
  280	  626C    CA 6268                       JZ INDAT
	MACRO-80 3.44	09-Dec-81	PAGE	1-5


  281	  626F    DB 34                         IN DATPA        ;VSTUP.DAT.PORT A
  282	  6271    C9                            RET
  283	                                        ;
  284	                                ;ULOZENI CISLA CHYBY DO REG.A
  285	                                        ;
  286	  6272    CD 628A               ERRLI:  CALL KONVY      ;KONEC VYSTUPU
  287	  6275    CD 6298                       CALL KONVS      ;KONEC VSTUP.DAT
  288	  6278    3E 01                         MVI A,1         ;CHYBA ADRESY
  289	  627A    37                            STC
  290	  627B    C9                            RET
  291	                                        ;
  292	  627C    CD 628A               ERRAO:  CALL KONVY      ;KONEC VYSTUPU
  293	  627F    3E 00                         MVI A,0         ;CHYBA PRISTROJE
  294	  6281    37                            STC
  295	  6282    C9                            RET
  296	                                        ;
  297	  6283    CD 6298               ERRAI:  CALL KONVS      ;KONEC VSTUP.DAT
  298	  6286    3E 00                         MVI A,0         ;CHYBA PRISTROJE
  299	  6288    37                            STC
  300	  6289    C9                            RET
  301	                                        ;
  302	                                ;KONEC VYSTUPU
  303	                                        ;
  304	  628A    3E 07                 KONVY:  MVI A,7         ;NAHODI ATN
  305	  628C    D3 33                         OUT IMSCW
  306	  628E    3E 3F                         MVI A,3FH       ;KOD UNL
  307	  6290    CD 624F                       CALL OUTDAT
  308	  6293    3E 06                         MVI A,6         ;SHODI ATN
  309	  6295    D3 33                         OUT IMSCW
  310	  6297    C9                            RET
  311	                                        ;
  312	                                ;KONEC VYSTUPNICH DAT
  313	                                        ;
  314	  6298    CD 621F               KONVS:  CALL INITA      ;INICIAL.MLUVCIHO
  315	  629B    3E 02                         MVI A,2         ;SHODI REN
  316	  629D    D3 33                         OUT IMSCW
  317	  629F    3E 01                         MVI A,1         ;NAHODI IFC
  318	  62A1    D3 33                         OUT IMSCW
  319	  62A3    3E 01                         MVI A,1
  320	  62A5    CD 0F98                       CALL TIME       ;CEKANI
  321	  62A8    3E 00                         MVI A,0
  322	  62AA    D3 33                         OUT IMSCW
  323	  62AC    C9                            RET
  324	                                        ;
  325	                                ;KONEC VYSTUPNICH DAT
  326	                                        ;
  327	  62AD    3E 05                 KONDA:  MVI A,5H        ;NAHODI EOI
  328	  62AF    D3 33                         OUT IMSCW
  329	  62B1    3E 0A                         MVI A,10
  330	  62B3    CD 0F98                       CALL TIME
  331	  62B6    3E 0A                         MVI A,LF        ;VYSTUP LF
  332	  62B8    CD 624F                       CALL OUTDAT
  333	  62BB    3E 04                         MVI A,4H        ;SHODI EOI
  334	  62BD    D3 33                         OUT IMSCW
  335	  62BF    C9                            RET
  336	                                        ;
	MACRO-80 3.44	09-Dec-81	PAGE	1-6


  337	  62C0                          ULSP:   DS 2            ;UKLADA REG.SP
  338	                                
  339	  62C2                          PRER:	                                

Dále následuje obsluha přerušení, která vyžívá tyto podprogramy START, NULBF, STOP a WOB z MIKOSu V4.0F. Ovladač vyžívá z MIKOSu V4.0F podprogram TIME.

Ovladače se liší v podprogramech VSTUP a INIMS.



Část ovladače pro IMS-2 který je součástí BASIMS


	MACRO-80 3.44	09-Dec-81	PAGE	1


    1	                                ;##############################
    2	                                ;# S B E R N I C E  I M S - 2 #
    3	                                ;##############################
    4	                                        ;
    5	  0030                          IMSPA   EQU 30H         ;VST.RIDICI PORT A
    6	  0031                          IMSPB   EQU 31H         ;VST.RIDICI PORT B
    7	  0032                          IMSPC   EQU 32H         ;VYST.RIDICI PORT C
    8	  0033                          IMSCW   EQU 33H         ;RID.REG.OBVODU PRO RIZENI
    9	  0034                          DATPA   EQU 34H         ;VST.DATOV7 PORT A
   10	  0035                          DATPB   EQU 35H         ;VYST.DATOVY PORT B
   11	  0036                          DATPC   EQU 36H         ;STAV.REG.,PORT C
   12	  0037                          DATCW   EQU 37H         ;RID.REG.OBVODU QRO DATA
   13	  000D                          CR      EQU 0DH         ;CR
   14	  000A                          LF      EQU 0AH         ;LF
   15	  0003                          EXT     EQU 03H         ;KONEC DAT
   16	  3000                          INIPR   EQU 3000H       ;INICIAL.PRER.SYSTEMU
   17	  4012                          ADRPR   EQU 4012H       ;ADR/SKOK.INSTR.DO PODPR.
   18	                                                        ;OBSLUHY PRERUSENI
   19	  0F98                          TIME    EQU 0F98H       ;CEKANI !! PRIMI SKOK DO MIKOS V4.0F !!
   20	  51BF                          VYRAZ   EQU 51BFH       ;VYHODN.VYRAZU V BASICU
   21	  47D1                          SNERR   EQU 47D1H       ;SN CHYBA
   22	  50AA                          READ    EQU 50AAH       ;ULOZENI PRECTENICH HODNOT
   23	  4C56                          INT     EQU 4C56H       ;PREVOD NA INTEGER
   24	  4F97                          PRINT   EQU 4F97H       ;VYSLE ZADANE HODNOTY
   25	                                        ;
   26	                                ;HLAVNI PROGRAM
   27	                                ;--------------
   28	                                        ;
   29	                                        ORG 6102H
   30	                                        ;
   31	  6102    7E                    IMSHL:  MOV A,M
   32	  6103    FE 4F                         CPI 'O          ;VYSTUP NA IMS
   33	  6105    CA 611A                       JZ VYST
   34	  6108    FE 54                         CPI 'T          ;ADR.PRO VSTUP Z IMS2
   35	  610A    CA 6148                       JZ ADRTA
   36	  610D    FE 49                         CPI 'I          ;VSTUP Z IMS
   37	  610F    CA 6159                       JZ VSTUP
   38	  6112    FE 4E                         CPI 'N          ;NULOVANI
   39	  6114    CA 6191                       JZ NULO
   40	  6117    C3 47D1                       JMP SNERR       ;SYNT.CHYBA
   41	                                        ;
   42	                                ;VYSTUP NA IMS-2
   43	                                ;---------------
   44	                                        ;
   45	  611A    32 60C6               VYST:   STA 60C6H       ;IOBIT
   46	  611D    23                            INX H
   47	  611E    CD 51BF                       CALL VYRAZ
   48	  6121    E5                            PUSH H
   49	  6122    CD 4C56                       CALL INT
   50	  6125    4B                            MOV C,E
   51	  6126    CD 61A5                       CALL IMS+3      ;OUADR
   52	                                        ;---------
   53	  6129    E1                            POP H
   54	  612A    DA 47D1                       JC SNERR        ;CHYBA
   55	  612D    7E                            MOV A,M
   56	  612E    FE 00                         CPI 0
	MACRO-80 3.44	09-Dec-81	PAGE	1-1


   57	  6130    C8                            RZ
   58	  6131    FE 3B                         CPI ';'
   59	  6133    C2 47D1                       JNZ SNERR       ;SYNT.CHYBA
   60	  6136    23                            INX H
   61	  6137    7E                            MOV A,M
   62	  6138    FE 00                         CPI 0
   63	  613A    C3 4F97                       JMP PRINT       ;VYSLE ZADANE ZNAKY
   64	                                ;ODSKOK Z BASICU
   65	                                        ;
   66	  613D    FE 42                         CPI 'B'
   67	  613F    C8                            RZ
   68	  6140    FE 4F                         CPI 'O'
   69	  6142    CA 61AB                       JZ IMS+9        ;OUIMS
   70	                                        ;-------
   71	  6145    C3 449C                       JMP 449CH
   72	                                ;ADRESOVANI PRO VSTUP Z IMS-2
   73	                                ;----------------------------
   74	                                        ;
   75	  6148    23                    ADRTA:  INX H
   76	  6149    CD 51BF                       CALL VYRAZ
   77	  614C    E5                            PUSH H
   78	  614D    CD 4C56                       CALL INT
   79	  6150    4B                            MOV C,E
   80	  6151    CD 61A8                       CALL IMS+6      ;INADR
   81	                                        ;---------
   82	  6154    DA 47D1                       JC SNERR        ;CHYBA
   83	  6157    E1                            POP H
   84	  6158    C9                            RET
   85	                                        ;
   86	                                ;VSTUP Z IMS-2
   87	                                ;-------------
   88	                                        ;
   89	  6159                          VSTUP:
   90	  6159    CD 619A                       CALL MEZ        ;VYNACHAT MEZERY
   91	  615C    FE 00                         CPI 0
   92	  615E    CA 47D1                       JZ SNERR        ;CHYBA
   93	  6161    E5                            PUSH H
   94	  6162    21 6009                       LXI H,6009H     ;ADR.BUFFERU PRO VSTUP.RETEZEC
   95	  6165    3E 0C                         MVI A,0CH       ;NASTAV ZS A POP
   96	  6167    D3 33                         OUT IMSCW
   97	  6169    3E 0D                         MVI A,0DH
   98	  616B    D3 33                         OUT IMSCW
   99	  616D    3E 0C                         MVI A,0CH
  100	  616F    D3 33                         OUT IMSCW
  101	  6171    06 01                         MVI B,1
  102	  6173    CD 61AE               VS1:    CALL IMS+12     ;INIMS
  103	                                        ;----------
  104	  6176    FE 2C                         CPI ',          ;KONEC DAT (,)
  105	  6178    CA 6187                       JZ VS2
  106	  617B    77                            MOV M,A
  107	  617C    04                            INR B
  108	  617D    23                            INX H
  109	  617E    79                            MOV A,C         ;V REG. C JE 'EXT'
  110	  617F    FE 03                         CPI EXT         ;KONEC DAT (EOI)
  111	  6181    CA 6187                       JZ VS2
  112	  6184    C3 6173                       JMP VS1
	MACRO-80 3.44	09-Dec-81	PAGE	1-2


  113	  6187    36 00                 VS2:    MVI M,0
  114	  6189    21 6008                       LXI H,6008H
  115	  618C    36 2C                         MVI M,',        ;CARKA
  116	  618E    C3 50AA                       JMP READ        ;ULOZENI PRECTEN.HODNOTY
  117	                                        ;
  118	                                ;NULOVANI
  119	                                ;--------
  120	                                        ;
  121	  6191    CD 619A               NULO:   CALL MEZ        ;MEZERY
  122	  6194    E5                            PUSH H
  123	  6195    CD 61A2                       CALL IMS        ;NULOVANI IMS-2
  124	                                        ;---------
  125	  6198    E1                            POP H
  126	  6199    C9                            RET
  127	                                        ;
  128	                                ;VYNECHA MEZERY
  129	                                        ;
  130	  619A    23                    MEZ:    INX H
  131	  619B    7E                            MOV A,M
  132	  619C    FE 20                         CPI ' '
  133	  619E    C0                            RNZ
  134	  619F    C3 619A                       JMP MEZ
  135	                                        ;
  136	                                ;IMS PRO BASIC
  137	                                ;=============
  138	  61A2    C3 62A4               IMS:    JMP KONVS       ;NULOVANI IMS-2
  139	  61A5    C3 61FB                       JMP OUADR       ;ADRESOVANI PRO VSTUP <C>
  140	  61A8    C3 620A                       JMP INADR       ;ADRESOVANI PRO VYSTUP <C>
  141	  61AB    C3 61CD                       JMP OUIMS       ;VSTUP NA IMS-2 <C>
  142	  61AE    C3 61E2                       JMP INIMS       ;VYSTUP Z IMS-2 <A>
  143	                                        ;
  144	                                ;INICIALIZACE
  145	                                ;------------
  146	                                        ;
  147	  61B1    32 6091               INIT:   STA 6091H
  148	  61B4    3E C3                         MVI A,0C3H      ;KOD INSTR.JMP
  149	  61B6    32 4012                       STA ADRPR
  150	  61B9    21 62CE                       LXI H,PRER      ;ADRESA.PODPR.OBSL.PRERUSENI
  151	  61BC    22 4013                       SHLD ADRPR+1
  152	                                        ;
  153	  61BF    3E 92                         MVI A,10010010B ;NASTAVENI RID.PORTU
  154	  61C1    D3 33                         OUT IMSCW
  155	  61C3    3E 0B                         MVI A,00001011B ;NAHODI CEN
  156	  61C5    D3 33                         OUT IMSCW
  157	  61C7    3A 6091                       LDA 6091H
  158	  61CA    C3 440B                       JMP 440BH
  159	                                        ;
  160	                                ;VYSTUP NA IMS-2 (POSILANY ZNAK V REG.C
  161	                                ;------------------------------------------
  162	                                        ;
  163	  61CD    79                    OUIMS:  MOV A,C
  164	  61CE    CD 625B                       CALL OUTDAT     ;POSILA DATA NA IMS
  165	  61D1    DA 47D1                       JC SNERR        ;CHYBA
  166	  61D4    79                            MOV A,C         ;POSLANY ZNAK
  167	  61D5    FE 0A                         CPI LF          ;KONEC PRIKAZU
  168	  61D7    37                            STC
	MACRO-80 3.44	09-Dec-81	PAGE	1-3


  169	  61D8    3F                            CMC             ;CY=0
  170	  61D9    C0                            RNZ
  171	                                        ;
  172	  61DA    CD 62B9                       CALL KONDA      ;KONEC VYSTUP.DAT
  173	  61DD    CD 6296                       CALL KONVY      ;KONEC NYSTUPU
  174	  61E0    B7                            ORA A           ;CY=0
  175	  61E1    C9                            RET
  176	                                        ;
  177	                                ;VSTUP Z IMS-2 (CTENY ZNAK DO REG.A)
  178	                                ;-----------------------------------
  179	                                        ;
  180	  61E2    CD 6274               INIMS:  CALL INDAT      ;VSTUP DAT Z IMS-2
  181	  61E5    E6 7F                         ANI 7FH         ;NULUJE 8.BIT
  182	  61E7    4F                            MOV C,A         ;PRECTENY ZNAK
  183	  61E8    3E 1E                         MVI A,30
  184	  61EA    3D                    CEK:    DCR A           ;CEKANI
  185	  61EB    C2 61EA                       JNZ CEK
  186	  61EE    DB 30                         IN IMSPA
  187	  61F0    E6 80                         ANI 80H         ;TEST ZS
  188	  61F2    79                            MOV A,C
  189	  61F3    C8                            RZ
  190	                                        ;
  191	  61F4    CD 62A4                       CALL KONVS      ;KONEC VSTUP.DAT
  192	  61F7    79                            MOV A,C
  193	  61F8    0E 03                         MVI C,EXT       ;KONEC DAT
  194	  61FA    C9                            RET
  195	                                        ;
  196	                                ;ADRESOVANI POSLUCHACE  (BIN.ADR.PRISTROJE V REG.C)
  197	                                ;--------------------------------------------------
  198	                                        ;
  199	  61FB    CD 622B               OUADR:  CALL INITA      ;INICIAL.MLUVCIHO
  200	  61FE    16 20                         MVI D,20H       ;KOD POSLUCHACE
  201	  6200    CD 6234                       CALL ADROU      ;VYSLANI ADRESY
  202	  6203    D8                            RC              ;PRI CHYBE
  203	  6204    3E 06                         MVI A,6         ;SHODI ATN
  204	  6206    D3 33                         OUT IMSCW
  205	  6208    B7                            ORA A           ;CY=0
  206	  6209    C9                            RET
  207	                                        ;
  208	                                ;ADRESOVANI MLUVCIHO    (BIN.ADR.PRISTROJE V REG.C)
  209	                                ;------------------------------------------------
  210	                                        ;
  211	  620A    CD 622B               INADR:  CALL INITA      ;INICIAL.MLUVCIHO
  212	  620D    16 40                         MVI D,40H       ;KOD MLUVCIHO
  213	  620F    CD 623F                       CALL ADRIN      ;VYSLANI ADRESY
  214	  6212    D8                            RC              ;PRI CHYBE
  215	  6213    CD 621C                       CALL INILI      ;INICIAL.POSUCHACE
  216	  6216    3E 06                         MVI A,6         ;SHODI ATN
  217	  6218    D3 33                         OUT IMSCW
  218	  621A    B7                            ORA A           ;CY=0
  219	  621B    C9                            RET
  220	                                        ;
  221	                                ;INICIALIZACE POSLUCHACE
  222	                                        ;
  223	  621C    3E 0F                 INILI:  MVI A,00001111B ;UVOLNENI SIG.NDAC
  224	  621E    D3 33                         OUT IMSCW
	MACRO-80 3.44	09-Dec-81	PAGE	1-4


  225	  6220    3E B0                         MVI A,10110000B ;NASTAVENI DAT PORTU
  226	  6222    D3 37                         OUT DATCW
  227	  6224    3E 03                         MVI A,00000011B ;ZABLOKOVANI SIGNALU DAV
  228	  6226    D3 37                         OUT DATCW
  229	  6228    DB 34                         IN DATPA
  230	  622A    C9                            RET
  231	                                        ;
  232	                                ;INICIALIZACE MLUVCIHO
  233	                                        ;
  234	  622B    3E 0E                 INITA:  MVI A,00001110B ;ZABLOKOVANI SIG.NDAC
  235	  622D    D3 33                         OUT IMSCW
  236	  622F    3E 94                         MVI A,10010100B ;STROB.VYST.DAT.PORTU B
  237	  6231    D3 37                         OUT DATCW
  238	  6233    C9                            RET
  239	                                        ;
  240	                                ;VYSTUP ADRESY
  241	                                        ;
  242	  6234    79                    ADROU:  MOV A,C         ;KONTROLA ADRESY
  243	  6235    FE 1F                         CPI 1FH
  244	  6237    3F                            CMC
  245	  6238    DC 6288                       CC ERRAO        ;CHYBA ADRESY
  246	  623B    D8                            RC              ;PRI CHYBE
  247	  623C    C3 6247                       JMP ADR
  248	  623F    79                    ADRIN:  MOV A,C         ;KONTROLA ADRESY
  249	  6240    FE 1F                         CPI 1FH
  250	  6242    3F                            CMC
  251	  6243    DC 628F                       CC ERRAI        ;CHIBA ADRSY
  252	  6246    D8                            RC
  253	                                        ;
  254	  6247    3E 07                 ADR:    MVI A,7H        ;NAHODI ATV
  255	  6249    D3 33                         OUT IMSCW
  256	  624B    3E 03                         MVI A,03H       ;NAHODI REN
  257	  624D    D3 33                         OUT IMSCW
  258	  624F    3E 01                         MVI A,1         ;CAS T8
  259	  6251    CD 0F98                       CALL TIME
  260	  6254    79                            MOV A,C         ;ADR.PREV.DO.BINARU
  261	  6255    B2                            ORA D           ;PRIDA ADR.KE KODU
  262	  6256    CD 625B                       CALL OUTDAT     ;VYSTUP 1 BYTU
  263	  6259    D8                            RC              ;PRI CHYBE
  264	  625A    C9                            RET
  265	                                        ;
  266	                                ;VYSTUP 1 BYTU DAT NA IMS-2
  267	                                        ;
  268	  625B    57                    OUTDAT: MOV D,A
  269	  625C    DB 31                 OU:     IN IMSPB        ;VYST.RIDICI PORT B
  270	  625E    E6 60                         ANI 60H
  271	  6260    CC 627E                       CZ ERRLI        ;CHYBA PRI NAHOZ.NDAT
  272	  6263    D8                            RC              ;PRI CHYBE
  273	  6264    FE 40                         CPI 40H
  274	  6266    C2 625C                       JNZ OU          ;SKOK PRI SHOZEN.NDAC
  275	  6269    7A                            MOV A,D
  276	  626A    D3 35                         OUT DATPB       ;VYST.DAYOVY. PORT B
  277	  626C    DB 36                 OU1:    IN DATPC        ;STAV.REG.,PORTU C
  278	  626E    E6 02                         ANI 2
  279	  6270    CA 626C                       JZ OU1
  280	  6273    C9                            RET
	MACRO-80 3.44	09-Dec-81	PAGE	1-5


  281	                                        ;
  282	                                ;VSTUP 1 BYTE DAT Z IMS-2
  283	                                        ;
  284	  6274    DB 36                 INDAT:  IN DATPC        ;STAV.REG.,PORTU C
  285	  6276    E6 20                         ANI 20H         ;TEST IBFA
  286	  6278    CA 6274                       JZ INDAT
  287	  627B    DB 34                         IN DATPA        ;VSTUP.DAT.PORT A
  288	  627D    C9                            RET
  289	                                        ;
  290	                                ;ULOZENI CISLA CHYBY DO REG.A
  291	                                        ;
  292	  627E    CD 6296               ERRLI:  CALL KONVY      ;KONEC VYSTUPU
  293	  6281    CD 62A4                       CALL KONVS      ;KONEC VSTUP.DAT
  294	  6284    3E 01                         MVI A,1         ;CHYBA ADRESY
  295	  6286    37                            STC
  296	  6287    C9                            RET
  297	                                        ;
  298	  6288    CD 6296               ERRAO:  CALL KONVY      ;KONEC VYSTUPU
  299	  628B    3E 00                         MVI A,0         ;CHYBA PRISTROJE
  300	  628D    37                            STC
  301	  628E    C9                            RET
  302	                                        ;
  303	  628F    CD 62A4               ERRAI:  CALL KONVS      ;KONEC VSTUP.DAT
  304	  6292    3E 00                         MVI A,0         ;CHYBA PRISTROJE
  305	  6294    37                            STC
  306	  6295    C9                            RET
  307	                                        ;
  308	                                ;KONEC VYSTUPU
  309	                                        ;
  310	  6296    3E 07                 KONVY:  MVI A,7         ;NAHODI ATN
  311	  6298    D3 33                         OUT IMSCW
  312	  629A    3E 3F                         MVI A,3FH       ;KOD UNL
  313	  629C    CD 625B                       CALL OUTDAT
  314	  629F    3E 06                         MVI A,6         ;SHODI ATN
  315	  62A1    D3 33                         OUT IMSCW
  316	  62A3    C9                            RET
  317	                                        ;
  318	                                ;KONEC VYSTUPNICH DAT
  319	                                        ;
  320	  62A4    CD 622B               KONVS:  CALL INITA      ;INICIAL.MLUVCIHO
  321	  62A7    3E 02                         MVI A,2         ;SHODI REN
  322	  62A9    D3 33                         OUT IMSCW
  323	  62AB    3E 01                         MVI A,1         ;NAHODI IFC
  324	  62AD    D3 33                         OUT IMSCW
  325	  62AF    3E 01                         MVI A,1
  326	  62B1    CD 0F98                       CALL TIME       ;CEKANI
  327	  62B4    3E 00                         MVI A,0
  328	  62B6    D3 33                         OUT IMSCW
  329	  62B8    C9                            RET
  330	                                        ;
  331	                                ;KONEC VYSTUPNICH DAT
  332	                                        ;
  333	  62B9    3E 05                 KONDA:  MVI A,5H        ;NAHODI EOI
  334	  62BB    D3 33                         OUT IMSCW
  335	  62BD    3E 0A                         MVI A,10
  336	  62BF    CD 0F98                       CALL TIME
	MACRO-80 3.44	09-Dec-81	PAGE	1-6


  337	  62C2    3E 0A                         MVI A,LF        ;VYSTUP LF
  338	  62C4    CD 625B                       CALL OUTDAT
  339	  62C7    3E 04                         MVI A,4H        ;SHODI EOI
  340	  62C9    D3 33                         OUT IMSCW
  341	  62CB    C9                            RET
  342	                                        ;
  343	  62CC                          ULSP:   DS 2            ;UKLADA REG.SP
  344	                                
  345	  62CE                          PRER:

Dále následuje obsluha přerušení, která vyžívá tyto podprogramy START, NULBF, STOP a WOB z MIKOSu V4.0F. Ovladač vyžívá z MIKOSu V4.0F podprogram TIME.

Ovladače se liší v podprogramech VSTUP a INIMS.





Ú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í / ZPS-2 / BASIMS V4.0



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