Index: btkb/output/eeprom.dat
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/btkb/output/eeprom.dat	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/btkb/output/eeprom.dat	(working copy)
@@ -9826,7 +9826,7 @@
 00
 8f
 4c
-01
+02
 aa
 55
 01
@@ -10233,7 +10233,7 @@
 aa
 aa
 55
-f2
+f3
 b2
-fd
-57
+44
+bf
Index: btkb/output/sched.rom
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/btkb/output/sched.rom	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/btkb/output/sched.rom	(working copy)
@@ -554,7 +554,7 @@
 
 mem_adc_0v:9f 3e
 mem_adc_3v:cd 4d
-mem_adc_config_flag:01    #01 VINLPM      #02 HVIN      #04 GPIO
+mem_adc_config_flag:02    #01 VINLPM      #02 HVIN      #04 GPIO
 
 #24g init
 mem_24g_mode:01#tx
Index: btkb/sched/kb.dat
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/btkb/sched/kb.dat	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/btkb/sched/kb.dat	(working copy)
@@ -554,7 +554,7 @@
 
 mem_adc_0v:9f 3e
 mem_adc_3v:cd 4d
-mem_adc_config_flag:01    #01 VINLPM      #02 HVIN      #04 GPIO
+mem_adc_config_flag:02    #01 VINLPM      #02 HVIN      #04 GPIO
 
 #24g init
 mem_24g_mode:01#tx
Index: c51/adc.h
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/adc.h	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/adc.h	(working copy)
@@ -4,8 +4,8 @@
 
 #define ADC_ENABLE
 /***need to modify  mem_adc_config_flag in kb.dat at the same time****/
-#define ADC_TYPE_VINLPM			0x01	// 1.8V~3.6V
-//#define ADC_TYPE_HVIN			0x02	// 3.0~5.5V
+//#define ADC_TYPE_VINLPM			0x01	// 1.8V~3.6V
+#define ADC_TYPE_HVIN			0x02	// 3.0~5.5V
 //#define ADC_TYPE_GPIO			0x04	// 0~1.5V
 
 
Index: c51/global_variable.c
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/global_variable.c	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/global_variable.c	(working copy)
@@ -179,7 +179,7 @@
 
 
 //c7
-HID_KEY_RIGHT_GUI, 					//R0
+HID_KEY_RIGHT_CTL, 					//R0
 HID_KEY_NULL,					//R1
 HID_KEY_NULL, 					//R2
 HID_KEY_NULL, 				//R3
Index: c51/kb_process.c
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/kb_process.c	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/kb_process.c	(working copy)
@@ -694,9 +694,9 @@
 		if(key_value == HID_KEY_RIGHT_CTL)
 			temp = HID_KEY_RIGHT_GUI;
 	}
-	if( (fn_flag == 0 && g_variable.system_mode == OSMODE_WINDOWS) ||
-		 (fn_flag == 0 && g_variable.system_mode == OSMODE_IOS) ||
-		 (fn_flag == 0 && g_variable.system_mode == OSMODE_ANDROID))
+	if( (fn_flag == 1 && g_variable.system_mode == OSMODE_WINDOWS) ||
+		 (fn_flag == 1 && g_variable.system_mode == OSMODE_IOS) ||
+		 (fn_flag == 1 && g_variable.system_mode == OSMODE_ANDROID))
 	{	
 		switch (key_value)
 		{ 	
@@ -717,7 +717,7 @@
 				}
 				else
 				{
-				kb_combination_key_press(state,KS_SEL_LALT,HID_KEY_A);
+				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_A);
 					if(state & 1)    
 					{            
 					g_variable.one_key_press_wait_release_timer = 10;     
@@ -812,7 +812,6 @@
 				{
 				temp = HID_MULTIKEY_OS_LOCK;
 				}	
-				temp = HID_KEY_NULL;
 				break;							
 			default :
 				break;	
Index: c51/output/FW
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/FW.COD
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/FW.COD	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/FW.COD	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               11/29/2022  16:14:37  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               12/02/2022  15:48:48  PAGE 1
 
 
 
@@ -294,7 +294,7 @@
 0008B2 E0                MOVX    A,@DPTR
 0008B3 FD                MOV     R5,A
 0008B4 7B64              MOV     R3,#064H
-0008B6 123949            LCALL   _bufsize
+0008B6 12398A            LCALL   _bufsize
 0008B9 904EBC            MOV     DPTR,#len
 0008BC E0                MOVX    A,@DPTR
 0008BD FE                MOV     R6,A
@@ -803,7 +803,7 @@
   167: 		System_Hardware_init();
 000B15 121FE8            LCALL   System_Hardware_init
   168: 		System_Software_init();
-000B18 12360D            LCALL   System_Software_init
+000B18 12360F            LCALL   System_Software_init
   169: 
   170: 		
   171: 		IIC_Read(EEPROM_RECON_INFO_LAST_DEVICE ,1 ,(byte *)&g_variable.last_device_num);
@@ -835,7 +835,7 @@
   177: 			//kb_ble_name_roll();
   178: 			
   179: 		LED_device_poweron();
-000B3F 12351B            LCALL   LED_device_poweron
+000B3F 1233B5            LCALL   LED_device_poweron
   180: 		Delay1ms(10);
 000B42 7F0A              MOV     R7,#0AH
 000B44 F14B              ACALL   _Delay1ms
@@ -878,9 +878,9 @@
   189: 	case IPC_EVT_WAKEUP:
 000B7A         ?C0023?SYS:
   190: 		System_IIC_clk_setup();
-000B7A 1235FA            LCALL   System_IIC_clk_setup
+000B7A 1235FC            LCALL   System_IIC_clk_setup
   191: 		KS_Initialize();
-000B7D 123120            LCALL   KS_Initialize
+000B7D 12311F            LCALL   KS_Initialize
   192: 		g_variable.g24_long_sleep_flag = 0;
 000B80 E4                CLR     A
 000B81 904D02            MOV     DPTR,#g_variable+043H
@@ -1179,10 +1179,10 @@
   299: 			if(g_variable.pairing_timeout)
 000CC0 904CE9            MOV     DPTR,#g_variable+02AH
 000CC3 E0                MOVX    A,@DPTR
-000CC4 7002              JNZ     ?C0180?SYS
+000CC4 7002              JNZ     ?C0181?SYS
 000CC6 A3                INC     DPTR
 000CC7 E0                MOVX    A,@DPTR
-000CC8         ?C0180?SYS:
+000CC8         ?C0181?SYS:
 000CC8 6028              JZ      ?C0042?SYS
   300: 			{
   301: 				fn_lock_flag = 0;
@@ -1535,10 +1535,10 @@
   416: 		if(g_variable.pairing_timeout)
 000E3D 904CE9            MOV     DPTR,#g_variable+02AH
 000E40 E0                MOVX    A,@DPTR
-000E41 7002              JNZ     ?C0181?SYS
+000E41 7002              JNZ     ?C0182?SYS
 000E43 A3                INC     DPTR
 000E44 E0                MOVX    A,@DPTR
-000E45         ?C0181?SYS:
+000E45         ?C0182?SYS:
 000E45 6037              JZ      ?C0064?SYS
   417: 		{
   418: 			fn_lock_flag = 0;
@@ -2986,7 +2986,7 @@
 0014C5 904E7D            MOV     DPTR,#len
 0014C8 E0                MOVX    A,@DPTR
 0014C9 FD                MOV     R5,A
-0014CA 123C3B            LCALL   _IPC_TxBREDRHidData
+0014CA 123C7C            LCALL   _IPC_TxBREDRHidData
   147: 	}
 0014CD         ?C0033?KB_PROCESS:
   148: 	if ((g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED) ||
@@ -3018,7 +3018,7 @@
 0014F0 904E7D            MOV     DPTR,#len
 0014F3 E0                MOVX    A,@DPTR
 0014F4 FD                MOV     R5,A
-0014F5 123C33            LCALL   _IPC_TxBleData
+0014F5 123C74            LCALL   _IPC_TxBleData
   154: 
   155: 	}
 0014F8         ?C0035?KB_PROCESS:
@@ -3112,7 +3112,7 @@
 00155B 904E7D            MOV     DPTR,#len
 00155E E0                MOVX    A,@DPTR
 00155F FD                MOV     R5,A
-001560 123C23            LCALL   _IPC_Tx24GData
+001560 123C64            LCALL   _IPC_Tx24GData
   183: 	}
   184: }
 001563         ?C0031?KB_PROCESS:
@@ -3516,7 +3516,7 @@
 00170B A3                INC     DPTR
 00170C F0                MOVX    @DPTR,A
   333: 	if (!IPC_IsTxBuffEmpty())
-00170D 123C59            LCALL   IPC_IsTxBuffEmpty
+00170D 123C9A            LCALL   IPC_IsTxBuffEmpty
 001710 5025              JNC     ?C0077?KB_PROCESS
 001712         ?C0076?KB_PROCESS:
   334: 		return;
@@ -3616,95 +3616,95 @@
 
 ----- FUNCTION YC_System_Main (BEGIN) -----
  FILE: 'sys.c'
-  955: void YC_System_Main(void)
-  956: {
-  957: 	kb_cb_init();
-  958: 	while(1) {
+  976: void YC_System_Main(void)
+  977: {
+  978: 	kb_cb_init();
+  979: 	while(1) {
 001774 F1E2              ACALL   kb_cb_init
-001776         ?C0168?SYS:
-  959: 		IPC_DealSingleStep();
-  960: 		kb_need_keyscan();
-001776 1239F3            LCALL   IPC_DealSingleStep
-  961: 		YC_update_eeprom_data();
+001776         ?C0169?SYS:
+  980: 		IPC_DealSingleStep();
+  981: 		kb_need_keyscan();
+001776 123A34            LCALL   IPC_DealSingleStep
+  982: 		YC_update_eeprom_data();
 001779 D16F              ACALL   kb_need_keyscan
-  962: 		LED_handle();
+  983: 		LED_handle();
 00177B 121BB7            LCALL   YC_update_eeprom_data
-  963: #ifdef PC_SLEEP_STATUS_GET		
-00177E 12353E            LCALL   LED_handle
-  964: 		if(m_pc_sleep_flag)
+  984: #ifdef PC_SLEEP_STATUS_GET		
+00177E 123540            LCALL   LED_handle
+  985: 		if(m_pc_sleep_flag)
 001781 904D7D            MOV     DPTR,#m_pc_sleep_flag
 001784 E0                MOVX    A,@DPTR
-001785 6003              JZ      ?C0170?SYS
-  965: 		{
-  966: 			System_G24_long_lpm();
+001785 6003              JZ      ?C0171?SYS
+  986: 		{
+  987: 			System_G24_long_lpm();
 001787 121E91            LCALL   System_G24_long_lpm
-  967: 		}
-00178A         ?C0170?SYS:
-  968: #endif		
-  969: 		switch (current_task) {
+  988: 		}
+00178A         ?C0171?SYS:
+  989: #endif		
+  990: 		switch (current_task) {
 00178A 900B7E            MOV     DPTR,#current_task
 00178D E0                MOVX    A,@DPTR
 00178E 14                DEC     A
-00178F 600E              JZ      ?C0175?SYS
+00178F 600E              JZ      ?C0176?SYS
 001791 24FE              ADD     A,#0FEH
-001793 70E1              JNZ     ?C0168?SYS
-  970: 		case FIX_ENTER_HIBERNATE:
-001795         ?C0172?SYS:
-  971: 			KS_Unistall();
-001795 12314A            LCALL   KS_Unistall
-  972: 			//GPIO_SetWakeupByCurrentState(BT_BUTTON_GPIO);
-  973: 			LED_all_shutdown();
+001793 70E1              JNZ     ?C0169?SYS
+  991: 		case FIX_ENTER_HIBERNATE:
+001795         ?C0173?SYS:
+  992: 			KS_Unistall();
+001795 123149            LCALL   KS_Unistall
+  993: 			//GPIO_SetWakeupByCurrentState(BT_BUTTON_GPIO);
+  994: 			LED_all_shutdown();
 001798 121DA1            LCALL   LED_all_shutdown
-  974: 			IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
+  995: 			IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
 00179B F1D2              ACALL   IPC_WaitLpm
-00179D         ?C0173?SYS:
-  975: 			while(1);
-00179D 80FE              SJMP    ?C0173?SYS
-  976: 			break;
-  977: 			
-  978: 		case FIX_ENTER_LPM:
-00179F         ?C0175?SYS:
-  979: 			if (g_variable.delay_enter_lpm_timer ||g_variable.lockLpm ||g_variable.powerOn_timer  ||g_variable.sys_mode_le
+00179D         ?C0174?SYS:
+  996: 			while(1);
+00179D 80FE              SJMP    ?C0174?SYS
+  997: 			break;
+  998: 			
+  999: 		case FIX_ENTER_LPM:
+00179F         ?C0176?SYS:
+ 1000: 			if (g_variable.delay_enter_lpm_timer ||g_variable.lockLpm ||g_variable.powerOn_timer  ||g_variable.sys_mode_le
 >> d_on_timer||fn_flag ||g_variable.one_key_press_wait_release_timer
 00179F 904CEB            MOV     DPTR,#g_variable+02CH
 0017A2 E0                MOVX    A,@DPTR
-0017A3 701E              JNZ     ?C0177?SYS
+0017A3 701E              JNZ     ?C0178?SYS
 0017A5 904CED            MOV     DPTR,#g_variable+02EH
 0017A8 E0                MOVX    A,@DPTR
-0017A9 7018              JNZ     ?C0177?SYS
+0017A9 7018              JNZ     ?C0178?SYS
 0017AB 904CE5            MOV     DPTR,#g_variable+026H
 0017AE E0                MOVX    A,@DPTR
-0017AF 7012              JNZ     ?C0177?SYS
+0017AF 7012              JNZ     ?C0178?SYS
 0017B1 904CE8            MOV     DPTR,#g_variable+029H
 0017B4 E0                MOVX    A,@DPTR
-0017B5 700C              JNZ     ?C0177?SYS
+0017B5 700C              JNZ     ?C0178?SYS
 0017B7 904DE2            MOV     DPTR,#fn_flag
 0017BA E0                MOVX    A,@DPTR
-0017BB 7006              JNZ     ?C0177?SYS
+0017BB 7006              JNZ     ?C0178?SYS
 0017BD 904CFA            MOV     DPTR,#g_variable+03BH
 0017C0 E0                MOVX    A,@DPTR
-0017C1 6005              JZ      ?C0176?SYS
-0017C3         ?C0177?SYS:
-  980: 			) 
-  981: 			{
-  982: 				IPC_AbandonLpm();
-0017C3 123C4D            LCALL   IPC_AbandonLpm
-  983: 				break;
-0017C6 80AE              SJMP    ?C0168?SYS
-  984: 			}
-0017C8         ?C0176?SYS:
-  985: 			else
-  986: 			{
-  987: 				KS_Unistall();
-0017C8 12314A            LCALL   KS_Unistall
-  988: 				IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
+0017C1 6005              JZ      ?C0177?SYS
+0017C3         ?C0178?SYS:
+ 1001: 			) 
+ 1002: 			{
+ 1003: 				IPC_AbandonLpm();
+0017C3 123C8E            LCALL   IPC_AbandonLpm
+ 1004: 				break;
+0017C6 80AE              SJMP    ?C0169?SYS
+ 1005: 			}
+0017C8         ?C0177?SYS:
+ 1006: 			else
+ 1007: 			{
+ 1008: 				KS_Unistall();
+0017C8 123149            LCALL   KS_Unistall
+ 1009: 				IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
 0017CB F1D2              ACALL   IPC_WaitLpm
-  989: 				break;
-0017CD 80A7              SJMP    ?C0168?SYS
-  990: 			}
-  991: 		}
-  992: 	}
-0017CF 80A5              SJMP    ?C0168?SYS
+ 1010: 				break;
+0017CD 80A7              SJMP    ?C0169?SYS
+ 1011: 			}
+ 1012: 		}
+ 1013: 	}
+0017CF 80A5              SJMP    ?C0169?SYS
 0017D1 22                RET     
 ----- FUNCTION YC_System_Main (END) -------
 
@@ -3732,10 +3732,10 @@
 
 ----- FUNCTION kb_cb_init (BEGIN) -----
  FILE: 'sys.c'
-  948: static void kb_cb_init()
-  949: {
-  950: 	IPC_Initialize(&cb);
-  951: }
+  969: static void kb_cb_init()
+  970: {
+  971: 	IPC_Initialize(&cb);
+  972: }
 0017E2 7B01              MOV     R3,#01H
 0017E4 7A4E              MOV     R2,#HIGH cb
 0017E6 7956              MOV     R1,#LOW cb
@@ -4224,7 +4224,7 @@
   232: {
   233: 	kb_ble_name_roll();
   234: 	IIC_Read(EEPROM_RECON_INFO_RAMDON_LE_LAP1 ,2 ,(byte *)&g_variable.ble_ramdon_lap1);
-001A20 1235C8            LCALL   kb_ble_name_roll
+001A20 1235CA            LCALL   kb_ble_name_roll
   235: 	g_variable.ble_ramdon_lap1++;
 001A23 7B01              MOV     R3,#01H
 001A25 7A4C              MOV     R2,#HIGH g_variable+035H
@@ -4331,7 +4331,7 @@
 001AA2 7B01              MOV     R3,#01H
 001AA4 7A0B              MOV     R2,#HIGH IIC_TempBuff+03H
 001AA6 7986              MOV     R1,#LOW IIC_TempBuff+03H
-001AA8 123C78            LCALL   _dmemcpy
+001AA8 123CB9            LCALL   _dmemcpy
 001AAB 900B83            MOV     DPTR,#IIC_TempBuff
 001AAE 74A0              MOV     A,#0A0H
 001AB0 F0                MOVX    @DPTR,A
@@ -5314,11 +5314,11 @@
 001F1E 904CE3            MOV     DPTR,#g_variable+024H
 001F21 E0                MOVX    A,@DPTR
 001F22 6404              XRL     A,#04H
-001F24 7004              JNZ     ?C0182?SYS
+001F24 7004              JNZ     ?C0183?SYS
 001F26 A3                INC     DPTR
 001F27 E0                MOVX    A,@DPTR
 001F28 64B0              XRL     A,#0B0H
-001F2A         ?C0182?SYS:
+001F2A         ?C0183?SYS:
 001F2A 6002              JZ      $ + 4H
 001F2C E1B2              AJMP    ?C0093?SYS
   531: 		{
@@ -5449,26 +5449,26 @@
   784: 	YC_pairing_timerout_500ms();
 001FB3 F1E7              ACALL   LED_timer500ms
   785: 	g_variable.sleepTimer++;
-001FB5 1232E2            LCALL   YC_pairing_timerout_500ms
+001FB5 1232E1            LCALL   YC_pairing_timerout_500ms
   786: 
 001FB8 904CE4            MOV     DPTR,#g_variable+025H
 001FBB E0                MOVX    A,@DPTR
 001FBC 04                INC     A
 001FBD F0                MOVX    @DPTR,A
-001FBE 7006              JNZ     ?C0187?SYS
+001FBE 7006              JNZ     ?C0188?SYS
 001FC0 904CE3            MOV     DPTR,#g_variable+024H
 001FC3 E0                MOVX    A,@DPTR
 001FC4 04                INC     A
 001FC5 F0                MOVX    @DPTR,A
-001FC6         ?C0187?SYS:
+001FC6         ?C0188?SYS:
   787: 	YC_adc_check_timer500ms();
-001FC6 123937            LCALL   YC_adc_check_timer500ms
+001FC6 123978            LCALL   YC_adc_check_timer500ms
   788: 	YC_connect_timeout_500ms();
 001FC9 D1BD              ACALL   YC_connect_timeout_500ms
   789: 	kb_button_press_timer500ms();
 001FCB 9152              ACALL   kb_button_press_timer500ms
   790: 	YC_wait_disconnect_timer500ms();
-001FCD 12371E            LCALL   YC_wait_disconnect_timer500ms
+001FCD 12375F            LCALL   YC_wait_disconnect_timer500ms
   791: 	
   792: 	
   793: 	if((g_variable.br_currentSubState ==  CHANGE_TO_BR_SUB_PINCODE)
@@ -5525,9 +5525,9 @@
    88: {
    89: 	System_IIC_clk_setup();
    90: 	KS_Initialize();
-001FE8 1235FA            LCALL   System_IIC_clk_setup
+001FE8 1235FC            LCALL   System_IIC_clk_setup
    91: 	LED_all_shutdown();
-001FEB 123120            LCALL   KS_Initialize
+001FEB 12311F            LCALL   KS_Initialize
    92: }
 001FEE A1A1              AJMP    LED_all_shutdown
 ----- FUNCTION System_Hardware_init (END) -------
@@ -7082,8 +7082,8 @@
 
 ----- FUNCTION _kb_multikey_setup (BEGIN) -----
  FILE: 'kb_process.c'
-  961: void kb_multikey_setup(tKSEVENT *pEvt)
-  962: {
+  960: void kb_multikey_setup(tKSEVENT *pEvt)
+  961: {
 002650 904ED9            MOV     DPTR,#pEvt
 002653 EB                MOV     A,R3
 002654 F0                MOVX    @DPTR,A
@@ -7093,12 +7093,12 @@
 002658 A3                INC     DPTR
 002659 E9                MOV     A,R1
 00265A F0                MOVX    @DPTR,A
-  963: 	byte i = 0;
-  964: 	
+  962: 	byte i = 0;
+  963: 	
 00265B E4                CLR     A
 00265C A3                INC     DPTR
 00265D F0                MOVX    @DPTR,A
-  965: 	for (i = 0;i < 6;i++)
+  964: 	for (i = 0;i < 6;i++)
 00265E F0                MOVX    @DPTR,A
 00265F         ?C0240?KB_PROCESS:
 00265F 904EDC            MOV     DPTR,#i
@@ -7108,8 +7108,8 @@
 002665 9406              SUBB    A,#06H
 002667 4003              JC      $ + 5H
 002669 022969            LJMP    ?C0299?KB_PROCESS
-  966: 	{		
-  967: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
+  965: 	{		
+  966: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
 00266C 904ED9            MOV     DPTR,#pEvt
 00266F E0                MOVX    A,@DPTR
 002670 FB                MOV     R3,A
@@ -7141,34 +7141,34 @@
 002693 6003              JZ      $ + 5H
 002695 022960            LJMP    ?C0242?KB_PROCESS
 002698         ?C0244?KB_PROCESS:
-  968: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
-  969: 		{
-  970: 			
-  971: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
+  967: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
+  968: 		{
+  969: 			
+  970: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
 002698 1203B6            LCALL   ?C?CLDPTR
 00269B FB                MOV     R3,A
 00269C B4F109            CJNE    A,#0F1H,?C0245?KB_PROCESS
-  972: 			{
-  973: 				kb_set_multikey(0x0183); 
+  971: 			{
+  972: 				kb_set_multikey(0x0183); 
 00269F 7F83              MOV     R7,#083H
 0026A1 7E01              MOV     R6,#01H
 0026A3 D135              ACALL   _kb_set_multikey
-  974: 			}
+  973: 			}
 0026A5 022935            LJMP    ?C0246?KB_PROCESS
 0026A8         ?C0245?KB_PROCESS:
-  975: 			else
-  976: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
+  974: 			else
+  975: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
 0026A8 EB                MOV     A,R3
 0026A9 B4F209            CJNE    A,#0F2H,?C0247?KB_PROCESS
-  977: 			{ 
-  978: 				kb_set_multikey(0x00cd);
+  976: 			{ 
+  977: 				kb_set_multikey(0x00cd);
 0026AC 7FCD              MOV     R7,#0CDH
 0026AE 7E00              MOV     R6,#00H
 0026B0 D135              ACALL   _kb_set_multikey
-  979: 			}
+  978: 			}
 0026B2 022935            LJMP    ?C0246?KB_PROCESS
 0026B5         ?C0247?KB_PROCESS:
-  980: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
+  979: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
 0026B5 904ED9            MOV     DPTR,#pEvt
 0026B8 E0                MOVX    A,@DPTR
 0026B9 FB                MOV     R3,A
@@ -7193,25 +7193,25 @@
 0026CE 1203B6            LCALL   ?C?CLDPTR
 0026D1 FB                MOV     R3,A
 0026D2 B4F307            CJNE    A,#0F3H,?C0249?KB_PROCESS
-  981: 			{
-  982: 				kb_set_multikey(0x00b7);
+  980: 			{
+  981: 				kb_set_multikey(0x00b7);
 0026D5 7FB7              MOV     R7,#0B7H
 0026D7 D135              ACALL   _kb_set_multikey
-  983: 			}	
+  982: 			}	
 0026D9 022935            LJMP    ?C0246?KB_PROCESS
 0026DC         ?C0249?KB_PROCESS:
-  984: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
+  983: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
 0026DC EB                MOV     A,R3
 0026DD B4F409            CJNE    A,#0F4H,?C0251?KB_PROCESS
-  985: 			{
-  986: 				kb_set_multikey(0x00b6);
+  984: 			{
+  985: 				kb_set_multikey(0x00b6);
 0026E0 7FB6              MOV     R7,#0B6H
 0026E2 7E00              MOV     R6,#00H
 0026E4 D135              ACALL   _kb_set_multikey
-  987: 			}
+  986: 			}
 0026E6 022935            LJMP    ?C0246?KB_PROCESS
 0026E9         ?C0251?KB_PROCESS:
-  988: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
+  987: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
 0026E9 904ED9            MOV     DPTR,#pEvt
 0026EC E0                MOVX    A,@DPTR
 0026ED FB                MOV     R3,A
@@ -7236,25 +7236,25 @@
 002702 1203B6            LCALL   ?C?CLDPTR
 002705 FB                MOV     R3,A
 002706 B4F507            CJNE    A,#0F5H,?C0253?KB_PROCESS
-  989: 			{
-  990: 				kb_set_multikey(0x00b5);
+  988: 			{
+  989: 				kb_set_multikey(0x00b5);
 002709 7FB5              MOV     R7,#0B5H
 00270B D135              ACALL   _kb_set_multikey
-  991: 			}
+  990: 			}
 00270D 022935            LJMP    ?C0246?KB_PROCESS
 002710         ?C0253?KB_PROCESS:
-  992: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
+  991: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
 002710 EB                MOV     A,R3
 002711 B4F609            CJNE    A,#0F6H,?C0255?KB_PROCESS
-  993: 			{
-  994: 				kb_set_multikey(0x00ea);
+  992: 			{
+  993: 				kb_set_multikey(0x00ea);
 002714 7FEA              MOV     R7,#0EAH
 002716 7E00              MOV     R6,#00H
 002718 D135              ACALL   _kb_set_multikey
-  995: 			}
+  994: 			}
 00271A 022935            LJMP    ?C0246?KB_PROCESS
 00271D         ?C0255?KB_PROCESS:
-  996: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
+  995: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
 00271D 904ED9            MOV     DPTR,#pEvt
 002720 E0                MOVX    A,@DPTR
 002721 FB                MOV     R3,A
@@ -7279,25 +7279,25 @@
 002736 1203B6            LCALL   ?C?CLDPTR
 002739 FB                MOV     R3,A
 00273A B4F707            CJNE    A,#0F7H,?C0257?KB_PROCESS
-  997: 			{
-  998: 				kb_set_multikey(0x00e9);
+  996: 			{
+  997: 				kb_set_multikey(0x00e9);
 00273D 7FE9              MOV     R7,#0E9H
 00273F D135              ACALL   _kb_set_multikey
-  999: 			}
+  998: 			}
 002741 022935            LJMP    ?C0246?KB_PROCESS
 002744         ?C0257?KB_PROCESS:
- 1000: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
+  999: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
 002744 EB                MOV     A,R3
 002745 B4F809            CJNE    A,#0F8H,?C0259?KB_PROCESS
- 1001: 			{
- 1002: 				kb_set_multikey(0x00e2);
+ 1000: 			{
+ 1001: 				kb_set_multikey(0x00e2);
 002748 7FE2              MOV     R7,#0E2H
 00274A 7E00              MOV     R6,#00H
 00274C D135              ACALL   _kb_set_multikey
- 1003: 			}
+ 1002: 			}
 00274E 022935            LJMP    ?C0246?KB_PROCESS
 002751         ?C0259?KB_PROCESS:
- 1004: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
+ 1003: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
 002751 904ED9            MOV     DPTR,#pEvt
 002754 E0                MOVX    A,@DPTR
 002755 FB                MOV     R3,A
@@ -7322,26 +7322,26 @@
 00276A 1203B6            LCALL   ?C?CLDPTR
 00276D FB                MOV     R3,A
 00276E B4F908            CJNE    A,#0F9H,?C0261?KB_PROCESS
- 1005: 			{
- 1006: 				kb_set_multikey(0x0194);
+ 1004: 			{
+ 1005: 				kb_set_multikey(0x0194);
 002771 7F94              MOV     R7,#094H
 002773 0E                INC     R6
 002774 D135              ACALL   _kb_set_multikey
- 1007: 			}	
+ 1006: 			}	
 002776 022935            LJMP    ?C0246?KB_PROCESS
 002779         ?C0261?KB_PROCESS:
- 1008: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
+ 1007: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
 002779 EB                MOV     A,R3
 00277A B4FA09            CJNE    A,#0FAH,?C0263?KB_PROCESS
- 1009: 			{
- 1010: 				kb_set_multikey(0x018a);//mail
+ 1008: 			{
+ 1009: 				kb_set_multikey(0x018a);//mail
 00277D 7F8A              MOV     R7,#08AH
 00277F 7E01              MOV     R6,#01H
 002781 D135              ACALL   _kb_set_multikey
- 1011: 			}
+ 1010: 			}
 002783 022935            LJMP    ?C0246?KB_PROCESS
 002786         ?C0263?KB_PROCESS:
- 1012: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
+ 1011: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
 002786 904ED9            MOV     DPTR,#pEvt
 002789 E0                MOVX    A,@DPTR
 00278A FB                MOV     R3,A
@@ -7366,26 +7366,26 @@
 00279F 1203B6            LCALL   ?C?CLDPTR
 0027A2 FB                MOV     R3,A
 0027A3 B4FB08            CJNE    A,#0FBH,?C0265?KB_PROCESS
- 1013: 			{
- 1014: 				kb_set_multikey(0x0192);
+ 1012: 			{
+ 1013: 				kb_set_multikey(0x0192);
 0027A6 7F92              MOV     R7,#092H
 0027A8 0E                INC     R6
 0027A9 D135              ACALL   _kb_set_multikey
- 1015: 			}
+ 1014: 			}
 0027AB 022935            LJMP    ?C0246?KB_PROCESS
 0027AE         ?C0265?KB_PROCESS:
- 1016: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
+ 1015: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
 0027AE EB                MOV     A,R3
 0027AF B4D009            CJNE    A,#0D0H,?C0267?KB_PROCESS
- 1017: 			{
- 1018: 				kb_set_multikey(0x022a);//www Favorites
+ 1016: 			{
+ 1017: 				kb_set_multikey(0x022a);//www Favorites
 0027B2 7F2A              MOV     R7,#02AH
 0027B4 7E02              MOV     R6,#02H
 0027B6 D135              ACALL   _kb_set_multikey
- 1019: 			}
+ 1018: 			}
 0027B8 022935            LJMP    ?C0246?KB_PROCESS
 0027BB         ?C0267?KB_PROCESS:
- 1020: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
+ 1019: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
 0027BB 904ED9            MOV     DPTR,#pEvt
 0027BE E0                MOVX    A,@DPTR
 0027BF FB                MOV     R3,A
@@ -7410,26 +7410,26 @@
 0027D4 1203B6            LCALL   ?C?CLDPTR
 0027D7 FB                MOV     R3,A
 0027D8 B4D109            CJNE    A,#0D1H,?C0269?KB_PROCESS
- 1021: 			{
- 1022: 				kb_set_multikey(0x0225);
+ 1020: 			{
+ 1021: 				kb_set_multikey(0x0225);
 0027DB 7F25              MOV     R7,#025H
 0027DD 7E02              MOV     R6,#02H
 0027DF D135              ACALL   _kb_set_multikey
- 1023: 			}
+ 1022: 			}
 0027E1 022935            LJMP    ?C0246?KB_PROCESS
 0027E4         ?C0269?KB_PROCESS:
- 1024: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
+ 1023: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
 0027E4 EB                MOV     A,R3
 0027E5 B4D309            CJNE    A,#0D3H,?C0271?KB_PROCESS
- 1025: 			{
- 1026: 				kb_set_multikey(0x0226);
+ 1024: 			{
+ 1025: 				kb_set_multikey(0x0226);
 0027E8 7F26              MOV     R7,#026H
 0027EA 7E02              MOV     R6,#02H
 0027EC D135              ACALL   _kb_set_multikey
- 1027: 			}
+ 1026: 			}
 0027EE 022935            LJMP    ?C0246?KB_PROCESS
 0027F1         ?C0271?KB_PROCESS:
- 1028: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
+ 1027: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
 0027F1 904ED9            MOV     DPTR,#pEvt
 0027F4 E0                MOVX    A,@DPTR
 0027F5 FB                MOV     R3,A
@@ -7454,26 +7454,26 @@
 00280A 1203B6            LCALL   ?C?CLDPTR
 00280D FB                MOV     R3,A
 00280E B4D209            CJNE    A,#0D2H,?C0273?KB_PROCESS
- 1029: 			{
- 1030: 				kb_set_multikey(0x0224);
+ 1028: 			{
+ 1029: 				kb_set_multikey(0x0224);
 002811 7F24              MOV     R7,#024H
 002813 7E02              MOV     R6,#02H
 002815 122635            LCALL   _kb_set_multikey
- 1031: 			}
+ 1030: 			}
 002818 2135              AJMP    ?C0246?KB_PROCESS
 00281A         ?C0273?KB_PROCESS:
- 1032: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
+ 1031: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
 00281A EB                MOV     A,R3
 00281B B4D409            CJNE    A,#0D4H,?C0275?KB_PROCESS
- 1033: 			{
- 1034: 				kb_set_multikey(0x0227);
+ 1032: 			{
+ 1033: 				kb_set_multikey(0x0227);
 00281E 7F27              MOV     R7,#027H
 002820 7E02              MOV     R6,#02H
 002822 122635            LCALL   _kb_set_multikey
- 1035: 			}	
+ 1034: 			}	
 002825 2135              AJMP    ?C0246?KB_PROCESS
 002827         ?C0275?KB_PROCESS:
- 1036: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
+ 1035: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
 002827 904ED9            MOV     DPTR,#pEvt
 00282A E0                MOVX    A,@DPTR
 00282B FB                MOV     R3,A
@@ -7498,26 +7498,26 @@
 002840 1203B6            LCALL   ?C?CLDPTR
 002843 FB                MOV     R3,A
 002844 B4D509            CJNE    A,#0D5H,?C0277?KB_PROCESS
- 1037: 			{
- 1038: 				kb_set_multikey(0x0221);
+ 1036: 			{
+ 1037: 				kb_set_multikey(0x0221);
 002847 7F21              MOV     R7,#021H
 002849 7E02              MOV     R6,#02H
 00284B 122635            LCALL   _kb_set_multikey
- 1039: 			}
+ 1038: 			}
 00284E 2135              AJMP    ?C0246?KB_PROCESS
 002850         ?C0277?KB_PROCESS:
- 1040: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
+ 1039: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
 002850 EB                MOV     A,R3
 002851 B4D609            CJNE    A,#0D6H,?C0279?KB_PROCESS
- 1041: 			{
- 1042: 				kb_set_multikey(0x0223);
+ 1040: 			{
+ 1041: 				kb_set_multikey(0x0223);
 002854 7F23              MOV     R7,#023H
 002856 7E02              MOV     R6,#02H
 002858 122635            LCALL   _kb_set_multikey
- 1043: 			}
+ 1042: 			}
 00285B 2135              AJMP    ?C0246?KB_PROCESS
 00285D         ?C0279?KB_PROCESS:
- 1044: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
+ 1043: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
 00285D 904ED9            MOV     DPTR,#pEvt
 002860 E0                MOVX    A,@DPTR
 002861 FB                MOV     R3,A
@@ -7542,25 +7542,25 @@
 002876 1203B6            LCALL   ?C?CLDPTR
 002879 FB                MOV     R3,A
 00287A B4D707            CJNE    A,#0D7H,?C0281?KB_PROCESS
- 1045: 			{
- 1046: 				kb_set_multikey(0x0070);
+ 1044: 			{
+ 1045: 				kb_set_multikey(0x0070);
 00287D 7F70              MOV     R7,#070H
 00287F 122635            LCALL   _kb_set_multikey
- 1047: 			}
+ 1046: 			}
 002882 2135              AJMP    ?C0246?KB_PROCESS
 002884         ?C0281?KB_PROCESS:
- 1048: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
+ 1047: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
 002884 EB                MOV     A,R3
 002885 B4D809            CJNE    A,#0D8H,?C0283?KB_PROCESS
- 1049: 			{
- 1050: 				kb_set_multikey(0x006f);
+ 1048: 			{
+ 1049: 				kb_set_multikey(0x006f);
 002888 7F6F              MOV     R7,#06FH
 00288A 7E00              MOV     R6,#00H
 00288C 122635            LCALL   _kb_set_multikey
- 1051: 			}	
+ 1050: 			}	
 00288F 2135              AJMP    ?C0246?KB_PROCESS
 002891         ?C0283?KB_PROCESS:
- 1052: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
+ 1051: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
 002891 904ED9            MOV     DPTR,#pEvt
 002894 E0                MOVX    A,@DPTR
 002895 FB                MOV     R3,A
@@ -7585,25 +7585,25 @@
 0028AA 1203B6            LCALL   ?C?CLDPTR
 0028AD FB                MOV     R3,A
 0028AE B4D907            CJNE    A,#0D9H,?C0285?KB_PROCESS
- 1053: 		      	{
- 1054: 		        	kb_set_multikey(0x00b8);
+ 1052: 		      	{
+ 1053: 		        	kb_set_multikey(0x00b8);
 0028B1 7FB8              MOV     R7,#0B8H
 0028B3 122635            LCALL   _kb_set_multikey
- 1055: 		      	}
+ 1054: 		      	}
 0028B6 807D              SJMP    ?C0246?KB_PROCESS
 0028B8         ?C0285?KB_PROCESS:
- 1056: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
+ 1055: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
 0028B8 EB                MOV     A,R3
 0028B9 B4DA09            CJNE    A,#0DAH,?C0287?KB_PROCESS
- 1057: 		      	{
- 1058: 		        	kb_set_multikey(0x0030);
+ 1056: 		      	{
+ 1057: 		        	kb_set_multikey(0x0030);
 0028BC 7F30              MOV     R7,#030H
 0028BE 7E00              MOV     R6,#00H
 0028C0 122635            LCALL   _kb_set_multikey
- 1059: 		      	}	
+ 1058: 		      	}	
 0028C3 8070              SJMP    ?C0246?KB_PROCESS
 0028C5         ?C0287?KB_PROCESS:
- 1060: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
+ 1059: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
 0028C5 904ED9            MOV     DPTR,#pEvt
 0028C8 E0                MOVX    A,@DPTR
 0028C9 FB                MOV     R3,A
@@ -7628,26 +7628,26 @@
 0028DE 1203B6            LCALL   ?C?CLDPTR
 0028E1 FB                MOV     R3,A
 0028E2 B4DB09            CJNE    A,#0DBH,?C0289?KB_PROCESS
- 1061: 		      	{
- 1062: 		        	kb_set_multikey(0x0306);
+ 1060: 		      	{
+ 1061: 		        	kb_set_multikey(0x0306);
 0028E5 7F06              MOV     R7,#06H
 0028E7 7E03              MOV     R6,#03H
 0028E9 122635            LCALL   _kb_set_multikey
- 1063: 		      	}
+ 1062: 		      	}
 0028EC 8047              SJMP    ?C0246?KB_PROCESS
 0028EE         ?C0289?KB_PROCESS:
- 1064: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
+ 1063: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
 0028EE EB                MOV     A,R3
 0028EF B4DC09            CJNE    A,#0DCH,?C0291?KB_PROCESS
- 1065: 		      	{
- 1066: 		        	kb_set_multikey(0x0307);
+ 1064: 		      	{
+ 1065: 		        	kb_set_multikey(0x0307);
 0028F2 7F07              MOV     R7,#07H
 0028F4 7E03              MOV     R6,#03H
 0028F6 122635            LCALL   _kb_set_multikey
- 1067: 		      	}
+ 1066: 		      	}
 0028F9 803A              SJMP    ?C0246?KB_PROCESS
 0028FB         ?C0291?KB_PROCESS:
- 1068: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
+ 1067: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
 0028FB 904ED9            MOV     DPTR,#pEvt
 0028FE E0                MOVX    A,@DPTR
 0028FF FB                MOV     R3,A
@@ -7672,39 +7672,39 @@
 002914 1203B6            LCALL   ?C?CLDPTR
 002917 FE                MOV     R6,A
 002918 B4DD06            CJNE    A,#0DDH,?C0293?KB_PROCESS
- 1069: 		      	{
- 1070: 		        	kb_set_systemkey(0x01);
+ 1068: 		      	{
+ 1069: 		        	kb_set_systemkey(0x01);
 00291B 7F01              MOV     R7,#01H
 00291D 316A              ACALL   _kb_set_systemkey
- 1071: 		      	}
+ 1070: 		      	}
 00291F 8014              SJMP    ?C0246?KB_PROCESS
 002921         ?C0293?KB_PROCESS:
- 1072: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
+ 1071: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
 002921 EE                MOV     A,R6
 002922 B4DE06            CJNE    A,#0DEH,?C0295?KB_PROCESS
- 1073: 		      	{
- 1074: 		        	kb_set_systemkey(0x02);
+ 1072: 		      	{
+ 1073: 		        	kb_set_systemkey(0x02);
 002925 7F02              MOV     R7,#02H
 002927 316A              ACALL   _kb_set_systemkey
- 1075: 		      	}
+ 1074: 		      	}
 002929 800A              SJMP    ?C0246?KB_PROCESS
 00292B         ?C0295?KB_PROCESS:
- 1076: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
+ 1075: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
 00292B 1203B6            LCALL   ?C?CLDPTR
 00292E B4DF04            CJNE    A,#0DFH,?C0246?KB_PROCESS
- 1077: 		      	{
- 1078: 		        	kb_set_systemkey(0x04);
+ 1076: 		      	{
+ 1077: 		        	kb_set_systemkey(0x04);
 002931 7F04              MOV     R7,#04H
 002933 316A              ACALL   _kb_set_systemkey
- 1079: 		      	}
+ 1078: 		      	}
 002935         ?C0246?KB_PROCESS:
- 1080: 			
- 1081: 			if(mult_key_status == KEY_WAIT_RELEASE)
+ 1079: 			
+ 1080: 			if(mult_key_status == KEY_WAIT_RELEASE)
 002935 904E4B            MOV     DPTR,#mult_key_status
 002938 E0                MOVX    A,@DPTR
 002939 B40224            CJNE    A,#02H,?C0242?KB_PROCESS
- 1082: 			{
- 1083: 				mult_key_value = pEvt->ksPool[i];
+ 1081: 			{
+ 1082: 				mult_key_value = pEvt->ksPool[i];
 00293C 904ED9            MOV     DPTR,#pEvt
 00293F E0                MOVX    A,@DPTR
 002940 FB                MOV     R3,A
@@ -7729,19 +7729,19 @@
 002955 1203B6            LCALL   ?C?CLDPTR
 002958 904DED            MOV     DPTR,#mult_key_value
 00295B F0                MOVX    @DPTR,A
- 1084: 				pEvt->ksPool[i] = 0;
+ 1083: 				pEvt->ksPool[i] = 0;
 00295C E4                CLR     A
 00295D 1203FC            LCALL   ?C?CSTPTR
- 1085: 			}
- 1086: 		}
- 1087: 	}
+ 1084: 			}
+ 1085: 		}
+ 1086: 	}
 002960         ?C0242?KB_PROCESS:
 002960 904EDC            MOV     DPTR,#i
 002963 E0                MOVX    A,@DPTR
 002964 04                INC     A
 002965 F0                MOVX    @DPTR,A
 002966 02265F            LJMP    ?C0240?KB_PROCESS
- 1088: }
+ 1087: }
 002969         ?C0299?KB_PROCESS:
 002969 22                RET     
 ----- FUNCTION _kb_multikey_setup (END) -------
@@ -8608,810 +8608,806 @@
 002D40 F0                MOVX    @DPTR,A
   696: 	}
 002D41         ?C0164?KB_PROCESS:
-  697: 	if( (fn_flag == 0 && g_variable.system_mode == OSMODE_WINDOWS) ||
+  697: 	if( (fn_flag == 1 && g_variable.system_mode == OSMODE_WINDOWS) ||
 002D41 904DE2            MOV     DPTR,#fn_flag
 002D44 E0                MOVX    A,@DPTR
-002D45 7005              JNZ     ?C0168?KB_PROCESS
-002D47 EE                MOV     A,R6
-002D48 6402              XRL     A,#02H
-002D4A 601E              JZ      ?C0167?KB_PROCESS
-002D4C         ?C0168?KB_PROCESS:
-002D4C 904DE2            MOV     DPTR,#fn_flag
-002D4F E0                MOVX    A,@DPTR
-002D50 7006              JNZ     ?C0169?KB_PROCESS
-002D52 904CC1            MOV     DPTR,#g_variable+02H
-002D55 E0                MOVX    A,@DPTR
-002D56 6012              JZ      ?C0167?KB_PROCESS
-002D58         ?C0169?KB_PROCESS:
-002D58 904DE2            MOV     DPTR,#fn_flag
-002D5B E0                MOVX    A,@DPTR
-002D5C 6002              JZ      $ + 4H
-002D5E E109              AJMP    ?C0166?KB_PROCESS
-002D60 904CC1            MOV     DPTR,#g_variable+02H
-002D63 E0                MOVX    A,@DPTR
-002D64 6401              XRL     A,#01H
-002D66 6002              JZ      $ + 4H
-002D68 E109              AJMP    ?C0166?KB_PROCESS
-002D6A         ?C0167?KB_PROCESS:
-  698: 		 (fn_flag == 0 && g_variable.system_mode == OSMODE_IOS) ||
-  699: 		 (fn_flag == 0 && g_variable.system_mode == OSMODE_ANDROID))
+002D45 B40105            CJNE    A,#01H,?C0168?KB_PROCESS
+002D48 EE                MOV     A,R6
+002D49 6402              XRL     A,#02H
+002D4B 6021              JZ      ?C0167?KB_PROCESS
+002D4D         ?C0168?KB_PROCESS:
+002D4D 904DE2            MOV     DPTR,#fn_flag
+002D50 E0                MOVX    A,@DPTR
+002D51 B40106            CJNE    A,#01H,?C0169?KB_PROCESS
+002D54 904CC1            MOV     DPTR,#g_variable+02H
+002D57 E0                MOVX    A,@DPTR
+002D58 6014              JZ      ?C0167?KB_PROCESS
+002D5A         ?C0169?KB_PROCESS:
+002D5A 904DE2            MOV     DPTR,#fn_flag
+002D5D E0                MOVX    A,@DPTR
+002D5E 6401              XRL     A,#01H
+002D60 6002              JZ      $ + 4H
+002D62 E108              AJMP    ?C0166?KB_PROCESS
+002D64 904CC1            MOV     DPTR,#g_variable+02H
+002D67 E0                MOVX    A,@DPTR
+002D68 6401              XRL     A,#01H
+002D6A 6002              JZ      $ + 4H
+002D6C E108              AJMP    ?C0166?KB_PROCESS
+002D6E         ?C0167?KB_PROCESS:
+  698: 		 (fn_flag == 1 && g_variable.system_mode == OSMODE_IOS) ||
+  699: 		 (fn_flag == 1 && g_variable.system_mode == OSMODE_ANDROID))
   700: 	{	
   701: 		switch (key_value)
-002D6A 904EEC            MOV     DPTR,#key_value
-002D6D E0                MOVX    A,@DPTR
-002D6E 24C6              ADD     A,#0C6H
-002D70 B40C00            CJNE    A,#0CH,?C0302?KB_PROCESS
-002D73         ?C0302?KB_PROCESS:
-002D73 4002              JC      $ + 4H
-002D75 E109              AJMP    ?C0166?KB_PROCESS
-002D77 902D85            MOV     DPTR,#02D85H
-002D7A 75F003            MOV     B,#03H
-002D7D A4                MUL     AB
-002D7E C583              XCH     A,DPH
-002D80 25F0              ADD     A,B
+002D6E 904EEC            MOV     DPTR,#key_value
+002D71 E0                MOVX    A,@DPTR
+002D72 24C6              ADD     A,#0C6H
+002D74 B40C00            CJNE    A,#0CH,?C0302?KB_PROCESS
+002D77         ?C0302?KB_PROCESS:
+002D77 4002              JC      $ + 4H
+002D79 E108              AJMP    ?C0166?KB_PROCESS
+002D7B 902D89            MOV     DPTR,#02D89H
+002D7E 75F003            MOV     B,#03H
+002D81 A4                MUL     AB
 002D82 C583              XCH     A,DPH
-002D84 73                JMP     @A+DPTR
-002D85         ?C0303?KB_PROCESS:
-002D85 022DA9            LJMP    ?C0171?KB_PROCESS
-002D88 022DB1            LJMP    ?C0172?KB_PROCESS
-002D8B 022DB9            LJMP    ?C0173?KB_PROCESS
-002D8E 022DF8            LJMP    ?C0178?KB_PROCESS
-002D91 022E37            LJMP    ?C0183?KB_PROCESS
-002D94 022E76            LJMP    ?C0188?KB_PROCESS
-002D97 022EB5            LJMP    ?C0193?KB_PROCESS
-002D9A 022EBD            LJMP    ?C0194?KB_PROCESS
-002D9D 022EC5            LJMP    ?C0195?KB_PROCESS
-002DA0 022ECD            LJMP    ?C0196?KB_PROCESS
-002DA3 022ED5            LJMP    ?C0197?KB_PROCESS
-002DA6 022EDD            LJMP    ?C0198?KB_PROCESS
+002D84 25F0              ADD     A,B
+002D86 C583              XCH     A,DPH
+002D88 73                JMP     @A+DPTR
+002D89         ?C0303?KB_PROCESS:
+002D89 022DAD            LJMP    ?C0171?KB_PROCESS
+002D8C 022DB5            LJMP    ?C0172?KB_PROCESS
+002D8F 022DBD            LJMP    ?C0173?KB_PROCESS
+002D92 022DFC            LJMP    ?C0178?KB_PROCESS
+002D95 022E3B            LJMP    ?C0183?KB_PROCESS
+002D98 022E7A            LJMP    ?C0188?KB_PROCESS
+002D9B 022EB9            LJMP    ?C0193?KB_PROCESS
+002D9E 022EC1            LJMP    ?C0194?KB_PROCESS
+002DA1 022EC9            LJMP    ?C0195?KB_PROCESS
+002DA4 022ED1            LJMP    ?C0196?KB_PROCESS
+002DA7 022ED9            LJMP    ?C0197?KB_PROCESS
+002DAA 022EE1            LJMP    ?C0198?KB_PROCESS
   702: 		{ 	
   703: 			case HID_KEY_F1:
-002DA9         ?C0171?KB_PROCESS:
+002DAD         ?C0171?KB_PROCESS:
   704: 				temp = HID_MULTIKEY_AC_HOME;	
-002DA9 904EED            MOV     DPTR,#temp
-002DAC 74D6              MOV     A,#0D6H
-002DAE F0                MOVX    @DPTR,A
+002DAD 904EED            MOV     DPTR,#temp
+002DB0 74D6              MOV     A,#0D6H
+002DB2 F0                MOVX    @DPTR,A
   705: 				break;
-002DAF E109              AJMP    ?C0166?KB_PROCESS
+002DB3 E108              AJMP    ?C0166?KB_PROCESS
   706: 			case HID_KEY_F2:
-002DB1         ?C0172?KB_PROCESS:
+002DB5         ?C0172?KB_PROCESS:
   707: 				temp = HID_MULTIKEY_AC_SEARCH;
-002DB1 904EED            MOV     DPTR,#temp
-002DB4 74D5              MOV     A,#0D5H
-002DB6 F0                MOVX    @DPTR,A
+002DB5 904EED            MOV     DPTR,#temp
+002DB8 74D5              MOV     A,#0D5H
+002DBA F0                MOVX    @DPTR,A
   708: 				break;
-002DB7 E109              AJMP    ?C0166?KB_PROCESS
+002DBB E108              AJMP    ?C0166?KB_PROCESS
   709: 			case HID_KEY_F3:
-002DB9         ?C0173?KB_PROCESS:
+002DBD         ?C0173?KB_PROCESS:
   710: 				if(g_variable.system_mode == OSMODE_IOS)		
-002DB9 904CC1            MOV     DPTR,#g_variable+02H
-002DBC E0                MOVX    A,@DPTR
-002DBD 701A              JNZ     ?C0174?KB_PROCESS
+002DBD 904CC1            MOV     DPTR,#g_variable+02H
+002DC0 E0                MOVX    A,@DPTR
+002DC1 701A              JNZ     ?C0174?KB_PROCESS
   711: 				{
   712: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_A);
-002DBF 904EEB            MOV     DPTR,#state
-002DC2 E0                MOVX    A,@DPTR
-002DC3 FF                MOV     R7,A
-002DC4 7B04              MOV     R3,#04H
-002DC6 7D08              MOV     R5,#08H
-002DC8 91EC              ACALL   _kb_combination_key_press
+002DC3 904EEB            MOV     DPTR,#state
+002DC6 E0                MOVX    A,@DPTR
+002DC7 FF                MOV     R7,A
+002DC8 7B04              MOV     R3,#04H
+002DCA 7D08              MOV     R5,#08H
+002DCC 91EC              ACALL   _kb_combination_key_press
   713: 					if(state & 1)
-002DCA 904EEB            MOV     DPTR,#state
-002DCD E0                MOVX    A,@DPTR
-002DCE 30E020            JNB     ACC.0,?C0176?KB_PROCESS
+002DCE 904EEB            MOV     DPTR,#state
+002DD1 E0                MOVX    A,@DPTR
+002DD2 30E020            JNB     ACC.0,?C0176?KB_PROCESS
   714: 					{						
   715: 					g_variable.one_key_press_wait_release_timer = 10;
-002DD1 904CFA            MOV     DPTR,#g_variable+03BH
-002DD4 740A              MOV     A,#0AH
-002DD6 F0                MOVX    @DPTR,A
+002DD5 904CFA            MOV     DPTR,#g_variable+03BH
+002DD8 740A              MOV     A,#0AH
+002DDA F0                MOVX    @DPTR,A
   716: 					}	
   717: 				}
-002DD7 8018              SJMP    ?C0176?KB_PROCESS
-002DD9         ?C0174?KB_PROCESS:
+002DDB 8018              SJMP    ?C0176?KB_PROCESS
+002DDD         ?C0174?KB_PROCESS:
   718: 				else
   719: 				{
-  720: 				kb_combination_key_press(state,KS_SEL_LALT,HID_KEY_A);
-002DD9 904EEB            MOV     DPTR,#state
-002DDC E0                MOVX    A,@DPTR
-002DDD FF                MOV     R7,A
-002DDE 7B04              MOV     R3,#04H
-002DE0 7D04              MOV     R5,#04H
-002DE2 91EC              ACALL   _kb_combination_key_press
+  720: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_A);
+002DDD 904EEB            MOV     DPTR,#state
+002DE0 E0                MOVX    A,@DPTR
+002DE1 FF                MOV     R7,A
+002DE2 7B04              MOV     R3,#04H
+002DE4 7D01              MOV     R5,#01H
+002DE6 91EC              ACALL   _kb_combination_key_press
   721: 					if(state & 1)    
-002DE4 904EEB            MOV     DPTR,#state
-002DE7 E0                MOVX    A,@DPTR
-002DE8 30E006            JNB     ACC.0,?C0176?KB_PROCESS
+002DE8 904EEB            MOV     DPTR,#state
+002DEB E0                MOVX    A,@DPTR
+002DEC 30E006            JNB     ACC.0,?C0176?KB_PROCESS
   722: 					{            
   723: 					g_variable.one_key_press_wait_release_timer = 10;     
-002DEB 904CFA            MOV     DPTR,#g_variable+03BH
-002DEE 740A              MOV     A,#0AH
-002DF0 F0                MOVX    @DPTR,A
+002DEF 904CFA            MOV     DPTR,#g_variable+03BH
+002DF2 740A              MOV     A,#0AH
+002DF4 F0                MOVX    @DPTR,A
   724: 					}	
   725: 				}	
-002DF1         ?C0176?KB_PROCESS:
+002DF5         ?C0176?KB_PROCESS:
   726: 				temp = HID_KEY_NULL;
-002DF1 E4                CLR     A
-002DF2 904EED            MOV     DPTR,#temp
-002DF5 F0                MOVX    @DPTR,A
+002DF5 E4                CLR     A
+002DF6 904EED            MOV     DPTR,#temp
+002DF9 F0                MOVX    @DPTR,A
   727: 				break;
-002DF6 E109              AJMP    ?C0166?KB_PROCESS
+002DFA E108              AJMP    ?C0166?KB_PROCESS
   728: 			case HID_KEY_F4:
-002DF8         ?C0178?KB_PROCESS:
+002DFC         ?C0178?KB_PROCESS:
   729: 				if(g_variable.system_mode == OSMODE_IOS)		
-002DF8 904CC1            MOV     DPTR,#g_variable+02H
-002DFB E0                MOVX    A,@DPTR
-002DFC 701A              JNZ     ?C0179?KB_PROCESS
+002DFC 904CC1            MOV     DPTR,#g_variable+02H
+002DFF E0                MOVX    A,@DPTR
+002E00 701A              JNZ     ?C0179?KB_PROCESS
   730: 				{
   731: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_C);
-002DFE 904EEB            MOV     DPTR,#state
-002E01 E0                MOVX    A,@DPTR
-002E02 FF                MOV     R7,A
-002E03 7B06              MOV     R3,#06H
-002E05 7D08              MOV     R5,#08H
-002E07 91EC              ACALL   _kb_combination_key_press
+002E02 904EEB            MOV     DPTR,#state
+002E05 E0                MOVX    A,@DPTR
+002E06 FF                MOV     R7,A
+002E07 7B06              MOV     R3,#06H
+002E09 7D08              MOV     R5,#08H
+002E0B 91EC              ACALL   _kb_combination_key_press
   732: 					if(state & 1)
-002E09 904EEB            MOV     DPTR,#state
-002E0C E0                MOVX    A,@DPTR
-002E0D 30E020            JNB     ACC.0,?C0181?KB_PROCESS
+002E0D 904EEB            MOV     DPTR,#state
+002E10 E0                MOVX    A,@DPTR
+002E11 30E020            JNB     ACC.0,?C0181?KB_PROCESS
   733: 					{						
   734: 					g_variable.one_key_press_wait_release_timer = 10;
-002E10 904CFA            MOV     DPTR,#g_variable+03BH
-002E13 740A              MOV     A,#0AH
-002E15 F0                MOVX    @DPTR,A
+002E14 904CFA            MOV     DPTR,#g_variable+03BH
+002E17 740A              MOV     A,#0AH
+002E19 F0                MOVX    @DPTR,A
   735: 					}	
   736: 				}
-002E16 8018              SJMP    ?C0181?KB_PROCESS
-002E18         ?C0179?KB_PROCESS:
+002E1A 8018              SJMP    ?C0181?KB_PROCESS
+002E1C         ?C0179?KB_PROCESS:
   737: 				else
   738: 				{
   739: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_C);
-002E18 904EEB            MOV     DPTR,#state
-002E1B E0                MOVX    A,@DPTR
-002E1C FF                MOV     R7,A
-002E1D 7B06              MOV     R3,#06H
-002E1F 7D01              MOV     R5,#01H
-002E21 91EC              ACALL   _kb_combination_key_press
+002E1C 904EEB            MOV     DPTR,#state
+002E1F E0                MOVX    A,@DPTR
+002E20 FF                MOV     R7,A
+002E21 7B06              MOV     R3,#06H
+002E23 7D01              MOV     R5,#01H
+002E25 91EC              ACALL   _kb_combination_key_press
   740: 					if(state & 1)    
-002E23 904EEB            MOV     DPTR,#state
-002E26 E0                MOVX    A,@DPTR
-002E27 30E006            JNB     ACC.0,?C0181?KB_PROCESS
+002E27 904EEB            MOV     DPTR,#state
+002E2A E0                MOVX    A,@DPTR
+002E2B 30E006            JNB     ACC.0,?C0181?KB_PROCESS
   741: 					{            
   742: 					g_variable.one_key_press_wait_release_timer = 10;     
-002E2A 904CFA            MOV     DPTR,#g_variable+03BH
-002E2D 740A              MOV     A,#0AH
-002E2F F0                MOVX    @DPTR,A
+002E2E 904CFA            MOV     DPTR,#g_variable+03BH
+002E31 740A              MOV     A,#0AH
+002E33 F0                MOVX    @DPTR,A
   743: 					}	
   744: 				}	
-002E30         ?C0181?KB_PROCESS:
+002E34         ?C0181?KB_PROCESS:
   745: 				temp = HID_KEY_NULL;
-002E30 E4                CLR     A
-002E31 904EED            MOV     DPTR,#temp
-002E34 F0                MOVX    @DPTR,A
+002E34 E4                CLR     A
+002E35 904EED            MOV     DPTR,#temp
+002E38 F0                MOVX    @DPTR,A
   746: 
   747: 				break;
-002E35 E109              AJMP    ?C0166?KB_PROCESS
+002E39 E108              AJMP    ?C0166?KB_PROCESS
   748: 			case HID_KEY_F5:
-002E37         ?C0183?KB_PROCESS:
+002E3B         ?C0183?KB_PROCESS:
   749: 				if(g_variable.system_mode == OSMODE_IOS)		
-002E37 904CC1            MOV     DPTR,#g_variable+02H
-002E3A E0                MOVX    A,@DPTR
-002E3B 701A              JNZ     ?C0184?KB_PROCESS
+002E3B 904CC1            MOV     DPTR,#g_variable+02H
+002E3E E0                MOVX    A,@DPTR
+002E3F 701A              JNZ     ?C0184?KB_PROCESS
   750: 				{
   751: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_V);
-002E3D 904EEB            MOV     DPTR,#state
-002E40 E0                MOVX    A,@DPTR
-002E41 FF                MOV     R7,A
-002E42 7B19              MOV     R3,#019H
-002E44 7D08              MOV     R5,#08H
-002E46 91EC              ACALL   _kb_combination_key_press
+002E41 904EEB            MOV     DPTR,#state
+002E44 E0                MOVX    A,@DPTR
+002E45 FF                MOV     R7,A
+002E46 7B19              MOV     R3,#019H
+002E48 7D08              MOV     R5,#08H
+002E4A 91EC              ACALL   _kb_combination_key_press
   752: 					if(state & 1)
-002E48 904EEB            MOV     DPTR,#state
-002E4B E0                MOVX    A,@DPTR
-002E4C 30E020            JNB     ACC.0,?C0186?KB_PROCESS
+002E4C 904EEB            MOV     DPTR,#state
+002E4F E0                MOVX    A,@DPTR
+002E50 30E020            JNB     ACC.0,?C0186?KB_PROCESS
   753: 					{						
   754: 					g_variable.one_key_press_wait_release_timer = 10;
-002E4F 904CFA            MOV     DPTR,#g_variable+03BH
-002E52 740A              MOV     A,#0AH
-002E54 F0                MOVX    @DPTR,A
+002E53 904CFA            MOV     DPTR,#g_variable+03BH
+002E56 740A              MOV     A,#0AH
+002E58 F0                MOVX    @DPTR,A
   755: 					}	
   756: 				}
-002E55 8018              SJMP    ?C0186?KB_PROCESS
-002E57         ?C0184?KB_PROCESS:
+002E59 8018              SJMP    ?C0186?KB_PROCESS
+002E5B         ?C0184?KB_PROCESS:
   757: 				else
   758: 				{
   759: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_V);
-002E57 904EEB            MOV     DPTR,#state
-002E5A E0                MOVX    A,@DPTR
-002E5B FF                MOV     R7,A
-002E5C 7B19              MOV     R3,#019H
-002E5E 7D01              MOV     R5,#01H
-002E60 91EC              ACALL   _kb_combination_key_press
+002E5B 904EEB            MOV     DPTR,#state
+002E5E E0                MOVX    A,@DPTR
+002E5F FF                MOV     R7,A
+002E60 7B19              MOV     R3,#019H
+002E62 7D01              MOV     R5,#01H
+002E64 91EC              ACALL   _kb_combination_key_press
   760: 					if(state & 1)    
-002E62 904EEB            MOV     DPTR,#state
-002E65 E0                MOVX    A,@DPTR
-002E66 30E006            JNB     ACC.0,?C0186?KB_PROCESS
+002E66 904EEB            MOV     DPTR,#state
+002E69 E0                MOVX    A,@DPTR
+002E6A 30E006            JNB     ACC.0,?C0186?KB_PROCESS
   761: 					{            
   762: 					g_variable.one_key_press_wait_release_timer = 10;     
-002E69 904CFA            MOV     DPTR,#g_variable+03BH
-002E6C 740A              MOV     A,#0AH
-002E6E F0                MOVX    @DPTR,A
+002E6D 904CFA            MOV     DPTR,#g_variable+03BH
+002E70 740A              MOV     A,#0AH
+002E72 F0                MOVX    @DPTR,A
   763: 					}	
   764: 				}	
-002E6F         ?C0186?KB_PROCESS:
+002E73         ?C0186?KB_PROCESS:
   765: 				temp = HID_KEY_NULL;
-002E6F E4                CLR     A
-002E70 904EED            MOV     DPTR,#temp
-002E73 F0                MOVX    @DPTR,A
+002E73 E4                CLR     A
+002E74 904EED            MOV     DPTR,#temp
+002E77 F0                MOVX    @DPTR,A
   766: 
   767: 				break;
-002E74 E109              AJMP    ?C0166?KB_PROCESS
+002E78 E108              AJMP    ?C0166?KB_PROCESS
   768: 			case HID_KEY_F6:
-002E76         ?C0188?KB_PROCESS:
+002E7A         ?C0188?KB_PROCESS:
   769: 				if(g_variable.system_mode == OSMODE_IOS)		
-002E76 904CC1            MOV     DPTR,#g_variable+02H
-002E79 E0                MOVX    A,@DPTR
-002E7A 701A              JNZ     ?C0189?KB_PROCESS
+002E7A 904CC1            MOV     DPTR,#g_variable+02H
+002E7D E0                MOVX    A,@DPTR
+002E7E 701A              JNZ     ?C0189?KB_PROCESS
   770: 				{
   771: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_X);
-002E7C 904EEB            MOV     DPTR,#state
-002E7F E0                MOVX    A,@DPTR
-002E80 FF                MOV     R7,A
-002E81 7B1B              MOV     R3,#01BH
-002E83 7D08              MOV     R5,#08H
-002E85 91EC              ACALL   _kb_combination_key_press
+002E80 904EEB            MOV     DPTR,#state
+002E83 E0                MOVX    A,@DPTR
+002E84 FF                MOV     R7,A
+002E85 7B1B              MOV     R3,#01BH
+002E87 7D08              MOV     R5,#08H
+002E89 91EC              ACALL   _kb_combination_key_press
   772: 					if(state & 1)
-002E87 904EEB            MOV     DPTR,#state
-002E8A E0                MOVX    A,@DPTR
-002E8B 30E020            JNB     ACC.0,?C0191?KB_PROCESS
+002E8B 904EEB            MOV     DPTR,#state
+002E8E E0                MOVX    A,@DPTR
+002E8F 30E020            JNB     ACC.0,?C0191?KB_PROCESS
   773: 					{						
   774: 					g_variable.one_key_press_wait_release_timer = 10;
-002E8E 904CFA            MOV     DPTR,#g_variable+03BH
-002E91 740A              MOV     A,#0AH
-002E93 F0                MOVX    @DPTR,A
+002E92 904CFA            MOV     DPTR,#g_variable+03BH
+002E95 740A              MOV     A,#0AH
+002E97 F0                MOVX    @DPTR,A
   775: 					}	
   776: 				}
-002E94 8018              SJMP    ?C0191?KB_PROCESS
-002E96         ?C0189?KB_PROCESS:
+002E98 8018              SJMP    ?C0191?KB_PROCESS
+002E9A         ?C0189?KB_PROCESS:
   777: 				else
   778: 				{
   779: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_X);
-002E96 904EEB            MOV     DPTR,#state
-002E99 E0                MOVX    A,@DPTR
-002E9A FF                MOV     R7,A
-002E9B 7B1B              MOV     R3,#01BH
-002E9D 7D01              MOV     R5,#01H
-002E9F 91EC              ACALL   _kb_combination_key_press
+002E9A 904EEB            MOV     DPTR,#state
+002E9D E0                MOVX    A,@DPTR
+002E9E FF                MOV     R7,A
+002E9F 7B1B              MOV     R3,#01BH
+002EA1 7D01              MOV     R5,#01H
+002EA3 91EC              ACALL   _kb_combination_key_press
   780: 					if(state & 1)    
-002EA1 904EEB            MOV     DPTR,#state
-002EA4 E0                MOVX    A,@DPTR
-002EA5 30E006            JNB     ACC.0,?C0191?KB_PROCESS
+002EA5 904EEB            MOV     DPTR,#state
+002EA8 E0                MOVX    A,@DPTR
+002EA9 30E006            JNB     ACC.0,?C0191?KB_PROCESS
   781: 					{            
   782: 					g_variable.one_key_press_wait_release_timer = 10;     
-002EA8 904CFA            MOV     DPTR,#g_variable+03BH
-002EAB 740A              MOV     A,#0AH
-002EAD F0                MOVX    @DPTR,A
+002EAC 904CFA            MOV     DPTR,#g_variable+03BH
+002EAF 740A              MOV     A,#0AH
+002EB1 F0                MOVX    @DPTR,A
   783: 					}	
   784: 				}	
-002EAE         ?C0191?KB_PROCESS:
+002EB2         ?C0191?KB_PROCESS:
   785: 				temp = HID_KEY_NULL;
-002EAE E4                CLR     A
-002EAF 904EED            MOV     DPTR,#temp
-002EB2 F0                MOVX    @DPTR,A
+002EB2 E4                CLR     A
+002EB3 904EED            MOV     DPTR,#temp
+002EB6 F0                MOVX    @DPTR,A
   786: 				break;
-002EB3 8054              SJMP    ?C0166?KB_PROCESS
+002EB7 804F              SJMP    ?C0166?KB_PROCESS
   787: 			case HID_KEY_F7:
-002EB5         ?C0193?KB_PROCESS:
+002EB9         ?C0193?KB_PROCESS:
   788: 				temp = HID_MULTIKEY_PRE_TRACK;
-002EB5 904EED            MOV     DPTR,#temp
-002EB8 74F4              MOV     A,#0F4H
-002EBA F0                MOVX    @DPTR,A
+002EB9 904EED            MOV     DPTR,#temp
+002EBC 74F4              MOV     A,#0F4H
+002EBE F0                MOVX    @DPTR,A
   789: 				break;
-002EBB 804C              SJMP    ?C0166?KB_PROCESS
+002EBF 8047              SJMP    ?C0166?KB_PROCESS
   790: 			case HID_KEY_F8:
-002EBD         ?C0194?KB_PROCESS:
+002EC1         ?C0194?KB_PROCESS:
   791: 				temp = HID_MULTIKEY_PALY;
-002EBD 904EED            MOV     DPTR,#temp
-002EC0 74F2              MOV     A,#0F2H
-002EC2 F0                MOVX    @DPTR,A
+002EC1 904EED            MOV     DPTR,#temp
+002EC4 74F2              MOV     A,#0F2H
+002EC6 F0                MOVX    @DPTR,A
   792: 				break;
-002EC3 8044              SJMP    ?C0166?KB_PROCESS
+002EC7 803F              SJMP    ?C0166?KB_PROCESS
   793: 			case HID_KEY_F9:
-002EC5         ?C0195?KB_PROCESS:
+002EC9         ?C0195?KB_PROCESS:
   794: 				temp = HID_MULTIKEY_NEXT_TRACK;
-002EC5 904EED            MOV     DPTR,#temp
-002EC8 74F5              MOV     A,#0F5H
-002ECA F0                MOVX    @DPTR,A
+002EC9 904EED            MOV     DPTR,#temp
+002ECC 74F5              MOV     A,#0F5H
+002ECE F0                MOVX    @DPTR,A
   795: 				break;
-002ECB 803C              SJMP    ?C0166?KB_PROCESS
+002ECF 8037              SJMP    ?C0166?KB_PROCESS
   796: 			case HID_KEY_F10:
-002ECD         ?C0196?KB_PROCESS:
+002ED1         ?C0196?KB_PROCESS:
   797: 				temp = HID_MULTIKEY_VOL_DOWN;
-002ECD 904EED            MOV     DPTR,#temp
-002ED0 74F6              MOV     A,#0F6H
-002ED2 F0                MOVX    @DPTR,A
+002ED1 904EED            MOV     DPTR,#temp
+002ED4 74F6              MOV     A,#0F6H
+002ED6 F0                MOVX    @DPTR,A
   798: 				break;
-002ED3 8034              SJMP    ?C0166?KB_PROCESS
+002ED7 802F              SJMP    ?C0166?KB_PROCESS
   799: 			case HID_KEY_F11:
-002ED5         ?C0197?KB_PROCESS:
+002ED9         ?C0197?KB_PROCESS:
   800: 				temp = HID_MULTIKEY_VOL_UP;
-002ED5 904EED            MOV     DPTR,#temp
-002ED8 74F7              MOV     A,#0F7H
-002EDA F0                MOVX    @DPTR,A
+002ED9 904EED            MOV     DPTR,#temp
+002EDC 74F7              MOV     A,#0F7H
+002EDE F0                MOVX    @DPTR,A
   801: 				break;
-002EDB 802C              SJMP    ?C0166?KB_PROCESS
+002EDF 8027              SJMP    ?C0166?KB_PROCESS
   802: 			case HID_KEY_F12:	//language switch
-002EDD         ?C0198?KB_PROCESS:
+002EE1         ?C0198?KB_PROCESS:
   803: 				if(g_variable.system_mode == OSMODE_WINDOWS)		
-002EDD 904CC1            MOV     DPTR,#g_variable+02H
-002EE0 E0                MOVX    A,@DPTR
-002EE1 B4021A            CJNE    A,#02H,?C0199?KB_PROCESS
+002EE1 904CC1            MOV     DPTR,#g_variable+02H
+002EE4 E0                MOVX    A,@DPTR
+002EE5 B4021A            CJNE    A,#02H,?C0199?KB_PROCESS
   804: 				{
   805: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_L);
-002EE4 904EEB            MOV     DPTR,#state
-002EE7 E0                MOVX    A,@DPTR
-002EE8 FF                MOV     R7,A
-002EE9 7B0F              MOV     R3,#0FH
-002EEB 7D08              MOV     R5,#08H
-002EED 91EC              ACALL   _kb_combination_key_press
+002EE8 904EEB            MOV     DPTR,#state
+002EEB E0                MOVX    A,@DPTR
+002EEC FF                MOV     R7,A
+002EED 7B0F              MOV     R3,#0FH
+002EEF 7D08              MOV     R5,#08H
+002EF1 91EC              ACALL   _kb_combination_key_press
   806: 					if(state & 1)
-002EEF 904EEB            MOV     DPTR,#state
-002EF2 E0                MOVX    A,@DPTR
-002EF3 30E00E            JNB     ACC.0,?C0201?KB_PROCESS
+002EF3 904EEB            MOV     DPTR,#state
+002EF6 E0                MOVX    A,@DPTR
+002EF7 30E00E            JNB     ACC.0,?C0166?KB_PROCESS
   807: 					{						
   808: 					g_variable.one_key_press_wait_release_timer = 10;
-002EF6 904CFA            MOV     DPTR,#g_variable+03BH
-002EF9 740A              MOV     A,#0AH
-002EFB F0                MOVX    @DPTR,A
+002EFA 904CFA            MOV     DPTR,#g_variable+03BH
+002EFD 740A              MOV     A,#0AH
+002EFF F0                MOVX    @DPTR,A
   809: 					}	
   810: 				}
-002EFC 8006              SJMP    ?C0201?KB_PROCESS
-002EFE         ?C0199?KB_PROCESS:
+002F00 8006              SJMP    ?C0166?KB_PROCESS
+002F02         ?C0199?KB_PROCESS:
   811: 				else
   812: 				{
   813: 				temp = HID_MULTIKEY_OS_LOCK;
-002EFE 904EED            MOV     DPTR,#temp
-002F01 74DA              MOV     A,#0DAH
-002F03 F0                MOVX    @DPTR,A
+002F02 904EED            MOV     DPTR,#temp
+002F05 74DA              MOV     A,#0DAH
+002F07 F0                MOVX    @DPTR,A
   814: 				}	
-002F04         ?C0201?KB_PROCESS:
-  815: 				temp = HID_KEY_NULL;
-002F04 E4                CLR     A
-002F05 904EED            MOV     DPTR,#temp
-002F08 F0                MOVX    @DPTR,A
-  816: 				break;							
-  817: 			default :
-  818: 				break;	
-  819: 		}
-  820: 	}	
-002F09         ?C0166?KB_PROCESS:
-  821: 	if(fn_flag == 1)			// Fn lock
-002F09 904DE2            MOV     DPTR,#fn_flag
-002F0C E0                MOVX    A,@DPTR
-002F0D 6401              XRL     A,#01H
-002F0F 6003              JZ      $ + 5H
-002F11 0230FC            LJMP    ?C0203?KB_PROCESS
-  822: 	{
-  823: /*		 if(key_value == HID_KEY_ESC)
-  824: 		{
-  825: 			if(state & 1)
-  826: 			{						
-  827: 				if(fn_lock_flag)
-  828: 				{
-  829: 					fn_lock_flag = 0;
-  830: 				}
-  831: 				else
-  832: 					fn_lock_flag = 1;
-  833: 					
-  834: 				if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-  835: 				{
-  836: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-  837: 				}
-  838: 				else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-  839: 				{
-  840: 					bd_key_record_list[g_variable.current_device_num - 1].fn_lock = fn_lock_flag;
-  841: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-  842: 				}
-  843: 			}
-  844: 			temp = HID_KEY_NULL;
-  845: 		}	
-  846: */
-  847: 		switch (key_value)
-002F14 904EEC            MOV     DPTR,#key_value
-002F17 E0                MOVX    A,@DPTR
-002F18 24F8              ADD     A,#0F8H
-002F1A 7002              JNZ     $ + 4H
-002F1C E1F8              AJMP    ?C0219?KB_PROCESS
-002F1E 24EE              ADD     A,#0EEH
-002F20 607B              JZ      ?C0212?KB_PROCESS
-002F22 24CB              ADD     A,#0CBH
-002F24 7003              JNZ     $ + 5H
-002F26 02304E            LJMP    ?C0226?KB_PROCESS
-002F29 14                DEC     A
-002F2A 7003              JNZ     $ + 5H
-002F2C 02307A            LJMP    ?C0229?KB_PROCESS
-002F2F 14                DEC     A
-002F30 7003              JNZ     $ + 5H
-002F32 0230A6            LJMP    ?C0232?KB_PROCESS
-002F35 14                DEC     A
-002F36 7003              JNZ     $ + 5H
-002F38 0230D2            LJMP    ?C0235?KB_PROCESS
-002F3B 243E              ADD     A,#03EH
-002F3D 6003              JZ      $ + 5H
-002F3F 0230FC            LJMP    ?C0203?KB_PROCESS
-  848: 		{ 		
-  849: 			case HID_KEY_Q:
-002F42         ?C0205?KB_PROCESS:
-  850: 				if(g_variable.system_mode != OSMODE_ANDROID)
-002F42 904CC1            MOV     DPTR,#g_variable+02H
-002F45 E0                MOVX    A,@DPTR
-002F46 FF                MOV     R7,A
-002F47 6401              XRL     A,#01H
-002F49 6037              JZ      ?C0206?KB_PROCESS
-  851: 				{
-  852: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-002F4B 904CC3            MOV     DPTR,#g_variable+04H
-002F4E E0                MOVX    A,@DPTR
-002F4F FE                MOV     R6,A
-002F50 6003              JZ      ?C0208?KB_PROCESS
-002F52 B4FE08            CJNE    A,#0FEH,?C0207?KB_PROCESS
-002F55         ?C0208?KB_PROCESS:
-  853: 					{
-  854: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-002F55 904CBF            MOV     DPTR,#g_variable
-002F58 7402              MOV     A,#02H
-002F5A F0                MOVX    @DPTR,A
-  855: 					}
-002F5B 8025              SJMP    ?C0206?KB_PROCESS
-002F5D         ?C0207?KB_PROCESS:
-  856: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-002F5D EE                MOV     A,R6
-002F5E D3                SETB    C
-002F5F 9403              SUBB    A,#03H
-002F61 501F              JNC     ?C0206?KB_PROCESS
-002F63 EE                MOV     A,R6
-002F64 C3                CLR     C
-002F65 9401              SUBB    A,#01H
-002F67 4019              JC      ?C0206?KB_PROCESS
-  857: 					{
-  858: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-002F69 904CC3            MOV     DPTR,#g_variable+04H
-002F6C E0                MOVX    A,@DPTR
-002F6D 75F01F            MOV     B,#01FH
-002F70 A4                MUL     AB
-002F71 24EC              ADD     A,#LOW bd_key_record_list-02H
-002F73 F582              MOV     DPL,A
-002F75 E4                CLR     A
-002F76 344D              ADDC    A,#HIGH bd_key_record_list-02H
-002F78 F583              MOV     DPH,A
-002F7A EF                MOV     A,R7
-002F7B F0                MOVX    @DPTR,A
-  859: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-002F7C 904CBF            MOV     DPTR,#g_variable
-002F7F 7403              MOV     A,#03H
-002F81 F0                MOVX    @DPTR,A
-  860: 					}
-  861: 				}
-002F82         ?C0206?KB_PROCESS:
-  862: 				if(state & 1)
-002F82 904EEB            MOV     DPTR,#state
-002F85 E0                MOVX    A,@DPTR
-002F86 30E006            JNB     ACC.0,?C0211?KB_PROCESS
-  863: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-002F89 904CE8            MOV     DPTR,#g_variable+029H
-002F8C 740C              MOV     A,#0CH
-002F8E F0                MOVX    @DPTR,A
-002F8F         ?C0211?KB_PROCESS:
-  864: 				g_variable.system_mode = OSMODE_ANDROID;
-002F8F 904CC1            MOV     DPTR,#g_variable+02H
-002F92 7401              MOV     A,#01H
-002F94 F0                MOVX    @DPTR,A
-  865: 				temp = HID_KEY_NULL;
-002F95 E4                CLR     A
-002F96 904EED            MOV     DPTR,#temp
-002F99 F0                MOVX    @DPTR,A
-  866: 				break;
-002F9A 0230FC            LJMP    ?C0203?KB_PROCESS
-  867: 			case HID_KEY_W:
-002F9D         ?C0212?KB_PROCESS:
-  868: 				if(g_variable.system_mode != OSMODE_WINDOWS)
-002F9D 904CC1            MOV     DPTR,#g_variable+02H
-002FA0 E0                MOVX    A,@DPTR
-002FA1 FF                MOV     R7,A
-002FA2 6402              XRL     A,#02H
-002FA4 6037              JZ      ?C0213?KB_PROCESS
-  869: 				{
-  870: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-002FA6 904CC3            MOV     DPTR,#g_variable+04H
-002FA9 E0                MOVX    A,@DPTR
-002FAA FE                MOV     R6,A
-002FAB 6003              JZ      ?C0215?KB_PROCESS
-002FAD B4FE08            CJNE    A,#0FEH,?C0214?KB_PROCESS
-002FB0         ?C0215?KB_PROCESS:
-  871: 					{
-  872: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-002FB0 904CBF            MOV     DPTR,#g_variable
-002FB3 7402              MOV     A,#02H
-002FB5 F0                MOVX    @DPTR,A
-  873: 					}
-002FB6 8025              SJMP    ?C0213?KB_PROCESS
-002FB8         ?C0214?KB_PROCESS:
-  874: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-002FB8 EE                MOV     A,R6
-002FB9 D3                SETB    C
-002FBA 9403              SUBB    A,#03H
-002FBC 501F              JNC     ?C0213?KB_PROCESS
-002FBE EE                MOV     A,R6
-002FBF C3                CLR     C
-002FC0 9401              SUBB    A,#01H
-002FC2 4019              JC      ?C0213?KB_PROCESS
-  875: 					{
-  876: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-002FC4 904CC3            MOV     DPTR,#g_variable+04H
-002FC7 E0                MOVX    A,@DPTR
-002FC8 75F01F            MOV     B,#01FH
-002FCB A4                MUL     AB
-002FCC 24EC              ADD     A,#LOW bd_key_record_list-02H
-002FCE F582              MOV     DPL,A
-002FD0 E4                CLR     A
-002FD1 344D              ADDC    A,#HIGH bd_key_record_list-02H
-002FD3 F583              MOV     DPH,A
-002FD5 EF                MOV     A,R7
-002FD6 F0                MOVX    @DPTR,A
-  877: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-002FD7 904CBF            MOV     DPTR,#g_variable
-002FDA 7403              MOV     A,#03H
-002FDC F0                MOVX    @DPTR,A
-  878: 					}
-  879: 				}
-002FDD         ?C0213?KB_PROCESS:
-  880: 				if(state & 1)
-002FDD 904EEB            MOV     DPTR,#state
-002FE0 E0                MOVX    A,@DPTR
-002FE1 30E006            JNB     ACC.0,?C0218?KB_PROCESS
-  881: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-002FE4 904CE8            MOV     DPTR,#g_variable+029H
-002FE7 740C              MOV     A,#0CH
-002FE9 F0                MOVX    @DPTR,A
-002FEA         ?C0218?KB_PROCESS:
-  882: 				g_variable.system_mode = OSMODE_WINDOWS;
-002FEA 904CC1            MOV     DPTR,#g_variable+02H
-002FED 7402              MOV     A,#02H
-002FEF F0                MOVX    @DPTR,A
-  883: 				temp = HID_KEY_NULL;
-002FF0 E4                CLR     A
-002FF1 904EED            MOV     DPTR,#temp
-002FF4 F0                MOVX    @DPTR,A
-  884: 				break;
-002FF5 0230FC            LJMP    ?C0203?KB_PROCESS
-  885: 			case HID_KEY_E:
-002FF8         ?C0219?KB_PROCESS:
-  886: 				if(g_variable.system_mode != OSMODE_IOS)
-002FF8 904CC1            MOV     DPTR,#g_variable+02H
-002FFB E0                MOVX    A,@DPTR
-002FFC FF                MOV     R7,A
-002FFD 6037              JZ      ?C0220?KB_PROCESS
-  887: 				{
-  888: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-002FFF 904CC3            MOV     DPTR,#g_variable+04H
-003002 E0                MOVX    A,@DPTR
-003003 FE                MOV     R6,A
-003004 6003              JZ      ?C0222?KB_PROCESS
-003006 B4FE08            CJNE    A,#0FEH,?C0221?KB_PROCESS
-003009         ?C0222?KB_PROCESS:
-  889: 					{
-  890: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-003009 904CBF            MOV     DPTR,#g_variable
-00300C 7402              MOV     A,#02H
-00300E F0                MOVX    @DPTR,A
-  891: 					}
-00300F 8025              SJMP    ?C0220?KB_PROCESS
-003011         ?C0221?KB_PROCESS:
-  892: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-003011 EE                MOV     A,R6
-003012 D3                SETB    C
-003013 9403              SUBB    A,#03H
-003015 501F              JNC     ?C0220?KB_PROCESS
-003017 EE                MOV     A,R6
-003018 C3                CLR     C
-003019 9401              SUBB    A,#01H
-00301B 4019              JC      ?C0220?KB_PROCESS
-  893: 					{
-  894: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-00301D 904CC3            MOV     DPTR,#g_variable+04H
-003020 E0                MOVX    A,@DPTR
-003021 75F01F            MOV     B,#01FH
-003024 A4                MUL     AB
-003025 24EC              ADD     A,#LOW bd_key_record_list-02H
-003027 F582              MOV     DPL,A
-003029 E4                CLR     A
-00302A 344D              ADDC    A,#HIGH bd_key_record_list-02H
-00302C F583              MOV     DPH,A
-00302E EF                MOV     A,R7
-00302F F0                MOVX    @DPTR,A
-  895: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-003030 904CBF            MOV     DPTR,#g_variable
-003033 7403              MOV     A,#03H
-003035 F0                MOVX    @DPTR,A
-  896: 					}
-  897: 				}
-003036         ?C0220?KB_PROCESS:
-  898: 				if(state & 1)
-003036 904EEB            MOV     DPTR,#state
-003039 E0                MOVX    A,@DPTR
-00303A 30E006            JNB     ACC.0,?C0225?KB_PROCESS
-  899: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-00303D 904CE8            MOV     DPTR,#g_variable+029H
-003040 740C              MOV     A,#0CH
-003042 F0                MOVX    @DPTR,A
-003043         ?C0225?KB_PROCESS:
-  900: 				g_variable.system_mode = OSMODE_IOS;
-003043 E4                CLR     A
-003044 904CC1            MOV     DPTR,#g_variable+02H
-003047 F0                MOVX    @DPTR,A
-  901: 				temp = HID_KEY_NULL;
-003048 904EED            MOV     DPTR,#temp
-00304B F0                MOVX    @DPTR,A
-  902: 				break;		
-00304C 01FC              AJMP    ?C0203?KB_PROCESS
-  903: 			case HID_KEY_RIGHT_ARROW:	
-00304E         ?C0226?KB_PROCESS:
-  904: 				if(g_variable.system_mode == OSMODE_IOS)
-00304E 904CC1            MOV     DPTR,#g_variable+02H
-003051 E0                MOVX    A,@DPTR
-003052 701E              JNZ     ?C0227?KB_PROCESS
-  905: 				{
-  906: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_RIGHT_ARROW);
-003054 904EEB            MOV     DPTR,#state
-003057 E0                MOVX    A,@DPTR
-003058 FF                MOV     R7,A
-003059 7B4F              MOV     R3,#04FH
-00305B 7D08              MOV     R5,#08H
-00305D 122CEC            LCALL   _kb_combination_key_press
-  907: 					if(state & 1)    
-003060 904EEB            MOV     DPTR,#state
-003063 E0                MOVX    A,@DPTR
-003064 30E006            JNB     ACC.0,?C0228?KB_PROCESS
-  908: 					{            
-  909: 					g_variable.one_key_press_wait_release_timer = 10;     
-003067 904CFA            MOV     DPTR,#g_variable+03BH
-00306A 740A              MOV     A,#0AH
-00306C F0                MOVX    @DPTR,A
-  910: 					}	
-00306D         ?C0228?KB_PROCESS:
-  911: 				temp = HID_KEY_NULL;
-00306D E4                CLR     A
-00306E 904EED            MOV     DPTR,#temp
-003071 F0                MOVX    @DPTR,A
-  912: 				}					
-003072         ?C0227?KB_PROCESS:
-  913: 				temp = HID_KEY_END;
-003072 904EED            MOV     DPTR,#temp
-003075 744D              MOV     A,#04DH
-003077 F0                MOVX    @DPTR,A
-  914: 				break;			
-003078 01FC              AJMP    ?C0203?KB_PROCESS
-  915: 			case HID_KEY_LEFT_ARROW:
-00307A         ?C0229?KB_PROCESS:
-  916: 				if(g_variable.system_mode == OSMODE_IOS)
-00307A 904CC1            MOV     DPTR,#g_variable+02H
-00307D E0                MOVX    A,@DPTR
-00307E 701E              JNZ     ?C0230?KB_PROCESS
-  917: 				{
-  918: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_LEFT_ARROW);
-003080 904EEB            MOV     DPTR,#state
-003083 E0                MOVX    A,@DPTR
-003084 FF                MOV     R7,A
-003085 7B50              MOV     R3,#050H
-003087 7D08              MOV     R5,#08H
-003089 122CEC            LCALL   _kb_combination_key_press
-  919: 					if(state & 1)    
-00308C 904EEB            MOV     DPTR,#state
-00308F E0                MOVX    A,@DPTR
-003090 30E006            JNB     ACC.0,?C0231?KB_PROCESS
-  920: 					{            
-  921: 					g_variable.one_key_press_wait_release_timer = 10;     
-003093 904CFA            MOV     DPTR,#g_variable+03BH
-003096 740A              MOV     A,#0AH
-003098 F0                MOVX    @DPTR,A
-  922: 					}	
-003099         ?C0231?KB_PROCESS:
-  923: 				temp = HID_KEY_NULL;
-003099 E4                CLR     A
-00309A 904EED            MOV     DPTR,#temp
-00309D F0                MOVX    @DPTR,A
-  924: 				}			
-00309E         ?C0230?KB_PROCESS:
-  925: 				temp = HID_KEY_HOME;
-00309E 904EED            MOV     DPTR,#temp
-0030A1 744A              MOV     A,#04AH
-0030A3 F0                MOVX    @DPTR,A
-  926: 				break;	
-0030A4 8056              SJMP    ?C0203?KB_PROCESS
-  927: 			case HID_KEY_DOWN_ARROW:	
-0030A6         ?C0232?KB_PROCESS:
-  928: 				if(g_variable.system_mode == OSMODE_IOS)
-0030A6 904CC1            MOV     DPTR,#g_variable+02H
-0030A9 E0                MOVX    A,@DPTR
-0030AA 701E              JNZ     ?C0233?KB_PROCESS
-  929: 				{
-  930: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_DOWN_ARROW);
-0030AC 904EEB            MOV     DPTR,#state
-0030AF E0                MOVX    A,@DPTR
-0030B0 FF                MOV     R7,A
-0030B1 7B51              MOV     R3,#051H
-0030B3 7D08              MOV     R5,#08H
-0030B5 122CEC            LCALL   _kb_combination_key_press
-  931: 					if(state & 1)    
-0030B8 904EEB            MOV     DPTR,#state
-0030BB E0                MOVX    A,@DPTR
-0030BC 30E006            JNB     ACC.0,?C0234?KB_PROCESS
-  932: 					{            
-  933: 					g_variable.one_key_press_wait_release_timer = 10;     
-0030BF 904CFA            MOV     DPTR,#g_variable+03BH
-0030C2 740A              MOV     A,#0AH
-0030C4 F0                MOVX    @DPTR,A
-  934: 					}	
-0030C5         ?C0234?KB_PROCESS:
-  935: 				temp = HID_KEY_NULL;
-0030C5 E4                CLR     A
-0030C6 904EED            MOV     DPTR,#temp
-0030C9 F0                MOVX    @DPTR,A
-  936: 				}			
-0030CA         ?C0233?KB_PROCESS:
-  937: 				temp = HID_KEY_PAGE_DOWN;
-0030CA 904EED            MOV     DPTR,#temp
-0030CD 744E              MOV     A,#04EH
-0030CF F0                MOVX    @DPTR,A
-  938: 				break;	
-0030D0 802A              SJMP    ?C0203?KB_PROCESS
-  939: 			case HID_KEY_UP_ARROW:	
-0030D2         ?C0235?KB_PROCESS:
-  940: 				if(g_variable.system_mode == OSMODE_IOS)
-0030D2 904CC1            MOV     DPTR,#g_variable+02H
-0030D5 E0                MOVX    A,@DPTR
-0030D6 701E              JNZ     ?C0236?KB_PROCESS
-  941: 				{
-  942: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_UP_ARROW);
-0030D8 904EEB            MOV     DPTR,#state
-0030DB E0                MOVX    A,@DPTR
-0030DC FF                MOV     R7,A
-0030DD 7B52              MOV     R3,#052H
-0030DF 7D08              MOV     R5,#08H
-0030E1 122CEC            LCALL   _kb_combination_key_press
-  943: 					if(state & 1)    
-0030E4 904EEB            MOV     DPTR,#state
-0030E7 E0                MOVX    A,@DPTR
-0030E8 30E006            JNB     ACC.0,?C0237?KB_PROCESS
-  944: 					{            
-  945: 					g_variable.one_key_press_wait_release_timer = 10;     
-0030EB 904CFA            MOV     DPTR,#g_variable+03BH
-0030EE 740A              MOV     A,#0AH
-0030F0 F0                MOVX    @DPTR,A
-  946: 					}	
-0030F1         ?C0237?KB_PROCESS:
-  947: 				temp = HID_KEY_NULL;
-0030F1 E4                CLR     A
-0030F2 904EED            MOV     DPTR,#temp
-0030F5 F0                MOVX    @DPTR,A
-  948: 				}			
-0030F6         ?C0236?KB_PROCESS:
-  949: 				temp = HID_KEY_PAGE_UP;
-0030F6 904EED            MOV     DPTR,#temp
-0030F9 744B              MOV     A,#04BH
-0030FB F0                MOVX    @DPTR,A
-  950: 				break;					
-  951: 			default :
-  952: 				break;
-  953: 		}
-  954: 	}
-0030FC         ?C0203?KB_PROCESS:
-  955: 
-  956: 	return temp;
-0030FC 904EED            MOV     DPTR,#temp
-0030FF E0                MOVX    A,@DPTR
-003100 FF                MOV     R7,A
-  957: }
-003101 22                RET     
+  815: 				break;							
+  816: 			default :
+  817: 				break;	
+  818: 		}
+  819: 	}	
+002F08         ?C0166?KB_PROCESS:
+  820: 	if(fn_flag == 1)			// Fn lock
+002F08 904DE2            MOV     DPTR,#fn_flag
+002F0B E0                MOVX    A,@DPTR
+002F0C 6401              XRL     A,#01H
+002F0E 6003              JZ      $ + 5H
+002F10 0230FB            LJMP    ?C0203?KB_PROCESS
+  821: 	{
+  822: /*		 if(key_value == HID_KEY_ESC)
+  823: 		{
+  824: 			if(state & 1)
+  825: 			{						
+  826: 				if(fn_lock_flag)
+  827: 				{
+  828: 					fn_lock_flag = 0;
+  829: 				}
+  830: 				else
+  831: 					fn_lock_flag = 1;
+  832: 					
+  833: 				if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+  834: 				{
+  835: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+  836: 				}
+  837: 				else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+  838: 				{
+  839: 					bd_key_record_list[g_variable.current_device_num - 1].fn_lock = fn_lock_flag;
+  840: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+  841: 				}
+  842: 			}
+  843: 			temp = HID_KEY_NULL;
+  844: 		}	
+  845: */
+  846: 		switch (key_value)
+002F13 904EEC            MOV     DPTR,#key_value
+002F16 E0                MOVX    A,@DPTR
+002F17 24F8              ADD     A,#0F8H
+002F19 7002              JNZ     $ + 4H
+002F1B E1F7              AJMP    ?C0219?KB_PROCESS
+002F1D 24EE              ADD     A,#0EEH
+002F1F 607B              JZ      ?C0212?KB_PROCESS
+002F21 24CB              ADD     A,#0CBH
+002F23 7003              JNZ     $ + 5H
+002F25 02304D            LJMP    ?C0226?KB_PROCESS
+002F28 14                DEC     A
+002F29 7003              JNZ     $ + 5H
+002F2B 023079            LJMP    ?C0229?KB_PROCESS
+002F2E 14                DEC     A
+002F2F 7003              JNZ     $ + 5H
+002F31 0230A5            LJMP    ?C0232?KB_PROCESS
+002F34 14                DEC     A
+002F35 7003              JNZ     $ + 5H
+002F37 0230D1            LJMP    ?C0235?KB_PROCESS
+002F3A 243E              ADD     A,#03EH
+002F3C 6003              JZ      $ + 5H
+002F3E 0230FB            LJMP    ?C0203?KB_PROCESS
+  847: 		{ 		
+  848: 			case HID_KEY_Q:
+002F41         ?C0205?KB_PROCESS:
+  849: 				if(g_variable.system_mode != OSMODE_ANDROID)
+002F41 904CC1            MOV     DPTR,#g_variable+02H
+002F44 E0                MOVX    A,@DPTR
+002F45 FF                MOV     R7,A
+002F46 6401              XRL     A,#01H
+002F48 6037              JZ      ?C0206?KB_PROCESS
+  850: 				{
+  851: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002F4A 904CC3            MOV     DPTR,#g_variable+04H
+002F4D E0                MOVX    A,@DPTR
+002F4E FE                MOV     R6,A
+002F4F 6003              JZ      ?C0208?KB_PROCESS
+002F51 B4FE08            CJNE    A,#0FEH,?C0207?KB_PROCESS
+002F54         ?C0208?KB_PROCESS:
+  852: 					{
+  853: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+002F54 904CBF            MOV     DPTR,#g_variable
+002F57 7402              MOV     A,#02H
+002F59 F0                MOVX    @DPTR,A
+  854: 					}
+002F5A 8025              SJMP    ?C0206?KB_PROCESS
+002F5C         ?C0207?KB_PROCESS:
+  855: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+002F5C EE                MOV     A,R6
+002F5D D3                SETB    C
+002F5E 9403              SUBB    A,#03H
+002F60 501F              JNC     ?C0206?KB_PROCESS
+002F62 EE                MOV     A,R6
+002F63 C3                CLR     C
+002F64 9401              SUBB    A,#01H
+002F66 4019              JC      ?C0206?KB_PROCESS
+  856: 					{
+  857: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+002F68 904CC3            MOV     DPTR,#g_variable+04H
+002F6B E0                MOVX    A,@DPTR
+002F6C 75F01F            MOV     B,#01FH
+002F6F A4                MUL     AB
+002F70 24EC              ADD     A,#LOW bd_key_record_list-02H
+002F72 F582              MOV     DPL,A
+002F74 E4                CLR     A
+002F75 344D              ADDC    A,#HIGH bd_key_record_list-02H
+002F77 F583              MOV     DPH,A
+002F79 EF                MOV     A,R7
+002F7A F0                MOVX    @DPTR,A
+  858: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+002F7B 904CBF            MOV     DPTR,#g_variable
+002F7E 7403              MOV     A,#03H
+002F80 F0                MOVX    @DPTR,A
+  859: 					}
+  860: 				}
+002F81         ?C0206?KB_PROCESS:
+  861: 				if(state & 1)
+002F81 904EEB            MOV     DPTR,#state
+002F84 E0                MOVX    A,@DPTR
+002F85 30E006            JNB     ACC.0,?C0211?KB_PROCESS
+  862: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+002F88 904CE8            MOV     DPTR,#g_variable+029H
+002F8B 740C              MOV     A,#0CH
+002F8D F0                MOVX    @DPTR,A
+002F8E         ?C0211?KB_PROCESS:
+  863: 				g_variable.system_mode = OSMODE_ANDROID;
+002F8E 904CC1            MOV     DPTR,#g_variable+02H
+002F91 7401              MOV     A,#01H
+002F93 F0                MOVX    @DPTR,A
+  864: 				temp = HID_KEY_NULL;
+002F94 E4                CLR     A
+002F95 904EED            MOV     DPTR,#temp
+002F98 F0                MOVX    @DPTR,A
+  865: 				break;
+002F99 0230FB            LJMP    ?C0203?KB_PROCESS
+  866: 			case HID_KEY_W:
+002F9C         ?C0212?KB_PROCESS:
+  867: 				if(g_variable.system_mode != OSMODE_WINDOWS)
+002F9C 904CC1            MOV     DPTR,#g_variable+02H
+002F9F E0                MOVX    A,@DPTR
+002FA0 FF                MOV     R7,A
+002FA1 6402              XRL     A,#02H
+002FA3 6037              JZ      ?C0213?KB_PROCESS
+  868: 				{
+  869: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002FA5 904CC3            MOV     DPTR,#g_variable+04H
+002FA8 E0                MOVX    A,@DPTR
+002FA9 FE                MOV     R6,A
+002FAA 6003              JZ      ?C0215?KB_PROCESS
+002FAC B4FE08            CJNE    A,#0FEH,?C0214?KB_PROCESS
+002FAF         ?C0215?KB_PROCESS:
+  870: 					{
+  871: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+002FAF 904CBF            MOV     DPTR,#g_variable
+002FB2 7402              MOV     A,#02H
+002FB4 F0                MOVX    @DPTR,A
+  872: 					}
+002FB5 8025              SJMP    ?C0213?KB_PROCESS
+002FB7         ?C0214?KB_PROCESS:
+  873: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+002FB7 EE                MOV     A,R6
+002FB8 D3                SETB    C
+002FB9 9403              SUBB    A,#03H
+002FBB 501F              JNC     ?C0213?KB_PROCESS
+002FBD EE                MOV     A,R6
+002FBE C3                CLR     C
+002FBF 9401              SUBB    A,#01H
+002FC1 4019              JC      ?C0213?KB_PROCESS
+  874: 					{
+  875: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+002FC3 904CC3            MOV     DPTR,#g_variable+04H
+002FC6 E0                MOVX    A,@DPTR
+002FC7 75F01F            MOV     B,#01FH
+002FCA A4                MUL     AB
+002FCB 24EC              ADD     A,#LOW bd_key_record_list-02H
+002FCD F582              MOV     DPL,A
+002FCF E4                CLR     A
+002FD0 344D              ADDC    A,#HIGH bd_key_record_list-02H
+002FD2 F583              MOV     DPH,A
+002FD4 EF                MOV     A,R7
+002FD5 F0                MOVX    @DPTR,A
+  876: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+002FD6 904CBF            MOV     DPTR,#g_variable
+002FD9 7403              MOV     A,#03H
+002FDB F0                MOVX    @DPTR,A
+  877: 					}
+  878: 				}
+002FDC         ?C0213?KB_PROCESS:
+  879: 				if(state & 1)
+002FDC 904EEB            MOV     DPTR,#state
+002FDF E0                MOVX    A,@DPTR
+002FE0 30E006            JNB     ACC.0,?C0218?KB_PROCESS
+  880: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+002FE3 904CE8            MOV     DPTR,#g_variable+029H
+002FE6 740C              MOV     A,#0CH
+002FE8 F0                MOVX    @DPTR,A
+002FE9         ?C0218?KB_PROCESS:
+  881: 				g_variable.system_mode = OSMODE_WINDOWS;
+002FE9 904CC1            MOV     DPTR,#g_variable+02H
+002FEC 7402              MOV     A,#02H
+002FEE F0                MOVX    @DPTR,A
+  882: 				temp = HID_KEY_NULL;
+002FEF E4                CLR     A
+002FF0 904EED            MOV     DPTR,#temp
+002FF3 F0                MOVX    @DPTR,A
+  883: 				break;
+002FF4 0230FB            LJMP    ?C0203?KB_PROCESS
+  884: 			case HID_KEY_E:
+002FF7         ?C0219?KB_PROCESS:
+  885: 				if(g_variable.system_mode != OSMODE_IOS)
+002FF7 904CC1            MOV     DPTR,#g_variable+02H
+002FFA E0                MOVX    A,@DPTR
+002FFB FF                MOV     R7,A
+002FFC 6037              JZ      ?C0220?KB_PROCESS
+  886: 				{
+  887: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002FFE 904CC3            MOV     DPTR,#g_variable+04H
+003001 E0                MOVX    A,@DPTR
+003002 FE                MOV     R6,A
+003003 6003              JZ      ?C0222?KB_PROCESS
+003005 B4FE08            CJNE    A,#0FEH,?C0221?KB_PROCESS
+003008         ?C0222?KB_PROCESS:
+  888: 					{
+  889: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+003008 904CBF            MOV     DPTR,#g_variable
+00300B 7402              MOV     A,#02H
+00300D F0                MOVX    @DPTR,A
+  890: 					}
+00300E 8025              SJMP    ?C0220?KB_PROCESS
+003010         ?C0221?KB_PROCESS:
+  891: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+003010 EE                MOV     A,R6
+003011 D3                SETB    C
+003012 9403              SUBB    A,#03H
+003014 501F              JNC     ?C0220?KB_PROCESS
+003016 EE                MOV     A,R6
+003017 C3                CLR     C
+003018 9401              SUBB    A,#01H
+00301A 4019              JC      ?C0220?KB_PROCESS
+  892: 					{
+  893: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+00301C 904CC3            MOV     DPTR,#g_variable+04H
+00301F E0                MOVX    A,@DPTR
+003020 75F01F            MOV     B,#01FH
+003023 A4                MUL     AB
+003024 24EC              ADD     A,#LOW bd_key_record_list-02H
+003026 F582              MOV     DPL,A
+003028 E4                CLR     A
+003029 344D              ADDC    A,#HIGH bd_key_record_list-02H
+00302B F583              MOV     DPH,A
+00302D EF                MOV     A,R7
+00302E F0                MOVX    @DPTR,A
+  894: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+00302F 904CBF            MOV     DPTR,#g_variable
+003032 7403              MOV     A,#03H
+003034 F0                MOVX    @DPTR,A
+  895: 					}
+  896: 				}
+003035         ?C0220?KB_PROCESS:
+  897: 				if(state & 1)
+003035 904EEB            MOV     DPTR,#state
+003038 E0                MOVX    A,@DPTR
+003039 30E006            JNB     ACC.0,?C0225?KB_PROCESS
+  898: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+00303C 904CE8            MOV     DPTR,#g_variable+029H
+00303F 740C              MOV     A,#0CH
+003041 F0                MOVX    @DPTR,A
+003042         ?C0225?KB_PROCESS:
+  899: 				g_variable.system_mode = OSMODE_IOS;
+003042 E4                CLR     A
+003043 904CC1            MOV     DPTR,#g_variable+02H
+003046 F0                MOVX    @DPTR,A
+  900: 				temp = HID_KEY_NULL;
+003047 904EED            MOV     DPTR,#temp
+00304A F0                MOVX    @DPTR,A
+  901: 				break;		
+00304B 01FB              AJMP    ?C0203?KB_PROCESS
+  902: 			case HID_KEY_RIGHT_ARROW:	
+00304D         ?C0226?KB_PROCESS:
+  903: 				if(g_variable.system_mode == OSMODE_IOS)
+00304D 904CC1            MOV     DPTR,#g_variable+02H
+003050 E0                MOVX    A,@DPTR
+003051 701E              JNZ     ?C0227?KB_PROCESS
+  904: 				{
+  905: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_RIGHT_ARROW);
+003053 904EEB            MOV     DPTR,#state
+003056 E0                MOVX    A,@DPTR
+003057 FF                MOV     R7,A
+003058 7B4F              MOV     R3,#04FH
+00305A 7D08              MOV     R5,#08H
+00305C 122CEC            LCALL   _kb_combination_key_press
+  906: 					if(state & 1)    
+00305F 904EEB            MOV     DPTR,#state
+003062 E0                MOVX    A,@DPTR
+003063 30E006            JNB     ACC.0,?C0228?KB_PROCESS
+  907: 					{            
+  908: 					g_variable.one_key_press_wait_release_timer = 10;     
+003066 904CFA            MOV     DPTR,#g_variable+03BH
+003069 740A              MOV     A,#0AH
+00306B F0                MOVX    @DPTR,A
+  909: 					}	
+00306C         ?C0228?KB_PROCESS:
+  910: 				temp = HID_KEY_NULL;
+00306C E4                CLR     A
+00306D 904EED            MOV     DPTR,#temp
+003070 F0                MOVX    @DPTR,A
+  911: 				}					
+003071         ?C0227?KB_PROCESS:
+  912: 				temp = HID_KEY_END;
+003071 904EED            MOV     DPTR,#temp
+003074 744D              MOV     A,#04DH
+003076 F0                MOVX    @DPTR,A
+  913: 				break;			
+003077 01FB              AJMP    ?C0203?KB_PROCESS
+  914: 			case HID_KEY_LEFT_ARROW:
+003079         ?C0229?KB_PROCESS:
+  915: 				if(g_variable.system_mode == OSMODE_IOS)
+003079 904CC1            MOV     DPTR,#g_variable+02H
+00307C E0                MOVX    A,@DPTR
+00307D 701E              JNZ     ?C0230?KB_PROCESS
+  916: 				{
+  917: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_LEFT_ARROW);
+00307F 904EEB            MOV     DPTR,#state
+003082 E0                MOVX    A,@DPTR
+003083 FF                MOV     R7,A
+003084 7B50              MOV     R3,#050H
+003086 7D08              MOV     R5,#08H
+003088 122CEC            LCALL   _kb_combination_key_press
+  918: 					if(state & 1)    
+00308B 904EEB            MOV     DPTR,#state
+00308E E0                MOVX    A,@DPTR
+00308F 30E006            JNB     ACC.0,?C0231?KB_PROCESS
+  919: 					{            
+  920: 					g_variable.one_key_press_wait_release_timer = 10;     
+003092 904CFA            MOV     DPTR,#g_variable+03BH
+003095 740A              MOV     A,#0AH
+003097 F0                MOVX    @DPTR,A
+  921: 					}	
+003098         ?C0231?KB_PROCESS:
+  922: 				temp = HID_KEY_NULL;
+003098 E4                CLR     A
+003099 904EED            MOV     DPTR,#temp
+00309C F0                MOVX    @DPTR,A
+  923: 				}			
+00309D         ?C0230?KB_PROCESS:
+  924: 				temp = HID_KEY_HOME;
+00309D 904EED            MOV     DPTR,#temp
+0030A0 744A              MOV     A,#04AH
+0030A2 F0                MOVX    @DPTR,A
+  925: 				break;	
+0030A3 8056              SJMP    ?C0203?KB_PROCESS
+  926: 			case HID_KEY_DOWN_ARROW:	
+0030A5         ?C0232?KB_PROCESS:
+  927: 				if(g_variable.system_mode == OSMODE_IOS)
+0030A5 904CC1            MOV     DPTR,#g_variable+02H
+0030A8 E0                MOVX    A,@DPTR
+0030A9 701E              JNZ     ?C0233?KB_PROCESS
+  928: 				{
+  929: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_DOWN_ARROW);
+0030AB 904EEB            MOV     DPTR,#state
+0030AE E0                MOVX    A,@DPTR
+0030AF FF                MOV     R7,A
+0030B0 7B51              MOV     R3,#051H
+0030B2 7D08              MOV     R5,#08H
+0030B4 122CEC            LCALL   _kb_combination_key_press
+  930: 					if(state & 1)    
+0030B7 904EEB            MOV     DPTR,#state
+0030BA E0                MOVX    A,@DPTR
+0030BB 30E006            JNB     ACC.0,?C0234?KB_PROCESS
+  931: 					{            
+  932: 					g_variable.one_key_press_wait_release_timer = 10;     
+0030BE 904CFA            MOV     DPTR,#g_variable+03BH
+0030C1 740A              MOV     A,#0AH
+0030C3 F0                MOVX    @DPTR,A
+  933: 					}	
+0030C4         ?C0234?KB_PROCESS:
+  934: 				temp = HID_KEY_NULL;
+0030C4 E4                CLR     A
+0030C5 904EED            MOV     DPTR,#temp
+0030C8 F0                MOVX    @DPTR,A
+  935: 				}			
+0030C9         ?C0233?KB_PROCESS:
+  936: 				temp = HID_KEY_PAGE_DOWN;
+0030C9 904EED            MOV     DPTR,#temp
+0030CC 744E              MOV     A,#04EH
+0030CE F0                MOVX    @DPTR,A
+  937: 				break;	
+0030CF 802A              SJMP    ?C0203?KB_PROCESS
+  938: 			case HID_KEY_UP_ARROW:	
+0030D1         ?C0235?KB_PROCESS:
+  939: 				if(g_variable.system_mode == OSMODE_IOS)
+0030D1 904CC1            MOV     DPTR,#g_variable+02H
+0030D4 E0                MOVX    A,@DPTR
+0030D5 701E              JNZ     ?C0236?KB_PROCESS
+  940: 				{
+  941: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_UP_ARROW);
+0030D7 904EEB            MOV     DPTR,#state
+0030DA E0                MOVX    A,@DPTR
+0030DB FF                MOV     R7,A
+0030DC 7B52              MOV     R3,#052H
+0030DE 7D08              MOV     R5,#08H
+0030E0 122CEC            LCALL   _kb_combination_key_press
+  942: 					if(state & 1)    
+0030E3 904EEB            MOV     DPTR,#state
+0030E6 E0                MOVX    A,@DPTR
+0030E7 30E006            JNB     ACC.0,?C0237?KB_PROCESS
+  943: 					{            
+  944: 					g_variable.one_key_press_wait_release_timer = 10;     
+0030EA 904CFA            MOV     DPTR,#g_variable+03BH
+0030ED 740A              MOV     A,#0AH
+0030EF F0                MOVX    @DPTR,A
+  945: 					}	
+0030F0         ?C0237?KB_PROCESS:
+  946: 				temp = HID_KEY_NULL;
+0030F0 E4                CLR     A
+0030F1 904EED            MOV     DPTR,#temp
+0030F4 F0                MOVX    @DPTR,A
+  947: 				}			
+0030F5         ?C0236?KB_PROCESS:
+  948: 				temp = HID_KEY_PAGE_UP;
+0030F5 904EED            MOV     DPTR,#temp
+0030F8 744B              MOV     A,#04BH
+0030FA F0                MOVX    @DPTR,A
+  949: 				break;					
+  950: 			default :
+  951: 				break;
+  952: 		}
+  953: 	}
+0030FB         ?C0203?KB_PROCESS:
+  954: 
+  955: 	return temp;
+0030FB 904EED            MOV     DPTR,#temp
+0030FE E0                MOVX    A,@DPTR
+0030FF FF                MOV     R7,A
+  956: }
+003100 22                RET     
 ----- FUNCTION _key_fn_function (END) -------
 
 
@@ -9421,30 +9417,30 @@
   191: {
   192: 	byte i = 0;
   193: 	
-003102 E4                CLR     A
-003103 904F0C            MOV     DPTR,#i
-003106 F0                MOVX    @DPTR,A
+003101 E4                CLR     A
+003102 904F0C            MOV     DPTR,#i
+003105 F0                MOVX    @DPTR,A
   194: 	for (i=0; i<8; i++) {
-003107 F0                MOVX    @DPTR,A
-003108         ?C0028?KEYSCAN:
-003108 904F0C            MOV     DPTR,#i
-00310B E0                MOVX    A,@DPTR
-00310C FF                MOV     R7,A
-00310D C3                CLR     C
-00310E 9408              SUBB    A,#08H
-003110 500D              JNC     ?C0031?KEYSCAN
+003106 F0                MOVX    @DPTR,A
+003107         ?C0028?KEYSCAN:
+003107 904F0C            MOV     DPTR,#i
+00310A E0                MOVX    A,@DPTR
+00310B FF                MOV     R7,A
+00310C C3                CLR     C
+00310D 9408              SUBB    A,#08H
+00310F 500D              JNC     ?C0031?KEYSCAN
   195: 		GPIO_SetInput(i, 0);
-003112 C205              CLR     ?_GPIO_SetInput?BIT
-003114 121E01            LCALL   _GPIO_SetInput
+003111 C205              CLR     ?_GPIO_SetInput?BIT
+003113 121E01            LCALL   _GPIO_SetInput
   196: 	}
-003117 904F0C            MOV     DPTR,#i
-00311A E0                MOVX    A,@DPTR
-00311B 04                INC     A
-00311C F0                MOVX    @DPTR,A
-00311D 80E9              SJMP    ?C0028?KEYSCAN
+003116 904F0C            MOV     DPTR,#i
+003119 E0                MOVX    A,@DPTR
+00311A 04                INC     A
+00311B F0                MOVX    @DPTR,A
+00311C 80E9              SJMP    ?C0028?KEYSCAN
   197: }
-00311F         ?C0031?KEYSCAN:
-00311F 22                RET     
+00311E         ?C0031?KEYSCAN:
+00311E 22                RET     
 ----- FUNCTION ksRawInitialize (END) -------
 
 
@@ -9454,17 +9450,17 @@
   208: {
   209: 	REG_GPIO_SELECT(0) = 0;
   210: 	REG_GPIO_SELECT(1) = 0;
-003120 908080            MOV     DPTR,#08080H
-003123 E4                CLR     A
-003124 F0                MOVX    @DPTR,A
+00311F 908080            MOV     DPTR,#08080H
+003122 E4                CLR     A
+003123 F0                MOVX    @DPTR,A
   211: 	REG_GPIO_SELECT(2) = 0;
-003125 A3                INC     DPTR
-003126 F0                MOVX    @DPTR,A
+003124 A3                INC     DPTR
+003125 F0                MOVX    @DPTR,A
   212: 	ksRawInitialize();
-003127 A3                INC     DPTR
-003128 F0                MOVX    @DPTR,A
+003126 A3                INC     DPTR
+003127 F0                MOVX    @DPTR,A
   213: 	ksColInitialize();
-003129 3102              ACALL   ksRawInitialize
+003128 3101              ACALL   ksRawInitialize
 ;----                  JMP     ksColInitialize
   214: }
 ----- FUNCTION KS_Initialize (END) -------
@@ -9476,30 +9472,30 @@
   200: {
   201: 	byte i = 0;
   202: 	for (i=0; col[i]!=0; i++) {
-00312B E4                CLR     A
-00312C 904F0D            MOV     DPTR,#i
-00312F F0                MOVX    @DPTR,A
+00312A E4                CLR     A
+00312B 904F0D            MOV     DPTR,#i
+00312E F0                MOVX    @DPTR,A
   203: 		GPIO_SetInput(col[i], 0);
-003130 F0                MOVX    @DPTR,A
-003131         ?C0032?KEYSCAN:
-003131 904F0D            MOV     DPTR,#i
-003134 E0                MOVX    A,@DPTR
-003135 900681            MOV     DPTR,#col
-003138 93                MOVC    A,@A+DPTR
-003139 FF                MOV     R7,A
-00313A 600D              JZ      ?C0035?KEYSCAN
+00312F F0                MOVX    @DPTR,A
+003130         ?C0032?KEYSCAN:
+003130 904F0D            MOV     DPTR,#i
+003133 E0                MOVX    A,@DPTR
+003134 900681            MOV     DPTR,#col
+003137 93                MOVC    A,@A+DPTR
+003138 FF                MOV     R7,A
+003139 600D              JZ      ?C0035?KEYSCAN
   204: 	}
-00313C C205              CLR     ?_GPIO_SetInput?BIT
-00313E 121E01            LCALL   _GPIO_SetInput
+00313B C205              CLR     ?_GPIO_SetInput?BIT
+00313D 121E01            LCALL   _GPIO_SetInput
   205: }
-003141 904F0D            MOV     DPTR,#i
-003144 E0                MOVX    A,@DPTR
-003145 04                INC     A
-003146 F0                MOVX    @DPTR,A
-003147 80E8              SJMP    ?C0032?KEYSCAN
+003140 904F0D            MOV     DPTR,#i
+003143 E0                MOVX    A,@DPTR
+003144 04                INC     A
+003145 F0                MOVX    @DPTR,A
+003146 80E8              SJMP    ?C0032?KEYSCAN
   206: 
-003149         ?C0035?KEYSCAN:
-003149 22                RET     
+003148         ?C0035?KEYSCAN:
+003148 22                RET     
 ----- FUNCTION ksColInitialize (END) -------
 
 
@@ -9510,351 +9506,351 @@
   218: 	byte i = 0;
   219: 	byte temp = 0;
 ;---- Variable 'i' assigned to Register 'R7' ----
-00314A E4                CLR     A
-00314B FF                MOV     R7,A
+003149 E4                CLR     A
+00314A FF                MOV     R7,A
   220: 	byte tgroup = 0;
-00314C 904F0E            MOV     DPTR,#temp
-00314F F0                MOVX    @DPTR,A
+00314B 904F0E            MOV     DPTR,#temp
+00314E F0                MOVX    @DPTR,A
   221: 	byte tgpionum = 0;
 ;---- Variable 'tgroup' assigned to Register 'R6' ----
-003150 FE                MOV     R6,A
+00314F FE                MOV     R6,A
   222: 	for (i=0; col[i]!=0; i++) {
 ;---- Variable 'tgpionum' assigned to Register 'R5' ----
-003151 FD                MOV     R5,A
+003150 FD                MOV     R5,A
   223: 		tgroup = col[i]  >> 3;
-003152         ?C0037?KEYSCAN:
-003152 EF                MOV     A,R7
-003153 900681            MOV     DPTR,#col
-003156 93                MOVC    A,@A+DPTR
-003157 6049              JZ      ?C0038?KEYSCAN
+003151         ?C0037?KEYSCAN:
+003151 EF                MOV     A,R7
+003152 900681            MOV     DPTR,#col
+003155 93                MOVC    A,@A+DPTR
+003156 6049              JZ      ?C0038?KEYSCAN
   224: 		tgpionum = 1 << (col[i] & 7);
-003159 EF                MOV     A,R7
-00315A 93                MOVC    A,@A+DPTR
-00315B FD                MOV     R5,A
+003158 EF                MOV     A,R7
+003159 93                MOVC    A,@A+DPTR
+00315A FD                MOV     R5,A
+00315B 13                RRC     A
 00315C 13                RRC     A
 00315D 13                RRC     A
-00315E 13                RRC     A
-00315F 541F              ANL     A,#01FH
-003161 FE                MOV     R6,A
+00315E 541F              ANL     A,#01FH
+003160 FE                MOV     R6,A
   225: 		REG_GPIO_PUP (tgroup) &= ~tgpionum;
-003162 ED                MOV     A,R5
-003163 5407              ANL     A,#07H
-003165 FD                MOV     R5,A
-003166 7401              MOV     A,#01H
-003168 A805              MOV     R0,AR5
-00316A 08                INC     R0
-00316B 8002              SJMP    ?C0097?KEYSCAN
-00316D         ?C0096?KEYSCAN:
-00316D C3                CLR     C
-00316E 33                RLC     A
-00316F         ?C0097?KEYSCAN:
-00316F D8FC              DJNZ    R0,?C0096?KEYSCAN
-003171 FD                MOV     R5,A
+003161 ED                MOV     A,R5
+003162 5407              ANL     A,#07H
+003164 FD                MOV     R5,A
+003165 7401              MOV     A,#01H
+003167 A805              MOV     R0,AR5
+003169 08                INC     R0
+00316A 8002              SJMP    ?C0097?KEYSCAN
+00316C         ?C0096?KEYSCAN:
+00316C C3                CLR     C
+00316D 33                RLC     A
+00316E         ?C0097?KEYSCAN:
+00316E D8FC              DJNZ    R0,?C0096?KEYSCAN
+003170 FD                MOV     R5,A
   226: 		REG_GPIO_OE(tgroup) |= tgpionum;
-003172 EE                MOV     A,R6
-003173 2478              ADD     A,#078H
-003175 FB                MOV     R3,A
-003176 E4                CLR     A
-003177 3480              ADDC    A,#080H
-003179 8B82              MOV     DPL,R3
-00317B F583              MOV     DPH,A
-00317D E0                MOVX    A,@DPTR
-00317E FC                MOV     R4,A
-00317F ED                MOV     A,R5
-003180 F4                CPL     A
-003181 FB                MOV     R3,A
-003182 EC                MOV     A,R4
-003183 5B                ANL     A,R3
-003184 F0                MOVX    @DPTR,A
+003171 EE                MOV     A,R6
+003172 2478              ADD     A,#078H
+003174 FB                MOV     R3,A
+003175 E4                CLR     A
+003176 3480              ADDC    A,#080H
+003178 8B82              MOV     DPL,R3
+00317A F583              MOV     DPH,A
+00317C E0                MOVX    A,@DPTR
+00317D FC                MOV     R4,A
+00317E ED                MOV     A,R5
+00317F F4                CPL     A
+003180 FB                MOV     R3,A
+003181 EC                MOV     A,R4
+003182 5B                ANL     A,R3
+003183 F0                MOVX    @DPTR,A
   227: 		REG_GPIO_OUT(tgroup) &= ~tgpionum;
-003185 EE                MOV     A,R6
-003186 2470              ADD     A,#070H
-003188 F582              MOV     DPL,A
-00318A E4                CLR     A
-00318B 3480              ADDC    A,#080H
-00318D F583              MOV     DPH,A
-00318F E0                MOVX    A,@DPTR
-003190 4D                ORL     A,R5
-003191 F0                MOVX    @DPTR,A
+003184 EE                MOV     A,R6
+003185 2470              ADD     A,#070H
+003187 F582              MOV     DPL,A
+003189 E4                CLR     A
+00318A 3480              ADDC    A,#080H
+00318C F583              MOV     DPH,A
+00318E E0                MOVX    A,@DPTR
+00318F 4D                ORL     A,R5
+003190 F0                MOVX    @DPTR,A
   228: 	}
-003192 EE                MOV     A,R6
-003193 2474              ADD     A,#074H
-003195 F582              MOV     DPL,A
-003197 E4                CLR     A
-003198 3480              ADDC    A,#080H
-00319A F583              MOV     DPH,A
-00319C E0                MOVX    A,@DPTR
-00319D 5B                ANL     A,R3
-00319E F0                MOVX    @DPTR,A
+003191 EE                MOV     A,R6
+003192 2474              ADD     A,#074H
+003194 F582              MOV     DPL,A
+003196 E4                CLR     A
+003197 3480              ADDC    A,#080H
+003199 F583              MOV     DPH,A
+00319B E0                MOVX    A,@DPTR
+00319C 5B                ANL     A,R3
+00319D F0                MOVX    @DPTR,A
   229: 	
-00319F 0F                INC     R7
-0031A0 80B0              SJMP    ?C0037?KEYSCAN
-0031A2         ?C0038?KEYSCAN:
+00319E 0F                INC     R7
+00319F 80B0              SJMP    ?C0037?KEYSCAN
+0031A1         ?C0038?KEYSCAN:
   230: 	GPIO_fillpd();
-0031A2 7182              ACALL   GPIO_fillpd
+0031A1 7181              ACALL   GPIO_fillpd
   231: 	
   232: 	temp = REG_GPIO_IN(0);
-0031A4 90811C            MOV     DPTR,#0811CH
-0031A7 E0                MOVX    A,@DPTR
-0031A8 904F0E            MOV     DPTR,#temp
-0031AB F0                MOVX    @DPTR,A
+0031A3 90811C            MOV     DPTR,#0811CH
+0031A6 E0                MOVX    A,@DPTR
+0031A7 904F0E            MOV     DPTR,#temp
+0031AA F0                MOVX    @DPTR,A
   233: 
   234: 	if(long_press_flag)
-0031AC 904DDC            MOV     DPTR,#long_press_flag
-0031AF E0                MOVX    A,@DPTR
-0031B0 6020              JZ      ?C0040?KEYSCAN
+0031AB 904DDC            MOV     DPTR,#long_press_flag
+0031AE E0                MOVX    A,@DPTR
+0031AF 6020              JZ      ?C0040?KEYSCAN
   235: 	{
   236: 		GPIO_SetWakeupByCurrentState(0);
-0031B2 E4                CLR     A
-0031B3 FF                MOV     R7,A
-0031B4 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031B1 E4                CLR     A
+0031B2 FF                MOV     R7,A
+0031B3 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   237: 		GPIO_SetWakeupByCurrentState(1);
-0031B6 7F01              MOV     R7,#01H
-0031B8 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031B5 7F01              MOV     R7,#01H
+0031B7 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   238: 		GPIO_SetWakeupByCurrentState(2);
-0031BA 7F02              MOV     R7,#02H
-0031BC 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031B9 7F02              MOV     R7,#02H
+0031BB 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   239: 		GPIO_SetWakeupByCurrentState(3);
-0031BE 7F03              MOV     R7,#03H
-0031C0 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031BD 7F03              MOV     R7,#03H
+0031BF 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   240: 		GPIO_SetWakeupByCurrentState(4);
-0031C2 7F04              MOV     R7,#04H
-0031C4 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031C1 7F04              MOV     R7,#04H
+0031C3 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   241: 		GPIO_SetWakeupByCurrentState(5);
-0031C6 7F05              MOV     R7,#05H
-0031C8 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031C5 7F05              MOV     R7,#05H
+0031C7 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   242: 		GPIO_SetWakeupByCurrentState(6);
-0031CA 7F06              MOV     R7,#06H
-0031CC 31E2              ACALL   _GPIO_SetWakeupByCurrentState
+0031C9 7F06              MOV     R7,#06H
+0031CB 31E1              ACALL   _GPIO_SetWakeupByCurrentState
   243: 		GPIO_SetWakeupByCurrentState(7);
-0031CE 7F07              MOV     R7,#07H
-0031D0 8010              SJMP    _GPIO_SetWakeupByCurrentState
+0031CD 7F07              MOV     R7,#07H
+0031CF 8010              SJMP    _GPIO_SetWakeupByCurrentState
   244: 	}
-0031D2         ?C0040?KEYSCAN:
+0031D1         ?C0040?KEYSCAN:
   245: 	else
   246: 	{
   247: 		YC_GPIOWakeupL[0] = temp;
-0031D2 904F0E            MOV     DPTR,#temp
-0031D5 E0                MOVX    A,@DPTR
-0031D6 FF                MOV     R7,A
-0031D7 9000A3            MOV     DPTR,#YC_GPIOWakeupL
-0031DA F0                MOVX    @DPTR,A
+0031D1 904F0E            MOV     DPTR,#temp
+0031D4 E0                MOVX    A,@DPTR
+0031D5 FF                MOV     R7,A
+0031D6 9000A3            MOV     DPTR,#YC_GPIOWakeupL
+0031D9 F0                MOVX    @DPTR,A
   248: 		YC_GPIOWakeupH[0] = ~temp;
-0031DB EF                MOV     A,R7
-0031DC F4                CPL     A
-0031DD 9000A7            MOV     DPTR,#YC_GPIOWakeupH
-0031E0 F0                MOVX    @DPTR,A
+0031DA EF                MOV     A,R7
+0031DB F4                CPL     A
+0031DC 9000A7            MOV     DPTR,#YC_GPIOWakeupH
+0031DF F0                MOVX    @DPTR,A
   249: 	}
   250: 
   251: }
-0031E1 22                RET     
+0031E0 22                RET     
 ----- FUNCTION KS_Unistall (END) -------
 
 
 ----- FUNCTION _GPIO_SetWakeupByCurrentState (BEGIN) -----
-0031E2 904F12            MOV     DPTR,#gpio_num
-0031E5 EF                MOV     A,R7
-0031E6 F0                MOVX    @DPTR,A
-0031E7 5181              ACALL   _GPIO_GetInputStatus
-0031E9 9208              MOV     st,C
-0031EB 904F12            MOV     DPTR,#gpio_num
-0031EE E0                MOVX    A,@DPTR
-0031EF FF                MOV     R7,A
-0031F0 A208              MOV     C,st
-0031F2 B3                CPL     C
-0031F3 9207              MOV     ?_GPIO_SetWakeup?BIT,C
+0031E1 904F12            MOV     DPTR,#gpio_num
+0031E4 EF                MOV     A,R7
+0031E5 F0                MOVX    @DPTR,A
+0031E6 5180              ACALL   _GPIO_GetInputStatus
+0031E8 9208              MOV     st,C
+0031EA 904F12            MOV     DPTR,#gpio_num
+0031ED E0                MOVX    A,@DPTR
+0031EE FF                MOV     R7,A
+0031EF A208              MOV     C,st
+0031F1 B3                CPL     C
+0031F2 9207              MOV     ?_GPIO_SetWakeup?BIT,C
 ;----                  JMP     _GPIO_SetWakeup
 ----- FUNCTION _GPIO_SetWakeupByCurrentState (END) -------
 
 
 ----- FUNCTION _GPIO_SetWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-0031F5 EF                MOV     A,R7
-0031F6 F4                CPL     A
-0031F7 7002              JNZ     $ + 4H
-0031F9 4180              AJMP    ?C0019?GPIO
-0031FB         ?C0018?GPIO:
-0031FB EF                MOV     A,R7
-0031FC 5407              ANL     A,#07H
-0031FE FE                MOV     R6,A
+0031F4 EF                MOV     A,R7
+0031F5 F4                CPL     A
+0031F6 7002              JNZ     $ + 4H
+0031F8 417F              AJMP    ?C0019?GPIO
+0031FA         ?C0018?GPIO:
+0031FA EF                MOV     A,R7
+0031FB 5407              ANL     A,#07H
+0031FD FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-0031FF EF                MOV     A,R7
+0031FE EF                MOV     A,R7
+0031FF 13                RRC     A
 003200 13                RRC     A
 003201 13                RRC     A
-003202 13                RRC     A
-003203 5403              ANL     A,#03H
-003205 FF                MOV     R7,A
+003202 5403              ANL     A,#03H
+003204 FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-003206 300743            JNB     st,?C0020?GPIO
-003209 24A3              ADD     A,#LOW YC_GPIOWakeupL
-00320B F582              MOV     DPL,A
-00320D E4                CLR     A
-00320E 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-003210 F583              MOV     DPH,A
-003212 C083              PUSH    DPH
-003214 C082              PUSH    DPL
-003216 E0                MOVX    A,@DPTR
-003217 FD                MOV     R5,A
-003218 7401              MOV     A,#01H
-00321A A806              MOV     R0,AR6
-00321C 08                INC     R0
-00321D 8002              SJMP    ?C0037?GPIO
-00321F         ?C0036?GPIO:
-00321F C3                CLR     C
-003220 33                RLC     A
-003221         ?C0037?GPIO:
-003221 D8FC              DJNZ    R0,?C0036?GPIO
-003223 F4                CPL     A
-003224 5D                ANL     A,R5
-003225 D082              POP     DPL
-003227 D083              POP     DPH
-003229 F0                MOVX    @DPTR,A
-00322A 74A7              MOV     A,#LOW YC_GPIOWakeupH
-00322C 2F                ADD     A,R7
-00322D F582              MOV     DPL,A
-00322F E4                CLR     A
-003230 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-003232 F583              MOV     DPH,A
-003234 C083              PUSH    DPH
-003236 C082              PUSH    DPL
-003238 E0                MOVX    A,@DPTR
-003239 FF                MOV     R7,A
-00323A 7401              MOV     A,#01H
-00323C A806              MOV     R0,AR6
-00323E 08                INC     R0
-00323F 8002              SJMP    ?C0039?GPIO
-003241         ?C0038?GPIO:
-003241 C3                CLR     C
-003242 33                RLC     A
-003243         ?C0039?GPIO:
-003243 D8FC              DJNZ    R0,?C0038?GPIO
-003245 4F                ORL     A,R7
-003246 D082              POP     DPL
-003248 D083              POP     DPH
-00324A F0                MOVX    @DPTR,A
-00324B 22                RET     
-00324C         ?C0020?GPIO:
-00324C 74A3              MOV     A,#LOW YC_GPIOWakeupL
-00324E 2F                ADD     A,R7
-00324F F582              MOV     DPL,A
-003251 E4                CLR     A
-003252 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-003254 F583              MOV     DPH,A
-003256 C083              PUSH    DPH
-003258 C082              PUSH    DPL
-00325A E0                MOVX    A,@DPTR
-00325B FD                MOV     R5,A
-00325C 7401              MOV     A,#01H
-00325E A806              MOV     R0,AR6
-003260 08                INC     R0
-003261 8002              SJMP    ?C0041?GPIO
-003263         ?C0040?GPIO:
-003263 C3                CLR     C
-003264 33                RLC     A
-003265         ?C0041?GPIO:
-003265 D8FC              DJNZ    R0,?C0040?GPIO
-003267 FC                MOV     R4,A
-003268 4D                ORL     A,R5
-003269 D082              POP     DPL
-00326B D083              POP     DPH
-00326D F0                MOVX    @DPTR,A
-00326E 74A7              MOV     A,#LOW YC_GPIOWakeupH
-003270 2F                ADD     A,R7
-003271 F582              MOV     DPL,A
-003273 E4                CLR     A
-003274 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-003276 F583              MOV     DPH,A
-003278 E0                MOVX    A,@DPTR
-003279 FF                MOV     R7,A
-00327A EC                MOV     A,R4
-00327B F4                CPL     A
-00327C FE                MOV     R6,A
-00327D EF                MOV     A,R7
-00327E 5E                ANL     A,R6
-00327F F0                MOVX    @DPTR,A
-003280         ?C0019?GPIO:
-003280 22                RET     
+003205 300743            JNB     st,?C0020?GPIO
+003208 24A3              ADD     A,#LOW YC_GPIOWakeupL
+00320A F582              MOV     DPL,A
+00320C E4                CLR     A
+00320D 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+00320F F583              MOV     DPH,A
+003211 C083              PUSH    DPH
+003213 C082              PUSH    DPL
+003215 E0                MOVX    A,@DPTR
+003216 FD                MOV     R5,A
+003217 7401              MOV     A,#01H
+003219 A806              MOV     R0,AR6
+00321B 08                INC     R0
+00321C 8002              SJMP    ?C0037?GPIO
+00321E         ?C0036?GPIO:
+00321E C3                CLR     C
+00321F 33                RLC     A
+003220         ?C0037?GPIO:
+003220 D8FC              DJNZ    R0,?C0036?GPIO
+003222 F4                CPL     A
+003223 5D                ANL     A,R5
+003224 D082              POP     DPL
+003226 D083              POP     DPH
+003228 F0                MOVX    @DPTR,A
+003229 74A7              MOV     A,#LOW YC_GPIOWakeupH
+00322B 2F                ADD     A,R7
+00322C F582              MOV     DPL,A
+00322E E4                CLR     A
+00322F 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+003231 F583              MOV     DPH,A
+003233 C083              PUSH    DPH
+003235 C082              PUSH    DPL
+003237 E0                MOVX    A,@DPTR
+003238 FF                MOV     R7,A
+003239 7401              MOV     A,#01H
+00323B A806              MOV     R0,AR6
+00323D 08                INC     R0
+00323E 8002              SJMP    ?C0039?GPIO
+003240         ?C0038?GPIO:
+003240 C3                CLR     C
+003241 33                RLC     A
+003242         ?C0039?GPIO:
+003242 D8FC              DJNZ    R0,?C0038?GPIO
+003244 4F                ORL     A,R7
+003245 D082              POP     DPL
+003247 D083              POP     DPH
+003249 F0                MOVX    @DPTR,A
+00324A 22                RET     
+00324B         ?C0020?GPIO:
+00324B 74A3              MOV     A,#LOW YC_GPIOWakeupL
+00324D 2F                ADD     A,R7
+00324E F582              MOV     DPL,A
+003250 E4                CLR     A
+003251 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+003253 F583              MOV     DPH,A
+003255 C083              PUSH    DPH
+003257 C082              PUSH    DPL
+003259 E0                MOVX    A,@DPTR
+00325A FD                MOV     R5,A
+00325B 7401              MOV     A,#01H
+00325D A806              MOV     R0,AR6
+00325F 08                INC     R0
+003260 8002              SJMP    ?C0041?GPIO
+003262         ?C0040?GPIO:
+003262 C3                CLR     C
+003263 33                RLC     A
+003264         ?C0041?GPIO:
+003264 D8FC              DJNZ    R0,?C0040?GPIO
+003266 FC                MOV     R4,A
+003267 4D                ORL     A,R5
+003268 D082              POP     DPL
+00326A D083              POP     DPH
+00326C F0                MOVX    @DPTR,A
+00326D 74A7              MOV     A,#LOW YC_GPIOWakeupH
+00326F 2F                ADD     A,R7
+003270 F582              MOV     DPL,A
+003272 E4                CLR     A
+003273 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+003275 F583              MOV     DPH,A
+003277 E0                MOVX    A,@DPTR
+003278 FF                MOV     R7,A
+003279 EC                MOV     A,R4
+00327A F4                CPL     A
+00327B FE                MOV     R6,A
+00327C EF                MOV     A,R7
+00327D 5E                ANL     A,R6
+00327E F0                MOVX    @DPTR,A
+00327F         ?C0019?GPIO:
+00327F 22                RET     
 ----- FUNCTION _GPIO_SetWakeup (END) -------
 
 
 ----- FUNCTION _GPIO_GetInputStatus (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-003281 7B01              MOV     R3,#01H
-003283 7A81              MOV     R2,#081H
-003285 791C              MOV     R1,#01CH
+003280 7B01              MOV     R3,#01H
+003282 7A81              MOV     R2,#081H
+003284 791C              MOV     R1,#01CH
 ;----                  JMP     _gpioGetBit
 ----- FUNCTION _GPIO_GetInputStatus (END) -------
 
 
 ----- FUNCTION _gpioGetBit (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R5' ----
-003287 AD07              MOV     R5,AR7
+003286 AD07              MOV     R5,AR7
 ;---- Variable 'reg_base' assigned to Register 'R1/R2/R3' ----
-003289 E4                CLR     A
-00328A 904F11            MOV     DPTR,#queue
-00328D F0                MOVX    @DPTR,A
+003288 E4                CLR     A
+003289 904F11            MOV     DPTR,#queue
+00328C F0                MOVX    @DPTR,A
 ;---- Variable 'group' assigned to Register 'R6' ----
-00328E FE                MOV     R6,A
-00328F EF                MOV     A,R7
-003290 5407              ANL     A,#07H
-003292 F0                MOVX    @DPTR,A
-003293 EF                MOV     A,R7
+00328D FE                MOV     R6,A
+00328E EF                MOV     A,R7
+00328F 5407              ANL     A,#07H
+003291 F0                MOVX    @DPTR,A
+003292 EF                MOV     A,R7
+003293 13                RRC     A
 003294 13                RRC     A
 003295 13                RRC     A
-003296 13                RRC     A
-003297 5403              ANL     A,#03H
-003299 FE                MOV     R6,A
-00329A F582              MOV     DPL,A
-00329C 758300            MOV     DPH,#00H
-00329F 1203CF            LCALL   ?C?CLDOPTR
-0032A2 FD                MOV     R5,A
-0032A3 33                RLC     A
-0032A4 95E0              SUBB    A,ACC
-0032A6 FC                MOV     R4,A
-0032A7 904F11            MOV     DPTR,#queue
-0032AA E0                MOVX    A,@DPTR
-0032AB FF                MOV     R7,A
-0032AC 7401              MOV     A,#01H
-0032AE 7E00              MOV     R6,#00H
-0032B0 A807              MOV     R0,AR7
-0032B2 08                INC     R0
-0032B3 8005              SJMP    ?C0035?GPIO
-0032B5         ?C0034?GPIO:
-0032B5 C3                CLR     C
-0032B6 33                RLC     A
-0032B7 CE                XCH     A,R6
-0032B8 33                RLC     A
-0032B9 CE                XCH     A,R6
-0032BA         ?C0035?GPIO:
-0032BA D8F9              DJNZ    R0,?C0034?GPIO
-0032BC FF                MOV     R7,A
-0032BD EE                MOV     A,R6
-0032BE 5C                ANL     A,R4
-0032BF FE                MOV     R6,A
-0032C0 EF                MOV     A,R7
-0032C1 5D                ANL     A,R5
-0032C2 4E                ORL     A,R6
-0032C3 24FF              ADD     A,#0FFH
-0032C5 22                RET     
+003296 5403              ANL     A,#03H
+003298 FE                MOV     R6,A
+003299 F582              MOV     DPL,A
+00329B 758300            MOV     DPH,#00H
+00329E 1203CF            LCALL   ?C?CLDOPTR
+0032A1 FD                MOV     R5,A
+0032A2 33                RLC     A
+0032A3 95E0              SUBB    A,ACC
+0032A5 FC                MOV     R4,A
+0032A6 904F11            MOV     DPTR,#queue
+0032A9 E0                MOVX    A,@DPTR
+0032AA FF                MOV     R7,A
+0032AB 7401              MOV     A,#01H
+0032AD 7E00              MOV     R6,#00H
+0032AF A807              MOV     R0,AR7
+0032B1 08                INC     R0
+0032B2 8005              SJMP    ?C0035?GPIO
+0032B4         ?C0034?GPIO:
+0032B4 C3                CLR     C
+0032B5 33                RLC     A
+0032B6 CE                XCH     A,R6
+0032B7 33                RLC     A
+0032B8 CE                XCH     A,R6
+0032B9         ?C0035?GPIO:
+0032B9 D8F9              DJNZ    R0,?C0034?GPIO
+0032BB FF                MOV     R7,A
+0032BC EE                MOV     A,R6
+0032BD 5C                ANL     A,R4
+0032BE FE                MOV     R6,A
+0032BF EF                MOV     A,R7
+0032C0 5D                ANL     A,R5
+0032C1 4E                ORL     A,R6
+0032C2 24FF              ADD     A,#0FFH
+0032C4 22                RET     
 ----- FUNCTION _gpioGetBit (END) -------
 
 
 ----- FUNCTION _GPIO_FlipOutBit (BEGIN) -----
-0032C6 904F13            MOV     DPTR,#gpio_num
-0032C9 EF                MOV     A,R7
-0032CA F0                MOVX    @DPTR,A
-0032CB 7B01              MOV     R3,#01H
-0032CD 7A80              MOV     R2,#080H
-0032CF 7974              MOV     R1,#074H
-0032D1 5187              ACALL   _gpioGetBit
-0032D3 9209              MOV     st,C
-0032D5 904F13            MOV     DPTR,#gpio_num
-0032D8 E0                MOVX    A,@DPTR
-0032D9 FF                MOV     R7,A
-0032DA A209              MOV     C,st
-0032DC B3                CPL     C
-0032DD 9201              MOV     ?_GPIO_Setout?BIT,C
-0032DF 020FE9            LJMP    _GPIO_Setout
+0032C5 904F13            MOV     DPTR,#gpio_num
+0032C8 EF                MOV     A,R7
+0032C9 F0                MOVX    @DPTR,A
+0032CA 7B01              MOV     R3,#01H
+0032CC 7A80              MOV     R2,#080H
+0032CE 7974              MOV     R1,#074H
+0032D0 5186              ACALL   _gpioGetBit
+0032D2 9209              MOV     st,C
+0032D4 904F13            MOV     DPTR,#gpio_num
+0032D7 E0                MOVX    A,@DPTR
+0032D8 FF                MOV     R7,A
+0032D9 A209              MOV     C,st
+0032DB B3                CPL     C
+0032DC 9201              MOV     ?_GPIO_Setout?BIT,C
+0032DE 020FE9            LJMP    _GPIO_Setout
 ----- FUNCTION _GPIO_FlipOutBit (END) -------
 
 
@@ -9864,190 +9860,222 @@
   616: {
   617: //pairing timer
   618: 	if (g_variable.pairing_timeout != 0)
-0032E2 904CE9            MOV     DPTR,#g_variable+02AH
-0032E5 E0                MOVX    A,@DPTR
-0032E6 7002              JNZ     ?C0183?SYS
-0032E8 A3                INC     DPTR
-0032E9 E0                MOVX    A,@DPTR
-0032EA         ?C0183?SYS:
-0032EA 6060              JZ      ?C0098?SYS
+0032E1 904CE9            MOV     DPTR,#g_variable+02AH
+0032E4 E0                MOVX    A,@DPTR
+0032E5 7002              JNZ     ?C0184?SYS
+0032E7 A3                INC     DPTR
+0032E8 E0                MOVX    A,@DPTR
+0032E9         ?C0184?SYS:
+0032E9 6060              JZ      ?C0098?SYS
   619: 	{
   620: 		g_variable.sleepTimer = 0;
-0032EC E4                CLR     A
-0032ED 904CE3            MOV     DPTR,#g_variable+024H
-0032F0 F0                MOVX    @DPTR,A
-0032F1 A3                INC     DPTR
-0032F2 F0                MOVX    @DPTR,A
+0032EB E4                CLR     A
+0032EC 904CE3            MOV     DPTR,#g_variable+024H
+0032EF F0                MOVX    @DPTR,A
+0032F0 A3                INC     DPTR
+0032F1 F0                MOVX    @DPTR,A
   621: 		g_variable.fast_connect_send_name = 0;
-0032F3 904CFE            MOV     DPTR,#g_variable+03FH
-0032F6 F0                MOVX    @DPTR,A
+0032F2 904CFE            MOV     DPTR,#g_variable+03FH
+0032F5 F0                MOVX    @DPTR,A
   622: 		g_variable.pairing_timeout--;
-0032F7 904CEA            MOV     DPTR,#g_variable+02BH
-0032FA E0                MOVX    A,@DPTR
-0032FB 24FF              ADD     A,#0FFH
-0032FD F0                MOVX    @DPTR,A
-0032FE 904CE9            MOV     DPTR,#g_variable+02AH
-003301 E0                MOVX    A,@DPTR
-003302 34FF              ADDC    A,#0FFH
-003304 F0                MOVX    @DPTR,A
+0032F6 904CEA            MOV     DPTR,#g_variable+02BH
+0032F9 E0                MOVX    A,@DPTR
+0032FA 24FF              ADD     A,#0FFH
+0032FC F0                MOVX    @DPTR,A
+0032FD 904CE9            MOV     DPTR,#g_variable+02AH
+003300 E0                MOVX    A,@DPTR
+003301 34FF              ADDC    A,#0FFH
+003303 F0                MOVX    @DPTR,A
   623: 		if (g_variable.button_reconnect_flag != 1)
-003305 904CCC            MOV     DPTR,#g_variable+0DH
-003308 E0                MOVX    A,@DPTR
-003309 6401              XRL     A,#01H
-00330B 6018              JZ      ?C0099?SYS
+003304 904CCC            MOV     DPTR,#g_variable+0DH
+003307 E0                MOVX    A,@DPTR
+003308 6401              XRL     A,#01H
+00330A 6018              JZ      ?C0099?SYS
   624: 		{
   625: 			g_variable.sys_mode_led_on_timer = 0;
-00330D E4                CLR     A
-00330E 904CE8            MOV     DPTR,#g_variable+029H
-003311 F0                MOVX    @DPTR,A
+00330C E4                CLR     A
+00330D 904CE8            MOV     DPTR,#g_variable+029H
+003310 F0                MOVX    @DPTR,A
   626: 			
   627: 			if(g_variable.current_device_num == 1)
-003312 904CC3            MOV     DPTR,#g_variable+04H
-003315 E0                MOVX    A,@DPTR
-003316 B40106            CJNE    A,#01H,?C0100?SYS
+003311 904CC3            MOV     DPTR,#g_variable+04H
+003314 E0                MOVX    A,@DPTR
+003315 B40106            CJNE    A,#01H,?C0100?SYS
   628: 				GPIO_FlipOutBit(BT_LED_GPIO);
-003319 7F1C              MOV     R7,#01CH
-00331B 51C6              ACALL   _GPIO_FlipOutBit
-00331D 800F              SJMP    ?C0102?SYS
-00331F         ?C0100?SYS:
+003318 7F1C              MOV     R7,#01CH
+00331A 51C5              ACALL   _GPIO_FlipOutBit
+00331C 800F              SJMP    ?C0102?SYS
+00331E         ?C0100?SYS:
   629: 			else
   630: 				GPIO_FlipOutBit(BT2_LED_GPIO);
-00331F 7F1C              MOV     R7,#01CH
-003321 51C6              ACALL   _GPIO_FlipOutBit
+00331E 7F1C              MOV     R7,#01CH
+003320 51C5              ACALL   _GPIO_FlipOutBit
   631: 			
   632: 		}
-003323 8009              SJMP    ?C0102?SYS
-003325         ?C0099?SYS:
+003322 8009              SJMP    ?C0102?SYS
+003324         ?C0099?SYS:
   633: 		else
   634: 		{
   635: 			if(!g_variable.sys_mode_led_on_timer)
-003325 904CE8            MOV     DPTR,#g_variable+029H
-003328 E0                MOVX    A,@DPTR
-003329 7003              JNZ     ?C0102?SYS
+003324 904CE8            MOV     DPTR,#g_variable+029H
+003327 E0                MOVX    A,@DPTR
+003328 7003              JNZ     ?C0102?SYS
   636: 				LED_device_poweroff();
-00332B 120FCB            LCALL   LED_device_poweroff
+00332A 120FCB            LCALL   LED_device_poweroff
   637: 		}
-00332E         ?C0102?SYS:
+00332D         ?C0102?SYS:
   638: 		if (g_variable.pairing_timeout == 0)
-00332E 904CE9            MOV     DPTR,#g_variable+02AH
-003331 E0                MOVX    A,@DPTR
-003332 7002              JNZ     ?C0184?SYS
-003334 A3                INC     DPTR
-003335 E0                MOVX    A,@DPTR
-003336         ?C0184?SYS:
-003336 7014              JNZ     ?C0098?SYS
+00332D 904CE9            MOV     DPTR,#g_variable+02AH
+003330 E0                MOVX    A,@DPTR
+003331 7002              JNZ     ?C0185?SYS
+003333 A3                INC     DPTR
+003334 E0                MOVX    A,@DPTR
+003335         ?C0185?SYS:
+003335 7014              JNZ     ?C0098?SYS
   639: 		{
   640: 			g_variable.current_device_num = g_variable.temp_device_num;
-003338 904CC4            MOV     DPTR,#g_variable+05H
-00333B E0                MOVX    A,@DPTR
-00333C 904CC3            MOV     DPTR,#g_variable+04H
-00333F F0                MOVX    @DPTR,A
+003337 904CC4            MOV     DPTR,#g_variable+05H
+00333A E0                MOVX    A,@DPTR
+00333B 904CC3            MOV     DPTR,#g_variable+04H
+00333E F0                MOVX    @DPTR,A
   641: 			g_variable.last_device_num = g_variable.current_device_num;
-003340 904CC0            MOV     DPTR,#g_variable+01H
-003343 F0                MOVX    @DPTR,A
+00333F 904CC0            MOV     DPTR,#g_variable+01H
+003342 F0                MOVX    @DPTR,A
   642: 		
   643: 			YC_key_action_handle(KEY_STOP_DISCOVERY);
-003344 7F0D              MOV     R7,#0DH
-003346 12091C            LCALL   _YC_key_action_handle
+003343 7F0D              MOV     R7,#0DH
+003345 12091C            LCALL   _YC_key_action_handle
   644: 			System_long_sleep();
-003349 120F42            LCALL   System_long_sleep
+003348 120F42            LCALL   System_long_sleep
   645: 		}
   646: 	}
-00334C         ?C0098?SYS:
+00334B         ?C0098?SYS:
   647: 
   648: 	if (g_variable.pairing_g24_timeout != 0)
-00334C 904CEF            MOV     DPTR,#g_variable+030H
-00334F E0                MOVX    A,@DPTR
-003350 7002              JNZ     ?C0185?SYS
-003352 A3                INC     DPTR
-003353 E0                MOVX    A,@DPTR
-003354         ?C0185?SYS:
-003354 602B              JZ      ?C0107?SYS
+00334B 904CEF            MOV     DPTR,#g_variable+030H
+00334E E0                MOVX    A,@DPTR
+00334F 7002              JNZ     ?C0186?SYS
+003351 A3                INC     DPTR
+003352 E0                MOVX    A,@DPTR
+003353         ?C0186?SYS:
+003353 602B              JZ      ?C0107?SYS
   649: 	{
   650: 		g_variable.sleepTimer = 0;
-003356 E4                CLR     A
-003357 904CE3            MOV     DPTR,#g_variable+024H
-00335A F0                MOVX    @DPTR,A
-00335B A3                INC     DPTR
-00335C F0                MOVX    @DPTR,A
+003355 E4                CLR     A
+003356 904CE3            MOV     DPTR,#g_variable+024H
+003359 F0                MOVX    @DPTR,A
+00335A A3                INC     DPTR
+00335B F0                MOVX    @DPTR,A
   651: 		g_variable.pairing_g24_timeout--;
-00335D 904CF0            MOV     DPTR,#g_variable+031H
-003360 E0                MOVX    A,@DPTR
-003361 24FF              ADD     A,#0FFH
-003363 F0                MOVX    @DPTR,A
-003364 904CEF            MOV     DPTR,#g_variable+030H
-003367 E0                MOVX    A,@DPTR
-003368 34FF              ADDC    A,#0FFH
-00336A F0                MOVX    @DPTR,A
+00335C 904CF0            MOV     DPTR,#g_variable+031H
+00335F E0                MOVX    A,@DPTR
+003360 24FF              ADD     A,#0FFH
+003362 F0                MOVX    @DPTR,A
+003363 904CEF            MOV     DPTR,#g_variable+030H
+003366 E0                MOVX    A,@DPTR
+003367 34FF              ADDC    A,#0FFH
+003369 F0                MOVX    @DPTR,A
   652: 		GPIO_FlipOutBit(G24_LED_GPIO);
-00336B 7F1C              MOV     R7,#01CH
-00336D 51C6              ACALL   _GPIO_FlipOutBit
+00336A 7F1C              MOV     R7,#01CH
+00336C 51C5              ACALL   _GPIO_FlipOutBit
   653: 		if (g_variable.pairing_g24_timeout == 0)
-00336F 904CEF            MOV     DPTR,#g_variable+030H
-003372 E0                MOVX    A,@DPTR
-003373 7002              JNZ     ?C0186?SYS
-003375 A3                INC     DPTR
-003376 E0                MOVX    A,@DPTR
-003377         ?C0186?SYS:
-003377 7008              JNZ     ?C0107?SYS
+00336E 904CEF            MOV     DPTR,#g_variable+030H
+003371 E0                MOVX    A,@DPTR
+003372 7002              JNZ     ?C0187?SYS
+003374 A3                INC     DPTR
+003375 E0                MOVX    A,@DPTR
+003376         ?C0187?SYS:
+003376 7008              JNZ     ?C0107?SYS
   654: 		{
   655: //			IPC_TxControlCmd(IPC_CMD_STOP_24G);
   656: 			Delay1ms(10);
-003379 7F0A              MOV     R7,#0AH
-00337B 120F4B            LCALL   _Delay1ms
+003378 7F0A              MOV     R7,#0AH
+00337A 120F4B            LCALL   _Delay1ms
   657: 			System_long_sleep();
-00337E 120F42            LCALL   System_long_sleep
+00337D 120F42            LCALL   System_long_sleep
   658: 		}
   659: 	}
   660: }
-003381         ?C0107?SYS:
-003381 22                RET     
+003380         ?C0107?SYS:
+003380 22                RET     
 ----- FUNCTION YC_pairing_timerout_500ms (END) -------
 
 
 ----- FUNCTION GPIO_fillpd (BEGIN) -----
 ;---- Variable 'i' assigned to Register 'R7' ----
-003382 E4                CLR     A
-003383 FF                MOV     R7,A
-003384         ?C0026?GPIO:
-003384 EF                MOV     A,R7
-003385 FD                MOV     R5,A
-003386 7C00              MOV     R4,#00H
-003388 2478              ADD     A,#078H
-00338A FB                MOV     R3,A
-00338B EC                MOV     A,R4
-00338C 3480              ADDC    A,#080H
-00338E 8B82              MOV     DPL,R3
-003390 F583              MOV     DPH,A
-003392 E0                MOVX    A,@DPTR
-003393 FE                MOV     R6,A
-003394 ED                MOV     A,R5
-003395 2470              ADD     A,#070H
-003397 FD                MOV     R5,A
-003398 EC                MOV     A,R4
-003399 3480              ADDC    A,#080H
-00339B 8D82              MOV     DPL,R5
-00339D F583              MOV     DPH,A
-00339F E0                MOVX    A,@DPTR
-0033A0 4E                ORL     A,R6
-0033A1 F4                CPL     A
-0033A2 FE                MOV     R6,A
-0033A3 EF                MOV     A,R7
-0033A4 247C              ADD     A,#07CH
-0033A6 FD                MOV     R5,A
-0033A7 EC                MOV     A,R4
-0033A8 3480              ADDC    A,#080H
-0033AA 8D82              MOV     DPL,R5
-0033AC F583              MOV     DPH,A
-0033AE EE                MOV     A,R6
-0033AF F0                MOVX    @DPTR,A
-0033B0 0F                INC     R7
-0033B1 EF                MOV     A,R7
-0033B2 B404CF            CJNE    A,#04H,?C0026?GPIO
-0033B5 22                RET     
+003381 E4                CLR     A
+003382 FF                MOV     R7,A
+003383         ?C0026?GPIO:
+003383 EF                MOV     A,R7
+003384 FD                MOV     R5,A
+003385 7C00              MOV     R4,#00H
+003387 2478              ADD     A,#078H
+003389 FB                MOV     R3,A
+00338A EC                MOV     A,R4
+00338B 3480              ADDC    A,#080H
+00338D 8B82              MOV     DPL,R3
+00338F F583              MOV     DPH,A
+003391 E0                MOVX    A,@DPTR
+003392 FE                MOV     R6,A
+003393 ED                MOV     A,R5
+003394 2470              ADD     A,#070H
+003396 FD                MOV     R5,A
+003397 EC                MOV     A,R4
+003398 3480              ADDC    A,#080H
+00339A 8D82              MOV     DPL,R5
+00339C F583              MOV     DPH,A
+00339E E0                MOVX    A,@DPTR
+00339F 4E                ORL     A,R6
+0033A0 F4                CPL     A
+0033A1 FE                MOV     R6,A
+0033A2 EF                MOV     A,R7
+0033A3 247C              ADD     A,#07CH
+0033A5 FD                MOV     R5,A
+0033A6 EC                MOV     A,R4
+0033A7 3480              ADDC    A,#080H
+0033A9 8D82              MOV     DPL,R5
+0033AB F583              MOV     DPH,A
+0033AD EE                MOV     A,R6
+0033AE F0                MOVX    @DPTR,A
+0033AF 0F                INC     R7
+0033B0 EF                MOV     A,R7
+0033B1 B404CF            CJNE    A,#04H,?C0026?GPIO
+0033B4 22                RET     
 ----- FUNCTION GPIO_fillpd (END) -------
 
 
+----- FUNCTION LED_device_poweron (BEGIN) -----
+ FILE: 'led.c'
+   16: void LED_device_poweron()
+   17: {
+   18: 	if(g_variable.current_device_num == 1)
+   19: 		GPIO_Setout(BT_LED_GPIO,LED_ON);
+0033B5 904CC3            MOV     DPTR,#g_variable+04H
+0033B8 E0                MOVX    A,@DPTR
+0033B9 B40107            CJNE    A,#01H,?C0002?LED
+   20: 	else if(g_variable.current_device_num == 2)
+0033BC D201              SETB    ?_GPIO_Setout?BIT
+0033BE 7F1C              MOV     R7,#01CH
+0033C0 020FE9            LJMP    _GPIO_Setout
+0033C3         ?C0002?LED:
+   21: 		GPIO_Setout(BT2_LED_GPIO,LED_ON);
+0033C3 904CC3            MOV     DPTR,#g_variable+04H
+0033C6 E0                MOVX    A,@DPTR
+0033C7 B40207            CJNE    A,#02H,?C0004?LED
+   22: 	else
+0033CA D201              SETB    ?_GPIO_Setout?BIT
+0033CC 7F1C              MOV     R7,#01CH
+0033CE 020FE9            LJMP    _GPIO_Setout
+0033D1         ?C0004?LED:
+   23: 	{
+   24: 		GPIO_Setout(G24_LED_GPIO,LED_ON);
+0033D1 D201              SETB    ?_GPIO_Setout?BIT
+0033D3 7F1C              MOV     R7,#01CH
+0033D5 020FE9            LJMP    _GPIO_Setout
+   25: 	}
+----- FUNCTION LED_device_poweron (END) -------
+
+
 ----- FUNCTION kb_cb_Timer100ms (BEGIN) -----
  FILE: 'sys.c'
   803: static void kb_cb_Timer100ms()
@@ -10055,352 +10083,375 @@
   805: 
   806: 
   807: 	if (g_variable.delay_enter_lpm_timer) 
-0033B6 904CEB            MOV     DPTR,#g_variable+02CH
-0033B9 E0                MOVX    A,@DPTR
-0033BA 6002              JZ      ?C0132?SYS
+0033D8 904CEB            MOV     DPTR,#g_variable+02CH
+0033DB E0                MOVX    A,@DPTR
+0033DC 6002              JZ      ?C0132?SYS
   808: 	{
   809: 		g_variable.delay_enter_lpm_timer --;
-0033BC 14                DEC     A
-0033BD F0                MOVX    @DPTR,A
+0033DE 14                DEC     A
+0033DF F0                MOVX    @DPTR,A
   810: 	}
-0033BE         ?C0132?SYS:
+0033E0         ?C0132?SYS:
   811: 
   812: 	if(g_variable.recon_delay)
-0033BE 904CF1            MOV     DPTR,#g_variable+032H
-0033C1 E0                MOVX    A,@DPTR
-0033C2 6002              JZ      ?C0133?SYS
+0033E0 904CF1            MOV     DPTR,#g_variable+032H
+0033E3 E0                MOVX    A,@DPTR
+0033E4 6002              JZ      ?C0133?SYS
   813: 		g_variable.recon_delay--;
-0033C4 14                DEC     A
-0033C5 F0                MOVX    @DPTR,A
-0033C6         ?C0133?SYS:
+0033E6 14                DEC     A
+0033E7 F0                MOVX    @DPTR,A
+0033E8         ?C0133?SYS:
   814: 
   815: 	if(g_variable.one_key_press_wait_release_timer)
-0033C6 904CFA            MOV     DPTR,#g_variable+03BH
-0033C9 E0                MOVX    A,@DPTR
-0033CA 600B              JZ      ?C0134?SYS
+0033E8 904CFA            MOV     DPTR,#g_variable+03BH
+0033EB E0                MOVX    A,@DPTR
+0033EC 600B              JZ      ?C0134?SYS
   816: 	{
   817: 		g_variable.one_key_press_wait_release_timer--;
-0033CC 14                DEC     A
-0033CD F0                MOVX    @DPTR,A
+0033EE 14                DEC     A
+0033EF F0                MOVX    @DPTR,A
   818: 		if(!g_variable.one_key_press_wait_release_timer)
-0033CE E0                MOVX    A,@DPTR
-0033CF 7006              JNZ     ?C0134?SYS
+0033F0 E0                MOVX    A,@DPTR
+0033F1 7006              JNZ     ?C0134?SYS
   819: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
-0033D1 904CF6            MOV     DPTR,#g_variable+037H
-0033D4 7406              MOV     A,#06H
-0033D6 F0                MOVX    @DPTR,A
+0033F3 904CF6            MOV     DPTR,#g_variable+037H
+0033F6 7406              MOV     A,#06H
+0033F8 F0                MOVX    @DPTR,A
   820: 	}
-0033D7         ?C0134?SYS:
+0033F9         ?C0134?SYS:
   821: 	
   822: 	if (g_variable.powerOn_timer != 0)
-0033D7 904CE5            MOV     DPTR,#g_variable+026H
-0033DA E0                MOVX    A,@DPTR
-0033DB 602C              JZ      ?C0136?SYS
+0033F9 904CE5            MOV     DPTR,#g_variable+026H
+0033FC E0                MOVX    A,@DPTR
+0033FD 602C              JZ      ?C0136?SYS
   823: 	{	
   824: 		if(g_variable.pairing_g24_timeout ||g_variable.pairing_timeout)
-0033DD 904CEF            MOV     DPTR,#g_variable+030H
-0033E0 E0                MOVX    A,@DPTR
-0033E1 7002              JNZ     ?C0188?SYS
-0033E3 A3                INC     DPTR
-0033E4 E0                MOVX    A,@DPTR
-0033E5         ?C0188?SYS:
-0033E5 700A              JNZ     ?C0138?SYS
-0033E7 904CE9            MOV     DPTR,#g_variable+02AH
-0033EA E0                MOVX    A,@DPTR
-0033EB 7002              JNZ     ?C0189?SYS
-0033ED A3                INC     DPTR
-0033EE E0                MOVX    A,@DPTR
-0033EF         ?C0189?SYS:
-0033EF 6006              JZ      ?C0137?SYS
-0033F1         ?C0138?SYS:
+0033FF 904CEF            MOV     DPTR,#g_variable+030H
+003402 E0                MOVX    A,@DPTR
+003403 7002              JNZ     ?C0189?SYS
+003405 A3                INC     DPTR
+003406 E0                MOVX    A,@DPTR
+003407         ?C0189?SYS:
+003407 700A              JNZ     ?C0138?SYS
+003409 904CE9            MOV     DPTR,#g_variable+02AH
+00340C E0                MOVX    A,@DPTR
+00340D 7002              JNZ     ?C0190?SYS
+00340F A3                INC     DPTR
+003410 E0                MOVX    A,@DPTR
+003411         ?C0190?SYS:
+003411 6006              JZ      ?C0137?SYS
+003413         ?C0138?SYS:
   825: 		{
   826: 			g_variable.powerOn_timer = 0;
-0033F1 E4                CLR     A
-0033F2 904CE5            MOV     DPTR,#g_variable+026H
-0033F5 F0                MOVX    @DPTR,A
-0033F6 22                RET     
+003413 E4                CLR     A
+003414 904CE5            MOV     DPTR,#g_variable+026H
+003417 F0                MOVX    @DPTR,A
+003418 22                RET     
   827: 			return;
   828: 		}
-0033F7         ?C0137?SYS:
+003419         ?C0137?SYS:
   829: 			
   830: 		g_variable.powerOn_timer--;
-0033F7 904CE5            MOV     DPTR,#g_variable+026H
-0033FA E0                MOVX    A,@DPTR
-0033FB 14                DEC     A
-0033FC F0                MOVX    @DPTR,A
+003419 904CE5            MOV     DPTR,#g_variable+026H
+00341C E0                MOVX    A,@DPTR
+00341D 14                DEC     A
+00341E F0                MOVX    @DPTR,A
   831: 		if(g_variable.powerOn_timer)
-0033FD E0                MOVX    A,@DPTR
-0033FE 6004              JZ      ?C0140?SYS
+00341F E0                MOVX    A,@DPTR
+003420 6004              JZ      ?C0140?SYS
   832: 		{
   833: 			LED_device_poweron();
-003400 B11B              ACALL   LED_device_poweron
+003422 71B5              ACALL   LED_device_poweron
   834: 		}
-003402 804B              SJMP    ?C0142?SYS
-003404         ?C0140?SYS:
+003424 804E              SJMP    ?C0142?SYS
+003426         ?C0140?SYS:
   835: 		else
   836: 		{
   837: 			LED_device_poweroff();
-003404 120FCB            LCALL   LED_device_poweroff
+003426 120FCB            LCALL   LED_device_poweroff
   838: 		}
   839: 
   840: 	}
-003407 8046              SJMP    ?C0142?SYS
-003409         ?C0136?SYS:
-  841: 	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
-003409 904CE9            MOV     DPTR,#g_variable+02AH
-00340C E0                MOVX    A,@DPTR
-00340D 7002              JNZ     ?C0190?SYS
-00340F A3                INC     DPTR
-003410 E0                MOVX    A,@DPTR
-003411         ?C0190?SYS:
-003411 703C              JNZ     ?C0142?SYS
-003413 904CEF            MOV     DPTR,#g_variable+030H
-003416 E0                MOVX    A,@DPTR
-003417 7002              JNZ     ?C0191?SYS
-003419 A3                INC     DPTR
-00341A E0                MOVX    A,@DPTR
-00341B         ?C0191?SYS:
-00341B 7032              JNZ     ?C0142?SYS
+003429 8049              SJMP    ?C0142?SYS
+00342B         ?C0136?SYS:
+  841: /*	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
   842: 	{
   843: 		if (g_variable.battery_status == BAT_STATUS_LOW)
-00341D 904CD5            MOV     DPTR,#g_variable+016H
-003420 E0                MOVX    A,@DPTR
-003421 B40126            CJNE    A,#01H,?C0144?SYS
   844: 		{
   845: 			if (g_variable.sleepTimer < KB_POWERON_LED_ON_TIMER)
-003424 C3                CLR     C
-003425 904CE4            MOV     DPTR,#g_variable+025H
-003428 E0                MOVX    A,@DPTR
-003429 941E              SUBB    A,#01EH
-00342B 904CE3            MOV     DPTR,#g_variable+024H
-00342E E0                MOVX    A,@DPTR
-00342F 9400              SUBB    A,#00H
-003431 5010              JNC     ?C0145?SYS
   846: 			{
   847: 				g_variable.battery_low_led_flash_interval++;
-003433 904CE2            MOV     DPTR,#g_variable+023H
-003436 E0                MOVX    A,@DPTR
-003437 04                INC     A
-003438 F0                MOVX    @DPTR,A
   848: 				if(g_variable.battery_low_led_flash_interval & 0x02)
-003439 E0                MOVX    A,@DPTR
-00343A 30E112            JNB     ACC.1,?C0142?SYS
   849: 				{
   850: 					GPIO_FlipOutBit(LOWPOWER_LED_GPIO);
-00343D 7F1F              MOV     R7,#01FH
-00343F 51C6              ACALL   _GPIO_FlipOutBit
   851: 				}
   852: 			}
-003441 800C              SJMP    ?C0142?SYS
-003443         ?C0145?SYS:
   853: 			else
   854: 				g_variable.battery_low_led_flash_interval = 0;
-003443 E4                CLR     A
-003444 904CE2            MOV     DPTR,#g_variable+023H
-003447 F0                MOVX    @DPTR,A
   855: 		}
-003448 8005              SJMP    ?C0142?SYS
-00344A         ?C0144?SYS:
   856: 		else
   857: 			g_variable.battery_low_led_flash_interval = 0;		
-00344A E4                CLR     A
-00344B 904CE2            MOV     DPTR,#g_variable+023H
-00344E F0                MOVX    @DPTR,A
   858: 		
-  859: 	}
-00344F         ?C0142?SYS:
-  860: 	
-  861: // The dongle must receive data within 200ms, otherwise it will be forced to lift
-  862: 	if(!long_press_flag)
-00344F 904DDC            MOV     DPTR,#long_press_flag
-003452 E0                MOVX    A,@DPTR
-003453 7036              JNZ     ?C0149?SYS
-  863: 	{
-  864: 		if (repeat_send_24g == 1)
-003455 904DDD            MOV     DPTR,#repeat_send_24g
-003458 E0                MOVX    A,@DPTR
-003459 6401              XRL     A,#01H
-00345B 702E              JNZ     ?C0149?SYS
-  865: 		{
-  866: 			g_variable.sleepTimer = 0;	
-00345D 904CE3            MOV     DPTR,#g_variable+024H
-003460 F0                MOVX    @DPTR,A
-003461 A3                INC     DPTR
-003462 F0                MOVX    @DPTR,A
-  867: 			repeat_send_24g = 0;
-003463 904DDD            MOV     DPTR,#repeat_send_24g
-003466 F0                MOVX    @DPTR,A
-  868: 
-  869: 			 if (multikey[0] != 0)
-003467 904E4C            MOV     DPTR,#multikey
-00346A E0                MOVX    A,@DPTR
-00346B 600D              JZ      ?C0151?SYS
-  870: 			{
-  871: 				IPC_TxHidData(multikey, 3);
-00346D 7B01              MOV     R3,#01H
-00346F 7A4E              MOV     R2,#HIGH multikey
-003471 794C              MOV     R1,#LOW multikey
-003473 7D03              MOV     R5,#03H
-003475 121461            LCALL   _IPC_TxHidData
-  872: 			}
-003478 8011              SJMP    ?C0149?SYS
-00347A         ?C0151?SYS:
-  873: 			else if (hidBuff[0] != 0)
-00347A 904800            MOV     DPTR,#hidBuff
+  859: 	}*/
+  860: 	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
+00342B 904CE9            MOV     DPTR,#g_variable+02AH
+00342E E0                MOVX    A,@DPTR
+00342F 7002              JNZ     ?C0191?SYS
+003431 A3                INC     DPTR
+003432 E0                MOVX    A,@DPTR
+003433         ?C0191?SYS:
+003433 703F              JNZ     ?C0142?SYS
+003435 904CEF            MOV     DPTR,#g_variable+030H
+003438 E0                MOVX    A,@DPTR
+003439 7002              JNZ     ?C0192?SYS
+00343B A3                INC     DPTR
+00343C E0                MOVX    A,@DPTR
+00343D         ?C0192?SYS:
+00343D 7035              JNZ     ?C0142?SYS
+  861: 	{
+  862: 		if(g_variable.battery_low_led_flash_interval)
+00343F 904CE2            MOV     DPTR,#g_variable+023H
+003442 E0                MOVX    A,@DPTR
+003443 602F              JZ      ?C0142?SYS
+  863: 		{
+  864: 			g_variable.battery_low_led_flash_interval--;
+003445 14                DEC     A
+003446 F0                MOVX    @DPTR,A
+  865: 			if(g_variable.battery_low_led_flash_interval < 8)
+003447 E0                MOVX    A,@DPTR
+003448 FF                MOV     R7,A
+003449 C3                CLR     C
+00344A 9408              SUBB    A,#08H
+00344C 5016              JNC     ?C0145?SYS
+  866: 			{
+  867: 				if(g_variable.battery_low_led_flash_interval & 0x02)
+00344E EF                MOV     A,R7
+00344F 30E109            JNB     ACC.1,?C0146?SYS
+  868: 				{
+  869: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
+003452 D201              SETB    ?_GPIO_Setout?BIT
+003454 7F1F              MOV     R7,#01FH
+003456 120FE9            LCALL   _GPIO_Setout
+  870: 				}
+003459 8010              SJMP    ?C0148?SYS
+00345B         ?C0146?SYS:
+  871: 				else
+  872: 				{
+  873: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
+00345B C201              CLR     ?_GPIO_Setout?BIT
+00345D 7F1F              MOV     R7,#01FH
+00345F 120FE9            LCALL   _GPIO_Setout
+  874: 				}	
+  875: 			}
+003462 8007              SJMP    ?C0148?SYS
+003464         ?C0145?SYS:
+  876: 			else
+  877: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
+003464 C201              CLR     ?_GPIO_Setout?BIT
+003466 7F1F              MOV     R7,#01FH
+003468 120FE9            LCALL   _GPIO_Setout
+00346B         ?C0148?SYS:
+  878: 			if(!g_variable.battery_low_led_flash_interval)
+00346B 904CE2            MOV     DPTR,#g_variable+023H
+00346E E0                MOVX    A,@DPTR
+00346F 7003              JNZ     ?C0142?SYS
+  879: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
+003471 7418              MOV     A,#018H
+003473 F0                MOVX    @DPTR,A
+  880: 		}
+  881: 	}		
+003474         ?C0142?SYS:
+  882: // The dongle must receive data within 200ms, otherwise it will be forced to lift
+  883: 	if(!long_press_flag)
+003474 904DDC            MOV     DPTR,#long_press_flag
+003477 E0                MOVX    A,@DPTR
+003478 7036              JNZ     ?C0150?SYS
+  884: 	{
+  885: 		if (repeat_send_24g == 1)
+00347A 904DDD            MOV     DPTR,#repeat_send_24g
 00347D E0                MOVX    A,@DPTR
-00347E 600B              JZ      ?C0149?SYS
-  874: 			{
-  875: 
-  876: 				IPC_TxHidData(hidBuff,9);
-003480 7B01              MOV     R3,#01H
-003482 7A48              MOV     R2,#HIGH hidBuff
-003484 7900              MOV     R1,#LOW hidBuff
-003486 7D09              MOV     R5,#09H
-003488 121461            LCALL   _IPC_TxHidData
-  877: 			}
-  878: 		}
-  879: 	}
-00348B         ?C0149?SYS:
-  880: 
-  881: 	if(g_variable.sys_mode_led_on_timer && !g_variable.pairing_timeout && !g_variable.pairing_g24_timeout)
-00348B 904CE8            MOV     DPTR,#g_variable+029H
-00348E E0                MOVX    A,@DPTR
-00348F 602C              JZ      ?C0154?SYS
-003491 A3                INC     DPTR
-003492 E0                MOVX    A,@DPTR
-003493 7002              JNZ     ?C0192?SYS
-003495 A3                INC     DPTR
-003496 E0                MOVX    A,@DPTR
-003497         ?C0192?SYS:
-003497 7024              JNZ     ?C0154?SYS
-003499 904CEF            MOV     DPTR,#g_variable+030H
-00349C E0                MOVX    A,@DPTR
-00349D 7002              JNZ     ?C0193?SYS
-00349F A3                INC     DPTR
-0034A0 E0                MOVX    A,@DPTR
-0034A1         ?C0193?SYS:
-0034A1 701A              JNZ     ?C0154?SYS
-  882: 	{
-  883: 		g_variable.sys_mode_led_on_timer--;
-0034A3 904CE8            MOV     DPTR,#g_variable+029H
-0034A6 E0                MOVX    A,@DPTR
-0034A7 14                DEC     A
-0034A8 F0                MOVX    @DPTR,A
-  884: 		GPIO_Setout(MODE_LED_GPIO,LED_ON);
-0034A9 D201              SETB    ?_GPIO_Setout?BIT
-0034AB 7F1D              MOV     R7,#01DH
-0034AD 120FE9            LCALL   _GPIO_Setout
-  885: 		if (!g_variable.sys_mode_led_on_timer)
+00347E 6401              XRL     A,#01H
+003480 702E              JNZ     ?C0150?SYS
+  886: 		{
+  887: 			g_variable.sleepTimer = 0;	
+003482 904CE3            MOV     DPTR,#g_variable+024H
+003485 F0                MOVX    @DPTR,A
+003486 A3                INC     DPTR
+003487 F0                MOVX    @DPTR,A
+  888: 			repeat_send_24g = 0;
+003488 904DDD            MOV     DPTR,#repeat_send_24g
+00348B F0                MOVX    @DPTR,A
+  889: 
+  890: 			 if (multikey[0] != 0)
+00348C 904E4C            MOV     DPTR,#multikey
+00348F E0                MOVX    A,@DPTR
+003490 600D              JZ      ?C0152?SYS
+  891: 			{
+  892: 				IPC_TxHidData(multikey, 3);
+003492 7B01              MOV     R3,#01H
+003494 7A4E              MOV     R2,#HIGH multikey
+003496 794C              MOV     R1,#LOW multikey
+003498 7D03              MOV     R5,#03H
+00349A 121461            LCALL   _IPC_TxHidData
+  893: 			}
+00349D 8011              SJMP    ?C0150?SYS
+00349F         ?C0152?SYS:
+  894: 			else if (hidBuff[0] != 0)
+00349F 904800            MOV     DPTR,#hidBuff
+0034A2 E0                MOVX    A,@DPTR
+0034A3 600B              JZ      ?C0150?SYS
+  895: 			{
+  896: 
+  897: 				IPC_TxHidData(hidBuff,9);
+0034A5 7B01              MOV     R3,#01H
+0034A7 7A48              MOV     R2,#HIGH hidBuff
+0034A9 7900              MOV     R1,#LOW hidBuff
+0034AB 7D09              MOV     R5,#09H
+0034AD 121461            LCALL   _IPC_TxHidData
+  898: 			}
+  899: 		}
+  900: 	}
+0034B0         ?C0150?SYS:
+  901: 
+  902: 	if(g_variable.sys_mode_led_on_timer && !g_variable.pairing_timeout && !g_variable.pairing_g24_timeout)
 0034B0 904CE8            MOV     DPTR,#g_variable+029H
 0034B3 E0                MOVX    A,@DPTR
-0034B4 7007              JNZ     ?C0154?SYS
-  886: 		{
-  887: 		GPIO_Setout(MODE_LED_GPIO,LED_OFF);
-0034B6 C201              CLR     ?_GPIO_Setout?BIT
-0034B8 7F1D              MOV     R7,#01DH
-0034BA 120FE9            LCALL   _GPIO_Setout
-  888: 		}
-  889: 	}
-0034BD         ?C0154?SYS:
-  890: 
-  891: //role switch time out
-  892: 	if (switch_role_timer != 0)
-0034BD 904DD9            MOV     DPTR,#switch_role_timer
-0034C0 E0                MOVX    A,@DPTR
-0034C1 6008              JZ      ?C0156?SYS
-  893: 	{
-  894: 		switch_role_timer--; 
-0034C3 E0                MOVX    A,@DPTR
-0034C4 14                DEC     A
-0034C5 F0                MOVX    @DPTR,A
-  895: 		if (switch_role_timer == 0)
-0034C6 E0                MOVX    A,@DPTR
-0034C7 7002              JNZ     ?C0156?SYS
-  896: 		{
-  897: 			System_Reset_Connect();
-0034C9 B112              ACALL   System_Reset_Connect
-  898: 		}
-  899: 	}
-0034CB         ?C0156?SYS:
-  900: 
-  901: // ble delay send secutiry request
-  902: 	if(ble_send_secutiry_request_timer)
-0034CB 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
-0034CE E0                MOVX    A,@DPTR
-0034CF 6011              JZ      ?C0158?SYS
+0034B4 602C              JZ      ?C0155?SYS
+0034B6 A3                INC     DPTR
+0034B7 E0                MOVX    A,@DPTR
+0034B8 7002              JNZ     ?C0193?SYS
+0034BA A3                INC     DPTR
+0034BB E0                MOVX    A,@DPTR
+0034BC         ?C0193?SYS:
+0034BC 7024              JNZ     ?C0155?SYS
+0034BE 904CEF            MOV     DPTR,#g_variable+030H
+0034C1 E0                MOVX    A,@DPTR
+0034C2 7002              JNZ     ?C0194?SYS
+0034C4 A3                INC     DPTR
+0034C5 E0                MOVX    A,@DPTR
+0034C6         ?C0194?SYS:
+0034C6 701A              JNZ     ?C0155?SYS
   903: 	{
-  904: 		ble_send_secutiry_request_timer--;
-0034D1 E0                MOVX    A,@DPTR
-0034D2 14                DEC     A
-0034D3 F0                MOVX    @DPTR,A
-  905: 		if(!ble_send_secutiry_request_timer)
-0034D4 E0                MOVX    A,@DPTR
-0034D5 700B              JNZ     ?C0158?SYS
-  906: 		{
-  907: 			if(!m_le_send_security_request_flag)
-0034D7 904D3D            MOV     DPTR,#m_le_send_security_request_flag
-0034DA E0                MOVX    A,@DPTR
-0034DB 7005              JNZ     ?C0158?SYS
-  908: 			{
-  909: 				IPC_TxControlCmd(IPC_CMD_LE_SMP_SECURITY_REQUEST);
-0034DD 7F1B              MOV     R7,#01BH
-0034DF 12085F            LCALL   _IPC_TxControlCmd
-  910: 			}
-  911: 		}
-  912: 	}
-0034E2         ?C0158?SYS:
-  913: 
-  914: 	if (delayChgInvTimer != 0)
-0034E2 904DE6            MOV     DPTR,#delayChgInvTimer
+  904: 		g_variable.sys_mode_led_on_timer--;
+0034C8 904CE8            MOV     DPTR,#g_variable+029H
+0034CB E0                MOVX    A,@DPTR
+0034CC 14                DEC     A
+0034CD F0                MOVX    @DPTR,A
+  905: 		GPIO_Setout(MODE_LED_GPIO,LED_ON);
+0034CE D201              SETB    ?_GPIO_Setout?BIT
+0034D0 7F1D              MOV     R7,#01DH
+0034D2 120FE9            LCALL   _GPIO_Setout
+  906: 		if (!g_variable.sys_mode_led_on_timer)
+0034D5 904CE8            MOV     DPTR,#g_variable+029H
+0034D8 E0                MOVX    A,@DPTR
+0034D9 7007              JNZ     ?C0155?SYS
+  907: 		{
+  908: 		GPIO_Setout(MODE_LED_GPIO,LED_OFF);
+0034DB C201              CLR     ?_GPIO_Setout?BIT
+0034DD 7F1D              MOV     R7,#01DH
+0034DF 120FE9            LCALL   _GPIO_Setout
+  909: 		}
+  910: 	}
+0034E2         ?C0155?SYS:
+  911: 
+  912: //role switch time out
+  913: 	if (switch_role_timer != 0)
+0034E2 904DD9            MOV     DPTR,#switch_role_timer
 0034E5 E0                MOVX    A,@DPTR
-0034E6 6029              JZ      ?C0139?SYS
-  915: 	{
-  916: 		delayChgInvTimer--;
+0034E6 6008              JZ      ?C0157?SYS
+  914: 	{
+  915: 		switch_role_timer--; 
 0034E8 E0                MOVX    A,@DPTR
 0034E9 14                DEC     A
 0034EA F0                MOVX    @DPTR,A
-  917: 		if (delayChgInvTimer == 0)
+  916: 		if (switch_role_timer == 0)
 0034EB E0                MOVX    A,@DPTR
-0034EC 7023              JNZ     ?C0139?SYS
-  918: 		{
-  919: 			if( m_24g_led_flag)
-0034EE 904D46            MOV     DPTR,#m_24g_led_flag
-0034F1 E0                MOVX    A,@DPTR
-0034F2 6002              JZ      ?C0163?SYS
-  920: 			{
-  921: 				m_24g_led_flag = 0;
-0034F4 E4                CLR     A
-0034F5 F0                MOVX    @DPTR,A
-  922: 			}	
-0034F6         ?C0163?SYS:
-  923: 	
-  924: 			if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
-0034F6 904CC7            MOV     DPTR,#g_variable+08H
+0034EC 7002              JNZ     ?C0157?SYS
+  917: 		{
+  918: 			System_Reset_Connect();
+0034EE B137              ACALL   System_Reset_Connect
+  919: 		}
+  920: 	}
+0034F0         ?C0157?SYS:
+  921: 
+  922: // ble delay send secutiry request
+  923: 	if(ble_send_secutiry_request_timer)
+0034F0 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
+0034F3 E0                MOVX    A,@DPTR
+0034F4 6011              JZ      ?C0159?SYS
+  924: 	{
+  925: 		ble_send_secutiry_request_timer--;
+0034F6 E0                MOVX    A,@DPTR
+0034F7 14                DEC     A
+0034F8 F0                MOVX    @DPTR,A
+  926: 		if(!ble_send_secutiry_request_timer)
 0034F9 E0                MOVX    A,@DPTR
-0034FA B40407            CJNE    A,#04H,?C0164?SYS
-  925: 			{
-  926: 				kscurrmult = 0x0c;
-0034FD 904213            MOV     DPTR,#kscurrmult
-003500 740C              MOV     A,#0CH
-003502 F0                MOVX    @DPTR,A
-  927: 			}
-003503 22                RET     
-003504         ?C0164?SYS:
-  928: 			else if (g_variable.br_currentState == CHANGE_TO_BR_CONNECTED)
-003504 904CC9            MOV     DPTR,#g_variable+0AH
-003507 E0                MOVX    A,@DPTR
-003508 B40406            CJNE    A,#04H,?C0139?SYS
+0034FA 700B              JNZ     ?C0159?SYS
+  927: 		{
+  928: 			if(!m_le_send_security_request_flag)
+0034FC 904D3D            MOV     DPTR,#m_le_send_security_request_flag
+0034FF E0                MOVX    A,@DPTR
+003500 7005              JNZ     ?C0159?SYS
   929: 			{
-  930: 				kscurrmult = 0x3a;
-00350B 904213            MOV     DPTR,#kscurrmult
-00350E 743A              MOV     A,#03AH
-003510 F0                MOVX    @DPTR,A
+  930: 				IPC_TxControlCmd(IPC_CMD_LE_SMP_SECURITY_REQUEST);
+003502 7F1B              MOV     R7,#01BH
+003504 12085F            LCALL   _IPC_TxControlCmd
   931: 			}
   932: 		}
   933: 	}
-  934: }
-003511         ?C0139?SYS:
-003511 22                RET     
+003507         ?C0159?SYS:
+  934: 
+  935: 	if (delayChgInvTimer != 0)
+003507 904DE6            MOV     DPTR,#delayChgInvTimer
+00350A E0                MOVX    A,@DPTR
+00350B 6029              JZ      ?C0139?SYS
+  936: 	{
+  937: 		delayChgInvTimer--;
+00350D E0                MOVX    A,@DPTR
+00350E 14                DEC     A
+00350F F0                MOVX    @DPTR,A
+  938: 		if (delayChgInvTimer == 0)
+003510 E0                MOVX    A,@DPTR
+003511 7023              JNZ     ?C0139?SYS
+  939: 		{
+  940: 			if( m_24g_led_flag)
+003513 904D46            MOV     DPTR,#m_24g_led_flag
+003516 E0                MOVX    A,@DPTR
+003517 6002              JZ      ?C0164?SYS
+  941: 			{
+  942: 				m_24g_led_flag = 0;
+003519 E4                CLR     A
+00351A F0                MOVX    @DPTR,A
+  943: 			}	
+00351B         ?C0164?SYS:
+  944: 	
+  945: 			if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
+00351B 904CC7            MOV     DPTR,#g_variable+08H
+00351E E0                MOVX    A,@DPTR
+00351F B40407            CJNE    A,#04H,?C0165?SYS
+  946: 			{
+  947: 				kscurrmult = 0x0c;
+003522 904213            MOV     DPTR,#kscurrmult
+003525 740C              MOV     A,#0CH
+003527 F0                MOVX    @DPTR,A
+  948: 			}
+003528 22                RET     
+003529         ?C0165?SYS:
+  949: 			else if (g_variable.br_currentState == CHANGE_TO_BR_CONNECTED)
+003529 904CC9            MOV     DPTR,#g_variable+0AH
+00352C E0                MOVX    A,@DPTR
+00352D B40406            CJNE    A,#04H,?C0139?SYS
+  950: 			{
+  951: 				kscurrmult = 0x3a;
+003530 904213            MOV     DPTR,#kscurrmult
+003533 743A              MOV     A,#03AH
+003535 F0                MOVX    @DPTR,A
+  952: 			}
+  953: 		}
+  954: 	}
+  955: }
+003536         ?C0139?SYS:
+003536 22                RET     
 ----- FUNCTION kb_cb_Timer100ms (END) -------
 
 
@@ -10419,48 +10470,16 @@
   109: {
   110: 	m_reset_reg = 1;
   111: 	while(1);
-003512 908010            MOV     DPTR,#m_reset_reg
-003515 7401              MOV     A,#01H
-003517 F0                MOVX    @DPTR,A
-003518         ?C0010?SYS:
+003537 908010            MOV     DPTR,#m_reset_reg
+00353A 7401              MOV     A,#01H
+00353C F0                MOVX    @DPTR,A
+00353D         ?C0010?SYS:
   112: }
-003518 80FE              SJMP    ?C0010?SYS
-00351A 22                RET     
+00353D 80FE              SJMP    ?C0010?SYS
+00353F 22                RET     
 ----- FUNCTION System_Hardware_reset (END) -------
 
 
------ FUNCTION LED_device_poweron (BEGIN) -----
- FILE: 'led.c'
-   16: void LED_device_poweron()
-   17: {
-   18: 	if(g_variable.current_device_num == 1)
-   19: 		GPIO_Setout(BT_LED_GPIO,LED_ON);
-00351B 904CC3            MOV     DPTR,#g_variable+04H
-00351E E0                MOVX    A,@DPTR
-00351F B40107            CJNE    A,#01H,?C0002?LED
-   20: 	else if(g_variable.current_device_num == 2)
-003522 D201              SETB    ?_GPIO_Setout?BIT
-003524 7F1C              MOV     R7,#01CH
-003526 020FE9            LJMP    _GPIO_Setout
-003529         ?C0002?LED:
-   21: 		GPIO_Setout(BT2_LED_GPIO,LED_ON);
-003529 904CC3            MOV     DPTR,#g_variable+04H
-00352C E0                MOVX    A,@DPTR
-00352D B40207            CJNE    A,#02H,?C0004?LED
-   22: 	else
-003530 D201              SETB    ?_GPIO_Setout?BIT
-003532 7F1C              MOV     R7,#01CH
-003534 020FE9            LJMP    _GPIO_Setout
-003537         ?C0004?LED:
-   23: 	{
-   24: 		GPIO_Setout(G24_LED_GPIO,LED_ON);
-003537 D201              SETB    ?_GPIO_Setout?BIT
-003539 7F1C              MOV     R7,#01CH
-00353B 020FE9            LJMP    _GPIO_Setout
-   25: 	}
------ FUNCTION LED_device_poweron (END) -------
-
-
 ----- FUNCTION LED_handle (BEGIN) -----
  FILE: 'led.c'
    41: void LED_handle()
@@ -10469,139 +10488,139 @@
    44: //		return;
    45: 
    46: 	if(!g_variable.pairing_timeout && !g_variable.pairing_g24_timeout)
-00353E 904CE9            MOV     DPTR,#g_variable+02AH
-003541 E0                MOVX    A,@DPTR
-003542 7002              JNZ     ?C0027?LED
-003544 A3                INC     DPTR
-003545 E0                MOVX    A,@DPTR
-003546         ?C0027?LED:
-003546 7079              JNZ     ?C0012?LED
-003548 904CEF            MOV     DPTR,#g_variable+030H
-00354B E0                MOVX    A,@DPTR
-00354C 7002              JNZ     ?C0028?LED
-00354E A3                INC     DPTR
-00354F E0                MOVX    A,@DPTR
-003550         ?C0028?LED:
-003550 706F              JNZ     ?C0012?LED
+003540 904CE9            MOV     DPTR,#g_variable+02AH
+003543 E0                MOVX    A,@DPTR
+003544 7002              JNZ     ?C0027?LED
+003546 A3                INC     DPTR
+003547 E0                MOVX    A,@DPTR
+003548         ?C0027?LED:
+003548 7079              JNZ     ?C0012?LED
+00354A 904CEF            MOV     DPTR,#g_variable+030H
+00354D E0                MOVX    A,@DPTR
+00354E 7002              JNZ     ?C0028?LED
+003550 A3                INC     DPTR
+003551 E0                MOVX    A,@DPTR
+003552         ?C0028?LED:
+003552 706F              JNZ     ?C0012?LED
    47: 	{
    48: 		//low battery LED process
    49: 		if (g_variable.battery_status == BAT_STATUS_SHUT_DOWN)
-003552 904CD5            MOV     DPTR,#g_variable+016H
-003555 E0                MOVX    A,@DPTR
-003556 B40205            CJNE    A,#02H,?C0013?LED
+003554 904CD5            MOV     DPTR,#g_variable+016H
+003557 E0                MOVX    A,@DPTR
+003558 B40205            CJNE    A,#02H,?C0013?LED
    50: 		{
    51: 			System_long_sleep();
-003559 120F42            LCALL   System_long_sleep
+00355B 120F42            LCALL   System_long_sleep
    52: 		}
-00355C 802B              SJMP    ?C0014?LED
-00355E         ?C0013?LED:
+00355E 802B              SJMP    ?C0014?LED
+003560         ?C0013?LED:
    53: 		else if (g_variable.battery_status == BAT_STATUS_LOW)
-00355E 904CD5            MOV     DPTR,#g_variable+016H
-003561 E0                MOVX    A,@DPTR
-003562 B40114            CJNE    A,#01H,?C0015?LED
+003560 904CD5            MOV     DPTR,#g_variable+016H
+003563 E0                MOVX    A,@DPTR
+003564 B40114            CJNE    A,#01H,?C0015?LED
    54: 		{
    55: 			if (g_variable.battery_low_led_flash_flag == 0)
-003565 904CF9            MOV     DPTR,#g_variable+03AH
-003568 E0                MOVX    A,@DPTR
-003569 701E              JNZ     ?C0014?LED
+003567 904CF9            MOV     DPTR,#g_variable+03AH
+00356A E0                MOVX    A,@DPTR
+00356B 701E              JNZ     ?C0014?LED
    56: 			{
    57: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-00356B 904CE2            MOV     DPTR,#g_variable+023H
-00356E 7418              MOV     A,#018H
-003570 F0                MOVX    @DPTR,A
+00356D 904CE2            MOV     DPTR,#g_variable+023H
+003570 7418              MOV     A,#018H
+003572 F0                MOVX    @DPTR,A
    58: 				g_variable.battery_low_led_flash_flag = 1;
-003571 904CF9            MOV     DPTR,#g_variable+03AH
-003574 7401              MOV     A,#01H
-003576 F0                MOVX    @DPTR,A
+003573 904CF9            MOV     DPTR,#g_variable+03AH
+003576 7401              MOV     A,#01H
+003578 F0                MOVX    @DPTR,A
    59: 			}
    60: 		}
-003577 8010              SJMP    ?C0014?LED
-003579         ?C0015?LED:
+003579 8010              SJMP    ?C0014?LED
+00357B         ?C0015?LED:
    61: 		else
    62: 		{
    63: 			if (g_variable.battery_low_led_flash_flag == 1)
-003579 904CF9            MOV     DPTR,#g_variable+03AH
-00357C E0                MOVX    A,@DPTR
-00357D B40109            CJNE    A,#01H,?C0014?LED
+00357B 904CF9            MOV     DPTR,#g_variable+03AH
+00357E E0                MOVX    A,@DPTR
+00357F B40109            CJNE    A,#01H,?C0014?LED
    64: 			{
    65: 				g_variable.battery_low_led_flash_flag = 0;
-003580 E4                CLR     A
-003581 F0                MOVX    @DPTR,A
+003582 E4                CLR     A
+003583 F0                MOVX    @DPTR,A
    66: 				g_variable.battery_low_led_flash_interval = 0;
-003582 904CE2            MOV     DPTR,#g_variable+023H
-003585 F0                MOVX    @DPTR,A
+003584 904CE2            MOV     DPTR,#g_variable+023H
+003587 F0                MOVX    @DPTR,A
    67: 				LED_device_poweroff();
-003586 120FCB            LCALL   LED_device_poweroff
+003588 120FCB            LCALL   LED_device_poweroff
    68: 			}
    69: 		}
-003589         ?C0014?LED:
+00358B         ?C0014?LED:
    70: 
    71: 		//capslock  numlock  scrolllock LED process
    72: 	//	if (g_variable.battery_status != BAT_STATUS_LOW)
    73: 		{
    74: 			if (YC_check_is_connected())
-003589 1217F5            LCALL   YC_check_is_connected
-00358C EF                MOV     A,R7
-00358D 602B              JZ      ?C0019?LED
+00358B 1217F5            LCALL   YC_check_is_connected
+00358E EF                MOV     A,R7
+00358F 602B              JZ      ?C0019?LED
    75: 			{
    76: 				if (g_variable.sleepTimer < KB_NUM_CAPS_LED_ON_TIMER)
-00358F C3                CLR     C
-003590 904CE4            MOV     DPTR,#g_variable+025H
-003593 E0                MOVX    A,@DPTR
-003594 940C              SUBB    A,#0CH
-003596 904CE3            MOV     DPTR,#g_variable+024H
-003599 E0                MOVX    A,@DPTR
-00359A 9400              SUBB    A,#00H
-00359C 5015              JNC     ?C0020?LED
+003591 C3                CLR     C
+003592 904CE4            MOV     DPTR,#g_variable+025H
+003595 E0                MOVX    A,@DPTR
+003596 940C              SUBB    A,#0CH
+003598 904CE3            MOV     DPTR,#g_variable+024H
+00359B E0                MOVX    A,@DPTR
+00359C 9400              SUBB    A,#00H
+00359E 5015              JNC     ?C0020?LED
    77: 				{			
    78: 						
    79: 				
    80: 					if(m_caps_num_lock & KB_PC_KEYSEL_CAPSLOCK)
-00359E 904CB7            MOV     DPTR,#m_caps_num_lock
-0035A1 E0                MOVX    A,@DPTR
-0035A2 30E107            JNB     ACC.1,?C0021?LED
+0035A0 904CB7            MOV     DPTR,#m_caps_num_lock
+0035A3 E0                MOVX    A,@DPTR
+0035A4 30E107            JNB     ACC.1,?C0021?LED
    81: 					{
    82: 						GPIO_Setout(CAPS_LED_GPIO, LED_ON);
-0035A5 D201              SETB    ?_GPIO_Setout?BIT
-0035A7 7F1E              MOV     R7,#01EH
-0035A9 020FE9            LJMP    _GPIO_Setout
+0035A7 D201              SETB    ?_GPIO_Setout?BIT
+0035A9 7F1E              MOV     R7,#01EH
+0035AB 020FE9            LJMP    _GPIO_Setout
    83: 					}
-0035AC         ?C0021?LED:
+0035AE         ?C0021?LED:
    84: 					else 
    85: 					{
    86: 						GPIO_Setout(CAPS_LED_GPIO, LED_OFF);
-0035AC C201              CLR     ?_GPIO_Setout?BIT
-0035AE 7F1E              MOV     R7,#01EH
-0035B0 020FE9            LJMP    _GPIO_Setout
+0035AE C201              CLR     ?_GPIO_Setout?BIT
+0035B0 7F1E              MOV     R7,#01EH
+0035B2 020FE9            LJMP    _GPIO_Setout
    87: 					}	
    88: 
    89: 				}
-0035B3         ?C0020?LED:
+0035B5         ?C0020?LED:
    90: 				else
    91: 				{
    92: 					GPIO_Setout(CAPS_LED_GPIO, LED_OFF);
-0035B3 C201              CLR     ?_GPIO_Setout?BIT
-0035B5 7F1E              MOV     R7,#01EH
-0035B7 020FE9            LJMP    _GPIO_Setout
+0035B5 C201              CLR     ?_GPIO_Setout?BIT
+0035B7 7F1E              MOV     R7,#01EH
+0035B9 020FE9            LJMP    _GPIO_Setout
    93: 				}
    94: 			}
-0035BA         ?C0019?LED:
+0035BC         ?C0019?LED:
    95: 			else
    96: 			{
    97: 				GPIO_Setout(CAPS_LED_GPIO, LED_OFF);
-0035BA C201              CLR     ?_GPIO_Setout?BIT
-0035BC 7F1E              MOV     R7,#01EH
-0035BE 020FE9            LJMP    _GPIO_Setout
+0035BC C201              CLR     ?_GPIO_Setout?BIT
+0035BE 7F1E              MOV     R7,#01EH
+0035C0 020FE9            LJMP    _GPIO_Setout
    98: 			}
    99: 		}
   100: 	}
-0035C1         ?C0012?LED:
+0035C3         ?C0012?LED:
   101: 	else
   102: 	{
   103: 		GPIO_Setout(CAPS_LED_GPIO, LED_OFF);
-0035C1 C201              CLR     ?_GPIO_Setout?BIT
-0035C3 7F1E              MOV     R7,#01EH
-0035C5 020FE9            LJMP    _GPIO_Setout
+0035C3 C201              CLR     ?_GPIO_Setout?BIT
+0035C5 7F1E              MOV     R7,#01EH
+0035C7 020FE9            LJMP    _GPIO_Setout
   104: 	}
   105: 
 ----- FUNCTION LED_handle (END) -------
@@ -10613,49 +10632,49 @@
    18: {
    19: 	if(g_variable.current_device_num ==2)
    20: 	{
-0035C8 904CC3            MOV     DPTR,#g_variable+04H
-0035CB E0                MOVX    A,@DPTR
-0035CC FF                MOV     R7,A
-0035CD B40213            CJNE    A,#02H,?C0001?SYS
+0035CA 904CC3            MOV     DPTR,#g_variable+04H
+0035CD E0                MOVX    A,@DPTR
+0035CE FF                MOV     R7,A
+0035CF B40213            CJNE    A,#02H,?C0001?SYS
    21: 		m_le_roll_name_len=0x33;
    22: 		m_le_roll_name_scan=0x33;
-0035D0 90441C            MOV     DPTR,#m_le_roll_name_len
-0035D3 7433              MOV     A,#033H
-0035D5 F0                MOVX    @DPTR,A
+0035D2 90441C            MOV     DPTR,#m_le_roll_name_len
+0035D5 7433              MOV     A,#033H
+0035D7 F0                MOVX    @DPTR,A
    23: 		m_le_roll_name_gatt=0x33;
-0035D6 9043FE            MOV     DPTR,#m_le_roll_name_scan
-0035D9 F0                MOVX    @DPTR,A
+0035D8 9043FE            MOV     DPTR,#m_le_roll_name_scan
+0035DB F0                MOVX    @DPTR,A
    24: 		m_le_roll_dav_data=0x33;
-0035DA 904532            MOV     DPTR,#m_le_roll_name_gatt
-0035DD F0                MOVX    @DPTR,A
+0035DC 904532            MOV     DPTR,#m_le_roll_name_gatt
+0035DF F0                MOVX    @DPTR,A
    25: 	}
-0035DE 9043EF            MOV     DPTR,#m_le_roll_dav_data
-0035E1 F0                MOVX    @DPTR,A
+0035E0 9043EF            MOV     DPTR,#m_le_roll_dav_data
+0035E3 F0                MOVX    @DPTR,A
    26: 
-0035E2 22                RET     
-0035E3         ?C0001?SYS:
+0035E4 22                RET     
+0035E5         ?C0001?SYS:
    27: 	else if(g_variable.current_device_num ==1)
-0035E3 EF                MOV     A,R7
-0035E4 B40112            CJNE    A,#01H,?C0004?SYS
+0035E5 EF                MOV     A,R7
+0035E6 B40112            CJNE    A,#01H,?C0004?SYS
    28: 	{
    29: 		m_le_roll_name_len=0x35;
-0035E7 90441C            MOV     DPTR,#m_le_roll_name_len
-0035EA 7435              MOV     A,#035H
-0035EC F0                MOVX    @DPTR,A
+0035E9 90441C            MOV     DPTR,#m_le_roll_name_len
+0035EC 7435              MOV     A,#035H
+0035EE F0                MOVX    @DPTR,A
    30: 		m_le_roll_name_scan=0x35;
-0035ED 9043FE            MOV     DPTR,#m_le_roll_name_scan
-0035F0 F0                MOVX    @DPTR,A
+0035EF 9043FE            MOV     DPTR,#m_le_roll_name_scan
+0035F2 F0                MOVX    @DPTR,A
    31: 		m_le_roll_name_gatt=0x35;
-0035F1 904532            MOV     DPTR,#m_le_roll_name_gatt
-0035F4 F0                MOVX    @DPTR,A
+0035F3 904532            MOV     DPTR,#m_le_roll_name_gatt
+0035F6 F0                MOVX    @DPTR,A
    32: 		m_le_roll_dav_data=0x35;
-0035F5 9043EF            MOV     DPTR,#m_le_roll_dav_data
-0035F8 F0                MOVX    @DPTR,A
+0035F7 9043EF            MOV     DPTR,#m_le_roll_dav_data
+0035FA F0                MOVX    @DPTR,A
    33: 	}
    34: 	
    35: }
-0035F9         ?C0004?SYS:
-0035F9 22                RET     
+0035FB         ?C0004?SYS:
+0035FB 22                RET     
 ----- FUNCTION kb_ble_name_roll (END) -------
 
 
@@ -10665,28 +10684,28 @@
    78: {
    79: 	REG_IICD_SCL_LOW  =  0x0d;
    80:    	REG_IICD_SCL_HIGH  =  0x0e;
-0035FA 908091            MOV     DPTR,#08091H
-0035FD 740D              MOV     A,#0DH
-0035FF F0                MOVX    @DPTR,A
+0035FC 908091            MOV     DPTR,#08091H
+0035FF 740D              MOV     A,#0DH
+003601 F0                MOVX    @DPTR,A
    81:    	REG_IICD_START_SETUP  = 0x0e;
-003600 A3                INC     DPTR
-003601 04                INC     A
-003602 F0                MOVX    @DPTR,A
-   82:    	REG_IICD_START_HOLD  = 0x0e;
-003603 A3                INC     DPTR
+003602 A3                INC     DPTR
+003603 04                INC     A
 003604 F0                MOVX    @DPTR,A
-   83:   	REG_IICD_STOP_SETUP  = 0x0e;
+   82:    	REG_IICD_START_HOLD  = 0x0e;
 003605 A3                INC     DPTR
 003606 F0                MOVX    @DPTR,A
-   84:    	REG_IICD_DATA_SETUP  = 0x0d;
+   83:   	REG_IICD_STOP_SETUP  = 0x0e;
 003607 A3                INC     DPTR
 003608 F0                MOVX    @DPTR,A
-   85: }
+   84:    	REG_IICD_DATA_SETUP  = 0x0d;
 003609 A3                INC     DPTR
-00360A 14                DEC     A
-00360B F0                MOVX    @DPTR,A
+00360A F0                MOVX    @DPTR,A
+   85: }
+00360B A3                INC     DPTR
+00360C 14                DEC     A
+00360D F0                MOVX    @DPTR,A
    86: 
-00360C 22                RET     
+00360E 22                RET     
 ----- FUNCTION System_IIC_clk_setup (END) -------
 
 
@@ -10696,42 +10715,42 @@
    96: {
    97: 	System_clear_mem();
    98: 	YC_adc_init();
-00360D 121590            LCALL   System_clear_mem
+00360F 121590            LCALL   System_clear_mem
    99: 	g_variable.release_data =1;
-003610 D142              ACALL   YC_adc_init
+003612 D144              ACALL   YC_adc_init
   100: 	g_variable.powerOn_timer = KB_POWERON_LED_ON_TIMER;
-003612 904CEC            MOV     DPTR,#g_variable+02DH
-003615 7401              MOV     A,#01H
-003617 F0                MOVX    @DPTR,A
+003614 904CEC            MOV     DPTR,#g_variable+02DH
+003617 7401              MOV     A,#01H
+003619 F0                MOVX    @DPTR,A
   101: 	g_variable.recon_count = 0;
-003618 904CE5            MOV     DPTR,#g_variable+026H
-00361B 741E              MOV     A,#01EH
-00361D F0                MOVX    @DPTR,A
+00361A 904CE5            MOV     DPTR,#g_variable+026H
+00361D 741E              MOV     A,#01EH
+00361F F0                MOVX    @DPTR,A
   102: 	g_variable.test_buff = 0xff;
-00361E E4                CLR     A
-00361F 904CF2            MOV     DPTR,#g_variable+033H
-003622 F0                MOVX    @DPTR,A
+003620 E4                CLR     A
+003621 904CF2            MOV     DPTR,#g_variable+033H
+003624 F0                MOVX    @DPTR,A
   103: 	le_lap_temp[0] = m_le_lap[3];
-003623 904D0B            MOV     DPTR,#g_variable+04CH
-003626 74FF              MOV     A,#0FFH
-003628 F0                MOVX    @DPTR,A
+003625 904D0B            MOV     DPTR,#g_variable+04CH
+003628 74FF              MOV     A,#0FFH
+00362A F0                MOVX    @DPTR,A
   104: 	le_lap_temp[1] = m_le_lap[4];
-003629 9044FC            MOV     DPTR,#m_le_lap+03H
-00362C E0                MOVX    A,@DPTR
-00362D 904DD0            MOV     DPTR,#le_lap_temp
-003630 F0                MOVX    @DPTR,A
+00362B 9044FC            MOV     DPTR,#m_le_lap+03H
+00362E E0                MOVX    A,@DPTR
+00362F 904DD0            MOV     DPTR,#le_lap_temp
+003632 F0                MOVX    @DPTR,A
   105: 	le_lap_temp[2] = m_le_lap[5];
-003631 9044FD            MOV     DPTR,#m_le_lap+04H
-003634 E0                MOVX    A,@DPTR
-003635 904DD1            MOV     DPTR,#le_lap_temp+01H
-003638 F0                MOVX    @DPTR,A
+003633 9044FD            MOV     DPTR,#m_le_lap+04H
+003636 E0                MOVX    A,@DPTR
+003637 904DD1            MOV     DPTR,#le_lap_temp+01H
+00363A F0                MOVX    @DPTR,A
   106: }
-003639 9044FE            MOV     DPTR,#m_le_lap+05H
-00363C E0                MOVX    A,@DPTR
-00363D 904DD2            MOV     DPTR,#le_lap_temp+02H
-003640 F0                MOVX    @DPTR,A
+00363B 9044FE            MOV     DPTR,#m_le_lap+05H
+00363E E0                MOVX    A,@DPTR
+00363F 904DD2            MOV     DPTR,#le_lap_temp+02H
+003642 F0                MOVX    @DPTR,A
   107: 
-003641 22                RET     
+003643 22                RET     
 ----- FUNCTION System_Software_init (END) -------
 
 
@@ -10743,152 +10762,187 @@
     6: 	byte i;
     7: 	
     8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-003642 904CD3            MOV     DPTR,#g_variable+014H
-003645 7405              MOV     A,#05H
-003647 F0                MOVX    @DPTR,A
+003644 904CD3            MOV     DPTR,#g_variable+014H
+003647 7405              MOV     A,#05H
+003649 F0                MOVX    @DPTR,A
     9: 	g_variable.battery_value_index = 0;
-003648 E4                CLR     A
-003649 A3                INC     DPTR
-00364A F0                MOVX    @DPTR,A
+00364A E4                CLR     A
+00364B A3                INC     DPTR
+00364C F0                MOVX    @DPTR,A
    10: 
    11: #ifdef ADC_TYPE_HVIN 	
    12: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
+;---- Variable 'i' assigned to Register 'R7' ----
+00364D FF                MOV     R7,A
+00364E         ?C0001?ADC:
    13: 	{
    14: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE;
+00364E EF                MOV     A,R7
+00364F 25E0              ADD     A,ACC
+003651 24D6              ADD     A,#LOW g_variable+017H
+003653 F582              MOV     DPL,A
+003655 E4                CLR     A
+003656 344C              ADDC    A,#HIGH g_variable+017H
+003658 F583              MOV     DPH,A
+00365A 7454              MOV     A,#054H
+00365C F0                MOVX    @DPTR,A
+00365D A3                INC     DPTR
+00365E F0                MOVX    @DPTR,A
    15: 	}
+00365F 0F                INC     R7
+003660 EF                MOV     A,R7
+003661 B404EA            CJNE    A,#04H,?C0001?ADC
+003664         ?C0002?ADC:
    16: 	g_variable.battery_level_full = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V7+m_adc0vBase;
+003664 904C91            MOV     DPTR,#m_adc0vBase
+003667 E0                MOVX    A,@DPTR
+003668 FE                MOV     R6,A
+003669 A3                INC     DPTR
+00366A E0                MOVX    A,@DPTR
+00366B FF                MOV     R7,A
+00366C C3                CLR     C
+00366D 904C94            MOV     DPTR,#m_adc3vValue+01H
+003670 E0                MOVX    A,@DPTR
+003671 9F                SUBB    A,R7
+003672 FD                MOV     R5,A
+003673 904C93            MOV     DPTR,#m_adc3vValue
+003676 E0                MOVX    A,@DPTR
+003677 9E                SUBB    A,R6
+003678 FC                MOV     R4,A
+003679 E4                CLR     A
+00367A 120206            LCALL   ?C?FCASTI
+00367D 7B52              MOV     R3,#052H
+00367F 7AB8              MOV     R2,#0B8H
+003681 799E              MOV     R1,#09EH
+003683 783F              MOV     R0,#03FH
+003685 1200FB            LCALL   ?C?FPMUL
+003688 C004              PUSH    AR4
+00368A C005              PUSH    AR5
+00368C C006              PUSH    AR6
+00368E C007              PUSH    AR7
+003690 904C91            MOV     DPTR,#m_adc0vBase
+003693 E0                MOVX    A,@DPTR
+003694 FC                MOV     R4,A
+003695 A3                INC     DPTR
+003696 E0                MOVX    A,@DPTR
+003697 FD                MOV     R5,A
+003698 E4                CLR     A
+003699 120206            LCALL   ?C?FCASTI
+00369C D003              POP     AR3
+00369E D002              POP     AR2
+0036A0 D001              POP     AR1
+0036A2 D000              POP     AR0
+0036A4 12000A            LCALL   ?C?FPADD
+0036A7 12023F            LCALL   ?C?CASTF
+0036AA 904CFC            MOV     DPTR,#g_variable+03DH
+0036AD EE                MOV     A,R6
+0036AE F0                MOVX    @DPTR,A
+0036AF A3                INC     DPTR
+0036B0 EF                MOV     A,R7
+0036B1 F0                MOVX    @DPTR,A
    17: 	g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V2+m_adc0vBase;
+0036B2 904C91            MOV     DPTR,#m_adc0vBase
+0036B5 E0                MOVX    A,@DPTR
+0036B6 FE                MOV     R6,A
+0036B7 A3                INC     DPTR
+0036B8 E0                MOVX    A,@DPTR
+0036B9 FF                MOV     R7,A
+0036BA C3                CLR     C
+0036BB 904C94            MOV     DPTR,#m_adc3vValue+01H
+0036BE E0                MOVX    A,@DPTR
+0036BF 9F                SUBB    A,R7
+0036C0 FD                MOV     R5,A
+0036C1 904C93            MOV     DPTR,#m_adc3vValue
+0036C4 E0                MOVX    A,@DPTR
+0036C5 9E                SUBB    A,R6
+0036C6 FC                MOV     R4,A
+0036C7 E4                CLR     A
+0036C8 120206            LCALL   ?C?FCASTI
+0036CB 7BC3              MOV     R3,#0C3H
+0036CD 7AF5              MOV     R2,#0F5H
+0036CF 7988              MOV     R1,#088H
+0036D1 783F              MOV     R0,#03FH
+0036D3 1200FB            LCALL   ?C?FPMUL
+0036D6 C004              PUSH    AR4
+0036D8 C005              PUSH    AR5
+0036DA C006              PUSH    AR6
+0036DC C007              PUSH    AR7
+0036DE 904C91            MOV     DPTR,#m_adc0vBase
+0036E1 E0                MOVX    A,@DPTR
+0036E2 FC                MOV     R4,A
+0036E3 A3                INC     DPTR
+0036E4 E0                MOVX    A,@DPTR
+0036E5 FD                MOV     R5,A
+0036E6 E4                CLR     A
+0036E7 120206            LCALL   ?C?FCASTI
+0036EA D003              POP     AR3
+0036EC D002              POP     AR2
+0036EE D001              POP     AR1
+0036F0 D000              POP     AR0
+0036F2 12000A            LCALL   ?C?FPADD
+0036F5 12023F            LCALL   ?C?CASTF
+0036F8 904CDE            MOV     DPTR,#g_variable+01FH
+0036FB EE                MOV     A,R6
+0036FC F0                MOVX    @DPTR,A
+0036FD A3                INC     DPTR
+0036FE EF                MOV     A,R7
+0036FF F0                MOVX    @DPTR,A
    18: 	g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V0+m_adc0vBase;
+003700 904C91            MOV     DPTR,#m_adc0vBase
+003703 E0                MOVX    A,@DPTR
+003704 FE                MOV     R6,A
+003705 A3                INC     DPTR
+003706 E0                MOVX    A,@DPTR
+003707 FF                MOV     R7,A
+003708 C3                CLR     C
+003709 904C94            MOV     DPTR,#m_adc3vValue+01H
+00370C E0                MOVX    A,@DPTR
+00370D 9F                SUBB    A,R7
+00370E FD                MOV     R5,A
+00370F 904C93            MOV     DPTR,#m_adc3vValue
+003712 E0                MOVX    A,@DPTR
+003713 9E                SUBB    A,R6
+003714 FC                MOV     R4,A
+003715 E4                CLR     A
+003716 120206            LCALL   ?C?FCASTI
+003719 7BAE              MOV     R3,#0AEH
+00371B 7A47              MOV     R2,#047H
+00371D 7981              MOV     R1,#081H
+00371F 783F              MOV     R0,#03FH
+003721 1200FB            LCALL   ?C?FPMUL
+003724 C004              PUSH    AR4
+003726 C005              PUSH    AR5
+003728 C006              PUSH    AR6
+00372A C007              PUSH    AR7
+00372C 904C91            MOV     DPTR,#m_adc0vBase
+00372F E0                MOVX    A,@DPTR
+003730 FC                MOV     R4,A
+003731 A3                INC     DPTR
+003732 E0                MOVX    A,@DPTR
+003733 FD                MOV     R5,A
+003734 E4                CLR     A
+003735 120206            LCALL   ?C?FCASTI
+003738 D003              POP     AR3
+00373A D002              POP     AR2
+00373C D001              POP     AR1
+00373E D000              POP     AR0
+003740 12000A            LCALL   ?C?FPADD
+003743 12023F            LCALL   ?C?CASTF
+003746 904CE0            MOV     DPTR,#g_variable+021H
+003749 EE                MOV     A,R6
+00374A F0                MOVX    @DPTR,A
+00374B A3                INC     DPTR
+00374C EF                MOV     A,R7
+00374D F0                MOVX    @DPTR,A
    19: #endif
    20: #ifdef ADC_TYPE_VINLPM
    21: 		for (i = 0; i < BAT_ARRAY_LEN; i++)
-;---- Variable 'i' assigned to Register 'R7' ----
-00364B FF                MOV     R7,A
-00364C         ?C0001?ADC:
    22: 		{
    23: 			g_variable.battery_value[i] = INIT_BATTERY_VALUE_VINLPM;
-00364C EF                MOV     A,R7
-00364D 25E0              ADD     A,ACC
-00364F 24D6              ADD     A,#LOW g_variable+017H
-003651 F582              MOV     DPL,A
-003653 E4                CLR     A
-003654 344C              ADDC    A,#HIGH g_variable+017H
-003656 F583              MOV     DPH,A
-003658 7451              MOV     A,#051H
-00365A F0                MOVX    @DPTR,A
-00365B A3                INC     DPTR
-00365C F0                MOVX    @DPTR,A
    24: 		}
-00365D 0F                INC     R7
-00365E EF                MOV     A,R7
-00365F B404EA            CJNE    A,#04H,?C0001?ADC
-003662         ?C0002?ADC:
    25: 		g_variable.battery_level_full = m_adc3vValue;
-003662 904C93            MOV     DPTR,#m_adc3vValue
-003665 E0                MOVX    A,@DPTR
-003666 FF                MOV     R7,A
-003667 A3                INC     DPTR
-003668 E0                MOVX    A,@DPTR
-003669 904CFC            MOV     DPTR,#g_variable+03DH
-00366C CF                XCH     A,R7
-00366D F0                MOVX    @DPTR,A
-00366E A3                INC     DPTR
-00366F EF                MOV     A,R7
-003670 F0                MOVX    @DPTR,A
    26: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V2+m_adc0vBase;
-003671 904C91            MOV     DPTR,#m_adc0vBase
-003674 E0                MOVX    A,@DPTR
-003675 FE                MOV     R6,A
-003676 A3                INC     DPTR
-003677 E0                MOVX    A,@DPTR
-003678 FF                MOV     R7,A
-003679 C3                CLR     C
-00367A 904C94            MOV     DPTR,#m_adc3vValue+01H
-00367D E0                MOVX    A,@DPTR
-00367E 9F                SUBB    A,R7
-00367F FD                MOV     R5,A
-003680 904C93            MOV     DPTR,#m_adc3vValue
-003683 E0                MOVX    A,@DPTR
-003684 9E                SUBB    A,R6
-003685 FC                MOV     R4,A
-003686 E4                CLR     A
-003687 120206            LCALL   ?C?FCASTI
-00368A 7BA4              MOV     R3,#0A4H
-00368C 7A70              MOV     R2,#070H
-00368E 793D              MOV     R1,#03DH
-003690 783F              MOV     R0,#03FH
-003692 1200FB            LCALL   ?C?FPMUL
-003695 C004              PUSH    AR4
-003697 C005              PUSH    AR5
-003699 C006              PUSH    AR6
-00369B C007              PUSH    AR7
-00369D 904C91            MOV     DPTR,#m_adc0vBase
-0036A0 E0                MOVX    A,@DPTR
-0036A1 FC                MOV     R4,A
-0036A2 A3                INC     DPTR
-0036A3 E0                MOVX    A,@DPTR
-0036A4 FD                MOV     R5,A
-0036A5 E4                CLR     A
-0036A6 120206            LCALL   ?C?FCASTI
-0036A9 D003              POP     AR3
-0036AB D002              POP     AR2
-0036AD D001              POP     AR1
-0036AF D000              POP     AR0
-0036B1 12000A            LCALL   ?C?FPADD
-0036B4 12023F            LCALL   ?C?CASTF
-0036B7 904CDE            MOV     DPTR,#g_variable+01FH
-0036BA EE                MOV     A,R6
-0036BB F0                MOVX    @DPTR,A
-0036BC A3                INC     DPTR
-0036BD EF                MOV     A,R7
-0036BE F0                MOVX    @DPTR,A
    27: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V0+m_adc0vBase;
-0036BF 904C91            MOV     DPTR,#m_adc0vBase
-0036C2 E0                MOVX    A,@DPTR
-0036C3 FE                MOV     R6,A
-0036C4 A3                INC     DPTR
-0036C5 E0                MOVX    A,@DPTR
-0036C6 FF                MOV     R7,A
-0036C7 C3                CLR     C
-0036C8 904C94            MOV     DPTR,#m_adc3vValue+01H
-0036CB E0                MOVX    A,@DPTR
-0036CC 9F                SUBB    A,R7
-0036CD FD                MOV     R5,A
-0036CE 904C93            MOV     DPTR,#m_adc3vValue
-0036D1 E0                MOVX    A,@DPTR
-0036D2 9E                SUBB    A,R6
-0036D3 FC                MOV     R4,A
-0036D4 E4                CLR     A
-0036D5 120206            LCALL   ?C?FCASTI
-0036D8 7B1F              MOV     R3,#01FH
-0036DA 7A85              MOV     R2,#085H
-0036DC 792B              MOV     R1,#02BH
-0036DE 783F              MOV     R0,#03FH
-0036E0 1200FB            LCALL   ?C?FPMUL
-0036E3 C004              PUSH    AR4
-0036E5 C005              PUSH    AR5
-0036E7 C006              PUSH    AR6
-0036E9 C007              PUSH    AR7
-0036EB 904C91            MOV     DPTR,#m_adc0vBase
-0036EE E0                MOVX    A,@DPTR
-0036EF FC                MOV     R4,A
-0036F0 A3                INC     DPTR
-0036F1 E0                MOVX    A,@DPTR
-0036F2 FD                MOV     R5,A
-0036F3 E4                CLR     A
-0036F4 120206            LCALL   ?C?FCASTI
-0036F7 D003              POP     AR3
-0036F9 D002              POP     AR2
-0036FB D001              POP     AR1
-0036FD D000              POP     AR0
-0036FF 12000A            LCALL   ?C?FPADD
-003702 12023F            LCALL   ?C?CASTF
-003705 904CE0            MOV     DPTR,#g_variable+021H
-003708 EE                MOV     A,R6
-003709 F0                MOVX    @DPTR,A
-00370A A3                INC     DPTR
-00370B EF                MOV     A,R7
-00370C F0                MOVX    @DPTR,A
    28: #endif
    29: #ifdef ADC_TYPE_GPIO
    30: 	m_adc_channel = ADC_CHANNEL;
@@ -10902,7 +10956,7 @@
    38: #endif	
    39: #endif
    40: }
-00370D 22                RET     
+00374E 22                RET     
 ----- FUNCTION YC_adc_init (END) -------
 
 
@@ -10910,21 +10964,21 @@
  FILE: 'sys.c'
   147: static void kb_cb_Hid(byte *p,byte len) {
   148: 	//p[0] is hid type,always is 1(kb) now
-00370E 904F04            MOV     DPTR,#len
-003711 ED                MOV     A,R5
-003712 F0                MOVX    @DPTR,A
+00374F 904F04            MOV     DPTR,#len
+003752 ED                MOV     A,R5
+003753 F0                MOVX    @DPTR,A
 ;---- Variable 'p' assigned to Register 'R1/R2/R3' ----
   149: 	byte temp = p[1];
-003713 900001            MOV     DPTR,#01H
-003716 1203CF            LCALL   ?C?CLDOPTR
-003719 904F05            MOV     DPTR,#temp
-00371C F0                MOVX    @DPTR,A
+003754 900001            MOV     DPTR,#01H
+003757 1203CF            LCALL   ?C?CLDOPTR
+00375A 904F05            MOV     DPTR,#temp
+00375D F0                MOVX    @DPTR,A
   150: 
   151: 	if (len<2) {
   152: 		return;
   153: 	}
   154: }
-00371D 22                RET     
+00375E 22                RET     
 ----- FUNCTION _kb_cb_Hid (END) -------
 
 
@@ -10934,25 +10988,25 @@
   576: {
   577: //before discovery/adv,if current state is connected,wait disconnect done
   578: 	if (action_timeout!=0)
-00371E 904DEC            MOV     DPTR,#action_timeout
-003721 E0                MOVX    A,@DPTR
-003722 603F              JZ      ?C0097?SYS
+00375F 904DEC            MOV     DPTR,#action_timeout
+003762 E0                MOVX    A,@DPTR
+003763 603F              JZ      ?C0097?SYS
   579: 	{
   580: 		action_timeout--;
-003724 E0                MOVX    A,@DPTR
-003725 14                DEC     A
-003726 F0                MOVX    @DPTR,A
+003765 E0                MOVX    A,@DPTR
+003766 14                DEC     A
+003767 F0                MOVX    @DPTR,A
   581: 		if(action_timeout == 0)
-003727 E0                MOVX    A,@DPTR
-003728 7039              JNZ     ?C0097?SYS
+003768 E0                MOVX    A,@DPTR
+003769 7039              JNZ     ?C0097?SYS
   582: 		{
   583: 			if(g_variable.key_action == KEY_DISCOVERY
-00372A 904CEE            MOV     DPTR,#g_variable+02FH
-00372D E0                MOVX    A,@DPTR
-00372E B40532            CJNE    A,#05H,?C0097?SYS
-003731 9047F5            MOV     DPTR,#m_ui_state_map+01H
-003734 E0                MOVX    A,@DPTR
-003735 20E32B            JB      ACC.3,?C0097?SYS
+00376B 904CEE            MOV     DPTR,#g_variable+02FH
+00376E E0                MOVX    A,@DPTR
+00376F B40532            CJNE    A,#05H,?C0097?SYS
+003772 9047F5            MOV     DPTR,#m_ui_state_map+01H
+003775 E0                MOVX    A,@DPTR
+003776 20E32B            JB      ACC.3,?C0097?SYS
   584: 		#if DEVICE_MODE_BT_ONLY
   585: 			&& (m_ui_state_map & 0x4000) != 0x4000)
   586: 		#elif DEVICE_MODE_BLE_ONLY	
@@ -10963,51 +11017,51 @@
   591: 			{
   592: //				m_lpm_mode = 0;
   593: 				ble_send_secutiry_request_timer = 0;
-003738 E4                CLR     A
-003739 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
-00373C F0                MOVX    @DPTR,A
+003779 E4                CLR     A
+00377A 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
+00377D F0                MOVX    @DPTR,A
   594: 				g_variable.pairing_timeout = BT_PAIRING_TIME_OUT_2MIN;
-00373D 904CE9            MOV     DPTR,#g_variable+02AH
-003740 7404              MOV     A,#04H
-003742 F0                MOVX    @DPTR,A
-003743 A3                INC     DPTR
-003744 74B0              MOV     A,#0B0H
-003746 F0                MOVX    @DPTR,A
+00377E 904CE9            MOV     DPTR,#g_variable+02AH
+003781 7404              MOV     A,#04H
+003783 F0                MOVX    @DPTR,A
+003784 A3                INC     DPTR
+003785 74B0              MOV     A,#0B0H
+003787 F0                MOVX    @DPTR,A
   595: 				g_variable.pairing_g24_timeout = 0;
-003747 E4                CLR     A
-003748 904CEF            MOV     DPTR,#g_variable+030H
-00374B F0                MOVX    @DPTR,A
-00374C A3                INC     DPTR
-00374D F0                MOVX    @DPTR,A
+003788 E4                CLR     A
+003789 904CEF            MOV     DPTR,#g_variable+030H
+00378C F0                MOVX    @DPTR,A
+00378D A3                INC     DPTR
+00378E F0                MOVX    @DPTR,A
   596: 				fast_connect_flag = 0;
-00374E 904E55            MOV     DPTR,#fast_connect_flag
-003751 F0                MOVX    @DPTR,A
+00378F 904E55            MOV     DPTR,#fast_connect_flag
+003792 F0                MOVX    @DPTR,A
   597: 				ble_fast_connect_flag = 0;
-003752 904DD3            MOV     DPTR,#ble_fast_connect_flag
-003755 F0                MOVX    @DPTR,A
+003793 904DD3            MOV     DPTR,#ble_fast_connect_flag
+003796 F0                MOVX    @DPTR,A
   598: 			#if DEVICE_MODE_BT_ONLY
   599: 				IPC_TxControlCmd(IPC_CMD_START_DISCOVERY);
   600: 			#elif DEVICE_MODE_BLE_ONLY	
   601: 				YC_get_ble_ramdon_lap();
-003756 121A20            LCALL   YC_get_ble_ramdon_lap
+003797 121A20            LCALL   YC_get_ble_ramdon_lap
   602: 				IPC_TxControlCmd(IPC_CMD_START_ADV);
-003759 7F0D              MOV     R7,#0DH
-00375B 12085F            LCALL   _IPC_TxControlCmd
+00379A 7F0D              MOV     R7,#0DH
+00379C 12085F            LCALL   _IPC_TxControlCmd
   603: 			#else	
   604: 				YC_get_ble_ramdon_lap();
   605: 				IPC_TxControlCmd(IPC_CMD_START_ADV_DISCOVERY);
   606: 			#endif
   607: 				g_variable.key_action = KEY_NONE;
-00375E E4                CLR     A
-00375F 904CEE            MOV     DPTR,#g_variable+02FH
-003762 F0                MOVX    @DPTR,A
+00379F E4                CLR     A
+0037A0 904CEE            MOV     DPTR,#g_variable+02FH
+0037A3 F0                MOVX    @DPTR,A
   608: 			}
   609: 		}
   610: 	}
   611: 
   612: }
-003763         ?C0097?SYS:
-003763 22                RET     
+0037A4         ?C0097?SYS:
+0037A4 22                RET     
 ----- FUNCTION YC_wait_disconnect_timer500ms (END) -------
 
 
@@ -11018,400 +11072,400 @@
    44: #ifdef  ADC_ENABLE
    45: 	byte i;
    46: 	ulong batValue = 0;
-003764 904ED0            MOV     DPTR,#batValue
-003767 120582            LCALL   ?C?LSTKXDATA
-00376A 00                DB      00H
-00376B 00                DB      00H
-00376C 00                DB      00H
-00376D 00                DB      00H
+0037A5 904ED0            MOV     DPTR,#batValue
+0037A8 120582            LCALL   ?C?LSTKXDATA
+0037AB 00                DB      00H
+0037AC 00                DB      00H
+0037AD 00                DB      00H
+0037AE 00                DB      00H
    47: 
    48: 	if(!m_adcCurrentValue)
-00376E 904C95            MOV     DPTR,#m_adcCurrentValue
-003771 E0                MOVX    A,@DPTR
-003772 7002              JNZ     ?C0024?ADC
-003774 A3                INC     DPTR
-003775 E0                MOVX    A,@DPTR
-003776         ?C0024?ADC:
-003776 7003              JNZ     $ + 5H
-003778 023936            LJMP    ?C0006?ADC
-00377B         ?C0005?ADC:
+0037AF 904C95            MOV     DPTR,#m_adcCurrentValue
+0037B2 E0                MOVX    A,@DPTR
+0037B3 7002              JNZ     ?C0024?ADC
+0037B5 A3                INC     DPTR
+0037B6 E0                MOVX    A,@DPTR
+0037B7         ?C0024?ADC:
+0037B7 7003              JNZ     $ + 5H
+0037B9 023977            LJMP    ?C0006?ADC
+0037BC         ?C0005?ADC:
    49: 		return;
    50: 
    51: 	g_variable.battery_value[g_variable.battery_value_index++] = m_adcCurrentValue;
-00377B 904C95            MOV     DPTR,#m_adcCurrentValue
-00377E E0                MOVX    A,@DPTR
-00377F FE                MOV     R6,A
-003780 A3                INC     DPTR
-003781 E0                MOVX    A,@DPTR
-003782 FF                MOV     R7,A
-003783 904CD4            MOV     DPTR,#g_variable+015H
-003786 E0                MOVX    A,@DPTR
-003787 FD                MOV     R5,A
-003788 04                INC     A
-003789 F0                MOVX    @DPTR,A
-00378A ED                MOV     A,R5
-00378B 25E0              ADD     A,ACC
-00378D 24D6              ADD     A,#LOW g_variable+017H
-00378F F582              MOV     DPL,A
-003791 E4                CLR     A
-003792 344C              ADDC    A,#HIGH g_variable+017H
-003794 F583              MOV     DPH,A
-003796 EE                MOV     A,R6
-003797 F0                MOVX    @DPTR,A
-003798 A3                INC     DPTR
-003799 EF                MOV     A,R7
-00379A F0                MOVX    @DPTR,A
+0037BC 904C95            MOV     DPTR,#m_adcCurrentValue
+0037BF E0                MOVX    A,@DPTR
+0037C0 FE                MOV     R6,A
+0037C1 A3                INC     DPTR
+0037C2 E0                MOVX    A,@DPTR
+0037C3 FF                MOV     R7,A
+0037C4 904CD4            MOV     DPTR,#g_variable+015H
+0037C7 E0                MOVX    A,@DPTR
+0037C8 FD                MOV     R5,A
+0037C9 04                INC     A
+0037CA F0                MOVX    @DPTR,A
+0037CB ED                MOV     A,R5
+0037CC 25E0              ADD     A,ACC
+0037CE 24D6              ADD     A,#LOW g_variable+017H
+0037D0 F582              MOV     DPL,A
+0037D2 E4                CLR     A
+0037D3 344C              ADDC    A,#HIGH g_variable+017H
+0037D5 F583              MOV     DPH,A
+0037D7 EE                MOV     A,R6
+0037D8 F0                MOVX    @DPTR,A
+0037D9 A3                INC     DPTR
+0037DA EF                MOV     A,R7
+0037DB F0                MOVX    @DPTR,A
    52: 	if (g_variable.battery_value_index >= BAT_ARRAY_LEN)
-00379B 904CD4            MOV     DPTR,#g_variable+015H
-00379E E0                MOVX    A,@DPTR
-00379F C3                CLR     C
-0037A0 9404              SUBB    A,#04H
-0037A2 4002              JC      ?C0007?ADC
+0037DC 904CD4            MOV     DPTR,#g_variable+015H
+0037DF E0                MOVX    A,@DPTR
+0037E0 C3                CLR     C
+0037E1 9404              SUBB    A,#04H
+0037E3 4002              JC      ?C0007?ADC
    53: 		g_variable.battery_value_index = 0;
-0037A4 E4                CLR     A
-0037A5 F0                MOVX    @DPTR,A
-0037A6         ?C0007?ADC:
+0037E5 E4                CLR     A
+0037E6 F0                MOVX    @DPTR,A
+0037E7         ?C0007?ADC:
    54: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
-0037A6 E4                CLR     A
-0037A7 904ECF            MOV     DPTR,#i
-0037AA F0                MOVX    @DPTR,A
-0037AB         ?C0008?ADC:
+0037E7 E4                CLR     A
+0037E8 904ECF            MOV     DPTR,#i
+0037EB F0                MOVX    @DPTR,A
+0037EC         ?C0008?ADC:
    55: 	{
    56: 		batValue += g_variable.battery_value[i];
-0037AB 904ED0            MOV     DPTR,#batValue
-0037AE E0                MOVX    A,@DPTR
-0037AF F8                MOV     R0,A
-0037B0 A3                INC     DPTR
-0037B1 E0                MOVX    A,@DPTR
-0037B2 F9                MOV     R1,A
-0037B3 A3                INC     DPTR
-0037B4 E0                MOVX    A,@DPTR
-0037B5 FA                MOV     R2,A
-0037B6 A3                INC     DPTR
-0037B7 E0                MOVX    A,@DPTR
-0037B8 FB                MOV     R3,A
-0037B9 904ECF            MOV     DPTR,#i
-0037BC E0                MOVX    A,@DPTR
-0037BD 25E0              ADD     A,ACC
-0037BF 24D6              ADD     A,#LOW g_variable+017H
-0037C1 F582              MOV     DPL,A
-0037C3 E4                CLR     A
-0037C4 344C              ADDC    A,#HIGH g_variable+017H
-0037C6 F583              MOV     DPH,A
-0037C8 E0                MOVX    A,@DPTR
-0037C9 FE                MOV     R6,A
-0037CA A3                INC     DPTR
-0037CB E0                MOVX    A,@DPTR
-0037CC FF                MOV     R7,A
-0037CD E4                CLR     A
-0037CE FC                MOV     R4,A
-0037CF FD                MOV     R5,A
-0037D0 EB                MOV     A,R3
-0037D1 2F                ADD     A,R7
-0037D2 FF                MOV     R7,A
-0037D3 EA                MOV     A,R2
-0037D4 3E                ADDC    A,R6
-0037D5 FE                MOV     R6,A
-0037D6 ED                MOV     A,R5
-0037D7 39                ADDC    A,R1
-0037D8 FD                MOV     R5,A
-0037D9 EC                MOV     A,R4
-0037DA 38                ADDC    A,R0
-0037DB FC                MOV     R4,A
-0037DC 904ED0            MOV     DPTR,#batValue
-0037DF 120576            LCALL   ?C?LSTXDATA
-   57: 	}
-0037E2 904ECF            MOV     DPTR,#i
-0037E5 E0                MOVX    A,@DPTR
-0037E6 04                INC     A
-0037E7 F0                MOVX    @DPTR,A
-0037E8 E0                MOVX    A,@DPTR
-0037E9 B404BF            CJNE    A,#04H,?C0008?ADC
-0037EC         ?C0009?ADC:
-   58: 	batValue = batValue/BAT_ARRAY_LEN;
 0037EC 904ED0            MOV     DPTR,#batValue
 0037EF E0                MOVX    A,@DPTR
-0037F0 FC                MOV     R4,A
+0037F0 F8                MOV     R0,A
 0037F1 A3                INC     DPTR
 0037F2 E0                MOVX    A,@DPTR
-0037F3 FD                MOV     R5,A
+0037F3 F9                MOV     R1,A
 0037F4 A3                INC     DPTR
 0037F5 E0                MOVX    A,@DPTR
-0037F6 FE                MOV     R6,A
+0037F6 FA                MOV     R2,A
 0037F7 A3                INC     DPTR
 0037F8 E0                MOVX    A,@DPTR
-0037F9 FF                MOV     R7,A
-0037FA E4                CLR     A
-0037FB 7B04              MOV     R3,#04H
-0037FD FA                MOV     R2,A
-0037FE F9                MOV     R1,A
-0037FF F8                MOV     R0,A
-003800 1204C5            LCALL   ?C?ULDIV
-003803 904ED0            MOV     DPTR,#batValue
-003806 120576            LCALL   ?C?LSTXDATA
+0037F9 FB                MOV     R3,A
+0037FA 904ECF            MOV     DPTR,#i
+0037FD E0                MOVX    A,@DPTR
+0037FE 25E0              ADD     A,ACC
+003800 24D6              ADD     A,#LOW g_variable+017H
+003802 F582              MOV     DPL,A
+003804 E4                CLR     A
+003805 344C              ADDC    A,#HIGH g_variable+017H
+003807 F583              MOV     DPH,A
+003809 E0                MOVX    A,@DPTR
+00380A FE                MOV     R6,A
+00380B A3                INC     DPTR
+00380C E0                MOVX    A,@DPTR
+00380D FF                MOV     R7,A
+00380E E4                CLR     A
+00380F FC                MOV     R4,A
+003810 FD                MOV     R5,A
+003811 EB                MOV     A,R3
+003812 2F                ADD     A,R7
+003813 FF                MOV     R7,A
+003814 EA                MOV     A,R2
+003815 3E                ADDC    A,R6
+003816 FE                MOV     R6,A
+003817 ED                MOV     A,R5
+003818 39                ADDC    A,R1
+003819 FD                MOV     R5,A
+00381A EC                MOV     A,R4
+00381B 38                ADDC    A,R0
+00381C FC                MOV     R4,A
+00381D 904ED0            MOV     DPTR,#batValue
+003820 120576            LCALL   ?C?LSTXDATA
+   57: 	}
+003823 904ECF            MOV     DPTR,#i
+003826 E0                MOVX    A,@DPTR
+003827 04                INC     A
+003828 F0                MOVX    @DPTR,A
+003829 E0                MOVX    A,@DPTR
+00382A B404BF            CJNE    A,#04H,?C0008?ADC
+00382D         ?C0009?ADC:
+   58: 	batValue = batValue/BAT_ARRAY_LEN;
+00382D 904ED0            MOV     DPTR,#batValue
+003830 E0                MOVX    A,@DPTR
+003831 FC                MOV     R4,A
+003832 A3                INC     DPTR
+003833 E0                MOVX    A,@DPTR
+003834 FD                MOV     R5,A
+003835 A3                INC     DPTR
+003836 E0                MOVX    A,@DPTR
+003837 FE                MOV     R6,A
+003838 A3                INC     DPTR
+003839 E0                MOVX    A,@DPTR
+00383A FF                MOV     R7,A
+00383B E4                CLR     A
+00383C 7B04              MOV     R3,#04H
+00383E FA                MOV     R2,A
+00383F F9                MOV     R1,A
+003840 F8                MOV     R0,A
+003841 1204C5            LCALL   ?C?ULDIV
+003844 904ED0            MOV     DPTR,#batValue
+003847 120576            LCALL   ?C?LSTXDATA
    59: 
    60: 	if(batValue <= g_variable.battery_level_shutdown)
-003809 904CE0            MOV     DPTR,#g_variable+021H
-00380C E0                MOVX    A,@DPTR
-00380D FE                MOV     R6,A
-00380E A3                INC     DPTR
-00380F E0                MOVX    A,@DPTR
-003810 FF                MOV     R7,A
-003811 E4                CLR     A
-003812 FC                MOV     R4,A
-003813 FD                MOV     R5,A
-003814 904ED0            MOV     DPTR,#batValue
-003817 E0                MOVX    A,@DPTR
-003818 F8                MOV     R0,A
-003819 A3                INC     DPTR
-00381A E0                MOVX    A,@DPTR
-00381B F9                MOV     R1,A
-00381C A3                INC     DPTR
-00381D E0                MOVX    A,@DPTR
-00381E FA                MOV     R2,A
-00381F A3                INC     DPTR
-003820 E0                MOVX    A,@DPTR
-003821 FB                MOV     R3,A
-003822 D3                SETB    C
-003823 120565            LCALL   ?C?ULCMP
-003826 5007              JNC     ?C0011?ADC
+00384A 904CE0            MOV     DPTR,#g_variable+021H
+00384D E0                MOVX    A,@DPTR
+00384E FE                MOV     R6,A
+00384F A3                INC     DPTR
+003850 E0                MOVX    A,@DPTR
+003851 FF                MOV     R7,A
+003852 E4                CLR     A
+003853 FC                MOV     R4,A
+003854 FD                MOV     R5,A
+003855 904ED0            MOV     DPTR,#batValue
+003858 E0                MOVX    A,@DPTR
+003859 F8                MOV     R0,A
+00385A A3                INC     DPTR
+00385B E0                MOVX    A,@DPTR
+00385C F9                MOV     R1,A
+00385D A3                INC     DPTR
+00385E E0                MOVX    A,@DPTR
+00385F FA                MOV     R2,A
+003860 A3                INC     DPTR
+003861 E0                MOVX    A,@DPTR
+003862 FB                MOV     R3,A
+003863 D3                SETB    C
+003864 120565            LCALL   ?C?ULCMP
+003867 5007              JNC     ?C0011?ADC
    61: 		g_variable.battery_level_percentage = 0;
-003828 E4                CLR     A
-003829 904CFB            MOV     DPTR,#g_variable+03CH
-00382C F0                MOVX    @DPTR,A
-00382D 01B1              AJMP    ?C0012?ADC
-00382F         ?C0011?ADC:
+003869 E4                CLR     A
+00386A 904CFB            MOV     DPTR,#g_variable+03CH
+00386D F0                MOVX    @DPTR,A
+00386E 01F2              AJMP    ?C0012?ADC
+003870         ?C0011?ADC:
    62: 	else	if(batValue >= g_variable.battery_level_full)
-00382F 904CFC            MOV     DPTR,#g_variable+03DH
-003832 E0                MOVX    A,@DPTR
-003833 FE                MOV     R6,A
-003834 A3                INC     DPTR
-003835 E0                MOVX    A,@DPTR
-003836 FF                MOV     R7,A
-003837 E4                CLR     A
-003838 FC                MOV     R4,A
-003839 FD                MOV     R5,A
-00383A 904ED0            MOV     DPTR,#batValue
-00383D E0                MOVX    A,@DPTR
-00383E F8                MOV     R0,A
-00383F A3                INC     DPTR
-003840 E0                MOVX    A,@DPTR
-003841 F9                MOV     R1,A
-003842 A3                INC     DPTR
-003843 E0                MOVX    A,@DPTR
-003844 FA                MOV     R2,A
-003845 A3                INC     DPTR
-003846 E0                MOVX    A,@DPTR
-003847 FB                MOV     R3,A
-003848 C3                CLR     C
-003849 120565            LCALL   ?C?ULCMP
-00384C 4008              JC      ?C0013?ADC
+003870 904CFC            MOV     DPTR,#g_variable+03DH
+003873 E0                MOVX    A,@DPTR
+003874 FE                MOV     R6,A
+003875 A3                INC     DPTR
+003876 E0                MOVX    A,@DPTR
+003877 FF                MOV     R7,A
+003878 E4                CLR     A
+003879 FC                MOV     R4,A
+00387A FD                MOV     R5,A
+00387B 904ED0            MOV     DPTR,#batValue
+00387E E0                MOVX    A,@DPTR
+00387F F8                MOV     R0,A
+003880 A3                INC     DPTR
+003881 E0                MOVX    A,@DPTR
+003882 F9                MOV     R1,A
+003883 A3                INC     DPTR
+003884 E0                MOVX    A,@DPTR
+003885 FA                MOV     R2,A
+003886 A3                INC     DPTR
+003887 E0                MOVX    A,@DPTR
+003888 FB                MOV     R3,A
+003889 C3                CLR     C
+00388A 120565            LCALL   ?C?ULCMP
+00388D 4008              JC      ?C0013?ADC
    63: 		g_variable.battery_level_percentage = 100;
-00384E 904CFB            MOV     DPTR,#g_variable+03CH
-003851 7464              MOV     A,#064H
-003853 F0                MOVX    @DPTR,A
-003854 805B              SJMP    ?C0012?ADC
-003856         ?C0013?ADC:
+00388F 904CFB            MOV     DPTR,#g_variable+03CH
+003892 7464              MOV     A,#064H
+003894 F0                MOVX    @DPTR,A
+003895 805B              SJMP    ?C0012?ADC
+003897         ?C0013?ADC:
    64: 	else	
    65: 		g_variable.battery_level_percentage = (byte)(((batValue - g_variable.battery_level_shutdown)*100)/(g_variable.b
 >> attery_level_full -g_variable.battery_level_shutdown) );
-003856 904CE0            MOV     DPTR,#g_variable+021H
-003859 E0                MOVX    A,@DPTR
-00385A FE                MOV     R6,A
-00385B A3                INC     DPTR
-00385C E0                MOVX    A,@DPTR
-00385D FF                MOV     R7,A
-00385E FB                MOV     R3,A
-00385F AA06              MOV     R2,AR6
-003861 E4                CLR     A
-003862 904ED0            MOV     DPTR,#batValue
-003865 E0                MOVX    A,@DPTR
-003866 FC                MOV     R4,A
-003867 A3                INC     DPTR
-003868 E0                MOVX    A,@DPTR
-003869 FD                MOV     R5,A
-00386A A3                INC     DPTR
-00386B E0                MOVX    A,@DPTR
-00386C FE                MOV     R6,A
-00386D A3                INC     DPTR
-00386E E0                MOVX    A,@DPTR
-00386F C3                CLR     C
-003870 9B                SUBB    A,R3
-003871 FF                MOV     R7,A
-003872 EE                MOV     A,R6
-003873 9A                SUBB    A,R2
-003874 FE                MOV     R6,A
-003875 ED                MOV     A,R5
-003876 9400              SUBB    A,#00H
-003878 FD                MOV     R5,A
-003879 EC                MOV     A,R4
-00387A 9400              SUBB    A,#00H
-00387C FC                MOV     R4,A
-00387D E4                CLR     A
-00387E 7B64              MOV     R3,#064H
-003880 FA                MOV     R2,A
-003881 F9                MOV     R1,A
-003882 F8                MOV     R0,A
-003883 12043A            LCALL   ?C?LMUL
-003886 C006              PUSH    AR6
-003888 C007              PUSH    AR7
-00388A 904CE0            MOV     DPTR,#g_variable+021H
-00388D E0                MOVX    A,@DPTR
-00388E FE                MOV     R6,A
-00388F A3                INC     DPTR
-003890 E0                MOVX    A,@DPTR
-003891 FF                MOV     R7,A
-003892 C3                CLR     C
-003893 904CFD            MOV     DPTR,#g_variable+03EH
-003896 E0                MOVX    A,@DPTR
-003897 9F                SUBB    A,R7
-003898 FF                MOV     R7,A
-003899 904CFC            MOV     DPTR,#g_variable+03DH
-00389C E0                MOVX    A,@DPTR
-00389D 9E                SUBB    A,R6
-00389E FE                MOV     R6,A
-00389F AB07              MOV     R3,AR7
-0038A1 FA                MOV     R2,A
+003897 904CE0            MOV     DPTR,#g_variable+021H
+00389A E0                MOVX    A,@DPTR
+00389B FE                MOV     R6,A
+00389C A3                INC     DPTR
+00389D E0                MOVX    A,@DPTR
+00389E FF                MOV     R7,A
+00389F FB                MOV     R3,A
+0038A0 AA06              MOV     R2,AR6
 0038A2 E4                CLR     A
-0038A3 F9                MOV     R1,A
-0038A4 F8                MOV     R0,A
-0038A5 D007              POP     AR7
-0038A7 D006              POP     AR6
-0038A9 1204C5            LCALL   ?C?ULDIV
-0038AC 904CFB            MOV     DPTR,#g_variable+03CH
-0038AF EF                MOV     A,R7
-0038B0 F0                MOVX    @DPTR,A
-0038B1         ?C0012?ADC:
+0038A3 904ED0            MOV     DPTR,#batValue
+0038A6 E0                MOVX    A,@DPTR
+0038A7 FC                MOV     R4,A
+0038A8 A3                INC     DPTR
+0038A9 E0                MOVX    A,@DPTR
+0038AA FD                MOV     R5,A
+0038AB A3                INC     DPTR
+0038AC E0                MOVX    A,@DPTR
+0038AD FE                MOV     R6,A
+0038AE A3                INC     DPTR
+0038AF E0                MOVX    A,@DPTR
+0038B0 C3                CLR     C
+0038B1 9B                SUBB    A,R3
+0038B2 FF                MOV     R7,A
+0038B3 EE                MOV     A,R6
+0038B4 9A                SUBB    A,R2
+0038B5 FE                MOV     R6,A
+0038B6 ED                MOV     A,R5
+0038B7 9400              SUBB    A,#00H
+0038B9 FD                MOV     R5,A
+0038BA EC                MOV     A,R4
+0038BB 9400              SUBB    A,#00H
+0038BD FC                MOV     R4,A
+0038BE E4                CLR     A
+0038BF 7B64              MOV     R3,#064H
+0038C1 FA                MOV     R2,A
+0038C2 F9                MOV     R1,A
+0038C3 F8                MOV     R0,A
+0038C4 12043A            LCALL   ?C?LMUL
+0038C7 C006              PUSH    AR6
+0038C9 C007              PUSH    AR7
+0038CB 904CE0            MOV     DPTR,#g_variable+021H
+0038CE E0                MOVX    A,@DPTR
+0038CF FE                MOV     R6,A
+0038D0 A3                INC     DPTR
+0038D1 E0                MOVX    A,@DPTR
+0038D2 FF                MOV     R7,A
+0038D3 C3                CLR     C
+0038D4 904CFD            MOV     DPTR,#g_variable+03EH
+0038D7 E0                MOVX    A,@DPTR
+0038D8 9F                SUBB    A,R7
+0038D9 FF                MOV     R7,A
+0038DA 904CFC            MOV     DPTR,#g_variable+03DH
+0038DD E0                MOVX    A,@DPTR
+0038DE 9E                SUBB    A,R6
+0038DF FE                MOV     R6,A
+0038E0 AB07              MOV     R3,AR7
+0038E2 FA                MOV     R2,A
+0038E3 E4                CLR     A
+0038E4 F9                MOV     R1,A
+0038E5 F8                MOV     R0,A
+0038E6 D007              POP     AR7
+0038E8 D006              POP     AR6
+0038EA 1204C5            LCALL   ?C?ULDIV
+0038ED 904CFB            MOV     DPTR,#g_variable+03CH
+0038F0 EF                MOV     A,R7
+0038F1 F0                MOVX    @DPTR,A
+0038F2         ?C0012?ADC:
    66: 	
    67: 	if(batValue < g_variable.battery_level_shutdown)
-0038B1 904CE0            MOV     DPTR,#g_variable+021H
-0038B4 E0                MOVX    A,@DPTR
-0038B5 FE                MOV     R6,A
-0038B6 A3                INC     DPTR
-0038B7 E0                MOVX    A,@DPTR
-0038B8 FF                MOV     R7,A
-0038B9 E4                CLR     A
-0038BA FC                MOV     R4,A
-0038BB FD                MOV     R5,A
-0038BC 904ED0            MOV     DPTR,#batValue
-0038BF E0                MOVX    A,@DPTR
-0038C0 F8                MOV     R0,A
-0038C1 A3                INC     DPTR
-0038C2 E0                MOVX    A,@DPTR
-0038C3 F9                MOV     R1,A
-0038C4 A3                INC     DPTR
-0038C5 E0                MOVX    A,@DPTR
-0038C6 FA                MOV     R2,A
-0038C7 A3                INC     DPTR
-0038C8 E0                MOVX    A,@DPTR
-0038C9 FB                MOV     R3,A
-0038CA C3                CLR     C
-0038CB 120565            LCALL   ?C?ULCMP
-0038CE 5008              JNC     ?C0015?ADC
+0038F2 904CE0            MOV     DPTR,#g_variable+021H
+0038F5 E0                MOVX    A,@DPTR
+0038F6 FE                MOV     R6,A
+0038F7 A3                INC     DPTR
+0038F8 E0                MOVX    A,@DPTR
+0038F9 FF                MOV     R7,A
+0038FA E4                CLR     A
+0038FB FC                MOV     R4,A
+0038FC FD                MOV     R5,A
+0038FD 904ED0            MOV     DPTR,#batValue
+003900 E0                MOVX    A,@DPTR
+003901 F8                MOV     R0,A
+003902 A3                INC     DPTR
+003903 E0                MOVX    A,@DPTR
+003904 F9                MOV     R1,A
+003905 A3                INC     DPTR
+003906 E0                MOVX    A,@DPTR
+003907 FA                MOV     R2,A
+003908 A3                INC     DPTR
+003909 E0                MOVX    A,@DPTR
+00390A FB                MOV     R3,A
+00390B C3                CLR     C
+00390C 120565            LCALL   ?C?ULCMP
+00390F 5008              JNC     ?C0015?ADC
    68: 	{
    69: 		g_variable.battery_status = BAT_STATUS_SHUT_DOWN;
-0038D0 904CD5            MOV     DPTR,#g_variable+016H
-0038D3 7402              MOV     A,#02H
-0038D5 F0                MOVX    @DPTR,A
+003911 904CD5            MOV     DPTR,#g_variable+016H
+003914 7402              MOV     A,#02H
+003916 F0                MOVX    @DPTR,A
    70: 	}
-0038D6 8056              SJMP    ?C0016?ADC
-0038D8         ?C0015?ADC:
+003917 8056              SJMP    ?C0016?ADC
+003919         ?C0015?ADC:
    71: 	else
    72: 	{
    73: 		if (batValue < g_variable.battery_level_low)
-0038D8 904CDE            MOV     DPTR,#g_variable+01FH
-0038DB E0                MOVX    A,@DPTR
-0038DC FE                MOV     R6,A
-0038DD A3                INC     DPTR
-0038DE E0                MOVX    A,@DPTR
-0038DF FF                MOV     R7,A
-0038E0 E4                CLR     A
-0038E1 FC                MOV     R4,A
-0038E2 FD                MOV     R5,A
-0038E3 904ED0            MOV     DPTR,#batValue
-0038E6 E0                MOVX    A,@DPTR
-0038E7 F8                MOV     R0,A
-0038E8 A3                INC     DPTR
-0038E9 E0                MOVX    A,@DPTR
-0038EA F9                MOV     R1,A
-0038EB A3                INC     DPTR
-0038EC E0                MOVX    A,@DPTR
-0038ED FA                MOV     R2,A
-0038EE A3                INC     DPTR
-0038EF E0                MOVX    A,@DPTR
-0038F0 FB                MOV     R3,A
-0038F1 C3                CLR     C
-0038F2 120565            LCALL   ?C?ULCMP
-0038F5 501D              JNC     ?C0017?ADC
+003919 904CDE            MOV     DPTR,#g_variable+01FH
+00391C E0                MOVX    A,@DPTR
+00391D FE                MOV     R6,A
+00391E A3                INC     DPTR
+00391F E0                MOVX    A,@DPTR
+003920 FF                MOV     R7,A
+003921 E4                CLR     A
+003922 FC                MOV     R4,A
+003923 FD                MOV     R5,A
+003924 904ED0            MOV     DPTR,#batValue
+003927 E0                MOVX    A,@DPTR
+003928 F8                MOV     R0,A
+003929 A3                INC     DPTR
+00392A E0                MOVX    A,@DPTR
+00392B F9                MOV     R1,A
+00392C A3                INC     DPTR
+00392D E0                MOVX    A,@DPTR
+00392E FA                MOV     R2,A
+00392F A3                INC     DPTR
+003930 E0                MOVX    A,@DPTR
+003931 FB                MOV     R3,A
+003932 C3                CLR     C
+003933 120565            LCALL   ?C?ULCMP
+003936 501D              JNC     ?C0017?ADC
    74: 		{
    75: 			g_variable.battery_status = BAT_STATUS_LOW;
-0038F7 904CD5            MOV     DPTR,#g_variable+016H
-0038FA 7401              MOV     A,#01H
-0038FC F0                MOVX    @DPTR,A
+003938 904CD5            MOV     DPTR,#g_variable+016H
+00393B 7401              MOV     A,#01H
+00393D F0                MOVX    @DPTR,A
    76: 			if(!g_variable.g24_long_sleep_flag)
-0038FD 904D02            MOV     DPTR,#g_variable+043H
-003900 E0                MOVX    A,@DPTR
-003901 702B              JNZ     ?C0016?ADC
+00393E 904D02            MOV     DPTR,#g_variable+043H
+003941 E0                MOVX    A,@DPTR
+003942 702B              JNZ     ?C0016?ADC
    77: 			{
    78: 			m_24g_enter_hibernate[0]	= 0x00;
-003903 904D40            MOV     DPTR,#m_24g_enter_hibernate
-003906 F0                MOVX    @DPTR,A
+003944 904D40            MOV     DPTR,#m_24g_enter_hibernate
+003947 F0                MOVX    @DPTR,A
    79: 			m_24g_enter_hibernate[1]	= 0x48;
-003907 A3                INC     DPTR
-003908 7448              MOV     A,#048H
-00390A F0                MOVX    @DPTR,A
+003948 A3                INC     DPTR
+003949 7448              MOV     A,#048H
+00394B F0                MOVX    @DPTR,A
    80: 			m_24g_enter_hibernate[2]	= 0x12;		// 100ms
-00390B A3                INC     DPTR
-00390C 7412              MOV     A,#012H
-00390E F0                MOVX    @DPTR,A
+00394C A3                INC     DPTR
+00394D 7412              MOV     A,#012H
+00394F F0                MOVX    @DPTR,A
    81: 			m_24g_enter_hibernate[3]	= 0x00;
-00390F E4                CLR     A
-003910 A3                INC     DPTR
-003911 F0                MOVX    @DPTR,A
+003950 E4                CLR     A
+003951 A3                INC     DPTR
+003952 F0                MOVX    @DPTR,A
    82: 			}
    83: 		}
-003912 801A              SJMP    ?C0016?ADC
-003914         ?C0017?ADC:
+003953 801A              SJMP    ?C0016?ADC
+003955         ?C0017?ADC:
    84: 		else
    85: 		{
    86: 			g_variable.battery_status = BAT_STATUS_NONE;
-003914 E4                CLR     A
-003915 904CD5            MOV     DPTR,#g_variable+016H
-003918 F0                MOVX    @DPTR,A
+003955 E4                CLR     A
+003956 904CD5            MOV     DPTR,#g_variable+016H
+003959 F0                MOVX    @DPTR,A
    87: 			if(!g_variable.g24_long_sleep_flag)
-003919 904D02            MOV     DPTR,#g_variable+043H
-00391C E0                MOVX    A,@DPTR
-00391D 700F              JNZ     ?C0016?ADC
+00395A 904D02            MOV     DPTR,#g_variable+043H
+00395D E0                MOVX    A,@DPTR
+00395E 700F              JNZ     ?C0016?ADC
    88: 			{
    89: 			m_24g_enter_hibernate[0]	= 0x00;
-00391F 904D40            MOV     DPTR,#m_24g_enter_hibernate
-003922 F0                MOVX    @DPTR,A
+003960 904D40            MOV     DPTR,#m_24g_enter_hibernate
+003963 F0                MOVX    @DPTR,A
    90: 			m_24g_enter_hibernate[1]	= 0x48;
-003923 A3                INC     DPTR
-003924 7448              MOV     A,#048H
-003926 F0                MOVX    @DPTR,A
+003964 A3                INC     DPTR
+003965 7448              MOV     A,#048H
+003967 F0                MOVX    @DPTR,A
    91: 			m_24g_enter_hibernate[2]   = 0x5d;		// 510ms
-003927 A3                INC     DPTR
-003928 745D              MOV     A,#05DH
-00392A F0                MOVX    @DPTR,A
+003968 A3                INC     DPTR
+003969 745D              MOV     A,#05DH
+00396B F0                MOVX    @DPTR,A
    92: 			m_24g_enter_hibernate[3]	= 0x00;
-00392B E4                CLR     A
-00392C A3                INC     DPTR
-00392D F0                MOVX    @DPTR,A
+00396C E4                CLR     A
+00396D A3                INC     DPTR
+00396E F0                MOVX    @DPTR,A
    93: 			}
    94: 		}
    95: 	}
-00392E         ?C0016?ADC:
+00396F         ?C0016?ADC:
    96: 
    97: 	g_variable.last_battery_status = g_variable.battery_status;
-00392E 904CD5            MOV     DPTR,#g_variable+016H
-003931 E0                MOVX    A,@DPTR
-003932 904D01            MOV     DPTR,#g_variable+042H
-003935 F0                MOVX    @DPTR,A
+00396F 904CD5            MOV     DPTR,#g_variable+016H
+003972 E0                MOVX    A,@DPTR
+003973 904D01            MOV     DPTR,#g_variable+042H
+003976 F0                MOVX    @DPTR,A
    98: #endif	
    99: }
-003936         ?C0006?ADC:
-003936 22                RET     
+003977         ?C0006?ADC:
+003977 22                RET     
 ----- FUNCTION YC_adc_check (END) -------
 
 
@@ -11422,732 +11476,732 @@
   104: #ifdef  ADC_ENABLE
   105: 	// adc check timer	
   106: 	if (g_variable.battery_check_interval)
-003937 904CD3            MOV     DPTR,#g_variable+014H
-00393A E0                MOVX    A,@DPTR
-00393B 600B              JZ      ?C0023?ADC
+003978 904CD3            MOV     DPTR,#g_variable+014H
+00397B E0                MOVX    A,@DPTR
+00397C 600B              JZ      ?C0023?ADC
   107: 	{
   108: 		g_variable.battery_check_interval--;
-00393D 14                DEC     A
-00393E F0                MOVX    @DPTR,A
+00397E 14                DEC     A
+00397F F0                MOVX    @DPTR,A
   109: 		if (g_variable.battery_check_interval == 0)
-00393F E0                MOVX    A,@DPTR
-003940 7006              JNZ     ?C0023?ADC
+003980 E0                MOVX    A,@DPTR
+003981 7006              JNZ     ?C0023?ADC
   110: 		{
   111: 			g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-003942 7405              MOV     A,#05H
-003944 F0                MOVX    @DPTR,A
+003983 7405              MOV     A,#05H
+003985 F0                MOVX    @DPTR,A
   112: 			YC_adc_check();
-003945 123764            LCALL   YC_adc_check
+003986 1237A5            LCALL   YC_adc_check
   113: 		}
   114: 	}
   115: #endif	
   116: }
-003948         ?C0023?ADC:
-003948 22                RET     
+003989         ?C0023?ADC:
+003989 22                RET     
 ----- FUNCTION YC_adc_check_timer500ms (END) -------
 
 
 ----- FUNCTION _bufsize (BEGIN) -----
-003949 904EDD            MOV     DPTR,#rptr
-00394C EE                MOV     A,R6
-00394D F0                MOVX    @DPTR,A
-00394E A3                INC     DPTR
-00394F EF                MOV     A,R7
-003950 F0                MOVX    @DPTR,A
-003951 904EDF            MOV     DPTR,#wptr
-003954 EC                MOV     A,R4
-003955 F0                MOVX    @DPTR,A
-003956 A3                INC     DPTR
-003957 ED                MOV     A,R5
-003958 F0                MOVX    @DPTR,A
+00398A 904EDD            MOV     DPTR,#rptr
+00398D EE                MOV     A,R6
+00398E F0                MOVX    @DPTR,A
+00398F A3                INC     DPTR
+003990 EF                MOV     A,R7
+003991 F0                MOVX    @DPTR,A
+003992 904EDF            MOV     DPTR,#wptr
+003995 EC                MOV     A,R4
+003996 F0                MOVX    @DPTR,A
+003997 A3                INC     DPTR
+003998 ED                MOV     A,R5
+003999 F0                MOVX    @DPTR,A
 ;---- Variable 'buflen' assigned to Register 'R3' ----
-003959 904EDF            MOV     DPTR,#wptr
-00395C E0                MOVX    A,@DPTR
-00395D FE                MOV     R6,A
-00395E A3                INC     DPTR
-00395F E0                MOVX    A,@DPTR
-003960 FF                MOV     R7,A
-003961 D3                SETB    C
-003962 904EDE            MOV     DPTR,#rptr+01H
-003965 E0                MOVX    A,@DPTR
-003966 9F                SUBB    A,R7
-003967 904EDD            MOV     DPTR,#rptr
-00396A E0                MOVX    A,@DPTR
-00396B 9E                SUBB    A,R6
-00396C 4016              JC      ?C0001?IPC
-00396E 904EDF            MOV     DPTR,#wptr
-003971 E0                MOVX    A,@DPTR
-003972 FE                MOV     R6,A
-003973 A3                INC     DPTR
-003974 E0                MOVX    A,@DPTR
-003975 FF                MOV     R7,A
-003976 904EDE            MOV     DPTR,#rptr+01H
-003979 E0                MOVX    A,@DPTR
-00397A 9F                SUBB    A,R7
-00397B FF                MOV     R7,A
-00397C 904EDD            MOV     DPTR,#rptr
-00397F E0                MOVX    A,@DPTR
-003980 9E                SUBB    A,R6
-003981 FE                MOV     R6,A
-003982 801E              SJMP    ?C0002?IPC
-003984         ?C0001?IPC:
-003984 904EDD            MOV     DPTR,#rptr
-003987 E0                MOVX    A,@DPTR
-003988 FE                MOV     R6,A
-003989 A3                INC     DPTR
-00398A E0                MOVX    A,@DPTR
-00398B FF                MOV     R7,A
-00398C C3                CLR     C
-00398D 904EE0            MOV     DPTR,#wptr+01H
-003990 E0                MOVX    A,@DPTR
-003991 9F                SUBB    A,R7
-003992 FF                MOV     R7,A
-003993 904EDF            MOV     DPTR,#wptr
-003996 E0                MOVX    A,@DPTR
-003997 9E                SUBB    A,R6
-003998 FE                MOV     R6,A
-003999 AD03              MOV     R5,AR3
-00399B C3                CLR     C
-00399C EB                MOV     A,R3
-00399D 9F                SUBB    A,R7
-00399E FF                MOV     R7,A
-00399F E4                CLR     A
-0039A0 9E                SUBB    A,R6
-0039A1 FE                MOV     R6,A
-0039A2         ?C0002?IPC:
-0039A2 22                RET     
+00399A 904EDF            MOV     DPTR,#wptr
+00399D E0                MOVX    A,@DPTR
+00399E FE                MOV     R6,A
+00399F A3                INC     DPTR
+0039A0 E0                MOVX    A,@DPTR
+0039A1 FF                MOV     R7,A
+0039A2 D3                SETB    C
+0039A3 904EDE            MOV     DPTR,#rptr+01H
+0039A6 E0                MOVX    A,@DPTR
+0039A7 9F                SUBB    A,R7
+0039A8 904EDD            MOV     DPTR,#rptr
+0039AB E0                MOVX    A,@DPTR
+0039AC 9E                SUBB    A,R6
+0039AD 4016              JC      ?C0001?IPC
+0039AF 904EDF            MOV     DPTR,#wptr
+0039B2 E0                MOVX    A,@DPTR
+0039B3 FE                MOV     R6,A
+0039B4 A3                INC     DPTR
+0039B5 E0                MOVX    A,@DPTR
+0039B6 FF                MOV     R7,A
+0039B7 904EDE            MOV     DPTR,#rptr+01H
+0039BA E0                MOVX    A,@DPTR
+0039BB 9F                SUBB    A,R7
+0039BC FF                MOV     R7,A
+0039BD 904EDD            MOV     DPTR,#rptr
+0039C0 E0                MOVX    A,@DPTR
+0039C1 9E                SUBB    A,R6
+0039C2 FE                MOV     R6,A
+0039C3 801E              SJMP    ?C0002?IPC
+0039C5         ?C0001?IPC:
+0039C5 904EDD            MOV     DPTR,#rptr
+0039C8 E0                MOVX    A,@DPTR
+0039C9 FE                MOV     R6,A
+0039CA A3                INC     DPTR
+0039CB E0                MOVX    A,@DPTR
+0039CC FF                MOV     R7,A
+0039CD C3                CLR     C
+0039CE 904EE0            MOV     DPTR,#wptr+01H
+0039D1 E0                MOVX    A,@DPTR
+0039D2 9F                SUBB    A,R7
+0039D3 FF                MOV     R7,A
+0039D4 904EDF            MOV     DPTR,#wptr
+0039D7 E0                MOVX    A,@DPTR
+0039D8 9E                SUBB    A,R6
+0039D9 FE                MOV     R6,A
+0039DA AD03              MOV     R5,AR3
+0039DC C3                CLR     C
+0039DD EB                MOV     A,R3
+0039DE 9F                SUBB    A,R7
+0039DF FF                MOV     R7,A
+0039E0 E4                CLR     A
+0039E1 9E                SUBB    A,R6
+0039E2 FE                MOV     R6,A
+0039E3         ?C0002?IPC:
+0039E3 22                RET     
 ----- FUNCTION _bufsize (END) -------
 
 
 ----- FUNCTION _ipcRx (BEGIN) -----
-0039A3 904F06            MOV     DPTR,#dest
-0039A6 EE                MOV     A,R6
-0039A7 F0                MOVX    @DPTR,A
-0039A8 A3                INC     DPTR
-0039A9 EF                MOV     A,R7
-0039AA F0                MOVX    @DPTR,A
+0039E4 904F06            MOV     DPTR,#dest
+0039E7 EE                MOV     A,R6
+0039E8 F0                MOVX    @DPTR,A
+0039E9 A3                INC     DPTR
+0039EA EF                MOV     A,R7
+0039EB F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R1' ----
-0039AB A905              MOV     R1,AR5
-0039AD 904B9E            MOV     DPTR,#ipcRxReadPtr
-0039B0 E0                MOVX    A,@DPTR
-0039B1 FE                MOV     R6,A
-0039B2 A3                INC     DPTR
-0039B3 E0                MOVX    A,@DPTR
-0039B4 FF                MOV     R7,A
+0039EC A905              MOV     R1,AR5
+0039EE 904B9E            MOV     DPTR,#ipcRxReadPtr
+0039F1 E0                MOVX    A,@DPTR
+0039F2 FE                MOV     R6,A
+0039F3 A3                INC     DPTR
+0039F4 E0                MOVX    A,@DPTR
+0039F5 FF                MOV     R7,A
 ;---- Variable 'src' assigned to Register 'R6/R7' ----
-0039B5         ?C0004?IPC:
-0039B5 AD01              MOV     R5,AR1
-0039B7 19                DEC     R1
-0039B8 ED                MOV     A,R5
-0039B9 602F              JZ      ?C0005?IPC
-0039BB 0F                INC     R7
-0039BC EF                MOV     A,R7
-0039BD AC06              MOV     R4,AR6
-0039BF 7001              JNZ     ?C0046?IPC
-0039C1 0E                INC     R6
-0039C2         ?C0046?IPC:
-0039C2 14                DEC     A
-0039C3 F582              MOV     DPL,A
-0039C5 8C83              MOV     DPH,R4
-0039C7 E0                MOVX    A,@DPTR
-0039C8 FD                MOV     R5,A
-0039C9 904F06            MOV     DPTR,#dest
-0039CC E4                CLR     A
-0039CD 75F001            MOV     B,#01H
-0039D0 120424            LCALL   ?C?ILDIX
-0039D3 85F082            MOV     DPL,B
-0039D6 F583              MOV     DPH,A
-0039D8 ED                MOV     A,R5
-0039D9 F0                MOVX    @DPTR,A
-0039DA AD07              MOV     R5,AR7
-0039DC AC06              MOV     R4,AR6
-0039DE BC4BD4            CJNE    R4,#04BH,?C0004?IPC
-0039E1 BD9AD1            CJNE    R5,#09AH,?C0004?IPC
-0039E4 7E4B              MOV     R6,#04BH
-0039E6 7F36              MOV     R7,#036H
-0039E8 80CB              SJMP    ?C0004?IPC
-0039EA         ?C0005?IPC:
-0039EA 904B9E            MOV     DPTR,#ipcRxReadPtr
-0039ED EE                MOV     A,R6
-0039EE F0                MOVX    @DPTR,A
-0039EF A3                INC     DPTR
-0039F0 EF                MOV     A,R7
-0039F1 F0                MOVX    @DPTR,A
-0039F2 22                RET     
+0039F6         ?C0004?IPC:
+0039F6 AD01              MOV     R5,AR1
+0039F8 19                DEC     R1
+0039F9 ED                MOV     A,R5
+0039FA 602F              JZ      ?C0005?IPC
+0039FC 0F                INC     R7
+0039FD EF                MOV     A,R7
+0039FE AC06              MOV     R4,AR6
+003A00 7001              JNZ     ?C0046?IPC
+003A02 0E                INC     R6
+003A03         ?C0046?IPC:
+003A03 14                DEC     A
+003A04 F582              MOV     DPL,A
+003A06 8C83              MOV     DPH,R4
+003A08 E0                MOVX    A,@DPTR
+003A09 FD                MOV     R5,A
+003A0A 904F06            MOV     DPTR,#dest
+003A0D E4                CLR     A
+003A0E 75F001            MOV     B,#01H
+003A11 120424            LCALL   ?C?ILDIX
+003A14 85F082            MOV     DPL,B
+003A17 F583              MOV     DPH,A
+003A19 ED                MOV     A,R5
+003A1A F0                MOVX    @DPTR,A
+003A1B AD07              MOV     R5,AR7
+003A1D AC06              MOV     R4,AR6
+003A1F BC4BD4            CJNE    R4,#04BH,?C0004?IPC
+003A22 BD9AD1            CJNE    R5,#09AH,?C0004?IPC
+003A25 7E4B              MOV     R6,#04BH
+003A27 7F36              MOV     R7,#036H
+003A29 80CB              SJMP    ?C0004?IPC
+003A2B         ?C0005?IPC:
+003A2B 904B9E            MOV     DPTR,#ipcRxReadPtr
+003A2E EE                MOV     A,R6
+003A2F F0                MOVX    @DPTR,A
+003A30 A3                INC     DPTR
+003A31 EF                MOV     A,R7
+003A32 F0                MOVX    @DPTR,A
+003A33 22                RET     
 ----- FUNCTION _ipcRx (END) -------
 
 
 ----- FUNCTION IPC_DealSingleStep (BEGIN) -----
-0039F3 7A0C              MOV     R2,#HIGH ipcReadBuff
-0039F5 794B              MOV     R1,#LOW ipcReadBuff
-0039F7 904EF4            MOV     DPTR,#pbuff
-0039FA 7401              MOV     A,#01H
-0039FC F0                MOVX    @DPTR,A
-0039FD A3                INC     DPTR
-0039FE 740C              MOV     A,#HIGH ipcReadBuff
-003A00 F0                MOVX    @DPTR,A
-003A01 A3                INC     DPTR
-003A02 744B              MOV     A,#LOW ipcReadBuff
-003A04 F0                MOVX    @DPTR,A
-003A05 904BA0            MOV     DPTR,#ipcRxWritePtr
-003A08 E0                MOVX    A,@DPTR
-003A09 FE                MOV     R6,A
-003A0A A3                INC     DPTR
-003A0B E0                MOVX    A,@DPTR
-003A0C FF                MOV     R7,A
-003A0D 904B9E            MOV     DPTR,#ipcRxReadPtr
-003A10 E0                MOVX    A,@DPTR
-003A11 6E                XRL     A,R6
-003A12 7003              JNZ     ?C0048?IPC
-003A14 A3                INC     DPTR
-003A15 E0                MOVX    A,@DPTR
-003A16 6F                XRL     A,R7
-003A17         ?C0048?IPC:
-003A17 7002              JNZ     $ + 4H
-003A19 61A2              AJMP    ?C0039?IPC
-003A1B         ?C0027?IPC:
-003A1B 7E0C              MOV     R6,#HIGH ipcReadBuff
-003A1D 7F4B              MOV     R7,#LOW ipcReadBuff
-003A1F 7D03              MOV     R5,#03H
-003A21 31A3              ACALL   _ipcRx
-003A23 904EF4            MOV     DPTR,#pbuff
-003A26 E0                MOVX    A,@DPTR
-003A27 FB                MOV     R3,A
-003A28 A3                INC     DPTR
-003A29 E0                MOVX    A,@DPTR
-003A2A FA                MOV     R2,A
-003A2B A3                INC     DPTR
-003A2C E0                MOVX    A,@DPTR
-003A2D F9                MOV     R1,A
-003A2E 1203B6            LCALL   ?C?CLDPTR
-003A31 B4022B            CJNE    A,#02H,?C0029?IPC
-003A34 904EF5            MOV     DPTR,#pbuff+01H
-003A37 E4                CLR     A
-003A38 75F002            MOV     B,#02H
-003A3B 12040E            LCALL   ?C?IILDX
-003A3E 904EF4            MOV     DPTR,#pbuff
-003A41 E0                MOVX    A,@DPTR
-003A42 FB                MOV     R3,A
-003A43 A3                INC     DPTR
-003A44 E0                MOVX    A,@DPTR
-003A45 FA                MOV     R2,A
-003A46 A3                INC     DPTR
-003A47 E0                MOVX    A,@DPTR
-003A48 F9                MOV     R1,A
-003A49 1203B6            LCALL   ?C?CLDPTR
-003A4C FF                MOV     R7,A
-003A4D 904E68            MOV     DPTR,#ipcCb
-003A50 E0                MOVX    A,@DPTR
-003A51 A3                INC     DPTR
-003A52 E0                MOVX    A,@DPTR
-003A53 FA                MOV     R2,A
-003A54 A3                INC     DPTR
-003A55 E0                MOVX    A,@DPTR
-003A56 F582              MOV     DPL,A
-003A58 8A83              MOV     DPH,R2
-003A5A 1205DD            LCALL   ?C?ICALL2
-003A5D 61A2              AJMP    ?C0039?IPC
-003A5F         ?C0029?IPC:
-003A5F 904EF4            MOV     DPTR,#pbuff
-003A62 E0                MOVX    A,@DPTR
-003A63 FB                MOV     R3,A
-003A64 A3                INC     DPTR
-003A65 E0                MOVX    A,@DPTR
-003A66 FA                MOV     R2,A
-003A67 A3                INC     DPTR
-003A68 E0                MOVX    A,@DPTR
-003A69 F9                MOV     R1,A
-003A6A 1203B6            LCALL   ?C?CLDPTR
-003A6D 6404              XRL     A,#04H
-003A6F 7059              JNZ     ?C0031?IPC
-003A71 904EF5            MOV     DPTR,#pbuff+01H
-003A74 75F001            MOV     B,#01H
-003A77 12040E            LCALL   ?C?IILDX
-003A7A 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
-003A7C 7F4E              MOV     R7,#LOW ipcReadBuff+03H
-003A7E 904EF4            MOV     DPTR,#pbuff
-003A81 E0                MOVX    A,@DPTR
-003A82 FB                MOV     R3,A
-003A83 A3                INC     DPTR
-003A84 E0                MOVX    A,@DPTR
-003A85 FA                MOV     R2,A
-003A86 A3                INC     DPTR
-003A87 E0                MOVX    A,@DPTR
-003A88 F9                MOV     R1,A
-003A89 1203B6            LCALL   ?C?CLDPTR
-003A8C 14                DEC     A
-003A8D FD                MOV     R5,A
-003A8E 31A3              ACALL   _ipcRx
-003A90 904EF4            MOV     DPTR,#pbuff
+003A34 7A0C              MOV     R2,#HIGH ipcReadBuff
+003A36 794B              MOV     R1,#LOW ipcReadBuff
+003A38 904EF4            MOV     DPTR,#pbuff
+003A3B 7401              MOV     A,#01H
+003A3D F0                MOVX    @DPTR,A
+003A3E A3                INC     DPTR
+003A3F 740C              MOV     A,#HIGH ipcReadBuff
+003A41 F0                MOVX    @DPTR,A
+003A42 A3                INC     DPTR
+003A43 744B              MOV     A,#LOW ipcReadBuff
+003A45 F0                MOVX    @DPTR,A
+003A46 904BA0            MOV     DPTR,#ipcRxWritePtr
+003A49 E0                MOVX    A,@DPTR
+003A4A FE                MOV     R6,A
+003A4B A3                INC     DPTR
+003A4C E0                MOVX    A,@DPTR
+003A4D FF                MOV     R7,A
+003A4E 904B9E            MOV     DPTR,#ipcRxReadPtr
+003A51 E0                MOVX    A,@DPTR
+003A52 6E                XRL     A,R6
+003A53 7003              JNZ     ?C0048?IPC
+003A55 A3                INC     DPTR
+003A56 E0                MOVX    A,@DPTR
+003A57 6F                XRL     A,R7
+003A58         ?C0048?IPC:
+003A58 7002              JNZ     $ + 4H
+003A5A 61E3              AJMP    ?C0039?IPC
+003A5C         ?C0027?IPC:
+003A5C 7E0C              MOV     R6,#HIGH ipcReadBuff
+003A5E 7F4B              MOV     R7,#LOW ipcReadBuff
+003A60 7D03              MOV     R5,#03H
+003A62 31E4              ACALL   _ipcRx
+003A64 904EF4            MOV     DPTR,#pbuff
+003A67 E0                MOVX    A,@DPTR
+003A68 FB                MOV     R3,A
+003A69 A3                INC     DPTR
+003A6A E0                MOVX    A,@DPTR
+003A6B FA                MOV     R2,A
+003A6C A3                INC     DPTR
+003A6D E0                MOVX    A,@DPTR
+003A6E F9                MOV     R1,A
+003A6F 1203B6            LCALL   ?C?CLDPTR
+003A72 B4022B            CJNE    A,#02H,?C0029?IPC
+003A75 904EF5            MOV     DPTR,#pbuff+01H
+003A78 E4                CLR     A
+003A79 75F002            MOV     B,#02H
+003A7C 12040E            LCALL   ?C?IILDX
+003A7F 904EF4            MOV     DPTR,#pbuff
+003A82 E0                MOVX    A,@DPTR
+003A83 FB                MOV     R3,A
+003A84 A3                INC     DPTR
+003A85 E0                MOVX    A,@DPTR
+003A86 FA                MOV     R2,A
+003A87 A3                INC     DPTR
+003A88 E0                MOVX    A,@DPTR
+003A89 F9                MOV     R1,A
+003A8A 1203B6            LCALL   ?C?CLDPTR
+003A8D FF                MOV     R7,A
+003A8E 904E68            MOV     DPTR,#ipcCb
+003A91 E0                MOVX    A,@DPTR
+003A92 A3                INC     DPTR
 003A93 E0                MOVX    A,@DPTR
-003A94 FB                MOV     R3,A
+003A94 FA                MOV     R2,A
 003A95 A3                INC     DPTR
 003A96 E0                MOVX    A,@DPTR
-003A97 FA                MOV     R2,A
-003A98 A3                INC     DPTR
-003A99 E0                MOVX    A,@DPTR
-003A9A 2401              ADD     A,#01H
-003A9C F9                MOV     R1,A
-003A9D E4                CLR     A
-003A9E 3A                ADDC    A,R2
-003A9F FA                MOV     R2,A
-003AA0 C002              PUSH    AR2
-003AA2 C001              PUSH    AR1
-003AA4 904EF4            MOV     DPTR,#pbuff
-003AA7 E0                MOVX    A,@DPTR
+003A97 F582              MOV     DPL,A
+003A99 8A83              MOV     DPH,R2
+003A9B 1205DD            LCALL   ?C?ICALL2
+003A9E 61E3              AJMP    ?C0039?IPC
+003AA0         ?C0029?IPC:
+003AA0 904EF4            MOV     DPTR,#pbuff
+003AA3 E0                MOVX    A,@DPTR
+003AA4 FB                MOV     R3,A
+003AA5 A3                INC     DPTR
+003AA6 E0                MOVX    A,@DPTR
+003AA7 FA                MOV     R2,A
 003AA8 A3                INC     DPTR
 003AA9 E0                MOVX    A,@DPTR
-003AAA FA                MOV     R2,A
-003AAB A3                INC     DPTR
-003AAC E0                MOVX    A,@DPTR
-003AAD F9                MOV     R1,A
-003AAE 1203B6            LCALL   ?C?CLDPTR
-003AB1 FD                MOV     R5,A
-003AB2 7C00              MOV     R4,#00H
-003AB4 904E6B            MOV     DPTR,#ipcCb+03H
-003AB7 E0                MOVX    A,@DPTR
-003AB8 A3                INC     DPTR
-003AB9 E0                MOVX    A,@DPTR
-003ABA FA                MOV     R2,A
-003ABB A3                INC     DPTR
-003ABC E0                MOVX    A,@DPTR
-003ABD F582              MOV     DPL,A
-003ABF 8A83              MOV     DPH,R2
-003AC1 D001              POP     AR1
-003AC3 D002              POP     AR2
-003AC5 1205DD            LCALL   ?C?ICALL2
-003AC8 61A2              AJMP    ?C0039?IPC
-003ACA         ?C0031?IPC:
-003ACA 904EF4            MOV     DPTR,#pbuff
-003ACD E0                MOVX    A,@DPTR
-003ACE FB                MOV     R3,A
-003ACF A3                INC     DPTR
-003AD0 E0                MOVX    A,@DPTR
-003AD1 FA                MOV     R2,A
-003AD2 A3                INC     DPTR
-003AD3 E0                MOVX    A,@DPTR
-003AD4 F9                MOV     R1,A
-003AD5 1203B6            LCALL   ?C?CLDPTR
-003AD8 6405              XRL     A,#05H
-003ADA 7059              JNZ     ?C0033?IPC
-003ADC 904EF5            MOV     DPTR,#pbuff+01H
-003ADF 75F001            MOV     B,#01H
-003AE2 12040E            LCALL   ?C?IILDX
-003AE5 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
-003AE7 7F4E              MOV     R7,#LOW ipcReadBuff+03H
-003AE9 904EF4            MOV     DPTR,#pbuff
-003AEC E0                MOVX    A,@DPTR
-003AED FB                MOV     R3,A
-003AEE A3                INC     DPTR
-003AEF E0                MOVX    A,@DPTR
-003AF0 FA                MOV     R2,A
-003AF1 A3                INC     DPTR
-003AF2 E0                MOVX    A,@DPTR
-003AF3 F9                MOV     R1,A
-003AF4 1203B6            LCALL   ?C?CLDPTR
-003AF7 14                DEC     A
-003AF8 FD                MOV     R5,A
-003AF9 31A3              ACALL   _ipcRx
-003AFB 904EF4            MOV     DPTR,#pbuff
-003AFE E0                MOVX    A,@DPTR
-003AFF FB                MOV     R3,A
-003B00 A3                INC     DPTR
-003B01 E0                MOVX    A,@DPTR
-003B02 FA                MOV     R2,A
-003B03 A3                INC     DPTR
-003B04 E0                MOVX    A,@DPTR
-003B05 2401              ADD     A,#01H
-003B07 F9                MOV     R1,A
-003B08 E4                CLR     A
-003B09 3A                ADDC    A,R2
-003B0A FA                MOV     R2,A
-003B0B C002              PUSH    AR2
-003B0D C001              PUSH    AR1
-003B0F 904EF4            MOV     DPTR,#pbuff
-003B12 E0                MOVX    A,@DPTR
+003AAA F9                MOV     R1,A
+003AAB 1203B6            LCALL   ?C?CLDPTR
+003AAE 6404              XRL     A,#04H
+003AB0 7059              JNZ     ?C0031?IPC
+003AB2 904EF5            MOV     DPTR,#pbuff+01H
+003AB5 75F001            MOV     B,#01H
+003AB8 12040E            LCALL   ?C?IILDX
+003ABB 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
+003ABD 7F4E              MOV     R7,#LOW ipcReadBuff+03H
+003ABF 904EF4            MOV     DPTR,#pbuff
+003AC2 E0                MOVX    A,@DPTR
+003AC3 FB                MOV     R3,A
+003AC4 A3                INC     DPTR
+003AC5 E0                MOVX    A,@DPTR
+003AC6 FA                MOV     R2,A
+003AC7 A3                INC     DPTR
+003AC8 E0                MOVX    A,@DPTR
+003AC9 F9                MOV     R1,A
+003ACA 1203B6            LCALL   ?C?CLDPTR
+003ACD 14                DEC     A
+003ACE FD                MOV     R5,A
+003ACF 31E4              ACALL   _ipcRx
+003AD1 904EF4            MOV     DPTR,#pbuff
+003AD4 E0                MOVX    A,@DPTR
+003AD5 FB                MOV     R3,A
+003AD6 A3                INC     DPTR
+003AD7 E0                MOVX    A,@DPTR
+003AD8 FA                MOV     R2,A
+003AD9 A3                INC     DPTR
+003ADA E0                MOVX    A,@DPTR
+003ADB 2401              ADD     A,#01H
+003ADD F9                MOV     R1,A
+003ADE E4                CLR     A
+003ADF 3A                ADDC    A,R2
+003AE0 FA                MOV     R2,A
+003AE1 C002              PUSH    AR2
+003AE3 C001              PUSH    AR1
+003AE5 904EF4            MOV     DPTR,#pbuff
+003AE8 E0                MOVX    A,@DPTR
+003AE9 A3                INC     DPTR
+003AEA E0                MOVX    A,@DPTR
+003AEB FA                MOV     R2,A
+003AEC A3                INC     DPTR
+003AED E0                MOVX    A,@DPTR
+003AEE F9                MOV     R1,A
+003AEF 1203B6            LCALL   ?C?CLDPTR
+003AF2 FD                MOV     R5,A
+003AF3 7C00              MOV     R4,#00H
+003AF5 904E6B            MOV     DPTR,#ipcCb+03H
+003AF8 E0                MOVX    A,@DPTR
+003AF9 A3                INC     DPTR
+003AFA E0                MOVX    A,@DPTR
+003AFB FA                MOV     R2,A
+003AFC A3                INC     DPTR
+003AFD E0                MOVX    A,@DPTR
+003AFE F582              MOV     DPL,A
+003B00 8A83              MOV     DPH,R2
+003B02 D001              POP     AR1
+003B04 D002              POP     AR2
+003B06 1205DD            LCALL   ?C?ICALL2
+003B09 61E3              AJMP    ?C0039?IPC
+003B0B         ?C0031?IPC:
+003B0B 904EF4            MOV     DPTR,#pbuff
+003B0E E0                MOVX    A,@DPTR
+003B0F FB                MOV     R3,A
+003B10 A3                INC     DPTR
+003B11 E0                MOVX    A,@DPTR
+003B12 FA                MOV     R2,A
 003B13 A3                INC     DPTR
 003B14 E0                MOVX    A,@DPTR
-003B15 FA                MOV     R2,A
-003B16 A3                INC     DPTR
-003B17 E0                MOVX    A,@DPTR
-003B18 F9                MOV     R1,A
-003B19 1203B6            LCALL   ?C?CLDPTR
-003B1C FD                MOV     R5,A
-003B1D 7C00              MOV     R4,#00H
-003B1F 904E74            MOV     DPTR,#ipcCb+0CH
-003B22 E0                MOVX    A,@DPTR
-003B23 A3                INC     DPTR
-003B24 E0                MOVX    A,@DPTR
-003B25 FA                MOV     R2,A
-003B26 A3                INC     DPTR
-003B27 E0                MOVX    A,@DPTR
-003B28 F582              MOV     DPL,A
-003B2A 8A83              MOV     DPH,R2
-003B2C D001              POP     AR1
-003B2E D002              POP     AR2
-003B30 1205DD            LCALL   ?C?ICALL2
-003B33 806D              SJMP    ?C0039?IPC
-003B35         ?C0033?IPC:
-003B35 904EF4            MOV     DPTR,#pbuff
-003B38 E0                MOVX    A,@DPTR
-003B39 FB                MOV     R3,A
-003B3A A3                INC     DPTR
-003B3B E0                MOVX    A,@DPTR
-003B3C FA                MOV     R2,A
-003B3D A3                INC     DPTR
-003B3E E0                MOVX    A,@DPTR
-003B3F F9                MOV     R1,A
-003B40 1203B6            LCALL   ?C?CLDPTR
-003B43 6403              XRL     A,#03H
-003B45 7059              JNZ     ?C0037?IPC
-003B47 904EF5            MOV     DPTR,#pbuff+01H
-003B4A 75F001            MOV     B,#01H
-003B4D 12040E            LCALL   ?C?IILDX
-003B50 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
-003B52 7F4E              MOV     R7,#LOW ipcReadBuff+03H
-003B54 904EF4            MOV     DPTR,#pbuff
-003B57 E0                MOVX    A,@DPTR
-003B58 FB                MOV     R3,A
-003B59 A3                INC     DPTR
-003B5A E0                MOVX    A,@DPTR
-003B5B FA                MOV     R2,A
-003B5C A3                INC     DPTR
-003B5D E0                MOVX    A,@DPTR
-003B5E F9                MOV     R1,A
-003B5F 1203B6            LCALL   ?C?CLDPTR
-003B62 14                DEC     A
-003B63 FD                MOV     R5,A
-003B64 31A3              ACALL   _ipcRx
-003B66 904EF4            MOV     DPTR,#pbuff
-003B69 E0                MOVX    A,@DPTR
-003B6A FB                MOV     R3,A
-003B6B A3                INC     DPTR
-003B6C E0                MOVX    A,@DPTR
-003B6D FA                MOV     R2,A
-003B6E A3                INC     DPTR
-003B6F E0                MOVX    A,@DPTR
-003B70 2401              ADD     A,#01H
-003B72 F9                MOV     R1,A
-003B73 E4                CLR     A
-003B74 3A                ADDC    A,R2
-003B75 FA                MOV     R2,A
-003B76 C002              PUSH    AR2
-003B78 C001              PUSH    AR1
-003B7A 904EF4            MOV     DPTR,#pbuff
-003B7D E0                MOVX    A,@DPTR
+003B15 F9                MOV     R1,A
+003B16 1203B6            LCALL   ?C?CLDPTR
+003B19 6405              XRL     A,#05H
+003B1B 7059              JNZ     ?C0033?IPC
+003B1D 904EF5            MOV     DPTR,#pbuff+01H
+003B20 75F001            MOV     B,#01H
+003B23 12040E            LCALL   ?C?IILDX
+003B26 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
+003B28 7F4E              MOV     R7,#LOW ipcReadBuff+03H
+003B2A 904EF4            MOV     DPTR,#pbuff
+003B2D E0                MOVX    A,@DPTR
+003B2E FB                MOV     R3,A
+003B2F A3                INC     DPTR
+003B30 E0                MOVX    A,@DPTR
+003B31 FA                MOV     R2,A
+003B32 A3                INC     DPTR
+003B33 E0                MOVX    A,@DPTR
+003B34 F9                MOV     R1,A
+003B35 1203B6            LCALL   ?C?CLDPTR
+003B38 14                DEC     A
+003B39 FD                MOV     R5,A
+003B3A 31E4              ACALL   _ipcRx
+003B3C 904EF4            MOV     DPTR,#pbuff
+003B3F E0                MOVX    A,@DPTR
+003B40 FB                MOV     R3,A
+003B41 A3                INC     DPTR
+003B42 E0                MOVX    A,@DPTR
+003B43 FA                MOV     R2,A
+003B44 A3                INC     DPTR
+003B45 E0                MOVX    A,@DPTR
+003B46 2401              ADD     A,#01H
+003B48 F9                MOV     R1,A
+003B49 E4                CLR     A
+003B4A 3A                ADDC    A,R2
+003B4B FA                MOV     R2,A
+003B4C C002              PUSH    AR2
+003B4E C001              PUSH    AR1
+003B50 904EF4            MOV     DPTR,#pbuff
+003B53 E0                MOVX    A,@DPTR
+003B54 A3                INC     DPTR
+003B55 E0                MOVX    A,@DPTR
+003B56 FA                MOV     R2,A
+003B57 A3                INC     DPTR
+003B58 E0                MOVX    A,@DPTR
+003B59 F9                MOV     R1,A
+003B5A 1203B6            LCALL   ?C?CLDPTR
+003B5D FD                MOV     R5,A
+003B5E 7C00              MOV     R4,#00H
+003B60 904E74            MOV     DPTR,#ipcCb+0CH
+003B63 E0                MOVX    A,@DPTR
+003B64 A3                INC     DPTR
+003B65 E0                MOVX    A,@DPTR
+003B66 FA                MOV     R2,A
+003B67 A3                INC     DPTR
+003B68 E0                MOVX    A,@DPTR
+003B69 F582              MOV     DPL,A
+003B6B 8A83              MOV     DPH,R2
+003B6D D001              POP     AR1
+003B6F D002              POP     AR2
+003B71 1205DD            LCALL   ?C?ICALL2
+003B74 806D              SJMP    ?C0039?IPC
+003B76         ?C0033?IPC:
+003B76 904EF4            MOV     DPTR,#pbuff
+003B79 E0                MOVX    A,@DPTR
+003B7A FB                MOV     R3,A
+003B7B A3                INC     DPTR
+003B7C E0                MOVX    A,@DPTR
+003B7D FA                MOV     R2,A
 003B7E A3                INC     DPTR
 003B7F E0                MOVX    A,@DPTR
-003B80 FA                MOV     R2,A
-003B81 A3                INC     DPTR
-003B82 E0                MOVX    A,@DPTR
-003B83 F9                MOV     R1,A
-003B84 1203B6            LCALL   ?C?CLDPTR
-003B87 FD                MOV     R5,A
-003B88 7C00              MOV     R4,#00H
-003B8A 904E77            MOV     DPTR,#ipcCb+0FH
-003B8D E0                MOVX    A,@DPTR
-003B8E A3                INC     DPTR
-003B8F E0                MOVX    A,@DPTR
-003B90 FA                MOV     R2,A
-003B91 A3                INC     DPTR
-003B92 E0                MOVX    A,@DPTR
-003B93 F582              MOV     DPL,A
-003B95 8A83              MOV     DPH,R2
-003B97 D001              POP     AR1
-003B99 D002              POP     AR2
-003B9B 1205DD            LCALL   ?C?ICALL2
-003B9E 8002              SJMP    ?C0039?IPC
-003BA0         ?C0037?IPC:
-003BA0 80FE              SJMP    ?C0037?IPC
-003BA2         IPC_TIMER:
-003BA2         ?C0039?IPC:
-003BA2 904BA5            MOV     DPTR,#bttimer
-003BA5 E0                MOVX    A,@DPTR
-003BA6 FE                MOV     R6,A
-003BA7 A3                INC     DPTR
-003BA8 E0                MOVX    A,@DPTR
-003BA9 FF                MOV     R7,A
-003BAA 904C5E            MOV     DPTR,#c51timer
+003B80 F9                MOV     R1,A
+003B81 1203B6            LCALL   ?C?CLDPTR
+003B84 6403              XRL     A,#03H
+003B86 7059              JNZ     ?C0037?IPC
+003B88 904EF5            MOV     DPTR,#pbuff+01H
+003B8B 75F001            MOV     B,#01H
+003B8E 12040E            LCALL   ?C?IILDX
+003B91 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
+003B93 7F4E              MOV     R7,#LOW ipcReadBuff+03H
+003B95 904EF4            MOV     DPTR,#pbuff
+003B98 E0                MOVX    A,@DPTR
+003B99 FB                MOV     R3,A
+003B9A A3                INC     DPTR
+003B9B E0                MOVX    A,@DPTR
+003B9C FA                MOV     R2,A
+003B9D A3                INC     DPTR
+003B9E E0                MOVX    A,@DPTR
+003B9F F9                MOV     R1,A
+003BA0 1203B6            LCALL   ?C?CLDPTR
+003BA3 14                DEC     A
+003BA4 FD                MOV     R5,A
+003BA5 31E4              ACALL   _ipcRx
+003BA7 904EF4            MOV     DPTR,#pbuff
+003BAA E0                MOVX    A,@DPTR
+003BAB FB                MOV     R3,A
+003BAC A3                INC     DPTR
 003BAD E0                MOVX    A,@DPTR
-003BAE 6E                XRL     A,R6
-003BAF 7003              JNZ     ?C0049?IPC
-003BB1 A3                INC     DPTR
-003BB2 E0                MOVX    A,@DPTR
-003BB3 6F                XRL     A,R7
-003BB4         ?C0049?IPC:
-003BB4 6022              JZ      ?C0043?IPC
-003BB6 904E6E            MOV     DPTR,#ipcCb+06H
-003BB9 E0                MOVX    A,@DPTR
-003BBA FB                MOV     R3,A
-003BBB A3                INC     DPTR
-003BBC E0                MOVX    A,@DPTR
-003BBD FA                MOV     R2,A
-003BBE A3                INC     DPTR
-003BBF E0                MOVX    A,@DPTR
-003BC0 F9                MOV     R1,A
-003BC1 4A                ORL     A,R2
-003BC2 6037              JZ      ?C0042?IPC
-003BC4         ?C0041?IPC:
-003BC4 1205D9            LCALL   ?C?ICALL
-003BC7 904BA5            MOV     DPTR,#bttimer
-003BCA E0                MOVX    A,@DPTR
-003BCB FF                MOV     R7,A
-003BCC A3                INC     DPTR
-003BCD E0                MOVX    A,@DPTR
-003BCE 904C5E            MOV     DPTR,#c51timer
-003BD1 CF                XCH     A,R7
-003BD2 F0                MOVX    @DPTR,A
-003BD3 A3                INC     DPTR
-003BD4 EF                MOV     A,R7
-003BD5 F0                MOVX    @DPTR,A
-003BD6 80CA              SJMP    ?C0039?IPC
-003BD8         ?C0043?IPC:
-003BD8 904C8D            MOV     DPTR,#btstimer
-003BDB E0                MOVX    A,@DPTR
-003BDC FF                MOV     R7,A
-003BDD A3                INC     DPTR
-003BDE E0                MOVX    A,@DPTR
-003BDF 6F                XRL     A,R7
-003BE0 6019              JZ      ?C0042?IPC
-003BE2 904E71            MOV     DPTR,#ipcCb+09H
-003BE5 E0                MOVX    A,@DPTR
-003BE6 FB                MOV     R3,A
-003BE7 A3                INC     DPTR
-003BE8 E0                MOVX    A,@DPTR
-003BE9 FA                MOV     R2,A
-003BEA A3                INC     DPTR
-003BEB E0                MOVX    A,@DPTR
-003BEC F9                MOV     R1,A
-003BED 4A                ORL     A,R2
-003BEE 600B              JZ      ?C0042?IPC
-003BF0         ?C0045?IPC:
-003BF0 1205D9            LCALL   ?C?ICALL
-003BF3 904C8D            MOV     DPTR,#btstimer
-003BF6 E0                MOVX    A,@DPTR
-003BF7 A3                INC     DPTR
-003BF8 F0                MOVX    @DPTR,A
-003BF9 80DD              SJMP    ?C0043?IPC
-003BFB         ?C0042?IPC:
-003BFB 22                RET     
+003BAE FA                MOV     R2,A
+003BAF A3                INC     DPTR
+003BB0 E0                MOVX    A,@DPTR
+003BB1 2401              ADD     A,#01H
+003BB3 F9                MOV     R1,A
+003BB4 E4                CLR     A
+003BB5 3A                ADDC    A,R2
+003BB6 FA                MOV     R2,A
+003BB7 C002              PUSH    AR2
+003BB9 C001              PUSH    AR1
+003BBB 904EF4            MOV     DPTR,#pbuff
+003BBE E0                MOVX    A,@DPTR
+003BBF A3                INC     DPTR
+003BC0 E0                MOVX    A,@DPTR
+003BC1 FA                MOV     R2,A
+003BC2 A3                INC     DPTR
+003BC3 E0                MOVX    A,@DPTR
+003BC4 F9                MOV     R1,A
+003BC5 1203B6            LCALL   ?C?CLDPTR
+003BC8 FD                MOV     R5,A
+003BC9 7C00              MOV     R4,#00H
+003BCB 904E77            MOV     DPTR,#ipcCb+0FH
+003BCE E0                MOVX    A,@DPTR
+003BCF A3                INC     DPTR
+003BD0 E0                MOVX    A,@DPTR
+003BD1 FA                MOV     R2,A
+003BD2 A3                INC     DPTR
+003BD3 E0                MOVX    A,@DPTR
+003BD4 F582              MOV     DPL,A
+003BD6 8A83              MOV     DPH,R2
+003BD8 D001              POP     AR1
+003BDA D002              POP     AR2
+003BDC 1205DD            LCALL   ?C?ICALL2
+003BDF 8002              SJMP    ?C0039?IPC
+003BE1         ?C0037?IPC:
+003BE1 80FE              SJMP    ?C0037?IPC
+003BE3         IPC_TIMER:
+003BE3         ?C0039?IPC:
+003BE3 904BA5            MOV     DPTR,#bttimer
+003BE6 E0                MOVX    A,@DPTR
+003BE7 FE                MOV     R6,A
+003BE8 A3                INC     DPTR
+003BE9 E0                MOVX    A,@DPTR
+003BEA FF                MOV     R7,A
+003BEB 904C5E            MOV     DPTR,#c51timer
+003BEE E0                MOVX    A,@DPTR
+003BEF 6E                XRL     A,R6
+003BF0 7003              JNZ     ?C0049?IPC
+003BF2 A3                INC     DPTR
+003BF3 E0                MOVX    A,@DPTR
+003BF4 6F                XRL     A,R7
+003BF5         ?C0049?IPC:
+003BF5 6022              JZ      ?C0043?IPC
+003BF7 904E6E            MOV     DPTR,#ipcCb+06H
+003BFA E0                MOVX    A,@DPTR
+003BFB FB                MOV     R3,A
+003BFC A3                INC     DPTR
+003BFD E0                MOVX    A,@DPTR
+003BFE FA                MOV     R2,A
+003BFF A3                INC     DPTR
+003C00 E0                MOVX    A,@DPTR
+003C01 F9                MOV     R1,A
+003C02 4A                ORL     A,R2
+003C03 6037              JZ      ?C0042?IPC
+003C05         ?C0041?IPC:
+003C05 1205D9            LCALL   ?C?ICALL
+003C08 904BA5            MOV     DPTR,#bttimer
+003C0B E0                MOVX    A,@DPTR
+003C0C FF                MOV     R7,A
+003C0D A3                INC     DPTR
+003C0E E0                MOVX    A,@DPTR
+003C0F 904C5E            MOV     DPTR,#c51timer
+003C12 CF                XCH     A,R7
+003C13 F0                MOVX    @DPTR,A
+003C14 A3                INC     DPTR
+003C15 EF                MOV     A,R7
+003C16 F0                MOVX    @DPTR,A
+003C17 80CA              SJMP    ?C0039?IPC
+003C19         ?C0043?IPC:
+003C19 904C8D            MOV     DPTR,#btstimer
+003C1C E0                MOVX    A,@DPTR
+003C1D FF                MOV     R7,A
+003C1E A3                INC     DPTR
+003C1F E0                MOVX    A,@DPTR
+003C20 6F                XRL     A,R7
+003C21 6019              JZ      ?C0042?IPC
+003C23 904E71            MOV     DPTR,#ipcCb+09H
+003C26 E0                MOVX    A,@DPTR
+003C27 FB                MOV     R3,A
+003C28 A3                INC     DPTR
+003C29 E0                MOVX    A,@DPTR
+003C2A FA                MOV     R2,A
+003C2B A3                INC     DPTR
+003C2C E0                MOVX    A,@DPTR
+003C2D F9                MOV     R1,A
+003C2E 4A                ORL     A,R2
+003C2F 600B              JZ      ?C0042?IPC
+003C31         ?C0045?IPC:
+003C31 1205D9            LCALL   ?C?ICALL
+003C34 904C8D            MOV     DPTR,#btstimer
+003C37 E0                MOVX    A,@DPTR
+003C38 A3                INC     DPTR
+003C39 F0                MOVX    @DPTR,A
+003C3A 80DD              SJMP    ?C0043?IPC
+003C3C         ?C0042?IPC:
+003C3C 22                RET     
 ----- FUNCTION IPC_DealSingleStep (END) -------
 
 
 ----- FUNCTION _IPC_TxData (BEGIN) -----
-003BFC 904F10            MOV     DPTR,#len
-003BFF ED                MOV     A,R5
-003C00 F0                MOVX    @DPTR,A
+003C3D 904F10            MOV     DPTR,#len
+003C40 ED                MOV     A,R5
+003C41 F0                MOVX    @DPTR,A
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C01 E0                MOVX    A,@DPTR
-003C02 FD                MOV     R5,A
-003C03 900BE8            MOV     DPTR,#ipcSendBuff+01H
-003C06 F0                MOVX    @DPTR,A
-003C07 7E0B              MOV     R6,#HIGH ipcSendBuff+02H
-003C09 7FE9              MOV     R7,#LOW ipcSendBuff+02H
-003C0B 904EC4            MOV     DPTR,#?_xmemcpy?BYTE+05H
-003C0E ED                MOV     A,R5
-003C0F F0                MOVX    @DPTR,A
-003C10 1210D2            LCALL   _xmemcpy
-003C13 7B01              MOV     R3,#01H
-003C15 7A0B              MOV     R2,#HIGH ipcSendBuff
-003C17 79E7              MOV     R1,#LOW ipcSendBuff
-003C19 904F10            MOV     DPTR,#len
-003C1C E0                MOVX    A,@DPTR
-003C1D 2402              ADD     A,#02H
-003C1F FD                MOV     R5,A
-003C20 020887            LJMP    _ipcTx
+003C42 E0                MOVX    A,@DPTR
+003C43 FD                MOV     R5,A
+003C44 900BE8            MOV     DPTR,#ipcSendBuff+01H
+003C47 F0                MOVX    @DPTR,A
+003C48 7E0B              MOV     R6,#HIGH ipcSendBuff+02H
+003C4A 7FE9              MOV     R7,#LOW ipcSendBuff+02H
+003C4C 904EC4            MOV     DPTR,#?_xmemcpy?BYTE+05H
+003C4F ED                MOV     A,R5
+003C50 F0                MOVX    @DPTR,A
+003C51 1210D2            LCALL   _xmemcpy
+003C54 7B01              MOV     R3,#01H
+003C56 7A0B              MOV     R2,#HIGH ipcSendBuff
+003C58 79E7              MOV     R1,#LOW ipcSendBuff
+003C5A 904F10            MOV     DPTR,#len
+003C5D E0                MOVX    A,@DPTR
+003C5E 2402              ADD     A,#02H
+003C60 FD                MOV     R5,A
+003C61 020887            LJMP    _ipcTx
 ----- FUNCTION _IPC_TxData (END) -------
 
 
 ----- FUNCTION _IPC_Tx24GData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C23 900BE7            MOV     DPTR,#ipcSendBuff
-003C26 7406              MOV     A,#06H
-003C28 F0                MOVX    @DPTR,A
-003C29 80D1              SJMP    _IPC_TxData
+003C64 900BE7            MOV     DPTR,#ipcSendBuff
+003C67 7406              MOV     A,#06H
+003C69 F0                MOVX    @DPTR,A
+003C6A 80D1              SJMP    _IPC_TxData
 ----- FUNCTION _IPC_Tx24GData (END) -------
 
 
 ----- FUNCTION _IPC_TxSppData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C2B 900BE7            MOV     DPTR,#ipcSendBuff
-003C2E 7404              MOV     A,#04H
-003C30 F0                MOVX    @DPTR,A
-003C31 80C9              SJMP    _IPC_TxData
+003C6C 900BE7            MOV     DPTR,#ipcSendBuff
+003C6F 7404              MOV     A,#04H
+003C71 F0                MOVX    @DPTR,A
+003C72 80C9              SJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxSppData (END) -------
 
 
 ----- FUNCTION _IPC_TxBleData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C33 900BE7            MOV     DPTR,#ipcSendBuff
-003C36 7405              MOV     A,#05H
-003C38 F0                MOVX    @DPTR,A
-003C39 80C1              SJMP    _IPC_TxData
+003C74 900BE7            MOV     DPTR,#ipcSendBuff
+003C77 7405              MOV     A,#05H
+003C79 F0                MOVX    @DPTR,A
+003C7A 80C1              SJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxBleData (END) -------
 
 
 ----- FUNCTION _IPC_TxBREDRHidData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C3B 900BE7            MOV     DPTR,#ipcSendBuff
-003C3E 7403              MOV     A,#03H
-003C40 F0                MOVX    @DPTR,A
-003C41 ED                MOV     A,R5
-003C42 6002              JZ      ?C0017?IPC
-003C44         ?C0016?IPC:
-003C44 71FC              ACALL   _IPC_TxData
-003C46         ?C0017?IPC:
-003C46 22                RET     
+003C7C 900BE7            MOV     DPTR,#ipcSendBuff
+003C7F 7403              MOV     A,#03H
+003C81 F0                MOVX    @DPTR,A
+003C82 ED                MOV     A,R5
+003C83 6002              JZ      ?C0017?IPC
+003C85         ?C0016?IPC:
+003C85 913D              ACALL   _IPC_TxData
+003C87         ?C0017?IPC:
+003C87 22                RET     
 ----- FUNCTION _IPC_TxBREDRHidData (END) -------
 
 
 ----- FUNCTION IPC_GetBBDIsconnectReason (BEGIN) -----
-003C47 900446            MOV     DPTR,#bbDisReason
-003C4A E0                MOVX    A,@DPTR
-003C4B FF                MOV     R7,A
-003C4C 22                RET     
+003C88 900446            MOV     DPTR,#bbDisReason
+003C8B E0                MOVX    A,@DPTR
+003C8C FF                MOV     R7,A
+003C8D 22                RET     
 ----- FUNCTION IPC_GetBBDIsconnectReason (END) -------
 
 
 ----- FUNCTION IPC_AbandonLpm (BEGIN) -----
-003C4D 900B7F            MOV     DPTR,#lpm_flag
-003C50 7401              MOV     A,#01H
-003C52 F0                MOVX    @DPTR,A
-003C53 E4                CLR     A
-003C54 900B7E            MOV     DPTR,#current_task
-003C57 F0                MOVX    @DPTR,A
-003C58 22                RET     
+003C8E 900B7F            MOV     DPTR,#lpm_flag
+003C91 7401              MOV     A,#01H
+003C93 F0                MOVX    @DPTR,A
+003C94 E4                CLR     A
+003C95 900B7E            MOV     DPTR,#current_task
+003C98 F0                MOVX    @DPTR,A
+003C99 22                RET     
 ----- FUNCTION IPC_AbandonLpm (END) -------
 
 
 ----- FUNCTION IPC_IsTxBuffEmpty (BEGIN) -----
-003C59 904B9C            MOV     DPTR,#ipcTxWritePtr
-003C5C E0                MOVX    A,@DPTR
-003C5D FE                MOV     R6,A
-003C5E A3                INC     DPTR
-003C5F E0                MOVX    A,@DPTR
-003C60 FF                MOV     R7,A
-003C61 904B9A            MOV     DPTR,#ipcTxReadPtr
-003C64 E0                MOVX    A,@DPTR
-003C65 B50607            CJNE    A,AR6,?C0025?IPC
-003C68 A3                INC     DPTR
-003C69 E0                MOVX    A,@DPTR
-003C6A B50702            CJNE    A,AR7,?C0025?IPC
-003C6D D3                SETB    C
-003C6E 22                RET     
-003C6F         ?C0025?IPC:
-003C6F C3                CLR     C
-003C70 22                RET     
+003C9A 904B9C            MOV     DPTR,#ipcTxWritePtr
+003C9D E0                MOVX    A,@DPTR
+003C9E FE                MOV     R6,A
+003C9F A3                INC     DPTR
+003CA0 E0                MOVX    A,@DPTR
+003CA1 FF                MOV     R7,A
+003CA2 904B9A            MOV     DPTR,#ipcTxReadPtr
+003CA5 E0                MOVX    A,@DPTR
+003CA6 B50607            CJNE    A,AR6,?C0025?IPC
+003CA9 A3                INC     DPTR
+003CAA E0                MOVX    A,@DPTR
+003CAB B50702            CJNE    A,AR7,?C0025?IPC
+003CAE D3                SETB    C
+003CAF 22                RET     
+003CB0         ?C0025?IPC:
+003CB0 C3                CLR     C
+003CB1 22                RET     
 ----- FUNCTION IPC_IsTxBuffEmpty (END) -------
 
 
 ----- FUNCTION YC_Ice_break (BEGIN) -----
-003C71 908280            MOV     DPTR,#08280H
-003C74 7401              MOV     A,#01H
-003C76 F0                MOVX    @DPTR,A
-003C77 22                RET     
+003CB2 908280            MOV     DPTR,#08280H
+003CB5 7401              MOV     A,#01H
+003CB7 F0                MOVX    @DPTR,A
+003CB8 22                RET     
 ----- FUNCTION YC_Ice_break (END) -------
 
 
 ----- FUNCTION _dmemcpy (BEGIN) -----
-003C78 904E9C            MOV     DPTR,#dest
-003C7B EB                MOV     A,R3
-003C7C F0                MOVX    @DPTR,A
-003C7D A3                INC     DPTR
-003C7E EA                MOV     A,R2
-003C7F F0                MOVX    @DPTR,A
-003C80 A3                INC     DPTR
-003C81 E9                MOV     A,R1
-003C82 F0                MOVX    @DPTR,A
-003C83         ?C0005?UTILITIES:
-003C83 904EA2            MOV     DPTR,#len
-003C86 74FF              MOV     A,#0FFH
-003C88 F5F0              MOV     B,A
-003C8A 120424            LCALL   ?C?ILDIX
-003C8D 45F0              ORL     A,B
-003C8F 602A              JZ      ?C0007?UTILITIES
-003C91 904E9F            MOV     DPTR,#src
-003C94 E0                MOVX    A,@DPTR
-003C95 FB                MOV     R3,A
-003C96 A3                INC     DPTR
-003C97 E4                CLR     A
-003C98 75F001            MOV     B,#01H
-003C9B 120424            LCALL   ?C?ILDIX
-003C9E A9F0              MOV     R1,B
-003CA0 FA                MOV     R2,A
-003CA1 1203B6            LCALL   ?C?CLDPTR
-003CA4 FF                MOV     R7,A
-003CA5 904E9C            MOV     DPTR,#dest
-003CA8 E0                MOVX    A,@DPTR
-003CA9 FB                MOV     R3,A
-003CAA A3                INC     DPTR
-003CAB E4                CLR     A
-003CAC 75F001            MOV     B,#01H
-003CAF 120424            LCALL   ?C?ILDIX
-003CB2 A9F0              MOV     R1,B
-003CB4 FA                MOV     R2,A
-003CB5 EF                MOV     A,R7
-003CB6 1203FC            LCALL   ?C?CSTPTR
-003CB9 80C8              SJMP    ?C0005?UTILITIES
-003CBB         ?C0007?UTILITIES:
-003CBB 22                RET     
+003CB9 904E9C            MOV     DPTR,#dest
+003CBC EB                MOV     A,R3
+003CBD F0                MOVX    @DPTR,A
+003CBE A3                INC     DPTR
+003CBF EA                MOV     A,R2
+003CC0 F0                MOVX    @DPTR,A
+003CC1 A3                INC     DPTR
+003CC2 E9                MOV     A,R1
+003CC3 F0                MOVX    @DPTR,A
+003CC4         ?C0005?UTILITIES:
+003CC4 904EA2            MOV     DPTR,#len
+003CC7 74FF              MOV     A,#0FFH
+003CC9 F5F0              MOV     B,A
+003CCB 120424            LCALL   ?C?ILDIX
+003CCE 45F0              ORL     A,B
+003CD0 602A              JZ      ?C0007?UTILITIES
+003CD2 904E9F            MOV     DPTR,#src
+003CD5 E0                MOVX    A,@DPTR
+003CD6 FB                MOV     R3,A
+003CD7 A3                INC     DPTR
+003CD8 E4                CLR     A
+003CD9 75F001            MOV     B,#01H
+003CDC 120424            LCALL   ?C?ILDIX
+003CDF A9F0              MOV     R1,B
+003CE1 FA                MOV     R2,A
+003CE2 1203B6            LCALL   ?C?CLDPTR
+003CE5 FF                MOV     R7,A
+003CE6 904E9C            MOV     DPTR,#dest
+003CE9 E0                MOVX    A,@DPTR
+003CEA FB                MOV     R3,A
+003CEB A3                INC     DPTR
+003CEC E4                CLR     A
+003CED 75F001            MOV     B,#01H
+003CF0 120424            LCALL   ?C?ILDIX
+003CF3 A9F0              MOV     R1,B
+003CF5 FA                MOV     R2,A
+003CF6 EF                MOV     A,R7
+003CF7 1203FC            LCALL   ?C?CSTPTR
+003CFA 80C8              SJMP    ?C0005?UTILITIES
+003CFC         ?C0007?UTILITIES:
+003CFC 22                RET     
 ----- FUNCTION _dmemcpy (END) -------
 
 
 ----- FUNCTION _GPIO_ClearWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-003CBC EF                MOV     A,R7
-003CBD F4                CPL     A
-003CBE 603A              JZ      ?C0023?GPIO
-003CC0         ?C0022?GPIO:
-003CC0 EF                MOV     A,R7
-003CC1 5407              ANL     A,#07H
-003CC3 FE                MOV     R6,A
+003CFD EF                MOV     A,R7
+003CFE F4                CPL     A
+003CFF 603A              JZ      ?C0023?GPIO
+003D01         ?C0022?GPIO:
+003D01 EF                MOV     A,R7
+003D02 5407              ANL     A,#07H
+003D04 FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-003CC4 EF                MOV     A,R7
-003CC5 13                RRC     A
-003CC6 13                RRC     A
-003CC7 13                RRC     A
-003CC8 5403              ANL     A,#03H
-003CCA FF                MOV     R7,A
+003D05 EF                MOV     A,R7
+003D06 13                RRC     A
+003D07 13                RRC     A
+003D08 13                RRC     A
+003D09 5403              ANL     A,#03H
+003D0B FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-003CCB 24A3              ADD     A,#LOW YC_GPIOWakeupL
-003CCD F582              MOV     DPL,A
-003CCF E4                CLR     A
-003CD0 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-003CD2 F583              MOV     DPH,A
-003CD4 C083              PUSH    DPH
-003CD6 C082              PUSH    DPL
-003CD8 E0                MOVX    A,@DPTR
-003CD9 FD                MOV     R5,A
-003CDA 7401              MOV     A,#01H
-003CDC A806              MOV     R0,AR6
-003CDE 08                INC     R0
-003CDF 8002              SJMP    ?C0043?GPIO
-003CE1         ?C0042?GPIO:
-003CE1 C3                CLR     C
-003CE2 33                RLC     A
-003CE3         ?C0043?GPIO:
-003CE3 D8FC              DJNZ    R0,?C0042?GPIO
-003CE5 F4                CPL     A
-003CE6 FC                MOV     R4,A
-003CE7 5D                ANL     A,R5
-003CE8 D082              POP     DPL
-003CEA D083              POP     DPH
-003CEC F0                MOVX    @DPTR,A
-003CED 74A7              MOV     A,#LOW YC_GPIOWakeupH
-003CEF 2F                ADD     A,R7
-003CF0 F582              MOV     DPL,A
-003CF2 E4                CLR     A
-003CF3 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-003CF5 F583              MOV     DPH,A
-003CF7 E0                MOVX    A,@DPTR
-003CF8 5C                ANL     A,R4
-003CF9 F0                MOVX    @DPTR,A
-003CFA         ?C0023?GPIO:
-003CFA 22                RET     
+003D0C 24A3              ADD     A,#LOW YC_GPIOWakeupL
+003D0E F582              MOV     DPL,A
+003D10 E4                CLR     A
+003D11 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+003D13 F583              MOV     DPH,A
+003D15 C083              PUSH    DPH
+003D17 C082              PUSH    DPL
+003D19 E0                MOVX    A,@DPTR
+003D1A FD                MOV     R5,A
+003D1B 7401              MOV     A,#01H
+003D1D A806              MOV     R0,AR6
+003D1F 08                INC     R0
+003D20 8002              SJMP    ?C0043?GPIO
+003D22         ?C0042?GPIO:
+003D22 C3                CLR     C
+003D23 33                RLC     A
+003D24         ?C0043?GPIO:
+003D24 D8FC              DJNZ    R0,?C0042?GPIO
+003D26 F4                CPL     A
+003D27 FC                MOV     R4,A
+003D28 5D                ANL     A,R5
+003D29 D082              POP     DPL
+003D2B D083              POP     DPH
+003D2D F0                MOVX    @DPTR,A
+003D2E 74A7              MOV     A,#LOW YC_GPIOWakeupH
+003D30 2F                ADD     A,R7
+003D31 F582              MOV     DPL,A
+003D33 E4                CLR     A
+003D34 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+003D36 F583              MOV     DPH,A
+003D38 E0                MOVX    A,@DPTR
+003D39 5C                ANL     A,R4
+003D3A F0                MOVX    @DPTR,A
+003D3B         ?C0023?GPIO:
+003D3B 22                RET     
 ----- FUNCTION _GPIO_ClearWakeup (END) -------
 
 
Index: c51/output/FW.HTM
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/FW.HTM	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/FW.HTM	(working copy)
@@ -25,7 +25,7 @@
 
 <p class="TinyT">
 Created from: <b>LX51 LINKER/LOCATER V4.41</b><br>
-Creation time: <b>11/29/2022  16:14:37</b><p>
+Creation time: <b>12/02/2022  15:48:49</b><p>
 
 <hr>
 
@@ -57,14 +57,14 @@
 <li><a href="#S112">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S84"></a>?PR?KSCOLINITIALIZE?KEYSCAN (C:00312BH - C:003149H)</h2>
+<h2><a name="S84"></a>?PR?KSCOLINITIALIZE?KEYSCAN (C:00312AH - C:003148H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S198">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S198">?PR?_GPIO_SETINPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S110"></a>?PR?_KB_CB_HID?SYS (C:00370EH - C:00371DH)</h2>
+<h2><a name="S110"></a>?PR?_KB_CB_HID?SYS (C:00374FH - C:00375EH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S223">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -108,11 +108,10 @@
 <li><a href="#S116">?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S120"></a>?PR?KB_CB_TIMER100MS?SYS (C:0033B6H - C:003511H)</h2>
+<h2><a name="S120"></a>?PR?KB_CB_TIMER100MS?SYS (C:0033D8H - C:003536H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=12 Bytes (<a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
-<li><a href="#S208">?PR?_GPIO_FLIPOUTBIT?GPIO</a></li>
 <li><a href="#S190">?PR?_GPIO_SETOUT?GPIO</a></li>
 <li><a href="#S140">?PR?_IPC_TXCONTROLCMD?IPC</a></li>
 <li><a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
@@ -149,7 +148,7 @@
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S146"></a>?PR?_IPC_TXSPPDATA?IPC (C:003C2BH - C:003C32H)</h2>
+<h2><a name="S146"></a>?PR?_IPC_TXSPPDATA?IPC (C:003C6CH - C:003C73H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S142">?PR?_IPC_TXDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -451,7 +450,7 @@
 <li><a href="#S75">?PR?_KEY_FN_FUNCTION?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S75"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:002D11H - C:003101H)</h2>
+<h2><a name="S75"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:002D11H - C:003100H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S74">?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS</a>) Top=6 Bytes (<a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -498,7 +497,7 @@
 <li><a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S82"></a>?PR?KSRAWINITIALIZE?KEYSCAN (C:003102H - C:00311FH)</h2>
+<h2><a name="S82"></a>?PR?KSRAWINITIALIZE?KEYSCAN (C:003101H - C:00311EH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S198">?PR?_GPIO_SETINPUT?GPIO</a>) Top=6 Bytes (<a href="#S86">?PR?KS_INITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -510,7 +509,7 @@
 <li><a href="#S86">?PR?KS_INITIALIZE?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S86"></a>?PR?KS_INITIALIZE?KEYSCAN (C:003120H - C:00312AH)</h2>
+<h2><a name="S86"></a>?PR?KS_INITIALIZE?KEYSCAN (C:00311FH - C:003129H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=10 Bytes (<a href="#S82">?PR?KSRAWINITIALIZE?KEYSCAN</a>) Top=4 Bytes (<a href="#S104">?PR?SYSTEM_HARDWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -523,7 +522,7 @@
 <li><a href="#S104">?PR?SYSTEM_HARDWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S87"></a>?PR?KS_UNISTALL?KEYSCAN (C:00314AH - C:0031E1H)</h2>
+<h2><a name="S87"></a>?PR?KS_UNISTALL?KEYSCAN (C:003149H - C:0031E0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S205">?PR?_GPIO_SETWAKEUPBYCURRENTSTATE?GPIO</a>) Top=2 Bytes (<a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -589,7 +588,7 @@
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S97"></a>?PR?LED_DEVICE_POWERON?LED (C:00351BH - C:00353DH)</h2>
+<h2><a name="S97"></a>?PR?LED_DEVICE_POWERON?LED (C:0033B5H - C:0033D7H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S190">?PR?_GPIO_SETOUT?GPIO</a>) Top=2 Bytes (<a href="#S112">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -617,7 +616,7 @@
 <li><a href="#S117">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S99"></a>?PR?LED_HANDLE?LED (C:00353EH - C:0035C7H)</h2>
+<h2><a name="S99"></a>?PR?LED_HANDLE?LED (C:003540H - C:0035C9H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S98">?PR?LED_DEVICE_POWEROFF?LED</a>) Top=2 Bytes (<a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -632,7 +631,7 @@
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S100"></a>?PR?KB_BLE_NAME_ROLL?SYS (C:0035C8H - C:0035F9H)</h2>
+<h2><a name="S100"></a>?PR?KB_BLE_NAME_ROLL?SYS (C:0035CAH - C:0035FBH)</h2>
 <p><br><b>Maximum Stack:</b> Top=14 Bytes (<a href="#S14">?PR?YC_GET_BLE_RAMDON_LAP?BLUETOOTH</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -658,7 +657,7 @@
 <li><a href="#S72">?PR?_KB_DEVICE_SELECT?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S103"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:0035FAH - C:00360CH)</h2>
+<h2><a name="S103"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:0035FCH - C:00360EH)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S104">?PR?SYSTEM_HARDWARE_INIT?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -680,7 +679,7 @@
 <li><a href="#S112">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S105"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:00360DH - C:003641H)</h2>
+<h2><a name="S105"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:00360FH - C:003643H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S129">?PR?YC_ADC_INIT?ADC</a>) Top=2 Bytes (<a href="#S112">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -722,7 +721,7 @@
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S109"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:003512H - C:003511H)</h2>
+<h2><a name="S109"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:003537H - C:003536H)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S120">?PR?KB_CB_TIMER100MS?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -753,7 +752,7 @@
 <li><a href="#S119">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S116"></a>?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS (C:00371EH - C:003763H)</h2>
+<h2><a name="S116"></a>?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS (C:00375FH - C:0037A4H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S14">?PR?YC_GET_BLE_RAMDON_LAP?BLUETOOTH</a>) Top=2 Bytes (<a href="#S119">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -766,7 +765,7 @@
 <li><a href="#S119">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S117"></a>?PR?YC_PAIRING_TIMEROUT_500MS?SYS (C:0032E2H - C:003381H)</h2>
+<h2><a name="S117"></a>?PR?YC_PAIRING_TIMEROUT_500MS?SYS (C:0032E1H - C:003380H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S56">?PR?_YC_KEY_ACTION_HANDLE?KB_PROCESS</a>) Top=2 Bytes (<a href="#S119">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -807,7 +806,7 @@
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S129"></a>?PR?YC_ADC_INIT?ADC (C:003642H - C:00370DH)</h2>
+<h2><a name="S129"></a>?PR?YC_ADC_INIT?ADC (C:003644H - C:00374EH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S223">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S105">?PR?SYSTEM_SOFTWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -819,7 +818,7 @@
 <li><a href="#S105">?PR?SYSTEM_SOFTWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S130"></a>?PR?YC_ADC_CHECK?ADC (C:003764H - C:003936H)</h2>
+<h2><a name="S130"></a>?PR?YC_ADC_CHECK?ADC (C:0037A5H - C:003977H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S223">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S132">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -831,7 +830,7 @@
 <li><a href="#S132">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a></li>
 </ul>
 
-<h2><a name="S132"></a>?PR?YC_ADC_CHECK_TIMER500MS?ADC (C:003937H - C:003948H)</h2>
+<h2><a name="S132"></a>?PR?YC_ADC_CHECK_TIMER500MS?ADC (C:003978H - C:003989H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S130">?PR?YC_ADC_CHECK?ADC</a>) Top=2 Bytes (<a href="#S119">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -843,14 +842,14 @@
 <li><a href="#S119">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S134"></a>?PR?_BUFSIZE?IPC (C:003949H - C:0039A2H)</h2>
+<h2><a name="S134"></a>?PR?_BUFSIZE?IPC (C:00398AH - C:0039E3H)</h2>
 <p><br><b>Maximum Stack:</b> Top=12 Bytes (<a href="#S138">?PR?_IPCTX?IPC</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S138">?PR?_IPCTX?IPC</a></li>
 </ul>
 
-<h2><a name="S136"></a>?PR?_IPCRX?IPC (C:0039A3H - C:0039F2H)</h2>
+<h2><a name="S136"></a>?PR?_IPCRX?IPC (C:0039E4H - C:003A33H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S223">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S153">?PR?IPC_DEALSINGLESTEP?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -898,7 +897,7 @@
 <li><a href="#S116">?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S142"></a>?PR?_IPC_TXDATA?IPC (C:003BFCH - C:003C22H)</h2>
+<h2><a name="S142"></a>?PR?_IPC_TXDATA?IPC (C:003C3DH - C:003C63H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S173">?PR?_XMEMCPY?UTILITIES</a>) Top=10 Bytes (<a href="#S144">?PR?_IPC_TXBREDRHIDDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -914,7 +913,7 @@
 <li><a href="#S146">?PR?_IPC_TXSPPDATA?IPC</a></li>
 </ul>
 
-<h2><a name="S144"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:003C3BH - C:003C46H)</h2>
+<h2><a name="S144"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:003C7CH - C:003C87H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S142">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -926,7 +925,7 @@
 <li><a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S145"></a>?PR?_IPC_TX24GDATA?IPC (C:003C23H - C:003C2AH)</h2>
+<h2><a name="S145"></a>?PR?_IPC_TX24GDATA?IPC (C:003C64H - C:003C6BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S142">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -938,7 +937,7 @@
 <li><a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S147"></a>?PR?_IPC_TXBLEDATA?IPC (C:003C33H - C:003C3AH)</h2>
+<h2><a name="S147"></a>?PR?_IPC_TXBLEDATA?IPC (C:003C74H - C:003C7BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S142">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -962,21 +961,21 @@
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S151"></a>?PR?IPC_ABANDONLPM?IPC (C:003C4DH - C:003C58H)</h2>
+<h2><a name="S151"></a>?PR?IPC_ABANDONLPM?IPC (C:003C8EH - C:003C99H)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S152"></a>?PR?IPC_ISTXBUFFEMPTY?IPC (C:003C59H - C:003C70H)</h2>
+<h2><a name="S152"></a>?PR?IPC_ISTXBUFFEMPTY?IPC (C:003C9AH - C:003CB1H)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S67">?PR?KB_MOTION?KB_PROCESS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S67">?PR?KB_MOTION?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S153"></a>?PR?IPC_DEALSINGLESTEP?IPC (C:0039F3H - C:003BFBH)</h2>
+<h2><a name="S153"></a>?PR?IPC_DEALSINGLESTEP?IPC (C:003A34H - C:003C3CH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S136">?PR?_IPCRX?IPC</a>) Top=2 Bytes (<a href="#S122">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1005,7 +1004,7 @@
 <li><a href="#S4">?PR?_YC_STORE_RECORD_LIST?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S175"></a>?PR?_DMEMCPY?UTILITIES (C:003C78H - C:003CBBH)</h2>
+<h2><a name="S175"></a>?PR?_DMEMCPY?UTILITIES (C:003CB9H - C:003CFCH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S223">?C?LIB_CODE</a>) Top=10 Bytes (<a href="#S217">?PR?_IIC_WRITE?IIC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1089,7 +1088,7 @@
 <li><a href="#S192">?PR?_GPIO_SETPU?GPIO</a></li>
 </ul>
 
-<h2><a name="S187"></a>?PR?_GPIOGETBIT?GPIO (C:003287H - C:0032C5H)</h2>
+<h2><a name="S187"></a>?PR?_GPIOGETBIT?GPIO (C:003286H - C:0032C4H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S223">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S208">?PR?_GPIO_FLIPOUTBIT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1101,7 +1100,7 @@
 <li><a href="#S208">?PR?_GPIO_FLIPOUTBIT?GPIO</a></li>
 </ul>
 
-<h2><a name="S189"></a>?PR?_GPIO_GETINPUTSTATUS?GPIO (C:003281H - C:003286H)</h2>
+<h2><a name="S189"></a>?PR?_GPIO_GETINPUTSTATUS?GPIO (C:003280H - C:003285H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S205">?PR?_GPIO_SETWAKEUPBYCURRENTSTATE?GPIO</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -1194,7 +1193,7 @@
 <li><a href="#S96">?PR?LED_ALL_SHUTDOWN?LED</a></li>
 </ul>
 
-<h2><a name="S205"></a>?PR?_GPIO_SETWAKEUPBYCURRENTSTATE?GPIO (C:0031E2H - C:0031F4H)</h2>
+<h2><a name="S205"></a>?PR?_GPIO_SETWAKEUPBYCURRENTSTATE?GPIO (C:0031E1H - C:0031F3H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S189">?PR?_GPIO_GETINPUTSTATUS?GPIO</a>) Top=4 Bytes (<a href="#S87">?PR?KS_UNISTALL?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1206,7 +1205,7 @@
 <li><a href="#S87">?PR?KS_UNISTALL?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S208"></a>?PR?_GPIO_FLIPOUTBIT?GPIO (C:0032C6H - C:0032E1H)</h2>
+<h2><a name="S208"></a>?PR?_GPIO_FLIPOUTBIT?GPIO (C:0032C5H - C:0032E0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S187">?PR?_GPIOGETBIT?GPIO</a>) Top=4 Bytes (<a href="#S117">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1216,11 +1215,10 @@
 
 <p><br><b>Called from:</b></p>
 <ul>
-<li><a href="#S120">?PR?KB_CB_TIMER100MS?SYS</a></li>
 <li><a href="#S117">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S211"></a>?PR?GPIO_FILLPD?GPIO (C:003382H - C:0033B5H)</h2>
+<h2><a name="S211"></a>?PR?GPIO_FILLPD?GPIO (C:003381H - C:0033B4H)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S87">?PR?KS_UNISTALL?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
Index: c51/output/FW.MAP
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/FW.MAP	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/FW.MAP	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               11/29/2022  16:14:37  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               12/02/2022  15:48:48  PAGE 1
 
 
 LX51 LINKER/LOCATER V4.41, INVOKED BY:
@@ -86,7 +86,7 @@
 BASE        START       END         USED      MEMORY CLASS
 ==========================================================
 X:000000H   X:004DD0H   X:004F40H   000396H   XDATA
-C:000000H   C:000000H   C:00FFFFH   003C45H   CODE
+C:000000H   C:000000H   C:00FFFFH   003C86H   CODE
 I:000000H   I:000010H   I:00007FH   000008H   DATA
 I:000000H   I:000080H   I:0000CFH   000001H   IDATA
 C:000000H   C:000000H   C:00FFFFH   0000B6H   CONST
@@ -188,45 +188,45 @@
 002BF8H   002CD3H   0000DCH   BYTE   UNIT     CODE           ?PR?_KB_DEVICE_SELECT?KB_PROCESS
 002CD4H   002CEBH   000018H   BYTE   UNIT     CODE           ?PR?SYSTEM_CLEAR_TIMER_STATUS?SYS
 002CECH   002D10H   000025H   BYTE   UNIT     CODE           ?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS
-002D11H   003101H   0003F1H   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
-003102H   00311FH   00001EH   BYTE   UNIT     CODE           ?PR?KSRAWINITIALIZE?KEYSCAN
-003120H   00312AH   00000BH   BYTE   UNIT     CODE           ?PR?KS_INITIALIZE?KEYSCAN
-00312BH   003149H   00001FH   BYTE   UNIT     CODE           ?PR?KSCOLINITIALIZE?KEYSCAN
-00314AH   0031E1H   000098H   BYTE   UNIT     CODE           ?PR?KS_UNISTALL?KEYSCAN
-0031E2H   0031F4H   000013H   BYTE   UNIT     CODE           ?PR?_GPIO_SETWAKEUPBYCURRENTSTATE?GPIO
-0031F5H   003280H   00008CH   BYTE   UNIT     CODE           ?PR?_GPIO_SETWAKEUP?GPIO
-003281H   003286H   000006H   BYTE   UNIT     CODE           ?PR?_GPIO_GETINPUTSTATUS?GPIO
-003287H   0032C5H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIOGETBIT?GPIO
-0032C6H   0032E1H   00001CH   BYTE   UNIT     CODE           ?PR?_GPIO_FLIPOUTBIT?GPIO
-0032E2H   003381H   0000A0H   BYTE   UNIT     CODE           ?PR?YC_PAIRING_TIMEROUT_500MS?SYS
-003382H   0033B5H   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
-0033B6H   003511H   00015CH   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
-003512H   ---       000000H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
-003512H   00351AH   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
-00351BH   00353DH   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
-00353EH   0035C7H   00008AH   BYTE   UNIT     CODE           ?PR?LED_HANDLE?LED
-0035C8H   0035F9H   000032H   BYTE   UNIT     CODE           ?PR?KB_BLE_NAME_ROLL?SYS
-0035FAH   00360CH   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
-00360DH   003641H   000035H   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
-003642H   00370DH   0000CCH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
-00370EH   00371DH   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
-00371EH   003763H   000046H   BYTE   UNIT     CODE           ?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS
-003764H   003936H   0001D3H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
-003937H   003948H   000012H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK_TIMER500MS?ADC
-003949H   0039A2H   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
-0039A3H   0039F2H   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
-0039F3H   003BFBH   000209H   BYTE   UNIT     CODE           ?PR?IPC_DEALSINGLESTEP?IPC
-003BFCH   003C22H   000027H   BYTE   UNIT     CODE           ?PR?_IPC_TXDATA?IPC
-003C23H   003C2AH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TX24GDATA?IPC
-003C2BH   003C32H   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
-003C33H   003C3AH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
-003C3BH   003C46H   00000CH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
-003C47H   003C4CH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
-003C4DH   003C58H   00000CH   BYTE   UNIT     CODE           ?PR?IPC_ABANDONLPM?IPC
-003C59H   003C70H   000018H   BYTE   UNIT     CODE           ?PR?IPC_ISTXBUFFEMPTY?IPC
-003C71H   003C77H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
-003C78H   003CBBH   000044H   BYTE   UNIT     CODE           ?PR?_DMEMCPY?UTILITIES
-003CBCH   003CFAH   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
+002D11H   003100H   0003F0H   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
+003101H   00311EH   00001EH   BYTE   UNIT     CODE           ?PR?KSRAWINITIALIZE?KEYSCAN
+00311FH   003129H   00000BH   BYTE   UNIT     CODE           ?PR?KS_INITIALIZE?KEYSCAN
+00312AH   003148H   00001FH   BYTE   UNIT     CODE           ?PR?KSCOLINITIALIZE?KEYSCAN
+003149H   0031E0H   000098H   BYTE   UNIT     CODE           ?PR?KS_UNISTALL?KEYSCAN
+0031E1H   0031F3H   000013H   BYTE   UNIT     CODE           ?PR?_GPIO_SETWAKEUPBYCURRENTSTATE?GPIO
+0031F4H   00327FH   00008CH   BYTE   UNIT     CODE           ?PR?_GPIO_SETWAKEUP?GPIO
+003280H   003285H   000006H   BYTE   UNIT     CODE           ?PR?_GPIO_GETINPUTSTATUS?GPIO
+003286H   0032C4H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIOGETBIT?GPIO
+0032C5H   0032E0H   00001CH   BYTE   UNIT     CODE           ?PR?_GPIO_FLIPOUTBIT?GPIO
+0032E1H   003380H   0000A0H   BYTE   UNIT     CODE           ?PR?YC_PAIRING_TIMEROUT_500MS?SYS
+003381H   0033B4H   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
+0033B5H   0033D7H   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
+0033D8H   003536H   00015FH   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
+003537H   ---       000000H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
+003537H   00353FH   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
+003540H   0035C9H   00008AH   BYTE   UNIT     CODE           ?PR?LED_HANDLE?LED
+0035CAH   0035FBH   000032H   BYTE   UNIT     CODE           ?PR?KB_BLE_NAME_ROLL?SYS
+0035FCH   00360EH   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
+00360FH   003643H   000035H   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
+003644H   00374EH   00010BH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
+00374FH   00375EH   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
+00375FH   0037A4H   000046H   BYTE   UNIT     CODE           ?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS
+0037A5H   003977H   0001D3H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
+003978H   003989H   000012H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK_TIMER500MS?ADC
+00398AH   0039E3H   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
+0039E4H   003A33H   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
+003A34H   003C3CH   000209H   BYTE   UNIT     CODE           ?PR?IPC_DEALSINGLESTEP?IPC
+003C3DH   003C63H   000027H   BYTE   UNIT     CODE           ?PR?_IPC_TXDATA?IPC
+003C64H   003C6BH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TX24GDATA?IPC
+003C6CH   003C73H   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
+003C74H   003C7BH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
+003C7CH   003C87H   00000CH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
+003C88H   003C8DH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
+003C8EH   003C99H   00000CH   BYTE   UNIT     CODE           ?PR?IPC_ABANDONLPM?IPC
+003C9AH   003CB1H   000018H   BYTE   UNIT     CODE           ?PR?IPC_ISTXBUFFEMPTY?IPC
+003CB2H   003CB8H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
+003CB9H   003CFCH   000044H   BYTE   UNIT     CODE           ?PR?_DMEMCPY?UTILITIES
+003CFDH   003D3BH   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
 
 * * * * * * * * * * *  X D A T A   M E M O R Y  * * * * * * * * * * * * *
 000040H   000045H   000006H   BYTE   OFFS..   XDATA          ?XD?GLOBAL_VARIABLE?30
@@ -422,29 +422,29 @@
       010023A7H   CODE     ---       _array_is_empty
       01002103H   CODE     ---       _compare_str
       01000F4BH   CODE     ---       _Delay1ms
-      01003C78H   CODE     ---       _dmemcpy
-      01003CBCH   CODE     ---       _GPIO_ClearWakeup
-      010032C6H   CODE     ---       _GPIO_FlipOutBit
-      01003281H   CODE     ---       _GPIO_GetInputStatus
+      01003CB9H   CODE     ---       _dmemcpy
+      01003CFDH   CODE     ---       _GPIO_ClearWakeup
+      010032C5H   CODE     ---       _GPIO_FlipOutBit
+      01003280H   CODE     ---       _GPIO_GetInputStatus
       01001E01H   CODE     ---       _GPIO_SetInput
       01001DF0H   CODE     ---       _GPIO_Setoe
       01000FE9H   CODE     ---       _GPIO_Setout
       01001DC3H   CODE     ---       _GPIO_SetOutput
       01001E1FH   CODE     ---       _GPIO_SetPd
       01001DDFH   CODE     ---       _GPIO_SetPu
-      010031F5H   CODE     ---       _GPIO_SetWakeup
-      010031E2H   CODE     ---       _GPIO_SetWakeupByCurrentState
+      010031F4H   CODE     ---       _GPIO_SetWakeup
+      010031E1H   CODE     ---       _GPIO_SetWakeupByCurrentState
       01001970H   CODE     ---       _IIC_Read
       01001A6EH   CODE     ---       _IIC_write
       01001B09H   CODE     ---       _IIC_WriteBlock
       010017E8H   CODE     ---       _IPC_Initialize
-      01003C23H   CODE     ---       _IPC_Tx24GData
-      01003C33H   CODE     ---       _IPC_TxBleData
-      01003C3BH   CODE     ---       _IPC_TxBREDRHidData
+      01003C64H   CODE     ---       _IPC_Tx24GData
+      01003C74H   CODE     ---       _IPC_TxBleData
+      01003C7CH   CODE     ---       _IPC_TxBREDRHidData
       0100085FH   CODE     ---       _IPC_TxControlCmd
-      01003BFCH   CODE     ---       _IPC_TxData
+      01003C3DH   CODE     ---       _IPC_TxData
       01001461H   CODE     ---       _IPC_TxHidData
-      01003C2BH   CODE     ---       _IPC_TxSppData
+      01003C6CH   CODE     ---       _IPC_TxSppData
       01002CECH   CODE     ---       _kb_combination_key_press
       01002BF8H   CODE     ---       _kb_device_select
       01001115H   CODE     ---       _kb_motion_keyscan
@@ -478,29 +478,29 @@
       02004DD8H   XDATA    BYTE      fn_tx_flag
       02004CBFH   XDATA    ---       g_variable
       02004DD5H   XDATA    BYTE      get_24g_led_send
-      01003382H   CODE     ---       GPIO_fillpd
+      01003381H   CODE     ---       GPIO_fillpd
       02004800H   XDATA    ---       hidBuff
       02004DE1H   XDATA    BYTE      iOS_rec_pinCode
-      01003C4DH   CODE     ---       IPC_AbandonLpm
-      010039F3H   CODE     ---       IPC_DealSingleStep
-      01003C47H   CODE     ---       IPC_GetBBDIsconnectReason
-      01003C59H   CODE     ---       IPC_IsTxBuffEmpty
+      01003C8EH   CODE     ---       IPC_AbandonLpm
+      01003A34H   CODE     ---       IPC_DealSingleStep
+      01003C88H   CODE     ---       IPC_GetBBDIsconnectReason
+      01003C9AH   CODE     ---       IPC_IsTxBuffEmpty
       010017D2H   CODE     ---       IPC_WaitLpm
       02000550H   XDATA    ---       ipcPin
       0200054FH   XDATA    BYTE      ipcPinlen
       02000C4BH   XDATA    ---       ipcReadBuff
       02000BE7H   XDATA    ---       ipcSendBuff
       01001738H   CODE     ---       kb_24g_get_led_status
-      010035C8H   CODE     ---       kb_ble_name_roll
+      010035CAH   CODE     ---       kb_ble_name_roll
       01002985H   CODE     ---       kb_bt_pincode_enter
       01001C52H   CODE     ---       kb_button_press_timer500ms
       0100166FH   CODE     ---       kb_need_keyscan
       02004DE8H   XDATA    BYTE      key_value_temp
       02004DE4H   XDATA    BYTE      keyCount
       0100214DH   CODE     ---       KS_GetCurrentEvt
-      01003120H   CODE     ---       KS_Initialize
+      0100311FH   CODE     ---       KS_Initialize
       010024D7H   CODE     ---       KS_ScanMatrix
-      0100314AH   CODE     ---       KS_Unistall
+      01003149H   CODE     ---       KS_Unistall
       02004213H   XDATA    BYTE      kscurrmult
       02004EA4H   XDATA    ---       ksEvtPool
       01000696H   CONST    ---       ksMap
@@ -514,8 +514,8 @@
       02004DDAH   XDATA    BYTE      le_send_battery_level_flag
       01001DA1H   CODE     ---       LED_all_shutdown
       01000FCBH   CODE     ---       LED_device_poweroff
-      0100351BH   CODE     ---       LED_device_poweron
-      0100353EH   CODE     ---       LED_handle
+      010033B5H   CODE     ---       LED_device_poweron
+      01003540H   CODE     ---       LED_handle
       01001FE7H   CODE     ---       LED_timer500ms
       02004DDCH   XDATA    BYTE      long_press_flag
       02000B7FH   XDATA    BYTE      lpm_flag
@@ -568,11 +568,11 @@
       01001E91H   CODE     ---       System_G24_long_lpm
       02004DE9H   XDATA    BYTE      system_key_press
       01000F42H   CODE     ---       System_long_sleep
-      01003512H   CODE     ---       System_Reset_Connect
-      0100360DH   CODE     ---       System_Software_init
-      01003764H   CODE     ---       YC_adc_check
-      01003937H   CODE     ---       YC_adc_check_timer500ms
-      01003642H   CODE     ---       YC_adc_init
+      01003537H   CODE     ---       System_Reset_Connect
+      0100360FH   CODE     ---       System_Software_init
+      010037A5H   CODE     ---       YC_adc_check
+      01003978H   CODE     ---       YC_adc_check_timer500ms
+      01003644H   CODE     ---       YC_adc_init
       01000FACH   CODE     ---       YC_cancel_reconnect
       010017F5H   CODE     ---       YC_check_is_connected
       01001812H   CODE     ---       YC_check_need_reconnected
@@ -584,12 +584,12 @@
       01001A20H   CODE     ---       YC_get_ble_ramdon_lap
       020000A7H   XDATA    ---       YC_GPIOWakeupH
       020000A3H   XDATA    ---       YC_GPIOWakeupL
-      01003C71H   CODE     ---       YC_Ice_break
-      010032E2H   CODE     ---       YC_pairing_timerout_500ms
+      01003CB2H   CODE     ---       YC_Ice_break
+      010032E1H   CODE     ---       YC_pairing_timerout_500ms
       010018BBH   CODE     ---       YC_start_reconnect
       01001774H   CODE     ---       YC_System_Main
       01001BB7H   CODE     ---       YC_update_eeprom_data
-      0100371EH   CODE     ---       YC_wait_disconnect_timer500ms
+      0100375FH   CODE     ---       YC_wait_disconnect_timer500ms
 
 
 
@@ -1551,361 +1551,360 @@
       01002D3BH   LINE      ---      ---       #695
       01002D41H   LINE      ---      ---       #696
       01002D41H   LINE      ---      ---       #697
-      01002D6AH   LINE      ---      ---       #700
-      01002D6AH   LINE      ---      ---       #701
-      01002DA9H   LINE      ---      ---       #702
-      01002DA9H   LINE      ---      ---       #703
-      01002DA9H   LINE      ---      ---       #704
-      01002DAFH   LINE      ---      ---       #705
-      01002DB1H   LINE      ---      ---       #706
-      01002DB1H   LINE      ---      ---       #707
-      01002DB7H   LINE      ---      ---       #708
-      01002DB9H   LINE      ---      ---       #709
-      01002DB9H   LINE      ---      ---       #710
-      01002DBFH   LINE      ---      ---       #711
-      01002DBFH   LINE      ---      ---       #712
-      01002DCAH   LINE      ---      ---       #713
-      01002DD1H   LINE      ---      ---       #714
-      01002DD1H   LINE      ---      ---       #715
-      01002DD7H   LINE      ---      ---       #716
-      01002DD7H   LINE      ---      ---       #717
-      01002DD9H   LINE      ---      ---       #719
-      01002DD9H   LINE      ---      ---       #720
-      01002DE4H   LINE      ---      ---       #721
-      01002DEBH   LINE      ---      ---       #722
-      01002DEBH   LINE      ---      ---       #723
-      01002DF1H   LINE      ---      ---       #724
-      01002DF1H   LINE      ---      ---       #725
-      01002DF1H   LINE      ---      ---       #726
-      01002DF6H   LINE      ---      ---       #727
-      01002DF8H   LINE      ---      ---       #728
-      01002DF8H   LINE      ---      ---       #729
-      01002DFEH   LINE      ---      ---       #730
-      01002DFEH   LINE      ---      ---       #731
-      01002E09H   LINE      ---      ---       #732
-      01002E10H   LINE      ---      ---       #733
-      01002E10H   LINE      ---      ---       #734
-      01002E16H   LINE      ---      ---       #735
-      01002E16H   LINE      ---      ---       #736
-      01002E18H   LINE      ---      ---       #738
-      01002E18H   LINE      ---      ---       #739
-      01002E23H   LINE      ---      ---       #740
-      01002E2AH   LINE      ---      ---       #741
-      01002E2AH   LINE      ---      ---       #742
-      01002E30H   LINE      ---      ---       #743
-      01002E30H   LINE      ---      ---       #744
-      01002E30H   LINE      ---      ---       #745
-      01002E35H   LINE      ---      ---       #747
-      01002E37H   LINE      ---      ---       #748
-      01002E37H   LINE      ---      ---       #749
-      01002E3DH   LINE      ---      ---       #750
-      01002E3DH   LINE      ---      ---       #751
-      01002E48H   LINE      ---      ---       #752
-      01002E4FH   LINE      ---      ---       #753
-      01002E4FH   LINE      ---      ---       #754
-      01002E55H   LINE      ---      ---       #755
-      01002E55H   LINE      ---      ---       #756
-      01002E57H   LINE      ---      ---       #758
-      01002E57H   LINE      ---      ---       #759
-      01002E62H   LINE      ---      ---       #760
-      01002E69H   LINE      ---      ---       #761
-      01002E69H   LINE      ---      ---       #762
-      01002E6FH   LINE      ---      ---       #763
-      01002E6FH   LINE      ---      ---       #764
-      01002E6FH   LINE      ---      ---       #765
-      01002E74H   LINE      ---      ---       #767
-      01002E76H   LINE      ---      ---       #768
-      01002E76H   LINE      ---      ---       #769
-      01002E7CH   LINE      ---      ---       #770
-      01002E7CH   LINE      ---      ---       #771
-      01002E87H   LINE      ---      ---       #772
-      01002E8EH   LINE      ---      ---       #773
-      01002E8EH   LINE      ---      ---       #774
-      01002E94H   LINE      ---      ---       #775
-      01002E94H   LINE      ---      ---       #776
-      01002E96H   LINE      ---      ---       #778
-      01002E96H   LINE      ---      ---       #779
-      01002EA1H   LINE      ---      ---       #780
-      01002EA8H   LINE      ---      ---       #781
-      01002EA8H   LINE      ---      ---       #782
-      01002EAEH   LINE      ---      ---       #783
-      01002EAEH   LINE      ---      ---       #784
-      01002EAEH   LINE      ---      ---       #785
-      01002EB3H   LINE      ---      ---       #786
-      01002EB5H   LINE      ---      ---       #787
-      01002EB5H   LINE      ---      ---       #788
-      01002EBBH   LINE      ---      ---       #789
-      01002EBDH   LINE      ---      ---       #790
-      01002EBDH   LINE      ---      ---       #791
-      01002EC3H   LINE      ---      ---       #792
-      01002EC5H   LINE      ---      ---       #793
-      01002EC5H   LINE      ---      ---       #794
-      01002ECBH   LINE      ---      ---       #795
-      01002ECDH   LINE      ---      ---       #796
-      01002ECDH   LINE      ---      ---       #797
-      01002ED3H   LINE      ---      ---       #798
-      01002ED5H   LINE      ---      ---       #799
-      01002ED5H   LINE      ---      ---       #800
-      01002EDBH   LINE      ---      ---       #801
-      01002EDDH   LINE      ---      ---       #802
-      01002EDDH   LINE      ---      ---       #803
-      01002EE4H   LINE      ---      ---       #804
-      01002EE4H   LINE      ---      ---       #805
-      01002EEFH   LINE      ---      ---       #806
-      01002EF6H   LINE      ---      ---       #807
-      01002EF6H   LINE      ---      ---       #808
-      01002EFCH   LINE      ---      ---       #809
-      01002EFCH   LINE      ---      ---       #810
-      01002EFEH   LINE      ---      ---       #812
-      01002EFEH   LINE      ---      ---       #813
-      01002F04H   LINE      ---      ---       #814
-      01002F04H   LINE      ---      ---       #815
-      01002F09H   LINE      ---      ---       #816
-      01002F09H   LINE      ---      ---       #817
-      01002F09H   LINE      ---      ---       #818
-      01002F09H   LINE      ---      ---       #819
-      01002F09H   LINE      ---      ---       #820
-      01002F09H   LINE      ---      ---       #821
-      01002F14H   LINE      ---      ---       #822
-      01002F14H   LINE      ---      ---       #847
-      01002F42H   LINE      ---      ---       #848
-      01002F42H   LINE      ---      ---       #849
-      01002F42H   LINE      ---      ---       #850
-      01002F4BH   LINE      ---      ---       #851
-      01002F4BH   LINE      ---      ---       #852
-      01002F55H   LINE      ---      ---       #853
-      01002F55H   LINE      ---      ---       #854
-      01002F5BH   LINE      ---      ---       #855
-      01002F5DH   LINE      ---      ---       #856
-      01002F69H   LINE      ---      ---       #857
-      01002F69H   LINE      ---      ---       #858
-      01002F7CH   LINE      ---      ---       #859
-      01002F82H   LINE      ---      ---       #860
-      01002F82H   LINE      ---      ---       #861
-      01002F82H   LINE      ---      ---       #862
-      01002F89H   LINE      ---      ---       #863
-      01002F8FH   LINE      ---      ---       #864
-      01002F95H   LINE      ---      ---       #865
-      01002F9AH   LINE      ---      ---       #866
-      01002F9DH   LINE      ---      ---       #867
-      01002F9DH   LINE      ---      ---       #868
-      01002FA6H   LINE      ---      ---       #869
-      01002FA6H   LINE      ---      ---       #870
-      01002FB0H   LINE      ---      ---       #871
-      01002FB0H   LINE      ---      ---       #872
-      01002FB6H   LINE      ---      ---       #873
-      01002FB8H   LINE      ---      ---       #874
-      01002FC4H   LINE      ---      ---       #875
-      01002FC4H   LINE      ---      ---       #876
-      01002FD7H   LINE      ---      ---       #877
-      01002FDDH   LINE      ---      ---       #878
-      01002FDDH   LINE      ---      ---       #879
-      01002FDDH   LINE      ---      ---       #880
-      01002FE4H   LINE      ---      ---       #881
-      01002FEAH   LINE      ---      ---       #882
-      01002FF0H   LINE      ---      ---       #883
-      01002FF5H   LINE      ---      ---       #884
-      01002FF8H   LINE      ---      ---       #885
-      01002FF8H   LINE      ---      ---       #886
-      01002FFFH   LINE      ---      ---       #887
-      01002FFFH   LINE      ---      ---       #888
-      01003009H   LINE      ---      ---       #889
-      01003009H   LINE      ---      ---       #890
-      0100300FH   LINE      ---      ---       #891
-      01003011H   LINE      ---      ---       #892
-      0100301DH   LINE      ---      ---       #893
-      0100301DH   LINE      ---      ---       #894
-      01003030H   LINE      ---      ---       #895
-      01003036H   LINE      ---      ---       #896
-      01003036H   LINE      ---      ---       #897
-      01003036H   LINE      ---      ---       #898
-      0100303DH   LINE      ---      ---       #899
-      01003043H   LINE      ---      ---       #900
-      01003048H   LINE      ---      ---       #901
-      0100304CH   LINE      ---      ---       #902
-      0100304EH   LINE      ---      ---       #903
-      0100304EH   LINE      ---      ---       #904
-      01003054H   LINE      ---      ---       #905
-      01003054H   LINE      ---      ---       #906
-      01003060H   LINE      ---      ---       #907
-      01003067H   LINE      ---      ---       #908
-      01003067H   LINE      ---      ---       #909
-      0100306DH   LINE      ---      ---       #910
-      0100306DH   LINE      ---      ---       #911
-      01003072H   LINE      ---      ---       #912
-      01003072H   LINE      ---      ---       #913
-      01003078H   LINE      ---      ---       #914
-      0100307AH   LINE      ---      ---       #915
-      0100307AH   LINE      ---      ---       #916
-      01003080H   LINE      ---      ---       #917
-      01003080H   LINE      ---      ---       #918
-      0100308CH   LINE      ---      ---       #919
-      01003093H   LINE      ---      ---       #920
-      01003093H   LINE      ---      ---       #921
-      01003099H   LINE      ---      ---       #922
-      01003099H   LINE      ---      ---       #923
-      0100309EH   LINE      ---      ---       #924
-      0100309EH   LINE      ---      ---       #925
-      010030A4H   LINE      ---      ---       #926
-      010030A6H   LINE      ---      ---       #927
-      010030A6H   LINE      ---      ---       #928
-      010030ACH   LINE      ---      ---       #929
-      010030ACH   LINE      ---      ---       #930
-      010030B8H   LINE      ---      ---       #931
-      010030BFH   LINE      ---      ---       #932
-      010030BFH   LINE      ---      ---       #933
-      010030C5H   LINE      ---      ---       #934
-      010030C5H   LINE      ---      ---       #935
-      010030CAH   LINE      ---      ---       #936
-      010030CAH   LINE      ---      ---       #937
-      010030D0H   LINE      ---      ---       #938
-      010030D2H   LINE      ---      ---       #939
-      010030D2H   LINE      ---      ---       #940
-      010030D8H   LINE      ---      ---       #941
-      010030D8H   LINE      ---      ---       #942
-      010030E4H   LINE      ---      ---       #943
-      010030EBH   LINE      ---      ---       #944
-      010030EBH   LINE      ---      ---       #945
-      010030F1H   LINE      ---      ---       #946
-      010030F1H   LINE      ---      ---       #947
-      010030F6H   LINE      ---      ---       #948
-      010030F6H   LINE      ---      ---       #949
-      010030FCH   LINE      ---      ---       #950
-      010030FCH   LINE      ---      ---       #951
-      010030FCH   LINE      ---      ---       #952
-      010030FCH   LINE      ---      ---       #953
-      010030FCH   LINE      ---      ---       #954
-      010030FCH   LINE      ---      ---       #956
-      01003101H   LINE      ---      ---       #957
+      01002D6EH   LINE      ---      ---       #700
+      01002D6EH   LINE      ---      ---       #701
+      01002DADH   LINE      ---      ---       #702
+      01002DADH   LINE      ---      ---       #703
+      01002DADH   LINE      ---      ---       #704
+      01002DB3H   LINE      ---      ---       #705
+      01002DB5H   LINE      ---      ---       #706
+      01002DB5H   LINE      ---      ---       #707
+      01002DBBH   LINE      ---      ---       #708
+      01002DBDH   LINE      ---      ---       #709
+      01002DBDH   LINE      ---      ---       #710
+      01002DC3H   LINE      ---      ---       #711
+      01002DC3H   LINE      ---      ---       #712
+      01002DCEH   LINE      ---      ---       #713
+      01002DD5H   LINE      ---      ---       #714
+      01002DD5H   LINE      ---      ---       #715
+      01002DDBH   LINE      ---      ---       #716
+      01002DDBH   LINE      ---      ---       #717
+      01002DDDH   LINE      ---      ---       #719
+      01002DDDH   LINE      ---      ---       #720
+      01002DE8H   LINE      ---      ---       #721
+      01002DEFH   LINE      ---      ---       #722
+      01002DEFH   LINE      ---      ---       #723
+      01002DF5H   LINE      ---      ---       #724
+      01002DF5H   LINE      ---      ---       #725
+      01002DF5H   LINE      ---      ---       #726
+      01002DFAH   LINE      ---      ---       #727
+      01002DFCH   LINE      ---      ---       #728
+      01002DFCH   LINE      ---      ---       #729
+      01002E02H   LINE      ---      ---       #730
+      01002E02H   LINE      ---      ---       #731
+      01002E0DH   LINE      ---      ---       #732
+      01002E14H   LINE      ---      ---       #733
+      01002E14H   LINE      ---      ---       #734
+      01002E1AH   LINE      ---      ---       #735
+      01002E1AH   LINE      ---      ---       #736
+      01002E1CH   LINE      ---      ---       #738
+      01002E1CH   LINE      ---      ---       #739
+      01002E27H   LINE      ---      ---       #740
+      01002E2EH   LINE      ---      ---       #741
+      01002E2EH   LINE      ---      ---       #742
+      01002E34H   LINE      ---      ---       #743
+      01002E34H   LINE      ---      ---       #744
+      01002E34H   LINE      ---      ---       #745
+      01002E39H   LINE      ---      ---       #747
+      01002E3BH   LINE      ---      ---       #748
+      01002E3BH   LINE      ---      ---       #749
+      01002E41H   LINE      ---      ---       #750
+      01002E41H   LINE      ---      ---       #751
+      01002E4CH   LINE      ---      ---       #752
+      01002E53H   LINE      ---      ---       #753
+      01002E53H   LINE      ---      ---       #754
+      01002E59H   LINE      ---      ---       #755
+      01002E59H   LINE      ---      ---       #756
+      01002E5BH   LINE      ---      ---       #758
+      01002E5BH   LINE      ---      ---       #759
+      01002E66H   LINE      ---      ---       #760
+      01002E6DH   LINE      ---      ---       #761
+      01002E6DH   LINE      ---      ---       #762
+      01002E73H   LINE      ---      ---       #763
+      01002E73H   LINE      ---      ---       #764
+      01002E73H   LINE      ---      ---       #765
+      01002E78H   LINE      ---      ---       #767
+      01002E7AH   LINE      ---      ---       #768
+      01002E7AH   LINE      ---      ---       #769
+      01002E80H   LINE      ---      ---       #770
+      01002E80H   LINE      ---      ---       #771
+      01002E8BH   LINE      ---      ---       #772
+      01002E92H   LINE      ---      ---       #773
+      01002E92H   LINE      ---      ---       #774
+      01002E98H   LINE      ---      ---       #775
+      01002E98H   LINE      ---      ---       #776
+      01002E9AH   LINE      ---      ---       #778
+      01002E9AH   LINE      ---      ---       #779
+      01002EA5H   LINE      ---      ---       #780
+      01002EACH   LINE      ---      ---       #781
+      01002EACH   LINE      ---      ---       #782
+      01002EB2H   LINE      ---      ---       #783
+      01002EB2H   LINE      ---      ---       #784
+      01002EB2H   LINE      ---      ---       #785
+      01002EB7H   LINE      ---      ---       #786
+      01002EB9H   LINE      ---      ---       #787
+      01002EB9H   LINE      ---      ---       #788
+      01002EBFH   LINE      ---      ---       #789
+      01002EC1H   LINE      ---      ---       #790
+      01002EC1H   LINE      ---      ---       #791
+      01002EC7H   LINE      ---      ---       #792
+      01002EC9H   LINE      ---      ---       #793
+      01002EC9H   LINE      ---      ---       #794
+      01002ECFH   LINE      ---      ---       #795
+      01002ED1H   LINE      ---      ---       #796
+      01002ED1H   LINE      ---      ---       #797
+      01002ED7H   LINE      ---      ---       #798
+      01002ED9H   LINE      ---      ---       #799
+      01002ED9H   LINE      ---      ---       #800
+      01002EDFH   LINE      ---      ---       #801
+      01002EE1H   LINE      ---      ---       #802
+      01002EE1H   LINE      ---      ---       #803
+      01002EE8H   LINE      ---      ---       #804
+      01002EE8H   LINE      ---      ---       #805
+      01002EF3H   LINE      ---      ---       #806
+      01002EFAH   LINE      ---      ---       #807
+      01002EFAH   LINE      ---      ---       #808
+      01002F00H   LINE      ---      ---       #809
+      01002F00H   LINE      ---      ---       #810
+      01002F02H   LINE      ---      ---       #812
+      01002F02H   LINE      ---      ---       #813
+      01002F08H   LINE      ---      ---       #814
+      01002F08H   LINE      ---      ---       #815
+      01002F08H   LINE      ---      ---       #816
+      01002F08H   LINE      ---      ---       #817
+      01002F08H   LINE      ---      ---       #818
+      01002F08H   LINE      ---      ---       #819
+      01002F08H   LINE      ---      ---       #820
+      01002F13H   LINE      ---      ---       #821
+      01002F13H   LINE      ---      ---       #846
+      01002F41H   LINE      ---      ---       #847
+      01002F41H   LINE      ---      ---       #848
+      01002F41H   LINE      ---      ---       #849
+      01002F4AH   LINE      ---      ---       #850
+      01002F4AH   LINE      ---      ---       #851
+      01002F54H   LINE      ---      ---       #852
+      01002F54H   LINE      ---      ---       #853
+      01002F5AH   LINE      ---      ---       #854
+      01002F5CH   LINE      ---      ---       #855
+      01002F68H   LINE      ---      ---       #856
+      01002F68H   LINE      ---      ---       #857
+      01002F7BH   LINE      ---      ---       #858
+      01002F81H   LINE      ---      ---       #859
+      01002F81H   LINE      ---      ---       #860
+      01002F81H   LINE      ---      ---       #861
+      01002F88H   LINE      ---      ---       #862
+      01002F8EH   LINE      ---      ---       #863
+      01002F94H   LINE      ---      ---       #864
+      01002F99H   LINE      ---      ---       #865
+      01002F9CH   LINE      ---      ---       #866
+      01002F9CH   LINE      ---      ---       #867
+      01002FA5H   LINE      ---      ---       #868
+      01002FA5H   LINE      ---      ---       #869
+      01002FAFH   LINE      ---      ---       #870
+      01002FAFH   LINE      ---      ---       #871
+      01002FB5H   LINE      ---      ---       #872
+      01002FB7H   LINE      ---      ---       #873
+      01002FC3H   LINE      ---      ---       #874
+      01002FC3H   LINE      ---      ---       #875
+      01002FD6H   LINE      ---      ---       #876
+      01002FDCH   LINE      ---      ---       #877
+      01002FDCH   LINE      ---      ---       #878
+      01002FDCH   LINE      ---      ---       #879
+      01002FE3H   LINE      ---      ---       #880
+      01002FE9H   LINE      ---      ---       #881
+      01002FEFH   LINE      ---      ---       #882
+      01002FF4H   LINE      ---      ---       #883
+      01002FF7H   LINE      ---      ---       #884
+      01002FF7H   LINE      ---      ---       #885
+      01002FFEH   LINE      ---      ---       #886
+      01002FFEH   LINE      ---      ---       #887
+      01003008H   LINE      ---      ---       #888
+      01003008H   LINE      ---      ---       #889
+      0100300EH   LINE      ---      ---       #890
+      01003010H   LINE      ---      ---       #891
+      0100301CH   LINE      ---      ---       #892
+      0100301CH   LINE      ---      ---       #893
+      0100302FH   LINE      ---      ---       #894
+      01003035H   LINE      ---      ---       #895
+      01003035H   LINE      ---      ---       #896
+      01003035H   LINE      ---      ---       #897
+      0100303CH   LINE      ---      ---       #898
+      01003042H   LINE      ---      ---       #899
+      01003047H   LINE      ---      ---       #900
+      0100304BH   LINE      ---      ---       #901
+      0100304DH   LINE      ---      ---       #902
+      0100304DH   LINE      ---      ---       #903
+      01003053H   LINE      ---      ---       #904
+      01003053H   LINE      ---      ---       #905
+      0100305FH   LINE      ---      ---       #906
+      01003066H   LINE      ---      ---       #907
+      01003066H   LINE      ---      ---       #908
+      0100306CH   LINE      ---      ---       #909
+      0100306CH   LINE      ---      ---       #910
+      01003071H   LINE      ---      ---       #911
+      01003071H   LINE      ---      ---       #912
+      01003077H   LINE      ---      ---       #913
+      01003079H   LINE      ---      ---       #914
+      01003079H   LINE      ---      ---       #915
+      0100307FH   LINE      ---      ---       #916
+      0100307FH   LINE      ---      ---       #917
+      0100308BH   LINE      ---      ---       #918
+      01003092H   LINE      ---      ---       #919
+      01003092H   LINE      ---      ---       #920
+      01003098H   LINE      ---      ---       #921
+      01003098H   LINE      ---      ---       #922
+      0100309DH   LINE      ---      ---       #923
+      0100309DH   LINE      ---      ---       #924
+      010030A3H   LINE      ---      ---       #925
+      010030A5H   LINE      ---      ---       #926
+      010030A5H   LINE      ---      ---       #927
+      010030ABH   LINE      ---      ---       #928
+      010030ABH   LINE      ---      ---       #929
+      010030B7H   LINE      ---      ---       #930
+      010030BEH   LINE      ---      ---       #931
+      010030BEH   LINE      ---      ---       #932
+      010030C4H   LINE      ---      ---       #933
+      010030C4H   LINE      ---      ---       #934
+      010030C9H   LINE      ---      ---       #935
+      010030C9H   LINE      ---      ---       #936
+      010030CFH   LINE      ---      ---       #937
+      010030D1H   LINE      ---      ---       #938
+      010030D1H   LINE      ---      ---       #939
+      010030D7H   LINE      ---      ---       #940
+      010030D7H   LINE      ---      ---       #941
+      010030E3H   LINE      ---      ---       #942
+      010030EAH   LINE      ---      ---       #943
+      010030EAH   LINE      ---      ---       #944
+      010030F0H   LINE      ---      ---       #945
+      010030F0H   LINE      ---      ---       #946
+      010030F5H   LINE      ---      ---       #947
+      010030F5H   LINE      ---      ---       #948
+      010030FBH   LINE      ---      ---       #949
+      010030FBH   LINE      ---      ---       #950
+      010030FBH   LINE      ---      ---       #951
+      010030FBH   LINE      ---      ---       #952
+      010030FBH   LINE      ---      ---       #953
+      010030FBH   LINE      ---      ---       #955
+      01003100H   LINE      ---      ---       #956
       02004EEDH   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01002650H   BLOCK     CODE     ---       LVL=0
-      01002650H   LINE      ---      ---       #961
-      0100265BH   LINE      ---      ---       #962
+      01002650H   LINE      ---      ---       #960
+      0100265BH   LINE      ---      ---       #961
       0100265BH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100265BH   LINE      ---      ---       #963
-      0100265EH   LINE      ---      ---       #965
+      0100265BH   LINE      ---      ---       #962
+      0100265EH   LINE      ---      ---       #964
+      0100266CH   LINE      ---      ---       #965
       0100266CH   LINE      ---      ---       #966
-      0100266CH   LINE      ---      ---       #967
-      01002698H   LINE      ---      ---       #969
-      01002698H   LINE      ---      ---       #971
+      01002698H   LINE      ---      ---       #968
+      01002698H   LINE      ---      ---       #970
+      0100269FH   LINE      ---      ---       #971
       0100269FH   LINE      ---      ---       #972
-      0100269FH   LINE      ---      ---       #973
-      010026A5H   LINE      ---      ---       #974
-      010026A8H   LINE      ---      ---       #976
+      010026A5H   LINE      ---      ---       #973
+      010026A8H   LINE      ---      ---       #975
+      010026ACH   LINE      ---      ---       #976
       010026ACH   LINE      ---      ---       #977
-      010026ACH   LINE      ---      ---       #978
-      010026B2H   LINE      ---      ---       #979
-      010026B5H   LINE      ---      ---       #980
+      010026B2H   LINE      ---      ---       #978
+      010026B5H   LINE      ---      ---       #979
+      010026D5H   LINE      ---      ---       #980
       010026D5H   LINE      ---      ---       #981
-      010026D5H   LINE      ---      ---       #982
-      010026D9H   LINE      ---      ---       #983
-      010026DCH   LINE      ---      ---       #984
+      010026D9H   LINE      ---      ---       #982
+      010026DCH   LINE      ---      ---       #983
+      010026E0H   LINE      ---      ---       #984
       010026E0H   LINE      ---      ---       #985
-      010026E0H   LINE      ---      ---       #986
-      010026E6H   LINE      ---      ---       #987
-      010026E9H   LINE      ---      ---       #988
+      010026E6H   LINE      ---      ---       #986
+      010026E9H   LINE      ---      ---       #987
+      01002709H   LINE      ---      ---       #988
       01002709H   LINE      ---      ---       #989
-      01002709H   LINE      ---      ---       #990
-      0100270DH   LINE      ---      ---       #991
-      01002710H   LINE      ---      ---       #992
+      0100270DH   LINE      ---      ---       #990
+      01002710H   LINE      ---      ---       #991
+      01002714H   LINE      ---      ---       #992
       01002714H   LINE      ---      ---       #993
-      01002714H   LINE      ---      ---       #994
-      0100271AH   LINE      ---      ---       #995
-      0100271DH   LINE      ---      ---       #996
+      0100271AH   LINE      ---      ---       #994
+      0100271DH   LINE      ---      ---       #995
+      0100273DH   LINE      ---      ---       #996
       0100273DH   LINE      ---      ---       #997
-      0100273DH   LINE      ---      ---       #998
-      01002741H   LINE      ---      ---       #999
-      01002744H   LINE      ---      ---       #1000
+      01002741H   LINE      ---      ---       #998
+      01002744H   LINE      ---      ---       #999
+      01002748H   LINE      ---      ---       #1000
       01002748H   LINE      ---      ---       #1001
-      01002748H   LINE      ---      ---       #1002
-      0100274EH   LINE      ---      ---       #1003
-      01002751H   LINE      ---      ---       #1004
+      0100274EH   LINE      ---      ---       #1002
+      01002751H   LINE      ---      ---       #1003
+      01002771H   LINE      ---      ---       #1004
       01002771H   LINE      ---      ---       #1005
-      01002771H   LINE      ---      ---       #1006
-      01002776H   LINE      ---      ---       #1007
-      01002779H   LINE      ---      ---       #1008
+      01002776H   LINE      ---      ---       #1006
+      01002779H   LINE      ---      ---       #1007
+      0100277DH   LINE      ---      ---       #1008
       0100277DH   LINE      ---      ---       #1009
-      0100277DH   LINE      ---      ---       #1010
-      01002783H   LINE      ---      ---       #1011
-      01002786H   LINE      ---      ---       #1012
+      01002783H   LINE      ---      ---       #1010
+      01002786H   LINE      ---      ---       #1011
+      010027A6H   LINE      ---      ---       #1012
       010027A6H   LINE      ---      ---       #1013
-      010027A6H   LINE      ---      ---       #1014
-      010027ABH   LINE      ---      ---       #1015
-      010027AEH   LINE      ---      ---       #1016
+      010027ABH   LINE      ---      ---       #1014
+      010027AEH   LINE      ---      ---       #1015
+      010027B2H   LINE      ---      ---       #1016
       010027B2H   LINE      ---      ---       #1017
-      010027B2H   LINE      ---      ---       #1018
-      010027B8H   LINE      ---      ---       #1019
-      010027BBH   LINE      ---      ---       #1020
+      010027B8H   LINE      ---      ---       #1018
+      010027BBH   LINE      ---      ---       #1019
+      010027DBH   LINE      ---      ---       #1020
       010027DBH   LINE      ---      ---       #1021
-      010027DBH   LINE      ---      ---       #1022
-      010027E1H   LINE      ---      ---       #1023
-      010027E4H   LINE      ---      ---       #1024
+      010027E1H   LINE      ---      ---       #1022
+      010027E4H   LINE      ---      ---       #1023
+      010027E8H   LINE      ---      ---       #1024
       010027E8H   LINE      ---      ---       #1025
-      010027E8H   LINE      ---      ---       #1026
-      010027EEH   LINE      ---      ---       #1027
-      010027F1H   LINE      ---      ---       #1028
+      010027EEH   LINE      ---      ---       #1026
+      010027F1H   LINE      ---      ---       #1027
+      01002811H   LINE      ---      ---       #1028
       01002811H   LINE      ---      ---       #1029
-      01002811H   LINE      ---      ---       #1030
-      01002818H   LINE      ---      ---       #1031
-      0100281AH   LINE      ---      ---       #1032
+      01002818H   LINE      ---      ---       #1030
+      0100281AH   LINE      ---      ---       #1031
+      0100281EH   LINE      ---      ---       #1032
       0100281EH   LINE      ---      ---       #1033
-      0100281EH   LINE      ---      ---       #1034
-      01002825H   LINE      ---      ---       #1035
-      01002827H   LINE      ---      ---       #1036
+      01002825H   LINE      ---      ---       #1034
+      01002827H   LINE      ---      ---       #1035
+      01002847H   LINE      ---      ---       #1036
       01002847H   LINE      ---      ---       #1037
-      01002847H   LINE      ---      ---       #1038
-      0100284EH   LINE      ---      ---       #1039
-      01002850H   LINE      ---      ---       #1040
+      0100284EH   LINE      ---      ---       #1038
+      01002850H   LINE      ---      ---       #1039
+      01002854H   LINE      ---      ---       #1040
       01002854H   LINE      ---      ---       #1041
-      01002854H   LINE      ---      ---       #1042
-      0100285BH   LINE      ---      ---       #1043
-      0100285DH   LINE      ---      ---       #1044
+      0100285BH   LINE      ---      ---       #1042
+      0100285DH   LINE      ---      ---       #1043
+      0100287DH   LINE      ---      ---       #1044
       0100287DH   LINE      ---      ---       #1045
-      0100287DH   LINE      ---      ---       #1046
-      01002882H   LINE      ---      ---       #1047
-      01002884H   LINE      ---      ---       #1048
+      01002882H   LINE      ---      ---       #1046
+      01002884H   LINE      ---      ---       #1047
+      01002888H   LINE      ---      ---       #1048
       01002888H   LINE      ---      ---       #1049
-      01002888H   LINE      ---      ---       #1050
-      0100288FH   LINE      ---      ---       #1051
-      01002891H   LINE      ---      ---       #1052
+      0100288FH   LINE      ---      ---       #1050
+      01002891H   LINE      ---      ---       #1051
+      010028B1H   LINE      ---      ---       #1052
       010028B1H   LINE      ---      ---       #1053
-      010028B1H   LINE      ---      ---       #1054
-      010028B6H   LINE      ---      ---       #1055
-      010028B8H   LINE      ---      ---       #1056
+      010028B6H   LINE      ---      ---       #1054
+      010028B8H   LINE      ---      ---       #1055
+      010028BCH   LINE      ---      ---       #1056
       010028BCH   LINE      ---      ---       #1057
-      010028BCH   LINE      ---      ---       #1058
-      010028C3H   LINE      ---      ---       #1059
-      010028C5H   LINE      ---      ---       #1060
+      010028C3H   LINE      ---      ---       #1058
+      010028C5H   LINE      ---      ---       #1059
+      010028E5H   LINE      ---      ---       #1060
       010028E5H   LINE      ---      ---       #1061
-      010028E5H   LINE      ---      ---       #1062
-      010028ECH   LINE      ---      ---       #1063
-      010028EEH   LINE      ---      ---       #1064
+      010028ECH   LINE      ---      ---       #1062
+      010028EEH   LINE      ---      ---       #1063
+      010028F2H   LINE      ---      ---       #1064
       010028F2H   LINE      ---      ---       #1065
-      010028F2H   LINE      ---      ---       #1066
-      010028F9H   LINE      ---      ---       #1067
-      010028FBH   LINE      ---      ---       #1068
+      010028F9H   LINE      ---      ---       #1066
+      010028FBH   LINE      ---      ---       #1067
+      0100291BH   LINE      ---      ---       #1068
       0100291BH   LINE      ---      ---       #1069
-      0100291BH   LINE      ---      ---       #1070
-      0100291FH   LINE      ---      ---       #1071
-      01002921H   LINE      ---      ---       #1072
+      0100291FH   LINE      ---      ---       #1070
+      01002921H   LINE      ---      ---       #1071
+      01002925H   LINE      ---      ---       #1072
       01002925H   LINE      ---      ---       #1073
-      01002925H   LINE      ---      ---       #1074
-      01002929H   LINE      ---      ---       #1075
-      0100292BH   LINE      ---      ---       #1076
+      01002929H   LINE      ---      ---       #1074
+      0100292BH   LINE      ---      ---       #1075
+      01002931H   LINE      ---      ---       #1076
       01002931H   LINE      ---      ---       #1077
-      01002931H   LINE      ---      ---       #1078
-      01002935H   LINE      ---      ---       #1079
-      01002935H   LINE      ---      ---       #1081
+      01002935H   LINE      ---      ---       #1078
+      01002935H   LINE      ---      ---       #1080
+      0100293CH   LINE      ---      ---       #1081
       0100293CH   LINE      ---      ---       #1082
-      0100293CH   LINE      ---      ---       #1083
-      0100295CH   LINE      ---      ---       #1084
+      0100295CH   LINE      ---      ---       #1083
+      01002960H   LINE      ---      ---       #1084
       01002960H   LINE      ---      ---       #1085
       01002960H   LINE      ---      ---       #1086
-      01002960H   LINE      ---      ---       #1087
-      01002969H   LINE      ---      ---       #1088
+      01002969H   LINE      ---      ---       #1087
       02004EDCH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1915,8 +1914,8 @@
       0100214DH   PUBLIC    CODE     ---       KS_GetCurrentEvt
       010023A7H   PUBLIC    CODE     ---       _array_is_empty
       010024D7H   PUBLIC    CODE     ---       KS_ScanMatrix
-      0100314AH   PUBLIC    CODE     ---       KS_Unistall
-      01003120H   PUBLIC    CODE     ---       KS_Initialize
+      01003149H   PUBLIC    CODE     ---       KS_Unistall
+      0100311FH   PUBLIC    CODE     ---       KS_Initialize
 
       01002399H   BLOCK     CODE     ---       LVL=0
       01002399H   LINE      ---      ---       #25
@@ -2000,74 +1999,74 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003102H   BLOCK     CODE     ---       LVL=0
-      01003102H   LINE      ---      ---       #190
-      01003102H   LINE      ---      ---       #191
-      01003102H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003102H   LINE      ---      ---       #192
-      01003107H   LINE      ---      ---       #194
-      01003112H   LINE      ---      ---       #195
-      01003117H   LINE      ---      ---       #196
-      0100311FH   LINE      ---      ---       #197
+      01003101H   BLOCK     CODE     ---       LVL=0
+      01003101H   LINE      ---      ---       #190
+      01003101H   LINE      ---      ---       #191
+      01003101H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003101H   LINE      ---      ---       #192
+      01003106H   LINE      ---      ---       #194
+      01003111H   LINE      ---      ---       #195
+      01003116H   LINE      ---      ---       #196
+      0100311EH   LINE      ---      ---       #197
       02004F0CH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100312BH   BLOCK     CODE     ---       LVL=0
-      0100312BH   LINE      ---      ---       #199
-      0100312BH   LINE      ---      ---       #200
-      0100312BH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100312BH   LINE      ---      ---       #201
-      01003130H   LINE      ---      ---       #202
-      0100313CH   LINE      ---      ---       #203
-      01003141H   LINE      ---      ---       #204
-      01003149H   LINE      ---      ---       #205
+      0100312AH   BLOCK     CODE     ---       LVL=0
+      0100312AH   LINE      ---      ---       #199
+      0100312AH   LINE      ---      ---       #200
+      0100312AH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100312AH   LINE      ---      ---       #201
+      0100312FH   LINE      ---      ---       #202
+      0100313BH   LINE      ---      ---       #203
+      01003140H   LINE      ---      ---       #204
+      01003148H   LINE      ---      ---       #205
       02004F0DH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003120H   BLOCK     CODE     ---       LVL=0
-      01003120H   LINE      ---      ---       #207
-      01003120H   LINE      ---      ---       #208
-      01003120H   LINE      ---      ---       #209
-      01003125H   LINE      ---      ---       #210
-      01003127H   LINE      ---      ---       #211
-      01003129H   LINE      ---      ---       #212
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      0100314AH   BLOCK     CODE     ---       LVL=0
-      0100314AH   LINE      ---      ---       #216
-      0100314AH   LINE      ---      ---       #217
-      0100314AH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100314AH   LINE      ---      ---       #218
-      0100314CH   LINE      ---      ---       #219
-      01003150H   LINE      ---      ---       #220
-      01003151H   LINE      ---      ---       #221
-      01003152H   LINE      ---      ---       #222
-      01003159H   LINE      ---      ---       #223
-      01003162H   LINE      ---      ---       #224
-      01003172H   LINE      ---      ---       #225
-      01003185H   LINE      ---      ---       #226
-      01003192H   LINE      ---      ---       #227
-      0100319FH   LINE      ---      ---       #228
-      010031A2H   LINE      ---      ---       #230
-      010031A4H   LINE      ---      ---       #232
-      010031ACH   LINE      ---      ---       #234
-      010031B2H   LINE      ---      ---       #235
-      010031B2H   LINE      ---      ---       #236
-      010031B6H   LINE      ---      ---       #237
-      010031BAH   LINE      ---      ---       #238
-      010031BEH   LINE      ---      ---       #239
-      010031C2H   LINE      ---      ---       #240
-      010031C6H   LINE      ---      ---       #241
-      010031CAH   LINE      ---      ---       #242
-      010031CEH   LINE      ---      ---       #243
-      010031D2H   LINE      ---      ---       #244
-      010031D2H   LINE      ---      ---       #246
-      010031D2H   LINE      ---      ---       #247
-      010031DBH   LINE      ---      ---       #248
-      010031E1H   LINE      ---      ---       #249
-      010031E1H   LINE      ---      ---       #251
+      0100311FH   BLOCK     CODE     ---       LVL=0
+      0100311FH   LINE      ---      ---       #207
+      0100311FH   LINE      ---      ---       #208
+      0100311FH   LINE      ---      ---       #209
+      01003124H   LINE      ---      ---       #210
+      01003126H   LINE      ---      ---       #211
+      01003128H   LINE      ---      ---       #212
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003149H   BLOCK     CODE     ---       LVL=0
+      01003149H   LINE      ---      ---       #216
+      01003149H   LINE      ---      ---       #217
+      01003149H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003149H   LINE      ---      ---       #218
+      0100314BH   LINE      ---      ---       #219
+      0100314FH   LINE      ---      ---       #220
+      01003150H   LINE      ---      ---       #221
+      01003151H   LINE      ---      ---       #222
+      01003158H   LINE      ---      ---       #223
+      01003161H   LINE      ---      ---       #224
+      01003171H   LINE      ---      ---       #225
+      01003184H   LINE      ---      ---       #226
+      01003191H   LINE      ---      ---       #227
+      0100319EH   LINE      ---      ---       #228
+      010031A1H   LINE      ---      ---       #230
+      010031A3H   LINE      ---      ---       #232
+      010031ABH   LINE      ---      ---       #234
+      010031B1H   LINE      ---      ---       #235
+      010031B1H   LINE      ---      ---       #236
+      010031B5H   LINE      ---      ---       #237
+      010031B9H   LINE      ---      ---       #238
+      010031BDH   LINE      ---      ---       #239
+      010031C1H   LINE      ---      ---       #240
+      010031C5H   LINE      ---      ---       #241
+      010031C9H   LINE      ---      ---       #242
+      010031CDH   LINE      ---      ---       #243
+      010031D1H   LINE      ---      ---       #244
+      010031D1H   LINE      ---      ---       #246
+      010031D1H   LINE      ---      ---       #247
+      010031DAH   LINE      ---      ---       #248
+      010031E0H   LINE      ---      ---       #249
+      010031E0H   LINE      ---      ---       #251
       00000007H   SYMBOL    DATA     VOID      i
       02004F0EH   SYMBOL    XDATA    VOID      temp
       00000006H   SYMBOL    DATA     VOID      tgroup
@@ -2238,9 +2237,9 @@
       ---         BLOCKEND  CODE     ---       LVL=0
 
       ---         MODULE    ---      ---       LED
-      0100353EH   PUBLIC    CODE     ---       LED_handle
+      01003540H   PUBLIC    CODE     ---       LED_handle
       01000FCBH   PUBLIC    CODE     ---       LED_device_poweroff
-      0100351BH   PUBLIC    CODE     ---       LED_device_poweron
+      010033B5H   PUBLIC    CODE     ---       LED_device_poweron
       01001DA1H   PUBLIC    CODE     ---       LED_all_shutdown
 
       01001DA1H   BLOCK     CODE     ---       LVL=0
@@ -2254,15 +2253,15 @@
       01001DBFH   LINE      ---      ---       #11
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100351BH   BLOCK     CODE     ---       LVL=0
-      0100351BH   LINE      ---      ---       #16
-      0100351BH   LINE      ---      ---       #17
-      0100351BH   LINE      ---      ---       #18
-      01003522H   LINE      ---      ---       #19
-      01003529H   LINE      ---      ---       #20
-      01003530H   LINE      ---      ---       #21
-      01003537H   LINE      ---      ---       #23
-      01003537H   LINE      ---      ---       #24
+      010033B5H   BLOCK     CODE     ---       LVL=0
+      010033B5H   LINE      ---      ---       #16
+      010033B5H   LINE      ---      ---       #17
+      010033B5H   LINE      ---      ---       #18
+      010033BCH   LINE      ---      ---       #19
+      010033C3H   LINE      ---      ---       #20
+      010033CAH   LINE      ---      ---       #21
+      010033D1H   LINE      ---      ---       #23
+      010033D1H   LINE      ---      ---       #24
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000FCBH   BLOCK     CODE     ---       LVL=0
@@ -2276,55 +2275,55 @@
       01000FE5H   LINE      ---      ---       #36
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100353EH   BLOCK     CODE     ---       LVL=0
-      0100353EH   LINE      ---      ---       #41
-      0100353EH   LINE      ---      ---       #42
-      0100353EH   LINE      ---      ---       #46
-      01003552H   LINE      ---      ---       #47
-      01003552H   LINE      ---      ---       #49
-      01003559H   LINE      ---      ---       #50
-      01003559H   LINE      ---      ---       #51
-      0100355CH   LINE      ---      ---       #52
-      0100355EH   LINE      ---      ---       #53
-      01003565H   LINE      ---      ---       #54
-      01003565H   LINE      ---      ---       #55
-      0100356BH   LINE      ---      ---       #56
-      0100356BH   LINE      ---      ---       #57
-      01003571H   LINE      ---      ---       #58
-      01003577H   LINE      ---      ---       #59
-      01003577H   LINE      ---      ---       #60
-      01003579H   LINE      ---      ---       #62
-      01003579H   LINE      ---      ---       #63
-      01003580H   LINE      ---      ---       #64
-      01003580H   LINE      ---      ---       #65
-      01003582H   LINE      ---      ---       #66
-      01003586H   LINE      ---      ---       #67
-      01003589H   LINE      ---      ---       #68
-      01003589H   LINE      ---      ---       #69
-      01003589H   LINE      ---      ---       #73
-      01003589H   LINE      ---      ---       #74
-      0100358FH   LINE      ---      ---       #75
-      0100358FH   LINE      ---      ---       #76
-      0100359EH   LINE      ---      ---       #77
-      0100359EH   LINE      ---      ---       #80
-      010035A5H   LINE      ---      ---       #81
-      010035A5H   LINE      ---      ---       #82
-      010035ACH   LINE      ---      ---       #83
-      010035ACH   LINE      ---      ---       #85
-      010035ACH   LINE      ---      ---       #86
-      010035B3H   LINE      ---      ---       #87
-      010035B3H   LINE      ---      ---       #89
-      010035B3H   LINE      ---      ---       #91
-      010035B3H   LINE      ---      ---       #92
-      010035BAH   LINE      ---      ---       #93
-      010035BAH   LINE      ---      ---       #94
-      010035BAH   LINE      ---      ---       #96
-      010035BAH   LINE      ---      ---       #97
-      010035C1H   LINE      ---      ---       #98
-      010035C1H   LINE      ---      ---       #99
-      010035C1H   LINE      ---      ---       #100
-      010035C1H   LINE      ---      ---       #102
-      010035C1H   LINE      ---      ---       #103
+      01003540H   BLOCK     CODE     ---       LVL=0
+      01003540H   LINE      ---      ---       #41
+      01003540H   LINE      ---      ---       #42
+      01003540H   LINE      ---      ---       #46
+      01003554H   LINE      ---      ---       #47
+      01003554H   LINE      ---      ---       #49
+      0100355BH   LINE      ---      ---       #50
+      0100355BH   LINE      ---      ---       #51
+      0100355EH   LINE      ---      ---       #52
+      01003560H   LINE      ---      ---       #53
+      01003567H   LINE      ---      ---       #54
+      01003567H   LINE      ---      ---       #55
+      0100356DH   LINE      ---      ---       #56
+      0100356DH   LINE      ---      ---       #57
+      01003573H   LINE      ---      ---       #58
+      01003579H   LINE      ---      ---       #59
+      01003579H   LINE      ---      ---       #60
+      0100357BH   LINE      ---      ---       #62
+      0100357BH   LINE      ---      ---       #63
+      01003582H   LINE      ---      ---       #64
+      01003582H   LINE      ---      ---       #65
+      01003584H   LINE      ---      ---       #66
+      01003588H   LINE      ---      ---       #67
+      0100358BH   LINE      ---      ---       #68
+      0100358BH   LINE      ---      ---       #69
+      0100358BH   LINE      ---      ---       #73
+      0100358BH   LINE      ---      ---       #74
+      01003591H   LINE      ---      ---       #75
+      01003591H   LINE      ---      ---       #76
+      010035A0H   LINE      ---      ---       #77
+      010035A0H   LINE      ---      ---       #80
+      010035A7H   LINE      ---      ---       #81
+      010035A7H   LINE      ---      ---       #82
+      010035AEH   LINE      ---      ---       #83
+      010035AEH   LINE      ---      ---       #85
+      010035AEH   LINE      ---      ---       #86
+      010035B5H   LINE      ---      ---       #87
+      010035B5H   LINE      ---      ---       #89
+      010035B5H   LINE      ---      ---       #91
+      010035B5H   LINE      ---      ---       #92
+      010035BCH   LINE      ---      ---       #93
+      010035BCH   LINE      ---      ---       #94
+      010035BCH   LINE      ---      ---       #96
+      010035BCH   LINE      ---      ---       #97
+      010035C3H   LINE      ---      ---       #98
+      010035C3H   LINE      ---      ---       #99
+      010035C3H   LINE      ---      ---       #100
+      010035C3H   LINE      ---      ---       #102
+      010035C3H   LINE      ---      ---       #103
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       SYS
@@ -2334,35 +2333,35 @@
       020043FEH   PUBLIC    XDATA    BYTE      m_le_roll_name_scan
       01001774H   PUBLIC    CODE     ---       YC_System_Main
       01001C52H   PUBLIC    CODE     ---       kb_button_press_timer500ms
-      010032E2H   PUBLIC    CODE     ---       YC_pairing_timerout_500ms
-      0100371EH   PUBLIC    CODE     ---       YC_wait_disconnect_timer500ms
+      010032E1H   PUBLIC    CODE     ---       YC_pairing_timerout_500ms
+      0100375FH   PUBLIC    CODE     ---       YC_wait_disconnect_timer500ms
       01001EBDH   PUBLIC    CODE     ---       YC_connect_timeout_500ms
       01001FE7H   PUBLIC    CODE     ---       LED_timer500ms
-      01003512H   PUBLIC    CODE     ---       System_Reset_Connect
+      01003537H   PUBLIC    CODE     ---       System_Reset_Connect
       01001E91H   PUBLIC    CODE     ---       System_G24_long_lpm
       01000F42H   PUBLIC    CODE     ---       System_long_sleep
-      0100360DH   PUBLIC    CODE     ---       System_Software_init
+      0100360FH   PUBLIC    CODE     ---       System_Software_init
       01002CD4H   PUBLIC    CODE     ---       System_clear_timer_status
-      010035C8H   PUBLIC    CODE     ---       kb_ble_name_roll
+      010035CAH   PUBLIC    CODE     ---       kb_ble_name_roll
 
-      010035C8H   BLOCK     CODE     ---       LVL=0
-      010035C8H   LINE      ---      ---       #17
-      010035C8H   LINE      ---      ---       #18
-      010035C8H   LINE      ---      ---       #19
-      010035D0H   LINE      ---      ---       #20
-      010035D0H   LINE      ---      ---       #21
-      010035D6H   LINE      ---      ---       #22
-      010035DAH   LINE      ---      ---       #23
-      010035DEH   LINE      ---      ---       #24
-      010035E2H   LINE      ---      ---       #25
-      010035E3H   LINE      ---      ---       #27
-      010035E7H   LINE      ---      ---       #28
-      010035E7H   LINE      ---      ---       #29
-      010035EDH   LINE      ---      ---       #30
-      010035F1H   LINE      ---      ---       #31
-      010035F5H   LINE      ---      ---       #32
-      010035F9H   LINE      ---      ---       #33
-      010035F9H   LINE      ---      ---       #35
+      010035CAH   BLOCK     CODE     ---       LVL=0
+      010035CAH   LINE      ---      ---       #17
+      010035CAH   LINE      ---      ---       #18
+      010035CAH   LINE      ---      ---       #19
+      010035D2H   LINE      ---      ---       #20
+      010035D2H   LINE      ---      ---       #21
+      010035D8H   LINE      ---      ---       #22
+      010035DCH   LINE      ---      ---       #23
+      010035E0H   LINE      ---      ---       #24
+      010035E4H   LINE      ---      ---       #25
+      010035E5H   LINE      ---      ---       #27
+      010035E9H   LINE      ---      ---       #28
+      010035E9H   LINE      ---      ---       #29
+      010035EFH   LINE      ---      ---       #30
+      010035F3H   LINE      ---      ---       #31
+      010035F7H   LINE      ---      ---       #32
+      010035FBH   LINE      ---      ---       #33
+      010035FBH   LINE      ---      ---       #35
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001590H   BLOCK     CODE     ---       LVL=0
@@ -2409,16 +2408,16 @@
       01002CEBH   LINE      ---      ---       #76
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010035FAH   BLOCK     CODE     ---       LVL=0
-      010035FAH   LINE      ---      ---       #77
-      010035FAH   LINE      ---      ---       #78
-      010035FAH   LINE      ---      ---       #79
-      01003600H   LINE      ---      ---       #80
-      01003603H   LINE      ---      ---       #81
-      01003605H   LINE      ---      ---       #82
-      01003607H   LINE      ---      ---       #83
-      01003609H   LINE      ---      ---       #84
-      0100360CH   LINE      ---      ---       #85
+      010035FCH   BLOCK     CODE     ---       LVL=0
+      010035FCH   LINE      ---      ---       #77
+      010035FCH   LINE      ---      ---       #78
+      010035FCH   LINE      ---      ---       #79
+      01003602H   LINE      ---      ---       #80
+      01003605H   LINE      ---      ---       #81
+      01003607H   LINE      ---      ---       #82
+      01003609H   LINE      ---      ---       #83
+      0100360BH   LINE      ---      ---       #84
+      0100360EH   LINE      ---      ---       #85
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001FE8H   BLOCK     CODE     ---       LVL=0
@@ -2429,26 +2428,26 @@
       01001FEEH   LINE      ---      ---       #91
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100360DH   BLOCK     CODE     ---       LVL=0
-      0100360DH   LINE      ---      ---       #95
-      0100360DH   LINE      ---      ---       #96
-      0100360DH   LINE      ---      ---       #97
-      01003610H   LINE      ---      ---       #98
-      01003612H   LINE      ---      ---       #99
-      01003618H   LINE      ---      ---       #100
-      0100361EH   LINE      ---      ---       #101
-      01003623H   LINE      ---      ---       #102
-      01003629H   LINE      ---      ---       #103
-      01003631H   LINE      ---      ---       #104
-      01003639H   LINE      ---      ---       #105
-      01003641H   LINE      ---      ---       #106
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003512H   BLOCK     CODE     ---       LVL=0
-      01003512H   LINE      ---      ---       #108
-      01003512H   LINE      ---      ---       #109
-      01003512H   LINE      ---      ---       #110
-      01003518H   LINE      ---      ---       #111
+      0100360FH   BLOCK     CODE     ---       LVL=0
+      0100360FH   LINE      ---      ---       #95
+      0100360FH   LINE      ---      ---       #96
+      0100360FH   LINE      ---      ---       #97
+      01003612H   LINE      ---      ---       #98
+      01003614H   LINE      ---      ---       #99
+      0100361AH   LINE      ---      ---       #100
+      01003620H   LINE      ---      ---       #101
+      01003625H   LINE      ---      ---       #102
+      0100362BH   LINE      ---      ---       #103
+      01003633H   LINE      ---      ---       #104
+      0100363BH   LINE      ---      ---       #105
+      01003643H   LINE      ---      ---       #106
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003537H   BLOCK     CODE     ---       LVL=0
+      01003537H   LINE      ---      ---       #108
+      01003537H   LINE      ---      ---       #109
+      01003537H   LINE      ---      ---       #110
+      0100353DH   LINE      ---      ---       #111
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000F42H   BLOCK     CODE     ---       LVL=0
@@ -2475,16 +2474,16 @@
       01001EBCH   LINE      ---      ---       #135
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003512H   BLOCK     CODE     ---       LVL=0
+      01003537H   BLOCK     CODE     ---       LVL=0
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100370EH   BLOCK     CODE     ---       LVL=0
-      0100370EH   LINE      ---      ---       #147
-      01003713H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003713H   LINE      ---      ---       #149
-      0100371DH   LINE      ---      ---       #151
-      0100371DH   LINE      ---      ---       #153
-      0100371DH   LINE      ---      ---       #154
+      0100374FH   BLOCK     CODE     ---       LVL=0
+      0100374FH   LINE      ---      ---       #147
+      01003754H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003754H   LINE      ---      ---       #149
+      0100375EH   LINE      ---      ---       #151
+      0100375EH   LINE      ---      ---       #153
+      0100375EH   LINE      ---      ---       #154
       02004F05H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2833,69 +2832,69 @@
       01001FB2H   LINE      ---      ---       #572
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100371EH   BLOCK     CODE     ---       LVL=0
-      0100371EH   LINE      ---      ---       #575
-      0100371EH   LINE      ---      ---       #576
-      0100371EH   LINE      ---      ---       #578
-      01003724H   LINE      ---      ---       #579
-      01003724H   LINE      ---      ---       #580
-      01003727H   LINE      ---      ---       #581
-      0100372AH   LINE      ---      ---       #582
-      0100372AH   LINE      ---      ---       #583
-      01003738H   LINE      ---      ---       #591
-      01003738H   LINE      ---      ---       #593
-      0100373DH   LINE      ---      ---       #594
-      01003747H   LINE      ---      ---       #595
-      0100374EH   LINE      ---      ---       #596
-      01003752H   LINE      ---      ---       #597
-      01003756H   LINE      ---      ---       #601
-      01003759H   LINE      ---      ---       #602
-      0100375EH   LINE      ---      ---       #607
-      01003763H   LINE      ---      ---       #608
-      01003763H   LINE      ---      ---       #609
-      01003763H   LINE      ---      ---       #610
-      01003763H   LINE      ---      ---       #612
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010032E2H   BLOCK     CODE     ---       LVL=0
-      010032E2H   LINE      ---      ---       #615
-      010032E2H   LINE      ---      ---       #616
-      010032E2H   LINE      ---      ---       #618
-      010032ECH   LINE      ---      ---       #619
-      010032ECH   LINE      ---      ---       #620
-      010032F3H   LINE      ---      ---       #621
-      010032F7H   LINE      ---      ---       #622
-      01003305H   LINE      ---      ---       #623
-      0100330DH   LINE      ---      ---       #624
-      0100330DH   LINE      ---      ---       #625
-      01003312H   LINE      ---      ---       #627
-      01003319H   LINE      ---      ---       #628
-      0100331FH   LINE      ---      ---       #630
-      01003323H   LINE      ---      ---       #632
-      01003325H   LINE      ---      ---       #634
-      01003325H   LINE      ---      ---       #635
-      0100332BH   LINE      ---      ---       #636
-      0100332EH   LINE      ---      ---       #637
-      0100332EH   LINE      ---      ---       #638
-      01003338H   LINE      ---      ---       #639
-      01003338H   LINE      ---      ---       #640
-      01003340H   LINE      ---      ---       #641
-      01003344H   LINE      ---      ---       #643
-      01003349H   LINE      ---      ---       #644
-      0100334CH   LINE      ---      ---       #645
-      0100334CH   LINE      ---      ---       #646
-      0100334CH   LINE      ---      ---       #648
-      01003356H   LINE      ---      ---       #649
-      01003356H   LINE      ---      ---       #650
-      0100335DH   LINE      ---      ---       #651
-      0100336BH   LINE      ---      ---       #652
-      0100336FH   LINE      ---      ---       #653
-      01003379H   LINE      ---      ---       #654
-      01003379H   LINE      ---      ---       #656
-      0100337EH   LINE      ---      ---       #657
-      01003381H   LINE      ---      ---       #658
-      01003381H   LINE      ---      ---       #659
-      01003381H   LINE      ---      ---       #660
+      0100375FH   BLOCK     CODE     ---       LVL=0
+      0100375FH   LINE      ---      ---       #575
+      0100375FH   LINE      ---      ---       #576
+      0100375FH   LINE      ---      ---       #578
+      01003765H   LINE      ---      ---       #579
+      01003765H   LINE      ---      ---       #580
+      01003768H   LINE      ---      ---       #581
+      0100376BH   LINE      ---      ---       #582
+      0100376BH   LINE      ---      ---       #583
+      01003779H   LINE      ---      ---       #591
+      01003779H   LINE      ---      ---       #593
+      0100377EH   LINE      ---      ---       #594
+      01003788H   LINE      ---      ---       #595
+      0100378FH   LINE      ---      ---       #596
+      01003793H   LINE      ---      ---       #597
+      01003797H   LINE      ---      ---       #601
+      0100379AH   LINE      ---      ---       #602
+      0100379FH   LINE      ---      ---       #607
+      010037A4H   LINE      ---      ---       #608
+      010037A4H   LINE      ---      ---       #609
+      010037A4H   LINE      ---      ---       #610
+      010037A4H   LINE      ---      ---       #612
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010032E1H   BLOCK     CODE     ---       LVL=0
+      010032E1H   LINE      ---      ---       #615
+      010032E1H   LINE      ---      ---       #616
+      010032E1H   LINE      ---      ---       #618
+      010032EBH   LINE      ---      ---       #619
+      010032EBH   LINE      ---      ---       #620
+      010032F2H   LINE      ---      ---       #621
+      010032F6H   LINE      ---      ---       #622
+      01003304H   LINE      ---      ---       #623
+      0100330CH   LINE      ---      ---       #624
+      0100330CH   LINE      ---      ---       #625
+      01003311H   LINE      ---      ---       #627
+      01003318H   LINE      ---      ---       #628
+      0100331EH   LINE      ---      ---       #630
+      01003322H   LINE      ---      ---       #632
+      01003324H   LINE      ---      ---       #634
+      01003324H   LINE      ---      ---       #635
+      0100332AH   LINE      ---      ---       #636
+      0100332DH   LINE      ---      ---       #637
+      0100332DH   LINE      ---      ---       #638
+      01003337H   LINE      ---      ---       #639
+      01003337H   LINE      ---      ---       #640
+      0100333FH   LINE      ---      ---       #641
+      01003343H   LINE      ---      ---       #643
+      01003348H   LINE      ---      ---       #644
+      0100334BH   LINE      ---      ---       #645
+      0100334BH   LINE      ---      ---       #646
+      0100334BH   LINE      ---      ---       #648
+      01003355H   LINE      ---      ---       #649
+      01003355H   LINE      ---      ---       #650
+      0100335CH   LINE      ---      ---       #651
+      0100336AH   LINE      ---      ---       #652
+      0100336EH   LINE      ---      ---       #653
+      01003378H   LINE      ---      ---       #654
+      01003378H   LINE      ---      ---       #656
+      0100337DH   LINE      ---      ---       #657
+      01003380H   LINE      ---      ---       #658
+      01003380H   LINE      ---      ---       #659
+      01003380H   LINE      ---      ---       #660
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001C52H   BLOCK     CODE     ---       LVL=0
@@ -3009,248 +3008,252 @@
       01001FE6H   LINE      ---      ---       #800
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010033B6H   BLOCK     CODE     ---       LVL=0
-      010033B6H   LINE      ---      ---       #803
-      010033B6H   LINE      ---      ---       #804
-      010033B6H   LINE      ---      ---       #807
-      010033BCH   LINE      ---      ---       #808
-      010033BCH   LINE      ---      ---       #809
-      010033BEH   LINE      ---      ---       #810
-      010033BEH   LINE      ---      ---       #812
-      010033C4H   LINE      ---      ---       #813
-      010033C6H   LINE      ---      ---       #815
-      010033CCH   LINE      ---      ---       #816
-      010033CCH   LINE      ---      ---       #817
-      010033CEH   LINE      ---      ---       #818
-      010033D1H   LINE      ---      ---       #819
-      010033D7H   LINE      ---      ---       #820
-      010033D7H   LINE      ---      ---       #822
-      010033DDH   LINE      ---      ---       #823
-      010033DDH   LINE      ---      ---       #824
-      010033F1H   LINE      ---      ---       #825
-      010033F1H   LINE      ---      ---       #826
-      010033F7H   LINE      ---      ---       #828
-      010033F7H   LINE      ---      ---       #830
-      010033FDH   LINE      ---      ---       #831
-      01003400H   LINE      ---      ---       #832
-      01003400H   LINE      ---      ---       #833
-      01003402H   LINE      ---      ---       #834
-      01003404H   LINE      ---      ---       #836
-      01003404H   LINE      ---      ---       #837
-      01003407H   LINE      ---      ---       #838
-      01003407H   LINE      ---      ---       #840
-      01003409H   LINE      ---      ---       #841
-      0100341DH   LINE      ---      ---       #842
-      0100341DH   LINE      ---      ---       #843
-      01003424H   LINE      ---      ---       #844
-      01003424H   LINE      ---      ---       #845
-      01003433H   LINE      ---      ---       #846
-      01003433H   LINE      ---      ---       #847
-      01003439H   LINE      ---      ---       #848
-      0100343DH   LINE      ---      ---       #849
-      0100343DH   LINE      ---      ---       #850
-      01003441H   LINE      ---      ---       #851
-      01003441H   LINE      ---      ---       #852
-      01003443H   LINE      ---      ---       #854
-      01003448H   LINE      ---      ---       #855
-      0100344AH   LINE      ---      ---       #857
-      0100344FH   LINE      ---      ---       #859
-      0100344FH   LINE      ---      ---       #862
-      01003455H   LINE      ---      ---       #863
-      01003455H   LINE      ---      ---       #864
-      0100345DH   LINE      ---      ---       #865
-      0100345DH   LINE      ---      ---       #866
-      01003463H   LINE      ---      ---       #867
-      01003467H   LINE      ---      ---       #869
-      0100346DH   LINE      ---      ---       #870
-      0100346DH   LINE      ---      ---       #871
-      01003478H   LINE      ---      ---       #872
-      0100347AH   LINE      ---      ---       #873
-      01003480H   LINE      ---      ---       #874
-      01003480H   LINE      ---      ---       #876
-      0100348BH   LINE      ---      ---       #877
-      0100348BH   LINE      ---      ---       #878
-      0100348BH   LINE      ---      ---       #879
-      0100348BH   LINE      ---      ---       #881
-      010034A3H   LINE      ---      ---       #882
-      010034A3H   LINE      ---      ---       #883
-      010034A9H   LINE      ---      ---       #884
-      010034B0H   LINE      ---      ---       #885
-      010034B6H   LINE      ---      ---       #886
-      010034B6H   LINE      ---      ---       #887
-      010034BDH   LINE      ---      ---       #888
-      010034BDH   LINE      ---      ---       #889
-      010034BDH   LINE      ---      ---       #892
-      010034C3H   LINE      ---      ---       #893
-      010034C3H   LINE      ---      ---       #894
-      010034C6H   LINE      ---      ---       #895
-      010034C9H   LINE      ---      ---       #896
-      010034C9H   LINE      ---      ---       #897
-      010034CBH   LINE      ---      ---       #898
-      010034CBH   LINE      ---      ---       #899
-      010034CBH   LINE      ---      ---       #902
-      010034D1H   LINE      ---      ---       #903
-      010034D1H   LINE      ---      ---       #904
-      010034D4H   LINE      ---      ---       #905
-      010034D7H   LINE      ---      ---       #906
-      010034D7H   LINE      ---      ---       #907
-      010034DDH   LINE      ---      ---       #908
-      010034DDH   LINE      ---      ---       #909
+      010033D8H   BLOCK     CODE     ---       LVL=0
+      010033D8H   LINE      ---      ---       #803
+      010033D8H   LINE      ---      ---       #804
+      010033D8H   LINE      ---      ---       #807
+      010033DEH   LINE      ---      ---       #808
+      010033DEH   LINE      ---      ---       #809
+      010033E0H   LINE      ---      ---       #810
+      010033E0H   LINE      ---      ---       #812
+      010033E6H   LINE      ---      ---       #813
+      010033E8H   LINE      ---      ---       #815
+      010033EEH   LINE      ---      ---       #816
+      010033EEH   LINE      ---      ---       #817
+      010033F0H   LINE      ---      ---       #818
+      010033F3H   LINE      ---      ---       #819
+      010033F9H   LINE      ---      ---       #820
+      010033F9H   LINE      ---      ---       #822
+      010033FFH   LINE      ---      ---       #823
+      010033FFH   LINE      ---      ---       #824
+      01003413H   LINE      ---      ---       #825
+      01003413H   LINE      ---      ---       #826
+      01003419H   LINE      ---      ---       #828
+      01003419H   LINE      ---      ---       #830
+      0100341FH   LINE      ---      ---       #831
+      01003422H   LINE      ---      ---       #832
+      01003422H   LINE      ---      ---       #833
+      01003424H   LINE      ---      ---       #834
+      01003426H   LINE      ---      ---       #836
+      01003426H   LINE      ---      ---       #837
+      01003429H   LINE      ---      ---       #838
+      01003429H   LINE      ---      ---       #840
+      0100342BH   LINE      ---      ---       #860
+      0100343FH   LINE      ---      ---       #861
+      0100343FH   LINE      ---      ---       #862
+      01003445H   LINE      ---      ---       #863
+      01003445H   LINE      ---      ---       #864
+      01003447H   LINE      ---      ---       #865
+      0100344EH   LINE      ---      ---       #866
+      0100344EH   LINE      ---      ---       #867
+      01003452H   LINE      ---      ---       #868
+      01003452H   LINE      ---      ---       #869
+      01003459H   LINE      ---      ---       #870
+      0100345BH   LINE      ---      ---       #872
+      0100345BH   LINE      ---      ---       #873
+      01003462H   LINE      ---      ---       #874
+      01003462H   LINE      ---      ---       #875
+      01003464H   LINE      ---      ---       #877
+      0100346BH   LINE      ---      ---       #878
+      01003471H   LINE      ---      ---       #879
+      01003474H   LINE      ---      ---       #880
+      01003474H   LINE      ---      ---       #881
+      01003474H   LINE      ---      ---       #883
+      0100347AH   LINE      ---      ---       #884
+      0100347AH   LINE      ---      ---       #885
+      01003482H   LINE      ---      ---       #886
+      01003482H   LINE      ---      ---       #887
+      01003488H   LINE      ---      ---       #888
+      0100348CH   LINE      ---      ---       #890
+      01003492H   LINE      ---      ---       #891
+      01003492H   LINE      ---      ---       #892
+      0100349DH   LINE      ---      ---       #893
+      0100349FH   LINE      ---      ---       #894
+      010034A5H   LINE      ---      ---       #895
+      010034A5H   LINE      ---      ---       #897
+      010034B0H   LINE      ---      ---       #898
+      010034B0H   LINE      ---      ---       #899
+      010034B0H   LINE      ---      ---       #900
+      010034B0H   LINE      ---      ---       #902
+      010034C8H   LINE      ---      ---       #903
+      010034C8H   LINE      ---      ---       #904
+      010034CEH   LINE      ---      ---       #905
+      010034D5H   LINE      ---      ---       #906
+      010034DBH   LINE      ---      ---       #907
+      010034DBH   LINE      ---      ---       #908
+      010034E2H   LINE      ---      ---       #909
       010034E2H   LINE      ---      ---       #910
-      010034E2H   LINE      ---      ---       #911
-      010034E2H   LINE      ---      ---       #912
-      010034E2H   LINE      ---      ---       #914
+      010034E2H   LINE      ---      ---       #913
+      010034E8H   LINE      ---      ---       #914
       010034E8H   LINE      ---      ---       #915
-      010034E8H   LINE      ---      ---       #916
-      010034EBH   LINE      ---      ---       #917
+      010034EBH   LINE      ---      ---       #916
+      010034EEH   LINE      ---      ---       #917
       010034EEH   LINE      ---      ---       #918
-      010034EEH   LINE      ---      ---       #919
-      010034F4H   LINE      ---      ---       #920
-      010034F4H   LINE      ---      ---       #921
-      010034F6H   LINE      ---      ---       #922
+      010034F0H   LINE      ---      ---       #919
+      010034F0H   LINE      ---      ---       #920
+      010034F0H   LINE      ---      ---       #923
       010034F6H   LINE      ---      ---       #924
-      010034FDH   LINE      ---      ---       #925
-      010034FDH   LINE      ---      ---       #926
-      01003503H   LINE      ---      ---       #927
-      01003504H   LINE      ---      ---       #928
-      0100350BH   LINE      ---      ---       #929
-      0100350BH   LINE      ---      ---       #930
-      01003511H   LINE      ---      ---       #931
-      01003511H   LINE      ---      ---       #932
-      01003511H   LINE      ---      ---       #933
-      01003511H   LINE      ---      ---       #934
+      010034F6H   LINE      ---      ---       #925
+      010034F9H   LINE      ---      ---       #926
+      010034FCH   LINE      ---      ---       #927
+      010034FCH   LINE      ---      ---       #928
+      01003502H   LINE      ---      ---       #929
+      01003502H   LINE      ---      ---       #930
+      01003507H   LINE      ---      ---       #931
+      01003507H   LINE      ---      ---       #932
+      01003507H   LINE      ---      ---       #933
+      01003507H   LINE      ---      ---       #935
+      0100350DH   LINE      ---      ---       #936
+      0100350DH   LINE      ---      ---       #937
+      01003510H   LINE      ---      ---       #938
+      01003513H   LINE      ---      ---       #939
+      01003513H   LINE      ---      ---       #940
+      01003519H   LINE      ---      ---       #941
+      01003519H   LINE      ---      ---       #942
+      0100351BH   LINE      ---      ---       #943
+      0100351BH   LINE      ---      ---       #945
+      01003522H   LINE      ---      ---       #946
+      01003522H   LINE      ---      ---       #947
+      01003528H   LINE      ---      ---       #948
+      01003529H   LINE      ---      ---       #949
+      01003530H   LINE      ---      ---       #950
+      01003530H   LINE      ---      ---       #951
+      01003536H   LINE      ---      ---       #952
+      01003536H   LINE      ---      ---       #953
+      01003536H   LINE      ---      ---       #954
+      01003536H   LINE      ---      ---       #955
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017E2H   BLOCK     CODE     ---       LVL=0
-      010017E2H   LINE      ---      ---       #948
-      010017E2H   LINE      ---      ---       #949
-      010017E2H   LINE      ---      ---       #950
+      010017E2H   LINE      ---      ---       #969
+      010017E2H   LINE      ---      ---       #970
+      010017E2H   LINE      ---      ---       #971
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001774H   BLOCK     CODE     ---       LVL=0
-      01001774H   LINE      ---      ---       #955
-      01001774H   LINE      ---      ---       #956
-      01001774H   LINE      ---      ---       #957
-      01001776H   LINE      ---      ---       #958
-      01001776H   LINE      ---      ---       #959
-      01001779H   LINE      ---      ---       #960
-      0100177BH   LINE      ---      ---       #961
-      0100177EH   LINE      ---      ---       #962
-      01001781H   LINE      ---      ---       #964
-      01001787H   LINE      ---      ---       #965
-      01001787H   LINE      ---      ---       #966
-      0100178AH   LINE      ---      ---       #967
-      0100178AH   LINE      ---      ---       #969
-      01001795H   LINE      ---      ---       #970
-      01001795H   LINE      ---      ---       #971
-      01001798H   LINE      ---      ---       #973
-      0100179BH   LINE      ---      ---       #974
-      0100179DH   LINE      ---      ---       #975
-      0100179FH   LINE      ---      ---       #976
-      0100179FH   LINE      ---      ---       #978
-      0100179FH   LINE      ---      ---       #979
-      010017C3H   LINE      ---      ---       #981
-      010017C3H   LINE      ---      ---       #982
-      010017C6H   LINE      ---      ---       #983
-      010017C8H   LINE      ---      ---       #984
-      010017C8H   LINE      ---      ---       #986
-      010017C8H   LINE      ---      ---       #987
-      010017CBH   LINE      ---      ---       #988
-      010017CDH   LINE      ---      ---       #989
-      010017CFH   LINE      ---      ---       #990
-      010017CFH   LINE      ---      ---       #991
-      010017CFH   LINE      ---      ---       #992
+      01001774H   LINE      ---      ---       #976
+      01001774H   LINE      ---      ---       #977
+      01001774H   LINE      ---      ---       #978
+      01001776H   LINE      ---      ---       #979
+      01001776H   LINE      ---      ---       #980
+      01001779H   LINE      ---      ---       #981
+      0100177BH   LINE      ---      ---       #982
+      0100177EH   LINE      ---      ---       #983
+      01001781H   LINE      ---      ---       #985
+      01001787H   LINE      ---      ---       #986
+      01001787H   LINE      ---      ---       #987
+      0100178AH   LINE      ---      ---       #988
+      0100178AH   LINE      ---      ---       #990
+      01001795H   LINE      ---      ---       #991
+      01001795H   LINE      ---      ---       #992
+      01001798H   LINE      ---      ---       #994
+      0100179BH   LINE      ---      ---       #995
+      0100179DH   LINE      ---      ---       #996
+      0100179FH   LINE      ---      ---       #997
+      0100179FH   LINE      ---      ---       #999
+      0100179FH   LINE      ---      ---       #1000
+      010017C3H   LINE      ---      ---       #1002
+      010017C3H   LINE      ---      ---       #1003
+      010017C6H   LINE      ---      ---       #1004
+      010017C8H   LINE      ---      ---       #1005
+      010017C8H   LINE      ---      ---       #1007
+      010017C8H   LINE      ---      ---       #1008
+      010017CBH   LINE      ---      ---       #1009
+      010017CDH   LINE      ---      ---       #1010
+      010017CFH   LINE      ---      ---       #1011
+      010017CFH   LINE      ---      ---       #1012
+      010017CFH   LINE      ---      ---       #1013
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       ADC
-      01003937H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
-      01003764H   PUBLIC    CODE     ---       YC_adc_check
-      01003642H   PUBLIC    CODE     ---       YC_adc_init
-
-      01003642H   BLOCK     CODE     ---       LVL=0
-      01003642H   LINE      ---      ---       #3
-      01003642H   LINE      ---      ---       #4
-      01003642H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003642H   LINE      ---      ---       #8
-      01003648H   LINE      ---      ---       #9
-      0100364BH   LINE      ---      ---       #21
-      0100364CH   LINE      ---      ---       #22
-      0100364CH   LINE      ---      ---       #23
-      0100365DH   LINE      ---      ---       #24
-      01003662H   LINE      ---      ---       #25
-      01003671H   LINE      ---      ---       #26
-      010036BFH   LINE      ---      ---       #27
-      0100370DH   LINE      ---      ---       #40
+      01003978H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
+      010037A5H   PUBLIC    CODE     ---       YC_adc_check
+      01003644H   PUBLIC    CODE     ---       YC_adc_init
+
+      01003644H   BLOCK     CODE     ---       LVL=0
+      01003644H   LINE      ---      ---       #3
+      01003644H   LINE      ---      ---       #4
+      01003644H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003644H   LINE      ---      ---       #8
+      0100364AH   LINE      ---      ---       #9
+      0100364DH   LINE      ---      ---       #12
+      0100364EH   LINE      ---      ---       #13
+      0100364EH   LINE      ---      ---       #14
+      0100365FH   LINE      ---      ---       #15
+      01003664H   LINE      ---      ---       #16
+      010036B2H   LINE      ---      ---       #17
+      01003700H   LINE      ---      ---       #18
+      0100374EH   LINE      ---      ---       #40
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003764H   BLOCK     CODE     ---       LVL=0
-      01003764H   LINE      ---      ---       #42
-      01003764H   LINE      ---      ---       #43
-      01003764H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003764H   LINE      ---      ---       #46
-      0100376EH   LINE      ---      ---       #48
-      0100377BH   LINE      ---      ---       #51
-      0100379BH   LINE      ---      ---       #52
-      010037A4H   LINE      ---      ---       #53
-      010037A6H   LINE      ---      ---       #54
-      010037ABH   LINE      ---      ---       #55
-      010037ABH   LINE      ---      ---       #56
-      010037E2H   LINE      ---      ---       #57
-      010037ECH   LINE      ---      ---       #58
-      01003809H   LINE      ---      ---       #60
-      01003828H   LINE      ---      ---       #61
-      0100382FH   LINE      ---      ---       #62
-      0100384EH   LINE      ---      ---       #63
-      01003856H   LINE      ---      ---       #65
-      010038B1H   LINE      ---      ---       #67
-      010038D0H   LINE      ---      ---       #68
-      010038D0H   LINE      ---      ---       #69
-      010038D6H   LINE      ---      ---       #70
-      010038D8H   LINE      ---      ---       #72
-      010038D8H   LINE      ---      ---       #73
-      010038F7H   LINE      ---      ---       #74
-      010038F7H   LINE      ---      ---       #75
-      010038FDH   LINE      ---      ---       #76
-      01003903H   LINE      ---      ---       #77
-      01003903H   LINE      ---      ---       #78
-      01003907H   LINE      ---      ---       #79
-      0100390BH   LINE      ---      ---       #80
-      0100390FH   LINE      ---      ---       #81
-      01003912H   LINE      ---      ---       #82
-      01003912H   LINE      ---      ---       #83
-      01003914H   LINE      ---      ---       #85
-      01003914H   LINE      ---      ---       #86
-      01003919H   LINE      ---      ---       #87
-      0100391FH   LINE      ---      ---       #88
-      0100391FH   LINE      ---      ---       #89
-      01003923H   LINE      ---      ---       #90
-      01003927H   LINE      ---      ---       #91
-      0100392BH   LINE      ---      ---       #92
-      0100392EH   LINE      ---      ---       #93
-      0100392EH   LINE      ---      ---       #94
-      0100392EH   LINE      ---      ---       #95
-      0100392EH   LINE      ---      ---       #97
-      01003936H   LINE      ---      ---       #99
+      010037A5H   BLOCK     CODE     ---       LVL=0
+      010037A5H   LINE      ---      ---       #42
+      010037A5H   LINE      ---      ---       #43
+      010037A5H   BLOCK     CODE     NEAR LAB  LVL=1
+      010037A5H   LINE      ---      ---       #46
+      010037AFH   LINE      ---      ---       #48
+      010037BCH   LINE      ---      ---       #51
+      010037DCH   LINE      ---      ---       #52
+      010037E5H   LINE      ---      ---       #53
+      010037E7H   LINE      ---      ---       #54
+      010037ECH   LINE      ---      ---       #55
+      010037ECH   LINE      ---      ---       #56
+      01003823H   LINE      ---      ---       #57
+      0100382DH   LINE      ---      ---       #58
+      0100384AH   LINE      ---      ---       #60
+      01003869H   LINE      ---      ---       #61
+      01003870H   LINE      ---      ---       #62
+      0100388FH   LINE      ---      ---       #63
+      01003897H   LINE      ---      ---       #65
+      010038F2H   LINE      ---      ---       #67
+      01003911H   LINE      ---      ---       #68
+      01003911H   LINE      ---      ---       #69
+      01003917H   LINE      ---      ---       #70
+      01003919H   LINE      ---      ---       #72
+      01003919H   LINE      ---      ---       #73
+      01003938H   LINE      ---      ---       #74
+      01003938H   LINE      ---      ---       #75
+      0100393EH   LINE      ---      ---       #76
+      01003944H   LINE      ---      ---       #77
+      01003944H   LINE      ---      ---       #78
+      01003948H   LINE      ---      ---       #79
+      0100394CH   LINE      ---      ---       #80
+      01003950H   LINE      ---      ---       #81
+      01003953H   LINE      ---      ---       #82
+      01003953H   LINE      ---      ---       #83
+      01003955H   LINE      ---      ---       #85
+      01003955H   LINE      ---      ---       #86
+      0100395AH   LINE      ---      ---       #87
+      01003960H   LINE      ---      ---       #88
+      01003960H   LINE      ---      ---       #89
+      01003964H   LINE      ---      ---       #90
+      01003968H   LINE      ---      ---       #91
+      0100396CH   LINE      ---      ---       #92
+      0100396FH   LINE      ---      ---       #93
+      0100396FH   LINE      ---      ---       #94
+      0100396FH   LINE      ---      ---       #95
+      0100396FH   LINE      ---      ---       #97
+      01003977H   LINE      ---      ---       #99
       02004ECFH   SYMBOL    XDATA    VOID      i
       02004ED0H   SYMBOL    XDATA    VOID      batValue
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003937H   BLOCK     CODE     ---       LVL=0
-      01003937H   LINE      ---      ---       #102
-      01003937H   LINE      ---      ---       #103
-      01003937H   LINE      ---      ---       #106
-      0100393DH   LINE      ---      ---       #107
-      0100393DH   LINE      ---      ---       #108
-      0100393FH   LINE      ---      ---       #109
-      01003942H   LINE      ---      ---       #110
-      01003942H   LINE      ---      ---       #111
-      01003945H   LINE      ---      ---       #112
-      01003948H   LINE      ---      ---       #113
-      01003948H   LINE      ---      ---       #114
-      01003948H   LINE      ---      ---       #116
+      01003978H   BLOCK     CODE     ---       LVL=0
+      01003978H   LINE      ---      ---       #102
+      01003978H   LINE      ---      ---       #103
+      01003978H   LINE      ---      ---       #106
+      0100397EH   LINE      ---      ---       #107
+      0100397EH   LINE      ---      ---       #108
+      01003980H   LINE      ---      ---       #109
+      01003983H   LINE      ---      ---       #110
+      01003983H   LINE      ---      ---       #111
+      01003986H   LINE      ---      ---       #112
+      01003989H   LINE      ---      ---       #113
+      01003989H   LINE      ---      ---       #114
+      01003989H   LINE      ---      ---       #116
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       RAM
@@ -3273,39 +3276,39 @@
       02000C4BH   PUBLIC    XDATA    ---       ipcReadBuff
       0200054FH   PUBLIC    XDATA    BYTE      ipcPinlen
       02000B7EH   PUBLIC    XDATA    BYTE      current_task
-      010039F3H   PUBLIC    CODE     ---       IPC_DealSingleStep
-      01003C59H   PUBLIC    CODE     ---       IPC_IsTxBuffEmpty
-      01003C4DH   PUBLIC    CODE     ---       IPC_AbandonLpm
+      01003A34H   PUBLIC    CODE     ---       IPC_DealSingleStep
+      01003C9AH   PUBLIC    CODE     ---       IPC_IsTxBuffEmpty
+      01003C8EH   PUBLIC    CODE     ---       IPC_AbandonLpm
       010017D2H   PUBLIC    CODE     ---       IPC_WaitLpm
       010017E8H   PUBLIC    CODE     ---       _IPC_Initialize
-      01003C47H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
-      01003C33H   PUBLIC    CODE     ---       _IPC_TxBleData
-      01003C2BH   PUBLIC    CODE     ---       _IPC_TxSppData
-      01003C23H   PUBLIC    CODE     ---       _IPC_Tx24GData
-      01003C3BH   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
-      01003BFCH   PUBLIC    CODE     ---       _IPC_TxData
+      01003C88H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
+      01003C74H   PUBLIC    CODE     ---       _IPC_TxBleData
+      01003C6CH   PUBLIC    CODE     ---       _IPC_TxSppData
+      01003C64H   PUBLIC    CODE     ---       _IPC_Tx24GData
+      01003C7CH   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
+      01003C3DH   PUBLIC    CODE     ---       _IPC_TxData
       0100085FH   PUBLIC    CODE     ---       _IPC_TxControlCmd
 
-      01003949H   BLOCK     CODE     ---       LVL=0
-      01003949H   LINE      ---      ---       #44
-      01003959H   LINE      ---      ---       #45
-      01003959H   LINE      ---      ---       #46
-      010039A2H   LINE      ---      ---       #47
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010039A3H   BLOCK     CODE     ---       LVL=0
-      010039A3H   LINE      ---      ---       #49
-      010039ADH   LINE      ---      ---       #50
-      010039ADH   BLOCK     CODE     NEAR LAB  LVL=1
-      010039ADH   LINE      ---      ---       #51
-      010039B5H   LINE      ---      ---       #52
-      010039BBH   LINE      ---      ---       #53
-      010039DAH   LINE      ---      ---       #54
-      010039E4H   LINE      ---      ---       #55
-      010039E8H   LINE      ---      ---       #56
-      010039E8H   LINE      ---      ---       #57
-      010039EAH   LINE      ---      ---       #58
-      010039F2H   LINE      ---      ---       #59
+      0100398AH   BLOCK     CODE     ---       LVL=0
+      0100398AH   LINE      ---      ---       #44
+      0100399AH   LINE      ---      ---       #45
+      0100399AH   LINE      ---      ---       #46
+      010039E3H   LINE      ---      ---       #47
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010039E4H   BLOCK     CODE     ---       LVL=0
+      010039E4H   LINE      ---      ---       #49
+      010039EEH   LINE      ---      ---       #50
+      010039EEH   BLOCK     CODE     NEAR LAB  LVL=1
+      010039EEH   LINE      ---      ---       #51
+      010039F6H   LINE      ---      ---       #52
+      010039FCH   LINE      ---      ---       #53
+      01003A1BH   LINE      ---      ---       #54
+      01003A25H   LINE      ---      ---       #55
+      01003A29H   LINE      ---      ---       #56
+      01003A29H   LINE      ---      ---       #57
+      01003A2BH   LINE      ---      ---       #58
+      01003A33H   LINE      ---      ---       #59
       00000006H   SYMBOL    DATA     VOID      src
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3339,49 +3342,49 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003BFCH   BLOCK     CODE     ---       LVL=0
-      01003BFCH   LINE      ---      ---       #83
-      01003C01H   LINE      ---      ---       #84
-      01003C01H   LINE      ---      ---       #85
-      01003C07H   LINE      ---      ---       #86
-      01003C13H   LINE      ---      ---       #87
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C3BH   BLOCK     CODE     ---       LVL=0
-      01003C3BH   LINE      ---      ---       #90
-      01003C3BH   LINE      ---      ---       #91
-      01003C3BH   LINE      ---      ---       #92
-      01003C41H   LINE      ---      ---       #93
-      01003C44H   LINE      ---      ---       #94
-      01003C46H   LINE      ---      ---       #95
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C23H   BLOCK     CODE     ---       LVL=0
-      01003C23H   LINE      ---      ---       #97
-      01003C23H   LINE      ---      ---       #98
-      01003C23H   LINE      ---      ---       #99
-      01003C29H   LINE      ---      ---       #100
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C2BH   BLOCK     CODE     ---       LVL=0
-      01003C2BH   LINE      ---      ---       #103
-      01003C2BH   LINE      ---      ---       #104
-      01003C2BH   LINE      ---      ---       #105
-      01003C31H   LINE      ---      ---       #106
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C33H   BLOCK     CODE     ---       LVL=0
-      01003C33H   LINE      ---      ---       #109
-      01003C33H   LINE      ---      ---       #110
-      01003C33H   LINE      ---      ---       #111
-      01003C39H   LINE      ---      ---       #112
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C47H   BLOCK     CODE     ---       LVL=0
-      01003C47H   LINE      ---      ---       #115
-      01003C47H   LINE      ---      ---       #116
-      01003C47H   LINE      ---      ---       #117
-      01003C4CH   LINE      ---      ---       #118
+      01003C3DH   BLOCK     CODE     ---       LVL=0
+      01003C3DH   LINE      ---      ---       #83
+      01003C42H   LINE      ---      ---       #84
+      01003C42H   LINE      ---      ---       #85
+      01003C48H   LINE      ---      ---       #86
+      01003C54H   LINE      ---      ---       #87
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003C7CH   BLOCK     CODE     ---       LVL=0
+      01003C7CH   LINE      ---      ---       #90
+      01003C7CH   LINE      ---      ---       #91
+      01003C7CH   LINE      ---      ---       #92
+      01003C82H   LINE      ---      ---       #93
+      01003C85H   LINE      ---      ---       #94
+      01003C87H   LINE      ---      ---       #95
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003C64H   BLOCK     CODE     ---       LVL=0
+      01003C64H   LINE      ---      ---       #97
+      01003C64H   LINE      ---      ---       #98
+      01003C64H   LINE      ---      ---       #99
+      01003C6AH   LINE      ---      ---       #100
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003C6CH   BLOCK     CODE     ---       LVL=0
+      01003C6CH   LINE      ---      ---       #103
+      01003C6CH   LINE      ---      ---       #104
+      01003C6CH   LINE      ---      ---       #105
+      01003C72H   LINE      ---      ---       #106
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003C74H   BLOCK     CODE     ---       LVL=0
+      01003C74H   LINE      ---      ---       #109
+      01003C74H   LINE      ---      ---       #110
+      01003C74H   LINE      ---      ---       #111
+      01003C7AH   LINE      ---      ---       #112
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003C88H   BLOCK     CODE     ---       LVL=0
+      01003C88H   LINE      ---      ---       #115
+      01003C88H   LINE      ---      ---       #116
+      01003C88H   LINE      ---      ---       #117
+      01003C8DH   LINE      ---      ---       #118
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017E8H   BLOCK     CODE     ---       LVL=0
@@ -3398,66 +3401,66 @@
       010017DBH   LINE      ---      ---       #129
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003C4DH   BLOCK     CODE     ---       LVL=0
-      01003C4DH   LINE      ---      ---       #132
-      01003C4DH   LINE      ---      ---       #133
-      01003C4DH   LINE      ---      ---       #134
-      01003C53H   LINE      ---      ---       #135
-      01003C58H   LINE      ---      ---       #136
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C59H   BLOCK     CODE     ---       LVL=0
-      01003C59H   LINE      ---      ---       #138
-      01003C59H   LINE      ---      ---       #139
-      01003C59H   LINE      ---      ---       #140
-      01003C6DH   LINE      ---      ---       #141
-      01003C6FH   LINE      ---      ---       #142
-      01003C70H   LINE      ---      ---       #143
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010039F3H   BLOCK     CODE     ---       LVL=0
-      010039F3H   LINE      ---      ---       #146
-      010039F3H   LINE      ---      ---       #147
-      010039F3H   BLOCK     CODE     NEAR LAB  LVL=1
-      010039F3H   LINE      ---      ---       #148
-      01003A05H   LINE      ---      ---       #149
-      01003A1BH   LINE      ---      ---       #150
-      01003A1BH   LINE      ---      ---       #151
-      01003A23H   LINE      ---      ---       #152
-      01003A34H   LINE      ---      ---       #153
-      01003A3EH   LINE      ---      ---       #154
-      01003A5DH   LINE      ---      ---       #155
-      01003A5FH   LINE      ---      ---       #156
-      01003A71H   LINE      ---      ---       #157
-      01003A7AH   LINE      ---      ---       #158
-      01003A90H   LINE      ---      ---       #159
-      01003AC8H   LINE      ---      ---       #160
-      01003ACAH   LINE      ---      ---       #161
-      01003ADCH   LINE      ---      ---       #162
-      01003AE5H   LINE      ---      ---       #163
-      01003AFBH   LINE      ---      ---       #164
-      01003B33H   LINE      ---      ---       #165
-      01003B35H   LINE      ---      ---       #166
-      01003B47H   LINE      ---      ---       #167
-      01003B50H   LINE      ---      ---       #168
-      01003B66H   LINE      ---      ---       #169
-      01003B9EH   LINE      ---      ---       #170
-      01003BA0H   LINE      ---      ---       #171
-      01003BA0H   LINE      ---      ---       #172
-      01003BA2H   LINE      ---      ---       #173
-      01003BA2H   LINE      ---      ---       #174
-      01003BA2H   LINE      ---      ---       #175
-      01003BB6H   LINE      ---      ---       #176
-      01003BC4H   LINE      ---      ---       #178
-      01003BC7H   LINE      ---      ---       #180
-      01003BD6H   LINE      ---      ---       #181
-      01003BD8H   LINE      ---      ---       #182
-      01003BE2H   LINE      ---      ---       #183
-      01003BF0H   LINE      ---      ---       #185
-      01003BF3H   LINE      ---      ---       #187
-      01003BF9H   LINE      ---      ---       #188
-      01003BFBH   LINE      ---      ---       #190
-      01003BA2H   SYMBOL    ---      ---       IPC_TIMERingleStep
+      01003C8EH   BLOCK     CODE     ---       LVL=0
+      01003C8EH   LINE      ---      ---       #132
+      01003C8EH   LINE      ---      ---       #133
+      01003C8EH   LINE      ---      ---       #134
+      01003C94H   LINE      ---      ---       #135
+      01003C99H   LINE      ---      ---       #136
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003C9AH   BLOCK     CODE     ---       LVL=0
+      01003C9AH   LINE      ---      ---       #138
+      01003C9AH   LINE      ---      ---       #139
+      01003C9AH   LINE      ---      ---       #140
+      01003CAEH   LINE      ---      ---       #141
+      01003CB0H   LINE      ---      ---       #142
+      01003CB1H   LINE      ---      ---       #143
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003A34H   BLOCK     CODE     ---       LVL=0
+      01003A34H   LINE      ---      ---       #146
+      01003A34H   LINE      ---      ---       #147
+      01003A34H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003A34H   LINE      ---      ---       #148
+      01003A46H   LINE      ---      ---       #149
+      01003A5CH   LINE      ---      ---       #150
+      01003A5CH   LINE      ---      ---       #151
+      01003A64H   LINE      ---      ---       #152
+      01003A75H   LINE      ---      ---       #153
+      01003A7FH   LINE      ---      ---       #154
+      01003A9EH   LINE      ---      ---       #155
+      01003AA0H   LINE      ---      ---       #156
+      01003AB2H   LINE      ---      ---       #157
+      01003ABBH   LINE      ---      ---       #158
+      01003AD1H   LINE      ---      ---       #159
+      01003B09H   LINE      ---      ---       #160
+      01003B0BH   LINE      ---      ---       #161
+      01003B1DH   LINE      ---      ---       #162
+      01003B26H   LINE      ---      ---       #163
+      01003B3CH   LINE      ---      ---       #164
+      01003B74H   LINE      ---      ---       #165
+      01003B76H   LINE      ---      ---       #166
+      01003B88H   LINE      ---      ---       #167
+      01003B91H   LINE      ---      ---       #168
+      01003BA7H   LINE      ---      ---       #169
+      01003BDFH   LINE      ---      ---       #170
+      01003BE1H   LINE      ---      ---       #171
+      01003BE1H   LINE      ---      ---       #172
+      01003BE3H   LINE      ---      ---       #173
+      01003BE3H   LINE      ---      ---       #174
+      01003BE3H   LINE      ---      ---       #175
+      01003BF7H   LINE      ---      ---       #176
+      01003C05H   LINE      ---      ---       #178
+      01003C08H   LINE      ---      ---       #180
+      01003C17H   LINE      ---      ---       #181
+      01003C19H   LINE      ---      ---       #182
+      01003C23H   LINE      ---      ---       #183
+      01003C31H   LINE      ---      ---       #185
+      01003C34H   LINE      ---      ---       #187
+      01003C3AH   LINE      ---      ---       #188
+      01003C3CH   LINE      ---      ---       #190
+      01003BE3H   SYMBOL    ---      ---       IPC_TIMERingleStep
       02004EF4H   SYMBOL    XDATA    VOID      pbuff
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3469,16 +3472,16 @@
       010020D6H   PUBLIC    CODE     ---       _xmemclear_ff
       01001564H   PUBLIC    CODE     ---       _xmemclear
       02004E9CH   PUBLIC    XDATA    BYTE      ?_dmemcpy?BYTE
-      01003C78H   PUBLIC    CODE     ---       _dmemcpy
+      01003CB9H   PUBLIC    CODE     ---       _dmemcpy
       02004EBFH   PUBLIC    XDATA    BYTE      ?_xmemcpy?BYTE
       010010D2H   PUBLIC    CODE     ---       _xmemcpy
-      01003C71H   PUBLIC    CODE     ---       YC_Ice_break
+      01003CB2H   PUBLIC    CODE     ---       YC_Ice_break
 
-      01003C71H   BLOCK     CODE     ---       LVL=0
-      01003C71H   LINE      ---      ---       #3
-      01003C71H   LINE      ---      ---       #4
-      01003C71H   LINE      ---      ---       #5
-      01003C77H   LINE      ---      ---       #7
+      01003CB2H   BLOCK     CODE     ---       LVL=0
+      01003CB2H   LINE      ---      ---       #3
+      01003CB2H   LINE      ---      ---       #4
+      01003CB2H   LINE      ---      ---       #5
+      01003CB8H   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       010010D2H   BLOCK     CODE     ---       LVL=0
@@ -3489,12 +3492,12 @@
       01001114H   LINE      ---      ---       #14
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003C78H   BLOCK     CODE     ---       LVL=0
-      01003C78H   LINE      ---      ---       #16
-      01003C83H   LINE      ---      ---       #17
-      01003C83H   LINE      ---      ---       #18
-      01003C91H   LINE      ---      ---       #19
-      01003CBBH   LINE      ---      ---       #21
+      01003CB9H   BLOCK     CODE     ---       LVL=0
+      01003CB9H   LINE      ---      ---       #16
+      01003CC4H   LINE      ---      ---       #17
+      01003CC4H   LINE      ---      ---       #18
+      01003CD2H   LINE      ---      ---       #19
+      01003CFCH   LINE      ---      ---       #21
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001564H   BLOCK     CODE     ---       LVL=0
@@ -3542,12 +3545,12 @@
       ---         MODULE    ---      ---       GPIO
       020000A3H   PUBLIC    XDATA    ---       YC_GPIOWakeupL
       020000A7H   PUBLIC    XDATA    ---       YC_GPIOWakeupH
-      01003382H   PUBLIC    CODE     ---       GPIO_fillpd
-      010032C6H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
-      010031E2H   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
-      01003CBCH   PUBLIC    CODE     ---       _GPIO_ClearWakeup
+      01003381H   PUBLIC    CODE     ---       GPIO_fillpd
+      010032C5H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
+      010031E1H   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
+      01003CFDH   PUBLIC    CODE     ---       _GPIO_ClearWakeup
       00000020H.7 PUBLIC    BIT      BIT       ?_GPIO_SetWakeup?BIT
-      010031F5H   PUBLIC    CODE     ---       _GPIO_SetWakeup
+      010031F4H   PUBLIC    CODE     ---       _GPIO_SetWakeup
       00000020H.6 PUBLIC    BIT      BIT       ?_GPIO_SetOutput?BIT
       01001DC3H   PUBLIC    CODE     ---       _GPIO_SetOutput
       00000020H.5 PUBLIC    BIT      BIT       ?_GPIO_SetInput?BIT
@@ -3560,7 +3563,7 @@
       01001DDFH   PUBLIC    CODE     ---       _GPIO_SetPu
       00000020H.1 PUBLIC    BIT      BIT       ?_GPIO_Setout?BIT
       01000FE9H   PUBLIC    CODE     ---       _GPIO_Setout
-      01003281H   PUBLIC    CODE     ---       _GPIO_GetInputStatus
+      01003280H   PUBLIC    CODE     ---       _GPIO_GetInputStatus
 
       01001E30H   BLOCK     CODE     ---       LVL=0
       01001E30H   LINE      ---      ---       #9
@@ -3580,25 +3583,25 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003287H   BLOCK     CODE     ---       LVL=0
-      01003287H   LINE      ---      ---       #26
-      01003289H   LINE      ---      ---       #27
-      01003289H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003289H   LINE      ---      ---       #28
-      0100328EH   LINE      ---      ---       #29
-      0100328FH   LINE      ---      ---       #31
-      01003293H   LINE      ---      ---       #32
-      0100329AH   LINE      ---      ---       #33
-      010032C5H   LINE      ---      ---       #35
+      01003286H   BLOCK     CODE     ---       LVL=0
+      01003286H   LINE      ---      ---       #26
+      01003288H   LINE      ---      ---       #27
+      01003288H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003288H   LINE      ---      ---       #28
+      0100328DH   LINE      ---      ---       #29
+      0100328EH   LINE      ---      ---       #31
+      01003292H   LINE      ---      ---       #32
+      01003299H   LINE      ---      ---       #33
+      010032C4H   LINE      ---      ---       #35
       02004F11H   SYMBOL    XDATA    VOID      queue
       00000006H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003281H   BLOCK     CODE     ---       LVL=0
-      01003281H   LINE      ---      ---       #37
-      01003281H   LINE      ---      ---       #38
-      01003281H   LINE      ---      ---       #39
+      01003280H   BLOCK     CODE     ---       LVL=0
+      01003280H   LINE      ---      ---       #37
+      01003280H   LINE      ---      ---       #38
+      01003280H   LINE      ---      ---       #39
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000FE9H   BLOCK     CODE     ---       LVL=0
@@ -3653,69 +3656,69 @@
       01001DDEH   LINE      ---      ---       #86
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010031F5H   BLOCK     CODE     ---       LVL=0
-      010031F5H   LINE      ---      ---       #88
-      010031F5H   LINE      ---      ---       #89
-      010031F5H   BLOCK     CODE     NEAR LAB  LVL=1
-      010031F5H   LINE      ---      ---       #92
-      010031FBH   LINE      ---      ---       #94
-      010031FFH   LINE      ---      ---       #95
-      01003206H   LINE      ---      ---       #96
-      01003209H   LINE      ---      ---       #97
-      0100322AH   LINE      ---      ---       #98
-      0100324BH   LINE      ---      ---       #99
-      0100324CH   LINE      ---      ---       #101
-      0100324CH   LINE      ---      ---       #102
-      0100326EH   LINE      ---      ---       #103
-      01003280H   LINE      ---      ---       #104
-      01003280H   LINE      ---      ---       #105
+      010031F4H   BLOCK     CODE     ---       LVL=0
+      010031F4H   LINE      ---      ---       #88
+      010031F4H   LINE      ---      ---       #89
+      010031F4H   BLOCK     CODE     NEAR LAB  LVL=1
+      010031F4H   LINE      ---      ---       #92
+      010031FAH   LINE      ---      ---       #94
+      010031FEH   LINE      ---      ---       #95
+      01003205H   LINE      ---      ---       #96
+      01003208H   LINE      ---      ---       #97
+      01003229H   LINE      ---      ---       #98
+      0100324AH   LINE      ---      ---       #99
+      0100324BH   LINE      ---      ---       #101
+      0100324BH   LINE      ---      ---       #102
+      0100326DH   LINE      ---      ---       #103
+      0100327FH   LINE      ---      ---       #104
+      0100327FH   LINE      ---      ---       #105
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003CBCH   BLOCK     CODE     ---       LVL=0
-      01003CBCH   LINE      ---      ---       #107
-      01003CBCH   LINE      ---      ---       #108
-      01003CBCH   BLOCK     CODE     NEAR LAB  LVL=1
-      01003CBCH   LINE      ---      ---       #111
-      01003CC0H   LINE      ---      ---       #113
-      01003CC4H   LINE      ---      ---       #114
-      01003CCBH   LINE      ---      ---       #115
-      01003CEDH   LINE      ---      ---       #116
-      01003CFAH   LINE      ---      ---       #117
+      01003CFDH   BLOCK     CODE     ---       LVL=0
+      01003CFDH   LINE      ---      ---       #107
+      01003CFDH   LINE      ---      ---       #108
+      01003CFDH   BLOCK     CODE     NEAR LAB  LVL=1
+      01003CFDH   LINE      ---      ---       #111
+      01003D01H   LINE      ---      ---       #113
+      01003D05H   LINE      ---      ---       #114
+      01003D0CH   LINE      ---      ---       #115
+      01003D2EH   LINE      ---      ---       #116
+      01003D3BH   LINE      ---      ---       #117
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      010031E2H   BLOCK     CODE     ---       LVL=0
-      010031E2H   LINE      ---      ---       #119
-      010031E7H   LINE      ---      ---       #120
-      010031E7H   BLOCK     CODE     NEAR LAB  LVL=1
-      010031E7H   LINE      ---      ---       #121
-      010031EBH   LINE      ---      ---       #122
+      010031E1H   BLOCK     CODE     ---       LVL=0
+      010031E1H   LINE      ---      ---       #119
+      010031E6H   LINE      ---      ---       #120
+      010031E6H   BLOCK     CODE     NEAR LAB  LVL=1
+      010031E6H   LINE      ---      ---       #121
+      010031EAH   LINE      ---      ---       #122
       00000021H.0 SYMBOL    BIT      VOID      st
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      010032C6H   BLOCK     CODE     ---       LVL=0
-      010032C6H   LINE      ---      ---       #125
-      010032CBH   LINE      ---      ---       #126
-      010032CBH   BLOCK     CODE     NEAR LAB  LVL=1
-      010032CBH   LINE      ---      ---       #127
-      010032D5H   LINE      ---      ---       #128
+      010032C5H   BLOCK     CODE     ---       LVL=0
+      010032C5H   LINE      ---      ---       #125
+      010032CAH   LINE      ---      ---       #126
+      010032CAH   BLOCK     CODE     NEAR LAB  LVL=1
+      010032CAH   LINE      ---      ---       #127
+      010032D4H   LINE      ---      ---       #128
       00000021H.1 SYMBOL    BIT      VOID      st
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003382H   BLOCK     CODE     ---       LVL=0
-      01003382H   LINE      ---      ---       #131
-      01003382H   LINE      ---      ---       #132
-      01003382H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003382H   LINE      ---      ---       #134
-      01003384H   LINE      ---      ---       #135
-      010033B5H   LINE      ---      ---       #136
+      01003381H   BLOCK     CODE     ---       LVL=0
+      01003381H   LINE      ---      ---       #131
+      01003381H   LINE      ---      ---       #132
+      01003381H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003381H   LINE      ---      ---       #134
+      01003383H   LINE      ---      ---       #135
+      010033B4H   LINE      ---      ---       #136
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3861,5 +3864,5 @@
       ---         MODULE    ---      ---       ?C_INIT
       01000626H   PUBLIC    CODE     ---       ?C_START
 
-Program Size: data=10.2 xdata=918 const=182 code=15429
+Program Size: data=10.2 xdata=918 const=182 code=15494
 LX51 RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
Index: c51/output/FW.SBR
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/eeprom.dat
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/eeprom.dat	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/eeprom.dat	(working copy)
@@ -8156,8 +8156,8 @@
 0e
 aa
 55
-fd
-3c
+3e
+3d
 02
 05
 df
@@ -9815,13 +9815,13 @@
 b3
 ff
 33
-b6
+d8
 00
 00
 00
 ff
 37
-0e
+4f
 00
 16
 08
@@ -9900,7 +9900,7 @@
 13
 27
 43
-e7
+e4
 00
 00
 00
@@ -10390,7 +10390,7 @@
 64
 12
 39
-49
+8a
 90
 4e
 bc
@@ -11000,7 +11000,7 @@
 e8
 12
 36
-0d
+0f
 7b
 01
 7a
@@ -11038,8 +11038,8 @@
 c3
 f0
 12
-35
-1b
+33
+b5
 7f
 0a
 f1
@@ -11098,10 +11098,10 @@
 bb
 12
 35
-fa
+fc
 12
 31
-20
+1f
 e4
 90
 4d
@@ -13482,7 +13482,7 @@
 fd
 12
 3c
-3b
+7c
 90
 4c
 c7
@@ -13525,7 +13525,7 @@
 fd
 12
 3c
-33
+74
 90
 4c
 c5
@@ -13632,7 +13632,7 @@
 fd
 12
 3c
-23
+64
 22
 90
 4e
@@ -14061,7 +14061,7 @@
 f0
 12
 3c
-59
+9a
 50
 25
 12
@@ -14165,8 +14165,8 @@
 f1
 e2
 12
-39
-f3
+3a
+34
 d1
 6f
 12
@@ -14174,7 +14174,7 @@
 b7
 12
 35
-3e
+40
 90
 4d
 7d
@@ -14197,7 +14197,7 @@
 e1
 12
 31
-4a
+49
 12
 1d
 a1
@@ -14243,12 +14243,12 @@
 05
 12
 3c
-4d
+8e
 80
 ae
 12
 31
-4a
+49
 f1
 d2
 80
@@ -14848,7 +14848,7 @@
 d2
 12
 35
-c8
+ca
 7b
 01
 7a
@@ -14984,7 +14984,7 @@
 86
 12
 3c
-78
+b9
 90
 0b
 83
@@ -16277,7 +16277,7 @@
 e7
 12
 32
-e2
+e1
 90
 4c
 e4
@@ -16294,14 +16294,14 @@
 f0
 12
 39
-37
+78
 d1
 bd
 91
 52
 12
 37
-1e
+5f
 90
 4c
 ca
@@ -16328,10 +16328,10 @@
 22
 12
 35
-fa
+fc
 12
 31
-20
+1f
 a1
 a1
 90
@@ -19747,33 +19747,37 @@
 4d
 e2
 e0
-70
+b4
+01
 05
 ee
 64
 02
 60
-1e
+21
 90
 4d
 e2
 e0
-70
+b4
+01
 06
 90
 4c
 c1
 e0
 60
-12
+14
 90
 4d
 e2
 e0
+64
+01
 60
 02
 e1
-09
+08
 90
 4c
 c1
@@ -19783,7 +19787,7 @@
 60
 02
 e1
-09
+08
 90
 4e
 ec
@@ -19796,10 +19800,10 @@
 40
 02
 e1
-09
+08
 90
 2d
-85
+89
 75
 f0
 03
@@ -19813,40 +19817,40 @@
 73
 02
 2d
-a9
+ad
 02
 2d
-b1
+b5
 02
 2d
-b9
+bd
 02
 2d
-f8
+fc
 02
 2e
-37
+3b
 02
 2e
-76
+7a
 02
 2e
-b5
+b9
 02
 2e
-bd
+c1
 02
 2e
-c5
+c9
 02
 2e
-cd
+d1
 02
 2e
-d5
+d9
 02
 2e
-dd
+e1
 90
 4e
 ed
@@ -19854,7 +19858,7 @@
 d6
 f0
 e1
-09
+08
 90
 4e
 ed
@@ -19862,7 +19866,7 @@
 d5
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -19903,7 +19907,7 @@
 7b
 04
 7d
-04
+01
 91
 ec
 90
@@ -19925,7 +19929,7 @@
 ed
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -19988,7 +19992,7 @@
 ed
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -20051,7 +20055,7 @@
 ed
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -20114,7 +20118,7 @@
 ed
 f0
 80
-54
+4f
 90
 4e
 ed
@@ -20122,7 +20126,7 @@
 f4
 f0
 80
-4c
+47
 90
 4e
 ed
@@ -20130,7 +20134,7 @@
 f2
 f0
 80
-44
+3f
 90
 4e
 ed
@@ -20138,7 +20142,7 @@
 f5
 f0
 80
-3c
+37
 90
 4e
 ed
@@ -20146,7 +20150,7 @@
 f6
 f0
 80
-34
+2f
 90
 4e
 ed
@@ -20154,7 +20158,7 @@
 f7
 f0
 80
-2c
+27
 90
 4c
 c1
@@ -20194,11 +20198,6 @@
 74
 da
 f0
-e4
-90
-4e
-ed
-f0
 90
 4d
 e2
@@ -20209,7 +20208,7 @@
 03
 02
 30
-fc
+fb
 90
 4e
 ec
@@ -20219,7 +20218,7 @@
 70
 02
 e1
-f8
+f7
 24
 ee
 60
@@ -20230,32 +20229,32 @@
 03
 02
 30
-4e
+4d
 14
 70
 03
 02
 30
-7a
+79
 14
 70
 03
 02
 30
-a6
+a5
 14
 70
 03
 02
 30
-d2
+d1
 24
 3e
 60
 03
 02
 30
-fc
+fb
 90
 4c
 c1
@@ -20346,7 +20345,7 @@
 f0
 02
 30
-fc
+fb
 90
 4c
 c1
@@ -20437,7 +20436,7 @@
 f0
 02
 30
-fc
+fb
 90
 4c
 c1
@@ -20523,7 +20522,7 @@
 ed
 f0
 01
-fc
+fb
 90
 4c
 c1
@@ -20567,7 +20566,7 @@
 4d
 f0
 01
-fc
+fb
 90
 4c
 c1
@@ -20744,7 +20743,7 @@
 a3
 f0
 31
-02
+01
 e4
 90
 4f
@@ -20865,7 +20864,7 @@
 80
 b0
 71
-82
+81
 90
 81
 1c
@@ -20883,31 +20882,31 @@
 e4
 ff
 31
-e2
+e1
 7f
 01
 31
-e2
+e1
 7f
 02
 31
-e2
+e1
 7f
 03
 31
-e2
+e1
 7f
 04
 31
-e2
+e1
 7f
 05
 31
-e2
+e1
 7f
 06
 31
-e2
+e1
 7f
 07
 80
@@ -20934,7 +20933,7 @@
 ef
 f0
 51
-81
+80
 92
 08
 90
@@ -20952,7 +20951,7 @@
 70
 02
 41
-80
+7f
 ef
 54
 07
@@ -21168,7 +21167,7 @@
 79
 74
 51
-87
+86
 92
 09
 90
@@ -21242,13 +21241,13 @@
 7f
 1c
 51
-c6
+c5
 80
 0f
 7f
 1c
 51
-c6
+c5
 80
 09
 90
@@ -21324,7 +21323,7 @@
 7f
 1c
 51
-c6
+c5
 90
 4c
 ef
@@ -21398,6 +21397,41 @@
 22
 90
 4c
+c3
+e0
+b4
+01
+07
+d2
+01
+7f
+1c
+02
+0f
+e9
+90
+4c
+c3
+e0
+b4
+02
+07
+d2
+01
+7f
+1c
+02
+0f
+e9
+d2
+01
+7f
+1c
+02
+0f
+e9
+90
+4c
 eb
 e0
 60
@@ -21470,15 +21504,15 @@
 e0
 60
 04
-b1
-1b
+71
+b5
 80
-4b
+4e
 12
 0f
 cb
 80
-46
+49
 90
 4c
 e9
@@ -21488,7 +21522,7 @@
 a3
 e0
 70
-3c
+3f
 90
 4c
 ef
@@ -21498,56 +21532,59 @@
 a3
 e0
 70
-32
-90
-4c
-d5
-e0
-b4
-01
-26
-c3
-90
-4c
-e4
-e0
-94
-1e
-90
-4c
-e3
-e0
-94
-00
-50
-10
+35
 90
 4c
 e2
 e0
-04
+60
+2f
+14
 f0
 e0
-30
-e1
-12
+ff
+c3
+94
+08
+50
+16
+ef
+30
+e1
+09
+d2
+01
 7f
 1f
-51
-c6
+12
+0f
+e9
 80
-0c
-e4
-90
-4c
-e2
-f0
+10
+c2
+01
+7f
+1f
+12
+0f
+e9
 80
-05
-e4
+07
+c2
+01
+7f
+1f
+12
+0f
+e9
 90
 4c
 e2
+e0
+70
+03
+74
+18
 f0
 90
 4d
@@ -21672,7 +21709,7 @@
 70
 02
 b1
-12
+37
 90
 4d
 d4
@@ -21755,41 +21792,6 @@
 22
 90
 4c
-c3
-e0
-b4
-01
-07
-d2
-01
-7f
-1c
-02
-0f
-e9
-90
-4c
-c3
-e0
-b4
-02
-07
-d2
-01
-7f
-1c
-02
-0f
-e9
-d2
-01
-7f
-1c
-02
-0f
-e9
-90
-4c
 e9
 e0
 70
@@ -21999,7 +22001,7 @@
 15
 90
 d1
-42
+44
 90
 4c
 ec
@@ -22071,7 +22073,7 @@
 f5
 83
 74
-51
+54
 f0
 a3
 f0
@@ -22082,15 +22084,78 @@
 ea
 90
 4c
-93
+91
+e0
+fe
+a3
 e0
 ff
+c3
+90
+4c
+94
+e0
+9f
+fd
+90
+4c
+93
+e0
+9e
+fc
+e4
+12
+02
+06
+7b
+52
+7a
+b8
+79
+9e
+78
+3f
+12
+00
+fb
+c0
+04
+c0
+05
+c0
+06
+c0
+07
+90
+4c
+91
+e0
+fc
 a3
 e0
+fd
+e4
+12
+02
+06
+d0
+03
+d0
+02
+d0
+01
+d0
+00
+12
+00
+0a
+12
+02
+3f
 90
 4c
 fc
-cf
+ee
 f0
 a3
 ef
@@ -22121,11 +22186,11 @@
 02
 06
 7b
-a4
+c3
 7a
-70
+f5
 79
-3d
+88
 78
 3f
 12
@@ -22199,11 +22264,11 @@
 02
 06
 7b
-1f
+ae
 7a
-85
+47
 79
-2b
+81
 78
 3f
 12
@@ -22360,7 +22425,7 @@
 03
 02
 39
-36
+77
 90
 4c
 95
@@ -22540,7 +22605,7 @@
 fb
 f0
 01
-b1
+f2
 90
 4c
 fc
@@ -22821,7 +22886,7 @@
 f0
 12
 37
-64
+a5
 22
 90
 4e
@@ -23032,7 +23097,7 @@
 70
 02
 61
-a2
+e3
 7e
 0c
 7f
@@ -23040,7 +23105,7 @@
 7d
 03
 31
-a3
+e4
 90
 4e
 f4
@@ -23100,7 +23165,7 @@
 05
 dd
 61
-a2
+e3
 90
 4e
 f4
@@ -23149,7 +23214,7 @@
 14
 fd
 31
-a3
+e4
 90
 4e
 f4
@@ -23207,7 +23272,7 @@
 05
 dd
 61
-a2
+e3
 90
 4e
 f4
@@ -23256,7 +23321,7 @@
 14
 fd
 31
-a3
+e4
 90
 4e
 f4
@@ -23363,7 +23428,7 @@
 14
 fd
 31
-a3
+e4
 90
 4e
 f4
@@ -23586,8 +23651,8 @@
 ed
 60
 02
-71
-fc
+91
+3d
 22
 90
 04
@@ -23769,8 +23834,8 @@
 5c
 f0
 22
-0a
-f3
+70
+d3
 aa
 55
 40
@@ -25443,7 +25508,7 @@
 00
 8f
 4c
-01
+02
 aa
 55
 01
@@ -25846,73 +25911,8 @@
 6c
 59
 50
-32
-dc
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+ad
+e4
 ff
 ff
 ff
@@ -32764,5 +32764,5 @@
 ff
 ff
 ff
-28
-9a
+eb
+ac
Index: c51/output/fw.hex
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/fw.hex	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/fw.hex	(working copy)
@@ -101,12 +101,12 @@
 :1006400054C025E060A840B8E493A3FAE493A3F86B
 :10065000E493A3C8C582C8CAC583CAF0A3C8C5822B
 :10066000C8CAC583CADFE9DEE780BE524E56FF0A1C
-:10067000CA000000FF1FB3FF33B6000000FF370EB3
+:10067000CA000000FF1FB3FF33D8000000FF374F50
 :10068000001608090A0B0C0D0E1415131119181A6F
 :100690001217FF000000E60000190915213D0000B7
 :1006A00000000000000000000000000000004F00FB
 :1006B00000E528312A4C5100003834302E455200D4
-:1006C0000037332F2D445000000000132743E7006C
+:1006C0000037332F2D445000000000132743E4006F
 :1006D00000000F1226420000001B161A1F3B0000EC
 :1006E00000060708203C2C00001D04141E3A00E3FD
 :1006F0007FE000000000000000100D182440000002
@@ -137,7 +137,7 @@
 :10088000017A4E79E27D03904EB9EBF0A3EAF0A332
 :10089000E9F0A3EDF0904B9CE0FFA3E0904EBDCFBC
 :1008A000F0A3EFF0904B9AE0FEA3E0FF904B9CE0AA
-:1008B000FCA3E0FD7B64123949904EBCE0FEEFC31F
+:1008B000FCA3E0FD7B6412398A904EBCE0FEEFC3DE
 :1008C0009E40E1904EBCE0FF14F0EF603F904EB9C7
 :1008D000E0FBA3E475F001120424A9F0FA1203B6B8
 :1008E000FF904EBDE475F00112042485F082F5837B
@@ -175,13 +175,13 @@
 :100AE0000A0D79130E26140EFD150B86270EC52947
 :100AF0000D3A2A0B152F0B7A300BBD310C29320B16
 :100B000015330EA0340EDE350BB5370B86390BBD11
-:100B10003C00000F41121FE812360D7B017A4C7920
+:100B10003C00000F41121FE812360F7B017A4C791E
 :100B2000C07D017C007FBD7E7F121970904CC0E0BB
 :100B3000D394034002E4F0904CC0E0904CC3F01218
-:100B4000351B7F0AF14B7B017A4C79F47D027C00E6
+:100B400033B57F0AF14B7B017A4C79F47D027C004E
 :100B50007FBE7E7F121970904CF4E0B4FF19A3E0C1
 :100B6000B4FF14904C93E0A3E0904CF4F0904C91BF
-:100B7000E0A3E0904CF5F00218BB1235FA123120D8
+:100B7000E0A3E0904CF5F00218BB1235FC12311FD7
 :100B8000E4904D02F022904CC3E0D394005002E177
 :100B900041E094044002E141E075F01FA424CFF944
 :100BA000744D35F0FA7B017D1F7C001220D6904CED
@@ -330,17 +330,17 @@
 :101490007E2FF582E4344EF583EEF00F80D31218E0
 :1014A00012EF7002A163904CECE06002A163904CDB
 :1014B000C9E0B40418904E7EE0B406037403F07BD8
-:1014C000017A4E797E904E7DE0FD123C3B904CC7F8
+:1014C000017A4E797E904E7DE0FD123C7C904CC7B7
 :1014D000E0FF6404600AEFB4031E904DD3E060188F
 :1014E000904E7EE0B406037403F07B017A4E797E61
-:1014F000904E7DE0FD123C33904CC5E06403706378
+:1014F000904E7DE0FD123C74904CC5E06403706337
 :10150000904E7EE0640170237404F0A3E0701490A8
 :101510004E81E0700EA3E0700AA3E07006904DDDEE
 :10152000F08032904DDD7401F0802A904E7EE0B460
 :1015300002197405F0A3E0700AA3E07006904DDD77
 :10154000F08012904DDD7401F0800A904E7EE0B480
 :1015500003037407F07B017A4E797E904E7DE0FDA7
-:10156000123C2322904EF7EBF0A3EAF0A3E9F0ED52
+:10156000123C6422904EF7EBF0A3EAF0A3E9F0ED11
 :101570001DAE0470011C4E6016904EF7E0FBA3E414
 :1015800075F001120424A9F0FAE41203FC80E022B1
 :101590007B017A4C79BF7D4D7C00B1647B017A4D33
@@ -366,19 +366,19 @@
 :1016D0004CF7F0904CFAE07007904CF67406F0224C
 :1016E000904CF67405F022904CF6E0B40615E490A8
 :1016F0004CF8F0904CF7F0A3E0FDE4FFD135E49016
-:101700004CF6F022904EE8E4F0A3F0A3F0123C591E
+:101700004CF6F022904EE8E4F0A3F0A3F0123C9ADD
 :10171000502512214D904EE8EBF0A3EAF0A3E9F03A
 :101720004A7007904CB604F0800E904EE8E0FBA3A0
 :10173000E0FAA3E0F9311522904D46E06035904D76
 :10174000DDE0702F904CC5E0B403287B017A487926
 :10175000007D097C00B164E4904E4BF09048000499
 :10176000F0904D46E0904802F07B017A4879007D88
-:1017700009916122F1E21239F3D16F121BB71235D0
-:101780003E904D7DE06003121E91900B7EE0146050
-:101790000E24FE70E112314A121DA1F1D280FE909A
+:1017700009916122F1E2123A34D16F121BB712358E
+:1017800040904D7DE06003121E91900B7EE014604E
+:101790000E24FE70E1123149121DA1F1D280FE909B
 :1017A0004CEBE0701E904CEDE07018904CE5E07052
 :1017B00012904CE8E0700C904DE2E07006904CFA0C
-:1017C000E06005123C4D80AE12314AF1D280A78014
+:1017C000E06005123C8E80AE123149F1D280A780D4
 :1017D000A522E4900B7FF0900B7EF07F01020F4B6F
 :1017E00080927B017A4E795678687C4E7D017E002E
 :1017F0007F12020390904CC9E06404600F904CC7C4
@@ -416,7 +416,7 @@
 :1019F00007908090E04401F0908006E04404F051AC
 :101A000066904ED6E0A3E0FAA3E0AE02FF7B017A37
 :101A10000B7983904ED4E0A3E0904EC4F00210D234
-:101A20001235C87B017A4C79F47D027C007FBE7E42
+:101A20001235CA7B017A4C79F47D027C007FBE7E40
 :101A30007F3170904CF4E004F0A3E004F0904CF49B
 :101A4000E09044FAF0904CF5E09044FBF0904DD0DB
 :101A5000E09044FCF0904DD1E09044FDF0904DD2E8
@@ -424,7 +424,7 @@
 :101A7000B2EEF0A3EFF0904EB6EBF0A3EAF0A3E9DC
 :101A8000F0904EB4ECF0A3EDF0A3E0F9A3E0FAA3DC
 :101A9000E0904E9FC9F0A3EAF0A3E9F0A3ECF0A315
-:101AA000EDF07B017A0B7986123C78900B8374A061
+:101AA000EDF07B017A0B7986123CB9900B8374A020
 :101AB000F0904EB2E0FFA3E0900B84CFF0A3EFF0E4
 :101AC000904EB5E02403FD904EB4E03400FCEDFAF6
 :101AD000ECFFEAFEEF908098EEF0A3EFF07A0B793E
@@ -505,10 +505,10 @@
 :101F80000111C3904CE4E09458904CE3E09402407B
 :101F900021C191C3904CE4E09414904CE3E0940090
 :101FA0004010904DE5E06007E4F07F0E12085F12EC
-:101FB0000F4222F1E71232E2904CE4E004F07006A6
-:101FC000904CE3E004F0123937D1BD915212371E24
+:101FB0000F4222F1E71232E1904CE4E004F07006A7
+:101FC000904CE3E004F0123978D1BD915212375FA2
 :101FD000904CCAE064026007904CC8E0B40207E489
-:101FE000904CE3F0A3F022221235FA123120A1A185
+:101FE000904CE3F0A3F022221235FC12311FA1A184
 :101FF000904CC3E014904F0AF0E4904DDEF0904F07
 :102000000AE0FD7F02120FFB904F0AE0FF603C9058
 :102010004DEEE064027034EF75F01FA424EFF97404
@@ -722,256 +722,260 @@
 :102D100022904EECEDF0904EEBEFF0E4904EEDF0A3
 :102D2000EF30E005E4904CFAF0904EECE0FFA3F0B9
 :102D3000904CC1E0FE700AEFB4E406904EED74E7EB
-:102D4000F0904DE2E07005EE6402601E904DE2E00E
-:102D50007006904CC1E06012904DE2E06002E10923
-:102D6000904CC1E064016002E109904EECE024C6A1
-:102D7000B40C004002E109902D8575F003A4C583D1
-:102D800025F0C58373022DA9022DB1022DB9022DA4
-:102D9000F8022E37022E76022EB5022EBD022EC567
-:102DA000022ECD022ED5022EDD904EED74D6F0E12E
-:102DB00009904EED74D5F0E109904CC1E0701A9085
-:102DC0004EEBE0FF7B047D0891EC904EEBE030E0B1
-:102DD00020904CFA740AF08018904EEBE0FF7B04D0
-:102DE0007D0491EC904EEBE030E006904CFA740AD2
-:102DF000F0E4904EEDF0E109904CC1E0701A904E75
-:102E0000EBE0FF7B067D0891EC904EEBE030E0209C
-:102E1000904CFA740AF08018904EEBE0FF7B067D30
-:102E20000191EC904EEBE030E006904CFA740AF021
-:102E3000E4904EEDF0E109904CC1E0701A904EEB39
-:102E4000E0FF7B197D0891EC904EEBE030E02090A4
-:102E50004CFA740AF08018904EEBE0FF7B197D016C
-:102E600091EC904EEBE030E006904CFA740AF0E4FE
-:102E7000904EEDF0E109904CC1E0701A904EEBE0FD
-:102E8000FF7B1B7D0891EC904EEBE030E020904CF6
-:102E9000FA740AF08018904EEBE0FF7B1B7D0191E5
-:102EA000EC904EEBE030E006904CFA740AF0E490BF
-:102EB0004EEDF08054904EED74F4F0804C904EED59
-:102EC00074F2F08044904EED74F5F0803C904EED3D
-:102ED00074F6F08034904EED74F7F0802C904CC175
-:102EE000E0B4021A904EEBE0FF7B0F7D0891EC906E
-:102EF0004EEBE030E00E904CFA740AF08006904EF3
-:102F0000ED74DAF0E4904EEDF0904DE2E064016093
-:102F1000030230FC904EECE024F87002E1F824EE5D
-:102F2000607B24CB700302304E14700302307A149D
-:102F300070030230A61470030230D2243E600302F4
-:102F400030FC904CC1E0FF64016037904CC3E0FE60
-:102F50006003B4FE08904CBF7402F08025EED39459
-:102F600003501FEEC394014019904CC3E075F01F4D
-:102F7000A424ECF582E4344DF583EFF0904CBF745B
-:102F800003F0904EEBE030E006904CE8740CF090CB
-:102F90004CC17401F0E4904EEDF00230FC904CC155
-:102FA000E0FF64026037904CC3E0FE6003B4FE08AB
-:102FB000904CBF7402F08025EED39403501FEEC3F3
-:102FC00094014019904CC3E075F01FA424ECF582E5
-:102FD000E4344DF583EFF0904CBF7403F0904EEB6A
-:102FE000E030E006904CE8740CF0904CC17402F0B4
-:102FF000E4904EEDF00230FC904CC1E0FF60379061
-:103000004CC3E0FE6003B4FE08904CBF7402F08035
-:1030100025EED39403501FEEC394014019904CC386
-:10302000E075F01FA424ECF582E4344DF583EFF055
-:10303000904CBF7403F0904EEBE030E006904CE80B
-:10304000740CF0E4904CC1F0904EEDF001FC904C0B
-:10305000C1E0701E904EEBE0FF7B4F7D08122CEC20
-:10306000904EEBE030E006904CFA740AF0E4904E9B
-:10307000EDF0904EED744DF001FC904CC1E0701EEF
-:10308000904EEBE0FF7B507D08122CEC904EEBE075
-:1030900030E006904CFA740AF0E4904EEDF0904E59
-:1030A000ED744AF08056904CC1E0701E904EEBE0FB
-:1030B000FF7B517D08122CEC904EEBE030E0069047
-:1030C0004CFA740AF0E4904EEDF0904EED744EF030
-:1030D000802A904CC1E0701E904EEBE0FF7B527D49
-:1030E00008122CEC904EEBE030E006904CFA740A9B
-:1030F000F0E4904EEDF0904EED744BF0904EEDE01C
-:10310000FF22E4904F0CF0F0904F0CE0FFC39408C6
-:10311000500DC205121E01904F0CE004F080E92210
-:10312000908080E4F0A3F0A3F03102E4904F0DF022
-:10313000F0904F0DE090068193FF600DC205121EC6
-:1031400001904F0DE004F080E822E4FF904F0EF074
-:10315000FEFDEF900681936049EF93FD1313135426
-:103160001FFEED5407FD7401A805088002C333D883
-:10317000FCFDEE2478FBE434808B82F583E0FCEDEB
-:10318000F4FBEC5BF0EE2470F582E43480F583E030
-:103190004DF0EE2474F582E43480F583E05BF00FAB
-:1031A00080B0718290811CE0904F0EF0904DDCE079
-:1031B0006020E4FF31E27F0131E27F0231E27F03F0
-:1031C00031E27F0431E27F0531E27F0631E27F07A1
-:1031D0008010904F0EE0FF9000A3F0EFF49000A756
-:1031E000F022904F12EFF051819208904F12E0FFC1
-:1031F000A208B39207EFF470024180EF5407FEEF8C
-:103200001313135403FF30074324A3F582E434005F
-:10321000F583C083C082E0FD7401A806088002C364
-:1032200033D8FCF45DD082D083F074A72FF582E40C
-:103230003400F583C083C082E0FF7401A8060880D3
-:1032400002C333D8FC4FD082D083F02274A32FF571
-:1032500082E43400F583C083C082E0FD7401A806D7
-:10326000088002C333D8FCFC4DD082D083F074A711
-:103270002FF582E43400F583E0FFECF4FEEF5EF01E
-:10328000227B017A81791CAD07E4904F11F0FEEFAB
-:103290005407F0EF1313135403FEF58275830012E5
-:1032A00003CFFD3395E0FC904F11E0FF74017E00E9
-:1032B000A807088005C333CE33CED8F9FFEE5CFEF5
-:1032C000EF5D4E24FF22904F13EFF07B017A80795F
-:1032D0007451879209904F13E0FFA209B392010243
-:1032E0000FE9904CE9E07002A3E06060E4904CE3E9
-:1032F000F0A3F0904CFEF0904CEAE024FFF0904CEC
-:10330000E9E034FFF0904CCCE064016018E4904CAC
-:10331000E8F0904CC3E0B401067F1C51C6800F7FDB
-:103320001C51C68009904CE8E07003120FCB904C02
-:10333000E9E07002A3E07014904CC4E0904CC3F03C
-:10334000904CC0F07F0D12091C120F42904CEFE020
-:103350007002A3E0602BE4904CE3F0A3F0904CF0FB
-:10336000E024FFF0904CEFE034FFF07F1C51C6905A
-:103370004CEFE07002A3E070087F0A120F4B120FAF
-:103380004222E4FFEFFD7C002478FBEC34808B824A
-:10339000F583E0FEED2470FDEC34808D82F583E052
-:1033A0004EF4FEEF247CFDEC34808D82F583EEF04C
-:1033B0000FEFB404CF22904CEBE0600214F0904C7D
-:1033C000F1E0600214F0904CFAE0600B14F0E07051
-:1033D00006904CF67406F0904CE5E0602C904CEFB3
-:1033E000E07002A3E0700A904CE9E07002A3E06094
-:1033F00006E4904CE5F022904CE5E014F0E0600427
-:10340000B11B804B120FCB8046904CE9E07002A3B9
-:10341000E0703C904CEFE07002A3E07032904CD52D
-:10342000E0B40126C3904CE4E0941E904CE3E09499
-:10343000005010904CE2E004F0E030E1127F1F51A8
-:10344000C6800CE4904CE2F08005E4904CE2F090F1
-:103450004DDCE07036904DDDE06401702E904CE361
-:10346000F0A3F0904DDDF0904E4CE0600D7B017AC2
-:103470004E794C7D031214618011904800E0600B7E
-:103480007B017A4879007D09121461904CE8E06074
-:103490002CA3E07002A3E07024904CEFE07002A334
-:1034A000E0701A904CE8E014F0D2017F1D120FE991
-:1034B000904CE8E07007C2017F1D120FE9904DD9D2
-:1034C000E06008E014F0E07002B112904DD4E060CA
-:1034D00011E014F0E0700B904D3DE070057F1B1281
-:1034E000085F904DE6E06029E014F0E07023904D15
-:1034F00046E06002E4F0904CC7E0B4040790421349
-:10350000740CF022904CC9E0B40406904213743A53
-:10351000F0229080107401F080FE22904CC3E0B441
-:103520000107D2017F1C020FE9904CC3E0B40207EF
-:10353000D2017F1C020FE9D2017F1C020FE9904CDF
-:10354000E9E07002A3E07079904CEFE07002A3E034
-:10355000706F904CD5E0B40205120F42802B904C56
-:10356000D5E0B40114904CF9E0701E904CE2741850
-:10357000F0904CF97401F08010904CF9E0B401091E
-:10358000E4F0904CE2F0120FCB1217F5EF602BC372
-:10359000904CE4E0940C904CE3E094005015904C77
-:1035A000B7E030E107D2017F1E020FE9C2017F1EA2
-:1035B000020FE9C2017F1E020FE9C2017F1E020F46
-:1035C000E9C2017F1E020FE9904CC3E0FFB4021371
-:1035D00090441C7433F09043FEF0904532F09043D9
-:1035E000EFF022EFB4011290441C7435F09043FECA
-:1035F000F0904532F09043EFF022908091740DF0FE
-:10360000A304F0A3F0A3F0A3F0A314F022121590EA
-:10361000D142904CEC7401F0904CE5741EF0E490B3
-:103620004CF2F0904D0B74FFF09044FCE0904DD0C4
-:10363000F09044FDE0904DD1F09044FEE0904DD2EA
-:10364000F022904CD37405F0E4A3F0FFEF25E024C2
-:10365000D6F582E4344CF5837451F0A3F00FEFB447
-:1036600004EA904C93E0FFA3E0904CFCCFF0A3EF72
-:10367000F0904C91E0FEA3E0FFC3904C94E09FFDDE
-:10368000904C93E09EFCE41202067BA47A70793D94
-:10369000783F1200FBC004C005C006C007904C91E3
-:1036A000E0FCA3E0FDE4120206D003D002D001D07A
-:1036B0000012000A12023F904CDEEEF0A3EFF090F1
-:1036C0004C91E0FEA3E0FFC3904C94E09FFD904C32
-:1036D00093E09EFCE41202067B1F7A85792B783FEB
-:1036E0001200FBC004C005C006C007904C91E0FC6E
-:1036F000A3E0FDE4120206D003D002D001D00012F4
-:10370000000A12023F904CE0EEF0A3EFF022904F3F
-:1037100004EDF09000011203CF904F05F022904D80
-:10372000ECE0603FE014F0E07039904CEEE0B4055E
-:10373000329047F5E020E32BE4904DD4F0904CE933
-:103740007404F0A374B0F0E4904CEFF0A3F0904E4A
-:1037500055F0904DD3F0121A207F0D12085FE490BF
-:103760004CEEF022904ED012058200000000904CEA
-:1037700095E07002A3E07003023936904C95E0FEAC
-:10378000A3E0FF904CD4E0FD04F0ED25E024D6F555
-:1037900082E4344CF583EEF0A3EFF0904CD4E0C318
-:1037A00094044002E4F0E4904ECFF0904ED0E0F864
-:1037B000A3E0F9A3E0FAA3E0FB904ECFE025E024DC
-:1037C000D6F582E4344CF583E0FEA3E0FFE4FCFD93
-:1037D000EB2FFFEA3EFEED39FDEC38FC904ED012A7
-:1037E0000576904ECFE004F0E0B404BF904ED0E0F8
-:1037F000FCA3E0FDA3E0FEA3E0FFE47B04FAF9F8FC
-:103800001204C5904ED0120576904CE0E0FEA3E085
-:10381000FFE4FCFD904ED0E0F8A3E0F9A3E0FAA3AA
-:10382000E0FBD31205655007E4904CFBF001B1902A
-:103830004CFCE0FEA3E0FFE4FCFD904ED0E0F8A3DA
-:10384000E0F9A3E0FAA3E0FBC31205654008904C41
-:10385000FB7464F0805B904CE0E0FEA3E0FFFBAA09
-:1038600006E4904ED0E0FCA3E0FDA3E0FEA3E0C39D
-:103870009BFFEE9AFEED9400FDEC9400FCE47B646B
-:10388000FAF9F812043AC006C007904CE0E0FEA333
-:10389000E0FFC3904CFDE09FFF904CFCE09EFEAB30
-:1038A00007FAE4F9F8D007D0061204C5904CFBEFF4
-:1038B000F0904CE0E0FEA3E0FFE4FCFD904ED0E091
-:1038C000F8A3E0F9A3E0FAA3E0FBC31205655008F2
-:1038D000904CD57402F08056904CDEE0FEA3E0FFE1
-:1038E000E4FCFD904ED0E0F8A3E0F9A3E0FAA3E0F9
-:1038F000FBC3120565501D904CD57401F0904D022C
-:10390000E0702B904D40F0A37448F0A37412F0E4E3
-:10391000A3F0801AE4904CD5F0904D02E0700F9027
-:103920004D40F0A37448F0A3745DF0E4A3F0904C14
-:10393000D5E0904D01F022904CD3E0600B14F0E004
-:1039400070067405F012376422904EDDEEF0A3EF9E
-:10395000F0904EDFECF0A3EDF0904EDFE0FEA3E040
-:10396000FFD3904EDEE09F904EDDE09E4016904EDD
-:10397000DFE0FEA3E0FF904EDEE09FFF904EDDE033
-:103980009EFE801E904EDDE0FEA3E0FFC3904EE061
-:10399000E09FFF904EDFE09EFEAD03C3EB9FFFE490
-:1039A0009EFE22904F06EEF0A3EFF0A905904B9EED
-:1039B000E0FEA3E0FFAD0119ED602F0FEFAC067044
-:1039C000010E14F5828C83E0FD904F06E475F00142
-:1039D00012042485F082F583EDF0AD07AC06BC4BF4
-:1039E000D4BD9AD17E4B7F3680CB904B9EEEF0A318
-:1039F000EFF0227A0C794B904EF47401F0A3740C22
-:103A0000F0A3744BF0904BA0E0FEA3E0FF904B9E20
-:103A1000E06E7003A3E06F700261A27E0C7F4B7DAD
-:103A20000331A3904EF4E0FBA3E0FAA3E0F9120304
-:103A3000B6B4022B904EF5E475F00212040E904ECF
-:103A4000F4E0FBA3E0FAA3E0F91203B6FF904E689E
-:103A5000E0A3E0FAA3E0F5828A831205DD61A2907B
-:103A60004EF4E0FBA3E0FAA3E0F91203B66404709D
-:103A700059904EF575F00112040E7E0C7F4E904E5B
-:103A8000F4E0FBA3E0FAA3E0F91203B614FD31A3BE
-:103A9000904EF4E0FBA3E0FAA3E02401F9E43AFA43
-:103AA000C002C001904EF4E0A3E0FAA3E0F91203D3
-:103AB000B6FD7C00904E6BE0A3E0FAA3E0F5828AAD
-:103AC00083D001D0021205DD61A2904EF4E0FBA389
-:103AD000E0FAA3E0F91203B664057059904EF5754B
-:103AE000F00112040E7E0C7F4E904EF4E0FBA3E03A
-:103AF000FAA3E0F91203B614FD31A3904EF4E0FBF3
-:103B0000A3E0FAA3E02401F9E43AFAC002C001906C
-:103B10004EF4E0A3E0FAA3E0F91203B6FD7C0090B6
-:103B20004E74E0A3E0FAA3E0F5828A83D001D002CC
-:103B30001205DD806D904EF4E0FBA3E0FAA3E0F9FE
-:103B40001203B664037059904EF575F00112040E1D
-:103B50007E0C7F4E904EF4E0FBA3E0FAA3E0F91256
-:103B600003B614FD31A3904EF4E0FBA3E0FAA3E00A
-:103B70002401F9E43AFAC002C001904EF4E0A3E057
-:103B8000FAA3E0F91203B6FD7C00904E77E0A3E0C3
-:103B9000FAA3E0F5828A83D001D0021205DD80020B
-:103BA00080FE904BA5E0FEA3E0FF904C5EE06E70BF
-:103BB00003A3E06F6022904E6EE0FBA3E0FAA3E067
-:103BC000F94A60371205D9904BA5E0FFA3E0904C6D
-:103BD0005ECFF0A3EFF080CA904C8DE0FFA3E06FC2
-:103BE0006019904E71E0FBA3E0FAA3E0F94A600B84
-:103BF0001205D9904C8DE0A3F080DD22904F10ED9E
-:103C0000F0E0FD900BE8F07E0B7FE9904EC4EDF004
-:103C10001210D27B017A0B79E7904F10E02402FD5D
-:103C2000020887900BE77406F080D1900BE77404CC
-:103C3000F080C9900BE77405F080C1900BE7740326
-:103C4000F0ED600271FC22900446E0FF22900B7FB1
-:103C50007401F0E4900B7EF022904B9CE0FEA3E018
-:103C6000FF904B9AE0B50607A3E0B50702D322C345
-:103C7000229082807401F022904E9CEBF0A3EAF037
-:103C8000A3E9F0904EA274FFF5F012042445F06011
-:103C90002A904E9FE0FBA3E475F001120424A9F0E2
-:103CA000FA1203B6FF904E9CE0FBA3E475F00112FC
-:103CB0000424A9F0FAEF1203FC80C822EFF4603A62
-:103CC000EF5407FEEF1313135403FF24A3F582E40C
-:103CD0003400F583C083C082E0FD7401A80608802B
-:103CE00002C333D8FCF4FC5DD082D083F074A72FDC
-:0B3CF000F582E43400F583E05CF02274
+:102D4000F0904DE2E0B40105EE64026021904DE2A6
+:102D5000E0B40106904CC1E06014904DE2E06401E3
+:102D60006002E108904CC1E064016002E108904E0D
+:102D7000ECE024C6B40C004002E108902D8975F007
+:102D800003A4C58325F0C58373022DAD022DB502C2
+:102D90002DBD022DFC022E3B022E7A022EB9022EF0
+:102DA000C1022EC9022ED1022ED9022EE1904EED83
+:102DB00074D6F0E108904EED74D5F0E108904CC166
+:102DC000E0701A904EEBE0FF7B047D0891EC904E92
+:102DD000EBE030E020904CFA740AF08018904EEB53
+:102DE000E0FF7B047D0191EC904EEBE030E006903B
+:102DF0004CFA740AF0E4904EEDF0E108904CC1E01A
+:102E0000701A904EEBE0FF7B067D0891EC904EEB44
+:102E1000E030E020904CFA740AF08018904EEBE01D
+:102E2000FF7B067D0191EC904EEBE030E006904C8C
+:102E3000FA740AF0E4904EEDF0E108904CC1E070B5
+:102E40001A904EEBE0FF7B197D0891EC904EEBE081
+:102E500030E020904CFA740AF08018904EEBE0FFBE
+:102E60007B197D0191EC904EEBE030E006904CFA3E
+:102E7000740AF0E4904EEDF0E108904CC1E0701A55
+:102E8000904EEBE0FF7B1B7D0891EC904EEBE03029
+:102E9000E020904CFA740AF08018904EEBE0FF7B33
+:102EA0001B7D0191EC904EEBE030E006904CFA7403
+:102EB0000AF0E4904EEDF0804F904EED74F4F08007
+:102EC00047904EED74F2F0803F904EED74F5F08037
+:102ED00037904EED74F6F0802F904EED74F7F08041
+:102EE00027904CC1E0B4021A904EEBE0FF7B0F7DBF
+:102EF0000891EC904EEBE030E00E904CFA740AF042
+:102F00008006904EED74DAF0904DE2E064016003CB
+:102F10000230FB904EECE024F87002E1F724EE6002
+:102F20007B24CB700302304D14700302307914708F
+:102F3000030230A51470030230D1243E6003023036
+:102F4000FB904CC1E0FF64016037904CC3E0FE6031
+:102F500003B4FE08904CBF7402F08025EED39403B6
+:102F6000501FEEC394014019904CC3E075F01FA4AC
+:102F700024ECF582E4344DF583EFF0904CBF7403FC
+:102F8000F0904EEBE030E006904CE8740CF0904C82
+:102F9000C17401F0E4904EEDF00230FB904CC1E0C2
+:102FA000FF64026037904CC3E0FE6003B4FE0890FB
+:102FB0004CBF7402F08025EED39403501FEEC394EF
+:102FC000014019904CC3E075F01FA424ECF582E495
+:102FD000344DF583EFF0904CBF7403F0904EEBE06E
+:102FE00030E006904CE8740CF0904CC17402F0E4B0
+:102FF000904EEDF00230FB904CC1E0FF6037904CFA
+:10300000C3E0FE6003B4FE08904CBF7402F080255C
+:10301000EED39403501FEEC394014019904CC3E0CB
+:1030200075F01FA424ECF582E4344DF583EFF090A5
+:103030004CBF7403F0904EEBE030E006904CE87427
+:103040000CF0E4904CC1F0904EEDF001FB904CC1BF
+:10305000E0701E904EEBE0FF7B4F7D08122CEC9051
+:103060004EEBE030E006904CFA740AF0E4904EED3E
+:10307000F0904EED744DF001FB904CC1E0701E904D
+:103080004EEBE0FF7B507D08122CEC904EEBE030D5
+:10309000E006904CFA740AF0E4904EEDF0904EED9C
+:1030A000744AF08056904CC1E0701E904EEBE0FFE9
+:1030B0007B517D08122CEC904EEBE030E006904CFA
+:1030C000FA740AF0E4904EEDF0904EED744EF080FC
+:1030D0002A904CC1E0701E904EEBE0FF7B527D08C1
+:1030E000122CEC904EEBE030E006904CFA740AF0B3
+:1030F000E4904EEDF0904EED744BF0904EEDE0FF0D
+:1031000022E4904F0CF0F0904F0CE0FFC394085075
+:103110000DC205121E01904F0CE004F080E92290D0
+:103120008080E4F0A3F0A3F03101E4904F0DF0F0C3
+:10313000904F0DE090068193FF600DC205121E01B5
+:10314000904F0DE004F080E822E4FF904F0EF0FE77
+:10315000FDEF900681936049EF93FD131313541F05
+:10316000FEED5407FD7401A805088002C333D8FCA6
+:10317000FDEE2478FBE434808B82F583E0FCEDF4F3
+:10318000FBEC5BF0EE2470F582E43480F583E04DD7
+:10319000F0EE2474F582E43480F583E05BF00F8078
+:1031A000B0718190811CE0904F0EF0904DDCE0609A
+:1031B00020E4FF31E17F0131E17F0231E17F033122
+:1031C000E17F0431E17F0531E17F0631E17F078056
+:1031D00010904F0EE0FF9000A3F0EFF49000A7F0E6
+:1031E00022904F12EFF051809208904F12E0FFA210
+:1031F00008B39207EFF47002417FEF5407FEEF131C
+:1032000013135403FF30074324A3F582E43400F57D
+:1032100083C083C082E0FD7401A806088002C33326
+:10322000D8FCF45DD082D083F074A72FF582E4340B
+:1032300000F583C083C082E0FF7401A80608800205
+:10324000C333D8FC4FD082D083F02274A32FF582F1
+:10325000E43400F583C083C082E0FD7401A8060851
+:103260008002C333D8FCFC4DD082D083F074A72FEA
+:10327000F582E43400F583E0FFECF4FEEF5EF0222B
+:103280007B017A81791CAD07E4904F11F0FEEF5479
+:1032900007F0EF1313135403FEF582758300120336
+:1032A000CFFD3395E0FC904F11E0FF74017E00A844
+:1032B00007088005C333CE33CED8F9FFEE5CFEEFAE
+:1032C0005D4E24FF22904F13EFF07B017A807974DA
+:1032D00051869209904F13E0FFA209B39201020FA9
+:1032E000E9904CE9E07002A3E06060E4904CE3F008
+:1032F000A3F0904CFEF0904CEAE024FFF0904CE9F3
+:10330000E034FFF0904CCCE064016018E4904CE8AD
+:10331000F0904CC3E0B401067F1C51C5800F7F1CA8
+:1033200051C58009904CE8E07003120FCB904CE936
+:10333000E07002A3E07014904CC4E0904CC3F09095
+:103340004CC0F07F0D12091C120F42904CEFE07040
+:1033500002A3E0602BE4904CE3F0A3F0904CF0E08B
+:1033600024FFF0904CEFE034FFF07F1C51C5904CEF
+:10337000EFE07002A3E070087F0A120F4B120F42B9
+:1033800022E4FFEFFD7C002478FBEC34808B82F597
+:1033900083E0FEED2470FDEC34808D82F583E04EF9
+:1033A000F4FEEF247CFDEC34808D82F583EEF00F8B
+:1033B000EFB404CF22904CC3E0B40107D2017F1CCC
+:1033C000020FE9904CC3E0B40207D2017F1C020F48
+:1033D000E9D2017F1C020FE9904CEBE0600214F08F
+:1033E000904CF1E0600214F0904CFAE0600B14F0A5
+:1033F000E07006904CF67406F0904CE5E0602C907E
+:103400004CEFE07002A3E0700A904CE9E07002A378
+:10341000E06006E4904CE5F022904CE5E014F0E02A
+:10342000600471B5804E120FCB8049904CE9E0707A
+:1034300002A3E0703F904CEFE07002A3E070359083
+:103440004CE2E0602F14F0E0FFC394085016EF3018
+:10345000E109D2017F1F120FE98010C2017F1F1204
+:103460000FE98007C2017F1F120FE9904CE2E07064
+:10347000037418F0904DDCE07036904DDDE064018F
+:10348000702E904CE3F0A3F0904DDDF0904E4CE0A8
+:10349000600D7B017A4E794C7D031214618011908E
+:1034A0004800E0600B7B017A4879007D09121461C5
+:1034B000904CE8E0602CA3E07002A3E07024904CF4
+:1034C000EFE07002A3E0701A904CE8E014F0D20133
+:1034D0007F1D120FE9904CE8E07007C2017F1D12BA
+:1034E0000FE9904DD9E06008E014F0E07002B137C8
+:1034F000904DD4E06011E014F0E0700B904D3DE091
+:1035000070057F1B12085F904DE6E06029E014F023
+:10351000E07023904D46E06002E4F0904CC7E0B4C8
+:103520000407904213740CF022904CC9E0B40406D6
+:10353000904213743AF0229080107401F080FE22C1
+:10354000904CE9E07002A3E07079904CEFE07002DB
+:10355000A3E0706F904CD5E0B40205120F42802BAF
+:10356000904CD5E0B40114904CF9E0701E904CE200
+:103570007418F0904CF97401F08010904CF9E0B49C
+:103580000109E4F0904CE2F0120FCB1217F5EF6056
+:103590002BC3904CE4E0940C904CE3E09400501565
+:1035A000904CB7E030E107D2017F1E020FE9C20163
+:1035B0007F1E020FE9C2017F1E020FE9C2017F1EBA
+:1035C000020FE9C2017F1E020FE9904CC3E0FFB475
+:1035D000021390441C7433F09043FEF0904532F097
+:1035E0009043EFF022EFB4011290441C7435F09038
+:1035F00043FEF0904532F09043EFF02290809174BA
+:103600000DF0A304F0A3F0A3F0A3F0A314F0221292
+:103610001590D144904CEC7401F0904CE5741EF080
+:10362000E4904CF2F0904D0B74FFF09044FCE0906D
+:103630004DD0F09044FDE0904DD1F09044FEE090EC
+:103640004DD2F022904CD37405F0E4A3F0FFEF25A7
+:10365000E024D6F582E4344CF5837454F0A3F00FE3
+:10366000EFB404EA904C91E0FEA3E0FFC3904C94C9
+:10367000E09FFD904C93E09EFCE41202067B527AA0
+:10368000B8799E783F1200FBC004C005C006C00791
+:10369000904C91E0FCA3E0FDE4120206D003D002BE
+:1036A000D001D00012000A12023F904CFCEEF0A3B1
+:1036B000EFF0904C91E0FEA3E0FFC3904C94E09FAC
+:1036C000FD904C93E09EFCE41202067BC37AF579F0
+:1036D00088783F1200FBC004C005C006C007904CAC
+:1036E00091E0FCA3E0FDE4120206D003D002D00179
+:1036F000D00012000A12023F904CDEEEF0A3EFF071
+:10370000904C91E0FEA3E0FFC3904C94E09FFD90AD
+:103710004C93E09EFCE41202067BAE7A47798178F6
+:103720003F1200FBC004C005C006C007904C91E0EA
+:10373000FCA3E0FDE4120206D003D002D001D000C9
+:1037400012000A12023F904CE0EEF0A3EFF022903C
+:103750004F04EDF09000011203CF904F05F022903E
+:103760004DECE0603FE014F0E07039904CEEE0B4D6
+:1037700005329047F5E020E32BE4904DD4F0904CD7
+:10378000E97404F0A374B0F0E4904CEFF0A3F0906F
+:103790004E55F0904DD3F0121A207F0D12085FE4C1
+:1037A000904CEEF022904ED0120582000000009066
+:1037B0004C95E07002A3E07003023977904C95E0DD
+:1037C000FEA3E0FF904CD4E0FD04F0ED25E024D60C
+:1037D000F582E4344CF583EEF0A3EFF0904CD4E0A6
+:1037E000C394044002E4F0E4904ECFF0904ED0E059
+:1037F000F8A3E0F9A3E0FAA3E0FB904ECFE025E0C8
+:1038000024D6F582E4344CF583E0FEA3E0FFE4FC2B
+:10381000FDEB2FFFEA3EFEED39FDEC38FC904ED07B
+:10382000120576904ECFE004F0E0B404BF904ED085
+:10383000E0FCA3E0FDA3E0FEA3E0FFE47B04FAF9D3
+:10384000F81204C5904ED0120576904CE0E0FEA32D
+:10385000E0FFE4FCFD904ED0E0F8A3E0F9A3E0FA2D
+:10386000A3E0FBD31205655007E4904CFBF001F296
+:10387000904CFCE0FEA3E0FFE4FCFD904ED0E0F8AD
+:10388000A3E0F9A3E0FAA3E0FBC3120565400890AA
+:103890004CFB7464F0805B904CE0E0FEA3E0FFFB27
+:1038A000AA06E4904ED0E0FCA3E0FDA3E0FEA3E076
+:1038B000C39BFFEE9AFEED9400FDEC9400FCE47BCC
+:1038C00064FAF9F812043AC006C007904CE0E0FE32
+:1038D000A3E0FFC3904CFDE09FFF904CFCE09EFEF8
+:1038E000AB07FAE4F9F8D007D0061204C5904CFBF8
+:1038F000EFF0904CE0E0FEA3E0FFE4FCFD904ED042
+:10390000E0F8A3E0F9A3E0FAA3E0FBC312056550D9
+:1039100008904CD57402F08056904CDEE0FEA3E097
+:10392000FFE4FCFD904ED0E0F8A3E0F9A3E0FAA399
+:10393000E0FBC3120565501D904CD57401F0904D0D
+:1039400002E0702B904D40F0A37448F0A37412F085
+:10395000E4A3F0801AE4904CD5F0904D02E0700F93
+:10396000904D40F0A37448F0A3745DF0E4A3F09090
+:103970004CD5E0904D01F022904CD3E0600B14F058
+:10398000E070067405F01237A522904EDDEEF0A32C
+:10399000EFF0904EDFECF0A3EDF0904EDFE0FEA3F1
+:1039A000E0FFD3904EDEE09F904EDDE09E4016900B
+:1039B0004EDFE0FEA3E0FF904EDEE09FFF904EDD85
+:1039C000E09EFE801E904EDDE0FEA3E0FFC3904E21
+:1039D000E0E09FFF904EDFE09EFEAD03C3EB9FFF54
+:1039E000E49EFE22904F06EEF0A3EFF0A905904B67
+:1039F0009EE0FEA3E0FFAD0119ED602F0FEFAC06D6
+:103A000070010E14F5828C83E0FD904F06E475F092
+:103A10000112042485F082F583EDF0AD07AC06BCFD
+:103A20004BD4BD9AD17E4B7F3680CB904B9EEEF02F
+:103A3000A3EFF0227A0C794B904EF47401F0A3744A
+:103A40000CF0A3744BF0904BA0E0FEA3E0FF904B72
+:103A50009EE06E7003A3E06F700261E37E0C7F4B0B
+:103A60007D0331E4904EF4E0FBA3E0FAA3E0F91209
+:103A700003B6B4022B904EF5E475F00212040E90DA
+:103A80004EF4E0FBA3E0FAA3E0F91203B6FF904E78
+:103A900068E0A3E0FAA3E0F5828A831205DD61E322
+:103AA000904EF4E0FBA3E0FAA3E0F91203B664043D
+:103AB0007059904EF575F00112040E7E0C7F4E90F9
+:103AC0004EF4E0FBA3E0FAA3E0F91203B614FD31D3
+:103AD000E4904EF4E0FBA3E0FAA3E02401F9E43A19
+:103AE000FAC002C001904EF4E0A3E0FAA3E0F9129C
+:103AF00003B6FD7C00904E6BE0A3E0FAA3E0F582F4
+:103B00008A83D001D0021205DD61E3904EF4E0FB20
+:103B1000A3E0FAA3E0F91203B664057059904EF5DC
+:103B200075F00112040E7E0C7F4E904EF4E0FBA364
+:103B3000E0FAA3E0F91203B614FD31E4904EF4E08C
+:103B4000FBA3E0FAA3E02401F9E43AFAC002C001C1
+:103B5000904EF4E0A3E0FAA3E0F91203B6FD7C0076
+:103B6000904E74E0A3E0FAA3E0F5828A83D001D0FE
+:103B7000021205DD806D904EF4E0FBA3E0FAA3E0B5
+:103B8000F91203B664037059904EF575F0011204F2
+:103B90000E7E0C7F4E904EF4E0FBA3E0FAA3E0F91A
+:103BA0001203B614FD31E4904EF4E0FBA3E0FAA357
+:103BB000E02401F9E43AFAC002C001904EF4E0A317
+:103BC000E0FAA3E0F91203B6FD7C00904E77E0A383
+:103BD000E0FAA3E0F5828A83D001D0021205DD80ED
+:103BE0000280FE904BA5E0FEA3E0FF904C5EE06EED
+:103BF0007003A3E06F6022904E6EE0FBA3E0FAA397
+:103C0000E0F94A60371205D9904BA5E0FFA3E09098
+:103C10004C5ECFF0A3EFF080CA904C8DE0FFA3E0A4
+:103C20006F6019904E71E0FBA3E0FAA3E0F94A60DF
+:103C30000B1205D9904C8DE0A3F080DD22904F103F
+:103C4000EDF0E0FD900BE8F07E0B7FE9904EC4EDC7
+:103C5000F01210D27B017A0B79E7904F10E024022A
+:103C6000FD020887900BE77406F080D1900BE77493
+:103C700004F080C9900BE77405F080C1900BE774E5
+:103C800003F0ED6002913D22900446E0FF22900B8C
+:103C90007F7401F0E4900B7EF022904B9CE0FEA339
+:103CA000E0FF904B9AE0B50607A3E0B50702D322E8
+:103CB000C3229082807401F022904E9CEBF0A3EA24
+:103CC000F0A3E9F0904EA274FFF5F012042445F041
+:103CD000602A904E9FE0FBA3E475F001120424A932
+:103CE000F0FA1203B6FF904E9CE0FBA3E475F001DE
+:103CF000120424A9F0FAEF1203FC80C822EFF4604A
+:103D00003AEF5407FEEF1313135403FF24A3F58275
+:103D1000E43400F583C083C082E0FD7401A8060886
+:103D20008002C333D8FCF4FC5DD082D083F074A74A
+:0C3D30002FF582E43400F583E05CF02203
 :00000001FF
Index: c51/output/fwram.rom
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/fwram.rom	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/fwram.rom	(working copy)
@@ -1655,13 +1655,13 @@
 b3
 ff
 33
-b6
+d8
 00
 00
 00
 ff
 37
-0e
+4f
 00
 16
 08
@@ -1740,7 +1740,7 @@
 13
 27
 43
-e7
+e4
 00
 00
 00
@@ -2230,7 +2230,7 @@
 64
 12
 39
-49
+8a
 90
 4e
 bc
@@ -2840,7 +2840,7 @@
 e8
 12
 36
-0d
+0f
 7b
 01
 7a
@@ -2878,8 +2878,8 @@
 c3
 f0
 12
-35
-1b
+33
+b5
 7f
 0a
 f1
@@ -2938,10 +2938,10 @@
 bb
 12
 35
-fa
+fc
 12
 31
-20
+1f
 e4
 90
 4d
@@ -5322,7 +5322,7 @@
 fd
 12
 3c
-3b
+7c
 90
 4c
 c7
@@ -5365,7 +5365,7 @@
 fd
 12
 3c
-33
+74
 90
 4c
 c5
@@ -5472,7 +5472,7 @@
 fd
 12
 3c
-23
+64
 22
 90
 4e
@@ -5901,7 +5901,7 @@
 f0
 12
 3c
-59
+9a
 50
 25
 12
@@ -6005,8 +6005,8 @@
 f1
 e2
 12
-39
-f3
+3a
+34
 d1
 6f
 12
@@ -6014,7 +6014,7 @@
 b7
 12
 35
-3e
+40
 90
 4d
 7d
@@ -6037,7 +6037,7 @@
 e1
 12
 31
-4a
+49
 12
 1d
 a1
@@ -6083,12 +6083,12 @@
 05
 12
 3c
-4d
+8e
 80
 ae
 12
 31
-4a
+49
 f1
 d2
 80
@@ -6688,7 +6688,7 @@
 d2
 12
 35
-c8
+ca
 7b
 01
 7a
@@ -6824,7 +6824,7 @@
 86
 12
 3c
-78
+b9
 90
 0b
 83
@@ -8117,7 +8117,7 @@
 e7
 12
 32
-e2
+e1
 90
 4c
 e4
@@ -8134,14 +8134,14 @@
 f0
 12
 39
-37
+78
 d1
 bd
 91
 52
 12
 37
-1e
+5f
 90
 4c
 ca
@@ -8168,10 +8168,10 @@
 22
 12
 35
-fa
+fc
 12
 31
-20
+1f
 a1
 a1
 90
@@ -11587,33 +11587,37 @@
 4d
 e2
 e0
-70
+b4
+01
 05
 ee
 64
 02
 60
-1e
+21
 90
 4d
 e2
 e0
-70
+b4
+01
 06
 90
 4c
 c1
 e0
 60
-12
+14
 90
 4d
 e2
 e0
+64
+01
 60
 02
 e1
-09
+08
 90
 4c
 c1
@@ -11623,7 +11627,7 @@
 60
 02
 e1
-09
+08
 90
 4e
 ec
@@ -11636,10 +11640,10 @@
 40
 02
 e1
-09
+08
 90
 2d
-85
+89
 75
 f0
 03
@@ -11653,40 +11657,40 @@
 73
 02
 2d
-a9
+ad
 02
 2d
-b1
+b5
 02
 2d
-b9
+bd
 02
 2d
-f8
+fc
 02
 2e
-37
+3b
 02
 2e
-76
+7a
 02
 2e
-b5
+b9
 02
 2e
-bd
+c1
 02
 2e
-c5
+c9
 02
 2e
-cd
+d1
 02
 2e
-d5
+d9
 02
 2e
-dd
+e1
 90
 4e
 ed
@@ -11694,7 +11698,7 @@
 d6
 f0
 e1
-09
+08
 90
 4e
 ed
@@ -11702,7 +11706,7 @@
 d5
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -11743,7 +11747,7 @@
 7b
 04
 7d
-04
+01
 91
 ec
 90
@@ -11765,7 +11769,7 @@
 ed
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -11828,7 +11832,7 @@
 ed
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -11891,7 +11895,7 @@
 ed
 f0
 e1
-09
+08
 90
 4c
 c1
@@ -11954,7 +11958,7 @@
 ed
 f0
 80
-54
+4f
 90
 4e
 ed
@@ -11962,7 +11966,7 @@
 f4
 f0
 80
-4c
+47
 90
 4e
 ed
@@ -11970,7 +11974,7 @@
 f2
 f0
 80
-44
+3f
 90
 4e
 ed
@@ -11978,7 +11982,7 @@
 f5
 f0
 80
-3c
+37
 90
 4e
 ed
@@ -11986,7 +11990,7 @@
 f6
 f0
 80
-34
+2f
 90
 4e
 ed
@@ -11994,7 +11998,7 @@
 f7
 f0
 80
-2c
+27
 90
 4c
 c1
@@ -12034,11 +12038,6 @@
 74
 da
 f0
-e4
-90
-4e
-ed
-f0
 90
 4d
 e2
@@ -12049,7 +12048,7 @@
 03
 02
 30
-fc
+fb
 90
 4e
 ec
@@ -12059,7 +12058,7 @@
 70
 02
 e1
-f8
+f7
 24
 ee
 60
@@ -12070,32 +12069,32 @@
 03
 02
 30
-4e
+4d
 14
 70
 03
 02
 30
-7a
+79
 14
 70
 03
 02
 30
-a6
+a5
 14
 70
 03
 02
 30
-d2
+d1
 24
 3e
 60
 03
 02
 30
-fc
+fb
 90
 4c
 c1
@@ -12186,7 +12185,7 @@
 f0
 02
 30
-fc
+fb
 90
 4c
 c1
@@ -12277,7 +12276,7 @@
 f0
 02
 30
-fc
+fb
 90
 4c
 c1
@@ -12363,7 +12362,7 @@
 ed
 f0
 01
-fc
+fb
 90
 4c
 c1
@@ -12407,7 +12406,7 @@
 4d
 f0
 01
-fc
+fb
 90
 4c
 c1
@@ -12584,7 +12583,7 @@
 a3
 f0
 31
-02
+01
 e4
 90
 4f
@@ -12705,7 +12704,7 @@
 80
 b0
 71
-82
+81
 90
 81
 1c
@@ -12723,31 +12722,31 @@
 e4
 ff
 31
-e2
+e1
 7f
 01
 31
-e2
+e1
 7f
 02
 31
-e2
+e1
 7f
 03
 31
-e2
+e1
 7f
 04
 31
-e2
+e1
 7f
 05
 31
-e2
+e1
 7f
 06
 31
-e2
+e1
 7f
 07
 80
@@ -12774,7 +12773,7 @@
 ef
 f0
 51
-81
+80
 92
 08
 90
@@ -12792,7 +12791,7 @@
 70
 02
 41
-80
+7f
 ef
 54
 07
@@ -13008,7 +13007,7 @@
 79
 74
 51
-87
+86
 92
 09
 90
@@ -13082,13 +13081,13 @@
 7f
 1c
 51
-c6
+c5
 80
 0f
 7f
 1c
 51
-c6
+c5
 80
 09
 90
@@ -13164,7 +13163,7 @@
 7f
 1c
 51
-c6
+c5
 90
 4c
 ef
@@ -13238,6 +13237,41 @@
 22
 90
 4c
+c3
+e0
+b4
+01
+07
+d2
+01
+7f
+1c
+02
+0f
+e9
+90
+4c
+c3
+e0
+b4
+02
+07
+d2
+01
+7f
+1c
+02
+0f
+e9
+d2
+01
+7f
+1c
+02
+0f
+e9
+90
+4c
 eb
 e0
 60
@@ -13310,15 +13344,15 @@
 e0
 60
 04
-b1
-1b
+71
+b5
 80
-4b
+4e
 12
 0f
 cb
 80
-46
+49
 90
 4c
 e9
@@ -13328,7 +13362,7 @@
 a3
 e0
 70
-3c
+3f
 90
 4c
 ef
@@ -13338,56 +13372,59 @@
 a3
 e0
 70
-32
-90
-4c
-d5
-e0
-b4
-01
-26
-c3
-90
-4c
-e4
-e0
-94
-1e
-90
-4c
-e3
-e0
-94
-00
-50
-10
+35
 90
 4c
 e2
 e0
-04
+60
+2f
+14
 f0
 e0
+ff
+c3
+94
+08
+50
+16
+ef
 30
 e1
-12
+09
+d2
+01
 7f
 1f
-51
-c6
+12
+0f
+e9
 80
-0c
-e4
-90
-4c
-e2
-f0
+10
+c2
+01
+7f
+1f
+12
+0f
+e9
 80
-05
-e4
+07
+c2
+01
+7f
+1f
+12
+0f
+e9
 90
 4c
 e2
+e0
+70
+03
+74
+18
 f0
 90
 4d
@@ -13512,7 +13549,7 @@
 70
 02
 b1
-12
+37
 90
 4d
 d4
@@ -13595,41 +13632,6 @@
 22
 90
 4c
-c3
-e0
-b4
-01
-07
-d2
-01
-7f
-1c
-02
-0f
-e9
-90
-4c
-c3
-e0
-b4
-02
-07
-d2
-01
-7f
-1c
-02
-0f
-e9
-d2
-01
-7f
-1c
-02
-0f
-e9
-90
-4c
 e9
 e0
 70
@@ -13839,7 +13841,7 @@
 15
 90
 d1
-42
+44
 90
 4c
 ec
@@ -13911,7 +13913,7 @@
 f5
 83
 74
-51
+54
 f0
 a3
 f0
@@ -13922,15 +13924,78 @@
 ea
 90
 4c
-93
+91
+e0
+fe
+a3
 e0
 ff
+c3
+90
+4c
+94
+e0
+9f
+fd
+90
+4c
+93
+e0
+9e
+fc
+e4
+12
+02
+06
+7b
+52
+7a
+b8
+79
+9e
+78
+3f
+12
+00
+fb
+c0
+04
+c0
+05
+c0
+06
+c0
+07
+90
+4c
+91
+e0
+fc
 a3
 e0
+fd
+e4
+12
+02
+06
+d0
+03
+d0
+02
+d0
+01
+d0
+00
+12
+00
+0a
+12
+02
+3f
 90
 4c
 fc
-cf
+ee
 f0
 a3
 ef
@@ -13961,11 +14026,11 @@
 02
 06
 7b
-a4
+c3
 7a
-70
+f5
 79
-3d
+88
 78
 3f
 12
@@ -14039,11 +14104,11 @@
 02
 06
 7b
-1f
+ae
 7a
-85
+47
 79
-2b
+81
 78
 3f
 12
@@ -14200,7 +14265,7 @@
 03
 02
 39
-36
+77
 90
 4c
 95
@@ -14380,7 +14445,7 @@
 fb
 f0
 01
-b1
+f2
 90
 4c
 fc
@@ -14661,7 +14726,7 @@
 f0
 12
 37
-64
+a5
 22
 90
 4e
@@ -14872,7 +14937,7 @@
 70
 02
 61
-a2
+e3
 7e
 0c
 7f
@@ -14880,7 +14945,7 @@
 7d
 03
 31
-a3
+e4
 90
 4e
 f4
@@ -14940,7 +15005,7 @@
 05
 dd
 61
-a2
+e3
 90
 4e
 f4
@@ -14989,7 +15054,7 @@
 14
 fd
 31
-a3
+e4
 90
 4e
 f4
@@ -15047,7 +15112,7 @@
 05
 dd
 61
-a2
+e3
 90
 4e
 f4
@@ -15096,7 +15161,7 @@
 14
 fd
 31
-a3
+e4
 90
 4e
 f4
@@ -15203,7 +15268,7 @@
 14
 fd
 31
-a3
+e4
 90
 4e
 f4
@@ -15426,8 +15491,8 @@
 ed
 60
 02
-71
-fc
+91
+3d
 22
 90
 04
Index: c51/output/sched.rom
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/sched.rom	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/output/sched.rom	(working copy)
@@ -554,7 +554,7 @@
 
 4c91:9f 3e
 4c93:cd 4d
-4c8f:01    #01 VINLPM      #02 HVIN      #04 GPIO
+4c8f:02    #01 VINLPM      #02 HVIN      #04 GPIO
 
 #24g init
 4c10:01#tx
Index: c51/patch/adc.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/bluetooth.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/global_variable.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/kb.dat
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/patch/kb.dat	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/patch/kb.dat	(working copy)
@@ -554,7 +554,7 @@
 
 mem_adc_0v:9f 3e
 mem_adc_3v:cd 4d
-mem_adc_config_flag:01    #01 VINLPM      #02 HVIN      #04 GPIO
+mem_adc_config_flag:02    #01 VINLPM      #02 HVIN      #04 GPIO
 
 #24g init
 mem_24g_mode:01#tx
Index: c51/patch/kb_process.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/keyscan.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/led.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/ram.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/patch/sch.rom
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/patch/sch.rom	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/patch/sch.rom	(working copy)
@@ -554,7 +554,7 @@
 
 mem_adc_0v:9f 3e
 mem_adc_3v:cd 4d
-mem_adc_config_flag:01    #01 VINLPM      #02 HVIN      #04 GPIO
+mem_adc_config_flag:02    #01 VINLPM      #02 HVIN      #04 GPIO
 
 #24g init
 mem_24g_mode:01#tx
Index: c51/patch/sched.rom
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/patch/sched.rom	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/patch/sched.rom	(working copy)
@@ -554,7 +554,7 @@
 
 mem_adc_0v:9f 3e
 mem_adc_3v:cd 4d
-mem_adc_config_flag:01    #01 VINLPM      #02 HVIN      #04 GPIO
+mem_adc_config_flag:02    #01 VINLPM      #02 HVIN      #04 GPIO
 
 #24g init
 mem_24g_mode:01#tx
Index: c51/patch/sys.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/sys.c
===================================================================
--- /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/sys.c	(revision 559)
+++ /ZXS_KB_Project/ZXS_3mode_MD168_1026/c51/sys.c	(working copy)
@@ -838,7 +838,7 @@
 		}
 
 	}
-	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
+/*	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
 	{
 		if (g_variable.battery_status == BAT_STATUS_LOW)
 		{
@@ -856,8 +856,29 @@
 		else
 			g_variable.battery_low_led_flash_interval = 0;		
 		
-	}
-	
+	}*/
+	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
+	{
+		if(g_variable.battery_low_led_flash_interval)
+		{
+			g_variable.battery_low_led_flash_interval--;
+			if(g_variable.battery_low_led_flash_interval < 8)
+			{
+				if(g_variable.battery_low_led_flash_interval & 0x02)
+				{
+					GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
+				}
+				else
+				{
+					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
+				}	
+			}
+			else
+				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
+			if(!g_variable.battery_low_led_flash_interval)
+				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
+		}
+	}		
 // The dongle must receive data within 200ms, otherwise it will be forced to lift
 	if(!long_press_flag)
 	{
