FLTINT:
LCALL MVR0
INT:
MOV A,R3
ORL A,R4
JNZ INTA
CLR 1FH
MOV R2,#41H
RET
INTA:
MOV A,R2
JZ INTB
JB ACC.7,INTB
CLR C
SUBB A,#10H
JC INTD
RET
INTB:
CLR A
MOV R4,A
MOV C,1FH
RRC A
MOV R3,A
RL A
MOV R2,A
JNZ INTC
MOV R2,#41H
INTC:
RET
INTD:
CLR F0
MOV0:
INC R0
INC R0
MOV A,R4
MOV @R0,A
DEC R0
MOV A,R3
MOV @R0,A
DEC R0
MOV A,R2
MOV C,1FH
MOV ACC.7,C
MOV @R0,A
CLR ACC.7
CLR OV
CJNE A,#3FH,MV01
SETB OV
MV01:
MOV A,@R0
INT:
MOV A,R3
ORL A,R4
JNZ INTA
CLR 1FH
MOV R2,#41H
RET
INTA:
MOV A,R2
JZ INTB
JB ACC.7,INTB
CLR C
SUBB A,#10H
JC INTD
RET
INTB:
CLR A
MOV R4,A
MOV C,1FH
RRC A
MOV R3,A
RL A
MOV R2,A
JNZ INTC
MOV R2,#41H
INTC:
RET
INTD:
CLR F0
INTE:
CLR C
MOV A,R3
RRC A
MOV R3,A
MOV A,R4
RRC A
MOV R4,A
INC R2
CLR OV
CJNE R2,#40H,RR1E
MOV R2,#3FH
SETB OV
RR1E:
ORL C,F0
MOV F0,C
CJNE R2,#10H,INTE
JNB F0,INTF
JNB 1FH,INTF
INC R4
MOV A,R4
JNZ INTF
INC R3
INTF:
RLNORM:
MOV A,R3
ORL A,R4
JNZ RLNORM1
MOV R2,#0C1H
RET
RLNORM1:
MOV A,R3
JB ACC.7,RLNORM2
CLR C
LCALL RL1
SJMP RLNORM
RLNORM2:
CLR OV
RET
RL1:
MOV A,R4
RLC A
MOV R4,A
MOV A,R3
RLC A
MOV R3,A
DEC R2
CJNE R2,#0C0H, MVR0
CLR A
MOV R3,A
MOV R4,A
MOV R2,#0C1H
MVR0:
MOV A,@R0
MOV C,ACC.7
MOV 1FH,C
MOV C,ACC.6
MOV ACC.7,C
MOV R2,A
INC R0
MOV A,@R0
MOV R3,A
INC R0
MOV A,@R0
MOV R4,A
DEC R0
DEC R0
RET