;
;         "wh1602.txt" ;     
;
 rdbfadr:   ;  BF     
   mov P0,#0xFF
   mov P2,#0b01011111
 pt_wh0:
   nop
   mov P2,#0b01111111
   nop
    mov a,P0
    mov P2,#0b11011111
   nop
  ret
;--------------------------------------------------------
 rddat:
   mov P0,#0xFF ;     
   mov P2,#0b11011111
  sjmp pt_wh0
;--------------------------------------------------------
 wrdat:
   mov P0,#0xFF ;     
   mov P2,#0b10011111
   nop
   mov P0,a
    nop
     mov P2,#0b10111111
      nop
      mov P2,#0b10011111
  pt_wh1:
      nop
     mov P0,#0xFF
    nop
   mov P2,#0b11011111
  ret
;--------------------------------------------------------
 wrslus:
   mov P0,#0xFF ;   
   mov P2,#0b00011111
   nop
   mov P0,a
    nop
     mov P2,#0b00111111
     nop
    mov P2,#0b00011111
   sjmp pt_wh1
;--------------------------------------------------------
 wait_wrt:
   acall rdbfadr
    jbc ACC.7,wait_wrt ;  BF=0
  ret
;--------------------------------------------------------
;--------------------------------------------------------
    ;     frame  
    ;    DPTR   = refram+frame (refram+r0)
    ;     ,  
;
 prints_1:
    mov a,#0b00001100 ;  
    acall wrslus
    acall wait_wrt
     mov a,#0b00000110 ;    ,  
    acall wrslus
    acall wait_wrt
    mov a,refram
    add a,r0 ;      
    setb ACC.7
    acall wrslus ;        
    acall wait_wrt
    push DPL
    push DPH
    mov DPL,r3
    mov DPH,r4 ;         DPTR
    mov r2,#0x10
    mov r1,#0 ;        
  pt_prt0:
      mov a,r1
      movc a,@a+dptr
       acall wrdat ;        
        acall wait_wrt
       inc r1
      djnz r2,pt_prt0
    pop DPH
    pop DPL
    ret
;--------------------------------------------------------
    ;     frame  
    ;   = bufos_0   = refram+frame (refram+r0)
    ;     ,  
    ;         
    ;   kursadr
;
 printb_1:
    mov a,#0b00001100 ;  
    acall wrslus
    acall wait_wrt
     mov a,#0b00000110 ;    ,  
    acall wrslus
    acall wait_wrt
    mov a,refram
    add a,r0 ;      
    setb ACC.7
    acall wrslus ;        
    acall wait_wrt
    mov r1,#bufos_0 ;      
    mov r2,#0x10
  pt_prt1:
       mov a,@r1
        acall wrdat ;        
        acall wait_wrt
       inc r1
      djnz r2,pt_prt1
     mov a,kursadr ;        kursadr
     setb ACC.7
     acall wrslus
    acall wait_wrt
    mov a,#0b00001111 ;     
    acall wrslus
    acall wait_wrt
    ret
;--------------------------------------------------------
 l40:
     mov r0,#bufos_0
     mov r1,#0
     mov r2,#16
   l40_1:
        mov a,r1
				movc a,@a+dptr ; /    dptr1 !!!/
        mov @r0,a
        inc r0
        inc r1
      djnz r2,l40_1
;     sdptr 0 ;  dptr0
    ret
 ;----------------------------------------------------