;--------------------------------------------------------
; File Created by ChiponCC : ChipON  inc.
;--------------------------------------------------------
; chipon port for the 16-bit core
;--------------------------------------------------------
	.file	"../main.c"
	.radix dec
	.include "KF8TS2716.inc"
;--------------------------------------------------------
; external declarations
;--------------------------------------------------------
	.extern	_init_mcu
	.extern	__R2PCL
	.extern	_TOUCH_DEBUG_TRS_DEAL
	.extern	_TOUCH_DEBUG_SEND_OUT
	.extern	__KF8TS27_Get_Ver_Slide_W_
	.extern	__KF8TS27_Init_Touch_Slide_W_
	.extern	__KF8TS27_Touch_Process_Slide_W_
	.extern	__KF8TS27_Touch_TEST_Slide_W_
	.extern	__KF8TS27_Lib_Set_Slide_W_Parameter
	.extern	_Write_cd4094
	.extern	_LCD1602_Init
	.extern	_LCD1602_Clear
	.extern	_LCD1602_setxy
	.extern	_LCD1602_PrintString
	.extern	_LCD1602_PrintInteger
	.extern	_LCD1602_PrintHEX
	.extern	_LCD1602_PrintHEX_TWO
	.extern	_STKR0
	.extern	_STK00
	.extern	_STK01
	.extern	_STK02
	.extern	_STK03
	.extern	_STK04
	.extern	_STK05
	.extern	_STK06
	.extern	_STK07
	.extern	_STK08
	.extern	_STK09
	.extern	_STK10
	.extern	_STK11
	.extern	_PSW_bits
	.extern	_P0_bits
	.extern	_P2_bits
	.extern	_P1_bits
	.extern	_P3_bits
	.extern	_INTCTL_bits
	.extern	_EIF1_bits
	.extern	_EIF2_bits
	.extern	_T1CTL_bits
	.extern	_PWMCTL_bits
	.extern	_BANK_bits
	.extern	_ADSCANCTL_bits
	.extern	_VDACS_bits
	.extern	_ANSEH_bits
	.extern	_ADCCTL0_bits
	.extern	_OPTR_bits
	.extern	_IP0_bits
	.extern	_IP1_bits
	.extern	_IP2_bits
	.extern	_TR0_bits
	.extern	_TR2_bits
	.extern	_TR1_bits
	.extern	_OSCSTA_bits
	.extern	_IP3_bits
	.extern	_VRECTL_bits
	.extern	_EIE1_bits
	.extern	_EIE2_bits
	.extern	_PCTL_bits
	.extern	_OSCCTL_bits
	.extern	_ANSEL_bits
	.extern	_PUR0_bits
	.extern	_IOCL_bits
	.extern	_ADCCTL1_bits
	.extern	_P0LR_bits
	.extern	_P2LR_bits
	.extern	_P1LR_bits
	.extern	_P3LR_bits
	.extern	_TR3_bits
	.extern	_EIE3_bits
	.extern	_EIF3_bits
	.extern	_T3CTL_bits
	.extern	_CTCTL0_bits
	.extern	_PUR1_bits
	.extern	_PUR2_bits
	.extern	_CTCTL1_bits
	.extern	_INTEDGCTL_bits
	.extern	_VBIASCTL_bits
	.extern	_VBIAS1EN_bits
	.extern	_VBIAS2EN_bits
	.extern	_VDAC_bits
	.extern	_RSCTL_bits
	.extern	_BRCTL_bits
	.extern	_TSCTL_bits
	.extern	_SSCICTL0_bits
	.extern	_SSCICTL1_bits
	.extern	_SSCISTA_bits
	.extern	_SSCIMSK_bits
	.extern	_WDTPS_bits
	.extern	_LEDCTL_bits
	.extern	_LEDPRE_bits
	.extern	_LEDDATA0_bits
	.extern	_LEDDATA1_bits
	.extern	_LEDDATA2_bits
	.extern	_LEDDATA3_bits
	.extern	_LEDDATA4_bits
	.extern	_LEDDATA5_bits
	.extern	_LEDDATA6_bits
	.extern	_LEDDATA7_bits
	.extern	_LEDOMS1_bits
	.extern	_LEDODS0_bits
	.extern	_LEDOMS0_bits
	.extern	_LEDODS1_bits
	.extern	_LEDLUM_bits
	.extern	_T4CTL_bits
	.extern	_sentbuf1
	.extern	_sentbuf2
	.extern	_sentbuf3
	.extern	_sentbuf4
	.extern	__KF8_LIBi_channel_flag_
	.extern	__KF8_LIBi_Slide_Press_Flag
	.extern	__KF8_LIBi_Slide_channel_out_
	.extern	__KF8_LIBi_Slide_distance_out_
	.extern	__KF8_LIBc_channel_
	.extern	__KF8_LIBi_Date_Change_
	.extern	__KF8_LIBc_baseline_count_
	.extern	__KF8_LIBi_buff_hit_
	.extern	__KF8_LIBi_buff_baseline_
	.extern	__KF8_LIBc_touch_count_
	.extern	__KF8_lib_Slide_Finded_MAX_I_T27_SW_
	.extern	__KF8_lib_Slide_Finded_MAX_I_Buf_T27_SW_
	.extern	__KF8_LIBi_Slide_round_count_
	.extern	__KF8_LIBi_Slide_channel_back_
	.extern	_CHS_AMOUNT
	.extern	_SLIDE_AMOUNT
	.extern	_TCS_AMOUNT
	.extern	_TCS_Slide_AMOUNT
	.extern	__KF8_Disturb_Protect_Circle_
	.extern	__KF8_DoubleKey_Compages_Limitable_Circle_
	.extern	__KF8_Key_Max_Pressed_Limitable_Circle_
	.extern	__KF8_BaseLine_Update_Circle_Count_For_UP_
	.extern	__KF8_BaseLine_Update_Circle_Count_For_Down_
	.extern	__KF8_Define_Disturb_Channels_Amount_
	.extern	__KF8_BasicLine_UP_Noise_Threshold_
	.extern	__KF8_BasicLine_Down_Noise_Threshold_
	.extern	__KF8_Data_Steady_Threshold_Set_
	.extern	__KF8_Inside_Reference_Channel_Disturb_Threshold_Set_
	.extern	__KF8_Inside_Reference_Channel_Declare_
	.extern	__KF8_TOUCH_CH_EN
	.extern	__SLIDE_DISTRIBUTION
	.extern	__SLIDE_RESOLUTION
	.extern	__SLIDE_SINGLE_RESOLUTION
	.extern	__SLIDE_OFFSET
	.extern	__KF8_Config_Finger_Threshold
	.extern	__KF8_Config_Finger_Threshold_In_Disturb_
	.extern	_T0
	.extern	_PCL
	.extern	_PSW
	.extern	_P0
	.extern	_P2
	.extern	_P1
	.extern	_P3
	.extern	_PCH
	.extern	_INTCTL
	.extern	_EIF1
	.extern	_EIF2
	.extern	_T1L
	.extern	_T1H
	.extern	_T1CTL
	.extern	_PWM1L
	.extern	_PWM1H
	.extern	_PWMCTL
	.extern	_PP1
	.extern	_BANK
	.extern	_ADSCANCTL
	.extern	_VDACS
	.extern	_ANSEH
	.extern	_ADCDATA0H
	.extern	_ADCCTL0
	.extern	_OPTR
	.extern	_IP0
	.extern	_IP1
	.extern	_IP2
	.extern	_TR0
	.extern	_TR2
	.extern	_TR1
	.extern	_OSCSTA
	.extern	_IP3
	.extern	_VRECAL1
	.extern	_VRECTL
	.extern	_EIE1
	.extern	_EIE2
	.extern	_PCTL
	.extern	_OSCCTL
	.extern	_OSCCAL0
	.extern	_ANSEL
	.extern	_PP2
	.extern	_PWM2L
	.extern	_PWM2H
	.extern	_PUR0
	.extern	_IOCL
	.extern	_OSCCAL1
	.extern	_NVMDATAH
	.extern	_NVMDATAL
	.extern	_NVMADDRH
	.extern	_NVMADDRL
	.extern	_NVMCTL0
	.extern	_NVMCTL1
	.extern	_ADCDATA0L
	.extern	_ADCCTL1
	.extern	_P0LR
	.extern	_P2LR
	.extern	_P1LR
	.extern	_P3LR
	.extern	_TR3
	.extern	_EIE3
	.extern	_EIF3
	.extern	_OSCCAL2
	.extern	_OSCCAL3
	.extern	_T3CTL
	.extern	_T3L
	.extern	_CTCTL0
	.extern	_T3H
	.extern	_PUR1
	.extern	_PUR2
	.extern	_CTCTL1
	.extern	_INTEDGCTL
	.extern	_VBIASCTL
	.extern	_VBIAS1EN
	.extern	_VBIAS2EN
	.extern	_VDAC
	.extern	_RSCTL
	.extern	_TXSDR
	.extern	_RXSDR
	.extern	_BRCTL
	.extern	_TSCTL
	.extern	_EUBRGL
	.extern	_EUBRGH
	.extern	_SSCICTL0
	.extern	_SSCICTL1
	.extern	_SSCISTA
	.extern	_SSCIBUFR
	.extern	_SSCIMSK
	.extern	_WDTPS
	.extern	_LEDCTL
	.extern	_LEDPRE
	.extern	_LEDDATA0
	.extern	_LEDDATA1
	.extern	_LEDDATA2
	.extern	_LEDDATA3
	.extern	_LEDDATA4
	.extern	_LEDDATA5
	.extern	_LEDDATA6
	.extern	_LEDDATA7
	.extern	_LEDOMS1
	.extern	_LEDODS0
	.extern	_LEDOMS0
	.extern	_LEDODS1
	.extern	_VRECAL2
	.extern	_VRECAL3
	.extern	_LEDLUM
	.extern	_T4L
	.extern	_T4H
	.extern	_T4REL
	.extern	_T4REH
	.extern	_T4CTL
	.extern	_RC32KCAL
	.extern	__mulchar
	.extern	_startup
	.extern	__gsinit_startup
;--------------------------------------------------------
; global declarations
;--------------------------------------------------------
	.global	_delay_us
	.global	_delay_ms
	.global	_Show_Key_Out
	.global	_main
	.global	_int_fun0
	.global	_int_fun1
	.global	_kf8_touch_flag
	.global	_kf8_time_flag
	.global	_fast_key_flag
	.global	_Touch_Watch_Count
	.global	_clr_show_watch
	.global	_clr_show_enable
	.global	_key_time_count
	.global	_fast_Count
	.global	__KF8_LIBi_channel_flag_Old_
	.global	_key_out
	.global	_time
	.global	_PWM3_T
	.global	_temper_int
	.global	_PWM1L_back
	.global	_PWM1L_int
	.global	_PWM2L_back
	.global	_PWM2L_int
	.global	_PWM3
	.global	_PWM3L_back

	.global I0R1
	.global I0R7
	.global I0PSW
	.global I0PCH
	.global I1R1
	.global I1R7
	.global I1PSW
	.global I1PCH
	.define _STK11	STK11
	.global STK11
	.define _STK10	STK10
	.global STK10
	.define _STK09	STK09
	.global STK09
	.define _STK08	STK08
	.global STK08
	.define _STK07	STK07
	.global STK07
	.define _STK06	STK06
	.global STK06
	.define _STK05	STK05
	.global STK05
	.define _STK04	STK04
	.global STK04
	.define _STK03	STK03
	.global STK03
	.define _STK02	STK02
	.global STK02
	.define _STK01	STK01
	.global STK01
	.define _STK00	STK00
	.global STK00

sharebank .udata
I0R1		.res 1
I0R7		.res 1
I0PSW		.res 1
I0PCH		.res 1
I1R1		.res 1
I1R7		.res 1
I1PSW		.res 1
I1PCH		.res 1
sharebankSTKP1 .udata 
STK11	.res 1
	.type STK11, 108
STK10	.res 1
	.type STK10, 108
STK09	.res 1
	.type STK09, 108
STK08	.res 1
	.type STK08, 108
STK07	.res 1
	.type STK07, 108
sharebankSTKP2 .udata 0x78
STK06	.res 1
	.type STK06, 108
STK05	.res 1
	.type STK05, 108
STK04	.res 1
	.type STK04, 108
STK03	.res 1
	.type STK03, 108
STK02	.res 1
	.type STK02, 108
STK01	.res 1
	.type STK01, 108
STK00	.res 1
	.type STK00, 108

;--------------------------------------------------------
; global definitions
;--------------------------------------------------------
UD_main_0	.udata
_kf8_touch_flag	.res	1

UD_main_1	.udata
_kf8_time_flag	.res	1

UD_main_2	.udata
_fast_key_flag	.res	1

UD_main_3	.udata
_Touch_Watch_Count	.res	2

UD_main_4	.udata
_clr_show_watch	.res	2

UD_main_5	.udata
_clr_show_enable	.res	1

UD_main_6	.udata
_key_time_count	.res	2

UD_main_7	.udata
_fast_Count	.res	2

UD_main_8	.udata
__KF8_LIBi_channel_flag_Old_	.res	4

UD_main_9	.udata
_key_out	.res	1

UD_main_10	.udata
_time	.res	2

UD_main_11	.udata
_PWM3_T	.res	1

UD_main_12	.udata
_temper_int	.res	2

UD_main_13	.udata
_PWM1L_back	.res	1

UD_main_14	.udata
_PWM1L_int	.res	2

UD_main_15	.udata
_PWM2L_back	.res	1

UD_main_16	.udata
_PWM2L_int	.res	2

UD_main_17	.udata
_PWM3	.res	1

UD_main_18	.udata
_PWM3L_back	.res	1

;--------------------------------------------------------
; absolute symbol definitions
;--------------------------------------------------------
;--------------------------------------------------------
; compiler-defined variables
;--------------------------------------------------------
UDL_main_0	.udata
r0x102C	.res	1
UDL_main_1	.udata
r0x102B	.res	1
UDL_main_2	.udata
r0x102D	.res	1
UDL_main_3	.udata
r0x102E	.res	1
UDL_main_4	.udata
r0x102F	.res	1
UDL_main_5	.udata
r0x1030	.res	1
UDL_main_6	.udata
r0x1036	.res	1
UDL_main_7	.udata
r0x1035	.res	1
UDL_main_8	.udata
r0x1037	.res	1
UDL_main_9	.udata
r0x1038	.res	1
UDL_main_10	.udata
r0x1032	.res	1
UDL_main_11	.udata
r0x1031	.res	1
UDL_main_12	.udata
r0x1033	.res	1
UDL_main_13	.udata
r0x1034	.res	1
;--------------------------------------------------------
; initialized data
;--------------------------------------------------------

ID_main_0	.code
__str_0
	RRET R0, #0x30 ; '0'
	RRET R0, #0x00 ; '.'

ID_main_1	.code
__str_1
	RRET R0, #0x2b ; '+'
	RRET R0, #0x00 ; '.'

ID_main_2	.code
__str_2
	RRET R0, #0x2d ; '-'
	RRET R0, #0x00 ; '.'

ID_main_3	.code
__str_3
	RRET R0, #0x52 ; 'R'
	RRET R0, #0x3a ; ':'
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x47 ; 'G'
	RRET R0, #0x3a ; ':'
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x42 ; 'B'
	RRET R0, #0x3a ; ':'
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x00 ; '.'

ID_main_4	.code
__str_4
	RRET R0, #0x57 ; 'W'
	RRET R0, #0x3a ; ':'
	RRET R0, #0x30 ; '0'
	RRET R0, #0x30 ; '0'
	RRET R0, #0x30 ; '0'
	RRET R0, #0x4b ; 'K'
	RRET R0, #0x3a ; ':'
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x20 ; ' '
	RRET R0, #0x53 ; 'S'
	RRET R0, #0x3a ; ':'
	RRET R0, #0x30 ; '0'
	RRET R0, #0x30 ; '0'
	RRET R0, #0x30 ; '0'
	RRET R0, #0x00 ; '.'
;--------------------------------------------------------
; overlayable items in internal ram 
;--------------------------------------------------------
;	.udata_ovr
;--------------------------------------------------------
; reset vector 
;--------------------------------------------------------
STARTUP	.code 0x0000
	NOP
	PAGESEL	init_imp
	JMP		init_imp

	.global	init_imp
INIT_IMP	.code
init_imp
	PAGESEL	_startup
	CALL	_startup
	PAGESEL	__gsinit_startup
	CALL	__gsinit_startup
	PAGESEL	_main
	JMP		_main
;--------------------------------------------------------
; interrupt and initialization code
;--------------------------------------------------------
interrupt_0x04	.code	0x4
	MOV		R2,R0
	MOV		R3,BANK
	MOV		R0,PSW
	BANKSEL	I0PSW
	MOV		I0PSW,R0
	MOV		R0,PCH
	BANKSEL	I0PCH
	MOV		I0PCH,R0
	MOV		I0R1,R1
	MOV		I0R7,R7
	PAGESEL	interrupt_service_routine_0x04
	JMP		interrupt_service_routine_0x04
interrupt_0x14	.code	0x14
	MOV		R4,R0
	MOV		R5,BANK
	MOV		R0,PSW
	BANKSEL	I1PSW
	MOV		I1PSW,R0
	MOV		R0,PCH
	BANKSEL	I1PCH
	MOV		I1PCH,R0
	MOV		I1R1,R1
	MOV		I1R7,R7
	PAGESEL	interrupt_service_routine_0x14
	JMP		interrupt_service_routine_0x14



func._int_fun0	.code
;***
;  PostBlock Stats: dbName = I
;***
;entry:  _int_fun0	;Function start
; 0 exit points
;; Starting PostCode block
	.def _int_fun0_function_begin, debug, value=$

;	::->op : LABEL
;	::->op : FUNCTION
_int_fun0	;Function start
; 0 exit points
;	::->op : GET_VALUE_AT_ADDRESS
; R3 resprent for wsave,R4 resprent for ssave, R5 resprent for psave
interrupt_service_routine_0x04
	.line	301; "../main.c"	if(T3IF)
	BANKSEL	_EIF2_bits
	JB	_EIF2_bits, 7
	JMP	_00211_DS_
;	::->op :*  =
	.line	303; "../main.c"	T3IF=0;		//做标志位，在主函数检测标志执行
	BANKSEL	_EIF2_bits
	CLR	_EIF2_bits, 7
;	::->op : =
	.line	304; "../main.c"	T4CTL=0x00;
	BANKSEL	_T4CTL
	CLR	_T4CTL
;	::->op : =
	.line	305; "../main.c"	kf8_touch_flag=1;
	MOV	R0,# 0x01
	BANKSEL	_kf8_touch_flag
	MOV	_kf8_touch_flag, R0
;	::->op : =
	.line	306; "../main.c"	Touch_Watch_Count=0;
	BANKSEL	_Touch_Watch_Count
	CLR	_Touch_Watch_Count
	BANKSEL	_Touch_Watch_Count
	CLR	(_Touch_Watch_Count + 1)
;	::->op : LABEL
;	::->op : ENDFUNCTION
_00211_DS_
	BANKSEL	I0R1
	MOV	R1, I0R1
	BANKSEL	I0R7
	MOV	R7, I0R7
	BANKSEL	I0PCH
	MOV	R0, I0PCH
	MOV	PCH, R0
	BANKSEL	I0PSW
	MOV	R0, I0PSW
	MOV	PSW, R0
	MOV	BANK, R3
	MOV	R0, R2
	IRET	
	.def _int_fun0_function_end, debug, value=$




func._int_fun1	.code
;***
;  PostBlock Stats: dbName = I
;***
;entry:  _int_fun1	;Function start
; 0 exit points
;; Starting PostCode block
	.def _int_fun1_function_begin, debug, value=$

;	::->op : LABEL
;	::->op : FUNCTION
_int_fun1	;Function start
; 0 exit points
;	::->op : GET_VALUE_AT_ADDRESS
; R3 resprent for wsave,R4 resprent for ssave, R5 resprent for psave
interrupt_service_routine_0x14
	.line	325; "../main.c"	if(T0IF)
	BANKSEL	_INTCTL_bits
	JB	_INTCTL_bits, 2
	JMP	_00240_DS_
;	::->op :*  =
	.line	327; "../main.c"	T0IF=0;
	BANKSEL	_INTCTL_bits
	CLR	_INTCTL_bits, 2
;	::->op : =
	.line	328; "../main.c"	T0=0x20;//125us
	MOV	R0,# 0x20
	BANKSEL	_T0
	MOV	_T0, R0
;	::->op : +
	.line	330; "../main.c"	time++;
	BANKSEL	_time
	INC	_time
	JB	PSW, 2
	JMP	_00270_DS_
	BANKSEL	_time
	INC	(_time + 1)
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x321=801), size=2
_00270_DS_
	.line	331; "../main.c"	if(time>800)
	MOV	R0,# 0x03
	BANKSEL	_time
	SUB	R0, (_time + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00253_DS_
	MOV	R0,# 0x21
	BANKSEL	_time
	SUB	R0, _time
_00253_DS_
	JB	PSW, 0
	JMP	_00215_DS_
;	::->op : =
	.line	333; "../main.c"	time=0;
	BANKSEL	_time
	CLR	_time
	BANKSEL	_time
	CLR	(_time + 1)
;	::->op : =
	.line	334; "../main.c"	kf8_time_flag=1;	// 100ms
	MOV	R0,# 0x01
	BANKSEL	_kf8_time_flag
	MOV	_kf8_time_flag, R0
;	::->op : LABEL
;	::->op : +
_00215_DS_
	.line	337; "../main.c"	PWM3_T++;
	BANKSEL	_PWM3_T
	INC	_PWM3_T
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x33=51), size=1
	.line	338; "../main.c"	if(PWM3_T>50)
	MOV	R0,# 0x33
	.line	340; "../main.c"	PWM3_T=0;
	BANKSEL	_PWM3_T
	SUB	R0, _PWM3_T
	.line	342; "../main.c"	if(PWM3_T<PWM3)
	JB	PSW, 0
	JMP	_00271_DS_
	BANKSEL	_PWM3_T
	CLR	_PWM3_T
_00271_DS_
	BANKSEL	_PWM3
	MOVZ	R0, _PWM3
	BANKSEL	_PWM3_T
	SUB	R0, _PWM3_T
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00219_DS_
;	::->op :*  =
	.line	344; "../main.c"	LED_G_ON
	BANKSEL	_P0LR_bits
	SET	_P0LR_bits, 3
;	::->op : GOTO
	JMP	_00220_DS_
;	::->op : LABEL
;	::->op :*  =
_00219_DS_
	.line	348; "../main.c"	LED_G_OFF
	BANKSEL	_P0LR_bits
	CLR	_P0LR_bits, 3
;	::->op : LABEL
;	::->op : IFX
_00220_DS_
	.line	350; "../main.c"	if(clr_show_enable==0)
	MOV	R0,# 0x00
	BANKSEL	_clr_show_enable
	ORL	R0, _clr_show_enable
	JB	PSW, 2
	JMP	_00240_DS_
;	::->op : +
	.line	352; "../main.c"	key_time_count++;
	BANKSEL	_key_time_count
	INC	_key_time_count
	JB	PSW, 2
	JMP	_00272_DS_
	BANKSEL	_key_time_count
	INC	(_key_time_count + 1)
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x5DC1=24001), size=2
_00272_DS_
	.line	353; "../main.c"	if(key_time_count>24000)
	MOV	R0,# 0x5d
	BANKSEL	_key_time_count
	SUB	R0, (_key_time_count + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00256_DS_
	MOV	R0,# 0xc1
	BANKSEL	_key_time_count
	SUB	R0, _key_time_count
_00256_DS_
	JB	PSW, 0
	JMP	_00234_DS_
;	::->op : -
	.line	355; "../main.c"	key_time_count--;
	MOV	R0,# 0xff
	BANKSEL	_key_time_count
	ADD	_key_time_count, R0
	JNB	PSW, 0
	JMP	_00273_DS_
	BANKSEL	_key_time_count
	DEC	(_key_time_count + 1)
;	::->op : +
_00273_DS_
	.line	356; "../main.c"	fast_Count++;
	BANKSEL	_fast_Count
	INC	_fast_Count
	JB	PSW, 2
	JMP	_00274_DS_
	BANKSEL	_fast_Count
	INC	(_fast_Count + 1)
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x641=1601), size=2
_00274_DS_
	.line	357; "../main.c"	if(fast_Count>1600)
	MOV	R0,# 0x06
	BANKSEL	_fast_Count
	SUB	R0, (_fast_Count + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00257_DS_
	MOV	R0,# 0x41
	BANKSEL	_fast_Count
	SUB	R0, _fast_Count
_00257_DS_
	JB	PSW, 0
	JMP	_00240_DS_
;	::->op : =
	.line	359; "../main.c"	fast_Count=0;
	BANKSEL	_fast_Count
	CLR	_fast_Count
	BANKSEL	_fast_Count
	CLR	(_fast_Count + 1)
;	::->op : =
	.line	360; "../main.c"	fast_key_flag=1;
	MOV	R0,# 0x01
	BANKSEL	_fast_key_flag
	MOV	_fast_key_flag, R0
;	::->op : GOTO
	JMP	_00240_DS_
;	::->op : LABEL
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x3E81=16001), size=2
_00234_DS_
	.line	363; "../main.c"	else if(key_time_count>16000)
	MOV	R0,# 0x3e
	BANKSEL	_key_time_count
	SUB	R0, (_key_time_count + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00258_DS_
	MOV	R0,# 0x81
	BANKSEL	_key_time_count
	SUB	R0, _key_time_count
_00258_DS_
	JB	PSW, 0
	JMP	_00231_DS_
;	::->op : +
	.line	365; "../main.c"	fast_Count++;
	BANKSEL	_fast_Count
	INC	_fast_Count
	JB	PSW, 2
	JMP	_00275_DS_
	BANKSEL	_fast_Count
	INC	(_fast_Count + 1)
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x961=2401), size=2
_00275_DS_
	.line	366; "../main.c"	if(fast_Count>2400)
	MOV	R0,# 0x09
	BANKSEL	_fast_Count
	SUB	R0, (_fast_Count + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00259_DS_
	MOV	R0,# 0x61
	BANKSEL	_fast_Count
	SUB	R0, _fast_Count
_00259_DS_
	JB	PSW, 0
	JMP	_00240_DS_
;	::->op : =
	.line	368; "../main.c"	fast_Count=0;
	BANKSEL	_fast_Count
	CLR	_fast_Count
	BANKSEL	_fast_Count
	CLR	(_fast_Count + 1)
;	::->op : =
	.line	369; "../main.c"	fast_key_flag=1;
	MOV	R0,# 0x01
	BANKSEL	_fast_key_flag
	MOV	_fast_key_flag, R0
;	::->op : GOTO
	JMP	_00240_DS_
;	::->op : LABEL
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x1F41=8001), size=2
_00231_DS_
	.line	372; "../main.c"	else if(key_time_count>8000)
	MOV	R0,# 0x1f
	BANKSEL	_key_time_count
	SUB	R0, (_key_time_count + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00260_DS_
	MOV	R0,# 0x41
	BANKSEL	_key_time_count
	SUB	R0, _key_time_count
_00260_DS_
	JB	PSW, 0
	JMP	_00228_DS_
;	::->op : +
	.line	374; "../main.c"	fast_Count++;
	BANKSEL	_fast_Count
	INC	_fast_Count
	JB	PSW, 2
	JMP	_00276_DS_
	BANKSEL	_fast_Count
	INC	(_fast_Count + 1)
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0xC81=3201), size=2
_00276_DS_
	.line	375; "../main.c"	if(fast_Count>3200)
	MOV	R0,# 0x0c
	BANKSEL	_fast_Count
	SUB	R0, (_fast_Count + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00261_DS_
	MOV	R0,# 0x81
	BANKSEL	_fast_Count
	SUB	R0, _fast_Count
_00261_DS_
	JB	PSW, 0
	JMP	_00240_DS_
;	::->op : =
	.line	377; "../main.c"	fast_Count=0;
	BANKSEL	_fast_Count
	CLR	_fast_Count
	BANKSEL	_fast_Count
	CLR	(_fast_Count + 1)
;	::->op : =
	.line	378; "../main.c"	fast_key_flag=1;
	MOV	R0,# 0x01
	BANKSEL	_fast_key_flag
	MOV	_fast_key_flag, R0
;	::->op : GOTO
	JMP	_00240_DS_
;	::->op : LABEL
;	::->op : =
_00228_DS_
	.line	383; "../main.c"	fast_Count=0;
	BANKSEL	_fast_Count
	CLR	_fast_Count
	BANKSEL	_fast_Count
	CLR	(_fast_Count + 1)
;	::->op : LABEL
;	::->op : ENDFUNCTION
_00240_DS_
	BANKSEL	I1R1
	MOV	R1, I1R1
	BANKSEL	I1R7
	MOV	R7, I1R7
	BANKSEL	I1PCH
	MOV	R0, I1PCH
	MOV	PCH, R0
	BANKSEL	I1PSW
	MOV	R0, I1PSW
	MOV	PSW, R0
	MOV	BANK, R5
	MOV	R0, R4
	IRET	
	.def _int_fun1_function_end, debug, value=$




func._main	.code
;***
;  PostBlock Stats: dbName = M
;***
;entry:  _main	;Function start
; 2 exit points
;has an exit
;functions called:
;   _init_mcu
;   _delay_ms
;   _LCD1602_Init
;   _LCD1602_Clear
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   __KF8TS27_Lib_Set_Slide_W_Parameter
;   __KF8TS27_Init_Touch_Slide_W_
;   __KF8TS27_Touch_Process_Slide_W_
;   _Show_Key_Out
;   _init_mcu
;   _delay_ms
;   _LCD1602_Init
;   _LCD1602_Clear
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   __KF8TS27_Lib_Set_Slide_W_Parameter
;   __KF8TS27_Init_Touch_Slide_W_
;   __KF8TS27_Touch_Process_Slide_W_
;   _Show_Key_Out
;7 compiler assigned registers:
;   STK00
;   r0x1031
;   r0x1032
;   r0x1033
;   STK01
;   r0x1034
;   STK02
;; Starting PostCode block
	.def _main_function_begin, debug, value=$

;	::->op : LABEL
;	::->op : FUNCTION
_main	;Function start
; 2 exit points
;	::->op : CALL
	.line	181; "../main.c"	init_mcu();						//初始化MCU寄存器
	PAGESEL	_init_mcu
	CALL	_init_mcu
	PAGESEL	$
;	::->op : SEND
;	::->op : CALL
	.line	182; "../main.c"	delay_ms(200);
	MOV	R0,# 0xc8
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_ms
	CALL	_delay_ms
	PAGESEL	$
;	::->op : =
	.line	183; "../main.c"	clr_show_watch=0;
	BANKSEL	_clr_show_watch
	CLR	_clr_show_watch
	BANKSEL	_clr_show_watch
	CLR	(_clr_show_watch + 1)
;	::->op : =
	.line	184; "../main.c"	clr_show_enable=1;
	MOV	R0,# 0x01
	BANKSEL	_clr_show_enable
	MOV	_clr_show_enable, R0
;	::->op : =
	.line	187; "../main.c"	PP1=0XFF;
	MOV	R0,# 0xff
	BANKSEL	_PP1
	MOV	_PP1, R0
;	::->op : =
	.line	188; "../main.c"	PP2=0XFF;
	MOV	R0,# 0xff
	BANKSEL	_PP2
	MOV	_PP2, R0
;	::->op : =
	.line	189; "../main.c"	PWM1L=0X00;
	BANKSEL	_PWM1L
	CLR	_PWM1L
;	::->op : =
	.line	190; "../main.c"	PWM2L=0X00;
	BANKSEL	_PWM2L
	CLR	_PWM2L
;	::->op :*  =
	.line	191; "../main.c"	PWM1ON=1;
	BANKSEL	_PWMCTL_bits
	SET	_PWMCTL_bits, 0
;	::->op :*  =
	.line	192; "../main.c"	PWM2ON=1;
	BANKSEL	_PWMCTL_bits
	SET	_PWMCTL_bits, 4
;	::->op :*  =
	.line	193; "../main.c"	T1ON=1;
	BANKSEL	_T1CTL_bits
	SET	_T1CTL_bits, 0
;	::->op : =
	.line	194; "../main.c"	PWM3=0;
	BANKSEL	_PWM3
	CLR	_PWM3
;	::->op : =
	.line	195; "../main.c"	PWM3L_back=0;
	BANKSEL	_PWM3L_back
	CLR	_PWM3L_back
;	::->op : CALL
	.line	197; "../main.c"	LCD1602_Init();
	PAGESEL	_LCD1602_Init
	CALL	_LCD1602_Init
	PAGESEL	$
;	::->op : CALL
	.line	198; "../main.c"	Show_begin_Mes();
	PAGESEL	_LCD1602_Clear
	CALL	_LCD1602_Clear
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_3 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_3 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x02
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00177_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00177_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00179_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00179_DS_
	BANKSEL	_PWM1L
	MOVZ	R0, _PWM1L
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	BANKSEL	r0x1031
	CLR	r0x1031
	BANKSEL	r0x1033
	CLR	r0x1033
	BANKSEL	r0x1034
	CLR	r0x1034
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x07
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00181_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00181_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00183_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00183_DS_
	BANKSEL	_PWM3L_back
	MOVZ	R0, _PWM3L_back
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	BANKSEL	r0x1031
	CLR	r0x1031
	BANKSEL	r0x1033
	CLR	r0x1033
	BANKSEL	r0x1034
	CLR	r0x1034
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x0c
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00185_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00185_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00187_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00187_DS_
	BANKSEL	_PWM2L
	MOVZ	R0, _PWM2L
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	BANKSEL	r0x1031
	CLR	r0x1031
	BANKSEL	r0x1033
	CLR	r0x1033
	BANKSEL	r0x1034
	CLR	r0x1034
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_4 + 0)
	BANKSEL	r0x1031
	MOV	r0x1031, R0
	MOV	R0,# (__str_4 + 0)
	BANKSEL	r0x1032
	MOV	r0x1032, R0
	MOV	R0,# 0x80
	BANKSEL	r0x1033
	MOV	r0x1033, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x1032
	MOVZ	R0, r0x1032
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x1031
	MOVZ	R0, r0x1031
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x1033
	MOVZ	R0, r0x1033
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : =
	.line	205; "../main.c"	CTCTL1 	= 0x40;		//电压源和时钟分频设置  0 4 8 C~ 4/8/16/32  xxyy yyyx   0~ Vref  1~ VDD
	MOV	R0,# 0x40
	BANKSEL	_CTCTL1
	MOV	_CTCTL1, R0
;	::->op : =
	.line	207; "../main.c"	VRECTL =0x92;
	MOV	R0,# 0x92
	BANKSEL	_VRECTL
	MOV	_VRECTL, R0
;	::->op : INLINEASM
	;;
	MOVB #0x00
	MOV R0,#0x40
	ORL 0x1A,R0
	
;	::->op : =
	.line	214; "../main.c"	VDAC=0x90;// 0.5Vref       公式0.05Vxx（N+1)    N=0--15
	MOV	R0,# 0x90
	BANKSEL	_VDAC
	MOV	_VDAC, R0
;	::->op : =
	.line	216; "../main.c"	kf8_touch_flag=0;
	BANKSEL	_kf8_touch_flag
	CLR	_kf8_touch_flag
;	::->op : =
	.line	217; "../main.c"	_KF8_LIBi_channel_flag_Old_=0x000000;
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	CLR	__KF8_LIBi_channel_flag_Old_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	CLR	(__KF8_LIBi_channel_flag_Old_ + 1)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	CLR	(__KF8_LIBi_channel_flag_Old_ + 2)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	CLR	(__KF8_LIBi_channel_flag_Old_ + 3)
;	::->op : SEND
;	::->op : CALL
	.line	219; "../main.c"	_KF8TS27_Lib_Set_Slide_W_Parameter(0);// 参数见kf8ts27_touch_s.h中说明，使用T4计数可不调用
	MOV	R0,# 0x00
	PAGESEL	__KF8TS27_Lib_Set_Slide_W_Parameter
	CALL	__KF8TS27_Lib_Set_Slide_W_Parameter
	PAGESEL	$
;	::->op : CALL
	.line	220; "../main.c"	_KF8TS27_Init_Touch_Slide_W_();		//调用电容触摸库函数的初始化
	PAGESEL	__KF8TS27_Init_Touch_Slide_W_
	CALL	__KF8TS27_Init_Touch_Slide_W_
	PAGESEL	$
;	::->op : LABEL
;	::->op : INLINEASM
_00191_DS_
	CWDT 
;	::->op : IFX
	.line	226; "../main.c"	if(kf8_touch_flag)
	MOV	R0,# 0x00
	BANKSEL	_kf8_touch_flag
	ORL	R0, _kf8_touch_flag
	JNB	PSW, 2
	JMP	_00189_DS_
;	::->op : =
	.line	228; "../main.c"	kf8_touch_flag=0;
	BANKSEL	_kf8_touch_flag
	CLR	_kf8_touch_flag
;	::->op : CALL
	.line	232; "../main.c"	_KF8TS27_Touch_Process_Slide_W_();
	PAGESEL	__KF8TS27_Touch_Process_Slide_W_
	CALL	__KF8TS27_Touch_Process_Slide_W_
	PAGESEL	$
;	::->op : CALL
	.line	235; "../main.c"	Show_Key_Out();
	PAGESEL	_Show_Key_Out
	CALL	_Show_Key_Out
	PAGESEL	$
;	::->op : LABEL
;	::->op : INLINEASM
_00189_DS_
	BANKSEL _Touch_Watch_Count
	INC _Touch_Watch_Count
	JB PSW,2
	INC _Touch_Watch_Count+1
	MOV R0,_Touch_Watch_Count+1
	MOV R1,#0xC3
	SUB R1,R0 ;
	PAGESEL Watch_Touch_Deal_End
	JB PSW,0
	JMP Watch_Touch_Deal_End
	PAGESEL Watch_Touch_Deal_DO
	JB PSW,2 ;
	JMP Watch_Touch_Deal_DO
	MOV R0,_Touch_Watch_Count
	MOV R1,#0x50
	SUB R1,R0 ;
	PAGESEL Watch_Touch_Deal_End
	JB PSW,0
	JMP Watch_Touch_Deal_End
Watch_Touch_Deal_DO:
	BANKSEL _Touch_Watch_Count
	CLR _Touch_Watch_Count
	CLR _Touch_Watch_Count+1
	PAGESEL __KF8TS27_Init_Touch_Slide_W_
	CALL __KF8TS27_Init_Touch_Slide_W_
	PAGESEL $
Watch_Touch_Deal_End:
	
;	::->op : GOTO
	.line	278; "../main.c"	if(1);
	JMP	_00191_DS_
;	::->op : LABEL
;	::->op : ENDFUNCTION
	CRET	
	.def _main_function_end, debug, value=$

; exit point of _main



func._Show_Key_Out	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  _Show_Key_Out	;Function start
; 2 exit points
;has an exit
;functions called:
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   __mulchar
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   __mulchar
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_Clear
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_Clear
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   __mulchar
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   __mulchar
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_Clear
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_Clear
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;   _LCD1602_PrintString
;   _LCD1602_PrintInteger
;   _LCD1602_setxy
;   _LCD1602_PrintString
;9 compiler assigned registers:
;   r0x102B
;   r0x102C
;   STK00
;   r0x102D
;   STK01
;   r0x102E
;   STK02
;   r0x102F
;   r0x1030
;; Starting PostCode block
	.def _Show_Key_Out_function_begin, debug, value=$

;	::->op : LABEL
;	::->op : FUNCTION
_Show_Key_Out	;Function start
; 2 exit points
;	::->op : BITWISEAND
	.line	73; "../main.c"	if((_KF8_LIBi_Slide_Press_Flag&0x03)==0)
	BANKSEL	__KF8_LIBi_Slide_Press_Flag
	MOVZ	R0, __KF8_LIBi_Slide_Press_Flag
	AND	R0,# 0x03
	JB	PSW, 2
	JMP	_00022_DS_
;	::->op : =
	.line	75; "../main.c"	PWM1L_back=PWM1L;
	BANKSEL	_PWM1L
	MOVZ	R0, _PWM1L
	BANKSEL	_PWM1L_back
	MOV	_PWM1L_back, R0
;	::->op : =
	.line	76; "../main.c"	PWM2L_back=PWM2L;
	BANKSEL	_PWM2L
	MOVZ	R0, _PWM2L
	BANKSEL	_PWM2L_back
	MOV	_PWM2L_back, R0
;	::->op : LABEL
;	::->op : IFX
_00022_DS_
	.line	78; "../main.c"	if(kf8_time_flag) // 定时查看滑轮结果，否则显示太快，耗时较多，影响触摸采样速度
	MOV	R0,# 0x00
	BANKSEL	_kf8_time_flag
	ORL	R0, _kf8_time_flag
	JNB	PSW, 2
	JMP	_00106_DS_
;	::->op : =
	.line	80; "../main.c"	kf8_time_flag=0;
	BANKSEL	_kf8_time_flag
	CLR	_kf8_time_flag
;	::->op : BITWISEAND
	.line	82; "../main.c"	if(_KF8_LIBi_Slide_Press_Flag&0x01)
	BANKSEL	__KF8_LIBi_Slide_Press_Flag
	JB	__KF8_LIBi_Slide_Press_Flag, 0
	JMP	_00038_DS_
;	::->op : GET_VALUE_AT_ADDRESS
	.line	84; "../main.c"	temper_int=_KF8_LIBi_Slide_distance_out_[0];
	BANKSEL	__KF8_LIBi_Slide_distance_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_distance_out_ + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	_temper_int
	MOV	_temper_int, R0
	BANKSEL	__KF8_LIBi_Slide_distance_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_distance_out_ + 1)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	BANKSEL	_temper_int
	MOV	(_temper_int + 1), R0
;	::->op : CAST
;;107	MOVZ	R0, r0x102B
;;108	MOVZ	R0, r0x102C
;	::->op : CAST
	.line	85; "../main.c"	PWM2L_int=temper_int;
	BANKSEL	_temper_int
	MOVZ	R0, _temper_int
	BANKSEL	_PWM2L_int
	MOV	_PWM2L_int, R0
	BANKSEL	_temper_int
	MOVZ	R0, (_temper_int + 1)
	BANKSEL	_PWM2L_int
	MOV	(_PWM2L_int + 1), R0
;	::->op : CAST
	.line	87; "../main.c"	PWM2L_int=PWM2L_int+PWM2L_back;
	BANKSEL	_PWM2L_back
	MOVZ	R0, _PWM2L_back
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
;	::->op : +
	BANKSEL	r0x102B
	MOV	R0, r0x102B
	BANKSEL	_PWM2L_int
	ADD	_PWM2L_int, R0
	MOV	R0,# 0x00
	JNB	PSW, 0
	INC	R0
	JNB	PSW, 2
	JMP	_00262_DS_
	BANKSEL	_PWM2L_int
	ADD	(_PWM2L_int + 1), R0
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;signed compare: left >= lit(0x100=256), size=2, mask=ffff
_00262_DS_
	.line	88; "../main.c"	if(PWM2L_int>255)
	BANKSEL	_PWM2L_int
	MOVZ	R0, (_PWM2L_int + 1)
	ADD	R0,# 0x80
	ADD	R0,# 0x7f
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00149_DS_
	MOV	R0,# 0x00
	BANKSEL	_PWM2L_int
	SUB	R0, _PWM2L_int
_00149_DS_
	JB	PSW, 0
	JMP	_00027_DS_
;	::->op : =
	.line	90; "../main.c"	PWM2L=255;
	MOV	R0,# 0xff
	BANKSEL	_PWM2L
	MOV	_PWM2L, R0
;	::->op : GOTO
	JMP	_00028_DS_
;	::->op : LABEL
;	::->op : <
;signed compare: left < lit(0x0=0), size=2, mask=ffff
_00027_DS_
	.line	92; "../main.c"	else if(PWM2L_int<0)
	SET	PSW, 0
	BANKSEL	(_PWM2L_int + 1)
	JB	(_PWM2L_int + 1), 7
	CLR	PSW, 0
	JB	PSW, 0
	JMP	_00024_DS_
;	::->op : =
	.line	94; "../main.c"	PWM2L=0;
	BANKSEL	_PWM2L
	CLR	_PWM2L
;	::->op : GOTO
	JMP	_00028_DS_
;	::->op : LABEL
;	::->op : CAST
_00024_DS_
	.line	98; "../main.c"	PWM2L=PWM2L_int;
	BANKSEL	_PWM2L_int
	MOVZ	R0, _PWM2L_int
	BANKSEL	_PWM2L
	MOV	_PWM2L, R0
;	::->op : LABEL
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
_00028_DS_
	.line	100; "../main.c"	Show_Slide_work_out();
	MOV	R0,# 0x0c
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00030_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00030_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00032_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00032_DS_
	BANKSEL	_PWM2L
	MOVZ	R0, _PWM2L
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x0c
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : GET_VALUE_AT_ADDRESS
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 1)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=2
	MOV	R0,# 0x00
	BANKSEL	r0x102C
	SUB	R0, r0x102C
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00152_DS_
	MOV	R0,# 0x64
	BANKSEL	r0x102B
	SUB	R0, r0x102B
_00152_DS_
	JNB	PSW, 0
	JMP	_00034_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : GET_VALUE_AT_ADDRESS
_00034_DS_
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 1)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=2
	MOV	R0,# 0x00
	BANKSEL	r0x102C
	SUB	R0, r0x102C
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00153_DS_
	MOV	R0,# 0x0a
	BANKSEL	r0x102B
	SUB	R0, r0x102B
_00153_DS_
	JNB	PSW, 0
	JMP	_00036_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : GET_VALUE_AT_ADDRESS
_00036_DS_
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 1)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
;	::->op : CAST
;;102	MOVZ	R0, r0x102B
;;104	MOVZ	R0, r0x102C
	BANKSEL	r0x102F
	CLR	r0x102F
	BANKSEL	r0x1030
	CLR	r0x1030
;	::->op : SEND
;	::->op : CALL
;;101	MOVZ	R0, r0x102D
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	r0x102D
	MOV	r0x102D, R0
	BANKSEL	STK02
	MOV	STK02, R0
;;103	MOVZ	R0, r0x102E
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	r0x102E
	MOV	r0x102E, R0
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : =
	.line	101; "../main.c"	clr_show_watch=0;
	BANKSEL	_clr_show_watch
	CLR	_clr_show_watch
	BANKSEL	_clr_show_watch
	CLR	(_clr_show_watch + 1)
;	::->op : LABEL
;	::->op : BITWISEAND
_00038_DS_
	.line	103; "../main.c"	if(_KF8_LIBi_Slide_Press_Flag&0x02)
	BANKSEL	__KF8_LIBi_Slide_Press_Flag
	JB	__KF8_LIBi_Slide_Press_Flag, 1
	JMP	_00054_DS_
;	::->op : GET_VALUE_AT_ADDRESS
	.line	105; "../main.c"	temper_int=_KF8_LIBi_Slide_distance_out_[1];
	BANKSEL	__KF8_LIBi_Slide_distance_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_distance_out_ + 2)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	_temper_int
	MOV	_temper_int, R0
	BANKSEL	__KF8_LIBi_Slide_distance_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_distance_out_ + 3)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	BANKSEL	_temper_int
	MOV	(_temper_int + 1), R0
;	::->op : CAST
;;105	MOVZ	R0, r0x102B
;;106	MOVZ	R0, r0x102C
;	::->op : CAST
	.line	106; "../main.c"	PWM1L_int=temper_int;
	BANKSEL	_temper_int
	MOVZ	R0, _temper_int
	BANKSEL	_PWM1L_int
	MOV	_PWM1L_int, R0
	BANKSEL	_temper_int
	MOVZ	R0, (_temper_int + 1)
	BANKSEL	_PWM1L_int
	MOV	(_PWM1L_int + 1), R0
;	::->op : CAST
	.line	108; "../main.c"	PWM1L_int=PWM1L_int+PWM1L_back;
	BANKSEL	_PWM1L_back
	MOVZ	R0, _PWM1L_back
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
;	::->op : +
	BANKSEL	r0x102B
	MOV	R0, r0x102B
	BANKSEL	_PWM1L_int
	ADD	_PWM1L_int, R0
	MOV	R0,# 0x00
	JNB	PSW, 0
	INC	R0
	JNB	PSW, 2
	JMP	_00263_DS_
	BANKSEL	_PWM1L_int
	ADD	(_PWM1L_int + 1), R0
;	::->op : >
;swapping arguments (AOP_TYPEs 1/3)
;signed compare: left >= lit(0x100=256), size=2, mask=ffff
_00263_DS_
	.line	109; "../main.c"	if(PWM1L_int>255)
	BANKSEL	_PWM1L_int
	MOVZ	R0, (_PWM1L_int + 1)
	ADD	R0,# 0x80
	ADD	R0,# 0x7f
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00154_DS_
	MOV	R0,# 0x00
	BANKSEL	_PWM1L_int
	SUB	R0, _PWM1L_int
_00154_DS_
	JB	PSW, 0
	JMP	_00043_DS_
;	::->op : =
	.line	111; "../main.c"	PWM1L=255;
	MOV	R0,# 0xff
	BANKSEL	_PWM1L
	MOV	_PWM1L, R0
;	::->op : GOTO
	JMP	_00044_DS_
;	::->op : LABEL
;	::->op : <
;signed compare: left < lit(0x0=0), size=2, mask=ffff
_00043_DS_
	.line	113; "../main.c"	else if(PWM1L_int<0)
	SET	PSW, 0
	BANKSEL	(_PWM1L_int + 1)
	JB	(_PWM1L_int + 1), 7
	CLR	PSW, 0
	JB	PSW, 0
	JMP	_00040_DS_
;	::->op : =
	.line	115; "../main.c"	PWM1L=0;
	BANKSEL	_PWM1L
	CLR	_PWM1L
;	::->op : GOTO
	JMP	_00044_DS_
;	::->op : LABEL
;	::->op : CAST
_00040_DS_
	.line	119; "../main.c"	PWM1L=PWM1L_int;
	BANKSEL	_PWM1L_int
	MOVZ	R0, _PWM1L_int
	BANKSEL	_PWM1L
	MOV	_PWM1L, R0
;	::->op : LABEL
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
_00044_DS_
	.line	121; "../main.c"	Show_Wheel_work_out();
	MOV	R0,# 0x02
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00046_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00046_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00048_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00048_DS_
	BANKSEL	_PWM1L
	MOVZ	R0, _PWM1L
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x02
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : GET_VALUE_AT_ADDRESS
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 2)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 3)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=2
	MOV	R0,# 0x00
	BANKSEL	r0x102C
	SUB	R0, r0x102C
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00157_DS_
	MOV	R0,# 0x64
	BANKSEL	r0x102B
	SUB	R0, r0x102B
_00157_DS_
	JNB	PSW, 0
	JMP	_00050_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : GET_VALUE_AT_ADDRESS
_00050_DS_
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 2)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 3)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=2
	MOV	R0,# 0x00
	BANKSEL	r0x102C
	SUB	R0, r0x102C
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00158_DS_
	MOV	R0,# 0x0a
	BANKSEL	r0x102B
	SUB	R0, r0x102B
_00158_DS_
	JNB	PSW, 0
	JMP	_00052_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : GET_VALUE_AT_ADDRESS
_00052_DS_
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 2)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102D
	MOV	r0x102D, R0
	BANKSEL	__KF8_LIBi_Slide_channel_out_
	MOVZ	R0,  (__KF8_LIBi_Slide_channel_out_ + 3)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	BANKSEL	r0x102E
	MOV	r0x102E, R0
;	::->op : CAST
;;99	MOVZ	R0, r0x102B
;;100	MOVZ	R0, r0x102C
	BANKSEL	r0x102F
	CLR	r0x102F
	BANKSEL	r0x1030
	CLR	r0x1030
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	BANKSEL	STK02
	MOV	STK02, R0
	BANKSEL	r0x102E
	MOVZ	R0, r0x102E
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : =
	.line	122; "../main.c"	clr_show_watch=0;
	BANKSEL	_clr_show_watch
	CLR	_clr_show_watch
	BANKSEL	_clr_show_watch
	CLR	(_clr_show_watch + 1)
;	::->op : LABEL
;	::->op : EQ_OP
_00054_DS_
	.line	124; "../main.c"	if(_KF8_LIBi_channel_flag_Old_!=_KF8_LIBi_channel_flag_||fast_key_flag)
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, __KF8_LIBi_channel_flag_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	XOR	R0, __KF8_LIBi_channel_flag_Old_
	JB	PSW, 2
	JMP	_00085_DS_
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, (__KF8_LIBi_channel_flag_ + 1)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	XOR	R0, (__KF8_LIBi_channel_flag_Old_ + 1)
	JB	PSW, 2
	JMP	_00085_DS_
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, (__KF8_LIBi_channel_flag_ + 2)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	XOR	R0, (__KF8_LIBi_channel_flag_Old_ + 2)
	JB	PSW, 2
	JMP	_00085_DS_
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, (__KF8_LIBi_channel_flag_ + 3)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	XOR	R0, (__KF8_LIBi_channel_flag_Old_ + 3)
	JB	PSW, 2
	JMP	_00085_DS_
;	::->op : IFX
	MOV	R0,# 0x00
	BANKSEL	_fast_key_flag
	ORL	R0, _fast_key_flag
	JNB	PSW, 2
	JMP	_00086_DS_
;	::->op : LABEL
;	::->op : =
_00085_DS_
	.line	129; "../main.c"	fast_key_flag=0;
	BANKSEL	_fast_key_flag
	CLR	_fast_key_flag
;	::->op : =
	.line	130; "../main.c"	_KF8_LIBi_channel_flag_Old_=_KF8_LIBi_channel_flag_;
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, __KF8_LIBi_channel_flag_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOV	__KF8_LIBi_channel_flag_Old_, R0
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, (__KF8_LIBi_channel_flag_ + 1)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOV	(__KF8_LIBi_channel_flag_Old_ + 1), R0
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, (__KF8_LIBi_channel_flag_ + 2)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOV	(__KF8_LIBi_channel_flag_Old_ + 2), R0
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, (__KF8_LIBi_channel_flag_ + 3)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOV	(__KF8_LIBi_channel_flag_Old_ + 3), R0
;	::->op : EQ_OP
	.line	132; "../main.c"	if(_KF8_LIBi_channel_flag_Old_==Key_1_Code_Define)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, __KF8_LIBi_channel_flag_Old_
	XOR	R0,# 0x10
	JB	PSW, 2
	JMP	_00083_DS_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, (__KF8_LIBi_channel_flag_Old_ + 1)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00083_DS_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, (__KF8_LIBi_channel_flag_Old_ + 2)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00083_DS_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, (__KF8_LIBi_channel_flag_Old_ + 3)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00083_DS_
;	::->op : EQ_OP
	.line	134; "../main.c"	if(PWM3!=51)
	BANKSEL	_PWM3
	MOVZ	R0, _PWM3
	.line	136; "../main.c"	PWM3=PWM3+1;
	XOR	R0,# 0x33
	.line	138; "../main.c"	PWM3L_back=PWM3*5;
	JNB	PSW, 2
	JMP	_00264_DS_
	BANKSEL	_PWM3
	INC	_PWM3
_00264_DS_
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	_PWM3
	MOVZ	R0, _PWM3
	PAGESEL	__mulchar
	CALL	__mulchar
	PAGESEL	$
	BANKSEL	_PWM3L_back
	MOV	_PWM3L_back, R0
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	.line	139; "../main.c"	Show_Key1_work_out();
	MOV	R0,# 0x07
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00058_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00058_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00060_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00060_DS_
	BANKSEL	_PWM3L_back
	MOVZ	R0, _PWM3L_back
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x08
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_1 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_1 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : =
	.line	140; "../main.c"	clr_show_enable=0;
	BANKSEL	_clr_show_enable
	CLR	_clr_show_enable
;	::->op : GOTO
	JMP	_00086_DS_
;	::->op : LABEL
;	::->op : EQ_OP
_00083_DS_
	.line	142; "../main.c"	else if(_KF8_LIBi_channel_flag_Old_==Key_2_Code_Define)
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, __KF8_LIBi_channel_flag_Old_
	XOR	R0,# 0x08
	JB	PSW, 2
	JMP	_00080_DS_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, (__KF8_LIBi_channel_flag_Old_ + 1)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00080_DS_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, (__KF8_LIBi_channel_flag_Old_ + 2)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00080_DS_
	BANKSEL	__KF8_LIBi_channel_flag_Old_
	MOVZ	R0, (__KF8_LIBi_channel_flag_Old_ + 3)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00080_DS_
;	::->op : IFX
	.line	144; "../main.c"	if(PWM3!=0)
	MOV	R0,# 0x00
	.line	146; "../main.c"	PWM3=PWM3-1;
	BANKSEL	_PWM3
	ORL	R0, _PWM3
	.line	148; "../main.c"	PWM3L_back=PWM3*5;
	JNB	PSW, 2
	JMP	_00265_DS_
	BANKSEL	_PWM3
	DEC	_PWM3
_00265_DS_
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	_PWM3
	MOVZ	R0, _PWM3
	PAGESEL	__mulchar
	CALL	__mulchar
	PAGESEL	$
	BANKSEL	_PWM3L_back
	MOV	_PWM3L_back, R0
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	.line	149; "../main.c"	Show_Key2_work_out();
	MOV	R0,# 0x07
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00064_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00064_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00066_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00066_DS_
	BANKSEL	_PWM3L_back
	MOVZ	R0, _PWM3L_back
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x08
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_2 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_2 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : =
	.line	150; "../main.c"	clr_show_enable=0;
	BANKSEL	_clr_show_enable
	CLR	_clr_show_enable
;	::->op : GOTO
	JMP	_00086_DS_
;	::->op : LABEL
;	::->op : =
_00080_DS_
	.line	154; "../main.c"	key_out=0;
	BANKSEL	_key_out
	CLR	_key_out
;	::->op : =
	.line	155; "../main.c"	key_time_count=0;
	BANKSEL	_key_time_count
	CLR	_key_time_count
	BANKSEL	_key_time_count
	CLR	(_key_time_count + 1)
;	::->op : =
	.line	156; "../main.c"	clr_show_enable=1;
	MOV	R0,# 0x01
	BANKSEL	_clr_show_enable
	MOV	_clr_show_enable, R0
;	::->op : CALL
	.line	157; "../main.c"	Show_begin_Mes();
	PAGESEL	_LCD1602_Clear
	CALL	_LCD1602_Clear
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_3 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_3 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x02
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00068_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00068_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00070_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00070_DS_
	BANKSEL	_PWM1L
	MOVZ	R0, _PWM1L
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x07
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00072_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00072_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00074_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00074_DS_
	BANKSEL	_PWM3L_back
	MOVZ	R0, _PWM3L_back
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x0c
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00076_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00076_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00078_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00078_DS_
	BANKSEL	_PWM2L
	MOVZ	R0, _PWM2L
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_4 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_4 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : +
_00086_DS_
	.line	162; "../main.c"	clr_show_watch++;
	BANKSEL	_clr_show_watch
	INC	_clr_show_watch
	JB	PSW, 2
	JMP	_00266_DS_
	BANKSEL	_clr_show_watch
	INC	(_clr_show_watch + 1)
;	::->op : EQ_OP
_00266_DS_
	.line	163; "../main.c"	if(clr_show_watch==8)
	BANKSEL	_clr_show_watch
	MOVZ	R0, _clr_show_watch
	XOR	R0,# 0x08
	JB	PSW, 2
	JMP	_00106_DS_
	BANKSEL	_clr_show_watch
	MOVZ	R0, (_clr_show_watch + 1)
	XOR	R0,# 0x00
	JB	PSW, 2
	JMP	_00106_DS_
;	::->op : =
	.line	165; "../main.c"	clr_show_watch=16;
	MOV	R0,# 0x10
	BANKSEL	_clr_show_watch
	MOV	_clr_show_watch, R0
	BANKSEL	_clr_show_watch
	CLR	(_clr_show_watch + 1)
;	::->op : IFX
	.line	167; "../main.c"	if(clr_show_enable)
	MOV	R0,# 0x00
	BANKSEL	_clr_show_enable
	ORL	R0, _clr_show_enable
	JNB	PSW, 2
	JMP	_00106_DS_
;	::->op : CALL
	.line	168; "../main.c"	Show_begin_Mes();
	PAGESEL	_LCD1602_Clear
	CALL	_LCD1602_Clear
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_3 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_3 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x02
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00089_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00089_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM1L
	SUB	R0, _PWM1L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00091_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00091_DS_
	BANKSEL	_PWM1L
	MOVZ	R0, _PWM1L
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x07
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00093_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00093_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM3L_back
	SUB	R0, _PWM3L_back
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00095_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00095_DS_
	BANKSEL	_PWM3L_back
	MOVZ	R0, _PWM3L_back
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x0c
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : <
;unsigned compare: left < lit(0x64=100), size=1
	MOV	R0,# 0x64
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00097_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : <
;unsigned compare: left < lit(0xA=10), size=1
_00097_DS_
	MOV	R0,# 0x0a
	BANKSEL	_PWM2L
	SUB	R0, _PWM2L
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00099_DS_
;	::->op : CAST
	MOV	R0,# high (__str_0 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_0 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : CAST
_00099_DS_
	BANKSEL	_PWM2L
	MOVZ	R0, _PWM2L
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	r0x102C
	CLR	r0x102C
	BANKSEL	r0x102D
	CLR	r0x102D
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK02
	MOV	STK02, R0
	MOV	R0,# 0x00
	BANKSEL	STK01
	MOV	STK01, R0
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_LCD1602_PrintInteger
	CALL	_LCD1602_PrintInteger
	PAGESEL	$
;	::->op : SEND
;	::->op : SEND
;	::->op : CALL
	MOV	R0,# 0x00
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x01
	PAGESEL	_LCD1602_setxy
	CALL	_LCD1602_setxy
	PAGESEL	$
;	::->op : CAST
	MOV	R0,# high (__str_4 + 0)
	BANKSEL	r0x102C
	MOV	r0x102C, R0
	MOV	R0,# (__str_4 + 0)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	MOV	R0,# 0x80
	BANKSEL	r0x102D
	MOV	r0x102D, R0
;	::->op : SEND
;	::->op : CALL
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	STK01
	MOV	STK01, R0
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	STK00
	MOV	STK00, R0
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	PAGESEL	_LCD1602_PrintString
	CALL	_LCD1602_PrintString
	PAGESEL	$
;	::->op : LABEL
;	::->op : ENDFUNCTION
_00106_DS_
	CRET	
	.def _Show_Key_Out_function_end, debug, value=$

; exit point of _Show_Key_Out



func._delay_us	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  _delay_us	;Function start
; 2 exit points
;has an exit
;5 compiler assigned registers:
;   r0x1035
;   STK00
;   r0x1036
;   r0x1037
;   r0x1038
;; Starting PostCode block
	.def _delay_us_function_begin, debug, value=$

;	::->op : LABEL
;	::->op : FUNCTION
_delay_us	;Function start
; 2 exit points
;	::->op : RECEIVE
	.line	61; "../main.c"	void delay_us(uint us_data)
	BANKSEL	r0x1035
	MOV	r0x1035, R0
	BANKSEL	STK00
	MOVZ	R0, STK00
	BANKSEL	r0x1036
	MOV	r0x1036, R0
;	::->op : =
;	::->op : LABEL
;	::->op : =
_00014_DS_
	.line	63; "../main.c"	while(us_data--);
	BANKSEL	r0x1036
	MOVZ	R0, r0x1036
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	BANKSEL	r0x1035
	MOVZ	R0, r0x1035
	BANKSEL	r0x1038
	MOV	r0x1038, R0
;	::->op : -
	MOV	R0,# 0xff
	BANKSEL	r0x1036
	ADD	r0x1036, R0
	JNB	PSW, 0
	JMP	_00267_DS_
	BANKSEL	r0x1035
	DEC	r0x1035
;	::->op : IFX
_00267_DS_
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x1038
	ORL	R0, r0x1038
	JB	PSW, 2
	JMP	_00014_DS_
;	::->op : LABEL
;	::->op : ENDFUNCTION
	CRET	
	.def _delay_us_function_end, debug, value=$

; exit point of _delay_us



func._delay_ms	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  _delay_ms	;Function start
; 2 exit points
;has an exit
;7 compiler assigned registers:
;   r0x102B
;   STK00
;   r0x102C
;   r0x102D
;   r0x102E
;   r0x102F
;   r0x1030
;; Starting PostCode block
	.def _delay_ms_function_begin, debug, value=$

;	::->op : LABEL
;	::->op : FUNCTION
_delay_ms	;Function start
; 2 exit points
;	::->op : RECEIVE
	.line	45; "../main.c"	void delay_ms(uint ms_data)
	BANKSEL	r0x102B
	MOV	r0x102B, R0
	BANKSEL	STK00
	MOVZ	R0, STK00
	BANKSEL	r0x102C
	MOV	r0x102C, R0
;	::->op : =
;	::->op : LABEL
;	::->op : =
_00004_DS_
	.line	48; "../main.c"	while(ms_data--)
	BANKSEL	r0x102C
	MOVZ	R0, r0x102C
	BANKSEL	r0x102D
	MOV	r0x102D, R0
	BANKSEL	r0x102B
	MOVZ	R0, r0x102B
	BANKSEL	r0x102E
	MOV	r0x102E, R0
;	::->op : -
	MOV	R0,# 0xff
	BANKSEL	r0x102C
	ADD	r0x102C, R0
	JNB	PSW, 0
	JMP	_00268_DS_
	BANKSEL	r0x102B
	DEC	r0x102B
;	::->op : IFX
_00268_DS_
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	BANKSEL	r0x102E
	ORL	R0, r0x102E
	JNB	PSW, 2
	JMP	_00007_DS_
;	::->op : INLINEASM
	CWDT 
;	::->op : =
	.line	52; "../main.c"	while(j--);
	MOV	R0,# 0x64
	BANKSEL	r0x102D
	MOV	r0x102D, R0
	BANKSEL	r0x102E
	CLR	r0x102E
;	::->op : LABEL
;	::->op : =
_00001_DS_
	BANKSEL	r0x102D
	MOVZ	R0, r0x102D
	BANKSEL	r0x102F
	MOV	r0x102F, R0
	BANKSEL	r0x102E
	MOVZ	R0, r0x102E
	BANKSEL	r0x1030
	MOV	r0x1030, R0
;	::->op : -
	MOV	R0,# 0xff
	BANKSEL	r0x102D
	ADD	r0x102D, R0
	JNB	PSW, 0
	JMP	_00269_DS_
	BANKSEL	r0x102E
	DEC	r0x102E
;	::->op : IFX
_00269_DS_
	BANKSEL	r0x102F
	MOVZ	R0, r0x102F
	BANKSEL	r0x1030
	ORL	R0, r0x1030
	JNB	PSW, 2
	JMP	_00004_DS_
;	::->op : GOTO
	JMP	_00001_DS_
;	::->op : LABEL
;	::->op : ENDFUNCTION
_00007_DS_
	CRET	
	.def _delay_ms_function_end, debug, value=$

; exit point of _delay_ms


;	code size estimation:
;	 1540+  748 =  2288 instructions ( 6072 byte)

	.type _delay_ms,  32
	.dim _delay_ms, 1, (_delay_ms_function_end&0xFF00)>>8, _delay_ms_function_end&0xFF,0,45,0,54 , 1, 1
	.type _delay_us,  32
	.dim _delay_us, 1, (_delay_us_function_end&0xFF00)>>8, _delay_us_function_end&0xFF,0,61,0,64 , 1, 1
	.type _Show_Key_Out,  32
	.dim _Show_Key_Out, 1, (_Show_Key_Out_function_end&0xFF00)>>8, _Show_Key_Out_function_end&0xFF,0,71,0,172 , 1, 1
	.type _main,  32
	.dim _main, 1, (_main_function_end&0xFF00)>>8, _main_function_end&0xFF,0,179,1,39 , 1, 1
	.type _int_fun0,  32
	.dim _int_fun0, 1, (_int_fun0_function_end&0xFF00)>>8, _int_fun0_function_end&0xFF,1,41,1,56 , 2, 1
	.type _int_fun1,  32
	.dim _int_fun1, 1, (_int_fun1_function_end&0xFF00)>>8, _int_fun1_function_end&0xFF,1,58,1,133 , 1, 1
	.def __00010000, debug, type = 8, class = 10, value = 1
	.def _0, debug, value = 1, type = 26, class = 8
	.def _1, debug, value = 1, type = 26, class = 8
	.def _2, debug, value = 1, type = 26, class = 8
	.def _3, debug, value = 1, type = 26, class = 8
	.def _4, debug, value = 1, type = 26, class = 8
	.def _5, debug, value = 1, type = 26, class = 8
	.def _6, debug, value = 1, type = 26, class = 8
	.def _7, debug, value = 1, type = 26, class = 8

	.end
