;IN:  HL- 
;     DE-    
;     D-Y,E-X
;OUT: HL-  
Hero
        PUSH HL,DE
        LD HL,(DispMapX) ;H-Y, L-X ; 
        LD DE,(HeroCrd)  ;D-Y, E-X ;.   
        LD A,D
        INC A
        SUB H
        JR C,NOPRNT  ; 
        CP SCRHG/2+2
        JR NC,NOPRNT ; 
        LD A,E
        INC A
        SUB L
        JR C,NOPRNT  ; 
        CP SCRWD/2+2
        JR NC,NOPRNT ; 

        POP DE,HL

        LD A,32
        LD B,A
        LD (hero1-1),A
        LD A,D
        CP 223
        JR C,hero0
        NEG 
        LD C,A
        LD A,B
        SUB C
        RET Z   ;    
        LD (hero1-1),A  ;  , .. 
                        ;  
        LD A,C
        ADD A,A
        ADD A,A
        LD B,0
        LD C,A
        ADD HL,BC       ;    
        LD D,B    ;Y=0

hero0   LD A,PG_HERO
        CALL PAGE
        LD A,E
        AND 7

        DUP 3
        SRL D
        RR E
        EDUP 

        PUSH HL

        LD HL,SHADSCR
        ADD HL,DE

        INC A
        LD B,A
        LD A,-1
        ADD A,A
        DJNZ $-1

        LD (hero2-1),A

        EX DE,HL ;DE-    
        POP HL   ;HL- 

;       
        LD A,D
        CP SCRHG+(SHADSCR/256)
        RET NC

        LD B,32  ;    
hero1   PUSH BC
        LD C,(HL)
        INC HL
        LD B,(HL)
        INC HL
        LD A,(HL)
        INC HL
        PUSH HL
        LD H,(HL)
        LD L,A
        PUSH DE
        LD A,(DE)
        LD E,A
        SCF 
        SBC A,A
        LD D,0
hero2   RL C
        RL B
        RLA 
        ADD HL,HL
        RL D
        JR C,hero2
        AND E
        XOR D
        POP DE

        EX AF,AF'
        LD A,E
        AND 31
        CP SCRWD
        JR NC,hero3

        EX AF,AF'
        LD (DE),A

hero3   INC DE
        LD A,E
        AND 31
        CP SCRWD
        JR NC,hero4

        LD A,(DE)
        AND B
        XOR H
        LD (DE),A

;       
hero4   INC DE
        LD A,E
        AND 31
        CP SCRWD
        JR NC,hero5

        LD A,(DE)
        AND C
        XOR L
        LD (DE),A
hero5   DEC DE
        DEC DE
        LD HL,32
        ADD HL,DE
        EX DE,HL
        POP HL
        POP BC
        INC HL

;       
        LD A,D
        CP SCRHG+(SHADSCR/256)
        RET NC
        DJNZ hero1
        RET 