;
;       Disassembled by:
;               DASMx object code disassembler
;               (c) Copyright 1996-2003   Conquest Consultants
;               Version 1.40 (Oct 18 2003)
;
;       File:           wd1015-14.bin
;
;       Size:           2048 bytes
;       Checksum:       BFDD
;       CRC-32:         45639130
;
;       Date:           Thu Aug 02 00:50:17 2018
;
;       CPU:            Intel 8048 (MCS-48 family)
;
;
;
        org     00000H
;
        anl     p2,#0DFH
        call    L00BA
L0004:
        mov     r0,#04DH
        mov     r1,#002H
L0008:
        call    L007F
        call    L0098
        call    L0098
L000E:
        call    L0705
        jnz     L0016
        jni     L0017
        jmp     L000E
;
L0016:
        outl    p1,a
L0017:
        clr     a
        mov     psw,a
L0019:
        jni     L001D
        jmp     L0019
;
L001D:
        mov     r2,#002H
        clr     a
        call    L00C1
        mov     r2,#002H
        call    L07E7
        mov     r1,#020H
        mov     r2,#006H
        call    L03DC
        mov     r0,#028H
        mov     r1,#007H
        call    L007F
        mov     r0,#049H
        mov     @r0,#062H
        mov     r1,#021H
        mov     a,@r1
        jb5     L003D
        mov     @r0,#04FH
L003D:
        dec     r1
        mov     a,@r1
        add     a,#0F0H
        mov     a,@r1
        jnc     L0052
        add     a,#020H
        jc      L004C
L0048:
        mov     r3,#020H
        jmp     L0054
;
L004C:
        add     a,#0F9H
        jc      L0048
        add     a,#017H
L0052:
        call    L0129
L0054:
        call    L00A4
        call    L00F3
        mov     a,r3
        mov     r0,#028H
        orl     a,@r0
        mov     @r1,a
        mov     r2,#003H
        jb7     L006A
        mov     r0,#023H
        inc     r1
        inc     r1
        inc     r1
        call    L03E5
        jmp     L0017
;
L006A:
        mov     r0,#021H
        mov     a,@r0
        anl     a,#020H
        mov     r0,#04DH
        orl     a,@r0
L0072:
        inc     r1
        mov     @r1,a
        dec     r0
        mov     a,@r0
        djnz    r2,L0072
        rr      a
        rr      a
        dec     r1
        orl     a,@r1
        mov     @r1,a
        jmp     L0017
;
L007F:
        clr     a
L0080:
        mov     @r0,a
        inc     r0
        djnz    r1,L0080
        ret
;
        db      001H
;
        jb1     L0004
        inc     @r1
        outl    bus,a
        mov     @r0,a
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        anl     p1,#000H
        anl     p1,#00BH
        inc     r0
;
        db      001H
;
L0098:
        mov     r2,#085H
        mov     r3,#013H
L009C:
        mov     a,r2
        movp    a,@a
        mov     @r0,a
        inc     r0
        inc     r2
        djnz    r3,L009C
        ret
;
L00A4:
        call    L07E5
        mov     r1,#021H
        mov     a,@r1
        anl     a,#020H
        xch     a,r3
        jz      L00B0
        inc     r3
        inc     r3
L00B0:
        xch     a,r3
        movx    @r0,a
        mov     r2,#007H
        mov     a,#008H
        anl     p1,#0CFH
        call    L00C1
L00BA:
        mov     a,#0F8H
        outl    p2,a
        mov     a,#040H
        outl    p1,a
        ret
;
L00C1:
        call    L00C9
        call    L07E7
        orl     p2,#002H
        jmp     L00E5
;
L00C9:
        mov     r1,a
        in      a,p1
        anl     a,#037H
        orl     a,r1
        outl    p1,a
        ret
;
L00D0:
        orl     a,#080H
        call    L00C9
        call    L00DB
        call    L07D7
        orl     p2,#002H
        ret
;
L00DB:
        mov     a,#004H
        call    L00EE
        mov     a,@r0
        orl     a,#002H
        ret
;
L00E3:
        call    L00D0
L00E5:
        jt0     L00E5
        anl     p2,#0FDH
        orl     p2,#010H
        ret
;
L00EC:
        mov     a,#012H
L00EE:
        mov     r0,#049H
        add     a,@r0
        mov     r0,a
        ret
;
L00F3:
        mov     a,#008H
L00F5:
        mov     r1,#049H
        add     a,@r1
        mov     r1,a
        ret
;
        nop
        nop
        nop
        nop
        movp    a,@a
        ret
;
        addc    a,r0
        inc     a
        xch     a,r2
        xch     a,r5
        inc     r1
        movx    @r1,a
        inc     r3
        inc     r5
        inc     r7
        xch     a,r2
        xch     a,@r1
        mov     a,#04DH
        outl    p1,a
        call    L036E
        clr     a
        xch     a,r2
        xch     a,r2
;
        db      09BH
;
        en      tcnti
        orld    p5,a
        clr     c
        jmp     L0300
        jmp     L0610
        jmp     L062A
        jmp     L0600
        jmp     L0404
        jmp     L0486
        jmp     L0351
        jmp     L0705
        jmp     L078A
L0129:
        jmpp    @a                                              ;INFO: indirect jump
;
        mov     r3,#020H
L012C:
        ret
;
        call    L00F3
        call    L03CC
        mov     r2,#004H
        call    L0141
        call    L00A4
        jmp     L0017
;
        call    L07E5
        mov     r1,#04EH
        mov     a,@r1
        movx    @r0,a
        mov     r2,#007H
L0141:
        mov     a,#048H
        mov     r3,#000H
        jmp     L00C1
;
L0147:
        call    L0167
        movx    a,@r0
        inc     r1
        mov     @r1,a
        ret
;
        mov     r2,#000H
        mov     a,#040H
        call    L00C1
        call    L07D6
        mov     a,#000H
        call    L0147
        mov     a,#002H
        call    L0167
        mov     a,#00EH
        call    L0147
        mov     a,#00CH
        call    L0147
        mov     a,#010H
L0167:
        call    L00F5
        movx    a,@r0
        mov     @r1,a
L016B:
        clr     a
        mov     r3,a
        ret
;
        mov     a,#040H
L0170:
        call    L00E3
        jmp     L016B
;
L0174:
        mov     a,#048H
        jmp     L0170
;
        call    L03A8
        mov     a,#007H
        movx    @r1,a
        movx    a,@r0
        mov     r3,#003H
        jb5     L012C
        mov     r3,#004H
        cpl     a
        jb6     L012C
        mov     r3,#008H
        jb4     L012C
        jmp     L016B
;
        anl     p2,#0FBH
        jmp     L0406
;
        orl     p2,#004H
        mov     a,#0FFH
        jmp     L0407
;
        anl     p2,#0FBH
        jmp     L0488
;
        mov     r0,#021H
        mov     a,@r0
        anl     a,#0E0H
        mov     @r0,a
        clr     a
        inc     r0
        mov     @r0,a
        inc     r0
        mov     @r0,a
        call    L0669
        jnz     L012C
L01AA:
        call    L0355
        jnz     L012C
        call    L05B6
        jb1     L012C
        jz      L01B9
        mov     a,#0E7H
        add     a,r3
        jnz     L012C
L01B9:
        call    L04DE
        jb0     L016B
        jmp     L01AA
;
L01BF:
        call    L04C6
        mov     r0,#021H
        mov     a,@r0
        anl     a,#01FH
        mov     r1,#04DH
        mov     @r1,a
        inc     r0
        mov     a,@r0
        anl     a,#03FH
        dec     r1
        mov     @r1,a
        mov     a,@r0
        rl      a
        rl      a
        anl     a,#003H
        mov     r1,#04AH
        mov     @r1,a
        inc     r0
        mov     a,@r0
        inc     r1
        mov     @r1,a
        mov     r0,#028H
        mov     @r0,#080H
        mov     a,#001H
        call    L02D8
        jc      L01F2
        inc     r0
        mov     a,#003H
        call    L01F6
        jc      L01F2
        mov     a,#002H
        call    L01F6
        jnc     L016B
L01F2:
        mov     a,#021H
        mov     r3,a
        ret
;
L01F6:
        inc     r0
L01F7:
        call    L00F5
        mov     a,@r1
        cpl     a
        inc     a
        add     a,@r0
        ret
;
        movp    a,@a
        ret
;
        xch     a,r0
        orl     a,#029H
        xch     a,@r0
        xchd    a,@r1
        outl    p1,a
;
        db      038H, 033H
;
        xch     a,@r0
        da      a
        stop    tcnt
;
        db      073H
;
        call    L0365
        jb3     L026E
        xch     a,@r0
        jmp     L0269
;
        rrc     a
        add     a,r1
        call    L0361
        add     a,r4
L0218:
        call    L07D0
        call    L0257
        mov     a,#021H
L021E:
        call    L024C
        mov     r0,#026H
        mov     a,@r0
        movx    @r1,a
        in      a,p2
        cpl     a
        jb2     L022B
        mov     r0,#0A0H
        movx    a,@r0
L022B:
        anl     p2,#0E7H
        jmp     L026B
;
L022F:
        in      a,p2
        jb2     L0244
        anl     p2,#0F7H
        mov     r1,#060H
        clr     a
        movx    @r1,a
        orl     p2,#008H
        cpl     a
        movx    @r1,a
        anl     p2,#0F3H
        mov     r0,#0E0H
        mov     r1,#034H
        call    L03CE
L0244:
        call    L07D0
L0246:
        call    L0257
        mov     a,#031H
        jmp     L021E
;
L024C:
        mov     r2,#007H
L024E:
        mov     r1,#060H
        xch     a,r2
        movx    @r1,a
        mov     r0,#020H
        mov     a,r2
        movx    @r0,a
L0256:
        ret
;
L0257:
        mov     r0,#04CH
        mov     a,@r0
        mov     r2,#003H
        jmp     L024E
;
L025E:
        mov     a,#007H
L0260:
        mov     r1,#060H
        movx    @r1,a
        mov     r0,#020H
        movx    a,@r0
        ret
;
L0267:
        mov     a,#041H
L0269:
        call    L024C
L026B:
        jt1     L026F
        jmp     L026B
;
L026F:
        orl     p2,#018H
        in      a,p2
        mov     r2,a
        call    L025E
        mov     r3,#003H
        jb5     L0293
        jb0     L027E
        clr     a
        mov     r3,a
        ret
;
L027E:
        mov     a,#001H
        movx    @r1,a
        movx    a,@r0
        mov     r3,#004H
        jb2     L0293
        mov     r3,#019H
        jb7     L0293
        mov     r3,#012H
        jb0     L0290
        mov     r3,#015H
L0290:
        mov     a,#002H
        ret
;
L0293:
        mov     a,#001H
        ret
;
L0296:
        call    L00E5
        in      a,p2
        jb2     L0256
        mov     r1,#030H
        anl     p2,#0F7H
        mov     r0,#0E0H
        call    L03DA
        mov     r1,#030H
        call    L03CC
        mov     r2,#004H
        mov     a,#048H
        jmp     L00C1
;
L02AD:
        call    L00E5
        in      a,p2
        jb2     L0256
        mov     r2,#004H
        mov     a,#040H
        call    L00C1
        mov     r1,#034H
        jmp     L03D8
;
L02BC:
        mov     a,#00EH
        call    L00EE
        mov     a,@r0
        rrc     a
        mov     r2,a
        inc     r0
        mov     a,@r0
        rrc     a
        xch     a,r2
        rrc     a
        mov     a,r2
        rrc     a
        mov     r2,#001H
        call    L024E
        mov     a,#00DH
        call    L02D8
        cpl     c
        in      a,p1
        rl      a
        rrc     a
        outl    p1,a
        ret
;
L02D8:
        call    L00EE
        mov     r1,#005H
        call    L03EA
        call    L02EA
        mov     r0,#04BH
        mov     a,@r0
        add     a,r5
        mov     r5,a
        dec     r0
        mov     a,@r0
        addc    a,r4
        mov     r4,a
        ret
;
L02EA:
        mov     a,r5
        cpl     a
        add     a,#001H
        mov     r5,a
        mov     a,r4
        cpl     a
        addc    a,#000H
        mov     r4,a
        ret
;
L02F5:
        mov     a,@r0
        xrl     a,@r1
L02F7:
        inc     r0
        inc     r1
        jnz     L0256
        mov     a,@r0
        xrl     a,@r1
        ret
;
        movp    a,@a
        ret
;
L0300:
        call    L0346
        jnz     L0325
        call    L00EC
        mov     @r0,a
        mov     a,#006H
        call    L00F5
        clr     a
        mov     @r1,a
        inc     r1
        mov     @r1,a
        mov     r4,#004H
        mov     r5,#000H
L0313:
        in      a,p2
        jb6     L0326
        orl     p2,#001H
        anl     p2,#0FEH
        call    L032A
        jnz     L0325
        djnz    r5,L0313
        djnz    r4,L0313
        mov     r3,#006H
        mov     a,r3
L0325:
        ret
;
L0326:
        mov     a,#011H
        call    L024C
L032A:
        mov     r0,#020H
        mov     r1,#05DH
L032E:
        movx    a,@r0
        mov     r3,#003H
        jb5     L033C
        cpl     a
        mov     r3,#004H
        jb6     L033C
        jb4     L033E
        mov     r3,#000H
L033C:
        mov     a,r3
        ret
;
L033E:
        djnz    r2,L032E
        djnz    r1,L032E
        mov     r3,#002H
        mov     a,r3
        ret
;
L0346:
        call    L03A8
        orl     p1,#080H
        mov     a,#007H
        mov     r0,#060H
        movx    @r0,a
        jmp     L032A
;
L0351:
        call    L01BF
        jb0     L0325
L0355:
        mov     r1,#021H
        mov     a,@r1
        mov     r1,#061H
        jb5     L035F
        mov     r1,#074H
        cpl     a
L035F:
        mov     @r1,a
        call    L0346
        jnz     L0325
        mov     a,#007H
        call    L02D8
        inc     r0
        mov     a,#007H
        call    L00F5
        call    L03EA
        mov     a,r4
        jb7     L0376
        anl     p1,#07FH
        jmp     L0378
;
L0376:
        call    L02EA
L0378:
        orl     a,r5
        jz      L03A6
        call    L00EC
        mov     @r0,a
        mov     a,r5
        jz      L0382
        inc     r4
L0382:
        mov     r1,#025H
L0384:
        mov     a,#007H
        anl     a,@r1
        mov     r2,#001H
        mov     r3,#001H
        add     a,#0FBH
        jz      L0398
        mov     r3,#014H
        inc     a
        jz      L0398
        mov     r2,#002H
        mov     r3,#0E4H
L0398:
        orl     p2,#001H
        anl     p2,#0FEH
L039C:
        djnz    r3,L039C
        djnz    r2,L039C
        djnz    r5,L0382
        djnz    r4,L0384
        jnz     L032A
L03A6:
        mov     r3,a
        ret
;
L03A8:
        anl     p2,#0FEH
        mov     r0,#021H
        mov     a,@r0
        anl     a,#020H
        rr      a
        mov     r2,a
        rr      a
        xch     a,r2
        add     a,#010H
        mov     r1,#04DH
        orl     a,@r1
        mov     r0,a
        in      a,p1
        anl     a,#048H
        orl     a,r0
        outl    p1,a
        mov     a,#005H
        call    L00EE
        mov     a,@r0
        orl     a,r2
        orl     a,@r1
        mov     r0,#027H
        mov     @r0,a
        mov     r2,#006H
        jmp     L024E
;
L03CC:
        call    L07E1
L03CE:
        mov     r2,#004H
L03D0:
        mov     a,@r1
        movx    @r0,a
        inc     r1
        djnz    r2,L03D0
L03D5:
        orl     p2,#018H
        ret
;
L03D8:
        call    L07E1
L03DA:
        mov     r2,#004H
L03DC:
        movx    a,@r0
        mov     @r1,a
        inc     r1
        djnz    r2,L03DC
        jmp     L03D5
;
L03E3:
        dec     r0
        dec     r1
L03E5:
        mov     a,@r0
        mov     @r1,a
        djnz    r2,L03E3
        ret
;
L03EA:
        mov     r2,#002H
        jmp     L03E5
;
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        movp    a,@a
        ret
L0400:
        jmp     L0503
L0402:
        jmp     L02AD
;
L0404:
        orl     p2,#004H
L0406:
        clr     a
L0407:
        mov     r0,#04EH
        mov     @r0,#000H
        mov     r0,#02FH
        mov     @r0,a
        call    L01BF
        jb0     L044C
L0412:
        call    L0355
        jnz     L044C
        call    L05B1
        jb0     L044C
        jb1     L0451
L041C:
        call    L0218
        jb0     L044C
        jb1     L044D
        in      a,p2
        cpl     a
        jb2     L0429
        mov     a,r2
        jb7     L0457
L0429:
        mov     r0,#02FH
        mov     a,@r0
        jnz     L0432
        mov     a,#048H
        call    L00D0
L0432:
        call    L04C6
        mov     r0,#024H
        mov     a,@r0
        dec     a
        jz      L0447
        mov     @r0,a
        call    L04D9
        mov     r7,a
        call    L0296
        mov     a,r7
        jb0     L044C
        jb2     L0412
        jmp     L041C
;
L0447:
        call    L0296
L0449:
        mov     r3,#000H
L044B:
        mov     a,r3
L044C:
        ret
;
L044D:
        call    L0477
        jnz     L041C
L0451:
        call    L047C
        jnz     L044C
        jmp     L0412
;
L0457:
        anl     p2,#0F7H
        mov     r0,#0E0H
        mov     r1,#02BH
        mov     r2,#004H
        clr     f0
        cpl     f0
L0461:
        movx    a,@r0
        xch     a,@r1
        xrl     a,@r1
        jz      L0467
        clr     f0
L0467:
        inc     r1
        djnz    r2,L0461
        orl     p2,#008H
        jf0     L0400
        mov     r0,#025H
        mov     a,@r0
        jb6     L0400
        mov     r3,#011H
        jmp     L044D
;
L0477:
        mov     r0,#02AH
        mov     a,@r0
        inc     @r0
        ret
;
L047C:
        mov     r0,#029H
        mov     a,@r0
        inc     @r0
        jz      L044B
        call    L04CF
        jmp     L0300
;
L0486:
        orl     p2,#004H
L0488:
        mov     a,#040H
        call    L00D0
        call    L01BF
        jb0     L0402
L0490:
        call    L02AD
L0492:
        call    L0355
        jnz     L044C
        call    L05B1
        jb0     L044C
        jb1     L04C0
        call    L02BC
L049E:
        call    L022F
        jb0     L044C
        jb1     L04BC
        mov     r0,#024H
        mov     a,@r0
        dec     a
        mov     r3,a
        jz      L044C
        mov     @r0,a
        mov     a,#040H
        call    L00D0
        call    L04C6
        call    L04D9
        jb0     L0402
        jb2     L0490
        call    L02AD
        jmp     L049E
;
L04BC:
        call    L0477
        jnz     L049E
L04C0:
        call    L047C
        jnz     L044C
        jmp     L0492
;
L04C6:
        mov     r0,#025H
        mov     a,@r0
        jb7     L044C
        mov     r0,#029H
        mov     @r0,#0FFH
L04CF:
        mov     r0,#025H
        mov     a,@r0
        jb7     L044C
        mov     r0,#02AH
        mov     @r0,#0F8H
        ret
;
L04D9:
        call    L06EB
        jnz     L0449
        mov     @r0,a
L04DE:
        mov     r0,#04DH
        inc     @r0
        mov     a,#002H
        call    L01F7
        jnz     L04FA
        mov     @r0,a
        mov     r1,#04BH
        inc     @r1
        mov     a,@r1
        dec     r1
        jnz     L04F0
        inc     @r1
L04F0:
        mov     a,#000H
        call    L00EE
        call    L02F5
        mov     r3,#021H
        jz      L04FC
L04FA:
        mov     r3,#004H
L04FC:
        mov     a,r3
        ret
;
        movp    a,@a
        ret
        jmp     L0008
;
        inc     @r0
L0503:
        mov     r0,#02EH
        mov     r1,#005H
        mov     r2,#003H
        call    L03E5
        dec     r0
        mov     a,@r0
        mov     r2,a
        mov     a,#004H
        call    L00F5
        mov     a,@r1
        movp    a,@a
        mov     r6,a
        mov     r7,#007H
        clr     f1
L0518:
        mov     a,r2
        jnz     L0529
        mov     a,r7
        add     a,#008H
        mov     r7,a
        clr     a
        addc    a,r6
        mov     r6,a
        clr     a
        xch     a,r5
        xch     a,r4
        xch     a,r3
        mov     r2,a
        jmp     L0518
;
L0529:
        clr     c
        mov     a,r2
        rrc     a
        mov     r2,a
        mov     a,r3
        rrc     a
        mov     r3,a
        mov     a,r4
        rrc     a
        mov     r4,a
        mov     a,r5
        rrc     a
        mov     r5,a
        jnc     L0548
        mov     a,r5
        xrl     a,#022H
        mov     r5,a
        mov     a,r4
        xrl     a,#002H
        mov     r4,a
        mov     a,r3
        xrl     a,#005H
        mov     r3,a
        mov     a,r2
        xrl     a,#08AH
        mov     r2,a
L0548:
        jf1     L0569
        mov     a,r2
        orl     a,r5
        jnz     L0570
        mov     r0,#010H
        mov     a,r4
        mov     r1,a
        mov     a,r3
L0553:
        rrc     a
        xch     a,r1
        rrc     a
        xch     a,r1
        jc      L055B
        djnz    r0,L0553
L055B:
        mov     a,#010H
        call    L00F5
        mov     a,@r1
        cpl     a
        add     a,r0
        jc      L0570
        mov     r1,#04EH
        mov     a,r0
        mov     @r1,a
        cpl     f1
L0569:
        mov     a,r7
        anl     a,#007H
        jnz     L0574
        jmp     L057D
;
L0570:
        mov     a,r6
        orl     a,r7
        jz      L05A5
L0574:
        mov     a,#0FFH
        add     a,r7
        mov     r7,a
        jc      L0529
        dec     r6
        jmp     L0529
;
L057D:
        mov     r1,#003H
        clr     c
L0580:
        mov     a,r6
        rrc     a
        mov     r6,a
        mov     a,r7
        rrc     a
        mov     r7,a
        djnz    r1,L0580
        call    L05A8
        movx    a,@r0
        xrl     a,r3
        mov     r3,a
        movx    a,@r0
        xrl     a,r4
        mov     r4,a
        movx    a,@r0
        xrl     a,r5
        mov     r5,a
        call    L05A8
        mov     a,r3
        movx    @r0,a
        mov     a,r4
        movx    @r0,a
        mov     a,r5
        movx    @r0,a
        mov     r0,#02FH
        mov     a,@r0
        jnz     L05A2
        call    L0174
L05A2:
        mov     r3,#018H
L05A4:
        ret
;
L05A5:
        mov     r3,#011H
        ret
;
L05A8:
        call    L00DB
        add     a,r6
        call    L07D7
        mov     a,r7
        mov     r2,a
        jmp     L07EB
;
L05B1:
        call    L00EC
        mov     a,@r0
        jz      L05A4
L05B6:
        call    L0267
        jz      L05C2
        mov     r5,a
        mov     a,#0E7H
        add     a,r3
        jz      L05C2
        mov     a,r5
        ret
;
L05C2:
        mov     a,#003H
        movx    @r1,a
        movx    a,@r0
        mov     r5,a
        mov     a,#004H
        movx    @r1,a
        movx    a,@r0
        mov     r4,a
        mov     a,#005H
        movx    @r1,a
        movx    a,@r0
        mov     r3,a
        mov     a,#006H
        movx    @r1,a
        movx    a,@r0
        mov     r0,#027H
        xrl     a,@r0
        jnz     L05EC
        mov     r0,#04AH
        mov     r1,#003H
        call    L02F5
        jnz     L05EC
        mov     a,r5
        mov     r3,#019H
        jb7     L05F1
        call    L00EC
        clr     a
        mov     @r0,a
        ret
;
L05EC:
        mov     r3,#015H
        mov     a,#002H
        ret
;
L05F1:
        mov     a,#001H
        ret
;
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        movp    a,@a
        ret
;
L0600:
        call    L0669
        jnz     L063E
        mov     r7,#080H
        call    L0673
        jc      L063E
        call    L06B1
        jnz     L063E
        jmp     L063A
;
L0610:
        call    L0669
        jnz     L063E
        call    L0671
        jc      L063E
L0618:
        call    L0355
        jnz     L063E
        call    L06B5
        jnz     L063E
        call    L0649
        jnz     L063E
        call    L063F
        jb0     L063C
        jmp     L0618
;
L062A:
        call    L0669
        jnz     L063E
        call    L0671
        jc      L063E
        call    L06B1
        jnz     L063E
        call    L0649
        jnz     L063E
L063A:
        call    L063F
L063C:
        clr     a
        mov     r3,a
L063E:
        ret
;
L063F:
        mov     r0,#022H
        mov     a,@r0
        anl     a,#03FH
        mov     r0,#04CH
        mov     @r0,a
        jmp     L04DE
;
L0649:
        orl     p2,#004H
        mov     r0,#04CH
        mov     @r0,a
L064E:
        call    L04C6
L0650:
        call    L0246
        jb0     L063E
        jb1     L065B
        call    L06EB
        jnz     L064E
        ret
;
L065B:
        call    L0477
        jnz     L0650
        call    L047C
        jnz     L063E
        call    L0355
        jnz     L063E
        jmp     L0650
;
L0669:
        call    L01BF
        jb0     L063E
        call    L07D0
        jmp     L0300
;
L0671:
        mov     r7,#000H
L0673:
        mov     r0,#024H
        call    L06EE
        mov     r3,#020H
        jc      L063E
        mov     a,@r0
        mov     r2,a
        mov     r0,#049H
        mov     r3,#011H
L0681:
        dec     r0
        mov     @r0,#0FFH
        djnz    r3,L0681
L0686:
        mov     a,@r0
        jb7     L068C
        inc     r0
        jmp     L0696
;
L068C:
        mov     a,r3
        mov     @r0,a
        inc     r3
        inc     a
        xrl     a,@r1
        jz      L06A3
        mov     a,r2
        add     a,r0
        mov     r0,a
L0696:
        mov     a,@r1
        cpl     a
        inc     a
        add     a,r0
        add     a,#0C8H
        jnc     L0686
        add     a,#038H
        mov     r0,a
        jmp     L0696
;
L06A3:
        call    L07D6
        mov     r1,#038H
L06A7:
        mov     a,r7
        movx    @r0,a
        add     a,@r1
        movx    @r0,a
        inc     r1
        djnz    r3,L06A7
        orl     p2,#010H
        ret
;
L06B1:
        call    L0355
        jnz     L063E
L06B5:
        call    L02BC
        call    L06E1
        mov     a,#003H
        call    L00F5
        mov     a,@r1
        mov     r2,#002H
        call    L024E
        mov     a,#011H
        call    L00F5
        mov     a,@r1
        mov     r2,#003H
        call    L024E
        mov     r0,#04AH
        mov     a,@r0
        mov     r2,#005H
        call    L024E
        mov     r0,#04BH
        mov     a,@r0
        mov     r2,#004H
        call    L024E
        mov     a,#051H
        call    L024C
        call    L07D6
        call    L026B
L06E1:
        mov     r4,a
        mov     a,#006H
        call    L0260
        xrl     a,#080H
        movx    @r0,a
        mov     a,r4
        ret
;
L06EB:
        mov     r0,#04CH
        inc     @r0
L06EE:
        mov     a,#003H
        jmp     L01F7
;
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        movp    a,@a
        ret
;
        call    L02F7
        jmp     L07B5
;
        db      0B7H
;
L0705:
        in      a,p1
        xrl     a,#080H
        outl    p1,a
        mov     r7,#045H
        mov     r3,#031H
        mov     r1,#0FFH
        mov     r4,#0FFH
        mov     a,psw
        anl     a,#007H
        rl      a
        add     a,#008H
        mov     r0,a
        mov     @r0,#02AH
        inc     r0
        mov     @r0,#007H
        inc     r0
        mov     @r0,#0FEH
        inc     r0
        mov     a,#007H
L0723:
        mov     @r0,a
L0724:
        mov     a,psw
        inc     a
        inc     a
        mov     psw,a
        mov     a,r1
L0729:
        ret
;
        add     a,r4
        rl      a
        mov     r4,a
        djnz    r1,L0724
        mov     a,@r0
        add     a,#0FFH
        jc      L0723
        clr     a
        movp    a,@a
        xrl     a,r4
        jnz     L07B8
        call    L07C0
L073B:
        inc     r1
        mov     a,@r1
        movx    @r0,a
        djnz    r2,L073B
        dec     r7
        mov     r4,#001H
L0743:
        call    L07C0
L0745:
        call    L07C8
        mov     @r1,a
        djnz    r2,L0745
        call    L07C0
L074C:
        call    L07C8
        xrl     a,@r1
        jnz     L07B1
        djnz    r2,L074C
        mov     a,r4
        add     a,r4
        xch     a,r4
        jnz     L0743
        call    L07B1
        dec     r7
        call    L078A
        jnz     L07B8
        dec     r7
        mov     r3,#032H
        in      a,p2
        cpl     a
        jb7     L07B8
        mov     r2,#001H
        mov     r4,#004H
L076A:
        mov     a,r2
        movp    a,@a
        movx    @r0,a
        inc     r2
        djnz    r4,L076A
        in      a,p2
        jb7     L07B8
        orl     p2,#008H
        dec     r7
        mov     r0,#020H
        mov     r1,#060H
        mov     r2,#002H
        mov     r4,#002H
L077E:
        mov     a,r2
        movx    @r1,a
        movx    @r0,a
        movx    a,@r0
        xrl     a,r2
        jnz     L07B8
        inc     r2
        djnz    r4,L077E
        mov     r3,a
        ret
;
L078A:
        mov     r3,#030H
        mov     r4,#001H
L078E:
        call    L07BA
L0790:
        call    L07C8
        movx    @r0,a
        djnz    r6,L0790
        djnz    r2,L0790
        call    L07BA
        orl     p2,#01CH
        mov     r1,#0A0H
        movx    a,@r1
        anl     p2,#0E7H
L07A0:
        call    L07C8
        movx    a,@r0
        xrl     a,r5
        jnz     L07B8
        djnz    r6,L07A0
        djnz    r2,L07A0
        mov     a,r4
        add     a,r4
        xch     a,r4
        jnz     L078E
        mov     r3,a
        ret
;
L07B1:
        call    L07C0
L07B3:
        movx    a,@r0
        inc     r1
L07B5:
        mov     @r1,a
        djnz    r2,L07B3
L07B8:
        mov     a,r7
        ret
;
L07BA:
        mov     r2,#004H
        mov     r6,#000H
        jmp     L07C4
;
L07C0:
        mov     r1,#01FH
        mov     r2,#060H
L07C4:
        mov     a,r4
        mov     r5,a
        jmp     L07D6
;
L07C8:
        mov     a,r5
        jnz     L07CC
        inc     a
L07CC:
        add     a,r5
        mov     r5,a
        inc     r1
        ret
;
L07D0:
        call    L00DB
        mov     r0,#026H
        mov     @r0,a
        ret
;
L07D6:
        clr     a
L07D7:
        mov     r0,#060H
        orl     p2,#010H
        movx    @r0,a
        anl     p2,#0EFH
        mov     r0,#000H
        ret
;
L07E1:
        mov     r2,#004H
        jmp     L07E7
;
L07E5:
        mov     r2,#007H
L07E7:
        anl     p1,#0FFH
        call    L07D6
L07EB:
        mov     a,r2
        jz      L0729
L07EE:
        movx    a,@r0
        djnz    r2,L07EE
        ret
;
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        movp    a,@a
        ret
