|
楼主 |
发表于 2013-3-2 22:36:34
|
显示全部楼层
EXTRN DATA(YS250MS,YS1MS,RWYSL_RWYSS,MIAO,ZSW)
EXTRN IDATA(RWBLQS)
EXTRN BIT(RWQHBZW)
EXTRN CODE(OS_RWQH)
?YSHS SEGMENT CODE
PUBLIC YSHS
RSEG ?YSHS
YSHS:
PUSH ACC
PUSH PSW
MOV A,R0
PUSH ACC
MOV R0,#8
INC DPTR
MOV A,DPH
JNZ D
MOV A,DPL
CJNE A,YS250MS,$+3
JC RWYSD3
D:
MOV A,YS250MS
CPL A
ADD A,#251
ADD A,DPL
MOV DPL,A
CLR A
ADDC A,DPH
RWYSD:
CLR C
XCH A,DPL
RLC A
XCH A,DPL
RLC A
MOV F0,C
ADD A,#6
JB F0,RWYSD1
JNC RWYSD2
RWYSD1:
ADD A,#6
INC DPL
RWYSD2:
ADD A,#250
DJNZ R0,RWYSD;DPTR/250=DPL————A
XCH A,DPL
MOV DPH,A
RWYSD3:
MOV A,PSW
RL A
SWAP A
ANL A,#3
INC A
MOV R0,A
MOV A,#80H
RL A
DJNZ R0,$-1
MOV R0,A
CLR EA
CPL A
ANL ZSW,A
MOV A,DPL
JZ $+5
MOV A,R0
ORL RWYSL_RWYSS,A
MOV A,DPH
JZ $+6
MOV A,R0
SWAP A
ORL RWYSL_RWYSS,A
POP ACC
MOV R0,A
POP PSW
POP ACC
LJMP OS_RWQH
?TIMEYS SEGMENT CODE
PUBLIC TIMEYS
RSEG ?TIMEYS
TIMEYS:
DJNZ YS250MS,TIMEYSD
INC MIAO
MOV YS250MS,#250
PUSH ACC
MOV A,RWYSL_RWYSS
SWAP A
ANL A,#0FH
JNZ $+5
POP ACC
RETI
XCH A,R0
PUSH ACC
MOV A,R0
JNB ACC.0,D5
MOV R0,#RWBLQS+1
XCH A,@R0
DEC A
JNZ $+16
MOV A,RWYSL_RWYSS
JB ACC.0,$+8
ORL ZSW,#01H
SETB RWQHBZW
ANL RWYSL_RWYSS,#0EFH
CLR A
XCH A,@R0
D5:
JNB ACC.1,D6
MOV R0,#RWBLQS+5
XCH A,@R0
DEC A
JNZ $+16
MOV A,RWYSL_RWYSS
JB ACC.1,$+8
ORL ZSW,#02H
SETB RWQHBZW
ANL RWYSL_RWYSS,#0DFH
CLR A
XCH A,@R0
D6:
JNB ACC.2,D7
MOV R0,#RWBLQS+9
XCH A,@R0
DEC A
JNZ $+16
MOV A,RWYSL_RWYSS
JB ACC.2,$+8
ORL ZSW,#04H
SETB RWQHBZW
ANL RWYSL_RWYSS,#0BFH
CLR A
XCH A,@R0
D7:
JNB ACC.3,D4
MOV R0,#RWBLQS+13
XCH A,@R0
DEC A
JNZ $+16
MOV A,RWYSL_RWYSS
JB ACC.3,$+8
ORL ZSW,#08H
SETB RWQHBZW
ANL RWYSL_RWYSS,#07FH
CLR A
XCH A,@R0
TIMEYSD:
PUSH ACC
MOV A,RWYSL_RWYSS
SWAP A
CPL A
ANL A,RWYSL_RWYSS
ANL A,#0FH
JNZ $+5
POP ACC
RETI
XCH A,R0
PUSH ACC
MOV A,R0
JNB ACC.0,D1
MOV R0,#RWBLQS
XCH A,@R0
DEC A
JNZ $+10
SETB RWQHBZW
ORL ZSW,#01H
ANL RWYSL_RWYSS,#0FEH
XCH A,@R0
D1:
JNB ACC.1,D2
MOV R0,#RWBLQS+4
XCH A,@R0
DEC A
JNZ $+10
SETB RWQHBZW
ORL ZSW,#02H
ANL RWYSL_RWYSS,#0FDH
XCH A,@R0
D2:
JNB ACC.2,D3
MOV R0,#RWBLQS+8
XCH A,@R0
DEC A
JNZ $+10
SETB RWQHBZW
ORL ZSW,#04H
ANL RWYSL_RWYSS,#0FBH
XCH A,@R0
D3:
JNB ACC.3,D4
MOV R0,#RWBLQS+12
XCH A,@R0
DEC A
JNZ $+10
SETB RWQHBZW
ORL ZSW,#08H
ANL RWYSL_RWYSS,#0F7H
XCH A,@R0
D4:
POP ACC
MOV R0,A
POP ACC
JBC RWQHBZW,$+4
RETI
LJMP OS_RWQH
END |
|