INV     LD      A,(KONTR)
        OR      A
        RET     NZ
        LD      A,1
        LD      (KONTR),A
        LD      A,(BUFBEL)
        OR      A
        JP      Z,CVEKR
        CP      1
        JP      Z,CHB
        XOR     A
        LD      (BUFBEL),A
        LD      A,32+16+8
        LD      (PR1+1),A
        LD      (BUFCV),A
        LD      HL,BUFCV1
        LD      (PRINT1X+1),HL
        CALL    OFF
        LD      HL,#5860
        LD      DE,#5861
        LD      BC,543
        LD      A,32+16+8
        LD      (HL),A
        LDIR 
        LD      A,7
        OUT     (#FE),A
        JP      ON
CVEKR   INC     A
        LD      (BUFBEL),A
        LD      A,5
        LD      (PR1+1),A
        LD      HL,BUFCV
        LD      (PRINT1X+1),HL
        CALL    OFF
        LD      HL,#5860
        LD      DE,#5861
        LD      BC,543
        LD      A,5
        LD      (HL),A
        LDIR 
        XOR     A
        OUT     (#FE),A
        LD      HL,(BUP)
        CALL    PRN
        JP      ON
CHB     INC     A
        LD      (BUFBEL),A
        LD      A,7
        LD      (BUFCV),A
        LD      (PR1+1),A
        LD      HL,BUFCV1
        LD      (PRINT1X+1),HL
        CALL    OFF
        LD      HL,#5860
        LD      DE,#5861
        LD      BC,543
        LD      A,7
        LD      (HL),A
        LDIR 
        XOR     A
        OUT     (#FE),A
        JP      ON

;**********SAVE  FILE *****
SAVER   LD      HL,(23613)
        LD      (WERT+1),HL
        LD      HL,SAAS
        LD      (23613),HL
        LD      HL,(BDW)
        LD      A,(HL)
        OR      A
        JR      Z,END1
ENTER   LD      A,(HL)
        OR      A
        JR      Z,END1
        INC     HL
        JR      ENTER
END1    PUSH    HL
        LD      HL,TEXT     ;ADDR TEXT
        PUSH    HL
        POP     DE
        POP     HL
        SBC     HL,DE
        PUSH    HL
        POP     BC          ; DLINA
        LD      HL,TEXT
        LD      A,"W"           ; 
SAVE    LD      (SP_ERR+1),SP
        LD      (23782),HL
        PUSH    BC
        PUSH    HL      ; . 
        LD      DE,23773+8
        LD      (DE),A
        XOR     A
        LD      (23824),A
        LD      (23823),A
        LD      (23801),A
        LD      A,9
        LD      (23814),A
        LD      HL,(23613)      ; ERRORS
        LD      C,(HL)
        INC     HL
        LD      B,(HL)
        LD      (ERR1+1),BC
        LD      BC,ERR1
        LD      (HL),B
        DEC     HL
        LD      (HL),C
        LD      C,#0A   ;---  ----
        CALL    15635
        LD      (ERASE1+1),BC
        BIT     7,C
        JR      NZ,SAVE1
ERASE1  LD      BC,0    ;-  
        LD      A,C
        LD      C,8
        CALL    15635
        LD      C,#12   ;---- 
        CALL    15635
SAVE1   LD      C,#0B   ;----- 
        LD      A,3
        POP     HL      ; 
        POP     DE      ; 
        CALL    15635
ERR1    LD      BC,0
        LD      HL,(23613)
        LD      (HL),C
        INC     HL
        LD      (HL),B
ERROR   LD      A,(23823)
RET_L   XOR     A
        LD      (23824),A
        DEC     A
        LD      (23610),A
SP_ERR  LD      SP,0
WERT    LD      HL,0
        LD      (23613),HL
        RET 
OFF     RET 
        LD      HL,82
        LD      (KUR+1),HL
        JP      OUTMEM
ON      RET 
        LD      HL,(ADDRESS)
        LD      (OUT_LOP),HL
        CALL    INMEM
        LD      HL,KRS
        LD      (KUR+1),HL
RETP    RET 
;+++++++++++++++++++++++++++++
X_COORD DEFB    0
Y_COORD DEFB    24
ADDRESS DEFB    0,0
L36031  NOP 
L36032  NOP 
        NOP 
L36034  NOP 
        NOP 
FLSHA   RST     56
L36037  EX      AF,AF'
L36038  EX      AF,AF'
L36039  NOP 
        NOP 
        NOP 
L36042  NOP ;   KURZOR
        NOP 
        NOP 
L36044  EQU  $-  1
        SUB     B
;+++++++++ START ++++++++++++++
KRS     CALL    OUTMEM
        LD      HL,(ADDRESS)
        LD      (OUT_LOP),HL
        CALL    INMEM
GFX     CALL    PRINT_S
        CALL    JOY
        CALL    COORDS_
        CALL    MOVE_S
        CALL    FLASH_S
        CALL    PRC
        RET 
;++++++++++ OPROS ++++++++++
JOY     CALL    L36107
        JP      L36380
L36107  LD      DE,3
L36108  EQU     $-  2
        LD      H,0
        LD      BC,#FEFE
        IN      A,(C)
        BIT     0,A           ;CS
        RET     Z
        LD      BC,61438
        IN      A,(C)
        BIT     1,A
        CALL    Z,UPI1
        IN      A,(C)
        BIT     2,A
        CALL    Z,DOW1
        IN      A,(C)
        BIT     4,A
        CALL    Z,LEFT1
        IN      A,(C)
        BIT     3,A
        CALL    Z,RIGHT1
        LD      BC,#F7FE
        IN      A,(C)
        BIT     3,A
        CALL    Z,UPI1
        IN      A,(C)
        BIT     2,A
        CALL    Z,DOW1
        IN      A,(C)
        BIT     0,A
        CALL    Z,LEFT1
        IN      A,(C)
        BIT     1,A
        CALL    Z,RIGHT1
        LD      BC,57342
        IN      A,(C)
        BIT     0,A
        CALL    Z,RIGHT1
        IN      A,(C)
        BIT     1,A
        CALL    Z,LEFT1
        LD      BC,64510
        IN      A,(C)
        BIT     0,A
        CALL    Z,UPI1
        LD      BC,65022
        IN      A,(C)
        BIT     0,A
        CALL    Z,DOW1
OFFJOY  NOP              ;RET
        IN      A,(31)
        BIT     3,A
        CALL    NZ,UPI1
        IN      A,(31)
        BIT     0,A
        CALL    NZ,RIGHT1
        IN      A,(31)
        BIT     1,A
        CALL    NZ,LEFT1
        IN      A,(31)
        BIT     2,A
        CALL    NZ,DOW1
        RET 
;++++++++++ UP +++++++++++++++++++
UPI1    LD      A,(Y_COORD)
        INC     D
        LD      L,E
L36310  CP 24
        JR      Z,L36319
        DEC     A
        DEC     L
        JR      NZ,L36310
L36319  LD      (Y_COORD),A
        RET 
;+++++++++++ DOWN +++++++++++++
DOW1    LD      A,(Y_COORD)
        INC     D
        LD      L,E
L36328  CP      190
        JR      Z,L36338
        INC     A
        DEC     L
        JR      NZ,L36328
L36338  LD      (Y_COORD),A
        RET 
;++++++++++ RIGHT ++++++++++++
RIGHT1  LD      A,(X_COORD)
        INC     D
        LD      L,E
L36347  CP      253
        JR      NC,L36357
        INC     A
        DEC     L
        JR      NZ,L36347
L36357  LD      (X_COORD),A
        RET 
;+++++++++ LEFT ++++++++++++++
LEFT1   LD      A,(X_COORD)
        INC     D
        LD      L,E
L36366  CP      1
        JR      C,L36376
        DEC     A
        DEC     L
        JR      NZ,L36366
L36376  LD      (X_COORD),A
        RET 
;+++++++++++++++++++++++++
L36380  LD      A,D
        OR      A
        JR      NZ,L36392
        LD      A,1
        LD      (L36108),A
        LD      (L36393),A
L36392  LD      A,1
L36393  EQU     $-  1
        INC     A
        LD      (L36393),A
        LD      HL,L36037
        CP      (HL)
        RET     NZ
        LD      A,1
        LD      (L36393),A
        LD      A,(L36108)
        LD      HL,L36038
        CP      (HL)
        RET     Z
        INC     A
        LD      (L36108),A
        RET 
;++++++++++++++++++++++++++++++++
COORDS_ LD      DE,(X_COORD)
        LD      A,D
        AND     A
        RRA 
        SCF 
        RRA 
        AND     A
        RRA 
        XOR     D
        AND     248
        XOR     D
        LD      H,A
        LD      A,E
        RLCA 
        RLCA 
        RLCA 
        XOR     D
        AND     199
        XOR     D
        RLCA 
        RLCA 
        LD      L,A
        LD      (ADDRESS),HL
        LD      A,E
        AND     7
        INC     A
        LD      (L36031),A
        RET 
;+++++++++++++++++++++++++++++
MOVE_S  LD      HL,(L36044)
        LD      DE,L36842
        PUSH    AF
        LD      A,14
L36468  LDI 
        EX      DE,HL
        LD      (HL),0
        EX      DE,HL
        INC     DE
        DEC     A
        JR      NZ,L36468
        LD      A,14
L36480  LDI 
        EX      DE,HL
        LD      (HL),255
        EX      DE,HL
        INC     DE
        DEC     A
        JR      NZ,L36480
        POP     AF
        PUSH    AF
L36492  LD      HL,L36842
        LD      B,7
L36497  SRL     (HL)
        INC     HL
        RR      (HL)
        INC     HL
        SRL     (HL)
        INC     HL
        RR      (HL)
        INC     HL
        DJNZ    L36497
        DEC     A
        JR      NZ,L36492
        POP     AF
L36515  LD      B,7
        PUSH    HL
L36518  LD      E,255
        RR      E
        RR      (HL)
        INC     HL
        RR      (HL)
        INC     HL
        RR      E
        RR      (HL)
        INC     HL
        RR      (HL)
        INC     HL
        DJNZ    L36518
        POP     HL
        DEC     A
        JR      NZ,L36515
        RET 
;++++++++++++++++++++++++++++++
PRINT_S LD      A,(X_COORD)
        CP      248
        JR      NC,L36607
        LD      HL,(ADDRESS)
        LD      IX,L36842
        LD      DE,L36870
        LD      B,14
L36562  LD      A,(DE)
        AND     (HL)
        OR      (IX+0)
        LD      (HL),A
        INC     IX
        INC     DE
        INC     HL
        LD      A,(DE)
        AND     (HL)
        OR      (IX+0)
        LD      (HL),A
        INC     IX
        INC     DE
        DEC     HL
        INC     H
        LD      A,H
        AND     7
        JR      NZ,L36604
        LD      A,L
        ADD     A,32
        LD      L,A
        CCF 
        SBC     A,A
        AND     248
        ADD     A,H
        LD      H,A
        CP      88
        JR      NZ,L36604
        LD      H,0
L36604  DJNZ    L36562
        RET 
;+++++++++++++++++++++++++++++++
L36607  LD      HL,(ADDRESS)
        LD      IX,L36842
        LD      DE,L36870
        LD      B,14
L36619  LD      A,(DE)
        AND     (HL)
        OR      (IX+0)
        LD      (HL),A
        INC     IX
        INC     DE
        INC     IX
        INC     DE
        INC     H
        LD      A,H
        AND     7
        JR      NZ,L36653
        LD      A,L
        ADD     A,32
        LD      L,A
        CCF 
        SBC     A,A
        AND     248
        ADD     A,H
        LD      H,A
        CP      88
        JR      NZ,L36653
        LD      H,0
L36653  DJNZ    L36619
        RET 
INMEM   LD      HL,(ADDRESS)
        LD      DE,L36814
        LD      A,14
L36664  LDI 
        LDI 
        DEC     HL
        DEC     HL
        EX      AF,AF'
        CALL    L36784
        EX      AF,AF'
        DEC     A
        JR      NZ,L36664
        RET 
OUTMEM  LD      DE,0
OUT_LOP EQU     $-  2
        LD      HL,L36814
        LD      A,14
L36687  LDI 
        LDI 
        DEC     DE
        DEC     DE
        EX      AF,AF'
        CALL    L36799
        EX      AF,AF'
        DEC     A
        JR      NZ,L36687
        RET 
FLASH_S LD      A,(FLSHA)
        OR      A
        JR      NZ,L36715
        LD      HL,KURZOR
        LD      (L36042),HL
        RET 
L36715  LD      A,10
L36716  EQU     $-  1
        DEC     A
        LD      (L36716),A
        RET     NZ
        LD      A,10
        LD      (L36716),A
        LD      A,1
L36728  EQU     $-  1
        DEC     A
        JR      Z,L36742
        LD      A,1
        LD      (L36728),A
        LD      HL,KURZOR
        JR      L36748
L36742  LD      (L36728),A
        LD      HL,KURZOR+28
L36748  LD      (L36042),HL
        RET 
;++++++++++ VID CURSORA +++++
PRC     LD      HL,(L36042)
        LD      (L36044),HL
        RET 
;++++++++++++++++++++++++++++
L36784  INC     H
        LD      A,H
        AND     7
        RET     NZ
        LD      A,L
        ADD     A,32
        LD      L,A
        RET     C
        LD      A,H
        SUB     8
        LD      H,A
        RET 
L36799  INC     D
        LD      A,D
        AND     7
        RET     NZ
        LD      A,E
        ADD     A,32
        LD      E,A
        RET     C
        LD      A,D
        SUB     8
        LD      D,A
        RET 
;++++++++++++++++++++++
L36814  DEFS    28,0
L36842  DEFS    28,0
L36870  DEFS    28,0
