;--------------------------------------------------------
; File Created by ChiponCC : aolisn inc.
; Version 3.0.4#6752 (Jul  6 2017 15:09:47) (MSVC)
; This file was generated Tue Apr 03 20:28:58 2018
;--------------------------------------------------------
; chipon port for the 16-bit core
;--------------------------------------------------------
;	.file	"../kf8ts35_touch_cs_lib.c"
	.radix dec
	.include "KF8TS2516.inc"
;--------------------------------------------------------
; external declarations
;--------------------------------------------------------
	.extern	_init_mcu
	.extern	__R2PCL
	.extern	_TOUCH_DEBUG_TRS_DEAL
	.extern	_TOUCH_DEBUG_SEND_OUT
	.extern	_delay_ms
	.extern	_delay_us
	.extern	_PSW_bits
	.extern	_P0_bits
	.extern	_P2_bits
	.extern	_P1_bits
	.extern	_PCH_bits
	.extern	_INTCTL_bits
	.extern	_EIF1_bits
	.extern	_EIF2_bits
	.extern	_T1CTL_bits
	.extern	_PWMCTL_bits
	.extern	_BANK_bits
	.extern	_C1CTL_bits
	.extern	_VDACS_bits
	.extern	_AMPCTL_bits
	.extern	_ANSEH_bits
	.extern	_ADCCTL0_bits
	.extern	_AMPDT_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	_EIE3_bits
	.extern	_EIF3_bits
	.extern	_T3CTL_bits
	.extern	_CTCTL0_bits
	.extern	_PUR1_bits
	.extern	_PUR2_bits
	.extern	_CTCTL1_bits
	.extern	_INTEDGCTL_bits
	.extern	_VDAC_bits
	.extern	_VRES_bits
	.extern	_C1CAL_bits
	.extern	_SSCICTL0_bits
	.extern	_SSCICTL1_bits
	.extern	_SSCISTA_bits
	.extern	_SSCIADD_bits
	.extern	_SSCIMSK_bits
	.extern	_WDTPS_bits
	.extern	_C1FILTCTL_bits
	.extern	_C1FILTPRE_bits
	.extern	_CTCTL2_bits
	.extern	_T4CTL_bits
	.extern	_sentbuf1
	.extern	_sentbuf2
	.extern	_sentbuf3
	.extern	_sentbuf4
	.extern	__KF8_LIBi_channel_flag_
	.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	_CHS_AMOUNT
	.extern	_TCS_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_Config_Finger_Threshold
	.extern	__KF8_TOUCH_CH_EN
	.extern	_T0
	.extern	_PCL
	.extern	_PSW
	.extern	_P0
	.extern	_P2
	.extern	_P1
	.extern	_PCH
	.extern	_INTCTL
	.extern	_EIF1
	.extern	_EIF2
	.extern	_T1L
	.extern	_T1H
	.extern	_T1CTL
	.extern	_PWM1L
	.extern	_PWMCTL
	.extern	_PP1
	.extern	_BANK
	.extern	_C1CTL
	.extern	_VDACS
	.extern	_AMPCTL
	.extern	_ANSEH
	.extern	_ADCDATA0H
	.extern	_ADCCTL0
	.extern	_AMPDT
	.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	_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	_EIE3
	.extern	_EIF3
	.extern	_OSCCAL2
	.extern	_OSCCAL3
	.extern	_T3CTL
	.extern	_T3L
	.extern	_CTCTL0
	.extern	_T3H
	.extern	_PUR1
	.extern	_PUR2
	.extern	_CTCTL1
	.extern	_INTEDGCTL
	.extern	_ADCDATA3L
	.extern	_VDAC
	.extern	_VRES
	.extern	_C1CAL
	.extern	_SSCICTL0
	.extern	_SSCICTL1
	.extern	_SSCISTA
	.extern	_SSCIBUFR
	.extern	_SSCIADD
	.extern	_SSCIMSK
	.extern	_WDTPS
	.extern	_C1FILTCTL
	.extern	_C1FILTPRE
	.extern	_VRECAL2
	.extern	_VRECAL3
	.extern	_CTCTL2
	.extern	_T4L
	.extern	_T4H
	.extern	_T4REL
	.extern	_T4REH
	.extern	_T4CTL
	.extern	_RC32KCAL

	.extern I0R1
	.extern I0R7
	.extern I0PSW
	.extern I0PCH
	.extern I1R1
	.extern I1R7
	.extern I1PSW
	.extern I1PCH
	.extern STK11
	.extern STK10
	.extern STK09
	.extern STK08
	.extern STK07
	.extern STK06
	.extern STK05
	.extern STK04
	.extern STK03
	.extern STK02
	.extern STK01
	.extern STK00
;--------------------------------------------------------
; global declarations
;--------------------------------------------------------
	.global	__KF8TS35_Get_Ver_cs_General_
	.global	__KF8TS35_Touch_TEST_cs_General_
	.global	__KF8TS35_Touch_Process_cs_General_
	.global	__KF8TS35_Init_Touch_cs_General_
	.global	__KF8TS35_Lib_Set_General_cs_Parameter
	.global	__KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	.global	__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	.global	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	.global	__KF8_lib_Key_Down_Count_TS3_CS_T_
	.global	__KF8_LIBc_finger_OUT_First_TS3_CS_T_
	.global	__KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	.global	__KF8_lib_Finded_MAX_I_TS3_CS_T_
	.global	__KF8_lib_Finded_MAX_J_TS3_CS_T_
	.global	__KF8_lib_CH_DW_Change_Count_TS3_CS_T_
	.global	__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	.global	__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	.global	__KF8_lib_bahualvtemportemp_TS3_CS_T_
	.global	__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	.global	_change_buf_KF8_Lib_TS3_CS_T_
	.global	_i_KF8_lib_TS3_CS_T_
	.global	_result_temp_KF8_Lib_TS3_CS_T_
	.global	_Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	.global	__KF8_LIBi_Touch_New_Date_TS3_CS_T_
	.global	__KF8_Temp_Cur_A_TS3_CS_T_
	.global	__KF8_Temp_Cur_B_TS3_CS_T_
	.global	_touch_weisuiji_cnt
	.global	__KF8TS35CS_Data_Steady_Flag_
	.global	__KF8_LIBt_buff_bit_TS3_CS_T_

;--------------------------------------------------------
; global definitions
;--------------------------------------------------------
UD_kf8ts35_touch_cs_lib_0	.udata
__KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_1	.udata
__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_	.res	2

UD_kf8ts35_touch_cs_lib_2	.udata
__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_	.res	2

UD_kf8ts35_touch_cs_lib_3	.udata
__KF8_lib_Touch_Bits_	.res	1

UD_kf8ts35_touch_cs_lib_4	.udata
__KF8_lib_Key_Down_Count_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_5	.udata
__KF8_LIBc_finger_OUT_First_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_6	.udata
__KF8_LIBc_finger_OUT_Second_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_7	.udata
__KF8_lib_Finded_MAX_I_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_8	.udata
__KF8_lib_Finded_MAX_J_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_9	.udata
__KF8_lib_CH_DW_Change_Count_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_10	.udata
__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_	.res	4

UD_kf8ts35_touch_cs_lib_11	.udata
__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_	.res	4

UD_kf8ts35_touch_cs_lib_12	.udata
__KF8_lib_bahualvtemportemp_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_13	.udata
__KF8_lib_Date_Uchar_Temp_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_14	.udata
_change_buf_KF8_Lib_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_15	.udata
_i_KF8_lib_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_16	.udata
_result_temp_KF8_Lib_TS3_CS_T_	.res	2

UD_kf8ts35_touch_cs_lib_17	.udata
_Addr_Copy_Int_KF8_Lib_TS3_CS_T_	.res	1

UD_kf8ts35_touch_cs_lib_18	.udata
__KF8_LIBi_Touch_New_Date_TS3_CS_T_	.res	2

UD_kf8ts35_touch_cs_lib_19	.udata
__KF8_Temp_Cur_A_TS3_CS_T_	.res	2

UD_kf8ts35_touch_cs_lib_20	.udata
__KF8_Temp_Cur_B_TS3_CS_T_	.res	2

UD_kf8ts35_touch_cs_lib_21	.udata
_touch_weisuiji_cnt	.res	1

UD_kf8ts35_touch_cs_lib_22	.udata
__KF8TS35CS_Data_Steady_Flag_	.res	4

;--------------------------------------------------------
; absolute symbol definitions
;--------------------------------------------------------
;--------------------------------------------------------
; compiler-defined variables
;--------------------------------------------------------
UDL_kf8ts35_touch_cs_lib_0	.udata
r0x1042	.res	1
UDL_kf8ts35_touch_cs_lib_1	.udata
r0x1037	.res	1
UDL_kf8ts35_touch_cs_lib_2	.udata
r0x1038	.res	1
UDL_kf8ts35_touch_cs_lib_3	.udata
r0x103A	.res	1
UDL_kf8ts35_touch_cs_lib_4	.udata
r0x103B	.res	1
UDL_kf8ts35_touch_cs_lib_5	.udata
r0x103C	.res	1
UDL_kf8ts35_touch_cs_lib_6	.udata
r0x103E	.res	1
UDL_kf8ts35_touch_cs_lib_7	.udata
r0x103D	.res	1
UDL_kf8ts35_touch_cs_lib_8	.udata
r0x103F	.res	1
UDL_kf8ts35_touch_cs_lib_9	.udata
r0x1040	.res	1
UDL_kf8ts35_touch_cs_lib_10	.udata
r0x1039	.res	1
UDL_kf8ts35_touch_cs_lib_11	.udata
r0x1041	.res	1
UDL_kf8ts35_touch_cs_lib_12	.udata
r0x1036	.res	1
;--------------------------------------------------------
; initialized data
;--------------------------------------------------------

ID_kf8ts35_touch_cs_lib_0	.code
__KF8_LIBt_buff_bit_TS3_CS_T_
	RRET R0, #0x01
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x02
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x04
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x08
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x10
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x20
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x40
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x80
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x01
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x02
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x04
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x08
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x10
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x20
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x40
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x80
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x01
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x02
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x04
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x08
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x10
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x00
	RRET R0, #0x20
	RRET R0, #0x00

;--------------------------------------------------------
; overlayable items in internal ram 
;--------------------------------------------------------
;	.udata_ovr


func.__KF8TS35_Get_Ver_cs_General_	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8TS35_Get_Ver_cs_General_	;Function start
; 2 exit points
;has an exit
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8TS35_Get_Ver_cs_General_	;Function start
; 2 exit points
;	op : RETURN
;	.line	2935; "../kf8ts35_touch_cs_lib.c"	return Ver_TS3_G;
	MOV	R0,# 0xb1
;	op : LABEL
;	op : ENDFUNCTION
	CRET	
; exit point of __KF8TS35_Get_Ver_cs_General_



func.__KF8TS35_Touch_TEST_cs_General_	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8TS35_Touch_TEST_cs_General_	;Function start
; 2 exit points
;has an exit
;1 compiler assigned register :
;   r0x1036
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8TS35_Touch_TEST_cs_General_	;Function start
; 2 exit points
;	op : INLINEASM
	CLR PSW,0
	BANKSEL __KF8_LIBc_channel_
	RLCR __KF8_LIBc_channel_
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV _Addr_Copy_Int_KF8_Lib_TS3_CS_T_,R0
	
;	op : INLINEASM
	BANKSEL _CTCTL1
	CLR _CTCTL1,5
	;;
	BANKSEL __KF8_lib_Touch_Bits_ ;;
	JB __KF8_lib_Touch_Bits_,7
	JMP Read_T3_IN2
Read_T4_IN2:
	BANKSEL _T4H
	MOV R1,_T4H
	BANKSEL _T4L
	MOV R0,_T4L
	JMP Read_T_End2
Read_T3_IN2:
	BANKSEL _T3H
	MOV R1,_T3H
	BANKSEL _T3L
	MOV R0,_T3L
Read_T_End2:
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	MOV __KF8_LIBi_Touch_New_Date_TS3_CS_T_+1,R1
	MOV __KF8_LIBi_Touch_New_Date_TS3_CS_T_,R0
	;;
	CLR PSW,0
	RRC __KF8_LIBi_Touch_New_Date_TS3_CS_T_+1
	RRC __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;偏移量
	ADD R0,# (__KF8_LIBi_buff_hit_ + 1)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	CLR PSW,0
	RRC R1
	ST [R0],R1
	DEC R0
	LD R1,[R0]
	RRC R1
	ST [R0],R1
	;;
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	ADD __KF8_LIBi_Touch_New_Date_TS3_CS_T_,R1
	INC R0
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	JNB PSW,0
	INC R1
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	ADD R1,__KF8_LIBi_Touch_New_Date_TS3_CS_T_+1
	BANKSEL __KF8_LIBi_buff_hit_
	ST [R0],R1
	DEC R0
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	MOV R1,__KF8_LIBi_Touch_New_Date_TS3_CS_T_
	BANKSEL __KF8_LIBi_buff_hit_
	ST [R0],R1
	
;	op : GET_VALUE_AT_ADDRESS
;	.line	2778; "../kf8ts35_touch_cs_lib.c"	if(!_KF8_lib_Touch_Bits_._KF8_Touch_Work_Flag)
	BANKSEL	__KF8_lib_Touch_Bits_
	JNB	__KF8_lib_Touch_Bits_, 0
	JMP	_00169_DS_
;	op : INLINEASM
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_ ;;_KF8_LIBi_buff_hit_ low
	LD R1,[R0]
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_ ;;_KF8_LIBi_buff_baseline_ low
	ST [R0],R1
	;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_ ;; _KF8_LIBi_buff_hit_ high
	LD R1,[R0]
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_ ;;_KF8_LIBi_buff_baseline_ high
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_ ;;
	ADD R0, #(__KF8_LIBc_touch_count_)
	MOV R1,#0x00
	BANKSEL __KF8_LIBc_touch_count_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0, #(__KF8_LIBc_baseline_count_)
	MOV R1,#0x00
	BANKSEL __KF8_LIBc_baseline_count_
	ST [R0],R1
	
;	op : IFX
;	.line	2826; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBc_channel_==0)
	MOV	R0,# 0x00
	BANKSEL	__KF8_LIBc_channel_
	ORL	R0, __KF8_LIBc_channel_
	JB	PSW, 2
	JMP	_00169_DS_
;	op : +
;	.line	2828; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Date_Uchar_Temp_TS3_CS_T_++;
	BANKSEL	__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC	__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
;	op : >
;swapping arguments (AOP_TYPEs 1/3)
;unsigned compare: left >= lit(0x40=64), size=1
;	.line	2829; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Date_Uchar_Temp_TS3_CS_T_>63) //不按整圈了，从0算起，省代码
	MOV	R0,# 0x40
	BANKSEL	__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	SUB	R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
;comparing bytes at offset 0
	JB	PSW, 0
	JMP	_00169_DS_
;	op : =
;	.line	2831; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Work_Flag=1;  //进入工作状态
	BANKSEL	__KF8_lib_Touch_Bits_
	SET	__KF8_lib_Touch_Bits_, 0
;	op : LABEL
;	op : INLINEASM
_00169_DS_
	MOV R1,# high (_CHS_AMOUNT+0)
	MOV R0,# low (_CHS_AMOUNT+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBc_channel_
	INC __KF8_LIBc_channel_
	XOR R0,__KF8_LIBc_channel_
	JNB PSW,2
	CLR __KF8_LIBc_channel_
	
;	op : =
;	.line	2863; "../kf8ts35_touch_cs_lib.c"	T3H = 0;T3L = 0;
	BANKSEL	_T3H
	CLR	_T3H
;	op : =
	BANKSEL	_T3L
	CLR	_T3L
;	op : GET_VALUE_AT_ADDRESS
;	.line	2864; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 5
	JMP	_00171_DS_
;	op : INLINEASM
	MOVB #0x00
	CLR 0x53,5
	
;	op : LABEL
;	op : INLINEASM
_00171_DS_
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0, # low (__KF8_TOUCH_CH_EN+0)
	MOV R1, # high (__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	ORL R0,#0xc0;#0xe0 ;;
	BANKSEL _INTCTL
	CLR _INTCTL,6
	CLR _INTCTL,7 ;
	BANKSEL _CTCTL0
	MOV _CTCTL0,R0
	NOP
	JB _CTCTL0,6 ;
	JMP $-3
	
;	op : =
;	.line	2898; "../kf8ts35_touch_cs_lib.c"	touch_weisuiji_cnt=0;
	BANKSEL	_touch_weisuiji_cnt
	CLR	_touch_weisuiji_cnt
;	op : |
;	.line	2899; "../kf8ts35_touch_cs_lib.c"	CTCTL1 |= 0X20;
	BANKSEL	_CTCTL1
	SET	_CTCTL1, 5
;	op : LABEL
;	op : BITWISEAND
_00174_DS_
;	.line	2901; "../kf8ts35_touch_cs_lib.c"	while(!(CTCTL1&0X04))
	BANKSEL	_CTCTL1
	JNB	_CTCTL1, 2
	JMP	_00176_DS_
;	op : =
;	.line	2904; "../kf8ts35_touch_cs_lib.c"	if(touch_weisuiji_cnt++>20)			//兼容老版本没有该位置清零
	BANKSEL	_touch_weisuiji_cnt
	MOVZ	R0, _touch_weisuiji_cnt
	BANKSEL	r0x1036
	MOV	r0x1036, R0
;	op : +
	BANKSEL	_touch_weisuiji_cnt
	INC	_touch_weisuiji_cnt
;	op : >
;swapping arguments (AOP_TYPEs 1/2)
;unsigned compare: left >= lit(0x15=21), size=1
	MOV	R0,# 0x15
	BANKSEL	r0x1036
	SUB	R0, r0x1036
;comparing bytes at offset 0
	JB	PSW, 0
	JMP	_00174_DS_
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00176_DS_
;	.line	2913; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 5
	JMP	_00178_DS_
;	op : INLINEASM
	MOVB #0x00
	SET 0x53,5
	
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00178_DS_
;	.line	2920; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Count_Use_T4)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 7
	JMP	_00180_DS_
;	op : =
;	.line	2922; "../kf8ts35_touch_cs_lib.c"	T4L = 0;    T4H = 0; 	T4ON=1;		// T3 T4 如果分频 外部可设置
	BANKSEL	_T4L
	CLR	_T4L
;	op : =
	BANKSEL	_T4H
	CLR	_T4H
;	op : =
	BANKSEL	_T4CTL_bits
	SET	_T4CTL_bits, 0
;	op : LABEL
;	op : =
_00180_DS_
;	.line	2924; "../kf8ts35_touch_cs_lib.c"	AIEL=1;		AIEH=1;// 恢复中断使能
	BANKSEL	_INTCTL_bits
	SET	_INTCTL_bits, 6
;	op : =
	BANKSEL	_INTCTL_bits
	SET	_INTCTL_bits, 7
;	op : LABEL
;	op : ENDFUNCTION
	CRET	
; exit point of __KF8TS35_Touch_TEST_cs_General_



func.__KF8TS35_Touch_Process_cs_General_	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8TS35_Touch_Process_cs_General_	;Function start
; 2 exit points
;has an exit
;functions called:
;   __KF8_LIBf_scan_channel_
;   __KF8_LiBf_KEY_Deal_AND_BaseLine_Up
;   __KF8_LIBf_scan_channel_
;   __KF8_LiBf_KEY_Deal_AND_BaseLine_Up
;1 compiler assigned register :
;   r0x1041
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8TS35_Touch_Process_cs_General_	;Function start
; 2 exit points
;	op : INLINEASM
	CLR PSW,0
	BANKSEL __KF8_LIBc_channel_
	RLCR __KF8_LIBc_channel_
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV _Addr_Copy_Int_KF8_Lib_TS3_CS_T_,R0
	
;	op : INLINEASM
	BANKSEL _CTCTL1
	CLR _CTCTL1,5
	;;
	BANKSEL __KF8_lib_Touch_Bits_ ;;
	JB __KF8_lib_Touch_Bits_,7
	JMP Read_T3_IN
Read_T4_IN:
	BANKSEL _T4H
	MOV R1,_T4H
	BANKSEL _T4L
	MOV R0,_T4L
	JMP Read_T_End
Read_T3_IN:
	BANKSEL _T3H
	MOV R1,_T3H
	BANKSEL _T3L
	MOV R0,_T3L
Read_T_End:
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	MOV __KF8_LIBi_Touch_New_Date_TS3_CS_T_+1,R1
	MOV __KF8_LIBi_Touch_New_Date_TS3_CS_T_,R0
	;;
	;;---------------------------------
	;;==
	MOV R0,#(2)
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	ADD __KF8_LIBi_Touch_New_Date_TS3_CS_T_,R0
	JNB PSW,0
	INC __KF8_LIBi_Touch_New_Date_TS3_CS_T_+1
	;;==;
	MOV R0,#2
	INC R0
	JMP IIR_Deal_NEXT_1
IIR_Deal_DO_1:
	CLR PSW,0
	RRC __KF8_LIBi_Touch_New_Date_TS3_CS_T_+1
	RRC __KF8_LIBi_Touch_New_Date_TS3_CS_T_
IIR_Deal_NEXT_1:
	DECJZ R0
	JMP IIR_Deal_DO_1
	;;-----------------------------------
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_hit_+0)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV __KF8_Temp_Cur_A_TS3_CS_T_,R1
	INC R0
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV __KF8_Temp_Cur_A_TS3_CS_T_+1,R1 ;
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV R0,__KF8_Temp_Cur_A_TS3_CS_T_
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV __KF8_Temp_Cur_B_TS3_CS_T_,R0
	MOV __KF8_Temp_Cur_B_TS3_CS_T_+1,R1 ;
	;;==
	MOV R0,#(2)
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	ADD __KF8_Temp_Cur_B_TS3_CS_T_,R0
	JNB PSW,0
	INC __KF8_Temp_Cur_B_TS3_CS_T_+1
	;;==;
	MOV R0,#2
	INC R0
	JMP IIR_Deal_NEXT_2
IIR_Deal_DO_2:
	CLR PSW,0
	RRC __KF8_Temp_Cur_B_TS3_CS_T_+1
	RRC __KF8_Temp_Cur_B_TS3_CS_T_
IIR_Deal_NEXT_2:
	DECJZ R0
	JMP IIR_Deal_DO_2 ;
	MOV R0,__KF8_Temp_Cur_B_TS3_CS_T_
	MOV R1,__KF8_Temp_Cur_B_TS3_CS_T_+1
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	SUB __KF8_Temp_Cur_A_TS3_CS_T_,R0
	JB PSW,0
	DEC __KF8_Temp_Cur_A_TS3_CS_T_+1
	SUB __KF8_Temp_Cur_A_TS3_CS_T_+1,R1
	BANKSEL __KF8_LIBi_Touch_New_Date_TS3_CS_T_
	MOV R1,__KF8_LIBi_Touch_New_Date_TS3_CS_T_+1
	MOV R0,__KF8_LIBi_Touch_New_Date_TS3_CS_T_
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	ADD __KF8_Temp_Cur_A_TS3_CS_T_,R0
	JNB PSW,0
	INC R1
	ADD __KF8_Temp_Cur_A_TS3_CS_T_+1,R1 ;
	MOV R1,__KF8_Temp_Cur_A_TS3_CS_T_
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_hit_+0)
	BANKSEL __KF8_LIBi_buff_hit_
	ST[R0],R1
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV R1,__KF8_Temp_Cur_A_TS3_CS_T_+1
	INC R0
	BANKSEL __KF8_LIBi_buff_hit_
	ST[R0],R1
	;;-----------------------------------
	
;	op : GET_VALUE_AT_ADDRESS
;	.line	2521; "../kf8ts35_touch_cs_lib.c"	if(!_KF8_lib_Touch_Bits_._KF8_Touch_Work_Flag)
	BANKSEL	__KF8_lib_Touch_Bits_
	JNB	__KF8_lib_Touch_Bits_, 0
	JMP	_00140_DS_
;	op : INLINEASM
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_ ;;_KF8_LIBi_buff_hit_ low
	LD R1,[R0]
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_ ;;_KF8_LIBi_buff_baseline_ low
	ST [R0],R1
	;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_ ;; _KF8_LIBi_buff_hit_ high
	LD R1,[R0]
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_ ;;
	ADD R0, #(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_ ;;
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_ ;;
	ADD R0, #(__KF8_LIBc_touch_count_)
	MOV R1,#0x00
	BANKSEL __KF8_LIBc_touch_count_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0, #(__KF8_LIBc_baseline_count_)
	MOV R1,#0x00
	BANKSEL __KF8_LIBc_baseline_count_
	ST [R0],R1
	
;	op : IFX
;	.line	2572; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBc_channel_==0)
	MOV	R0,# 0x00
	BANKSEL	__KF8_LIBc_channel_
	ORL	R0, __KF8_LIBc_channel_
	JB	PSW, 2
	JMP	_00141_DS_
;	op : INLINEASM
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, #0X30
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	SUB R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	JB PSW, 0
	JMP label_over
	BANKSEL __KF8_lib_Touch_Bits_
	SET __KF8_lib_Touch_Bits_, 0
label_over:
	
;	op : GOTO
	JMP	_00141_DS_
;	op : LABEL
;	op : CALL
_00140_DS_
;	.line	2599; "../kf8ts35_touch_cs_lib.c"	_KF8_LIBf_scan_channel_(); //扫描AD通道,计算变化率，做变化统计
	PAGESEL	__KF8_LIBf_scan_channel_
	CALL	__KF8_LIBf_scan_channel_
	PAGESEL	$
;	op : IFX
;	.line	2600; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBc_channel_==0)
	MOV	R0,# 0x00
	BANKSEL	__KF8_LIBc_channel_
	ORL	R0, __KF8_LIBc_channel_
	JB	PSW, 2
	JMP	_00141_DS_
;	op : CALL
;	.line	2602; "../kf8ts35_touch_cs_lib.c"	_KF8_LiBf_KEY_Deal_AND_BaseLine_Up();
	PAGESEL	__KF8_LiBf_KEY_Deal_AND_BaseLine_Up
	CALL	__KF8_LiBf_KEY_Deal_AND_BaseLine_Up
	PAGESEL	$
;	op : LABEL
;	op : INLINEASM
_00141_DS_
	MOV R1,# high (_CHS_AMOUNT+0)
	MOV R0,# low (_CHS_AMOUNT+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBc_channel_
	INC __KF8_LIBc_channel_
	XOR R0,__KF8_LIBc_channel_
	JNB PSW,2
	CLR __KF8_LIBc_channel_
	
;	op : =
;	.line	2629; "../kf8ts35_touch_cs_lib.c"	T3H = 0;T3L = 0;
	BANKSEL	_T3H
	CLR	_T3H
;	op : =
	BANKSEL	_T3L
	CLR	_T3L
;	op : GET_VALUE_AT_ADDRESS
;	.line	2630; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 5
	JMP	_00143_DS_
;	op : INLINEASM
	MOVB #0x00
	CLR 0x53,5
	
;	op : LABEL
;	op : INLINEASM
_00143_DS_
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0, # low (__KF8_TOUCH_CH_EN+0)
	MOV R1, # high (__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	ORL R0,#0xc0;#0xE0 ;;
	BANKSEL _INTCTL
	CLR _INTCTL,6
	CLR _INTCTL,7 ;
	BANKSEL _CTCTL0
	MOV _CTCTL0,R0
	NOP
	JB _CTCTL0,6 ;
	JMP $-3
	
;	op : =
;	.line	2662; "../kf8ts35_touch_cs_lib.c"	touch_weisuiji_cnt=0;
	BANKSEL	_touch_weisuiji_cnt
	CLR	_touch_weisuiji_cnt
;	op : |
;	.line	2663; "../kf8ts35_touch_cs_lib.c"	CTCTL1 |= 0X20;
	BANKSEL	_CTCTL1
	SET	_CTCTL1, 5
;	op : LABEL
;	op : BITWISEAND
_00146_DS_
;	.line	2665; "../kf8ts35_touch_cs_lib.c"	while(!(CTCTL1&0X04))
	BANKSEL	_CTCTL1
	JNB	_CTCTL1, 2
	JMP	_00148_DS_
;	op : =
;	.line	2668; "../kf8ts35_touch_cs_lib.c"	if(touch_weisuiji_cnt++>20)			//兼容老版本没有该位置清零
	BANKSEL	_touch_weisuiji_cnt
	MOVZ	R0, _touch_weisuiji_cnt
	BANKSEL	r0x1041
	MOV	r0x1041, R0
;	op : +
	BANKSEL	_touch_weisuiji_cnt
	INC	_touch_weisuiji_cnt
;	op : >
;swapping arguments (AOP_TYPEs 1/2)
;unsigned compare: left >= lit(0x15=21), size=1
	MOV	R0,# 0x15
	BANKSEL	r0x1041
	SUB	R0, r0x1041
;comparing bytes at offset 0
	JB	PSW, 0
	JMP	_00146_DS_
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00148_DS_
;	.line	2674; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 5
	JMP	_00150_DS_
;	op : INLINEASM
	MOVB #0x00
	SET 0x53,5
	
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00150_DS_
;	.line	2681; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Count_Use_T4)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 7
	JMP	_00152_DS_
;	op : =
;	.line	2683; "../kf8ts35_touch_cs_lib.c"	T4L = 0;    T4H = 0; 	T4ON=1;		// T3 T4 如果分频 外部可设置
	BANKSEL	_T4L
	CLR	_T4L
;	op : =
	BANKSEL	_T4H
	CLR	_T4H
;	op : =
	BANKSEL	_T4CTL_bits
	SET	_T4CTL_bits, 0
;	op : LABEL
;	op : =
_00152_DS_
;	.line	2685; "../kf8ts35_touch_cs_lib.c"	AIEL=1;		AIEH=1;// 恢复中断使能
	BANKSEL	_INTCTL_bits
	SET	_INTCTL_bits, 6
;	op : =
	BANKSEL	_INTCTL_bits
	SET	_INTCTL_bits, 7
;	op : LABEL
;	op : ENDFUNCTION
	CRET	
; exit point of __KF8TS35_Touch_Process_cs_General_



func.__KF8_LIBf_scan_channel_	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8_LIBf_scan_channel_	;Function start
; 2 exit points
;has an exit
;functions called:
;   __KF8_lib_Baihualv_get_
;   __R2PCL
;   __R2PCL
;   __KF8_lib_Baihualv_get_
;   __R2PCL
;   __R2PCL
;7 compiler assigned registers:
;   r0x1037
;   r0x1038
;   r0x1039
;   r0x103A
;   r0x103B
;   r0x103C
;   r0x103D
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8_LIBf_scan_channel_	;Function start
; 2 exit points
;	op : INLINEASM
	CLR PSW,0
	BANKSEL __KF8_LIBc_channel_
	RLCR __KF8_LIBc_channel_
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV _Addr_Copy_Int_KF8_Lib_TS3_CS_T_,R0
	
;	op : INLINEASM
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0,#0x01
	MOV __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_,R0
	CLR (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+1)
	CLR (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+2)
	CLR (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+3)
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R0,__KF8_LIBc_channel_
	INC R0
	JMP RLCSel
RLCDeal:
	CLR PSW,0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	RLC __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	RLC (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+1)
	RLC (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+2)
	RLC (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+3)
RLCSel:
	DECJZ R0
	JMP RLCDeal
	
;	op : INLINEASM
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R1,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R1,#(__KF8_LIBi_buff_hit_+0)
	;;;;
	BANKSEL __KF8_LIBi_buff_hit_
	LD R0,[R1]
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV __KF8_Temp_Cur_A_TS3_CS_T_, R0
	;;;;
	INC R1
	BANKSEL __KF8_LIBi_buff_hit_
	LD R0,[R1]
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV (__KF8_Temp_Cur_A_TS3_CS_T_+1), R0
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R1,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R1,#(__KF8_LIBi_buff_baseline_+0)
	;;;;
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R0,[R1]
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV __KF8_Temp_Cur_B_TS3_CS_T_, R0
	;;;;
	INC R1
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R0,[R1]
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV (__KF8_Temp_Cur_B_TS3_CS_T_+1), R0
	
;	op : CALL
;	.line	1839; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Baihualv_get_();
	PAGESEL	__KF8_lib_Baihualv_get_
	CALL	__KF8_lib_Baihualv_get_
	PAGESEL	$
;	op : INLINEASM
	MOV R1,# high(__KF8_BasicLine_Down_Noise_Threshold_+0)
	MOV R0,# low(__KF8_BasicLine_Down_Noise_Threshold_+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	ADD R0,#0X80
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV R1,#0X80
	ADD R1,__KF8_lib_bahualvtemportemp_TS3_CS_T_
	SUB R0, R1
	JB PSW,0
	JMP lable_count_incover
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	MOV R0, __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	AND R0, __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	JB PSW,2
	JMP lable_count_incover
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	MOV R0, (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_+1)
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	AND R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+1)
	JB PSW,2
	JMP lable_count_incover
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	MOV R0, (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_+2)
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	AND R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+2)
	JB PSW,2
	JMP lable_count_incover
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	MOV R0, (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_+3)
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	AND R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+3)
	JB PSW,2
	JMP lable_count_incover
	;;;;;;;;;
	BANKSEL __KF8_lib_CH_DW_Change_Count_TS3_CS_T_
	INC __KF8_lib_CH_DW_Change_Count_TS3_CS_T_
lable_count_incover:
	
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R1,__KF8_LIBc_channel_
	ADD R1,#(__KF8_LIBi_Date_Change_+0)
	;;;;
	BANKSEL __KF8_LIBi_Date_Change_
	LD R0,[R1]
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV R1, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	BANKSEL _change_buf_KF8_Lib_TS3_CS_T_
	MOV _change_buf_KF8_Lib_TS3_CS_T_, R1
	SUB _change_buf_KF8_Lib_TS3_CS_T_, R0
	
;	op : <
;signed compare: left < lit(0x0=0), size=1, mask=ff
;	.line	1919; "../kf8ts35_touch_cs_lib.c"	if(change_buf_KF8_Lib_TS3_CS_T_<0)
	SET	PSW, 0
	BANKSEL	_change_buf_KF8_Lib_TS3_CS_T_
	JB	_change_buf_KF8_Lib_TS3_CS_T_, 7
	CLR	PSW, 0
	JB	PSW, 0
	JMP	_00110_DS_
;	op : UNARYMINUS
;	.line	1920; "../kf8ts35_touch_cs_lib.c"	change_buf_KF8_Lib_TS3_CS_T_=change_buf_KF8_Lib_TS3_CS_T_*(-1);
	BANKSEL	_change_buf_KF8_Lib_TS3_CS_T_
	CPL	_change_buf_KF8_Lib_TS3_CS_T_
	BANKSEL	_change_buf_KF8_Lib_TS3_CS_T_
	INC	_change_buf_KF8_Lib_TS3_CS_T_
;	op : LABEL
;	op : =
;gen_assign from CODESPACE
_00110_DS_
;	.line	1921; "../kf8ts35_touch_cs_lib.c"	if(change_buf_KF8_Lib_TS3_CS_T_>_KF8_Data_Steady_Threshold_Set_)
	MOV	R1,# high (__KF8_Data_Steady_Threshold_Set_+0)
	MOV	R0,# low (__KF8_Data_Steady_Threshold_Set_+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : >
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	ADD	R0,# 0x80
	BANKSEL	r0x1038
	MOV	r0x1038, R0
	BANKSEL	_change_buf_KF8_Lib_TS3_CS_T_
	MOVZ	R0, _change_buf_KF8_Lib_TS3_CS_T_
	ADD	R0,# 0x80
	BANKSEL	r0x1038
	SUB	R0, r0x1038
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00112_DS_
;	op : +
;	.line	1923; "../kf8ts35_touch_cs_lib.c"	_KF8_LIBc_baseline_count_[_KF8_LIBc_channel_]=0;
	BANKSEL	__KF8_LIBc_channel_
	MOV	R0, __KF8_LIBc_channel_
	ADD	R0,# (__KF8_LIBc_baseline_count_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : =
	MOV	R0,# 0x00
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_baseline_count_
	ST	[R1], R0
;	op : LEFT_OP
;	.line	1924; "../kf8ts35_touch_cs_lib.c"	_KF8TS35CS_Data_Steady_Flag_ &= ~(1<<_KF8_LIBc_channel_);//Ethan 2018-2-1添加采样值稳定性判断
	MOV	R0,# 0x01
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	MOV	R0,# 0x00
	BANKSEL	r0x1039
	MOV	r0x1039, R0
	BANKSEL	__KF8_LIBc_channel_
	MOVZ	R0, __KF8_LIBc_channel_
	INC	R0
	JMP	_00130_DS_
_00129_DS_
	CLR	PSW, 0
	BANKSEL	r0x1037
	RLC	r0x1037
	BANKSEL	r0x1039
	RLC	r0x1039
_00130_DS_
	DECJZ	R0
	JMP	_00129_DS_
;	op : ~
	BANKSEL	r0x1037
	CPL	r0x1037
	BANKSEL	r0x1039
	CPL	r0x1039
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103A
	MOV	r0x103A, R0
	BANKSEL	r0x1039
	MOVZ	R0, r0x1039
	BANKSEL	r0x103B
	MOV	r0x103B, R0
	MOV	R0,# 0x00
	BANKSEL	r0x103B
	JNB	r0x103B, 7
	MOV	R0,# 0xff
	BANKSEL	r0x103C
	MOV	r0x103C, R0
	BANKSEL	r0x103D
	MOV	r0x103D, R0
;	op : BITWISEAND
	BANKSEL	r0x103A
	MOVZ	R0, r0x103A
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	__KF8TS35CS_Data_Steady_Flag_, R0
	BANKSEL	r0x103B
	MOVZ	R0, r0x103B
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	(__KF8TS35CS_Data_Steady_Flag_ + 1), R0
	BANKSEL	r0x103D
	MOVZ	R0, r0x103D
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	(__KF8TS35CS_Data_Steady_Flag_ + 2), R0
	BANKSEL	r0x103C
	MOVZ	R0, r0x103C
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	(__KF8TS35CS_Data_Steady_Flag_ + 3), R0
;	op : GOTO
	JMP	_00113_DS_
;	op : LABEL
;	op : LEFT_OP
_00112_DS_
;	.line	1928; "../kf8ts35_touch_cs_lib.c"	_KF8TS35CS_Data_Steady_Flag_ |= 1<<_KF8_LIBc_channel_;
	MOV	R0,# 0x01
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	MOV	R0,# 0x00
	BANKSEL	r0x1039
	MOV	r0x1039, R0
	BANKSEL	__KF8_LIBc_channel_
	MOVZ	R0, __KF8_LIBc_channel_
	INC	R0
	JMP	_00132_DS_
_00131_DS_
	CLR	PSW, 0
	BANKSEL	r0x1037
	RLC	r0x1037
	BANKSEL	r0x1039
	RLC	r0x1039
_00132_DS_
	DECJZ	R0
	JMP	_00131_DS_
;	op : CAST
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103A
	MOV	r0x103A, R0
	BANKSEL	r0x1039
	MOVZ	R0, r0x1039
	BANKSEL	r0x103B
	MOV	r0x103B, R0
	MOV	R0,# 0x00
	BANKSEL	r0x103B
	JNB	r0x103B, 7
	MOV	R0,# 0xff
	BANKSEL	r0x103C
	MOV	r0x103C, R0
	BANKSEL	r0x103D
	MOV	r0x103D, R0
;	op : |
	BANKSEL	r0x103A
	MOVZ	R0, r0x103A
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	ORL	__KF8TS35CS_Data_Steady_Flag_, R0
	BANKSEL	r0x103B
	MOVZ	R0, r0x103B
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	ORL	(__KF8TS35CS_Data_Steady_Flag_ + 1), R0
	BANKSEL	r0x103D
	MOVZ	R0, r0x103D
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	ORL	(__KF8TS35CS_Data_Steady_Flag_ + 2), R0
	BANKSEL	r0x103C
	MOVZ	R0, r0x103C
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	ORL	(__KF8TS35CS_Data_Steady_Flag_ + 3), R0
;	op : LABEL
;	op : +
_00113_DS_
;	.line	1961; "../kf8ts35_touch_cs_lib.c"	_KF8_LIBi_Date_Change_[_KF8_LIBc_channel_]=_KF8_lib_bahualvtemportemp_TS3_CS_T_;
	BANKSEL	__KF8_LIBc_channel_
	MOV	R0, __KF8_LIBc_channel_
	ADD	R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : =
	BANKSEL	__KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOVZ	R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBi_Date_Change_
	ST	[R1], R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	XOR R0, #0X01
	JB PSW,2
	JMP lable_channbig
	BANKSEL __KF8_LIBi_Date_Change_
	MOV R0, (__KF8_LIBi_Date_Change_+0)
	MOV R1, (__KF8_LIBi_Date_Change_+1)
	ADD R0,#0X80
	ADD R1,#0X80
	SUB R1, R0
	JB PSW,0
	JMP lable_chann1
	BANKSEL __KF8_lib_Finded_MAX_J_TS3_CS_T_
	MOV R0, #0X01
	MOV __KF8_lib_Finded_MAX_J_TS3_CS_T_ , R0
	BANKSEL __KF8_lib_Finded_MAX_I_TS3_CS_T_
	CLR __KF8_lib_Finded_MAX_I_TS3_CS_T_
	JMP lable_channbig
lable_chann1:
	BANKSEL __KF8_lib_Finded_MAX_I_TS3_CS_T_
	MOV R0, #0X01
	MOV __KF8_lib_Finded_MAX_I_TS3_CS_T_ , R0
	BANKSEL __KF8_lib_Finded_MAX_J_TS3_CS_T_
	CLR __KF8_lib_Finded_MAX_J_TS3_CS_T_
lable_channbig:
	
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0, #0X02
	SUB R0, __KF8_LIBc_channel_
	JB PSW,0
	JMP lable_channover
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R1, __KF8_LIBc_channel_
	ADD R1, #(__KF8_LIBi_Date_Change_)
	BANKSEL __KF8_LIBi_Date_Change_
	LD R0,[R1]
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	ADD R0, #0X80
	MOV __KF8_lib_bahualvtemportemp_TS3_CS_T_, R0
	;;;;;;;;;;;;
	BANKSEL __KF8_lib_Finded_MAX_J_TS3_CS_T_
	MOV R1, __KF8_lib_Finded_MAX_J_TS3_CS_T_
	ADD R1, #(__KF8_LIBi_Date_Change_)
	BANKSEL __KF8_LIBi_Date_Change_
	LD R0,[R1]
	ADD R0,#0X80
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	SUB R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	JB PSW,0
	JMP lable_channover
	;;;;;;;;;;;;
	BANKSEL __KF8_lib_Finded_MAX_I_TS3_CS_T_
	MOV R1, __KF8_lib_Finded_MAX_I_TS3_CS_T_
	ADD R1, #(__KF8_LIBi_Date_Change_)
	BANKSEL __KF8_LIBi_Date_Change_
	LD R0,[R1]
	ADD R0, #0X80
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	SUB R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	JNB PSW,0
	JMP lable_chann2
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	BANKSEL __KF8_lib_Finded_MAX_J_TS3_CS_T_
	MOV __KF8_lib_Finded_MAX_J_TS3_CS_T_,R0
	JMP lable_channover
lable_chann2:
	BANKSEL __KF8_lib_Finded_MAX_I_TS3_CS_T_
	MOV R0, __KF8_lib_Finded_MAX_I_TS3_CS_T_
	BANKSEL __KF8_lib_Finded_MAX_J_TS3_CS_T_
	MOV __KF8_lib_Finded_MAX_J_TS3_CS_T_,R0
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	BANKSEL __KF8_lib_Finded_MAX_I_TS3_CS_T_
	MOV __KF8_lib_Finded_MAX_I_TS3_CS_T_,R0
lable_channover:
	
;	op : GET_VALUE_AT_ADDRESS
;	.line	2086; "../kf8ts35_touch_cs_lib.c"	if(!_KF8_lib_Touch_Bits_._KF8_Touch_Protect_Flag)
	BANKSEL	__KF8_lib_Touch_Bits_
	JNB	__KF8_lib_Touch_Bits_, 1
	JMP	_00121_DS_
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0, #low (__KF8_Config_Finger_Threshold)
	MOV R1, #high (__KF8_Config_Finger_Threshold)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV __KF8_lib_bahualvtemportemp_TS3_CS_T_, R0
	MOV R0, #(6)
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	SUB __KF8_lib_bahualvtemportemp_TS3_CS_T_, R0
	
;	op : +
;	.line	2113; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBi_Date_Change_[_KF8_LIBc_channel_]<_KF8_lib_bahualvtemportemp_TS3_CS_T_)
	BANKSEL	__KF8_LIBc_channel_
	MOV	R0, __KF8_LIBc_channel_
	ADD	R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBi_Date_Change_
	LD	R0, [R1]
	BANKSEL	r0x103A
	MOV	r0x103A, R0
;	op : <
	BANKSEL	r0x103A
	MOVZ	R0, r0x103A
	ADD	R0,# 0x80
	BANKSEL	r0x1038
	MOV	r0x1038, R0
	BANKSEL	__KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOVZ	R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	ADD	R0,# 0x80
	BANKSEL	r0x1038
	SUB	R0, r0x1038
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00117_DS_
;	op : +
;	.line	2116; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBc_touch_count_[_KF8_LIBc_channel_]>TCS_AMOUNT) //被按下标记
	BANKSEL	__KF8_LIBc_channel_
	MOV	R0, __KF8_LIBc_channel_
	ADD	R0,# (__KF8_LIBc_touch_count_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_touch_count_
	LD	R0, [R1]
	BANKSEL	r0x103A
	MOV	r0x103A, R0
;	op : =
;gen_assign from CODESPACE
	MOV	R1,# high (_TCS_AMOUNT+0)
	MOV	R0,# low (_TCS_AMOUNT+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : >
	BANKSEL	r0x103A
	MOVZ	R0, r0x103A
	BANKSEL	r0x1037
	SUB	R0, r0x1037
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00121_DS_
;	op : INLINEASM
	MOV R1,# high (_TCS_AMOUNT+0)
	MOV R0,# low (_TCS_AMOUNT+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CLR PSW,0
	RLC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_,R0
	
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R1, __KF8_LIBc_channel_
	ADD R1, #(__KF8_LIBc_touch_count_)
	BANKSEL __KF8_LIBc_touch_count_
	LD R0,[R1]
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	SUB R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	JB PSW, 0
	JMP lable_010101
	BANKSEL __KF8_LIBc_touch_count_
	LD R0,[R1]
	INC R0
	ST [R1],R0
	JMP lable_020202
lable_010101:
	BANKSEL __KF8_LIBc_touch_count_
	CLR R0
	ST [R1], R0
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0, #low (__KF8_TOUCH_CH_EN)
	MOV R1, #high (__KF8_TOUCH_CH_EN)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;;;;
	CLR PSW,0
	RLC R0
	RLC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_ , R0
	;;;;;;;;;;;;;;;;;;;;
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CPL R0
	BANKSEL __KF8_LIBi_channel_flag_
	AND __KF8_LIBi_channel_flag_, R0
	;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CPL R0
	BANKSEL __KF8_LIBi_channel_flag_
	AND (__KF8_LIBi_channel_flag_+1), R0
	;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CPL R0
	BANKSEL __KF8_LIBi_channel_flag_
	AND (__KF8_LIBi_channel_flag_+2), R0
	;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	INC R0
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CPL R0
	BANKSEL __KF8_LIBi_channel_flag_
	AND (__KF8_LIBi_channel_flag_+3), R0
	;;;;;;;;;;;;;;;;;
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	;;;;;;;
	MOV R0, #0X00
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	ORL R0, __KF8_lib_Key_Down_Count_TS3_CS_T_
	JB PSW, 2
	DEC __KF8_lib_Key_Down_Count_TS3_CS_T_
	;;;;;;;;;;;;;;;;;
	MOV R0,#0X00
	ORL R0, __KF8_lib_Key_Down_Count_TS3_CS_T_
	JNB PSW, 2
	JMP lable_030303
	;;;
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOV R0, __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	BANKSEL __KF8_LIBc_channel_
	XOR R0, __KF8_LIBc_channel_
	JB PSW, 2
	JMP lable_050505
	;;;;;;;
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV R0, __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	XOR R0, __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	JB PSW, 2
	JMP lable_040404
	MOV R0,#0XFF
	MOV __KF8_LIBc_finger_OUT_First_TS3_CS_T_ , R0
	MOV R0,#0X00
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV __KF8_lib_Key_Down_Count_TS3_CS_T_ ,R0
	JMP lable_050505
	;;;;;;;;;
lable_040404:
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV R0, __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOV __KF8_LIBc_finger_OUT_First_TS3_CS_T_ ,R0
	JMP lable_050505
lable_030303:
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOV R0, #0XFF
	MOV __KF8_LIBc_finger_OUT_First_TS3_CS_T_, R0
lable_050505:
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV R0,#0XFF
	MOV __KF8_LIBc_finger_OUT_Second_TS3_CS_T_,R0
	MOV R0,#0X00
	BANKSEL __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	MOV __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_, R0
	MOV (__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_+1), R0
	BANKSEL __KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	MOV __KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_, R0
	MOV (__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_+1), R0
lable_020202:
	
;	op : GOTO
	JMP	_00121_DS_
;	op : LABEL
;	op : INLINEASM
_00117_DS_
	MOV R1,# high (_TCS_AMOUNT+0)
	MOV R0,# low (_TCS_AMOUNT+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	INC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_,R0
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	MOV R1,__KF8_LIBc_channel_
	ADD R1,#(__KF8_LIBc_touch_count_+0)
	BANKSEL __KF8_LIBc_touch_count_
	LD R0,[R1]
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	SUB R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	JNB PSW,0 ;;
	JMP label_18_18_18
	BANKSEL __KF8_LIBc_touch_count_
	LD R0,[R1]
	DEC R0
	ST [R1],R0
label_18_18_18:
	
;	op : LABEL
;	op : ENDFUNCTION
_00121_DS_
	CRET	
; exit point of __KF8_LIBf_scan_channel_



func.__KF8_LiBf_KEY_Deal_AND_BaseLine_Up	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8_LiBf_KEY_Deal_AND_BaseLine_Up	;Function start
; 2 exit points
;has an exit
;functions called:
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;   __R2PCL
;10 compiler assigned registers:
;   r0x1037
;   r0x1038
;   r0x1039
;   r0x103A
;   r0x103B
;   r0x103C
;   r0x103D
;   r0x103E
;   r0x103F
;   r0x1040
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8_LiBf_KEY_Deal_AND_BaseLine_Up	;Function start
; 2 exit points
;	op : =
;	.line	511; "../kf8ts35_touch_cs_lib.c"	_KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_=0x00000001;
	MOV	R0,# 0x01
	BANKSEL	__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV	__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_, R0
	BANKSEL	__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CLR	(__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 1)
	BANKSEL	__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CLR	(__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 2)
	BANKSEL	__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CLR	(__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 3)
;	op : =
;	.line	513; "../kf8ts35_touch_cs_lib.c"	for(i_KF8_lib_TS3_CS_T_=0;i_KF8_lib_TS3_CS_T_<CHS_AMOUNT;i_KF8_lib_TS3_CS_T_++)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	CLR	_i_KF8_lib_TS3_CS_T_
;	op : LABEL
;	op : =
;gen_assign from CODESPACE
_00072_DS_
	MOV	R1,# high (_CHS_AMOUNT+0)
	MOV	R0,# low (_CHS_AMOUNT+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : <
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	SUB	R0, _i_KF8_lib_TS3_CS_T_
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00075_DS_
;	op : INLINEASM
	CLR PSW,0
	BANKSEL _i_KF8_lib_TS3_CS_T_
	RLCR _i_KF8_lib_TS3_CS_T_
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV _Addr_Copy_Int_KF8_Lib_TS3_CS_T_,R0
	
;	op : INLINEASM
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0, #low (__KF8_TOUCH_CH_EN)
	MOV R1, #high (__KF8_TOUCH_CH_EN)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_ ,R0
	;;;;;;;
	MOV R0, #low (__KF8_Inside_Reference_Channel_Declare_)
	MOV R1, #high (__KF8_Inside_Reference_Channel_Declare_)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	XOR R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	JB PSW, 2
	JMP lable_612118
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0, #low (__KF8_Inside_Reference_Channel_Disturb_Threshold_Set_)
	MOV R1, #high (__KF8_Inside_Reference_Channel_Disturb_Threshold_Set_)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV __KF8_lib_bahualvtemportemp_TS3_CS_T_ ,R0
	;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_Date_Change_)
	;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBi_Date_Change_
	LD R1, [R0]
	JB R1,7
	JMP lable_6121205
	CPL R1
	INC R1
lable_6121205:
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	SUB R1,__KF8_lib_bahualvtemportemp_TS3_CS_T_
	JNB PSW ,0 ;;
	JMP lable_612118
lable_6121207:
	BANKSEL __KF8_lib_Touch_Bits_
	SET __KF8_lib_Touch_Bits_, 1
	BANKSEL __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	CLR __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
lable_612118:
	
;	op : +
;	.line	601; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBi_Date_Change_[i_KF8_lib_TS3_CS_T_]<_KF8_BasicLine_UP_Noise_Threshold_)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBi_Date_Change_
	LD	R0, [R1]
	BANKSEL	r0x1038
	MOV	r0x1038, R0
;	op : =
;gen_assign from CODESPACE
	MOV	R1,# high (__KF8_BasicLine_UP_Noise_Threshold_+0)
	MOV	R0,# low (__KF8_BasicLine_UP_Noise_Threshold_+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : <
	BANKSEL	r0x1038
	MOVZ	R0, r0x1038
	ADD	R0,# 0x80
	BANKSEL	r0x1039
	MOV	r0x1039, R0
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	ADD	R0,# 0x80
	BANKSEL	r0x1039
	SUB	R0, r0x1039
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00036_DS_
;	op : INLINEASM
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_baseline_count_)
	BANKSEL __KF8_LIBc_baseline_count_
	LD R1, [R0]
	MOV R0, #(100)
	XOR R1, R0
	JB PSW ,2
	JMP lable_06121629
	;;;;;;;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0], R1
	;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0], R1
	;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBc_touch_count_)
	BANKSEL __KF8_LIBc_touch_count_
	LD R1, [R0]
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_, R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0, #low(_TCS_AMOUNT)
	MOV R1, #high(_TCS_AMOUNT)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;;;
	SUB R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	JNB PSW, 0
	JMP lable_06121629
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBc_touch_count_)
	BANKSEL __KF8_LIBc_touch_count_
	MOV R1, #0X00
	ST [R0], R1
lable_06121629:
	
;	op : GOTO
	JMP	_00037_DS_
;	op : LABEL
;	op : +
_00036_DS_
;	.line	684; "../kf8ts35_touch_cs_lib.c"	else if(_KF8_LIBi_Date_Change_[i_KF8_lib_TS3_CS_T_]>_KF8_BasicLine_Down_Noise_Threshold_)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBi_Date_Change_
	LD	R0, [R1]
	BANKSEL	r0x103A
	MOV	r0x103A, R0
;	op : =
;gen_assign from CODESPACE
	MOV	R1,# high (__KF8_BasicLine_Down_Noise_Threshold_+0)
	MOV	R0,# low (__KF8_BasicLine_Down_Noise_Threshold_+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : >
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	ADD	R0,# 0x80
	BANKSEL	r0x1039
	MOV	r0x1039, R0
	BANKSEL	r0x103A
	MOVZ	R0, r0x103A
	ADD	R0,# 0x80
	BANKSEL	r0x1039
	SUB	R0, r0x1039
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00033_DS_
;	op : INLINEASM
	MOV R0, #low(__KF8_Define_Disturb_Channels_Amount_)
	MOV R1, #high(__KF8_Define_Disturb_Channels_Amount_)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_CH_DW_Change_Count_TS3_CS_T_
	SUB R0, __KF8_lib_CH_DW_Change_Count_TS3_CS_T_
	JB PSW, 0
	JMP lable_06151019
	BANKSEL __KF8_lib_Touch_Bits_
	SET __KF8_lib_Touch_Bits_, 1
	BANKSEL __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	CLR __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	;;;;;;;;;;;;;;;;;;;;;;;
lable_06151019:
	
;	op : GET_VALUE_AT_ADDRESS
;	.line	716; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Protect_Flag)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 1
	JMP	_00030_DS_
;	op : INLINEASM
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_baseline_count_)
	BANKSEL __KF8_LIBc_baseline_count_
	LD R1, [R0]
	XOR R1, #Low(-20)
	JNB PSW, 2
	JMP lable_06151032
	;;;;;;;;
	MOV R0,#low(__KF8_Disturb_Protect_Circle_)
	MOV R1,#high(__KF8_Disturb_Protect_Circle_)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	XOR R0, __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	JB PSW, 2
	JMP lable_06151055
	;;;;;;;;;;;;;;;;;;;
lable_06151032:
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0], R1
	;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0], R1
	;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_, R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 1)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 1), R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+2)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_+2), R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 3)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 3), R0
	;;;;;;;;;;;;;;;;;
lable_06151055:
	
;	op : GOTO
	JMP	_00037_DS_
;	op : LABEL
;	op : INLINEASM
_00030_DS_
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,# (__KF8_LIBc_baseline_count_ + 0)
	BANKSEL __KF8_LIBc_baseline_count_
	LD R1, [R0]
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV __KF8_lib_bahualvtemportemp_TS3_CS_T_, R1
	;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R1,# high (__KF8_BaseLine_Update_Circle_Count_For_Down_+0)
	MOV R0,# low (__KF8_BaseLine_Update_Circle_Count_For_Down_+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	XOR R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	JB PSW, 2
	JMP lable_06160853
	;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,# (__KF8_LIBc_touch_count_ + 0)
	BANKSEL __KF8_LIBc_touch_count_
	LD R1, [R0]
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_, R1
	;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0,# low (_TCS_AMOUNT+0)
	MOV R1,# high (_TCS_AMOUNT+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	SUB R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	JNB PSW, 0
	JMP lable_06151118
	;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV R0, __KF8_lib_Key_Down_Count_TS3_CS_T_
	XOR R0,# 0x02
	JB PSW, 2
	JMP lable_06151125
	;;;;;;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0], R1
	;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0], R1
	JMP lable_06151133
lable_06151125:
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0, #(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R1,[R0]
	ADD R1,#0XFF
	ST [R0],R1
	JNB PSW, 0
	JMP lable_06151133
	INC R0
	LD R1,[R0]
	DEC R1
	ST [R0],R1
	JMP lable_06151133
lable_06151118:
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_, R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 1)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 1), R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 2)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 2), R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	MOV R0, (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 3)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	ORL (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 3), R0
	;;;;;;;;;;;;;;;;;;;;;;;;
lable_06151133:
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,# (__KF8_LIBc_baseline_count_ + 0)
	BANKSEL __KF8_LIBc_baseline_count_
	MOV R1,#0X00
	ST [R0], R1
lable_06160853:
	
;	op : GOTO
	JMP	_00037_DS_
;	op : LABEL
;	op : INLINEASM
_00033_DS_
	BANKSEL __KF8_lib_Touch_Bits_
	JNB __KF8_lib_Touch_Bits_, 1
	JMP lable_06151543
	;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CPLR __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	AND __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_, R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CPLR (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+1)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	AND (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 1), R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CPLR (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+2)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	AND (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 2), R0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	CPLR (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_+3)
	BANKSEL __KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	AND (__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 3), R0
lable_06151543:
	
;	op : INLINEASM
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,# (__KF8_LIBc_baseline_count_ + 0)
	BANKSEL __KF8_LIBc_baseline_count_
	LD R1,[R0]
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV __KF8_lib_bahualvtemportemp_TS3_CS_T_, R1
	;;;;;;;;;;;;;;;;;
	MOV R0,# low (__KF8_BaseLine_Update_Circle_Count_For_Down_+0)
	MOV R1,# high (__KF8_BaseLine_Update_Circle_Count_For_Down_+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	XOR R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	JNB PSW, 2
	JMP lable_06151621
	;;;;;;;;;;;;;;;;;;
	MOV R1,# high (__KF8_BaseLine_Update_Circle_Count_For_UP_+0)
	MOV R0,# low (__KF8_BaseLine_Update_Circle_Count_For_UP_+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	XOR R0, __KF8_lib_bahualvtemportemp_TS3_CS_T_
	JB PSW, 2
	JMP lable_06151626
	;;;;;;;;;;;;;;;;;;;;
lable_06151621:
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,# (__KF8_LIBc_baseline_count_ + 0)
	BANKSEL __KF8_LIBc_baseline_count_
	MOV R1,#0X00
	ST [R0],R1
	;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_+0)
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV __KF8_Temp_Cur_A_TS3_CS_T_,R1
	INC R0
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV __KF8_Temp_Cur_A_TS3_CS_T_+1,R1
	;;;
	MOV R1,#0x01
_KF8_lib_DW_UP_Basic_IIR_Normal_Get_DS_0001:
	CLR PSW,0
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	RRC __KF8_Temp_Cur_A_TS3_CS_T_+1
	RRC __KF8_Temp_Cur_A_TS3_CS_T_
	CLR PSW,0
	RLC R1
	MOV R0,R1
	XOR R0,#(8)
	JB PSW,2
	JMP _KF8_lib_DW_UP_Basic_IIR_Normal_Get_DS_0001
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_hit_+0)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV __KF8_Temp_Cur_B_TS3_CS_T_,R1
	INC R0
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV __KF8_Temp_Cur_B_TS3_CS_T_+1,R1
	;;;
	MOV R1,#0x01
_KF8_lib_DW_UP_Basic_IIR_Normal_Get_DS_0002:
	CLR PSW,0
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	RRC __KF8_Temp_Cur_B_TS3_CS_T_+1
	RRC __KF8_Temp_Cur_B_TS3_CS_T_
	CLR PSW,0
	RLC R1
	MOV R0,R1
	XOR R0,#(8)
	JB PSW,2
	JMP _KF8_lib_DW_UP_Basic_IIR_Normal_Get_DS_0002
	;;;
	;;;;
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV R1,__KF8_Temp_Cur_A_TS3_CS_T_
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	SUB __KF8_Temp_Cur_B_TS3_CS_T_,R1
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV R1,__KF8_Temp_Cur_A_TS3_CS_T_+1
	JB PSW,0
	INC R1
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	SUB __KF8_Temp_Cur_B_TS3_CS_T_+1,R1
	;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0,_Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_+0)
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R1,[R0]
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	ADD R1, __KF8_Temp_Cur_B_TS3_CS_T_
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0],R1
	;;;
	INC R0
	LD R1,[R0]
	JNB PSW,0
	INC R1
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	ADD R1,__KF8_Temp_Cur_B_TS3_CS_T_+1
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL __KF8_LIBi_Date_Change_
	LD R1, [R0]
	JNB R1, 7
	JMP lable_06151740
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R1, [R0]
	ADD R1, #0XFF
	ST [R0],R1
	JNB PSW,0
	JMP lable_06151626
	INC R0
	LD R1,[R0]
	DEC R1
	ST [R0],R1
	JMP lable_06151626
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
lable_06151740:
	BANKSEL _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	MOV R0, _Addr_Copy_Int_KF8_Lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	LD R1, [R0]
	ADD R1,#0X01
	ST [R0],R1
	JB PSW,0
	JMP lable_06151626
	INC R0
	LD R1,[R0]
	INC R1
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;
lable_06151626:
	
;	op : LABEL
;	op : INLINEASM
_00037_DS_
	BANKSEL __KF8_lib_Touch_Bits_
	JB __KF8_lib_Touch_Bits_, 1
	JMP lable_06161004
	;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_touch_count_)
	BANKSEL __KF8_LIBc_touch_count_
	LD R1,[R0]
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_,R1
	;;;;;;;;;;;;;;;;;;;;;;;
	MOV R1,# high (_TCS_AMOUNT+0)
	MOV R0,# low (_TCS_AMOUNT+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	SUB __KF8_lib_Date_Uchar_Temp_TS3_CS_T_,R0
	JNB PSW,0
	JMP lable_06161004
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_touch_count_)
	MOV R1,#0X00
	BANKSEL __KF8_LIBc_touch_count_
	ST [R0],R1
lable_06161004:
	
;	op : +
;	.line	1206; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBi_Date_Change_[i_KF8_lib_TS3_CS_T_]>=0)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBi_Date_Change_
	LD	R0, [R1]
	BANKSEL	r0x103B
	MOV	r0x103B, R0
;	op : <
;signed compare: left < lit(0x0=0), size=1, mask=ff
	SET	PSW, 0
	BANKSEL	r0x103B
	JB	r0x103B, 7
	CLR	PSW, 0
	JNB	PSW, 0
	JMP	_00039_DS_
;	op : INLINEASM
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_baseline_count_)
	BANKSEL __KF8_LIBc_baseline_count_
	LD R1, [R0]
	DEC R1
	ST [R0],R1
	
;	op : GOTO
	JMP	_00040_DS_
;	op : LABEL
;	op : INLINEASM
_00039_DS_
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_baseline_count_)
	BANKSEL __KF8_LIBc_baseline_count_
	LD R1, [R0]
	INC R1
	ST [R0],R1
	
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00040_DS_
;	.line	1242; "../kf8ts35_touch_cs_lib.c"	if(!_KF8_lib_Touch_Bits_._KF8_Touch_Protect_Flag)
	BANKSEL	__KF8_lib_Touch_Bits_
	JNB	__KF8_lib_Touch_Bits_, 1
	JMP	_00065_DS_
;	op : EQ_OP
;	.line	1244; "../kf8ts35_touch_cs_lib.c"	if(	((i_KF8_lib_TS3_CS_T_==_KF8_lib_Finded_MAX_I_TS3_CS_T_)	||	(i_KF8_lib_TS3_CS_T_==_KF8_lib_Finded_MAX_J_TS3_CS_T_) )&& _KF8_LIBi_Date_Change_[i_KF8_lib_TS3_CS_T_]>_KF8_Config_Finger_Threshold[i_KF8_lib_TS3_CS_T_]	)
	BANKSEL	__KF8_lib_Finded_MAX_I_TS3_CS_T_
	MOVZ	R0, __KF8_lib_Finded_MAX_I_TS3_CS_T_
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	XOR	R0, _i_KF8_lib_TS3_CS_T_
	JNB	PSW, 2
	JMP	_00063_DS_
	BANKSEL	__KF8_lib_Finded_MAX_J_TS3_CS_T_
	MOVZ	R0, __KF8_lib_Finded_MAX_J_TS3_CS_T_
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	XOR	R0, _i_KF8_lib_TS3_CS_T_
	JB	PSW, 2
	JMP	_00060_DS_
;	op : LABEL
;	op : +
_00063_DS_
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBi_Date_Change_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBi_Date_Change_
	LD	R0, [R1]
	BANKSEL	r0x103B
	MOV	r0x103B, R0
;	op : +
	MOV	R0,# (__KF8_Config_Finger_Threshold + 0)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	ADD	R0, _i_KF8_lib_TS3_CS_T_
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	MOV	R0,# high (__KF8_Config_Finger_Threshold + 0)
	BANKSEL	r0x103A
	MOV	r0x103A, R0
	CLR	R0
	JNB	PSW, 0
	INC	R0
	JNB	PSW, 2
	JMP	_00195_DS_
	BANKSEL	r0x103A
	ADD	r0x103A, R0
;	op : GET_VALUE_AT_ADDRESS
_00195_DS_
	BANKSEL	r0x103A
	MOV	R1, r0x103A
	BANKSEL	r0x1037
	MOV	R0, r0x1037
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x103C
	MOV	r0x103C, R0
;	op : >
	BANKSEL	r0x103C
	MOVZ	R0, r0x103C
	ADD	R0,# 0x80
	BANKSEL	r0x1039
	MOV	r0x1039, R0
	BANKSEL	r0x103B
	MOVZ	R0, r0x103B
	ADD	R0,# 0x80
	BANKSEL	r0x1039
	SUB	R0, r0x1039
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00060_DS_
;	op : DUMMY_READ_VOLATILE
;	op : LEFT_OP
;	.line	1248; "../kf8ts35_touch_cs_lib.c"	if(_KF8TS35CS_Data_Steady_Flag_&(1<<i_KF8_lib_TS3_CS_T_))//Etan2018-2-1;只有在采样值稳定的时候才认为有按键触发
	MOV	R0,# 0x01
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	MOV	R0,# 0x00
	BANKSEL	r0x103A
	MOV	r0x103A, R0
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOVZ	R0, _i_KF8_lib_TS3_CS_T_
	INC	R0
	JMP	_00105_DS_
_00104_DS_
	CLR	PSW, 0
	BANKSEL	r0x1037
	RLC	r0x1037
	BANKSEL	r0x103A
	RLC	r0x103A
_00105_DS_
	DECJZ	R0
	JMP	_00104_DS_
;	op : CAST
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103B
	MOV	r0x103B, R0
	BANKSEL	r0x103A
	MOVZ	R0, r0x103A
	BANKSEL	r0x103C
	MOV	r0x103C, R0
	MOV	R0,# 0x00
	BANKSEL	r0x103C
	JNB	r0x103C, 7
	MOV	R0,# 0xff
	BANKSEL	r0x103D
	MOV	r0x103D, R0
	BANKSEL	r0x103E
	MOV	r0x103E, R0
;	op : BITWISEAND
	BANKSEL	r0x103B
	MOVZ	R0, r0x103B
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	R0, __KF8TS35CS_Data_Steady_Flag_
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	BANKSEL	r0x103C
	MOVZ	R0, r0x103C
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	R0, (__KF8TS35CS_Data_Steady_Flag_ + 1)
	BANKSEL	r0x103A
	MOV	r0x103A, R0
	BANKSEL	r0x103E
	MOVZ	R0, r0x103E
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	R0, (__KF8TS35CS_Data_Steady_Flag_ + 2)
	BANKSEL	r0x103F
	MOV	r0x103F, R0
	BANKSEL	r0x103D
	MOVZ	R0, r0x103D
	BANKSEL	__KF8TS35CS_Data_Steady_Flag_
	AND	R0, (__KF8TS35CS_Data_Steady_Flag_ + 3)
	BANKSEL	r0x1040
	MOV	r0x1040, R0
;	op : IFX
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103A
	ORL	R0, r0x103A
	BANKSEL	r0x103F
	ORL	R0, r0x103F
	BANKSEL	r0x1040
	ORL	R0, r0x1040
	JNB	PSW, 2
	JMP	_00044_DS_
;	op : +
;	.line	1250; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBc_touch_count_[i_KF8_lib_TS3_CS_T_]<TCS_AMOUNT)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBc_touch_count_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_touch_count_
	LD	R0, [R1]
	BANKSEL	r0x103B
	MOV	r0x103B, R0
;	op : =
;gen_assign from CODESPACE
	MOV	R1,# high (_TCS_AMOUNT+0)
	MOV	R0,# low (_TCS_AMOUNT+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : <
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103B
	SUB	R0, r0x103B
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00044_DS_
;	op : +
;	.line	1252; "../kf8ts35_touch_cs_lib.c"	_KF8_LIBc_touch_count_[i_KF8_lib_TS3_CS_T_]++;
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBc_touch_count_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_touch_count_
	LD	R0, [R1]
	BANKSEL	r0x103C
	MOV	r0x103C, R0
;	op : +
	BANKSEL	r0x103C
	INC	r0x103C
;	op : =
	BANKSEL	r0x103C
	MOVZ	R0, r0x103C
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_touch_count_
	ST	[R1], R0
;	op : LABEL
;	op : =
;gen_assign from CODESPACE
_00044_DS_
;	.line	1285; "../kf8ts35_touch_cs_lib.c"	if(_KF8_DoubleKey_Compages_Limitable_Circle_)  // ！=0的判断
	MOV	R1,# high (__KF8_DoubleKey_Compages_Limitable_Circle_+0)
	MOV	R0,# low (__KF8_DoubleKey_Compages_Limitable_Circle_+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	MOV	R1,# high (__KF8_DoubleKey_Compages_Limitable_Circle_+1)
	MOV	R0,# low (__KF8_DoubleKey_Compages_Limitable_Circle_+1)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x103B
	MOV	r0x103B, R0
;	op : IFX
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103B
	ORL	R0, r0x103B
	JNB	PSW, 2
	JMP	_00051_DS_
;	op : EQ_OP
;	.line	1287; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Key_Down_Count_TS3_CS_T_==1&&_KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_<_KF8_DoubleKey_Compages_Limitable_Circle_)
	BANKSEL	__KF8_lib_Key_Down_Count_TS3_CS_T_
	MOVZ	R0, __KF8_lib_Key_Down_Count_TS3_CS_T_
	XOR	R0,# 0x01
	JB	PSW, 2
	JMP	_00051_DS_
;	op : <
	BANKSEL	r0x103B
	MOVZ	R0, r0x103B
	BANKSEL	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	SUB	R0, (__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_ + 1)
;comparing bytes at offset 1
	JB	PSW, 2
	JMP	_00107_DS_
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	SUB	R0, __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
_00107_DS_
	JNB	PSW, 0
	JMP	_00051_DS_
;	op : +
;	.line	1289; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_++;
	BANKSEL	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	INC	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	JB	PSW, 2
	JMP	_00196_DS_
	BANKSEL	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	INC	(__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_ + 1)
;	op : EQ_OP
_00196_DS_
;	.line	1290; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_==_KF8_DoubleKey_Compages_Limitable_Circle_)
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	XOR	R0, __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	JB	PSW, 2
	JMP	_00051_DS_
	BANKSEL	r0x103B
	MOVZ	R0, r0x103B
	BANKSEL	__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	XOR	R0, (__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_ + 1)
	JB	PSW, 2
	JMP	_00051_DS_
;	op : =
;	.line	1292; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Key_Down_Count_TS3_CS_T_=2;
	MOV	R0,# 0x02
	BANKSEL	__KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV	__KF8_lib_Key_Down_Count_TS3_CS_T_, R0
;	op : =
;	.line	1293; "../kf8ts35_touch_cs_lib.c"	_KF8_LIBc_finger_OUT_Second_TS3_CS_T_=_KF8_LIBc_finger_OUT_First_TS3_CS_T_;
	BANKSEL	__KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOVZ	R0, __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	BANKSEL	__KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV	__KF8_LIBc_finger_OUT_Second_TS3_CS_T_, R0
;	op : LABEL
;	op : +
_00051_DS_
;	.line	1298; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBc_touch_count_[i_KF8_lib_TS3_CS_T_]==TCS_AMOUNT )
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBc_touch_count_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_touch_count_
	LD	R0, [R1]
	BANKSEL	r0x103C
	MOV	r0x103C, R0
;	op : =
;gen_assign from CODESPACE
	MOV	R1,# high (_TCS_AMOUNT+0)
	MOV	R0,# low (_TCS_AMOUNT+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : EQ_OP
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103C
	XOR	R0, r0x103C
	JB	PSW, 2
	JMP	_00065_DS_
;	op : IFX
;	.line	1303; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBi_channel_flag_)
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, __KF8_LIBi_channel_flag_
	BANKSEL	__KF8_LIBi_channel_flag_
	ORL	R0, (__KF8_LIBi_channel_flag_ + 1)
	BANKSEL	__KF8_LIBi_channel_flag_
	ORL	R0, (__KF8_LIBi_channel_flag_ + 2)
	BANKSEL	__KF8_LIBi_channel_flag_
	ORL	R0, (__KF8_LIBi_channel_flag_ + 3)
	JNB	PSW, 2
	JMP	_00053_DS_
;	op : INLINEASM
	;;
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV R0, __KF8_lib_Key_Down_Count_TS3_CS_T_
	XOR R0,# 0x01
	JB PSW, 2
	JMP lable_06161201
	;;;;;;;;;;;;;
	;;
	MOV R0,# 0x02
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV __KF8_lib_Key_Down_Count_TS3_CS_T_, R0
	;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV __KF8_LIBc_finger_OUT_Second_TS3_CS_T_, R0
	;;;;;;;;;;;;;;;;;;;;;;;;;;;
	;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0, #low (__KF8_TOUCH_CH_EN)
	MOV R1, #high (__KF8_TOUCH_CH_EN)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CLR PSW,0
	RLC R0
	RLC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_ , R0
	;;;;;;;;;;;;;;;;;;;;
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	ORL __KF8_LIBi_channel_flag_,R0
	;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	ORL (__KF8_LIBi_channel_flag_+1), R0
	;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	ORL (__KF8_LIBi_channel_flag_+2), R0
	;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	INC R0
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	ORL (__KF8_LIBi_channel_flag_+3), R0
	;;;;;;;;;;;;;;;;;;;;;
	JMP lable_06161420
	;;;;;;
lable_06161201:
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0,_i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_touch_count_)
	MOV R1,#0X00
	BANKSEL __KF8_LIBc_touch_count_
	ST [R0], R1
lable_06161420:
	
;	op : GOTO
	JMP	_00054_DS_
;	op : LABEL
;	op : INLINEASM
_00053_DS_
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	ADD R0, #low (__KF8_TOUCH_CH_EN)
	MOV R1, #high (__KF8_TOUCH_CH_EN)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	CLR PSW,0
	RLC R0
	RLC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_ , R0
	;;;;;;;;;;;;;;;;;;;;
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	MOV __KF8_LIBi_channel_flag_,R0
	;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	MOV (__KF8_LIBi_channel_flag_+1), R0
	;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	MOV (__KF8_LIBi_channel_flag_+2), R0
	;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0, __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	INC R0
	INC R0
	INC R0
	ADD R0,#low(__KF8_LIBt_buff_bit_TS3_CS_T_)
	MOV R1,#high(__KF8_LIBt_buff_bit_TS3_CS_T_)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	BANKSEL __KF8_LIBi_channel_flag_
	MOV (__KF8_LIBi_channel_flag_+3), R0
	;;;;;;;;;;;;;;;;;
	;;;;;;;;;;;;;;;;;;;;;
	MOV R0,# 0x01
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV __KF8_lib_Key_Down_Count_TS3_CS_T_, R0
	;;;;;;;;;;;;
	BANKSEL __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	MOV __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_, R0
	BANKSEL __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	CLR (__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_ + 1)
	;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0, _i_KF8_lib_TS3_CS_T_
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOV __KF8_LIBc_finger_OUT_First_TS3_CS_T_, R0
	;;;;;;;;;;;;;;;
	MOV R0,# 0xff
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV __KF8_LIBc_finger_OUT_Second_TS3_CS_T_, R0
	
;	op : LABEL
;	op : INLINEASM
_00054_DS_
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0,_i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_touch_count_)
	BANKSEL __KF8_LIBc_touch_count_
	LD R1,[R0]
	INC R1
	ST [R0],R1
	
;	op : GOTO
	JMP	_00065_DS_
;	op : LABEL
;	op : +
_00060_DS_
;	.line	1532; "../kf8ts35_touch_cs_lib.c"	else if(_KF8_LIBc_touch_count_[i_KF8_lib_TS3_CS_T_]<TCS_AMOUNT)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	MOV	R0, _i_KF8_lib_TS3_CS_T_
	ADD	R0,# (__KF8_LIBc_touch_count_ + 0)
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : GET_VALUE_AT_ADDRESS
	BANKSEL	r0x1037
	MOV	R1, r0x1037
	BANKSEL	__KF8_LIBc_touch_count_
	LD	R0, [R1]
	BANKSEL	r0x103E
	MOV	r0x103E, R0
;	op : =
;gen_assign from CODESPACE
	MOV	R1,# high (_TCS_AMOUNT+0)
	MOV	R0,# low (_TCS_AMOUNT+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
;	op : <
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103E
	SUB	R0, r0x103E
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00065_DS_
;	op : INLINEASM
	BANKSEL _i_KF8_lib_TS3_CS_T_
	MOV R0,_i_KF8_lib_TS3_CS_T_
	ADD R0,#(__KF8_LIBc_touch_count_)
	BANKSEL __KF8_LIBc_touch_count_
	MOV R1,#0X00
	ST [R0],R1
	
;	op : LABEL
;	op : INLINEASM
_00065_DS_
	CLR PSW, 0
	BANKSEL __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	RLC __KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_
	RLC (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 1)
	RLC (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 2)
	RLC (__KF8_LIBi_Touch_Bit_1_Find_TS3_CS_T_ + 3)
	
;	op : +
;	.line	513; "../kf8ts35_touch_cs_lib.c"	for(i_KF8_lib_TS3_CS_T_=0;i_KF8_lib_TS3_CS_T_<CHS_AMOUNT;i_KF8_lib_TS3_CS_T_++)
	BANKSEL	_i_KF8_lib_TS3_CS_T_
	INC	_i_KF8_lib_TS3_CS_T_
;	op : GOTO
	JMP	_00072_DS_
;	op : LABEL
;	op : =
_00075_DS_
;	.line	1566; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_CH_DW_Change_Count_TS3_CS_T_=0;
	BANKSEL	__KF8_lib_CH_DW_Change_Count_TS3_CS_T_
	CLR	__KF8_lib_CH_DW_Change_Count_TS3_CS_T_
;	op : GET_VALUE_AT_ADDRESS
;	.line	1568; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Protect_Flag)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 1
	JMP	_00067_DS_
;	op : INLINEASM
	MOV R0,#low(__KF8_Disturb_Protect_Circle_)
	MOV R1,#high(__KF8_Disturb_Protect_Circle_)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;
	BANKSEL __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	INC __KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	MOV R1,__KF8_lib_Wave_Protect_Time_Count_TS3_CS_T_
	;;;;;;;;;
	SUB R1,R0
	JNB PSW, 0
	JMP lable_06161507
	BANKSEL __KF8_lib_Touch_Bits_
	CLR __KF8_lib_Touch_Bits_, 1
lable_06161507:
	
;	op : LABEL
;	op : =
;gen_assign from CODESPACE
_00067_DS_
;	.line	1599; "../kf8ts35_touch_cs_lib.c"	if(_KF8_Key_Max_Pressed_Limitable_Circle_)
	MOV	R1,# high (__KF8_Key_Max_Pressed_Limitable_Circle_+0)
	MOV	R0,# low (__KF8_Key_Max_Pressed_Limitable_Circle_+0)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x1037
	MOV	r0x1037, R0
	MOV	R1,# high (__KF8_Key_Max_Pressed_Limitable_Circle_+1)
	MOV	R0,# low (__KF8_Key_Max_Pressed_Limitable_Circle_+1)
	PAGESEL	__R2PCL
	CALL	__R2PCL
	PAGESEL	$
	BANKSEL	r0x103E
	MOV	r0x103E, R0
;	op : IFX
	BANKSEL	r0x1037
	MOVZ	R0, r0x1037
	BANKSEL	r0x103E
	ORL	R0, r0x103E
	JNB	PSW, 2
	JMP	_00076_DS_
;	op : IFX
;	.line	1601; "../kf8ts35_touch_cs_lib.c"	if(_KF8_LIBi_channel_flag_)
	BANKSEL	__KF8_LIBi_channel_flag_
	MOVZ	R0, __KF8_LIBi_channel_flag_
	BANKSEL	__KF8_LIBi_channel_flag_
	ORL	R0, (__KF8_LIBi_channel_flag_ + 1)
	BANKSEL	__KF8_LIBi_channel_flag_
	ORL	R0, (__KF8_LIBi_channel_flag_ + 2)
	BANKSEL	__KF8_LIBi_channel_flag_
	ORL	R0, (__KF8_LIBi_channel_flag_ + 3)
	JNB	PSW, 2
	JMP	_00076_DS_
;	op : +
;	.line	1603; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_++;
	BANKSEL	__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	INC	__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	JB	PSW, 2
	JMP	_00197_DS_
	BANKSEL	__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	INC	(__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_ + 1)
;	op : INLINEASM
_00197_DS_
	MOV R0,#low(__KF8_Key_Max_Pressed_Limitable_Circle_)
	MOV R1,#high(__KF8_Key_Max_Pressed_Limitable_Circle_)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	XOR R0,__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	JB PSW,2
	JMP lable_06161527
	;;;;;;;;;;;;;;;;
	MOV R0,#low(__KF8_Key_Max_Pressed_Limitable_Circle_+1)
	MOV R1,#high(__KF8_Key_Max_Pressed_Limitable_Circle_+1)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	XOR R0,(__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_+1)
	JB PSW ,2
	JMP lable_06161527
	;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBi_channel_flag_
	CLR __KF8_LIBi_channel_flag_
	CLR (__KF8_LIBi_channel_flag_ + 1)
	CLR (__KF8_LIBi_channel_flag_ + 2)
	CLR (__KF8_LIBi_channel_flag_ + 3)
	;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	MOV R0, __KF8_lib_Key_Down_Count_TS3_CS_T_
	XOR R0,# 0x02
	JB PSW, 2
	JMP lable_06161530
	;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV R0,__KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	CLR PSW,0
	RLC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_, R0
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
lable_06161530:
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOV R0,__KF8_LIBc_finger_OUT_First_TS3_CS_T_
	CLR PSW,0
	RLC R0
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV __KF8_lib_Date_Uchar_Temp_TS3_CS_T_, R0
	ADD R0, #(__KF8_LIBi_buff_hit_)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_hit_+1)
	BANKSEL __KF8_LIBi_buff_hit_
	LD R1,[R0]
	;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	MOV R0,__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	ADD R0,#(__KF8_LIBi_buff_baseline_+1)
	BANKSEL __KF8_LIBi_buff_baseline_
	ST [R0],R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Key_Down_Count_TS3_CS_T_
	CLR __KF8_lib_Key_Down_Count_TS3_CS_T_
	;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0,# 0xff
	BANKSEL __KF8_LIBc_finger_OUT_First_TS3_CS_T_
	MOV __KF8_LIBc_finger_OUT_First_TS3_CS_T_, R0
	;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_finger_OUT_Second_TS3_CS_T_
	MOV __KF8_LIBc_finger_OUT_Second_TS3_CS_T_, R0
	;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	CLR __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	BANKSEL __KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_
	CLR (__KF8_lib_Key_Double_Timer_Protect_TS3_CS_T_ + 1)
	;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	CLR __KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_
	CLR (__KF8_lib_MAX_KEY_Vaule_Time_Count_TS3_CS_T_ + 1)
lable_06161527:
	
;	op : LABEL
;	op : ENDFUNCTION
_00076_DS_
	CRET	
; exit point of __KF8_LiBf_KEY_Deal_AND_BaseLine_Up



func.__KF8TS35_Init_Touch_cs_General_	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8TS35_Init_Touch_cs_General_	;Function start
; 2 exit points
;has an exit
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8TS35_Init_Touch_cs_General_	;Function start
; 2 exit points
;	op : =
;	.line	369; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Date_Uchar_Temp_TS3_CS_T_=0; // 开机放弃的n圈计数保证为0开始
	BANKSEL	__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	CLR	__KF8_lib_Date_Uchar_Temp_TS3_CS_T_
;	op : =
;	.line	371; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Work_Flag=0; //初始化
	BANKSEL	__KF8_lib_Touch_Bits_
	CLR	__KF8_lib_Touch_Bits_, 0
;	op : =
;	.line	372; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Protect_Flag=0;//初始化
	BANKSEL	__KF8_lib_Touch_Bits_
	CLR	__KF8_lib_Touch_Bits_, 1
;	op : =
;	.line	376; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_=0;
	BANKSEL	__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	CLR	__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	BANKSEL	__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	CLR	(__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 1)
	BANKSEL	__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	CLR	(__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 2)
	BANKSEL	__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_
	CLR	(__KF8_lib_CH_DW_Change_Dealed_Flag_TS3_CS_T_ + 3)
;	op : INLINEASM
	; 408 "../kf8ts35_touch_cs_lib.c"
	;;;;;;;;;;;;
	BANKSEL __KF8_LIBc_channel_
	CLR __KF8_LIBc_channel_
	;;;;;;;;;;;;
	BANKSEL __KF8_LIBi_channel_flag_ ;
	CLR __KF8_LIBi_channel_flag_
	CLR __KF8_LIBi_channel_flag_+1
	CLR __KF8_LIBi_channel_flag_+2
	CLR __KF8_LIBi_channel_flag_+3
	;;;;;;;;;;;;;
	BANKSEL __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	CLR __KF8_lib_Date_Uchar_Temp_TS3_CS_T_
	;;;;;;;;;;;;;;
	
;	op : INLINEASM
	MOVB #0x01
	MOV R0,#0x66
	MOV 0x4E,R0 ;
	
;	op : INLINEASM
	MOV R0, # low (__KF8_TOUCH_CH_EN+0)
	MOV R1, # high (__KF8_TOUCH_CH_EN+0)
	PAGESEL __R2PCHPCL
	CALL __R2PCHPCL
	PAGESEL $
	ORL R0,#0x80
	BANKSEL CTCTL0
	MOV CTCTL0,R0
	
;	op : =
;	.line	429; "../kf8ts35_touch_cs_lib.c"	
	BANKSEL	_T3L
	CLR	_T3L
;	op : =
	BANKSEL	_T3H
	CLR	_T3H
;	op : GET_VALUE_AT_ADDRESS
;	.line	431; "../kf8ts35_touch_cs_lib.c"	#if 0
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 5
	JMP	_00019_DS_
;	op : INLINEASM
	MOVB #0x00
	CLR 0x53,5
	
;	op : LABEL
;	op : INLINEASM
_00019_DS_
	BANKSEL _CTCTL0
	SET _CTCTL0,6
	NOP
	JB _CTCTL0,6
	JMP $-3
	
;	op : |
;	.line	476; "../kf8ts35_touch_cs_lib.c"	CTCTL0 |= 0x20;
	BANKSEL	_CTCTL0
	SET	_CTCTL0, 5
;	op : |
;	.line	477; "../kf8ts35_touch_cs_lib.c"	CTCTL1 |= 0X20;
	BANKSEL	_CTCTL1
	SET	_CTCTL1, 5
;	op : GET_VALUE_AT_ADDRESS
;	.line	479; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 5
	JMP	_00021_DS_
;	op : INLINEASM
	MOVB #0x00
	SET 0x53,5
	
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00021_DS_
;	.line	488; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Count_Use_T4)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 7
	JMP	_00023_DS_
;	op : =
;	.line	490; "../kf8ts35_touch_cs_lib.c"	T4L = 0;    T4H = 0; 	T4ON=1;		// T3 T4 如果分频 外部可设置
	BANKSEL	_T4L
	CLR	_T4L
;	op : =
	BANKSEL	_T4H
	CLR	_T4H
;	op : =
	BANKSEL	_T4CTL_bits
	SET	_T4CTL_bits, 0
;	op : LABEL
;	op : =
_00023_DS_
;	.line	492; "../kf8ts35_touch_cs_lib.c"	T3IF=0;		T3IE=1;
	BANKSEL	_EIF2_bits
	CLR	_EIF2_bits, 7
;	op : =
	BANKSEL	_EIE2_bits
	SET	_EIE2_bits, 7
;	op : =
;	.line	493; "../kf8ts35_touch_cs_lib.c"	AIEL=1;		AIEH=1;
	BANKSEL	_INTCTL_bits
	SET	_INTCTL_bits, 6
;	op : =
	BANKSEL	_INTCTL_bits
	SET	_INTCTL_bits, 7
;	op : LABEL
;	op : ENDFUNCTION
	CRET	
; exit point of __KF8TS35_Init_Touch_cs_General_



func.__KF8_lib_Baihualv_get_	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8_lib_Baihualv_get_	;Function start
; 2 exit points
;has an exit
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8_lib_Baihualv_get_	;Function start
; 2 exit points
;	op : INLINEASM
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV R0,__KF8_Temp_Cur_B_TS3_CS_T_
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	SUB __KF8_Temp_Cur_A_TS3_CS_T_,R0
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV R1,(__KF8_Temp_Cur_B_TS3_CS_T_+1)
	JB PSW,0
	INC R1
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	SUB (__KF8_Temp_Cur_A_TS3_CS_T_+1),R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	JB PSW,0
	JMP label_3_3_3
	JMP label_4_4_4
label_3_3_3:
	;;
	BANKSEL __KF8_lib_Touch_Bits_
	CLR __KF8_lib_Touch_Bits_, 4
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	CPL __KF8_Temp_Cur_A_TS3_CS_T_
	BANKSEL (__KF8_Temp_Cur_A_TS3_CS_T_+1)
	CPL (__KF8_Temp_Cur_A_TS3_CS_T_+1)
	INC __KF8_Temp_Cur_A_TS3_CS_T_
	JNB PSW,2
	INC (__KF8_Temp_Cur_A_TS3_CS_T_+1)
	JMP label_5_5_5
label_4_4_4:
	;;
	BANKSEL __KF8_lib_Touch_Bits_
	SET __KF8_lib_Touch_Bits_, 4
label_5_5_5:
	
;	op : INLINEASM
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	MOV R0, (__KF8_Temp_Cur_A_TS3_CS_T_ + 1)
	AND R0,# 0xfc
	JB PSW, 2
	JMP label_6_6_6
	;;;;;;;;;;;;;;;;;;;;;;小于;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0,# 0x06
	INC R0
	JMP label_7_7_7
label_8_8_8:
	CLR PSW, 0
	RLC __KF8_Temp_Cur_A_TS3_CS_T_
	RLC (__KF8_Temp_Cur_A_TS3_CS_T_ + 1)
label_7_7_7:
	DECJZ R0
	JMP label_8_8_8
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0,# 0x08
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	ADD __KF8_Temp_Cur_B_TS3_CS_T_, R0
	PAGESEL label_9_9_9
	JB PSW, 0
	JMP label_9_9_9
	INC (__KF8_Temp_Cur_B_TS3_CS_T_ + 1)
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
label_9_9_9:
	MOV R0,# 0x04
	INC R0
	JMP label_10_10_10
label_11_11_11:
	CLR PSW, 0
	RRC (__KF8_Temp_Cur_B_TS3_CS_T_ + 1)
	RRC __KF8_Temp_Cur_B_TS3_CS_T_
label_10_10_10:
	DECJZ R0
	JMP label_11_11_11
	JMP label_13_13_13
	;;;;;;;;;;;;;;;;;;;;;;大于等于;;;;;;;;;;;;;;;;;;;;;;;;
label_6_6_6:
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	CLR PSW, 0
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	RLC __KF8_Temp_Cur_A_TS3_CS_T_
	RLC (__KF8_Temp_Cur_A_TS3_CS_T_ + 1)
	CLR PSW, 0
	RLC __KF8_Temp_Cur_A_TS3_CS_T_
	RLC (__KF8_Temp_Cur_A_TS3_CS_T_ + 1)
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0,# 0x80
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	ADD __KF8_Temp_Cur_B_TS3_CS_T_, R0
	JB PSW, 0
	JMP label_12_12_12
	INC (__KF8_Temp_Cur_B_TS3_CS_T_ + 1)
label_12_12_12:
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV R0, (__KF8_Temp_Cur_B_TS3_CS_T_ + 1)
	MOV __KF8_Temp_Cur_B_TS3_CS_T_, R0
	CLR (__KF8_Temp_Cur_B_TS3_CS_T_ + 1)
label_13_13_13:
	
;	op : =
;	.line	307; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_bahualvtemportemp_TS3_CS_T_=0;
	BANKSEL	__KF8_lib_bahualvtemportemp_TS3_CS_T_
	CLR	__KF8_lib_bahualvtemportemp_TS3_CS_T_
;	op : INLINEASM
label_17_17_17:
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV R0,__KF8_Temp_Cur_B_TS3_CS_T_
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	SUB __KF8_Temp_Cur_A_TS3_CS_T_,R0
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	BANKSEL __KF8_Temp_Cur_B_TS3_CS_T_
	MOV R1,(__KF8_Temp_Cur_B_TS3_CS_T_+1)
	JB PSW,0
	INC R1
	BANKSEL __KF8_Temp_Cur_A_TS3_CS_T_
	SUB (__KF8_Temp_Cur_A_TS3_CS_T_+1),R1
	;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	JB PSW,0
	JMP label_15_15_15
	JMP label_14_14_14
label_15_15_15:
	;;
	JMP label_16_16_16
label_14_14_14:
	;;
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	INC __KF8_lib_bahualvtemportemp_TS3_CS_T_
	MOV R0,__KF8_lib_bahualvtemportemp_TS3_CS_T_
	SUB R0,#(126)
	JB PSW,0
	JMP label_16_16_16 ;
	JMP label_17_17_17 ;
label_16_16_16:
	
;	op : GET_VALUE_AT_ADDRESS
;	.line	349; "../kf8ts35_touch_cs_lib.c"	if(_KF8_lib_Touch_Bits_._KF8_Touch_Flag_Flag1)
	BANKSEL	__KF8_lib_Touch_Bits_
	JB	__KF8_lib_Touch_Bits_, 4
	JMP	_00015_DS_
;	op : INLINEASM
	BANKSEL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	CPL __KF8_lib_bahualvtemportemp_TS3_CS_T_
	INC __KF8_lib_bahualvtemportemp_TS3_CS_T_
	
;	op : LABEL
;	op : ENDFUNCTION
_00015_DS_
	CRET	
; exit point of __KF8_lib_Baihualv_get_



func.__KF8TS35_Lib_Set_General_cs_Parameter	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __KF8TS35_Lib_Set_General_cs_Parameter	;Function start
; 2 exit points
;has an exit
;1 compiler assigned register :
;   r0x1042
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__KF8TS35_Lib_Set_General_cs_Parameter	;Function start
; 2 exit points
;	op : RECEIVE
;	.line	151; "../kf8ts35_touch_cs_lib.c"	void _KF8TS35_Lib_Set_General_cs_Parameter(unsigned char parameterin)
	BANKSEL	r0x1042
	MOV	r0x1042, R0
;	op : IFX
;	.line	153; "../kf8ts35_touch_cs_lib.c"	if(parameterin==0)
	MOV	R0,# 0x00
	BANKSEL	r0x1042
	ORL	R0, r0x1042
	JB	PSW, 2
	JMP	_00007_DS_
;	op : =
;	.line	155; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Count_Use_T4=1;
	BANKSEL	__KF8_lib_Touch_Bits_
	SET	__KF8_lib_Touch_Bits_, 7
;	op : =
;	.line	156; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B=0;
	BANKSEL	__KF8_lib_Touch_Bits_
	CLR	__KF8_lib_Touch_Bits_, 5
;	op : GOTO
	JMP	_00009_DS_
;	op : LABEL
;	op : EQ_OP
_00007_DS_
;	.line	158; "../kf8ts35_touch_cs_lib.c"	else if(parameterin==1)
	BANKSEL	r0x1042
	MOVZ	R0, r0x1042
	XOR	R0,# 0x01
	JB	PSW, 2
	JMP	_00004_DS_
;	op : =
;	.line	160; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Count_Use_T4=0;
	BANKSEL	__KF8_lib_Touch_Bits_
	CLR	__KF8_lib_Touch_Bits_, 7
;	op : =
;	.line	161; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B=0;
	BANKSEL	__KF8_lib_Touch_Bits_
	CLR	__KF8_lib_Touch_Bits_, 5
;	op : GOTO
	JMP	_00009_DS_
;	op : LABEL
;	op : =
_00004_DS_
;	.line	165; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Count_Use_T4=0;
	BANKSEL	__KF8_lib_Touch_Bits_
	CLR	__KF8_lib_Touch_Bits_, 7
;	op : =
;	.line	166; "../kf8ts35_touch_cs_lib.c"	_KF8_lib_Touch_Bits_._KF8_Touch_Use_T3_B=1;
	BANKSEL	__KF8_lib_Touch_Bits_
	SET	__KF8_lib_Touch_Bits_, 5
;	op : LABEL
;	op : ENDFUNCTION
_00009_DS_
	CRET	
; exit point of __KF8TS35_Lib_Set_General_cs_Parameter



func.__R2PCHPCL	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  __R2PCHPCL	;Function start
; 2 exit points
;has an exit
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
__R2PCHPCL	;Function start
; 2 exit points
;	op : INLINEASM
	MOV PCH,R1
	MOV PCL,R0
	
;	op : LABEL
;	op : ENDFUNCTION
	CRET	
; exit point of __R2PCHPCL


;	code size estimation:
;	  555+  303 =   858 instructions ( 2322 byte)


	.end
