反汇编搞的源代码,凑合看吧!
;Made by xiexiaodong 2010.4.16
;Copyright by szyftech 2010.4.16
;www.yofeng.com
;********************************************************
org 0000h
ljmp X01c6 ;3
ljmp X000e ;3
nop ;1
nop ;1
nop ;1
nop ;1
nop ;1
ljmp X0382 ;3
;********************************************************
X000e:
push acc ;2
push psw ;2
mov psw,#08h ;3
clr a ;1
mov r5,a ;1
lcall X0379 ;3
setb c ;1
mov a,1ah ;2
subb a,#00h ;2
mov a,19h ;2
subb a,#00h ;2
jc X002d ;2
mov a,1ah ;2
dec 1ah ;2
jnz X002d ;2
dec 19h ;2
X002d:
jnb p3.2,X0033 ;3
ljmp X00f9 ;3
X0033:
mov r5,#00h ;2
X0035:
lcall X0379 ;3
jnb p3.2,X003e ;3
ljmp X00f9 ;3
X003e:
inc r5 ;1
cjne r5,#64h,X0035 ;3
X0042:
jnb p3.2,X0042 ;3
clr a ;1
mov r4,a ;1
X0047:
mov a,r4 ;1
clr c ;1
subb a,#03h ;2
jnc X009a ;2
mov 21h,#00h ;3
X0050:
mov a,21h ;2
clr c ;1
subb a,#08h ;2
jnc X0097 ;2
mov r5,#00h ;2
X0059:
lcall X0379 ;3
inc r5 ;1
mov a,r5 ;1
setb c ;1
subb a,#14h ;2
jc X0066 ;2
ljmp X00f9 ;3
X0066:
jb p3.2,X0059 ;3
mov r5,#00h ;2
X006b:
lcall X0379 ;3
inc r5 ;1
mov a,r5 ;1
setb c ;1
subb a,#14h ;2
jc X0078 ;2
ljmp X00f9 ;3
X0078:
jnb p3.2,X006b ;3
mov a,#11h ;2
add a,r4 ;1
mov r0,a ;1
push 08h ;2
mov a,@r0 ;1
mov r7,a ;1
add a,acc ;2
pop 08h ;2
mov @r0,a ;1
mov a,r5 ;1
clr c ;1
subb a,#08h ;2
jnc X0093 ;2
mov a,#11h ;2
add a,r4 ;1
mov r0,a ;1
inc @r0 ;1
X0093:
inc 21h ;2
sjmp X0050 ;2
X0097:
inc r4 ;1
sjmp X0047 ;2
X009a:
mov a,13h ;2
xrl a,#0c0h ;2
jz X00b2 ;2
mov a,13h ;2
xrl a,#30h ;2
jz X00b2 ;2
mov a,13h ;2
xrl a,#0ch ;2
jz X00b2 ;2
mov a,13h ;2
xrl a,#03h ;2
jnz X00f9 ;2
X00b2:
jnb 01h,X00d1 ;3
clr 01h ;2
setb 00h ;2
clr a ;1
mov r7,a ;1
X00bb:
mov a,#11h ;2
add a,r7 ;1
mov r0,a ;1
mov a,@r0 ;1
mov r6,a ;1
mov a,#1bh ;2
add a,r7 ;1
mov r0,a ;1
mov @r0,0eh ;2
inc r7 ;1
cjne r7,#03h,X00bb ;3
setb p1.7 ;2
setb tr0 ;2
sjmp X00f9 ;2
X00d1:
mov a,1ah ;2
orl a,19h ;2
jnz X00f3 ;2
mov a,11h ;2
cjne a,16h,X00f3 ;3
mov a,12h ;2
cjne a,17h,X00f3 ;3
mov a,13h ;2
cjne a,18h,X00f3 ;3
cpl p1.3 ;2
clr p1.0 ;2
mov r7,#28h ;2
mov r6,#00h ;2
lcall X030e ;3
setb p1.0 ;2
X00f3:
mov 19h,#00h ;3
mov 1ah,#3ch ;3
X00f9:
pop psw ;2
pop acc ;2
reti ;1
X00fe:
clr p1.3 ;2
mov 92h,#08h ;3
clr a ;1
mov 14h,a ;2
mov 15h,a ;2
mov 8eh,#01h ;3
clr 01h ;2
clr 00h ;2
mov sp,#60h ;3
mov tmod,#01h ;3
mov th0,#4ch ;3
mov tl0,#0d0h ;3
setb ex0 ;2
setb it0 ;2
setb et0 ;2
setb tr0 ;2
setb ea ;2
mov r5,#03h ;2
mov r4,a ;1
mov r7,a ;1
mov r6,#10h ;2
lcall X02e2 ;3
X012e:
jb p3.0,X018a ;3
mov r7,#0ah ;2
mov r6,#00h ;2
lcall X030e ;3
setb p1.7 ;2
X013a:
jb p3.0,X0164 ;3
clr ex0 ;2
inc 15h ;2
mov a,15h ;2
jnz X0147 ;2
inc 14h ;2
X0147:
mov r7,#0ah ;2
mov r6,#00h ;2
lcall X030e ;3
setb c ;1
mov a,15h ;2
subb a,#0d0h ;2
mov a,14h ;2
subb a,#07h ;2
jc X013a ;2
setb 01h ;2
clr p1.7 ;2
clr a ;1
mov 10h,a ;2
clr tr0 ;2
sjmp X013a ;2
X0164:
setb c ;1
mov a,15h ;2
subb a,#0d0h ;2
mov a,14h ;2
subb a,#07h ;2
clr a ;1
jc X0178 ;2
mov 14h,a ;2
mov 15h,a ;2
setb ex0 ;2
sjmp X018a ;2
X0178:
mov 14h,a ;2
mov 15h,a ;2
cpl p1.3 ;2
clr p1.0 ;2
mov r7,#14h ;2
mov r6,a ;1
lcall X030e ;3
setb p1.0 ;2
setb ex0 ;2
X018a:
jnb 00h,X01ac ;3
clr 00h ;2
mov r7,#00h ;2
mov r6,#10h ;2
lcall X0344 ;3
mov r3,#00h ;2
mov r2,#00h ;2
mov r1,#1bh ;2
mov r5,#03h ;2
mov r4,#00h ;2
mov r6,#10h ;2
lcall X0252 ;3
mov r5,#03h ;2
mov r4,#00h ;2
lcall X02e2 ;3
X01ac:
mov a,10h ;2
clr c ;1
subb a,#05h ;2
jnc X01b6 ;2
ljmp X012e ;3
X01b6:
clr a ;1
mov 10h,a ;2
cpl p1.7 ;2
jb p1.3,X01c1 ;3
ljmp X012e ;3
X01c1:
setb p1.7 ;2
ljmp X012e ;3
;********************************************************
X01c6:
mov r0,#7fh ;2
clr a ;1
X01c9:
mov @r0,a ;1
djnz r0,X01c9 ;2
mov sp,#28h ;3
ljmp X020d ;3
X01d2:
ljmp X00fe ;3
X01d5:
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
mov r0,a ;1
X01d9:
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
jc X01e1 ;2
mov @r0,a ;1
sjmp X01e2 ;2
X01e1:
movx @r0,a ;1
X01e2:
inc r0 ;1
djnz r7,X01d9 ;2
sjmp X0210 ;2
X01e7:
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
mov r0,a ;1
anl a,#07h ;2
add a,#0ch ;2
xch a,r0 ;1
clr c ;1
rlc a ;1
swap a ;1
anl a,#0fh ;2
orl a,#20h ;2
xch a,r0 ;1
movc a,@a+pc ;1
jc X01ff ;2
cpl a ;1
anl a,@r0 ;1
sjmp X0200 ;2
X01ff:
orl a,@r0 ;1
X0200:
mov @r0,a ;1
djnz r7,X01e7 ;2
sjmp X0210 ;2
;********************************************************
X0205:
db 01h ;1
db 02h ;1
db 04h ;1
db 08h ;1
db 10h ;1
db 20h ;1
db 40h ;1
db 80h ;1
X020d:
mov dptr,#038bh ;3
X0210:
clr a ;1
mov r6,#01h ;2
movc a,@a+dptr ;1
jz X01d2 ;2
inc dptr ;1
mov r7,a ;1
anl a,#3fh ;2
jnb acc.5,X0226 ;3
anl a,#1fh ;2
mov r6,a ;1
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
jz X0226 ;2
inc r6 ;1
X0226:
xch a,r7 ;1
anl a,#0c0h ;2
add a,acc ;2
jz X01d5 ;2
jc X01e7 ;2
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
mov r2,a ;1
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
mov r0,a ;1
X0237:
clr a ;1
movc a,@a+dptr ;1
inc dptr ;1
xch a,r0 ;1
xch a,dpl ;2
xch a,r0 ;1
xch a,r2 ;1
xch a,dph ;2
xch a,r2 ;1
movx @dptr,a ;1
inc dptr ;1
xch a,r0 ;1
xch a,dpl ;2
xch a,r0 ;1
xch a,r2 ;1
xch a,dph ;2
xch a,r2 ;1
djnz r7,X0237 ;2
djnz r6,X0237 ;2
sjmp X0210 ;2
;********************************************************
X0252:
mov 22h,r4 ;2
mov 23h,r5 ;2
mov 24h,r3 ;2
mov 25h,r2 ;2
mov 26h,r1 ;2
mov 27h,r6 ;2
mov 28h,r7 ;2
lcall X0359 ;3
clr a ;1
mov r5,a ;1
mov r4,a ;1
X0266:
clr c ;1
mov a,r5 ;1
subb a,23h ;2
mov a,r4 ;1
subb a,22h ;2
jnc X02b2 ;2
mov a,27h ;2
mov 0e3h,a ;2
mov a,28h ;2
mov 0e4h,a ;2
mov r3,24h ;2
mov r2,25h ;2
mov r1,26h ;2
mov dpl,r5 ;2
mov dph,r4 ;2
lcall X02b5 ;3
mov 0e2h,a ;2
anl 0e5h,#0f8h ;3
orl 0e5h,#02h ;3
mov 0e6h,#46h ;3
mov 0e6h,#0b9h ;3
nop ;1
clr a ;1
mov 0e2h,a ;2
anl 0e5h,#0f8h ;3
orl 0e5h,#01h ;3
mov 0e6h,#46h ;3
mov 0e6h,#0b9h ;3
nop ;1
inc 28h ;2
mov a,28h ;2
jnz X02ab ;2
inc 27h ;2
X02ab:
inc r5 ;1
cjne r5,#00h,X02b0 ;3
inc r4 ;1
X02b0:
sjmp X0266 ;2
X02b2:
ljmp X0370 ;3
;********************************************************
X02b5:
cjne r3,#01h,X02c4 ;3
mov a,dpl ;2
add a,r1 ;1
mov dpl,a ;2
mov a,dph ;2
addc a,r2 ;1
mov dph,a ;2
movx a,@dptr ;1
ret ;1
X02c4:
jnc X02cc ;2
mov a,r1 ;1
add a,dpl ;2
mov r0,a ;1
mov a,@r0 ;1
ret ;1
X02cc:
cjne r3,#0feh,X02d5 ;3
mov a,r1 ;1
add a,dpl ;2
mov r0,a ;1
movx a,@r0 ;1
ret ;1
X02d5:
mov a,dpl ;2
add a,r1 ;1
mov dpl,a ;2
mov a,dph ;2
addc a,r2 ;1
mov dph,a ;2
clr a ;1
movc a,@a+dptr ;1
ret ;1
;********************************************************
X02e2:
mov 22h,r4 ;2
mov 23h,r5 ;2
mov r3,07h ;2
mov r2,06h ;2
clr a ;1
mov r1,a ;1
X02ec:
mov r7,03h ;2
mov r6,02h ;2
lcall X032c ;3
mov a,#16h ;2
add a,r1 ;1
mov r0,a ;1
mov @r0,07h ;2
inc r3 ;1
cjne r3,#00h,X02fe ;3
inc r2 ;1
X02fe:
inc r1 ;1
mov a,r1 ;1
clr c ;1
subb a,23h ;2
mov a,22h ;2
xrl a,#80h ;2
mov r0,a ;1
mov a,#80h ;2
subb a,r0 ;1
jc X02ec ;2
ret ;1
;********************************************************
X030e:
setb c ;1
mov a,r7 ;1
subb a,#00h ;2
mov a,r6 ;1
subb a,#00h ;2
jc X032b ;2
mov r5,#6eh ;2
mov r4,#00h ;2
X031b:
mov a,r5 ;1
dec r5 ;1
jnz X0320 ;2
dec r4 ;1
X0320:
mov a,r5 ;1
orl a,r4 ;1
jnz X031b ;2
mov a,r7 ;1
dec r7 ;1
jnz X030e ;2
dec r6 ;1
sjmp X030e ;2
X032b:
ret ;1
;********************************************************
X032c:
mov r5,07h ;2
mov r4,06h ;2
mov 0e3h,r4 ;2
mov a,r5 ;1
mov 0e4h,a ;2
anl 0e5h,#0f8h ;3
orl 0e5h,#01h ;3
lcall X0365 ;3
lcall X0370 ;3
mov r7,0e2h ;2
ret ;1
;********************************************************
X0344:
mov a,r6 ;1
anl a,#0feh ;2
mov r6,a ;1
mov 0e3h,a ;2
clr a ;1
mov 0e4h,a ;2
anl 0e5h,#0f8h ;3
orl 0e5h,#03h ;3
lcall X0365 ;3
ljmp X0370 ;3
;********************************************************
X0359:
clr ea ;2
anl 0e7h,#18h ;3
orl 0e7h,#01h ;3
orl 0e7h,#80h ;3
ret ;1
;********************************************************
X0365:
lcall X0359 ;3
mov 0e6h,#46h ;3
mov 0e6h,#0b9h ;3
nop ;1
ret ;1
;********************************************************
X0370:
anl 0e7h,#7fh ;3
clr a ;1
mov 0e6h,a ;2
setb ea ;2
ret ;1
;********************************************************
X0379:
mov r7,#06h ;2
X037b:
mov r6,#37h ;2
X037d:
djnz r6,X037d ;2
djnz r7,X037b ;2
ret ;1
;********************************************************
X0382:
mov th0,#4ch ;3
mov tl0,#0d0h ;3
inc 10h ;2
reti ;1
;********************************************************
X038b:
db 03h ;1
db 16h ;1
db 00h ;1
db 00h ;1
db 00h ;1
end |