📄 2802d510.src
字号:
; CPSE EA,WX
; JP AWARD3
; JP P_SPK ;SPK
AWARD3 LD WX,#04H
CPSE EA,WX
JP AWARD4
JP P_CONF ;CONF
AWARD4 LD WX,#05H
CPSE EA,WX
JPS AWARD5
JP P_MUTE ;MUTE
AWARD5 LD WX,#06H
CPSE EA,WX
JPS AWARD7
JP P_HOLD ;HOLD
AWARD7 LD WX,#08H
CPSE EA,WX
JPS AWARD8
JP P_STORE ;STORE
AWARD8 LD WX,#0AH
CPSE EA,WX
JPS AWARD9
JP P_VOL ;VOL
AWARD9 LD WX,#39H
CPSE EA,WX
JPS AWARD10
JP P_UP ;UP
AWARD10 LD WX,#3AH
CPSE EA,WX
JPS AWARD11
JP P_DOWN ;DOWN
AWARD11 LD WX,#23H
CPSE EA,WX
JPS AWARD12
call auto_hfo
btst no_line_fg
JP P_M1
bitr no_line_fg
ret ;M1
AWARD12 LD WX,#24H
CPSE EA,WX
JPS AWARD13
call auto_hfo
btst no_line_fg
JP P_M2 ;M2
bitr no_line_fg
ret
AWARD13 LD WX,#25H
CPSE EA,WX
JPS AWARD14
call auto_hfo
btst no_line_fg
JP P_M3 ;M3
bitr no_line_fg
ret
AWARD14 LD WX,#26H
CPSE EA,WX
JPS AWARD15
call auto_hfo
btst no_line_fg
JP P_M4 ;M4
bitr no_line_fg
ret
AWARD15 LD WX,#27H
CPSE EA,WX
JPS AWARD16
call auto_hfo
btst no_line_fg
JP P_M5 ;M5
bitr no_line_fg
ret
AWARD16 LD WX,#28H
CPSE EA,WX
JPS AWARD17
call auto_hfo
btst no_line_fg
JP P_M6 ;M6
bitr no_line_fg
ret
AWARD17 LD WX,#29H
CPSE EA,WX
JPS AWARD18
call auto_hfo
btst no_line_fg
JP P_M7 ;M7
bitr no_line_fg
ret
AWARD18 LD WX,#2AH
CPSE EA,WX
JPS AWARD19
call auto_hfo
btst no_line_fg
JP P_M8 ;M8
bitr no_line_fg
ret
AWARD19 LD WX,#31H
CPSE EA,WX
JPS AWARD20
call auto_hfo
btst no_line_fg
JP P_M9 ;M9
bitr no_line_fg
ret
AWARD20 LD WX,#32H
CPSE EA,WX
JPS AWARD21
call auto_hfo
btst no_line_fg
JP P_M10 ;M10
bitr no_line_fg
ret
AWARD21 LD WX,#33H
CPSE EA,WX
JPS AWARD22
call auto_hfo
btst no_line_fg
JP P_M11 ;M11
bitr no_line_fg
ret
AWARD22 LD WX,#34H
CPSE EA,WX
JPS AWARD23
call auto_hfo
btst no_line_fg
JP P_M12 ;M12
bitr no_line_fg
ret
AWARD23 LD WX,#35H
CPSE EA,WX
JPS AWARD24
call auto_hfo
btst no_line_fg
JP P_M13 ;M13
bitr no_line_fg
ret
AWARD24 LD WX,#36H
CPSE EA,WX
JPS AWARD25
call auto_hfo
btst no_line_fg
JP P_M14 ;M14
bitr no_line_fg
ret
AWARD25 LD WX,#37H
CPSE EA,WX
JPS AWARD26
call auto_hfo
btst no_line_fg
JP P_M15 ;M15
bitr no_line_fg
ret
AWARD26 LD WX,#38H
CPSE EA,WX
RET
call auto_hfo
btst no_line_fg
JP P_MSG ;MSG
bitr no_line_fg
ret
;================STATES==SCAN==SUBROUTINE======================================================
STATE_SCAN
DI
LD EA,#08H
LD PUMOD1,EA ;SET P1 P2 P3 P4 P5 PULL-UP RESISTOR
LD EA,#00000001B
LD PMG1,EA ;SET P2.0 TO OUTPUT MODE
LD A,#0H
LD P2,A
LD P3,A
LD PUMOD2,A ;RESET P9,P8,P7,P6 PULL_UP RESISTOR
;LD EA,#0FH
;LD PMG3,EA
BITS P2.0
BITS RING1_FG
call time0
BTST P1.1
BITR RING1_FG ;LINE1 RING1 DET
LD EA,#00000010B
LD PMG1,EA ;SET P2.1 TO OUTPUT MODE
BITS P2.1
BITS HOLD1_FG
call time0
BTST P1.1
BITR HOLD1_FG ;LINE1 HOLD1 DET
LD EA,#00000100B
LD PMG1,EA ;SET P2.2 TO OUTPUT MODE
BITS P2.2
BITS INUSE1_FG
CALL TIME0
BTST P1.1
BITR INUSE1_FG ;LINE1 INUSE1 DET
LD EA,#00001000B
LD PMG1,EA ;SET P3.0 TO OUTPUT MODE
BITS P2.3
BITS RING2_FG
call time0
BTST P1.1
BITR RING2_FG ;LINE2 RING2 DET
LD EA,#00100000B
LD PMG1,EA ;SET P3.1 TO OUTPUT MODE
BITS P3.1
BITS HOLD2_FG
call time0
BTST P1.1
BITR HOLD2_FG ;LINE2 HOLD2 DET
LD EA,#01000000B
LD PMG1,EA ;SET P3.2 TO OUTPUT MODE
BITS P3.2
BITS INUSE2_FG
CALL TIME0
BTST P1.1
BITR INUSE2_FG ;LINE2 INUSE2 DET
LD EA,#0FeH
LD PMG1,EA
ld ea,#0ffh
ld pmg2,ea
ld ea,#0feh
LD PUMOD1,EA
ld a,#0eh
LD PUMOD2,A
BITR IRQ2
EI
RET
;====================HANDSET==FUNICATION====================================================
INT0:
PUSH HL
PUSH WX
PUSH YZ
PUSH EA
PUSH SB
btst p1.0 ;the next 5line is add by qpj
jps l_fuck_cgx
btst hfo ;debug add 26/6 night
bitr rly2
l_fuck_cgx:
btst p1.0 ;test hook
jps another_cp ;off hook status
btsf last_p1
jps reture_aa
run_continue bitr p_buff
bitr last_p1
di
btsf p1.0
bits p_buff
ei
btsf p_buff
bits last_p1
LD EA,#0FFH
LD PMG2,EA
BITS RMUTE
; BITR LINE2ADD
; BTSF HOLD2_FG ;fuck chen guo xian add !
; BITS LINE2ADD
;BTST LINE1_BIT
CALL STATE_SCAN
BTST INUSE_1 ;
JPS EIN_AWARD2 ;
BITR INUSE_1 ;
BTST HOLD1_FG ;
JPS EIN_AWARD1 ;
BITS INUSE_1 ;
EIN_AWARD1 BTST INUSE1_FG ;
JPS EIN_AWARD2 ;
BITS INUSE_1 ;
EIN_AWARD2 BTST INUSE_2 ;
JPS EIN_AWARD4 ;
BITR INUSE_2 ;
BTST HOLD2_FG ;
JPS EIN_AWARD33
;JPS EIN_AWARD4 ;
BITS INUSE_2 ;
JPS EIN_AWARD3 ;
EIN_AWARD33 BTST LINE2ADD
JPS EIN_AWARD3
BITR LINE2ADD
JPS EIN_AWARD4
EIN_AWARD3 BTST INUSE2_FG ;
JPS EIN_AWARD4 ;
BITS INUSE_2 ;
EIN_AWARD4 BTST INUSE_1
JPS TEST_C1
SCF
JPS TEST_C
TEST_C1 RCF
BTST INUSE_2
JPS TEST_C3
SCF ;C---0(CLEAR)
JPS TEST_C
TEST_C3 RCF
;HOLD1 OR INUSE1=INUSE_1
;HOLD2 OR INUSE2=INUSE_2
TEST_C bitr off_hook_fg
BTST C ;INUSE_1 OR INUSE_2=C
JPS ON_HOOK ; ON_HOOK STATE
bits off_hook_fg
JPS OFF_HOOK ; OFF_HOOK STATE
another_cp:
; btst fuck_chen_gx ;7/5 add qpj
; jps fuck_chen_guoxian
; bitr fuck_chen_gx
; jps run_continue
;fuck_chen_guoxian:
btst last_p1
jps reture_aa
bitr last_p1
jps run_continue
;-------------------------------------------------------------------------
ON_HOOK
bitr irq0
btsf p_buff ;BTSF P1.0
jps reture_0 ;JPS RETURE_0a
int_debun call state_scan
BTSF RING1_FG
JPS cont_l1a
;BTSF RING2_FG
;JPS cont_l2a
call p9_mode
ld a,#8h
ld pumod2,a
call ave_vol_sub
btsf inuse2_fg
jps on_hook_add1
btsf inuse1_fg
jps on_hook_add1
jps go_line1
on_hook_add1 ;call p6_mode
btst inuse1_fg
jps go_line1
bits dp
bits rly1
bits inuse_1
jps reture_0
on_hook_add2 btsf sel_line_fg
jps on_hook_add5
call p6_mode
bitr rly1
bits rly2
bits dp
call time300
call time300
call state_scan
btst inuse2_fg
jps on_hook_add4
bits inuse_2
jps reture_0
on_hook_add5 bitr sel_line_fg
jps go_line1
on_hook_add4 bitr rly2
bits rly1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -