IPB

Çäðàâñòâóéòå, ãîñòü ( Âõîä | Ðåãèñòðàöèÿ )

> Èñõîäíèêè ÏÇÓ: Äðàéâåðíûé ìîäóëü ÁÊ-0010
SuperMax
ñîîáùåíèå 20.10.2009, 15:26
Ñîîáùåíèå #1


Àäìèíèñòðàòîð
*****

Ãðóïïà: Root Admin
Ñîîáùåíèé: 6 290
Ðåãèñòðàöèÿ: 7.1.2006
Èç: Êðàñíîÿðñê
Ïîëüçîâàòåëü ¹: 1




Êîä

;  #############################################################
;  #                                                           #
;  #    Ä Ð À É Â Å Ð Í Û É    Ì Î Ä Ó Ë Ü    Á Ê - 0 0 1 0    #
;  #                                                           #
;  #############################################################


;  ÐÀÇÐÀÁÎÒÀË:  ÄßÁÈÍ Ì.È.
;  ÌÎÑÊÂÀ,  1983 Ã.
;
;  ÏÎÑËÅÄÍßß ÐÅÄÀÊÖÈß:  ÌÀÉ  1984 Ã.



;  ====================================
;  **** ÀÐÃÓÌÅÍÒÛ ÊÎÌÀÍÄÛ EMT DMBK ****
;  ====================================



;    ÊËÀÂÈÀÒÓÐÀ
;    ----------

INDKLW    = 4       ;- ÈÍÈÖÈÀËÈÇÀÖÈß ÄÐÀÉÂÅÐÀ ÊËÀÂÈÀÒÓÐÛ

CTKOD    = 6       ;- ×ÒÅÍÈÅ ÊÎÄÀ Ñ ÊËÀÂÈÀÒÓÐÛ
           ;  ÂÛÕÎÄ:    R0 - ÊÎÄ Â ÌË. ÁÀÉÒÅ

CTSTR    = 10       ;- ×ÒÅÍÈÅ ÑÒÐÎÊÈ Ñ ÊËÀÂÈÀÒÓÐÛ
           ;  ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÁÓÔÅÐÀ ÑÒÐÎÊÈ
           ;        R2 - ÄËÈÍÀ ÑÒÐÎÊÈ (ÌË.Á.)
           ;           - ÑÈÌÂÎË-ÎÃÐÀÍÈ×ÈÒÅËÜ (ÑÒ.Á.)

USTKLC    = 12       ;- ÓÑÒÀÍÎÂÊÀ ÊËÞ×ÅÉ ÊËÀÂÈÀÒÓÐÛ
           ;  ÂÕÎÄ:    R0 - ÍÎÌÅÐ ÊËÞ×À
           ;        R1 - ÀÄÐÅÑ ÒÅÊÑÒÀ ÊËÞ×À


;    TV-ÌÎÍÈÒÎÐ
;    ----------

INDMBK    = 14       ;- ÈÍÈÖÈÀËÈÇÀÖÈß DMBK

FSIM    = 16       ;- ÔÎÐÌÈÐÎÂÀÍÈÅ ÑÈÌÂÎËÀ
           ;  ÂÕÎÄ:    R0 - ÊÎÄ ÑÈÌÂÎËÀ Â ÌË.Á.

FSTR    = 20       ;- ÔÎÐÌÈÐÎÂÀÍÈÅ ÑÒÐÎÊÈ
           ;  ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÑÒÐÎÊÈ
           ;        R2 - ÄËÈÍÀ ÑÒÐÎÊÈ (ÌË.Á.)
           ;           - ÑÈÌÂÎË-ÎÃÐÀÍÈ×ÈÒÅËÜ (ÑÒ.Á.)

ZSIMSS    = 22       ;- ÇÀÏÈÑÜ ÑÈÌÂÎËÀ Â ÑËÓÆÅÁÍÓÞ ÑÒÐÎÊÓ
           ;  ÂÕÎÄ:    R0 - ÊÎÄ ÑÈÌÂÎËÀ (0-ÑÁÐÎÑ ÑÒÐÎÊÈ)
           ;        R1 - ÍÎÌÅÐ ÏÎÇÈÖÈÈ Â ÑÑ

USTKK    = 24       ;- ÓÑÒÀÍÎÂÊÀ ÊÓÐÑÎÐÀ ÏÎ ÊÎÎÐÄÈÍÀÒÀÌ
           ;  ÂÕÎÄ:    R1 - ÊÎÎÐÄÈÍÀÒÀ X
           ;        R2 - ÊÎÎÐÄÈÍÀÒÀ Y

SEMKK    = 26       ;- Ñ'ÅÌ ÊÎÎÐÄÈÍÀÒ ÊÓÐÑÎÐÀ
           ;  ÂÛÕÎÄ:    R1 - ÊÎÎÐÄÈÍÀÒÀ X
           ;        R2 - ÊÎÎÐÄÈÍÀÒÀ Y

FTCK    = 30       ;- ÔÎÐÌÈÐÎÂÀÍÈÅ ÒÎ×ÊÈ
           ;  ÂÕÎÄ:    R0 - 1-ÇÀÏÈÑÜ, 0-ÑÒÈÐÀÍÈÅ
           ;        R1 - ÊÎÎÐÄÈÍÀÒÀ X
           ;        R2 - ÊÎÎÐÄÈÍÀÒÀ Y

FWEKT    = 32       ;- ÔÎÐÌÈÐÎÂÀÍÈÅ ÂÅÊÒÎÐÀ
           ;  ÂÕÎÄ:    R0 - 1-ÇÀÏÈÑÜ, 0-ÑÒÈÐÀÍÈÅ
           ;        R1 - ÊÎÎÐÄÈÍÀÒÀ X
           ;        R2 - ÊÎÎÐÄÈÍÀÒÀ Y

CTSSD    = 34       ;- ×ÒÅÍÈÅ ÑËÎÂÀ ÑÎÑÒÎßÍÈß ÄÈÑÏËÅß
           ;  ÂÛÕÎÄ:    R0 - ÑËÎÂÎ ÑÎÑÒ. ÄÈÑÏË.


;    ÌÀÃÍÈÒÎÔÎÍ
;    ----------

DMAG    = 36       ;- ÄÐÀÉÂÅÐ ÌÀÃÍÈÒÎÔÎÍÀ
           ;  ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÁËÎÊÀ ÏÀÐÀÌÅÒÐÎÂ


;    TLG-ÊÀÍÀË
;    ---------

INDTLG    = 40       ;- ÈÍÈÖÈÀËÈÇÀÖÈß ÄÐÀÉÂÅÐÀ ÒËÃ-ÊÀÍÀËÀ
           ;  ÂÕÎÄ:    R0 - ÍÎÌÅÐ ÑÊÎÐÎÑÒÈ

PDBYT    = 42       ;- ÏÅÐÅÄÀ×À ÁÀÉÒÀ
           ;  ÂÕÎÄ:    R0 - ÌË.Á. ÍÀ ÏÅÐÅÄÀ×Ó

PRBYT    = 44       ;- ÏÐÈÅÌ ÁÀÉÒÀ
           ;  ÂÛÕÎÄ:    R0 - ÌË.Á. ÏÐÈÍßÒ

PDMAS    = 46       ;- ÏÅÐÅÄÀ×À ÌÀÑÑÈÂÀ
           ;  ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÌÀÑÑÈÂÀ
           ;        R2 - ÄËÈÍÀ ÌÀÑÑÈÂÀ

PRMAS    = 50       ;- ÏÐÈÅÌ ÌÀÑÑÈÂÀ
           ;  ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÁÓÔÅÐÀ ÌÀÑÑÈÂÀ
           ;        R2 - ÄËÈÍÀ ÌÀÑÑÈÂÀ


;    ÐÅÇÅÐÂ
;    ------

RW1    = 52
RW2    = 54
RW3    = 56
RW4    = 60
RW5    = 62
RW6    = 64
RW7    = 66
RW8    = 70
RW9    = 72
RW10    = 74
RW11    = 76
RW12    = 100
RW13    = 102
RW14    = 104
RW15    = 106
RW16    = 110



;   ======================
;   *** ÊÎÍÑÒÀÍÒÛ DMBK ***
;   ======================


    AWPZAW    = 4       ;- ÀÄÐ.ÂÅÊÒ.ÏÐÅÐ. ÏÎ ÇÀÂÈÑÀÍÈÞ
    AWPEMT    = 30       ;- ÀÄÐ.ÂÅÊÒ.ÏÐÅÐ. ÏÎ ÊÎÌÀÍÄÅ ÅÌÒ
    APORT    = 177714   ;- ÀÄÐÅÑ ÏÎÐÒÀ
    ASPORT    = 177716   ;- ÀÄÐÅÑ ÑÈÑÒÅÌÍÎÃÎ ÏÎÐÒÀ




;  ============================
;  **** ÎÁËÀÑÒÜ ÑÂßÇÈ DMBK ****
;  ============================



DMBK:    JMP    MNDMBK       ;- ÏÅÐÅÕÎÄ ÍÀ ÌÎÍÈÒÎÐ DMBK


;    -------------------------------
;    ** ÂÕÎÄÛ ÄÐÀÉÂÅÐÀ ÊËÀÂÈÀÒÓÐÛ **
;    -------------------------------

WIDKLW:    .WORD    MIDKLW       ;- ÂÕÎÄ ÈÍÈÖÈÀËÈÇÀÖÈÈ DKLAW
WCTKOD:    .WORD    MCTKOD       ;- ÂÕÎÄ ×ÒÅÍÈß ÊÎÄÀ
WCTSTR:    .WORD    MCTSTR       ;- ÂÕÎÄ ×ÒÅÍÈß ÑÒÐÎÊÈ
WUKLC:    .WORD    MUKLC       ;- ÂÕÎÄ ÓÑÒÀÍÎÂÊÈ ÊËÞ×ÅÉ


;    --------------------------------
;    ** ÂÕÎÄÛ ÄÐÀÉÂÅÐÀ TV-ÌÎÍÈÒÎÐÀ **
;    --------------------------------

WIDMBK:    .WORD    MIDMBK       ;- ÂÕÎÄ ÈÍÈÖÈÀËÈÇÀÖÈÈ DMBK
WFSIM:    .WORD    MFSIM       ;- ÂÕÎÄ ÔÎÐÌÈÐÎÂÀÍÈß ÑÈÌÂÎËÀ
WFSTR:    .WORD    MFSTR       ;- ÂÕÎÄ ÔÎÐÌÈÐÎÂÀÍÈß ÑÒÐÎÊÈ
WZSSS:    .WORD    MZSSS       ;- ÂÕÎÄ ÇÀÏÈÑÈ ÑÈÌÂÎËÀ Â ÑËÓÆ. ÑÒÐÎÊÓ
WUSTKK:    .WORD    MUSTKK       ;- ÂÕÎÄ ÓÑÒÀÍÎÂÊÈ ÊÎÎÐÄÈÍÀÒ ÊÓÐÑÎÐÀ
WSKK:    .WORD    MSKK       ;- ÂÕÎÄ Ñ'ÅÌÀ ÊÎÎÐÄÈÍÀÒ ÊÓÐÑÎÐÀ
WFTCK:    .WORD    MFTCK       ;- ÂÕÎÄ ÔÎÐÌÈÐÎÂÀÍÈß ÒÎ×ÊÈ
WFWEKT:    .WORD    MFWEKT       ;- ÂÕÎÄ ÔÎÐÌÈÐÎÂÀÍÈß ÂÅÊÒÎÐÀ
WCTSSD:    .WORD    MCTSSD       ;- ÂÕÎÄ ×ÒÅÍÈß ÑÑÄ


;    --------------------------------
;    ** ÂÕÎÄÛ ÄÐÀÉÂÅÐÀ ÌÀÃÍÈÒÎÔÎÍÀ **
;    --------------------------------

WDMAG:    .WORD    MDMAG       ;- ÂÕÎÄ ÇÀÏÈÑÈ/×ÒÅÍÈß ÌÀÑÑÈÂÀ


;    -------------------------------
;    ** ÂÕÎÄÛ ÄÐÀÉÂÅÐÀ ÒËÃ-ÊÀÍÀËÀ **
;    -------------------------------

WIDTLG:    .WORD    MIDTLG       ;- ÂÕÎÄ ÈÍÈÖÈÀËÈÇÀÖÈÈ DTLG
WPDBYT:    .WORD    MPDBYT       ;- ÂÕÎÄ ÏÅÐÅÄÀ×È ÁÀÉÒÀ
WPRBYT:    .WORD    MPRBYT       ;- ÂÕÎÄ ÏÐÈÅÌÀ ÁÀÉÒÀ
WPDMAS:    .WORD    MPDMAS       ;- ÂÕÎÄ ÏÅÐÅÄÀ×È ÌÀÑÑÈÂÀ
WPRMAS:    .WORD    MPRMAS       ;- ÂÕÎÄ ÏÐÈÅÌÀ ÌÀÑÑÈÂÀ


;    --------------------------
;    ** ÐÅÇÅÐÂÍÛÅ ÂÕÎÄÛ DMBK **
;    --------------------------

RWDM1:    .WORD    160000
RWDM2:    .WORD    160004
RWDM3:    .WORD    160010
RWDM4:    .WORD    160014
RWDM5:    .WORD    160020
RWDM6:    .WORD    160024
RWDM7:    .WORD    160030
RWDM8:    .WORD    160034
RWDM9:    .WORD    160040
RWDM10:    .WORD    160044
RWDM11:    .WORD    160050
RWDM12:    .WORD    160054
RWDM13:    .WORD    160060
RWDM14:    .WORD    160064
RWDM15:    .WORD    160070
RWDM16:    .WORD    160074





; ==============================
; *****  ÄÈÑÏÅÒ×ÅР Å Ì Ò  *****
; ==============================


DEMT:    MOV    R5,-(SP)

    MOV    2(SP),R5   ;  ÀÄÐÅÑ ÌÎÄÓËß
    MOV    -(R5),R5
    BIC    #177400,R5
    MOV    DMBK(R5),R5

    JSR    PC,(R5)       ;  ÎÁÐÀÙÅÍÈÅ Ê ÌÎÄÓËÞ

    MOV    (SP)+,R5
    RTI





; =====================================
; ***** ÌÎÄÓËÜ ÈÍÈÖÈÀËÈÇÀÖÈÈ DMBK *****
; =====================================


MIDMBK:    CLR    R1       ;  ÓÑÒÀÍÎÂÊÀ ÂÅÊÒÎÐÎÂ
    MOV    #20,R2
1$:    MOV    #100000,(R1)+
    SOB    R2,1$
    MOV    #MNZAW,@#AWPZAW
    MOV    #DEMT,@#AWPEMT
    MOV    #200,@#AWPEMT+2

    MOV    #120,R2       ;  ÑÁÐÎÑ ÏÐÈÇÍÀÊÎÂ
2$:    CLR    (R1)+
    SOB    R2,2$

    EMT    INDKLW       ;- ÈÍÈÖÈÀËÈÇÀÖÈß DKLAW

    INC    DSIMB       ;- ÈÍÈÖÈÀËÈÇÀÖÈß DTVM
    INCB    NMPGT
    COM    MASCW
    COM    MCWSS
    JSR    PC,PPRP1

    MOV    #KDBIT0,DLBIT0   ;- ÈÍÈÖÈÀËÈÇÀÖÈß DMAG
    MOV    #KDBIT1,DLBIT1

    CLR    R0
    EMT    INDTLG       ;- ÈÍÈÖÈÀËÈÇÀÖÈß DTLG

    CLR    @#APORT       ;- ÑÁÐÎÑ ÏÎÐÒÀ
    MOV    #220,@#ASPORT   ;- ÓÑÒÀÍÎÂÊÀ ÑÈÑÒÅÌÍÎÃÎ ÏÎÐÒÀ

    MTPS    R0       ;- ÐÀÇÐÅØÅÍÈÅ ÏÐÅÐÛÂÀÍÈÉ

    RTS    PC





; ======================================
; *****  Ì Î Í È Ò Î Ð    D M B K  *****
; ======================================




MNDMBK:    MOV    #1000,SP   ;- ÓÑÒÀÍÎÂÊÀ ÑÒÅÊÀ
    JSR    PC,MIDMBK

    JSR    PC,@#120000   ;- ÇÀÏÓÑÊ ÔÎÊÀËÀ
    JSR    PC,MIDMBK   ;- ÂÛÕÎÄ ÈÇ ÔÎÊÀËÀ

MNKOM:    JSR    R5,PPCT       ;- "ÌÎÍÈÒÎÐ ÁÊ-0010"
    .WORD    TMON
MNKOM1:    JSR    R5,PPCT       ;- ">"
    .WORD    TPRIGL

    MOV    SP,R1       ;  ÏÐÈÅÌ ÊÎÌÀÍÄÛ
    SUB    #100,R1
    MOV    R1,R5
2$:    EMT    CTKOD
    CMPB    R0,#30       ;- ÀÍÑ
    BNE    1$
    CMP    R5,R1
    BEQ    2$
3$:    CLR    (R5)+
4$:    EMT    FSIM
    BR    2$
1$:    MOV    R0,-(R5)   ;- ÇÀÏÈÑÜ ÊÎÄÀ Â ÁÓÔÅÐ
    TSTB    R5
    BEQ    3$
    CMPB    R0,#12       ;- "ÏÑ"
    BNE    4$
    EMT    FSIM

    MOV    -(R1),R4   ;  ×ÒÅÍÈÅ ÊÎÌÀÍÄÛ
    CLR    R5       ;- ×ÈÑËÎ
    MOV    R4,R3
7$:    CMP    R3,R0       ;- "ÏÑ"
    BEQ    5$
    CMP    R3,#67       ;- ÖÈÔÐÀ
    BHI    6$
    SUB    #60,R3
    BMI    6$
    ASL    R5
    ASL    R5
    ASL    R5
    ADD    R3,R5
6$:    MOV    -(R1),R3   ;- ×ÒÅÍÈÅ ÑËÅÄ.ÑÈÌÂ.
    BR    7$

5$:    BIC    #240,R4       ;  ÀÍÀËÈÇ ÊÎÌÀÍÄÛ
    CMPB    R4,#124       ;- "T"
    BHI    10$
    SUB    #114,R4       ;- "L"
    BMI    11$
    ASL    R4

    MOV    MNKOMT(R4),R1   ;  ÏÅÐÅÄÀ×À ÓÏÐÀÂËÅÍÈß
    JSR    PC,(R1)
    BR    MNKOM1

11$:    ADD    #13,R4       ;- A : K
    BPL    MNDMBK
    BR    MNKOM1

10$:    JSR    PC,@#160110   ;- > T
    BR    MNKOM1

MNKOMT:    .WORD    PCTTLG       ;- "L"
    .WORD    PCTMAG       ;- "M"
    .WORD    160110       ;- "N"
    .WORD    160110       ;- "O"
    .WORD    140000       ;- "P"
    .WORD    160110       ;- "Q"
    .WORD    160104       ;- "R"
    .WORD    PSTART       ;- "S"
    .WORD    160100       ;- "T"



;    -----------------------------------
;    ** 0. ÎÁÐÀÁÎÒÊÀ ÇÀÂÈÑÀÍÈß È ÑÒÎÏ **
;    -----------------------------------

MNZAW:    MOV    #1000,SP
    MOV    #220,@#ASPORT
    EMT    INDKLW
    BR    MNKOM


;    -----------------------------
;    ** 1. ×ÒÅÍÈÅ ÔÀÉËÀ Ñ ËÈÍÈÈ **
;    -----------------------------

PCTTLG:    EMT    PRBYT       ;  ÓÑÒÀÍÎÂÊÀ ÑÂßÇÈ
    EMT    PDBYT

    MOV    #BUFSTA,R1   ;  ÏÐÈÅÌ ÀÄÐÅÑÀ È ÄËÈÍÛ
    MOV    #4,R2
    EMT    PRMAS
    TST    R5
    BEQ    1$
    MOV    R5,BUFSTA

1$:    MOV    BUFSTA,R1   ;  ÏÐÈÅÌ ÌÀÑÑÈÂÀ
    MOV    BUFDL,R2
    EMT    PRMAS
    JSR    R5,PPCT       ;- ÏÅ×ÀÒÜ ÑÎÎÁÙÅÍÈß
    .WORD    TFZ

    RTS    PC


;    -----------------------------------
;    ** 2. ×ÒÅÍÈÅ ÔÀÉËÀ Ñ ÌÀÃÍÈÒÎÔÎÍÀ **
;    -----------------------------------

PCTMAG:    MOV    #BPDMAG,R1   ;  ÇÀÃÐÓÇÊÀ BPDMAG
    MOV    #3,(R1)+   ;- ÊÎÌÀÍÄÀ
    MOV    R5,(R1)+   ;- ÀÄÐÅÑ
    CLR    (R1)+       ;- ÄËÈÍÀ
    JSR    R5,PPCT       ;- "ÈÌß ÔÀÉËÀ?"
    .WORD    TIMF
    MOV    #5020,R2
    EMT    CTSTR
    DEC    R1
2$:    MOVB    #40,(R1)+
    DEC    R2
    BPL    2$

1$:    MOV    #BPDMAG,R1   ;  ×ÒÅÍÈÅ ÔÀÉËÀ
    EMT    DMAG

    MOVB    1(R1),R0   ;  ÀÍÀËÈÇ ÎÒÂÅÒÀ
    BEQ    4$
    DEC    R0
    BNE    3$
    JSR    PC,5$       ;- ÏÅ×ÀÒÜ ÈÌ. ÒÅÊ. ÔÀÉËÀ
    MOV    #12,R0
    EMT    FSIM
    BR    1$

3$:    JSR    R5,PPCT       ;- "*ÎØÈÁÊÀ*"
    .WORD    TOH
    BR    KCTMAG

4$:    JSR    R5,PPCT       ;- "ÇÀÃÐÓÆÅÍ ÔÀÉË "
    .WORD    TZF
5$:    ADD    #32,R1
    MOV    #20,R2
    EMT    FSTR

KCTMAG:    RTS    PC


;    --------------
;    ** 3. ÑÒÀÐÒ **
;    --------------

PSTART:    TST    R5
    BNE    1$
    MOV    BUFSTA,R5   ;- ÑÒÀÐÒÎÂÛÉ ÀÄÐÅÑ
1$:    JSR    PC,(R5)

    RTS    PC


;    ----------------------
;    ** 4. ÏÅ×ÀÒÜ ÒÅÊÑÒÀ **
;    ----------------------

PPCT:    MOV    (R5)+,R3
    BR    1$
2$:    EMT    FSIM
1$:    MOVB    (R3)+,R0
    BNE    2$

    RTS    R5



;   =====================
;   *** ÄÀÍÍÛÅ MNDMBK ***
;   =====================


TMON:    .BYTE    12,355,357,356,351,364,357,362,40   ;  ÌÎÍÈÒÎÐ ÁÊ-0010
    .BYTE    342,353,55,60,60,61,60,0
TPRIGL:    .BYTE    12,12,76,40,0               ;  >
TIMF:    .BYTE    351,315,321,40,306,301,312,314,301,77,40,0;  ÈÌß ÔÀÉËÀ?
TZF:    .BYTE    12,372,301,307,322,325,326,305,316,40   ;  ÇÀÃÐÓÆÅÍ ÔÀÉË
    .BYTE    306,301,312,314,40,0
TFZ:    .BYTE    12,346,301,312,314,40           ;  ÔÀÉË ÇÀÃÐÓÆÅÍ
    .BYTE    332,301,307,322,325,326,305,316,0
TOH:    .BYTE    12,52,357,373,351,342,353,341,52,0   ;  *ÎØÈÁÊÀ*
    .EVEN



--------------------
Æèâû áóäåì - Íå ïîìðåì !
Ïîëüçîâàòåëü â îôëàéíåÊàðòî÷êà ïîëüçîâàòåëÿÎòïðàâèòü ëè÷íîå ñîîáùåíèå
Âåðíóòüñÿ â íà÷àëî ñòðàíèöû
+Îòâåòèòü ñ öèòèðîâàíèåì äàííîãî ñîîáùåíèÿ
 
Îòâåòèòü â ýòó òåìóÎòêðûòü íîâóþ òåìó
Îòâåòîâ
SuperMax
ñîîáùåíèå 20.10.2009, 15:32
Ñîîáùåíèå #2


Àäìèíèñòðàòîð
*****

Ãðóïïà: Root Admin
Ñîîáùåíèé: 6 290
Ðåãèñòðàöèÿ: 7.1.2006
Èç: Êðàñíîÿðñê
Ïîëüçîâàòåëü ¹: 1




Êîä






;  ************************************************
;  *                                              *
;  *    Ä Ð À É Â Å Ð    Ì À Ã Í È Ò Î Ô Î Í À    *
;  *                                              *
;  ************************************************



;   ======================
;   *** ÊÎÍÑÒÀÍÒÛ DMAG ***
;   ======================

    ASPORT    = 177716   ;- ÀÄÐÅÑ ÑÈÑÒÅÌÍÎÃÎ ÏÎÐÒÀ
    APSTOP    = 4       ;- ÀÄÐÅÑ ÏÅÐÅÕÎÄÀ ÏÎ "ÑÒÎÏ"

    KDBIT0    = 100       ;- ÄËÈÍÀ ÁÈÒÀ ÍÀ ÇÀÏÈÑÜ
    KDBIT1    = 400       ;
    DRAZBR    = 4       ;- ÄÈÀÏÀÇÎÍ ÐÀÇÁÐÎÑÀ Í.Ï.

    KPUSK    = 20       ;- ÊÎÍÑ. ÏÓÑÊ
    KSTOP    = 220       ;- ÊÎÍÑ. ÑÒÎÏ
    KBIT00    = 20       ;- ÊÎÍÑ. -0
    KBIT10    = 60       ;- ÊÎÍÑ. -1
    KBIT01    = 160       ;- ÊÎÍÑ. +0
    KBIT11    = 120       ;- ÊÎÍÑ. +1





; ==================================
; ***** ÌÎÄÓËÜ ÓÏÐÀÂËÅÍÈß DMAG *****
; ==================================


;    ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÁËÎÊÀ ÏÀÐÀÌÅÒÐÎÂ

;    R3  -  ÀÄÐÅÑ ÏÎÐÒÀ

MDMAG:    JSR    R4,PSREG

    MOV    R1,ABP       ;  ÏÎÄÃ. ÏÀÐÀÌ
    MOV    #ASPORT,R3
    CLRB    PROH
    CLR    PRFCT

    MOV    @#APSTOP,-(SP)   ;  ÏÎÄÃ. ÂÛÕ. ÏÎ "ÑÒÎÏ"
    MOV    #AWDMAG,@#APSTOP
    MOV    SP,BUFSP

    MOVB    (R1),R0       ;  ÀÍÀËÈÇ ÊÎÌÀÍÄÛ

    BNE    1$       ;- ÑÒÎÏ
    MOV    #KSTOP,(R3)
    BR    KMDMAG

1$:    DEC    R0       ;- ÏÓÑÊ
    BNE    2$
    MOV    #KPUSK,(R3)
    BR    KMDMAG

2$:    DEC    R0       ;- ÇÀÏÈÑÜ ÌÀÑÑÈÂÀ
    BNE    3$
    JSR    PC,BZMAS
    BR    KMDMAG

3$:    DEC    R0       ;- ×ÒÅÍÈÅ ÌÀÑÑÈÂÀ
    BNE    4$
5$:    JSR    PC,BCTMAS
    BR    KMDMAG

4$:    INC    PRFCT       ;- ÔÈÊÒÈÂÍÎÅ ×ÒÅÍÈÅ ÌÀÑÑÈÂÀ
    DEC    R0
    BEQ    5$

    MOV    #KDBIT0,DLBIT0   ;- ÓÑÒÀÍÎÂÊÀ ÑÊÎÐÎÑÒÈ ÇÀÏÈÑÈ
    MOV    #KDBIT1,DLBIT1
    BR    6$
7$:    ASR    DLBIT0
    ASR    DLBIT1
6$:    SOB    R0,7$
    BR    KMDMAG

AWDMAG:    MOV    BUFSP,SP   ;  ÀÂÀÐÈÉÍÛÉ ÂÛÕÎÄ ÈÇ DMAG
    MOVB    #4,PROH
    MOV    #KSTOP,(R3)   ;- ÎÑÒÀÍÎÂ ÄÂÈÃÀÒÅËß

KMDMAG:    MOV    ABP,R1       ;  ÂÛÕÎÄ
    MOVB    PROH,1(R1)
    MOV    (SP)+,@#APSTOP

    JSR    R4,PWREG
    RTS    PC



;   ==============================
;   *** 1. ÁËÎÊ ÇÀÏÈÑÈ ÌÀÑÑÈÂÀ ***
;   ==============================


;    ÂÕÎÄ:    R1  - ÀÄÐÅÑ ÁËÎÊÀ ÏÀÐÀÌÅÒÐÎÂ

BZMAS:    MOV    #KPUSK,(R3)   ;  ÏÓÑÊ ÄÂÈÃÀÒÅËß

    MOV    2(R1),R5   ;  ÏÎÄÑ×ÅÒ ÊÎÍÒÐÎËÜÍÎÉ ÑÓÌÌÛ
    MOV    4(R1),R4
    BEQ    1$
    CLR    R0
2$:    CLR    R2
    BISB    (R5)+,R2
    ADD    R2,R0
    ADC    R0
    SOB    R4,2$
    MOV    R0,BUFKS

    MOV    #11,R4       ;  ÇÀÏÈÑÜ ÍÀÑÒÐÎÅ×ÍÎÉ ÏÎÑËÅÄÎÂÀÒÅËÜÍÎÑÒÈ
    MOV    #10000,R0
    BR    3$
4$:    MOV    R4,R0
3$:    JSR    PC,PZNP
    SOB    R4,4$

    MOV    (R1)+,R0   ;  ÇÀÏÈÑÜ ÈÌÅÍÈ
    MOV    #24,R2
    JSR    PC,PZBL

    MOV    ABP,R1       ;  ÇÀÏÈÑÜ ÌÀÑÑÈÂÀ
    MOV    4(R1),R2
    MOV    2(R1),R1
    JSR    PC,PZBL

    MOV    #BUFKS,R1   ;  ÇÀÏÈÑÜ KS
    MOV    #10,R2
    JSR    PC,PZBL

1$:    MOV    #KSTOP,(R3)   ;- ÎÑÒÀÍÎÂ ÄÂÈÃÀÒÅËß

    RTS    PC


;    ------------------------------------------------
;    ** 1.1. ÇÀÏÈÑÜ ÍÀÑÒÐÎÅ×ÍÎÉ ÏÎÑËÅÄÎÂÀÒÅËÜÍÎÑÒÈ **
;    ------------------------------------------------

;    ÂÕÎÄ:   R0  - Ñ×ÅÒ×ÈÊ ÍÓËÅÂÛÕ ÈÌÏÓËÜÑÎÂ

;    ÂÛÕÎÄ:  C = 0

;    R0,R5  - ÐÀÁÎ×ÈÅ

PZNP:    BCS    1$

2$:    JSR    PC,PZ0P       ;  ÇÀÏÈÑÜ 0 Â ÖÈÊËÅ
1$:    JSR    PC,PZ0M
    SOB    R0,2$

    JSR    PC,PZ1P       ;  ÇÀÏÈÑÜ ÌÀÐÊÅÐÀ(+1,-1)
    JSR    PC,PZ1M

    RTS    PC


;    -----------------------
;    ** 1.2. ÇÀÏÈÑÜ ÁËÎÊÀ **
;    -----------------------

;    ÂÕÎÄ:   R1  - ÀÄÐÅÑ ÁËÎÊÀ
;        R2  - ÄËÈÍÀ ÁËÎÊÀ

;    R0 - R2,R4,R5  - ÐÀÁÎ×ÈÅ

PZBL:    MOV    #20,R0       ;  ÇÀÏÈÑÜ ÁÓÔ. ÏÎÑËÅÄ.
    JSR    PC,PZNP

PZBL1:    BISB    (R1)+,R0   ;- ÏÎÄÃÎÒÎÂÊÀ ÁÀÉÒÀ
    MOV    #10,R4

PZB:    BCS    PZMBIT       ;  ÇÀÏÈÑÜ ÁÀÉÒÀ

    ASR    R0
    BCS    1$
    JSR    PC,PZ0P       ;- ÇÀÏÈÑÜ +0
    BR    KZB

1$:    JSR    PC,PZ1P       ;- ÇÀÏÈÑÜ +1
    BR    KZB

PZMBIT:    ASR    R0
    BCS    1$
    JSR    PC,PZ0M       ;- ÇÀÏÈÑÜ -0
    BR    KZB

1$:    JSR    PC,PZ1M       ;- ÇÀÏÈÑÜ -1
    BR    KZB

KZB:    SOB    R4,PZB       ;  ÊÎÍÅÖ ÇÀÏÈÑÈ ÁÀÉÒÀ

KZBL:    SOB    R2,PZBL1   ;  ÊÎÍÅÖ ÇÀÏÈÑÈ ÁËÎÊÀ

    RTS    PC


;    ----------------------
;    ** 1.3. ÇÀÏÈÑÜ ÁÈÒÀ **
;    ----------------------

PZ0P:    MOV    #KBIT01,(R3)   ;  ÇÀÏÈÑÜ +0
    MOV    DLBIT0,R5
1$:    SOB    R5,1$
    SEC
    RTS    PC

PZ0M:    MOV    #KBIT00,(R3)   ;  ÇÀÏÈÑÜ -0
    MOV    DLBIT0,R5
1$:    SOB    R5,1$
    CLC
    RTS    PC


PZ1P:    MOV    #KBIT11,(R3)   ;  ÇÀÏÈÑÜ +1
    MOV    DLBIT1,R5
1$:    SOB    R5,1$
    SEC
    RTS    PC

PZ1M:    MOV    #KBIT10,(R3)   ;  ÇÀÏÈÑÜ -1
    MOV    DLBIT1,R5
1$:    SOB    R5,1$
    CLC
    RTS    PC



;   ==============================
;   *** 2. ÁËÎÊ ×ÒÅÍÈß ÌÀÑÑÈÂÀ ***
;   ==============================


;    R0 - R5  - ÐÀÁÎ×ÈÅ
;    R5  - ÌÀÑÊÀ ÈÍÔÎÐÌÀÖÈÎÍÍÎÃÎ ÐÀÇÐßÄÀ

BCTMAS:    MOV    #40,R5       ;  ÏÎÄÃ.ÏÀÐÀÌ. È ÏÓÑÊ ÄÂÈÃÀÒÅËß
    MOV    #KPUSK,(R3)
    MOV    #1,INCADR

    CLR    PROH
    JSR    PC,PPNF       ;  ÏÎÈÑÊ ÍÀ×ÀËÀ ÔÀÉËÀ

    JSR    PC,PCTIM   ;  ×ÒÅÍÈÅ IMMAS
    TSTB    PROH
    BNE    KCTMAS

    JSR    PC,PCTMAS   ;  ×ÒÅÍÈÅ ÁËÎÊÀ ÈÍÔÎÐÌÀÖÈÈ
    MOV    #KSTOP,(R3)

KCTMAS:    RTS    PC


;    -----------------------------
;    ** 2.1. ÏÎÈÑÊ ÍÀ×ÀËÀ ÔÀÉËÀ **
;    -----------------------------

PPNF:    MOV    #2000,R2   ;  ÏÎÈÑÊ ÍÓËÅÉ
    CLR    R0

4$:    CLR    R4       ;- ×ÒÅÍÈÅ ÈÌÏÓËÜÑÀ
1$:    BIT    R5,(R3)
    BEQ    1$
2$:    INC    R4
    BIT    R5,(R3)
    BNE    2$

    SUB    R4,R0       ;  ÎÏÐÅÄÅËÅÍÈÅ ÐÀÇÁÐÎÑÀ
    BMI    3$
    CMP    R0,#DRAZBR
    BHI    PPNF
3$:    MOV    R4,R0
    SOB    R2,4$

    CLR    R0       ;  ÍÀÑÒÐÎÉÊÀ ÍÀ ÑÊÎÐÎÑÒÜ
    MOV    #100,R2
5$:    JSR    PC,PCTBIT   ;- Ñ×ÅÒ ÈÌÏÓËÜÑÎÂ
    ADD    R4,R0
    SOB    R2,5$

    MOV    #5,R2       ;- ÂÛ×ÈÑËÅÍÈÅ ÃÐÀÍÈÖÛ 0
6$:    ASR    R0
    SOB    R2,6$
    ADD    #4,R0
    MOV    R0,GRDL0

    JSR    PC,PPM       ;  ÏÐÎÂÅÐÊÀ ÊËÞ×À
    MOV    #20,R0
11$:    MOV    R0,R2
10$:    JSR    PC,PCTBIT
    BCS    PPNF
    SOB    R2,10$
    JSR    PC,PCTBIT
    BCC    PPNF
    JSR    PC,PCTBIT
    BCC    PPNF
    DEC    R0
    SOB    R0,11$

    RTS    PC


;    -------------------------------
;    ** 2.2. ×ÒÅÍÈÅ ÈÌÅÍÈ ÌÀÑÑÈÂÀ **
;    -------------------------------

PCTIM:    MOV    ABP,R1       ;  ×ÒÅÍÈÅ ÈÌÅÍÈ
    ADD    #26,R1
    MOV    #24,R2
    JSR    PC,PCTBL

    MOV    #10,R2
2$:    CMP    -(R1),-24(R1)   ;  ÑÐÀÂÍÅÍÈÅ ÈÌÅÍ
    BNE    1$
    SOB    R2,2$

    MOV    -(R1),BUFDL   ;- ÓÑÒ. ÄËÈÍÛ ÌÀÑÑÈÂÀ
    MOV    -26(R1),BUFSTA   ;- ÓÑÒ. ÑÒÀÐÒ. ÀÄÐÅÑÀ
    BNE    KCTIM
    MOV    -(R1),BUFSTA
    BR    KCTIM

1$:    INCB    PROH

KCTIM:    RTS    PC


;    -------------------------
;    ** 2.3. ×ÒÅÍÈÅ ÌÀÑÑÈÂÀ **
;    -------------------------

PCTMAS:    MOV    BUFSTA,R1   ;  ×ÒÅÍÈÅ ÌÀÑÑÈÂÀ
    MOV    BUFDL,R2
    SUB    PRFCT,INCADR
    BNE    1$
    MOV    #BUFKS,R1   ;- ÔÈÊÒÈÂÍÎÅ ×ÒÅÍÈÅ
1$:    JSR    PC,PCTBL
    MOV    R0,-(SP)

    MOV    #BUFKS,R1   ;  ×ÒÅÍÈÅ KS
    MOV    #2,R2
    MOV    #1,INCADR
    JSR    PC,PCTBL

    CMP    (SP)+,BUFKS   ;  ÑÐÀÂÍÅÍÈÅ KS
    BEQ    KCTM
    MOVB    #2,PROH

KCTM:    RTS    PC


;    -----------------------
;    ** 2.4. ×ÒÅÍÈÅ ÁËÎÊÀ **
;    -----------------------

;    ÂÕÎÄ:    R1  - ÀÄÐÅÑ ÎÇÓ
;        R2  - ÄËÈÍÀ ÁËÎÊÀ

;    ÂÛÕÎÄ:  R0  - ÊÎÍÒÐÎËÜÍÀß ÑÓÌÌÀ

PCTBL:    JSR    PC,PPM       ;  ÏÎÈÑÊ ÌÀÐÊÅÐÀ
    CLR    -(SP)

2$:    MOV    #10,R0       ;  ×ÒÅÍÈÅ ÁËÎÊÀ

1$:    JSR    PC,PCTBIT   ;  ×ÒÅÍÈÅ ÁÀÉÒÀ
    RORB    (R1)
    SOB    R0,1$

    BISB    (R1),R0       ;- ÏÎÄÑ×ÅÒ KS
    ADD    R0,(SP)
    ADC    (SP)

    ADD    INCADR,R1   ;- ÈÇÌÅÍÅÍÈÅ ÀÄÐÅÑÀ
    SOB    R2,2$

    MOV    (SP)+,R0
KCTBL:    RTS    PC


;    ----------------------
;    ** 2.5. ×ÒÅÍÈÅ ÁÈÒÀ **
;    ----------------------

;    ÂÛÕÎÄ:  C = 0  - 0 ÁÈÒ
;        C = 1  - 1 ÁÈÒ

;    R4  - ÐÀÁÎ×ÈÉ

PCTBIT:    CLR    R4       ;  Ñ×ÅÒ×ÈÊ ÄËÈÍÛ ÁÈÒÀ

    BIT    R5,(R3)
    BEQ    1$

2$:    INC    R4       ;  +
    BIT    R5,(R3)
    BNE    2$
    BR    3$

1$:    INC    R4       ;  -
    BIT    R5,(R3)
    BEQ    1$

3$:    CMP    GRDL0,R4   ;- ÓÑÒÀÍÎÂÊÀ ÁÈÒÀ C

    RTS    PC


;    ------------------------
;    ** 2.6. ÏÎÈÑÊ ÌÀÐÊÅÐÀ **
;    ------------------------

;    R4  - ÐÀÁÎ×ÈÉ

PPM:    JSR    PC,PCTBIT
    BCC    PPM
    JSR    PC,PCTBIT
    BCC    PPM

    RTS    PC





;  **********************************************
;  *                                            *
;  *    Ä Ð À É Â Å Ð    Ò Ë Ã - Ê À Í À Ë À    *
;  *                                            *
;  **********************************************



;   ======================
;   *** ÊÎÍÑÒÀÍÒÛ DTLG ***
;   ======================


    ASPORT    = 177716   ;- ÀÄÐÅÑ ÑÈÑÒÅÌÍÎÃÎ ÏÎÐÒÀ

    KTLG0    = 200       ;- ÊÎÍÑ. ÓÑÒÀÍÎÂÊÈ 0
    KTLG1    = 220       ;- ÊÎÍÑ. ÓÑÒÀÍÎÂÊÈ 1





; =====================================
; ***** ÌÎÄÓËÜ ÈÍÈÖÈÀËÈÇÀÖÈÈ DTLG *****
; =====================================


;    ÂÕÎÄ:    R0 - ÍÎÌÅÐ ÇÍÀ×ÅÍÈß ÑÊÎÐÎÑÒÈ


MIDTLG:    ASL    R0
    MOV    KDLBIT(R0),DLBIT

    RTS    PC





; =================================
; ***** ÌÎÄÓËÜ ÏÅÐÅÄÀ×È ÁÀÉÒÀ *****
; =================================


;    ÂÕÎÄ:    R0 - ÌË. ÁÀÉÒ


MPDBYT:



;   ===========================
;   *** ÁËÎÊ ÏÅÐÅÄÀ×È ÁÀÉÒÀ ***
;   ===========================


BPDB:    MOV    R0,-(SP)
    MOV    R4,-(SP)

    BIS    #1400,R0   ;  ÏÎÄÃ. ÏÀÐÀÌÅÒÐÎÂ
    MOV    #13,R4

6$:    BIT    #200,@#ASPORT   ;  ÎÆ. ÃÎÒÎÂÍÎÑÒÈ
    BEQ    6$

    CLC           ;  ÓÑÒÀÍÎÂÊÀ ÁÈÒÀ
    BR    1$
4$:    ASR    R0
1$:    BCC    2$
    MOV    #KTLG1,@#ASPORT
    BR    3$
2$:    MOV    #KTLG0,@#ASPORT
    BR    3$

3$:    MOV    DLBIT,R5   ;  ÖÈÊË ÏÅÐÅÄÀ×È ÁÈÒÀ
5$:    SOB    R5,5$

    SOB    R4,4$

    MOV    (SP)+,R4
    MOV    (SP)+,R0
    RTS    PC





; ===============================
; ***** ÌÎÄÓËÜ ÏÐÈÅÌÀ ÁÀÉÒÀ *****
; ===============================


;    ÂÛÕÎÄ:    R0 - ÌË. ÁÀÉÒ


MPRBYT:



;   =========================
;   *** ÁËÎÊ ÏÐÈÅÌÀ ÁÀÉÒÀ ***
;   =========================


BPRB:    MTPS    #0       ;- ÐÀÇÐÅØÅÍÈÅ ÏÐÅÐÛÂÀÍÈÉ
    MOV    R3,-(SP)
    MOV    R4,-(SP)

    MOV    #ASPORT,R3   ;  ÏÎÄÃ. ÏÀÐÀÌ.
    MOV    #20,R4       ;- Ñ×ÅÒ×ÈÊ ÁÀÉÒÀ
    CLR    R0

1$:    BIT    R4,(R3)       ;  ÏÎÈÑÊ ÑÒÀÐÒÎÂÎÃÎ ÁÈÒÀ
    BEQ    1$
11$:    MOV    #260,(R3)   ;- ÓÑÒ. ÃÎÒÎÂÍ. ÏÐÈÅÌÀ
    BIT    R4,(R3)
    BNE    11$
    MTPS    #200       ;- ÇÀÏÐÅÒ ÏÐÅÐÛÂÀÍÈÉ

    MOV    DLBIT,R5   ;  ÏÎÈÑÊ ÑÅÐÅÄ. ÑÒ. ÁÈÒÀ
    ASR    R5
2$:    SOB    R5,2$
    ASR    R4

6$:    MOV    DLBIT,R5   ;- ×ÒÅÍÈÅ ÁÀÉÒÀ
3$:    SOB    R5,3$
    BIT    #20,(R3)
    BNE    4$
    CLC
    BR    5$
4$:    SEC
    BR    5$
5$:    RORB    R0
    SOB    R4,6$
    MOV    #220,(R3)   ;- ÑÁÐÎÑ ÃÎÒÎÂÍ. ÏÐÈÅÌÀ

    MOV    (SP)+,R4
    MOV    (SP)+,R3
    RTS    PC





; ===================================
; ***** ÌÎÄÓËÜ ÏÅÐÅÄÀ×È ÌÀÑÑÈÂÀ *****
; ===================================


;    ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÌÀÑÑÈÂÀ
;        R2 - ÄËÈÍÀ ÌÀÑÑÈÂÀ Â ÁÀÉÒÀÕ


MPDMAS:    MOV    R0,-(SP)

1$:    MOVB    (R1)+,R0   ;  ÏÅÐÅÄÀ×À ÌÀÑÑÈÂÀ
    JSR    PC,BPDB
    SOB    R2,1$

    MOV    (SP)+,R0
    RTS    PC





; =================================
; ***** ÌÎÄÓËÜ ÏÐÈÅÌÀ ÌÀÑÑÈÂÀ *****
; =================================


;    ÂÕÎÄ:    R1 - ÀÄÐÅÑ ÏÀÌßÒÈ ÄËß ÌÀÑÑÈÂÀ
;        R2 - ÄËÈÍÀ ÌÀÑÑÈÂÀ Â ÁÀÉÒÀÕ


MPRMAS:    MOV    R0,-(SP)

1$:    JSR    PC,BPRB       ;  ÏÐÈÅÌ ÌÀÑÑÈÂÀ
    MOVB    R0,(R1)+
    SOB    R2,1$

    MOV    (SP)+,R0
    RTS    PC



;   ===================
;   *** ÄÀÍÍÛÅ DTLG ***
;   ===================


KDLBIT:               ;  ÊÎÍÑÒÀÍÒÛ ÄËÈÍÛ ÁÈÒÀ
DL9600:    .WORD    14
DL4800:    .WORD    36
DL2400:    .WORD    103
DL1200:    .WORD    213
DL600:    .WORD    435
DL300:    .WORD    1100
DL200:    .WORD    1542
DL150:    .WORD    2206
DL110:    .WORD    3300
DL75:    .WORD    4422
DL50:    .WORD    6633





; ================================
; ***** ÁËÎÊ ÏÅÐÅÌÅÍÍÛÕ DMBK *****
; ================================


    .ASECT


;   ===============================
;   *** ÑÈÑÒÅÌÍÛÅ ÏÐÈÇÍÀÊÈ DMBK ***
;   ===============================

    . = 40

SYSPR:
PRCW:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÖÂÅÒÍÎÃÎ ÐÅÆÈÌÀ
PRINWF:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÈÍÂÅÐÑÈÈ ÔÎÍÀ
PRRP:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÐÀÑØÈÐÅÍÍÎÉ ÏÀÌßÒÈ
PRRUS:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÐÓÑÑÊÎÃÎ ÐÅÃÈÑÒÐÀ
PRPODC:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÏÎÄ×ÅÐÊÈÂÀÍÈß ÑÈÌÂÎËÀ
PRINWS:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÈÍÂÅÐÑÈÈ ÑÈÌÂÎËÀ
PRISU:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÈÍÄÈÊÀÖÈÈ ÑÓ
PRBLR:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÁËÎÊÈÐÎÂÊÈ ÐÅÄÀÊÒÈÐÎÂÀÍÈß
PRGRAF:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÃÐÀÔÈ×ÅÑÊÎÃÎ ÐÅÆÈÌÀ
PRZAP:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÐÅÆÈÌÀ ÇÀÏÈÑÈ
PRSTIR:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÐÅÆÈÌÀ ÑÒÈÐÀÍÈß
PRCWSS:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÖÂÅÒÍÎÃÎ ÐÅÆÈÌÀ Â ÑÑ
PRPSSS:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÏÎÄ×ÅÐÊÈÂÀÍÈß ÑÈÌÂÎËÀ  ÑÑ
PRISSS:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÈÍÂÅÐÑÈÈ ÑÈÌÂÎËÀ Â ÑÑ
PRGAHK:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÃÀØÅÍÈß ÊÓÐÑÎÐÀ



;   ========================
;   *** ÏÅÐÅÌÅÍÍÛÅ DKLAW ***
;   ========================

    . = 100

WPTM:    .WORD    0   ;- ÂÅÊÒÎÐ ÏÐÅÐÛÂÀÍÈß ÒÀÉÌÅÐÀ
SSPTM:    .WORD    0   ;- ÑËÎÂÎ ÑÎÑÒÎßÍÈß ÏÐÖ

BUFKL:    .BYTE    0   ;- ÁÓÔÅÐ ÊËÀÂÈÀÒÓÐÛ
PRZKB:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÇÀÏÈÑÈ ÊÎÄÀ Â ÁÓÔÅÐ
BKPOWT:    .WORD    0   ;- ÁÓÔÅÐ ÊÎÍÑÒÀÍÒÛ ÏÎÂÒÎÐÀ
PRPOWT:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÏÎÂÒÎÐÀ ÊÎÄÀ

SCTAB:    .BYTE    0   ;- Ñ×ÅÒ×ÈÊ ÒÀÁÓËßÖÈÈ
MTAB:    .BLKW    4   ;- ÌÀÑÊÀ ÒÀÁÓËßÖÈÈ

SCKLC:    .BYTE    0   ;- Ñ×ÅÒ×ÈÊ ÊËÞ×À
    .EVEN
TAKLC:    .WORD    0   ;- ÒÅÊÓÙÈÉ ÀÄÐÅÑ ÊËÞ×À
AKLC:    .BLKW    12   ;  ÀÄÐÅÑÀ ÊËÞ×ÅÉ



;   ========================
;   *** ÏÅÐÅÌÅÍÍÛÅ DTVMN ***
;   ========================


PRNRUL:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÍÀÐÓØÅÍÈß ÐÓËÎÍÀ

PRZTCK:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÇÀÏÈÑÈ ÒÎ×ÊÈ
MASPGT:    .BYTE    0   ;- ÌÀÑÊÀ ÏÎÇÈÖÈÈ ÃÒ
NMPGT:    .BYTE    0   ;- ÍÀ×ÀËÜÍÀß ÌÀÑÊÀ ÏÎÇÈÖÈÈ ÃÒ

NOMSIM:    .WORD    0   ;- ÍÎÌÅÐ ÑÈÌÂÎËÀ ÍÀ ÝÊÐÀÍÅ
AS:    .WORD    0   ;- ÀÄÐÅÑ ÑÈÌÂÎËÀ
DSIMB:    .WORD    0   ;- ÄËÈÍÀ ÑÈÌÂÎËÀ Â ÁÀÉÒÀÕ
KSVP:    .WORD    0   ;- ÊÎËÈ×ÅÑÒÂÎ ÑÈÌÂÎËΠÍÀ ÝÊÐÀÍÅ

AGTVP:    .WORD    0   ;- ÀÄÐÅÑ ÃÒ ÍÀ ÝÊÐÀÍÅ
AGT:    .WORD    0   ;- ÀÄÐÅÑ ÃÒ
DGW:    .WORD    0   ;- ÄËÈÍÀ ÃÐÀÔÈ×ÅÑÊÎÃÎ ÂÅÊÒÎÐÀ
SCTVS:    .WORD    0   ;- Ñ×ÅÒ×ÈÊ TV-ÑÒÐÎÊ
BUFX:    .WORD    0   ;- ÁÓÔÅÐ ÊÎÎÐÄÈÍÀÒÛ X
BUFY:    .WORD    0   ;- ÁÓÔÅÐ ÊÎÎÐÄÈÍÀÒÛ Y

ANVP:    .WORD    0   ;- ÀÄÐÅÑ ÍÀ×ÀËÀ ÂÈÄÅÎÏÀÌßÒÈ
BAZVP:    .WORD    0   ;- ÁÀÇÀ ÂÈÄÅÎÏÀÌßÒÈ
DVPB:    .WORD    0   ;- ÄËÈÍÀ ÂÈÄÅÎÏÀÌßÒÈ Â ÁÀÉÒÀÕ
DGPB:    .WORD    0   ;- ÄËÈÍÀ ÃÐÀÔ. ÏÀÌßÒÈ Â ÁÀÉÒÀÕ

FON:    .WORD    0   ;- ÔÎÍ ÝÊÐÀÍÀ
MASCW:    .WORD    0   ;- ÌÀÑÊÀ ÖÂÅÒÀ
FONSS:    .WORD    0   ;- ÔÎÍ ÑÑ
MCWSS:    .WORD    0   ;- ÌÀÑÊÀ ÖÂÅÒÀ ÑÑ

SCKOD:    .WORD    0   ;- Ñ×ÅÒ×ÈÊ ÊÎÄÎÂ
SCUIND:    .WORD    0   ;- Ñ×ÅÒ×ÈÊ ÓÑÒÀÍÎÂÊÈ ÈÍÄÈÊÀÒÎÐÎÂ



;   =======================
;   *** ÏÅÐÅÌÅÍÍÛÅ DMAG ***
;   =======================

    . = 300

PROH:    .BYTE    0   ;- ÏÐÈÇÍÀÊ ÎØÈÁÊÈ
    .EVEN
PRFCT:    .WORD    0   ;- ÏÐÈÇÍÀÊ ÔÈÊÒÈÂÍÎÃÎ ×ÒÅÍÈß
INCADR:    .WORD    0   ;- ÈÍÊÐÅÌÅÍÒ ÀÄÐÅÑÀ ÌÀÑÑÈÂÀ

ABP:    .WORD    0   ;- ÀÄÐÅÑ ÁËÎÊÀ ÏÀÐÀÌÅÒÐÎÂ
BUFSP:    .WORD    0   ;- ÁÓÔÅÐ ÓÊÀÇÀÒÅËß ÑÒÅÊÀ
BUFKS:    .WORD    0   ;- ÁÓÔÅÐ ÊÎÍÒÐÎËÜÍÎÉ ÑÓÌÌÛ

GRDL0:    .WORD    0   ;- ÃÐÀÍÈÖÀ ÄËÈÍÛ 0

    . = 320

BPDMAG:           ;  ÁËÎÊ ÏÀÐÀÌÅÒÐÎÂ DMAG
KOM:    .BYTE    0   ;- ÊÎÌÀÍÄÀ
OTWET:    .BYTE    0   ;- ÎÒÂÅÒ
ADRMAS:    .WORD    0   ;- ÀÄÐÅÑ ÌÀÑÑÈÂÀ
DLMAS:    .WORD    0   ;- ÄËÈÍÀ ÌÀÑÑÈÂÀ ÍÀ ÇÀÏÈÑÜ
IMMAS:    .BLKB    20   ;- ÈÌß ÌÀÑÑÈÂÀ
ADRTM:    .WORD    0   ;- ÀÄÐÅÑ ÒÅÊÓÙÅÃÎ ÌÀÑÑÈÂÀ
DLTMAS:    .WORD    0   ;- ÄËÈÍÀ ÒÅÊÓÙÅÃÎ ÌÀÑÑÈÂÀ
IMTMAS:    .BLKB    20   ;- ÈÌß ÒÅÊÓÙÅÃÎ ÌÀÑÑÈÂÀ



;   =================================
;   *** ÑÈÑÒÅÌÍÛÅ ÏÅÐÅÌÅÍÍÛÅ DMBK ***
;   =================================


    . = 250

DLBIT0:    .WORD    0   ;- ÄËÈÍÀ 0 DMAG
DLBIT1:    .WORD    0   ;- ÄËÈÍÀ 1 DMAG
DLBIT:    .WORD    0   ;- ÄËÈÍÀ ÁÈÒÀ DTLG
KPORT:    .WORD    0   ;- ÊÎÏÈß ÏÎÐÒÀ
APOPKL:    .WORD    0   ;- ÀÄÐ.ÏÐÎÃÐ.ÎÁÐ.ÏÐÅÐ.ÎÒ ÊËÀÂ.
PRWK:    .WORD    0   ;- ÏÐÈÇÍÀÊ ÊÎÄÀ ÂÊ
BUFSTA:    .WORD    0   ;- ÁÓÔÅÐ ÑÒÀÐÒÎÂÎÃÎ ÀÄÐÅÑÀ
BUFDL:    .WORD    0   ;- ÁÓÔÅÐ ÄËÈÍÛ ÌÀÑÑÈÂÀ



    .END




--------------------
Æèâû áóäåì - Íå ïîìðåì !
Ïîëüçîâàòåëü â îôëàéíåÊàðòî÷êà ïîëüçîâàòåëÿÎòïðàâèòü ëè÷íîå ñîîáùåíèå
Âåðíóòüñÿ â íà÷àëî ñòðàíèöû
+Îòâåòèòü ñ öèòèðîâàíèåì äàííîãî ñîîáùåíèÿ

Ñîîáùåíèé â ýòîé òåìå


Îòâåòèòü â ýòó òåìóÎòêðûòü íîâóþ òåìó
1 ÷åë. ÷èòàþò ýòó òåìó (ãîñòåé: 1, ñêðûòûõ ïîëüçîâàòåëåé: 0)
Ïîëüçîâàòåëåé: 0

 



Òåêñòîâàÿ âåðñèÿ Ñåé÷àñ: 5.6.2024, 4:23