Index: c51/kb_process.c
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/kb_process.c	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/kb_process.c	(working copy)
@@ -687,8 +687,13 @@
 		g_variable.one_key_press_wait_release_timer = 0;
 
 
-	temp = key_value;
 
+	temp = key_value;
+	if(g_variable.system_mode == OSMODE_IOS)		
+	{	
+		if(key_value == HID_KEY_TILDE)
+			temp = HID_KEY_K45;
+	}	
 	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))
@@ -809,24 +814,50 @@
 				}	
 				
 				break;	
-			case HID_KEY_Z:
-				temp = HID_KEY_K45;
+			case HID_KEY_Z:		
+				if(g_variable.system_mode == OSMODE_IOS)		
+				{
+					temp = HID_KEY_TILDE;
+				}
+				else	
+					temp = HID_KEY_K45;
 				break;	
 			case HID_KEY_X:
-				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_K45);
-				if(state & 1)
-				{						
-				g_variable.one_key_press_wait_release_timer = 10;
-				}	
-				temp = HID_KEY_NULL;				
+				if(g_variable.system_mode == OSMODE_IOS)		
+				{			
+					kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_TILDE);
+					if(state & 1)
+					{						
+					g_variable.one_key_press_wait_release_timer = 10;
+					}	
+				}
+				else
+					kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_K45);
+					if(state & 1)
+					{						
+					g_variable.one_key_press_wait_release_timer = 10;
+					}				
 				break;	
 			case HID_KEY_C:
-				kb_combination_key_press(state,KS_SEL_RALT,HID_KEY_K45);
-				if(state & 1)
-				{						
-				g_variable.one_key_press_wait_release_timer = 10;
+				if(g_variable.system_mode == OSMODE_IOS)		
+				{			
+					kb_combination_key_press(state,KS_SEL_RALT,HID_KEY_TILDE);
+					if(state & 1)
+					{						
+					g_variable.one_key_press_wait_release_timer = 10;
+					}	
 				}	
-				temp = HID_KEY_NULL;				
+				else
+				{
+					kb_combination_key_press(state,KS_SEL_RALT,HID_KEY_K45);
+					if(state & 1)
+					{						
+					g_variable.one_key_press_wait_release_timer = 10;
+					}	
+				}
+				temp = HID_KEY_NULL;	
+
+				break;					
 			default :
 				break;	
 		}
Index: c51/output/FW.COD
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/FW.COD	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/FW.COD	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               05/27/2023  14:38:01  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               05/29/2023  15:30:34  PAGE 1
 
 
 
@@ -294,7 +294,7 @@
 0008B2 E0                MOVX    A,@DPTR
 0008B3 FD                MOV     R5,A
 0008B4 7B64              MOV     R3,#064H
-0008B6 123BF5            LCALL   _bufsize
+0008B6 123C51            LCALL   _bufsize
 0008B9 904EBC            MOV     DPTR,#len
 0008BC E0                MOVX    A,@DPTR
 0008BD FE                MOV     R6,A
@@ -371,8 +371,8 @@
     5: 	switch (key_num)
     6: 	{
 000921 14                DEC     A
-000922 B40D00            CJNE    A,#0DH,?C0296?KB_PROCESS
-000925         ?C0296?KB_PROCESS:
+000922 B40D00            CJNE    A,#0DH,?C0306?KB_PROCESS
+000925         ?C0306?KB_PROCESS:
 000925 4002              JC      $ + 4H
 000927 41C4              AJMP    ?C0025?KB_PROCESS
 000929 900937            MOV     DPTR,#0937H
@@ -382,7 +382,7 @@
 000932 25F0              ADD     A,B
 000934 C583              XCH     A,DPH
 000936 73                JMP     @A+DPTR
-000937         ?C0297?KB_PROCESS:
+000937         ?C0307?KB_PROCESS:
 000937 02095E            LJMP    ?C0004?KB_PROCESS
 00093A 02095E            LJMP    ?C0004?KB_PROCESS
 00093D 02095E            LJMP    ?C0004?KB_PROCESS
@@ -803,7 +803,7 @@
   142: 		System_Hardware_init();
 000B15 F1F1              ACALL   System_Hardware_init
   143: 		System_Software_init();
-000B17 123514            LCALL   System_Software_init
+000B17 12356F            LCALL   System_Software_init
   144: 
   145: 		
   146: 		IIC_Read(EEPROM_RECON_INFO_LAST_DEVICE ,1 ,(byte *)&g_variable.last_device_num);
@@ -873,7 +873,7 @@
   160: 	case IPC_EVT_WAKEUP:
 000B77         ?C0019?SYS:
   161: 		System_IIC_clk_setup();
-000B77 123501            LCALL   System_IIC_clk_setup
+000B77 12355C            LCALL   System_IIC_clk_setup
   162: 		KS_Initialize();
 000B7A 121105            LCALL   KS_Initialize
   163: 		g_variable.g24_long_sleep_flag = 0;
@@ -1978,7 +1978,7 @@
    63: {
    64: 	System_IIC_clk_setup();
    65: 	KS_Initialize();
-000FF1 123501            LCALL   System_IIC_clk_setup
+000FF1 12355C            LCALL   System_IIC_clk_setup
    66: 	LED_all_shutdown();
 000FF4 121105            LCALL   KS_Initialize
 ;----                  JMP     LED_all_shutdown
@@ -2857,7 +2857,7 @@
 0013D4 A3                INC     DPTR
 0013D5 E0                MOVX    A,@DPTR
 0013D6 F9                MOV     R1,A
-0013D7 122F5F            LCALL   _kb_multikey_setup
+0013D7 122FBF            LCALL   _kb_multikey_setup
   536: 	
   537: 	if (mult_key_status == KEY_MULIT_PRESS) 
 0013DA 904E4B            MOV     DPTR,#mult_key_status
@@ -3230,7 +3230,7 @@
 001597 904E7D            MOV     DPTR,#len
 00159A E0                MOVX    A,@DPTR
 00159B FD                MOV     R5,A
-00159C 123C4F            LCALL   _IPC_TxBREDRHidData
+00159C 123CAB            LCALL   _IPC_TxBREDRHidData
   147: 	}
 00159F         ?C0033?KB_PROCESS:
   148: 	if ((g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED) ||
@@ -3262,7 +3262,7 @@
 0015C2 904E7D            MOV     DPTR,#len
 0015C5 E0                MOVX    A,@DPTR
 0015C6 FD                MOV     R5,A
-0015C7 123C65            LCALL   _IPC_TxBleData
+0015C7 123CC1            LCALL   _IPC_TxBleData
   154: 
   155: 	}
 0015CA         ?C0035?KB_PROCESS:
@@ -5379,9 +5379,9 @@
   760: 	YC_adc_check_timer500ms();
 001F74 F196              ACALL   YC_adc_check_timer500ms
   761: 	YC_connect_timeout_500ms();
-001F76 1237D7            LCALL   YC_connect_timeout_500ms
+001F76 1236CA            LCALL   YC_connect_timeout_500ms
   762: 	kb_button_press_timer500ms();
-001F79 1238CF            LCALL   kb_button_press_timer500ms
+001F79 1237C2            LCALL   kb_button_press_timer500ms
   763: 	YC_wait_disconnect_timer500ms();
 001F7C 1222EA            LCALL   YC_wait_disconnect_timer500ms
   764: 	
@@ -5434,7 +5434,7 @@
 001FA1 7405              MOV     A,#05H
 001FA3 F0                MOVX    @DPTR,A
   112: 			YC_adc_check();
-001FA4 123A23            LCALL   YC_adc_check
+001FA4 123A7F            LCALL   YC_adc_check
   113: 		}
   114: 	}
   115: #endif	
@@ -6541,7 +6541,7 @@
 0024B1 F0                MOVX    @DPTR,A
   307: 	
   308: 	KS_ScanMatrix();
-0024B2 123380            LCALL   KS_ScanMatrix
+0024B2 1233DB            LCALL   KS_ScanMatrix
   309: 
   310: 	if (compare_str(ksSelMapCurr,ksSelMapCheck,KB_KSCAN_COL_NUM) 
 0024B5 7A4D              MOV     R2,#HIGH ksSelMapCheck
@@ -6911,7 +6911,7 @@
 002684 904E90            MOV     DPTR,#key_value_temp
 002687 E0                MOVX    A,@DPTR
 002688 FF                MOV     R7,A
-002689 123280            LCALL   _keyIn
+002689 1232DB            LCALL   _keyIn
   376: 					}
 00268C 8008              SJMP    ?C0085?KEYSCAN
 00268E         ?C0086?KEYSCAN:
@@ -6921,7 +6921,7 @@
 00268E 904E90            MOV     DPTR,#key_value_temp
 002691 E0                MOVX    A,@DPTR
 002692 FF                MOV     R7,A
-002693 1232D6            LCALL   _keyOut
+002693 123331            LCALL   _keyOut
   380: 					}
   381: 				}
 002696         ?C0085?KEYSCAN:
@@ -8072,1553 +8072,1634 @@
 002B5A         ?C0156?KB_PROCESS:
   688: 
   689: 
-  690: 	temp = key_value;
+  690: 
+  691: 	temp = key_value;
 002B5A 904EEC            MOV     DPTR,#key_value
 002B5D E0                MOVX    A,@DPTR
 002B5E FF                MOV     R7,A
 002B5F A3                INC     DPTR
 002B60 F0                MOVX    @DPTR,A
-  691: 
-  692: 	if( (fn_flag == 1 && g_variable.system_mode == OSMODE_WINDOWS) ||
-002B61 904DE2            MOV     DPTR,#fn_flag
+  692: 	if(g_variable.system_mode == OSMODE_IOS)		
+002B61 904CC1            MOV     DPTR,#g_variable+02H
 002B64 E0                MOVX    A,@DPTR
-002B65 B40106            CJNE    A,#01H,?C0159?KB_PROCESS
-002B68 904CC1            MOV     DPTR,#g_variable+02H
-002B6B E0                MOVX    A,@DPTR
-002B6C 6023              JZ      ?C0158?KB_PROCESS
-002B6E         ?C0159?KB_PROCESS:
-002B6E 904DE2            MOV     DPTR,#fn_flag
-002B71 E0                MOVX    A,@DPTR
-002B72 B40108            CJNE    A,#01H,?C0160?KB_PROCESS
-002B75 904CC1            MOV     DPTR,#g_variable+02H
-002B78 E0                MOVX    A,@DPTR
-002B79 6402              XRL     A,#02H
-002B7B 6014              JZ      ?C0158?KB_PROCESS
-002B7D         ?C0160?KB_PROCESS:
+002B65 FE                MOV     R6,A
+002B66 B4020A            CJNE    A,#02H,?C0157?KB_PROCESS
+  693: 	{	
+  694: 		if(key_value == HID_KEY_TILDE)
+002B69 EF                MOV     A,R7
+002B6A B43506            CJNE    A,#035H,?C0157?KB_PROCESS
+  695: 			temp = HID_KEY_K45;
+002B6D 904EED            MOV     DPTR,#temp
+002B70 7464              MOV     A,#064H
+002B72 F0                MOVX    @DPTR,A
+  696: 	}	
+002B73         ?C0157?KB_PROCESS:
+  697: 	if( (fn_flag == 1 && g_variable.system_mode == OSMODE_WINDOWS) ||
+002B73 904DE2            MOV     DPTR,#fn_flag
+002B76 E0                MOVX    A,@DPTR
+002B77 B40103            CJNE    A,#01H,?C0161?KB_PROCESS
+002B7A EE                MOV     A,R6
+002B7B 6023              JZ      ?C0160?KB_PROCESS
+002B7D         ?C0161?KB_PROCESS:
 002B7D 904DE2            MOV     DPTR,#fn_flag
 002B80 E0                MOVX    A,@DPTR
-002B81 6401              XRL     A,#01H
-002B83 6002              JZ      $ + 4H
-002B85 A16A              AJMP    ?C0157?KB_PROCESS
-002B87 904CC1            MOV     DPTR,#g_variable+02H
-002B8A E0                MOVX    A,@DPTR
-002B8B 6401              XRL     A,#01H
-002B8D 6002              JZ      $ + 4H
-002B8F A16A              AJMP    ?C0157?KB_PROCESS
-002B91         ?C0158?KB_PROCESS:
-  693: 		 (fn_flag == 1 && g_variable.system_mode == OSMODE_IOS) ||
-  694: 		 (fn_flag == 1 && g_variable.system_mode == OSMODE_ANDROID))
-  695: 	{	
-  696: 		switch (key_value)
-002B91 EF                MOV     A,R7
-002B92 1205B3            LCALL   ?C?CCASE
-002B95 2D4D              DW      ?C0196?KB_PROCESS
-002B97 06                DB      06H
-002B98 2D2E              DW      ?C0194?KB_PROCESS
-002B9A 1B                DB      01BH
-002B9B 2D26              DW      ?C0193?KB_PROCESS
-002B9D 1D                DB      01DH
-002B9E 2BC6              DW      ?C0162?KB_PROCESS
-002BA0 3A                DB      03AH
-002BA1 2BCE              DW      ?C0163?KB_PROCESS
-002BA3 3B                DB      03BH
-002BA4 2BD6              DW      ?C0164?KB_PROCESS
-002BA6 3C                DB      03CH
-002BA7 2C16              DW      ?C0169?KB_PROCESS
-002BA9 3D                DB      03DH
-002BAA 2C56              DW      ?C0174?KB_PROCESS
-002BAC 3E                DB      03EH
-002BAD 2C96              DW      ?C0179?KB_PROCESS
-002BAF 3F                DB      03FH
-002BB0 2CD6              DW      ?C0184?KB_PROCESS
-002BB2 40                DB      040H
-002BB3 2CDE              DW      ?C0185?KB_PROCESS
-002BB5 41                DB      041H
-002BB6 2CE6              DW      ?C0186?KB_PROCESS
-002BB8 42                DB      042H
-002BB9 2CEE              DW      ?C0187?KB_PROCESS
-002BBB 43                DB      043H
-002BBC 2CF6              DW      ?C0188?KB_PROCESS
-002BBE 44                DB      044H
-002BBF 2CFE              DW      ?C0189?KB_PROCESS
-002BC1 45                DB      045H
-002BC2 0000              DW      00H
-002BC4 2D6A              DW      ?C0157?KB_PROCESS
-  697: 		{ 	
-  698: 			case HID_KEY_F1:
-002BC6         ?C0162?KB_PROCESS:
-  699: 				temp = HID_MULTIKEY_AC_HOME;	
-002BC6 904EED            MOV     DPTR,#temp
-002BC9 74D6              MOV     A,#0D6H
-002BCB F0                MOVX    @DPTR,A
-  700: 				break;
-002BCC A16A              AJMP    ?C0157?KB_PROCESS
-  701: 			case HID_KEY_F2:
-002BCE         ?C0163?KB_PROCESS:
-  702: 				temp = HID_MULTIKEY_AC_SEARCH;
-002BCE 904EED            MOV     DPTR,#temp
-002BD1 74D5              MOV     A,#0D5H
-002BD3 F0                MOVX    @DPTR,A
-  703: 				break;
-002BD4 A16A              AJMP    ?C0157?KB_PROCESS
-  704: 			case HID_KEY_F3:
-002BD6         ?C0164?KB_PROCESS:
-  705: 				if(g_variable.system_mode == OSMODE_IOS)		
-002BD6 904CC1            MOV     DPTR,#g_variable+02H
-002BD9 E0                MOVX    A,@DPTR
-002BDA B4021A            CJNE    A,#02H,?C0165?KB_PROCESS
-  706: 				{
-  707: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_A);
-002BDD 904EEB            MOV     DPTR,#state
-002BE0 E0                MOVX    A,@DPTR
-002BE1 FF                MOV     R7,A
-002BE2 7B04              MOV     R3,#04H
-002BE4 7D08              MOV     R5,#08H
-002BE6 711D              ACALL   _kb_combination_key_press
-  708: 					if(state & 1)
-002BE8 904EEB            MOV     DPTR,#state
+002B81 B40108            CJNE    A,#01H,?C0162?KB_PROCESS
+002B84 904CC1            MOV     DPTR,#g_variable+02H
+002B87 E0                MOVX    A,@DPTR
+002B88 6402              XRL     A,#02H
+002B8A 6014              JZ      ?C0160?KB_PROCESS
+002B8C         ?C0162?KB_PROCESS:
+002B8C 904DE2            MOV     DPTR,#fn_flag
+002B8F E0                MOVX    A,@DPTR
+002B90 6401              XRL     A,#01H
+002B92 6002              JZ      $ + 4H
+002B94 A1CA              AJMP    ?C0159?KB_PROCESS
+002B96 904CC1            MOV     DPTR,#g_variable+02H
+002B99 E0                MOVX    A,@DPTR
+002B9A 6401              XRL     A,#01H
+002B9C 6002              JZ      $ + 4H
+002B9E A1CA              AJMP    ?C0159?KB_PROCESS
+002BA0         ?C0160?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)
+002BA0 904EEC            MOV     DPTR,#key_value
+002BA3 E0                MOVX    A,@DPTR
+002BA4 1205B3            LCALL   ?C?CCASE
+002BA7 2D8C              DW      ?C0203?KB_PROCESS
+002BA9 06                DB      06H
+002BAA 2D51              DW      ?C0198?KB_PROCESS
+002BAC 1B                DB      01BH
+002BAD 2D3A              DW      ?C0195?KB_PROCESS
+002BAF 1D                DB      01DH
+002BB0 2BD8              DW      ?C0164?KB_PROCESS
+002BB2 3A                DB      03AH
+002BB3 2BE0              DW      ?C0165?KB_PROCESS
+002BB5 3B                DB      03BH
+002BB6 2BE8              DW      ?C0166?KB_PROCESS
+002BB8 3C                DB      03CH
+002BB9 2C28              DW      ?C0171?KB_PROCESS
+002BBB 3D                DB      03DH
+002BBC 2C68              DW      ?C0176?KB_PROCESS
+002BBE 3E                DB      03EH
+002BBF 2CA8              DW      ?C0181?KB_PROCESS
+002BC1 3F                DB      03FH
+002BC2 2CE8              DW      ?C0186?KB_PROCESS
+002BC4 40                DB      040H
+002BC5 2CF0              DW      ?C0187?KB_PROCESS
+002BC7 41                DB      041H
+002BC8 2CF8              DW      ?C0188?KB_PROCESS
+002BCA 42                DB      042H
+002BCB 2D00              DW      ?C0189?KB_PROCESS
+002BCD 43                DB      043H
+002BCE 2D08              DW      ?C0190?KB_PROCESS
+002BD0 44                DB      044H
+002BD1 2D10              DW      ?C0191?KB_PROCESS
+002BD3 45                DB      045H
+002BD4 0000              DW      00H
+002BD6 2DCA              DW      ?C0159?KB_PROCESS
+  702: 		{ 	
+  703: 			case HID_KEY_F1:
+002BD8         ?C0164?KB_PROCESS:
+  704: 				temp = HID_MULTIKEY_AC_HOME;	
+002BD8 904EED            MOV     DPTR,#temp
+002BDB 74D6              MOV     A,#0D6H
+002BDD F0                MOVX    @DPTR,A
+  705: 				break;
+002BDE A1CA              AJMP    ?C0159?KB_PROCESS
+  706: 			case HID_KEY_F2:
+002BE0         ?C0165?KB_PROCESS:
+  707: 				temp = HID_MULTIKEY_AC_SEARCH;
+002BE0 904EED            MOV     DPTR,#temp
+002BE3 74D5              MOV     A,#0D5H
+002BE5 F0                MOVX    @DPTR,A
+  708: 				break;
+002BE6 A1CA              AJMP    ?C0159?KB_PROCESS
+  709: 			case HID_KEY_F3:
+002BE8         ?C0166?KB_PROCESS:
+  710: 				if(g_variable.system_mode == OSMODE_IOS)		
+002BE8 904CC1            MOV     DPTR,#g_variable+02H
 002BEB E0                MOVX    A,@DPTR
-002BEC 30E020            JNB     ACC.0,?C0167?KB_PROCESS
-  709: 					{						
-  710: 					g_variable.one_key_press_wait_release_timer = 10;
-002BEF 904CFA            MOV     DPTR,#g_variable+03BH
-002BF2 740A              MOV     A,#0AH
-002BF4 F0                MOVX    @DPTR,A
-  711: 					}	
-  712: 				}
-002BF5 8018              SJMP    ?C0167?KB_PROCESS
-002BF7         ?C0165?KB_PROCESS:
-  713: 				else
-  714: 				{
-  715: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_A);
-002BF7 904EEB            MOV     DPTR,#state
-002BFA E0                MOVX    A,@DPTR
-002BFB FF                MOV     R7,A
-002BFC 7B04              MOV     R3,#04H
-002BFE 7D01              MOV     R5,#01H
-002C00 711D              ACALL   _kb_combination_key_press
-  716: 					if(state & 1)    
-002C02 904EEB            MOV     DPTR,#state
-002C05 E0                MOVX    A,@DPTR
-002C06 30E006            JNB     ACC.0,?C0167?KB_PROCESS
-  717: 					{            
-  718: 					g_variable.one_key_press_wait_release_timer = 10;     
-002C09 904CFA            MOV     DPTR,#g_variable+03BH
-002C0C 740A              MOV     A,#0AH
-002C0E F0                MOVX    @DPTR,A
-  719: 					}	
-  720: 				}	
-002C0F         ?C0167?KB_PROCESS:
-  721: 				temp = HID_KEY_NULL;
-002C0F E4                CLR     A
-002C10 904EED            MOV     DPTR,#temp
-002C13 F0                MOVX    @DPTR,A
-  722: 				break;
-002C14 A16A              AJMP    ?C0157?KB_PROCESS
-  723: 			case HID_KEY_F4:
-002C16         ?C0169?KB_PROCESS:
-  724: 				if(g_variable.system_mode == OSMODE_IOS)		
-002C16 904CC1            MOV     DPTR,#g_variable+02H
-002C19 E0                MOVX    A,@DPTR
-002C1A B4021A            CJNE    A,#02H,?C0170?KB_PROCESS
-  725: 				{
-  726: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_C);
-002C1D 904EEB            MOV     DPTR,#state
-002C20 E0                MOVX    A,@DPTR
-002C21 FF                MOV     R7,A
-002C22 7B06              MOV     R3,#06H
-002C24 7D08              MOV     R5,#08H
-002C26 711D              ACALL   _kb_combination_key_press
-  727: 					if(state & 1)
-002C28 904EEB            MOV     DPTR,#state
+002BEC B4021A            CJNE    A,#02H,?C0167?KB_PROCESS
+  711: 				{
+  712: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_A);
+002BEF 904EEB            MOV     DPTR,#state
+002BF2 E0                MOVX    A,@DPTR
+002BF3 FF                MOV     R7,A
+002BF4 7B04              MOV     R3,#04H
+002BF6 7D08              MOV     R5,#08H
+002BF8 711D              ACALL   _kb_combination_key_press
+  713: 					if(state & 1)
+002BFA 904EEB            MOV     DPTR,#state
+002BFD E0                MOVX    A,@DPTR
+002BFE 30E020            JNB     ACC.0,?C0169?KB_PROCESS
+  714: 					{						
+  715: 					g_variable.one_key_press_wait_release_timer = 10;
+002C01 904CFA            MOV     DPTR,#g_variable+03BH
+002C04 740A              MOV     A,#0AH
+002C06 F0                MOVX    @DPTR,A
+  716: 					}	
+  717: 				}
+002C07 8018              SJMP    ?C0169?KB_PROCESS
+002C09         ?C0167?KB_PROCESS:
+  718: 				else
+  719: 				{
+  720: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_A);
+002C09 904EEB            MOV     DPTR,#state
+002C0C E0                MOVX    A,@DPTR
+002C0D FF                MOV     R7,A
+002C0E 7B04              MOV     R3,#04H
+002C10 7D01              MOV     R5,#01H
+002C12 711D              ACALL   _kb_combination_key_press
+  721: 					if(state & 1)    
+002C14 904EEB            MOV     DPTR,#state
+002C17 E0                MOVX    A,@DPTR
+002C18 30E006            JNB     ACC.0,?C0169?KB_PROCESS
+  722: 					{            
+  723: 					g_variable.one_key_press_wait_release_timer = 10;     
+002C1B 904CFA            MOV     DPTR,#g_variable+03BH
+002C1E 740A              MOV     A,#0AH
+002C20 F0                MOVX    @DPTR,A
+  724: 					}	
+  725: 				}	
+002C21         ?C0169?KB_PROCESS:
+  726: 				temp = HID_KEY_NULL;
+002C21 E4                CLR     A
+002C22 904EED            MOV     DPTR,#temp
+002C25 F0                MOVX    @DPTR,A
+  727: 				break;
+002C26 A1CA              AJMP    ?C0159?KB_PROCESS
+  728: 			case HID_KEY_F4:
+002C28         ?C0171?KB_PROCESS:
+  729: 				if(g_variable.system_mode == OSMODE_IOS)		
+002C28 904CC1            MOV     DPTR,#g_variable+02H
 002C2B E0                MOVX    A,@DPTR
-002C2C 30E020            JNB     ACC.0,?C0172?KB_PROCESS
-  728: 					{						
-  729: 					g_variable.one_key_press_wait_release_timer = 10;
-002C2F 904CFA            MOV     DPTR,#g_variable+03BH
-002C32 740A              MOV     A,#0AH
-002C34 F0                MOVX    @DPTR,A
-  730: 					}	
-  731: 				}
-002C35 8018              SJMP    ?C0172?KB_PROCESS
-002C37         ?C0170?KB_PROCESS:
-  732: 				else
-  733: 				{
-  734: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_C);
-002C37 904EEB            MOV     DPTR,#state
-002C3A E0                MOVX    A,@DPTR
-002C3B FF                MOV     R7,A
-002C3C 7B06              MOV     R3,#06H
-002C3E 7D01              MOV     R5,#01H
-002C40 711D              ACALL   _kb_combination_key_press
-  735: 					if(state & 1)    
-002C42 904EEB            MOV     DPTR,#state
-002C45 E0                MOVX    A,@DPTR
-002C46 30E006            JNB     ACC.0,?C0172?KB_PROCESS
-  736: 					{            
-  737: 					g_variable.one_key_press_wait_release_timer = 10;     
-002C49 904CFA            MOV     DPTR,#g_variable+03BH
-002C4C 740A              MOV     A,#0AH
-002C4E F0                MOVX    @DPTR,A
-  738: 					}	
-  739: 				}	
-002C4F         ?C0172?KB_PROCESS:
-  740: 				temp = HID_KEY_NULL;
-002C4F E4                CLR     A
-002C50 904EED            MOV     DPTR,#temp
-002C53 F0                MOVX    @DPTR,A
-  741: 
-  742: 				break;
-002C54 A16A              AJMP    ?C0157?KB_PROCESS
-  743: 			case HID_KEY_F5:
-002C56         ?C0174?KB_PROCESS:
-  744: 				if(g_variable.system_mode == OSMODE_IOS)		
-002C56 904CC1            MOV     DPTR,#g_variable+02H
-002C59 E0                MOVX    A,@DPTR
-002C5A B4021A            CJNE    A,#02H,?C0175?KB_PROCESS
-  745: 				{
-  746: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_V);
-002C5D 904EEB            MOV     DPTR,#state
-002C60 E0                MOVX    A,@DPTR
-002C61 FF                MOV     R7,A
-002C62 7B19              MOV     R3,#019H
-002C64 7D08              MOV     R5,#08H
-002C66 711D              ACALL   _kb_combination_key_press
-  747: 					if(state & 1)
-002C68 904EEB            MOV     DPTR,#state
+002C2C B4021A            CJNE    A,#02H,?C0172?KB_PROCESS
+  730: 				{
+  731: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_C);
+002C2F 904EEB            MOV     DPTR,#state
+002C32 E0                MOVX    A,@DPTR
+002C33 FF                MOV     R7,A
+002C34 7B06              MOV     R3,#06H
+002C36 7D08              MOV     R5,#08H
+002C38 711D              ACALL   _kb_combination_key_press
+  732: 					if(state & 1)
+002C3A 904EEB            MOV     DPTR,#state
+002C3D E0                MOVX    A,@DPTR
+002C3E 30E020            JNB     ACC.0,?C0174?KB_PROCESS
+  733: 					{						
+  734: 					g_variable.one_key_press_wait_release_timer = 10;
+002C41 904CFA            MOV     DPTR,#g_variable+03BH
+002C44 740A              MOV     A,#0AH
+002C46 F0                MOVX    @DPTR,A
+  735: 					}	
+  736: 				}
+002C47 8018              SJMP    ?C0174?KB_PROCESS
+002C49         ?C0172?KB_PROCESS:
+  737: 				else
+  738: 				{
+  739: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_C);
+002C49 904EEB            MOV     DPTR,#state
+002C4C E0                MOVX    A,@DPTR
+002C4D FF                MOV     R7,A
+002C4E 7B06              MOV     R3,#06H
+002C50 7D01              MOV     R5,#01H
+002C52 711D              ACALL   _kb_combination_key_press
+  740: 					if(state & 1)    
+002C54 904EEB            MOV     DPTR,#state
+002C57 E0                MOVX    A,@DPTR
+002C58 30E006            JNB     ACC.0,?C0174?KB_PROCESS
+  741: 					{            
+  742: 					g_variable.one_key_press_wait_release_timer = 10;     
+002C5B 904CFA            MOV     DPTR,#g_variable+03BH
+002C5E 740A              MOV     A,#0AH
+002C60 F0                MOVX    @DPTR,A
+  743: 					}	
+  744: 				}	
+002C61         ?C0174?KB_PROCESS:
+  745: 				temp = HID_KEY_NULL;
+002C61 E4                CLR     A
+002C62 904EED            MOV     DPTR,#temp
+002C65 F0                MOVX    @DPTR,A
+  746: 
+  747: 				break;
+002C66 A1CA              AJMP    ?C0159?KB_PROCESS
+  748: 			case HID_KEY_F5:
+002C68         ?C0176?KB_PROCESS:
+  749: 				if(g_variable.system_mode == OSMODE_IOS)		
+002C68 904CC1            MOV     DPTR,#g_variable+02H
 002C6B E0                MOVX    A,@DPTR
-002C6C 30E020            JNB     ACC.0,?C0177?KB_PROCESS
-  748: 					{						
-  749: 					g_variable.one_key_press_wait_release_timer = 10;
-002C6F 904CFA            MOV     DPTR,#g_variable+03BH
-002C72 740A              MOV     A,#0AH
-002C74 F0                MOVX    @DPTR,A
-  750: 					}	
-  751: 				}
-002C75 8018              SJMP    ?C0177?KB_PROCESS
-002C77         ?C0175?KB_PROCESS:
-  752: 				else
-  753: 				{
-  754: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_V);
-002C77 904EEB            MOV     DPTR,#state
-002C7A E0                MOVX    A,@DPTR
-002C7B FF                MOV     R7,A
-002C7C 7B19              MOV     R3,#019H
-002C7E 7D01              MOV     R5,#01H
-002C80 711D              ACALL   _kb_combination_key_press
-  755: 					if(state & 1)    
-002C82 904EEB            MOV     DPTR,#state
-002C85 E0                MOVX    A,@DPTR
-002C86 30E006            JNB     ACC.0,?C0177?KB_PROCESS
-  756: 					{            
-  757: 					g_variable.one_key_press_wait_release_timer = 10;     
-002C89 904CFA            MOV     DPTR,#g_variable+03BH
-002C8C 740A              MOV     A,#0AH
-002C8E F0                MOVX    @DPTR,A
-  758: 					}	
-  759: 				}	
-002C8F         ?C0177?KB_PROCESS:
-  760: 				temp = HID_KEY_NULL;
-002C8F E4                CLR     A
-002C90 904EED            MOV     DPTR,#temp
-002C93 F0                MOVX    @DPTR,A
-  761: 
-  762: 				break;
-002C94 A16A              AJMP    ?C0157?KB_PROCESS
-  763: 			case HID_KEY_F6:
-002C96         ?C0179?KB_PROCESS:
-  764: 				if(g_variable.system_mode == OSMODE_IOS)		
-002C96 904CC1            MOV     DPTR,#g_variable+02H
-002C99 E0                MOVX    A,@DPTR
-002C9A B4021A            CJNE    A,#02H,?C0180?KB_PROCESS
-  765: 				{
-  766: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_X);
-002C9D 904EEB            MOV     DPTR,#state
-002CA0 E0                MOVX    A,@DPTR
-002CA1 FF                MOV     R7,A
-002CA2 7B1B              MOV     R3,#01BH
-002CA4 7D08              MOV     R5,#08H
-002CA6 711D              ACALL   _kb_combination_key_press
-  767: 					if(state & 1)
-002CA8 904EEB            MOV     DPTR,#state
+002C6C B4021A            CJNE    A,#02H,?C0177?KB_PROCESS
+  750: 				{
+  751: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_V);
+002C6F 904EEB            MOV     DPTR,#state
+002C72 E0                MOVX    A,@DPTR
+002C73 FF                MOV     R7,A
+002C74 7B19              MOV     R3,#019H
+002C76 7D08              MOV     R5,#08H
+002C78 711D              ACALL   _kb_combination_key_press
+  752: 					if(state & 1)
+002C7A 904EEB            MOV     DPTR,#state
+002C7D E0                MOVX    A,@DPTR
+002C7E 30E020            JNB     ACC.0,?C0179?KB_PROCESS
+  753: 					{						
+  754: 					g_variable.one_key_press_wait_release_timer = 10;
+002C81 904CFA            MOV     DPTR,#g_variable+03BH
+002C84 740A              MOV     A,#0AH
+002C86 F0                MOVX    @DPTR,A
+  755: 					}	
+  756: 				}
+002C87 8018              SJMP    ?C0179?KB_PROCESS
+002C89         ?C0177?KB_PROCESS:
+  757: 				else
+  758: 				{
+  759: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_V);
+002C89 904EEB            MOV     DPTR,#state
+002C8C E0                MOVX    A,@DPTR
+002C8D FF                MOV     R7,A
+002C8E 7B19              MOV     R3,#019H
+002C90 7D01              MOV     R5,#01H
+002C92 711D              ACALL   _kb_combination_key_press
+  760: 					if(state & 1)    
+002C94 904EEB            MOV     DPTR,#state
+002C97 E0                MOVX    A,@DPTR
+002C98 30E006            JNB     ACC.0,?C0179?KB_PROCESS
+  761: 					{            
+  762: 					g_variable.one_key_press_wait_release_timer = 10;     
+002C9B 904CFA            MOV     DPTR,#g_variable+03BH
+002C9E 740A              MOV     A,#0AH
+002CA0 F0                MOVX    @DPTR,A
+  763: 					}	
+  764: 				}	
+002CA1         ?C0179?KB_PROCESS:
+  765: 				temp = HID_KEY_NULL;
+002CA1 E4                CLR     A
+002CA2 904EED            MOV     DPTR,#temp
+002CA5 F0                MOVX    @DPTR,A
+  766: 
+  767: 				break;
+002CA6 A1CA              AJMP    ?C0159?KB_PROCESS
+  768: 			case HID_KEY_F6:
+002CA8         ?C0181?KB_PROCESS:
+  769: 				if(g_variable.system_mode == OSMODE_IOS)		
+002CA8 904CC1            MOV     DPTR,#g_variable+02H
 002CAB E0                MOVX    A,@DPTR
-002CAC 30E020            JNB     ACC.0,?C0182?KB_PROCESS
-  768: 					{						
-  769: 					g_variable.one_key_press_wait_release_timer = 10;
-002CAF 904CFA            MOV     DPTR,#g_variable+03BH
-002CB2 740A              MOV     A,#0AH
-002CB4 F0                MOVX    @DPTR,A
-  770: 					}	
-  771: 				}
-002CB5 8018              SJMP    ?C0182?KB_PROCESS
-002CB7         ?C0180?KB_PROCESS:
-  772: 				else
-  773: 				{
-  774: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_X);
-002CB7 904EEB            MOV     DPTR,#state
-002CBA E0                MOVX    A,@DPTR
-002CBB FF                MOV     R7,A
-002CBC 7B1B              MOV     R3,#01BH
-002CBE 7D01              MOV     R5,#01H
-002CC0 711D              ACALL   _kb_combination_key_press
-  775: 					if(state & 1)    
-002CC2 904EEB            MOV     DPTR,#state
-002CC5 E0                MOVX    A,@DPTR
-002CC6 30E006            JNB     ACC.0,?C0182?KB_PROCESS
-  776: 					{            
-  777: 					g_variable.one_key_press_wait_release_timer = 10;     
-002CC9 904CFA            MOV     DPTR,#g_variable+03BH
-002CCC 740A              MOV     A,#0AH
-002CCE F0                MOVX    @DPTR,A
-  778: 					}	
-  779: 				}	
-002CCF         ?C0182?KB_PROCESS:
-  780: 				temp = HID_KEY_NULL;
-002CCF E4                CLR     A
-002CD0 904EED            MOV     DPTR,#temp
-002CD3 F0                MOVX    @DPTR,A
-  781: 				break;
-002CD4 A16A              AJMP    ?C0157?KB_PROCESS
-  782: 			case HID_KEY_F7:
-002CD6         ?C0184?KB_PROCESS:
-  783: 				temp = HID_MULTIKEY_PRE_TRACK;
-002CD6 904EED            MOV     DPTR,#temp
-002CD9 74F4              MOV     A,#0F4H
-002CDB F0                MOVX    @DPTR,A
-  784: 				break;
-002CDC A16A              AJMP    ?C0157?KB_PROCESS
-  785: 			case HID_KEY_F8:
-002CDE         ?C0185?KB_PROCESS:
-  786: 				temp = HID_MULTIKEY_PALY;
-002CDE 904EED            MOV     DPTR,#temp
-002CE1 74F2              MOV     A,#0F2H
-002CE3 F0                MOVX    @DPTR,A
-  787: 				break;
-002CE4 A16A              AJMP    ?C0157?KB_PROCESS
-  788: 			case HID_KEY_F9:
-002CE6         ?C0186?KB_PROCESS:
-  789: 				temp = HID_MULTIKEY_NEXT_TRACK;
-002CE6 904EED            MOV     DPTR,#temp
-002CE9 74F5              MOV     A,#0F5H
-002CEB F0                MOVX    @DPTR,A
-  790: 				break;
-002CEC 807C              SJMP    ?C0157?KB_PROCESS
-  791: 			case HID_KEY_F10:
-002CEE         ?C0187?KB_PROCESS:
-  792: 				temp = HID_MULTIKEY_VOL_DOWN;
-002CEE 904EED            MOV     DPTR,#temp
-002CF1 74F6              MOV     A,#0F6H
-002CF3 F0                MOVX    @DPTR,A
-  793: 				break;
-002CF4 8074              SJMP    ?C0157?KB_PROCESS
-  794: 			case HID_KEY_F11:
-002CF6         ?C0188?KB_PROCESS:
-  795: 				temp = HID_MULTIKEY_VOL_UP;
-002CF6 904EED            MOV     DPTR,#temp
-002CF9 74F7              MOV     A,#0F7H
-002CFB F0                MOVX    @DPTR,A
-  796: 				break;
-002CFC 806C              SJMP    ?C0157?KB_PROCESS
-  797: 			case HID_KEY_F12:	//language switch
-002CFE         ?C0189?KB_PROCESS:
-  798: 				if(g_variable.system_mode == OSMODE_WINDOWS)		
-002CFE 904CC1            MOV     DPTR,#g_variable+02H
-002D01 E0                MOVX    A,@DPTR
-002D02 701A              JNZ     ?C0190?KB_PROCESS
-  799: 				{
-  800: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_L);
-002D04 904EEB            MOV     DPTR,#state
-002D07 E0                MOVX    A,@DPTR
-002D08 FF                MOV     R7,A
-002D09 7B0F              MOV     R3,#0FH
-002D0B 7D08              MOV     R5,#08H
-002D0D 711D              ACALL   _kb_combination_key_press
-  801: 					if(state & 1)
-002D0F 904EEB            MOV     DPTR,#state
-002D12 E0                MOVX    A,@DPTR
-002D13 30E054            JNB     ACC.0,?C0157?KB_PROCESS
-  802: 					{						
-  803: 					g_variable.one_key_press_wait_release_timer = 10;
-002D16 904CFA            MOV     DPTR,#g_variable+03BH
-002D19 740A              MOV     A,#0AH
-002D1B F0                MOVX    @DPTR,A
-  804: 					}	
-  805: 				}
-002D1C 804C              SJMP    ?C0157?KB_PROCESS
-002D1E         ?C0190?KB_PROCESS:
-  806: 				else
-  807: 				{
-  808: 				temp = HID_MULTIKEY_OS_LOCK;
-002D1E 904EED            MOV     DPTR,#temp
-002D21 74DA              MOV     A,#0DAH
-002D23 F0                MOVX    @DPTR,A
-  809: 				}	
-  810: 				
-  811: 				break;	
-002D24 8044              SJMP    ?C0157?KB_PROCESS
-  812: 			case HID_KEY_Z:
-002D26         ?C0193?KB_PROCESS:
-  813: 				temp = HID_KEY_K45;
-002D26 904EED            MOV     DPTR,#temp
-002D29 7464              MOV     A,#064H
-002D2B F0                MOVX    @DPTR,A
-  814: 				break;	
-002D2C 803C              SJMP    ?C0157?KB_PROCESS
-  815: 			case HID_KEY_X:
-002D2E         ?C0194?KB_PROCESS:
-  816: 				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_K45);
-002D2E 904EEB            MOV     DPTR,#state
-002D31 E0                MOVX    A,@DPTR
-002D32 FF                MOV     R7,A
-002D33 7B64              MOV     R3,#064H
-002D35 7D02              MOV     R5,#02H
-002D37 711D              ACALL   _kb_combination_key_press
-  817: 				if(state & 1)
-002D39 904EEB            MOV     DPTR,#state
-002D3C E0                MOVX    A,@DPTR
-002D3D 30E006            JNB     ACC.0,?C0195?KB_PROCESS
-  818: 				{						
-  819: 				g_variable.one_key_press_wait_release_timer = 10;
-002D40 904CFA            MOV     DPTR,#g_variable+03BH
-002D43 740A              MOV     A,#0AH
-002D45 F0                MOVX    @DPTR,A
-  820: 				}	
-002D46         ?C0195?KB_PROCESS:
-  821: 				temp = HID_KEY_NULL;				
-002D46 E4                CLR     A
-002D47 904EED            MOV     DPTR,#temp
-002D4A F0                MOVX    @DPTR,A
-  822: 				break;	
-002D4B 801D              SJMP    ?C0157?KB_PROCESS
-  823: 			case HID_KEY_C:
-002D4D         ?C0196?KB_PROCESS:
-  824: 				kb_combination_key_press(state,KS_SEL_RALT,HID_KEY_K45);
-002D4D 904EEB            MOV     DPTR,#state
-002D50 E0                MOVX    A,@DPTR
-002D51 FF                MOV     R7,A
-002D52 7B64              MOV     R3,#064H
-002D54 7D40              MOV     R5,#040H
-002D56 711D              ACALL   _kb_combination_key_press
-  825: 				if(state & 1)
+002CAC B4021A            CJNE    A,#02H,?C0182?KB_PROCESS
+  770: 				{
+  771: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_X);
+002CAF 904EEB            MOV     DPTR,#state
+002CB2 E0                MOVX    A,@DPTR
+002CB3 FF                MOV     R7,A
+002CB4 7B1B              MOV     R3,#01BH
+002CB6 7D08              MOV     R5,#08H
+002CB8 711D              ACALL   _kb_combination_key_press
+  772: 					if(state & 1)
+002CBA 904EEB            MOV     DPTR,#state
+002CBD E0                MOVX    A,@DPTR
+002CBE 30E020            JNB     ACC.0,?C0184?KB_PROCESS
+  773: 					{						
+  774: 					g_variable.one_key_press_wait_release_timer = 10;
+002CC1 904CFA            MOV     DPTR,#g_variable+03BH
+002CC4 740A              MOV     A,#0AH
+002CC6 F0                MOVX    @DPTR,A
+  775: 					}	
+  776: 				}
+002CC7 8018              SJMP    ?C0184?KB_PROCESS
+002CC9         ?C0182?KB_PROCESS:
+  777: 				else
+  778: 				{
+  779: 				kb_combination_key_press(state,KS_SEL_LCTRL,HID_KEY_X);
+002CC9 904EEB            MOV     DPTR,#state
+002CCC E0                MOVX    A,@DPTR
+002CCD FF                MOV     R7,A
+002CCE 7B1B              MOV     R3,#01BH
+002CD0 7D01              MOV     R5,#01H
+002CD2 711D              ACALL   _kb_combination_key_press
+  780: 					if(state & 1)    
+002CD4 904EEB            MOV     DPTR,#state
+002CD7 E0                MOVX    A,@DPTR
+002CD8 30E006            JNB     ACC.0,?C0184?KB_PROCESS
+  781: 					{            
+  782: 					g_variable.one_key_press_wait_release_timer = 10;     
+002CDB 904CFA            MOV     DPTR,#g_variable+03BH
+002CDE 740A              MOV     A,#0AH
+002CE0 F0                MOVX    @DPTR,A
+  783: 					}	
+  784: 				}	
+002CE1         ?C0184?KB_PROCESS:
+  785: 				temp = HID_KEY_NULL;
+002CE1 E4                CLR     A
+002CE2 904EED            MOV     DPTR,#temp
+002CE5 F0                MOVX    @DPTR,A
+  786: 				break;
+002CE6 A1CA              AJMP    ?C0159?KB_PROCESS
+  787: 			case HID_KEY_F7:
+002CE8         ?C0186?KB_PROCESS:
+  788: 				temp = HID_MULTIKEY_PRE_TRACK;
+002CE8 904EED            MOV     DPTR,#temp
+002CEB 74F4              MOV     A,#0F4H
+002CED F0                MOVX    @DPTR,A
+  789: 				break;
+002CEE A1CA              AJMP    ?C0159?KB_PROCESS
+  790: 			case HID_KEY_F8:
+002CF0         ?C0187?KB_PROCESS:
+  791: 				temp = HID_MULTIKEY_PALY;
+002CF0 904EED            MOV     DPTR,#temp
+002CF3 74F2              MOV     A,#0F2H
+002CF5 F0                MOVX    @DPTR,A
+  792: 				break;
+002CF6 A1CA              AJMP    ?C0159?KB_PROCESS
+  793: 			case HID_KEY_F9:
+002CF8         ?C0188?KB_PROCESS:
+  794: 				temp = HID_MULTIKEY_NEXT_TRACK;
+002CF8 904EED            MOV     DPTR,#temp
+002CFB 74F5              MOV     A,#0F5H
+002CFD F0                MOVX    @DPTR,A
+  795: 				break;
+002CFE A1CA              AJMP    ?C0159?KB_PROCESS
+  796: 			case HID_KEY_F10:
+002D00         ?C0189?KB_PROCESS:
+  797: 				temp = HID_MULTIKEY_VOL_DOWN;
+002D00 904EED            MOV     DPTR,#temp
+002D03 74F6              MOV     A,#0F6H
+002D05 F0                MOVX    @DPTR,A
+  798: 				break;
+002D06 A1CA              AJMP    ?C0159?KB_PROCESS
+  799: 			case HID_KEY_F11:
+002D08         ?C0190?KB_PROCESS:
+  800: 				temp = HID_MULTIKEY_VOL_UP;
+002D08 904EED            MOV     DPTR,#temp
+002D0B 74F7              MOV     A,#0F7H
+002D0D F0                MOVX    @DPTR,A
+  801: 				break;
+002D0E A1CA              AJMP    ?C0159?KB_PROCESS
+  802: 			case HID_KEY_F12:	//language switch
+002D10         ?C0191?KB_PROCESS:
+  803: 				if(g_variable.system_mode == OSMODE_WINDOWS)		
+002D10 904CC1            MOV     DPTR,#g_variable+02H
+002D13 E0                MOVX    A,@DPTR
+002D14 701C              JNZ     ?C0192?KB_PROCESS
+  804: 				{
+  805: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_L);
+002D16 904EEB            MOV     DPTR,#state
+002D19 E0                MOVX    A,@DPTR
+002D1A FF                MOV     R7,A
+002D1B 7B0F              MOV     R3,#0FH
+002D1D 7D08              MOV     R5,#08H
+002D1F 711D              ACALL   _kb_combination_key_press
+  806: 					if(state & 1)
+002D21 904EEB            MOV     DPTR,#state
+002D24 E0                MOVX    A,@DPTR
+002D25 20E002            JB      ACC.0,$ + 5H
+002D28 A1CA              AJMP    ?C0159?KB_PROCESS
+  807: 					{						
+  808: 					g_variable.one_key_press_wait_release_timer = 10;
+002D2A 904CFA            MOV     DPTR,#g_variable+03BH
+002D2D 740A              MOV     A,#0AH
+002D2F F0                MOVX    @DPTR,A
+  809: 					}	
+  810: 				}
+002D30 A1CA              AJMP    ?C0159?KB_PROCESS
+002D32         ?C0192?KB_PROCESS:
+  811: 				else
+  812: 				{
+  813: 				temp = HID_MULTIKEY_OS_LOCK;
+002D32 904EED            MOV     DPTR,#temp
+002D35 74DA              MOV     A,#0DAH
+002D37 F0                MOVX    @DPTR,A
+  814: 				}	
+  815: 				
+  816: 				break;	
+002D38 A1CA              AJMP    ?C0159?KB_PROCESS
+  817: 			case HID_KEY_Z:		
+002D3A         ?C0195?KB_PROCESS:
+  818: 				if(g_variable.system_mode == OSMODE_IOS)		
+002D3A 904CC1            MOV     DPTR,#g_variable+02H
+002D3D E0                MOVX    A,@DPTR
+002D3E B40208            CJNE    A,#02H,?C0196?KB_PROCESS
+  819: 				{
+  820: 					temp = HID_KEY_TILDE;
+002D41 904EED            MOV     DPTR,#temp
+002D44 7435              MOV     A,#035H
+002D46 F0                MOVX    @DPTR,A
+  821: 				}
+002D47 A1CA              AJMP    ?C0159?KB_PROCESS
+002D49         ?C0196?KB_PROCESS:
+  822: 				else	
+  823: 					temp = HID_KEY_K45;
+002D49 904EED            MOV     DPTR,#temp
+002D4C 7464              MOV     A,#064H
+002D4E F0                MOVX    @DPTR,A
+  824: 				break;	
+002D4F 8079              SJMP    ?C0159?KB_PROCESS
+  825: 			case HID_KEY_X:
+002D51         ?C0198?KB_PROCESS:
+  826: 				if(g_variable.system_mode == OSMODE_IOS)		
+002D51 904CC1            MOV     DPTR,#g_variable+02H
+002D54 E0                MOVX    A,@DPTR
+002D55 B4021A            CJNE    A,#02H,?C0199?KB_PROCESS
+  827: 				{			
+  828: 					kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_TILDE);
 002D58 904EEB            MOV     DPTR,#state
 002D5B E0                MOVX    A,@DPTR
-002D5C 30E006            JNB     ACC.0,?C0197?KB_PROCESS
-  826: 				{						
-  827: 				g_variable.one_key_press_wait_release_timer = 10;
-002D5F 904CFA            MOV     DPTR,#g_variable+03BH
-002D62 740A              MOV     A,#0AH
-002D64 F0                MOVX    @DPTR,A
-  828: 				}	
-002D65         ?C0197?KB_PROCESS:
-  829: 				temp = HID_KEY_NULL;				
-002D65 E4                CLR     A
-002D66 904EED            MOV     DPTR,#temp
-002D69 F0                MOVX    @DPTR,A
-  830: 			default :
-  831: 				break;	
-  832: 		}
-  833: 	}	
-002D6A         ?C0157?KB_PROCESS:
-  834: 	if(fn_flag == 1)			// Fn lock
-002D6A 904DE2            MOV     DPTR,#fn_flag
-002D6D E0                MOVX    A,@DPTR
-002D6E 6401              XRL     A,#01H
-002D70 6002              JZ      $ + 4H
-002D72 E159              AJMP    ?C0199?KB_PROCESS
-  835: 	{
-  836: /*		 if(key_value == HID_KEY_ESC)
-  837: 		{
-  838: 			if(state & 1)
-  839: 			{						
-  840: 				if(fn_lock_flag)
-  841: 				{
-  842: 					fn_lock_flag = 0;
-  843: 				}
-  844: 				else
-  845: 					fn_lock_flag = 1;
-  846: 					
-  847: 				if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-  848: 				{
-  849: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-  850: 				}
-  851: 				else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-  852: 				{
-  853: 					bd_key_record_list[g_variable.current_device_num - 1].fn_lock = fn_lock_flag;
-  854: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-  855: 				}
-  856: 			}
-  857: 			temp = HID_KEY_NULL;
-  858: 		}	
-  859: */
-  860: 		switch (key_value)
-002D74 904EEC            MOV     DPTR,#key_value
-002D77 E0                MOVX    A,@DPTR
-002D78 24F8              ADD     A,#0F8H
-002D7A 7002              JNZ     $ + 4H
-002D7C C150              AJMP    ?C0215?KB_PROCESS
-002D7E 24EE              ADD     A,#0EEH
-002D80 6076              JZ      ?C0208?KB_PROCESS
-002D82 24CB              ADD     A,#0CBH
-002D84 7002              JNZ     $ + 4H
-002D86 C1AB              AJMP    ?C0222?KB_PROCESS
-002D88 14                DEC     A
-002D89 7002              JNZ     $ + 4H
-002D8B C1D7              AJMP    ?C0225?KB_PROCESS
-002D8D 14                DEC     A
-002D8E 7002              JNZ     $ + 4H
-002D90 E103              AJMP    ?C0228?KB_PROCESS
-002D92 14                DEC     A
-002D93 7002              JNZ     $ + 4H
-002D95 E12F              AJMP    ?C0231?KB_PROCESS
-002D97 243E              ADD     A,#03EH
-002D99 6002              JZ      $ + 4H
-002D9B E159              AJMP    ?C0199?KB_PROCESS
-  861: 		{ 		
-  862: 			case HID_KEY_Q:
-002D9D         ?C0201?KB_PROCESS:
-  863: 				if(g_variable.system_mode != OSMODE_ANDROID)
-002D9D 904CC1            MOV     DPTR,#g_variable+02H
-002DA0 E0                MOVX    A,@DPTR
-002DA1 6401              XRL     A,#01H
-002DA3 603F              JZ      ?C0202?KB_PROCESS
-  864: 				{
-  865: 					g_variable.system_mode = OSMODE_ANDROID;
-002DA5 7401              MOV     A,#01H
-002DA7 F0                MOVX    @DPTR,A
-  866: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-002DA8 904CC3            MOV     DPTR,#g_variable+04H
-002DAB E0                MOVX    A,@DPTR
-002DAC FF                MOV     R7,A
-002DAD 6003              JZ      ?C0204?KB_PROCESS
-002DAF B4FE08            CJNE    A,#0FEH,?C0203?KB_PROCESS
-002DB2         ?C0204?KB_PROCESS:
-  867: 					{
-  868: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-002DB2 904CBF            MOV     DPTR,#g_variable
-002DB5 7402              MOV     A,#02H
-002DB7 F0                MOVX    @DPTR,A
-  869: 					}
-002DB8 802A              SJMP    ?C0202?KB_PROCESS
-002DBA         ?C0203?KB_PROCESS:
-  870: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-002DBA EF                MOV     A,R7
-002DBB D3                SETB    C
-002DBC 9403              SUBB    A,#03H
-002DBE 5024              JNC     ?C0202?KB_PROCESS
-002DC0 EF                MOV     A,R7
-002DC1 C3                CLR     C
-002DC2 9401              SUBB    A,#01H
-002DC4 401E              JC      ?C0202?KB_PROCESS
-  871: 					{
-  872: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-002DC6 904CC1            MOV     DPTR,#g_variable+02H
-002DC9 E0                MOVX    A,@DPTR
-002DCA FF                MOV     R7,A
-002DCB 904CC3            MOV     DPTR,#g_variable+04H
-002DCE E0                MOVX    A,@DPTR
-002DCF 75F01F            MOV     B,#01FH
-002DD2 A4                MUL     AB
-002DD3 24EC              ADD     A,#LOW bd_key_record_list-02H
-002DD5 F582              MOV     DPL,A
-002DD7 E4                CLR     A
-002DD8 344D              ADDC    A,#HIGH bd_key_record_list-02H
-002DDA F583              MOV     DPH,A
-002DDC EF                MOV     A,R7
-002DDD F0                MOVX    @DPTR,A
-  873: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-002DDE 904CBF            MOV     DPTR,#g_variable
-002DE1 7403              MOV     A,#03H
-002DE3 F0                MOVX    @DPTR,A
-  874: 					}
-  875: 				}
-002DE4         ?C0202?KB_PROCESS:
-  876: 				if(state & 1)
-002DE4 904EEB            MOV     DPTR,#state
-002DE7 E0                MOVX    A,@DPTR
-002DE8 30E006            JNB     ACC.0,?C0207?KB_PROCESS
-  877: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-002DEB 904CE8            MOV     DPTR,#g_variable+029H
-002DEE 740C              MOV     A,#0CH
-002DF0 F0                MOVX    @DPTR,A
-002DF1         ?C0207?KB_PROCESS:
-  878: 				temp = HID_KEY_NULL;
-002DF1 E4                CLR     A
-002DF2 904EED            MOV     DPTR,#temp
-002DF5 F0                MOVX    @DPTR,A
-  879: 				break;
-002DF6 E159              AJMP    ?C0199?KB_PROCESS
-  880: 			case HID_KEY_W:
-002DF8         ?C0208?KB_PROCESS:
-  881: 				if(g_variable.system_mode != OSMODE_WINDOWS)
-002DF8 904CC1            MOV     DPTR,#g_variable+02H
-002DFB E0                MOVX    A,@DPTR
-002DFC 603E              JZ      ?C0209?KB_PROCESS
-  882: 				{
-  883: 					g_variable.system_mode = OSMODE_WINDOWS;
-002DFE E4                CLR     A
-002DFF F0                MOVX    @DPTR,A
-  884: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-002E00 904CC3            MOV     DPTR,#g_variable+04H
-002E03 E0                MOVX    A,@DPTR
-002E04 FF                MOV     R7,A
-002E05 6003              JZ      ?C0211?KB_PROCESS
-002E07 B4FE08            CJNE    A,#0FEH,?C0210?KB_PROCESS
-002E0A         ?C0211?KB_PROCESS:
-  885: 					{
-  886: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-002E0A 904CBF            MOV     DPTR,#g_variable
-002E0D 7402              MOV     A,#02H
-002E0F F0                MOVX    @DPTR,A
-  887: 					}
-002E10 802A              SJMP    ?C0209?KB_PROCESS
-002E12         ?C0210?KB_PROCESS:
-  888: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-002E12 EF                MOV     A,R7
-002E13 D3                SETB    C
-002E14 9403              SUBB    A,#03H
-002E16 5024              JNC     ?C0209?KB_PROCESS
-002E18 EF                MOV     A,R7
-002E19 C3                CLR     C
-002E1A 9401              SUBB    A,#01H
-002E1C 401E              JC      ?C0209?KB_PROCESS
-  889: 					{
-  890: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-002E1E 904CC1            MOV     DPTR,#g_variable+02H
-002E21 E0                MOVX    A,@DPTR
-002E22 FF                MOV     R7,A
-002E23 904CC3            MOV     DPTR,#g_variable+04H
-002E26 E0                MOVX    A,@DPTR
-002E27 75F01F            MOV     B,#01FH
-002E2A A4                MUL     AB
-002E2B 24EC              ADD     A,#LOW bd_key_record_list-02H
-002E2D F582              MOV     DPL,A
-002E2F E4                CLR     A
-002E30 344D              ADDC    A,#HIGH bd_key_record_list-02H
-002E32 F583              MOV     DPH,A
-002E34 EF                MOV     A,R7
-002E35 F0                MOVX    @DPTR,A
-  891: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-002E36 904CBF            MOV     DPTR,#g_variable
-002E39 7403              MOV     A,#03H
-002E3B F0                MOVX    @DPTR,A
-  892: 					}
-  893: 				}
-002E3C         ?C0209?KB_PROCESS:
-  894: 				if(state & 1)
-002E3C 904EEB            MOV     DPTR,#state
-002E3F E0                MOVX    A,@DPTR
-002E40 30E006            JNB     ACC.0,?C0214?KB_PROCESS
-  895: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-002E43 904CE8            MOV     DPTR,#g_variable+029H
-002E46 740C              MOV     A,#0CH
-002E48 F0                MOVX    @DPTR,A
-002E49         ?C0214?KB_PROCESS:
-  896: 				temp = HID_KEY_NULL;
-002E49 E4                CLR     A
-002E4A 904EED            MOV     DPTR,#temp
-002E4D F0                MOVX    @DPTR,A
-  897: 				break;
-002E4E E159              AJMP    ?C0199?KB_PROCESS
-  898: 			case HID_KEY_E:
-002E50         ?C0215?KB_PROCESS:
-  899: 				if(g_variable.system_mode != OSMODE_IOS)
-002E50 904CC1            MOV     DPTR,#g_variable+02H
-002E53 E0                MOVX    A,@DPTR
-002E54 6402              XRL     A,#02H
-002E56 603F              JZ      ?C0216?KB_PROCESS
-  900: 				{
-  901: 					g_variable.system_mode = OSMODE_IOS;
-002E58 7402              MOV     A,#02H
-002E5A F0                MOVX    @DPTR,A
-  902: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-002E5B 904CC3            MOV     DPTR,#g_variable+04H
-002E5E E0                MOVX    A,@DPTR
-002E5F FF                MOV     R7,A
-002E60 6003              JZ      ?C0218?KB_PROCESS
-002E62 B4FE08            CJNE    A,#0FEH,?C0217?KB_PROCESS
-002E65         ?C0218?KB_PROCESS:
-  903: 					{
-  904: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-002E65 904CBF            MOV     DPTR,#g_variable
-002E68 7402              MOV     A,#02H
-002E6A F0                MOVX    @DPTR,A
+002D5C FF                MOV     R7,A
+002D5D 7B35              MOV     R3,#035H
+002D5F 7D02              MOV     R5,#02H
+002D61 711D              ACALL   _kb_combination_key_press
+  829: 					if(state & 1)
+002D63 904EEB            MOV     DPTR,#state
+002D66 E0                MOVX    A,@DPTR
+002D67 30E013            JNB     ACC.0,?C0201?KB_PROCESS
+  830: 					{						
+  831: 					g_variable.one_key_press_wait_release_timer = 10;
+002D6A 904CFA            MOV     DPTR,#g_variable+03BH
+002D6D 740A              MOV     A,#0AH
+002D6F F0                MOVX    @DPTR,A
+  832: 					}	
+  833: 				}
+002D70 800B              SJMP    ?C0201?KB_PROCESS
+002D72         ?C0199?KB_PROCESS:
+  834: 				else
+  835: 					kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_K45);
+002D72 904EEB            MOV     DPTR,#state
+002D75 E0                MOVX    A,@DPTR
+002D76 FF                MOV     R7,A
+002D77 7B64              MOV     R3,#064H
+002D79 7D02              MOV     R5,#02H
+002D7B 711D              ACALL   _kb_combination_key_press
+002D7D         ?C0201?KB_PROCESS:
+  836: 					if(state & 1)
+002D7D 904EEB            MOV     DPTR,#state
+002D80 E0                MOVX    A,@DPTR
+002D81 30E046            JNB     ACC.0,?C0159?KB_PROCESS
+  837: 					{						
+  838: 					g_variable.one_key_press_wait_release_timer = 10;
+002D84 904CFA            MOV     DPTR,#g_variable+03BH
+002D87 740A              MOV     A,#0AH
+002D89 F0                MOVX    @DPTR,A
+  839: 					}				
+  840: 				break;	
+002D8A 803E              SJMP    ?C0159?KB_PROCESS
+  841: 			case HID_KEY_C:
+002D8C         ?C0203?KB_PROCESS:
+  842: 				if(g_variable.system_mode == OSMODE_IOS)		
+002D8C 904CC1            MOV     DPTR,#g_variable+02H
+002D8F E0                MOVX    A,@DPTR
+002D90 B4021A            CJNE    A,#02H,?C0204?KB_PROCESS
+  843: 				{			
+  844: 					kb_combination_key_press(state,KS_SEL_RALT,HID_KEY_TILDE);
+002D93 904EEB            MOV     DPTR,#state
+002D96 E0                MOVX    A,@DPTR
+002D97 FF                MOV     R7,A
+002D98 7B35              MOV     R3,#035H
+002D9A 7D40              MOV     R5,#040H
+002D9C 711D              ACALL   _kb_combination_key_press
+  845: 					if(state & 1)
+002D9E 904EEB            MOV     DPTR,#state
+002DA1 E0                MOVX    A,@DPTR
+002DA2 30E020            JNB     ACC.0,?C0206?KB_PROCESS
+  846: 					{						
+  847: 					g_variable.one_key_press_wait_release_timer = 10;
+002DA5 904CFA            MOV     DPTR,#g_variable+03BH
+002DA8 740A              MOV     A,#0AH
+002DAA F0                MOVX    @DPTR,A
+  848: 					}	
+  849: 				}	
+002DAB 8018              SJMP    ?C0206?KB_PROCESS
+002DAD         ?C0204?KB_PROCESS:
+  850: 				else
+  851: 				{
+  852: 					kb_combination_key_press(state,KS_SEL_RALT,HID_KEY_K45);
+002DAD 904EEB            MOV     DPTR,#state
+002DB0 E0                MOVX    A,@DPTR
+002DB1 FF                MOV     R7,A
+002DB2 7B64              MOV     R3,#064H
+002DB4 7D40              MOV     R5,#040H
+002DB6 711D              ACALL   _kb_combination_key_press
+  853: 					if(state & 1)
+002DB8 904EEB            MOV     DPTR,#state
+002DBB E0                MOVX    A,@DPTR
+002DBC 30E006            JNB     ACC.0,?C0206?KB_PROCESS
+  854: 					{						
+  855: 					g_variable.one_key_press_wait_release_timer = 10;
+002DBF 904CFA            MOV     DPTR,#g_variable+03BH
+002DC2 740A              MOV     A,#0AH
+002DC4 F0                MOVX    @DPTR,A
+  856: 					}	
+  857: 				}
+002DC5         ?C0206?KB_PROCESS:
+  858: 				temp = HID_KEY_NULL;	
+002DC5 E4                CLR     A
+002DC6 904EED            MOV     DPTR,#temp
+002DC9 F0                MOVX    @DPTR,A
+  859: 
+  860: 				break;					
+  861: 			default :
+  862: 				break;	
+  863: 		}
+  864: 	}	
+002DCA         ?C0159?KB_PROCESS:
+  865: 	if(fn_flag == 1)			// Fn lock
+002DCA 904DE2            MOV     DPTR,#fn_flag
+002DCD E0                MOVX    A,@DPTR
+002DCE 6401              XRL     A,#01H
+002DD0 6002              JZ      $ + 4H
+002DD2 E1B9              AJMP    ?C0209?KB_PROCESS
+  866: 	{
+  867: /*		 if(key_value == HID_KEY_ESC)
+  868: 		{
+  869: 			if(state & 1)
+  870: 			{						
+  871: 				if(fn_lock_flag)
+  872: 				{
+  873: 					fn_lock_flag = 0;
+  874: 				}
+  875: 				else
+  876: 					fn_lock_flag = 1;
+  877: 					
+  878: 				if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+  879: 				{
+  880: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+  881: 				}
+  882: 				else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+  883: 				{
+  884: 					bd_key_record_list[g_variable.current_device_num - 1].fn_lock = fn_lock_flag;
+  885: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+  886: 				}
+  887: 			}
+  888: 			temp = HID_KEY_NULL;
+  889: 		}	
+  890: */
+  891: 		switch (key_value)
+002DD4 904EEC            MOV     DPTR,#key_value
+002DD7 E0                MOVX    A,@DPTR
+002DD8 24F8              ADD     A,#0F8H
+002DDA 7002              JNZ     $ + 4H
+002DDC C1B0              AJMP    ?C0225?KB_PROCESS
+002DDE 24EE              ADD     A,#0EEH
+002DE0 6076              JZ      ?C0218?KB_PROCESS
+002DE2 24CB              ADD     A,#0CBH
+002DE4 7002              JNZ     $ + 4H
+002DE6 E10B              AJMP    ?C0232?KB_PROCESS
+002DE8 14                DEC     A
+002DE9 7002              JNZ     $ + 4H
+002DEB E137              AJMP    ?C0235?KB_PROCESS
+002DED 14                DEC     A
+002DEE 7002              JNZ     $ + 4H
+002DF0 E163              AJMP    ?C0238?KB_PROCESS
+002DF2 14                DEC     A
+002DF3 7002              JNZ     $ + 4H
+002DF5 E18F              AJMP    ?C0241?KB_PROCESS
+002DF7 243E              ADD     A,#03EH
+002DF9 6002              JZ      $ + 4H
+002DFB E1B9              AJMP    ?C0209?KB_PROCESS
+  892: 		{ 		
+  893: 			case HID_KEY_Q:
+002DFD         ?C0211?KB_PROCESS:
+  894: 				if(g_variable.system_mode != OSMODE_ANDROID)
+002DFD 904CC1            MOV     DPTR,#g_variable+02H
+002E00 E0                MOVX    A,@DPTR
+002E01 6401              XRL     A,#01H
+002E03 603F              JZ      ?C0212?KB_PROCESS
+  895: 				{
+  896: 					g_variable.system_mode = OSMODE_ANDROID;
+002E05 7401              MOV     A,#01H
+002E07 F0                MOVX    @DPTR,A
+  897: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002E08 904CC3            MOV     DPTR,#g_variable+04H
+002E0B E0                MOVX    A,@DPTR
+002E0C FF                MOV     R7,A
+002E0D 6003              JZ      ?C0214?KB_PROCESS
+002E0F B4FE08            CJNE    A,#0FEH,?C0213?KB_PROCESS
+002E12         ?C0214?KB_PROCESS:
+  898: 					{
+  899: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+002E12 904CBF            MOV     DPTR,#g_variable
+002E15 7402              MOV     A,#02H
+002E17 F0                MOVX    @DPTR,A
+  900: 					}
+002E18 802A              SJMP    ?C0212?KB_PROCESS
+002E1A         ?C0213?KB_PROCESS:
+  901: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+002E1A EF                MOV     A,R7
+002E1B D3                SETB    C
+002E1C 9403              SUBB    A,#03H
+002E1E 5024              JNC     ?C0212?KB_PROCESS
+002E20 EF                MOV     A,R7
+002E21 C3                CLR     C
+002E22 9401              SUBB    A,#01H
+002E24 401E              JC      ?C0212?KB_PROCESS
+  902: 					{
+  903: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+002E26 904CC1            MOV     DPTR,#g_variable+02H
+002E29 E0                MOVX    A,@DPTR
+002E2A FF                MOV     R7,A
+002E2B 904CC3            MOV     DPTR,#g_variable+04H
+002E2E E0                MOVX    A,@DPTR
+002E2F 75F01F            MOV     B,#01FH
+002E32 A4                MUL     AB
+002E33 24EC              ADD     A,#LOW bd_key_record_list-02H
+002E35 F582              MOV     DPL,A
+002E37 E4                CLR     A
+002E38 344D              ADDC    A,#HIGH bd_key_record_list-02H
+002E3A F583              MOV     DPH,A
+002E3C EF                MOV     A,R7
+002E3D F0                MOVX    @DPTR,A
+  904: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+002E3E 904CBF            MOV     DPTR,#g_variable
+002E41 7403              MOV     A,#03H
+002E43 F0                MOVX    @DPTR,A
   905: 					}
-002E6B 802A              SJMP    ?C0216?KB_PROCESS
-002E6D         ?C0217?KB_PROCESS:
-  906: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-002E6D EF                MOV     A,R7
-002E6E D3                SETB    C
-002E6F 9403              SUBB    A,#03H
-002E71 5024              JNC     ?C0216?KB_PROCESS
-002E73 EF                MOV     A,R7
-002E74 C3                CLR     C
-002E75 9401              SUBB    A,#01H
-002E77 401E              JC      ?C0216?KB_PROCESS
-  907: 					{
-  908: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-002E79 904CC1            MOV     DPTR,#g_variable+02H
-002E7C E0                MOVX    A,@DPTR
-002E7D FF                MOV     R7,A
-002E7E 904CC3            MOV     DPTR,#g_variable+04H
+  906: 				}
+002E44         ?C0212?KB_PROCESS:
+  907: 				if(state & 1)
+002E44 904EEB            MOV     DPTR,#state
+002E47 E0                MOVX    A,@DPTR
+002E48 30E006            JNB     ACC.0,?C0217?KB_PROCESS
+  908: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+002E4B 904CE8            MOV     DPTR,#g_variable+029H
+002E4E 740C              MOV     A,#0CH
+002E50 F0                MOVX    @DPTR,A
+002E51         ?C0217?KB_PROCESS:
+  909: 				temp = HID_KEY_NULL;
+002E51 E4                CLR     A
+002E52 904EED            MOV     DPTR,#temp
+002E55 F0                MOVX    @DPTR,A
+  910: 				break;
+002E56 E1B9              AJMP    ?C0209?KB_PROCESS
+  911: 			case HID_KEY_W:
+002E58         ?C0218?KB_PROCESS:
+  912: 				if(g_variable.system_mode != OSMODE_WINDOWS)
+002E58 904CC1            MOV     DPTR,#g_variable+02H
+002E5B E0                MOVX    A,@DPTR
+002E5C 603E              JZ      ?C0219?KB_PROCESS
+  913: 				{
+  914: 					g_variable.system_mode = OSMODE_WINDOWS;
+002E5E E4                CLR     A
+002E5F F0                MOVX    @DPTR,A
+  915: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002E60 904CC3            MOV     DPTR,#g_variable+04H
+002E63 E0                MOVX    A,@DPTR
+002E64 FF                MOV     R7,A
+002E65 6003              JZ      ?C0221?KB_PROCESS
+002E67 B4FE08            CJNE    A,#0FEH,?C0220?KB_PROCESS
+002E6A         ?C0221?KB_PROCESS:
+  916: 					{
+  917: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+002E6A 904CBF            MOV     DPTR,#g_variable
+002E6D 7402              MOV     A,#02H
+002E6F F0                MOVX    @DPTR,A
+  918: 					}
+002E70 802A              SJMP    ?C0219?KB_PROCESS
+002E72         ?C0220?KB_PROCESS:
+  919: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+002E72 EF                MOV     A,R7
+002E73 D3                SETB    C
+002E74 9403              SUBB    A,#03H
+002E76 5024              JNC     ?C0219?KB_PROCESS
+002E78 EF                MOV     A,R7
+002E79 C3                CLR     C
+002E7A 9401              SUBB    A,#01H
+002E7C 401E              JC      ?C0219?KB_PROCESS
+  920: 					{
+  921: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+002E7E 904CC1            MOV     DPTR,#g_variable+02H
 002E81 E0                MOVX    A,@DPTR
-002E82 75F01F            MOV     B,#01FH
-002E85 A4                MUL     AB
-002E86 24EC              ADD     A,#LOW bd_key_record_list-02H
-002E88 F582              MOV     DPL,A
-002E8A E4                CLR     A
-002E8B 344D              ADDC    A,#HIGH bd_key_record_list-02H
-002E8D F583              MOV     DPH,A
-002E8F EF                MOV     A,R7
-002E90 F0                MOVX    @DPTR,A
-  909: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-002E91 904CBF            MOV     DPTR,#g_variable
-002E94 7403              MOV     A,#03H
-002E96 F0                MOVX    @DPTR,A
-  910: 					}
-  911: 				}
-002E97         ?C0216?KB_PROCESS:
-  912: 				if(state & 1)
-002E97 904EEB            MOV     DPTR,#state
-002E9A E0                MOVX    A,@DPTR
-002E9B 30E006            JNB     ACC.0,?C0221?KB_PROCESS
-  913: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-002E9E 904CE8            MOV     DPTR,#g_variable+029H
-002EA1 740C              MOV     A,#0CH
-002EA3 F0                MOVX    @DPTR,A
-002EA4         ?C0221?KB_PROCESS:
-  914: 				
-  915: 				temp = HID_KEY_NULL;
-002EA4 E4                CLR     A
-002EA5 904EED            MOV     DPTR,#temp
+002E82 FF                MOV     R7,A
+002E83 904CC3            MOV     DPTR,#g_variable+04H
+002E86 E0                MOVX    A,@DPTR
+002E87 75F01F            MOV     B,#01FH
+002E8A A4                MUL     AB
+002E8B 24EC              ADD     A,#LOW bd_key_record_list-02H
+002E8D F582              MOV     DPL,A
+002E8F E4                CLR     A
+002E90 344D              ADDC    A,#HIGH bd_key_record_list-02H
+002E92 F583              MOV     DPH,A
+002E94 EF                MOV     A,R7
+002E95 F0                MOVX    @DPTR,A
+  922: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+002E96 904CBF            MOV     DPTR,#g_variable
+002E99 7403              MOV     A,#03H
+002E9B F0                MOVX    @DPTR,A
+  923: 					}
+  924: 				}
+002E9C         ?C0219?KB_PROCESS:
+  925: 				if(state & 1)
+002E9C 904EEB            MOV     DPTR,#state
+002E9F E0                MOVX    A,@DPTR
+002EA0 30E006            JNB     ACC.0,?C0224?KB_PROCESS
+  926: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+002EA3 904CE8            MOV     DPTR,#g_variable+029H
+002EA6 740C              MOV     A,#0CH
 002EA8 F0                MOVX    @DPTR,A
-  916: 				break;		
-002EA9 E159              AJMP    ?C0199?KB_PROCESS
-  917: 			case HID_KEY_RIGHT_ARROW:	
-002EAB         ?C0222?KB_PROCESS:
-  918: 				if(g_variable.system_mode == OSMODE_IOS)
-002EAB 904CC1            MOV     DPTR,#g_variable+02H
-002EAE E0                MOVX    A,@DPTR
-002EAF B4021D            CJNE    A,#02H,?C0223?KB_PROCESS
-  919: 				{
-  920: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_RIGHT_ARROW);
-002EB2 904EEB            MOV     DPTR,#state
-002EB5 E0                MOVX    A,@DPTR
-002EB6 FF                MOV     R7,A
-002EB7 7B4F              MOV     R3,#04FH
-002EB9 7D08              MOV     R5,#08H
-002EBB 711D              ACALL   _kb_combination_key_press
-  921: 					if(state & 1)    
-002EBD 904EEB            MOV     DPTR,#state
-002EC0 E0                MOVX    A,@DPTR
-002EC1 30E006            JNB     ACC.0,?C0224?KB_PROCESS
-  922: 					{            
-  923: 					g_variable.one_key_press_wait_release_timer = 10;     
-002EC4 904CFA            MOV     DPTR,#g_variable+03BH
-002EC7 740A              MOV     A,#0AH
-002EC9 F0                MOVX    @DPTR,A
-  924: 					}	
-002ECA         ?C0224?KB_PROCESS:
-  925: 				temp = HID_KEY_NULL;
-002ECA E4                CLR     A
-002ECB 904EED            MOV     DPTR,#temp
-002ECE F0                MOVX    @DPTR,A
-  926: 				}					
-002ECF         ?C0223?KB_PROCESS:
-  927: 				temp = HID_KEY_END;
-002ECF 904EED            MOV     DPTR,#temp
-002ED2 744D              MOV     A,#04DH
-002ED4 F0                MOVX    @DPTR,A
-  928: 				break;			
-002ED5 E159              AJMP    ?C0199?KB_PROCESS
-  929: 			case HID_KEY_LEFT_ARROW:
-002ED7         ?C0225?KB_PROCESS:
-  930: 				if(g_variable.system_mode == OSMODE_IOS)
-002ED7 904CC1            MOV     DPTR,#g_variable+02H
-002EDA E0                MOVX    A,@DPTR
-002EDB B4021D            CJNE    A,#02H,?C0226?KB_PROCESS
+002EA9         ?C0224?KB_PROCESS:
+  927: 				temp = HID_KEY_NULL;
+002EA9 E4                CLR     A
+002EAA 904EED            MOV     DPTR,#temp
+002EAD F0                MOVX    @DPTR,A
+  928: 				break;
+002EAE E1B9              AJMP    ?C0209?KB_PROCESS
+  929: 			case HID_KEY_E:
+002EB0         ?C0225?KB_PROCESS:
+  930: 				if(g_variable.system_mode != OSMODE_IOS)
+002EB0 904CC1            MOV     DPTR,#g_variable+02H
+002EB3 E0                MOVX    A,@DPTR
+002EB4 6402              XRL     A,#02H
+002EB6 603F              JZ      ?C0226?KB_PROCESS
   931: 				{
-  932: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_LEFT_ARROW);
-002EDE 904EEB            MOV     DPTR,#state
+  932: 					g_variable.system_mode = OSMODE_IOS;
+002EB8 7402              MOV     A,#02H
+002EBA F0                MOVX    @DPTR,A
+  933: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002EBB 904CC3            MOV     DPTR,#g_variable+04H
+002EBE E0                MOVX    A,@DPTR
+002EBF FF                MOV     R7,A
+002EC0 6003              JZ      ?C0228?KB_PROCESS
+002EC2 B4FE08            CJNE    A,#0FEH,?C0227?KB_PROCESS
+002EC5         ?C0228?KB_PROCESS:
+  934: 					{
+  935: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+002EC5 904CBF            MOV     DPTR,#g_variable
+002EC8 7402              MOV     A,#02H
+002ECA F0                MOVX    @DPTR,A
+  936: 					}
+002ECB 802A              SJMP    ?C0226?KB_PROCESS
+002ECD         ?C0227?KB_PROCESS:
+  937: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+002ECD EF                MOV     A,R7
+002ECE D3                SETB    C
+002ECF 9403              SUBB    A,#03H
+002ED1 5024              JNC     ?C0226?KB_PROCESS
+002ED3 EF                MOV     A,R7
+002ED4 C3                CLR     C
+002ED5 9401              SUBB    A,#01H
+002ED7 401E              JC      ?C0226?KB_PROCESS
+  938: 					{
+  939: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+002ED9 904CC1            MOV     DPTR,#g_variable+02H
+002EDC E0                MOVX    A,@DPTR
+002EDD FF                MOV     R7,A
+002EDE 904CC3            MOV     DPTR,#g_variable+04H
 002EE1 E0                MOVX    A,@DPTR
-002EE2 FF                MOV     R7,A
-002EE3 7B50              MOV     R3,#050H
-002EE5 7D08              MOV     R5,#08H
-002EE7 711D              ACALL   _kb_combination_key_press
-  933: 					if(state & 1)    
-002EE9 904EEB            MOV     DPTR,#state
-002EEC E0                MOVX    A,@DPTR
-002EED 30E006            JNB     ACC.0,?C0227?KB_PROCESS
-  934: 					{            
-  935: 					g_variable.one_key_press_wait_release_timer = 10;     
-002EF0 904CFA            MOV     DPTR,#g_variable+03BH
-002EF3 740A              MOV     A,#0AH
-002EF5 F0                MOVX    @DPTR,A
-  936: 					}	
-002EF6         ?C0227?KB_PROCESS:
-  937: 				temp = HID_KEY_NULL;
-002EF6 E4                CLR     A
-002EF7 904EED            MOV     DPTR,#temp
-002EFA F0                MOVX    @DPTR,A
-  938: 				}			
-002EFB         ?C0226?KB_PROCESS:
-  939: 				temp = HID_KEY_HOME;
-002EFB 904EED            MOV     DPTR,#temp
-002EFE 744A              MOV     A,#04AH
-002F00 F0                MOVX    @DPTR,A
-  940: 				break;	
-002F01 8056              SJMP    ?C0199?KB_PROCESS
-  941: 			case HID_KEY_DOWN_ARROW:	
-002F03         ?C0228?KB_PROCESS:
-  942: 				if(g_variable.system_mode == OSMODE_IOS)
-002F03 904CC1            MOV     DPTR,#g_variable+02H
-002F06 E0                MOVX    A,@DPTR
-002F07 B4021D            CJNE    A,#02H,?C0229?KB_PROCESS
-  943: 				{
-  944: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_DOWN_ARROW);
-002F0A 904EEB            MOV     DPTR,#state
-002F0D E0                MOVX    A,@DPTR
-002F0E FF                MOV     R7,A
-002F0F 7B51              MOV     R3,#051H
-002F11 7D08              MOV     R5,#08H
-002F13 711D              ACALL   _kb_combination_key_press
-  945: 					if(state & 1)    
-002F15 904EEB            MOV     DPTR,#state
-002F18 E0                MOVX    A,@DPTR
-002F19 30E006            JNB     ACC.0,?C0230?KB_PROCESS
-  946: 					{            
-  947: 					g_variable.one_key_press_wait_release_timer = 10;     
-002F1C 904CFA            MOV     DPTR,#g_variable+03BH
-002F1F 740A              MOV     A,#0AH
-002F21 F0                MOVX    @DPTR,A
-  948: 					}	
-002F22         ?C0230?KB_PROCESS:
-  949: 				temp = HID_KEY_NULL;
-002F22 E4                CLR     A
-002F23 904EED            MOV     DPTR,#temp
-002F26 F0                MOVX    @DPTR,A
-  950: 				}			
-002F27         ?C0229?KB_PROCESS:
-  951: 				temp = HID_KEY_PAGE_DOWN;
-002F27 904EED            MOV     DPTR,#temp
-002F2A 744E              MOV     A,#04EH
-002F2C F0                MOVX    @DPTR,A
-  952: 				break;	
-002F2D 802A              SJMP    ?C0199?KB_PROCESS
-  953: 			case HID_KEY_UP_ARROW:	
-002F2F         ?C0231?KB_PROCESS:
-  954: 				if(g_variable.system_mode == OSMODE_IOS)
-002F2F 904CC1            MOV     DPTR,#g_variable+02H
-002F32 E0                MOVX    A,@DPTR
-002F33 B4021D            CJNE    A,#02H,?C0232?KB_PROCESS
-  955: 				{
-  956: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_UP_ARROW);
-002F36 904EEB            MOV     DPTR,#state
-002F39 E0                MOVX    A,@DPTR
-002F3A FF                MOV     R7,A
-002F3B 7B52              MOV     R3,#052H
-002F3D 7D08              MOV     R5,#08H
-002F3F 711D              ACALL   _kb_combination_key_press
-  957: 					if(state & 1)    
-002F41 904EEB            MOV     DPTR,#state
-002F44 E0                MOVX    A,@DPTR
-002F45 30E006            JNB     ACC.0,?C0233?KB_PROCESS
-  958: 					{            
-  959: 					g_variable.one_key_press_wait_release_timer = 10;     
-002F48 904CFA            MOV     DPTR,#g_variable+03BH
-002F4B 740A              MOV     A,#0AH
-002F4D F0                MOVX    @DPTR,A
-  960: 					}	
-002F4E         ?C0233?KB_PROCESS:
-  961: 				temp = HID_KEY_NULL;
-002F4E E4                CLR     A
-002F4F 904EED            MOV     DPTR,#temp
-002F52 F0                MOVX    @DPTR,A
-  962: 				}			
-002F53         ?C0232?KB_PROCESS:
-  963: 				temp = HID_KEY_PAGE_UP;
-002F53 904EED            MOV     DPTR,#temp
-002F56 744B              MOV     A,#04BH
-002F58 F0                MOVX    @DPTR,A
-  964: 				break;					
-  965: 			default :
-  966: 				break;
-  967: 		}
-  968: 	}
-002F59         ?C0199?KB_PROCESS:
-  969: 
-  970: 	return temp;
-002F59 904EED            MOV     DPTR,#temp
-002F5C E0                MOVX    A,@DPTR
-002F5D FF                MOV     R7,A
-  971: }
-002F5E 22                RET     
+002EE2 75F01F            MOV     B,#01FH
+002EE5 A4                MUL     AB
+002EE6 24EC              ADD     A,#LOW bd_key_record_list-02H
+002EE8 F582              MOV     DPL,A
+002EEA E4                CLR     A
+002EEB 344D              ADDC    A,#HIGH bd_key_record_list-02H
+002EED F583              MOV     DPH,A
+002EEF EF                MOV     A,R7
+002EF0 F0                MOVX    @DPTR,A
+  940: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+002EF1 904CBF            MOV     DPTR,#g_variable
+002EF4 7403              MOV     A,#03H
+002EF6 F0                MOVX    @DPTR,A
+  941: 					}
+  942: 				}
+002EF7         ?C0226?KB_PROCESS:
+  943: 				if(state & 1)
+002EF7 904EEB            MOV     DPTR,#state
+002EFA E0                MOVX    A,@DPTR
+002EFB 30E006            JNB     ACC.0,?C0231?KB_PROCESS
+  944: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+002EFE 904CE8            MOV     DPTR,#g_variable+029H
+002F01 740C              MOV     A,#0CH
+002F03 F0                MOVX    @DPTR,A
+002F04         ?C0231?KB_PROCESS:
+  945: 				
+  946: 				temp = HID_KEY_NULL;
+002F04 E4                CLR     A
+002F05 904EED            MOV     DPTR,#temp
+002F08 F0                MOVX    @DPTR,A
+  947: 				break;		
+002F09 E1B9              AJMP    ?C0209?KB_PROCESS
+  948: 			case HID_KEY_RIGHT_ARROW:	
+002F0B         ?C0232?KB_PROCESS:
+  949: 				if(g_variable.system_mode == OSMODE_IOS)
+002F0B 904CC1            MOV     DPTR,#g_variable+02H
+002F0E E0                MOVX    A,@DPTR
+002F0F B4021D            CJNE    A,#02H,?C0233?KB_PROCESS
+  950: 				{
+  951: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_RIGHT_ARROW);
+002F12 904EEB            MOV     DPTR,#state
+002F15 E0                MOVX    A,@DPTR
+002F16 FF                MOV     R7,A
+002F17 7B4F              MOV     R3,#04FH
+002F19 7D08              MOV     R5,#08H
+002F1B 711D              ACALL   _kb_combination_key_press
+  952: 					if(state & 1)    
+002F1D 904EEB            MOV     DPTR,#state
+002F20 E0                MOVX    A,@DPTR
+002F21 30E006            JNB     ACC.0,?C0234?KB_PROCESS
+  953: 					{            
+  954: 					g_variable.one_key_press_wait_release_timer = 10;     
+002F24 904CFA            MOV     DPTR,#g_variable+03BH
+002F27 740A              MOV     A,#0AH
+002F29 F0                MOVX    @DPTR,A
+  955: 					}	
+002F2A         ?C0234?KB_PROCESS:
+  956: 				temp = HID_KEY_NULL;
+002F2A E4                CLR     A
+002F2B 904EED            MOV     DPTR,#temp
+002F2E F0                MOVX    @DPTR,A
+  957: 				}					
+002F2F         ?C0233?KB_PROCESS:
+  958: 				temp = HID_KEY_END;
+002F2F 904EED            MOV     DPTR,#temp
+002F32 744D              MOV     A,#04DH
+002F34 F0                MOVX    @DPTR,A
+  959: 				break;			
+002F35 E1B9              AJMP    ?C0209?KB_PROCESS
+  960: 			case HID_KEY_LEFT_ARROW:
+002F37         ?C0235?KB_PROCESS:
+  961: 				if(g_variable.system_mode == OSMODE_IOS)
+002F37 904CC1            MOV     DPTR,#g_variable+02H
+002F3A E0                MOVX    A,@DPTR
+002F3B B4021D            CJNE    A,#02H,?C0236?KB_PROCESS
+  962: 				{
+  963: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_LEFT_ARROW);
+002F3E 904EEB            MOV     DPTR,#state
+002F41 E0                MOVX    A,@DPTR
+002F42 FF                MOV     R7,A
+002F43 7B50              MOV     R3,#050H
+002F45 7D08              MOV     R5,#08H
+002F47 711D              ACALL   _kb_combination_key_press
+  964: 					if(state & 1)    
+002F49 904EEB            MOV     DPTR,#state
+002F4C E0                MOVX    A,@DPTR
+002F4D 30E006            JNB     ACC.0,?C0237?KB_PROCESS
+  965: 					{            
+  966: 					g_variable.one_key_press_wait_release_timer = 10;     
+002F50 904CFA            MOV     DPTR,#g_variable+03BH
+002F53 740A              MOV     A,#0AH
+002F55 F0                MOVX    @DPTR,A
+  967: 					}	
+002F56         ?C0237?KB_PROCESS:
+  968: 				temp = HID_KEY_NULL;
+002F56 E4                CLR     A
+002F57 904EED            MOV     DPTR,#temp
+002F5A F0                MOVX    @DPTR,A
+  969: 				}			
+002F5B         ?C0236?KB_PROCESS:
+  970: 				temp = HID_KEY_HOME;
+002F5B 904EED            MOV     DPTR,#temp
+002F5E 744A              MOV     A,#04AH
+002F60 F0                MOVX    @DPTR,A
+  971: 				break;	
+002F61 8056              SJMP    ?C0209?KB_PROCESS
+  972: 			case HID_KEY_DOWN_ARROW:	
+002F63         ?C0238?KB_PROCESS:
+  973: 				if(g_variable.system_mode == OSMODE_IOS)
+002F63 904CC1            MOV     DPTR,#g_variable+02H
+002F66 E0                MOVX    A,@DPTR
+002F67 B4021D            CJNE    A,#02H,?C0239?KB_PROCESS
+  974: 				{
+  975: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_DOWN_ARROW);
+002F6A 904EEB            MOV     DPTR,#state
+002F6D E0                MOVX    A,@DPTR
+002F6E FF                MOV     R7,A
+002F6F 7B51              MOV     R3,#051H
+002F71 7D08              MOV     R5,#08H
+002F73 711D              ACALL   _kb_combination_key_press
+  976: 					if(state & 1)    
+002F75 904EEB            MOV     DPTR,#state
+002F78 E0                MOVX    A,@DPTR
+002F79 30E006            JNB     ACC.0,?C0240?KB_PROCESS
+  977: 					{            
+  978: 					g_variable.one_key_press_wait_release_timer = 10;     
+002F7C 904CFA            MOV     DPTR,#g_variable+03BH
+002F7F 740A              MOV     A,#0AH
+002F81 F0                MOVX    @DPTR,A
+  979: 					}	
+002F82         ?C0240?KB_PROCESS:
+  980: 				temp = HID_KEY_NULL;
+002F82 E4                CLR     A
+002F83 904EED            MOV     DPTR,#temp
+002F86 F0                MOVX    @DPTR,A
+  981: 				}			
+002F87         ?C0239?KB_PROCESS:
+  982: 				temp = HID_KEY_PAGE_DOWN;
+002F87 904EED            MOV     DPTR,#temp
+002F8A 744E              MOV     A,#04EH
+002F8C F0                MOVX    @DPTR,A
+  983: 				break;	
+002F8D 802A              SJMP    ?C0209?KB_PROCESS
+  984: 			case HID_KEY_UP_ARROW:	
+002F8F         ?C0241?KB_PROCESS:
+  985: 				if(g_variable.system_mode == OSMODE_IOS)
+002F8F 904CC1            MOV     DPTR,#g_variable+02H
+002F92 E0                MOVX    A,@DPTR
+002F93 B4021D            CJNE    A,#02H,?C0242?KB_PROCESS
+  986: 				{
+  987: 				kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_UP_ARROW);
+002F96 904EEB            MOV     DPTR,#state
+002F99 E0                MOVX    A,@DPTR
+002F9A FF                MOV     R7,A
+002F9B 7B52              MOV     R3,#052H
+002F9D 7D08              MOV     R5,#08H
+002F9F 711D              ACALL   _kb_combination_key_press
+  988: 					if(state & 1)    
+002FA1 904EEB            MOV     DPTR,#state
+002FA4 E0                MOVX    A,@DPTR
+002FA5 30E006            JNB     ACC.0,?C0243?KB_PROCESS
+  989: 					{            
+  990: 					g_variable.one_key_press_wait_release_timer = 10;     
+002FA8 904CFA            MOV     DPTR,#g_variable+03BH
+002FAB 740A              MOV     A,#0AH
+002FAD F0                MOVX    @DPTR,A
+  991: 					}	
+002FAE         ?C0243?KB_PROCESS:
+  992: 				temp = HID_KEY_NULL;
+002FAE E4                CLR     A
+002FAF 904EED            MOV     DPTR,#temp
+002FB2 F0                MOVX    @DPTR,A
+  993: 				}			
+002FB3         ?C0242?KB_PROCESS:
+  994: 				temp = HID_KEY_PAGE_UP;
+002FB3 904EED            MOV     DPTR,#temp
+002FB6 744B              MOV     A,#04BH
+002FB8 F0                MOVX    @DPTR,A
+  995: 				break;					
+  996: 			default :
+  997: 				break;
+  998: 		}
+  999: 	}
+002FB9         ?C0209?KB_PROCESS:
+ 1000: 
+ 1001: 	return temp;
+002FB9 904EED            MOV     DPTR,#temp
+002FBC E0                MOVX    A,@DPTR
+002FBD FF                MOV     R7,A
+ 1002: }
+002FBE 22                RET     
 ----- FUNCTION _key_fn_function (END) -------
 
 
 ----- FUNCTION _kb_multikey_setup (BEGIN) -----
  FILE: 'kb_process.c'
-  975: void kb_multikey_setup(tKSEVENT *pEvt)
-  976: {
-002F5F 904ED9            MOV     DPTR,#pEvt
-002F62 EB                MOV     A,R3
-002F63 F0                MOVX    @DPTR,A
-002F64 A3                INC     DPTR
-002F65 EA                MOV     A,R2
-002F66 F0                MOVX    @DPTR,A
-002F67 A3                INC     DPTR
-002F68 E9                MOV     A,R1
-002F69 F0                MOVX    @DPTR,A
-  977: 	byte i = 0;
-  978: 	
-002F6A E4                CLR     A
-002F6B A3                INC     DPTR
-002F6C F0                MOVX    @DPTR,A
-  979: 	for (i = 0;i < 6;i++)
-002F6D F0                MOVX    @DPTR,A
-002F6E         ?C0236?KB_PROCESS:
-002F6E 904EDC            MOV     DPTR,#i
-002F71 E0                MOVX    A,@DPTR
-002F72 FF                MOV     R7,A
-002F73 C3                CLR     C
-002F74 9406              SUBB    A,#06H
-002F76 4003              JC      $ + 5H
-002F78 02327F            LJMP    ?C0295?KB_PROCESS
-  980: 	{		
-  981: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
-002F7B 904ED9            MOV     DPTR,#pEvt
-002F7E E0                MOVX    A,@DPTR
-002F7F FB                MOV     R3,A
-002F80 A3                INC     DPTR
-002F81 E0                MOVX    A,@DPTR
-002F82 FA                MOV     R2,A
-002F83 A3                INC     DPTR
-002F84 E0                MOVX    A,@DPTR
-002F85 2401              ADD     A,#01H
-002F87 F9                MOV     R1,A
-002F88 E4                CLR     A
-002F89 3A                ADDC    A,R2
-002F8A FA                MOV     R2,A
-002F8B 7E00              MOV     R6,#00H
-002F8D E9                MOV     A,R1
-002F8E 2F                ADD     A,R7
-002F8F F9                MOV     R1,A
-002F90 EE                MOV     A,R6
-002F91 3A                ADDC    A,R2
-002F92 FA                MOV     R2,A
-002F93 1203B6            LCALL   ?C?CLDPTR
-002F96 FF                MOV     R7,A
-002F97 54F0              ANL     A,#0F0H
-002F99 64F0              XRL     A,#0F0H
-002F9B 600A              JZ      ?C0240?KB_PROCESS
-002F9D EF                MOV     A,R7
-002F9E 54D0              ANL     A,#0D0H
-002FA0 64D0              XRL     A,#0D0H
-002FA2 6003              JZ      $ + 5H
-002FA4 023276            LJMP    ?C0238?KB_PROCESS
-002FA7         ?C0240?KB_PROCESS:
-  982: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
-  983: 		{
-  984: 			
-  985: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
-002FA7 1203B6            LCALL   ?C?CLDPTR
-002FAA FB                MOV     R3,A
-002FAB B4F10A            CJNE    A,#0F1H,?C0241?KB_PROCESS
-  986: 			{
-  987: 				kb_set_multikey(0x0183); 
-002FAE 7F83              MOV     R7,#083H
-002FB0 7E01              MOV     R6,#01H
-002FB2 1227AF            LCALL   _kb_set_multikey
-  988: 			}
-002FB5 02324B            LJMP    ?C0242?KB_PROCESS
-002FB8         ?C0241?KB_PROCESS:
-  989: 			else
-  990: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
-002FB8 EB                MOV     A,R3
-002FB9 B4F20A            CJNE    A,#0F2H,?C0243?KB_PROCESS
-  991: 			{ 
-  992: 				kb_set_multikey(0x00cd);
-002FBC 7FCD              MOV     R7,#0CDH
-002FBE 7E00              MOV     R6,#00H
-002FC0 1227AF            LCALL   _kb_set_multikey
-  993: 			}
-002FC3 02324B            LJMP    ?C0242?KB_PROCESS
-002FC6         ?C0243?KB_PROCESS:
-  994: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
-002FC6 904ED9            MOV     DPTR,#pEvt
-002FC9 E0                MOVX    A,@DPTR
-002FCA FB                MOV     R3,A
+ 1006: void kb_multikey_setup(tKSEVENT *pEvt)
+ 1007: {
+002FBF 904ED9            MOV     DPTR,#pEvt
+002FC2 EB                MOV     A,R3
+002FC3 F0                MOVX    @DPTR,A
+002FC4 A3                INC     DPTR
+002FC5 EA                MOV     A,R2
+002FC6 F0                MOVX    @DPTR,A
+002FC7 A3                INC     DPTR
+002FC8 E9                MOV     A,R1
+002FC9 F0                MOVX    @DPTR,A
+ 1008: 	byte i = 0;
+ 1009: 	
+002FCA E4                CLR     A
 002FCB A3                INC     DPTR
-002FCC E0                MOVX    A,@DPTR
-002FCD FA                MOV     R2,A
-002FCE A3                INC     DPTR
-002FCF E0                MOVX    A,@DPTR
-002FD0 2401              ADD     A,#01H
-002FD2 F9                MOV     R1,A
-002FD3 E4                CLR     A
-002FD4 3A                ADDC    A,R2
-002FD5 FA                MOV     R2,A
-002FD6 A3                INC     DPTR
-002FD7 E0                MOVX    A,@DPTR
-002FD8 7E00              MOV     R6,#00H
-002FDA 29                ADD     A,R1
-002FDB F9                MOV     R1,A
-002FDC EE                MOV     A,R6
-002FDD 3A                ADDC    A,R2
-002FDE FA                MOV     R2,A
-002FDF 1203B6            LCALL   ?C?CLDPTR
-002FE2 FB                MOV     R3,A
-002FE3 B4F308            CJNE    A,#0F3H,?C0245?KB_PROCESS
-  995: 			{
-  996: 				kb_set_multikey(0x00b7);
-002FE6 7FB7              MOV     R7,#0B7H
-002FE8 1227AF            LCALL   _kb_set_multikey
-  997: 			}	
-002FEB 02324B            LJMP    ?C0242?KB_PROCESS
-002FEE         ?C0245?KB_PROCESS:
-  998: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
-002FEE EB                MOV     A,R3
-002FEF B4F40A            CJNE    A,#0F4H,?C0247?KB_PROCESS
-  999: 			{
- 1000: 				kb_set_multikey(0x00b6);
-002FF2 7FB6              MOV     R7,#0B6H
-002FF4 7E00              MOV     R6,#00H
-002FF6 1227AF            LCALL   _kb_set_multikey
- 1001: 			}
-002FF9 02324B            LJMP    ?C0242?KB_PROCESS
-002FFC         ?C0247?KB_PROCESS:
- 1002: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
-002FFC 904ED9            MOV     DPTR,#pEvt
-002FFF E0                MOVX    A,@DPTR
-003000 FB                MOV     R3,A
-003001 A3                INC     DPTR
-003002 E0                MOVX    A,@DPTR
-003003 FA                MOV     R2,A
-003004 A3                INC     DPTR
-003005 E0                MOVX    A,@DPTR
-003006 2401              ADD     A,#01H
-003008 F9                MOV     R1,A
-003009 E4                CLR     A
-00300A 3A                ADDC    A,R2
-00300B FA                MOV     R2,A
-00300C A3                INC     DPTR
-00300D E0                MOVX    A,@DPTR
-00300E 7E00              MOV     R6,#00H
-003010 29                ADD     A,R1
-003011 F9                MOV     R1,A
-003012 EE                MOV     A,R6
-003013 3A                ADDC    A,R2
-003014 FA                MOV     R2,A
-003015 1203B6            LCALL   ?C?CLDPTR
-003018 FB                MOV     R3,A
-003019 B4F507            CJNE    A,#0F5H,?C0249?KB_PROCESS
- 1003: 			{
- 1004: 				kb_set_multikey(0x00b5);
-00301C 7FB5              MOV     R7,#0B5H
+002FCC F0                MOVX    @DPTR,A
+ 1010: 	for (i = 0;i < 6;i++)
+002FCD F0                MOVX    @DPTR,A
+002FCE         ?C0246?KB_PROCESS:
+002FCE 904EDC            MOV     DPTR,#i
+002FD1 E0                MOVX    A,@DPTR
+002FD2 FF                MOV     R7,A
+002FD3 C3                CLR     C
+002FD4 9406              SUBB    A,#06H
+002FD6 4003              JC      $ + 5H
+002FD8 0232DA            LJMP    ?C0305?KB_PROCESS
+ 1011: 	{		
+ 1012: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
+002FDB 904ED9            MOV     DPTR,#pEvt
+002FDE E0                MOVX    A,@DPTR
+002FDF FB                MOV     R3,A
+002FE0 A3                INC     DPTR
+002FE1 E0                MOVX    A,@DPTR
+002FE2 FA                MOV     R2,A
+002FE3 A3                INC     DPTR
+002FE4 E0                MOVX    A,@DPTR
+002FE5 2401              ADD     A,#01H
+002FE7 F9                MOV     R1,A
+002FE8 E4                CLR     A
+002FE9 3A                ADDC    A,R2
+002FEA FA                MOV     R2,A
+002FEB 7E00              MOV     R6,#00H
+002FED E9                MOV     A,R1
+002FEE 2F                ADD     A,R7
+002FEF F9                MOV     R1,A
+002FF0 EE                MOV     A,R6
+002FF1 3A                ADDC    A,R2
+002FF2 FA                MOV     R2,A
+002FF3 1203B6            LCALL   ?C?CLDPTR
+002FF6 FF                MOV     R7,A
+002FF7 54F0              ANL     A,#0F0H
+002FF9 64F0              XRL     A,#0F0H
+002FFB 6009              JZ      ?C0250?KB_PROCESS
+002FFD EF                MOV     A,R7
+002FFE 54D0              ANL     A,#0D0H
+003000 64D0              XRL     A,#0D0H
+003002 6002              JZ      $ + 4H
+003004 41D1              AJMP    ?C0248?KB_PROCESS
+003006         ?C0250?KB_PROCESS:
+ 1013: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
+ 1014: 		{
+ 1015: 			
+ 1016: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
+003006 1203B6            LCALL   ?C?CLDPTR
+003009 FB                MOV     R3,A
+00300A B4F109            CJNE    A,#0F1H,?C0251?KB_PROCESS
+ 1017: 			{
+ 1018: 				kb_set_multikey(0x0183); 
+00300D 7F83              MOV     R7,#083H
+00300F 7E01              MOV     R6,#01H
+003011 1227AF            LCALL   _kb_set_multikey
+ 1019: 			}
+003014 41A6              AJMP    ?C0252?KB_PROCESS
+003016         ?C0251?KB_PROCESS:
+ 1020: 			else
+ 1021: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
+003016 EB                MOV     A,R3
+003017 B4F209            CJNE    A,#0F2H,?C0253?KB_PROCESS
+ 1022: 			{ 
+ 1023: 				kb_set_multikey(0x00cd);
+00301A 7FCD              MOV     R7,#0CDH
+00301C 7E00              MOV     R6,#00H
 00301E 1227AF            LCALL   _kb_set_multikey
- 1005: 			}
-003021 414B              AJMP    ?C0242?KB_PROCESS
-003023         ?C0249?KB_PROCESS:
- 1006: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
-003023 EB                MOV     A,R3
-003024 B4F609            CJNE    A,#0F6H,?C0251?KB_PROCESS
- 1007: 			{
- 1008: 				kb_set_multikey(0x00ea);
-003027 7FEA              MOV     R7,#0EAH
-003029 7E00              MOV     R6,#00H
-00302B 1227AF            LCALL   _kb_set_multikey
- 1009: 			}
-00302E 414B              AJMP    ?C0242?KB_PROCESS
-003030         ?C0251?KB_PROCESS:
- 1010: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
-003030 904ED9            MOV     DPTR,#pEvt
-003033 E0                MOVX    A,@DPTR
-003034 FB                MOV     R3,A
-003035 A3                INC     DPTR
-003036 E0                MOVX    A,@DPTR
-003037 FA                MOV     R2,A
-003038 A3                INC     DPTR
-003039 E0                MOVX    A,@DPTR
-00303A 2401              ADD     A,#01H
-00303C F9                MOV     R1,A
-00303D E4                CLR     A
-00303E 3A                ADDC    A,R2
-00303F FA                MOV     R2,A
-003040 A3                INC     DPTR
-003041 E0                MOVX    A,@DPTR
-003042 7E00              MOV     R6,#00H
-003044 29                ADD     A,R1
-003045 F9                MOV     R1,A
-003046 EE                MOV     A,R6
-003047 3A                ADDC    A,R2
-003048 FA                MOV     R2,A
-003049 1203B6            LCALL   ?C?CLDPTR
-00304C FB                MOV     R3,A
-00304D B4F707            CJNE    A,#0F7H,?C0253?KB_PROCESS
- 1011: 			{
- 1012: 				kb_set_multikey(0x00e9);
-003050 7FE9              MOV     R7,#0E9H
+ 1024: 			}
+003021 41A6              AJMP    ?C0252?KB_PROCESS
+003023         ?C0253?KB_PROCESS:
+ 1025: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
+003023 904ED9            MOV     DPTR,#pEvt
+003026 E0                MOVX    A,@DPTR
+003027 FB                MOV     R3,A
+003028 A3                INC     DPTR
+003029 E0                MOVX    A,@DPTR
+00302A FA                MOV     R2,A
+00302B A3                INC     DPTR
+00302C E0                MOVX    A,@DPTR
+00302D 2401              ADD     A,#01H
+00302F F9                MOV     R1,A
+003030 E4                CLR     A
+003031 3A                ADDC    A,R2
+003032 FA                MOV     R2,A
+003033 A3                INC     DPTR
+003034 E0                MOVX    A,@DPTR
+003035 7E00              MOV     R6,#00H
+003037 29                ADD     A,R1
+003038 F9                MOV     R1,A
+003039 EE                MOV     A,R6
+00303A 3A                ADDC    A,R2
+00303B FA                MOV     R2,A
+00303C 1203B6            LCALL   ?C?CLDPTR
+00303F FB                MOV     R3,A
+003040 B4F307            CJNE    A,#0F3H,?C0255?KB_PROCESS
+ 1026: 			{
+ 1027: 				kb_set_multikey(0x00b7);
+003043 7FB7              MOV     R7,#0B7H
+003045 1227AF            LCALL   _kb_set_multikey
+ 1028: 			}	
+003048 41A6              AJMP    ?C0252?KB_PROCESS
+00304A         ?C0255?KB_PROCESS:
+ 1029: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
+00304A EB                MOV     A,R3
+00304B B4F409            CJNE    A,#0F4H,?C0257?KB_PROCESS
+ 1030: 			{
+ 1031: 				kb_set_multikey(0x00b6);
+00304E 7FB6              MOV     R7,#0B6H
+003050 7E00              MOV     R6,#00H
 003052 1227AF            LCALL   _kb_set_multikey
- 1013: 			}
-003055 414B              AJMP    ?C0242?KB_PROCESS
-003057         ?C0253?KB_PROCESS:
- 1014: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
-003057 EB                MOV     A,R3
-003058 B4F809            CJNE    A,#0F8H,?C0255?KB_PROCESS
- 1015: 			{
- 1016: 				kb_set_multikey(0x00e2);
-00305B 7FE2              MOV     R7,#0E2H
-00305D 7E00              MOV     R6,#00H
-00305F 1227AF            LCALL   _kb_set_multikey
- 1017: 			}
-003062 414B              AJMP    ?C0242?KB_PROCESS
-003064         ?C0255?KB_PROCESS:
- 1018: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
-003064 904ED9            MOV     DPTR,#pEvt
-003067 E0                MOVX    A,@DPTR
-003068 FB                MOV     R3,A
-003069 A3                INC     DPTR
-00306A E0                MOVX    A,@DPTR
-00306B FA                MOV     R2,A
-00306C A3                INC     DPTR
-00306D E0                MOVX    A,@DPTR
-00306E 2401              ADD     A,#01H
-003070 F9                MOV     R1,A
-003071 E4                CLR     A
-003072 3A                ADDC    A,R2
-003073 FA                MOV     R2,A
-003074 A3                INC     DPTR
-003075 E0                MOVX    A,@DPTR
-003076 7E00              MOV     R6,#00H
-003078 29                ADD     A,R1
-003079 F9                MOV     R1,A
-00307A EE                MOV     A,R6
-00307B 3A                ADDC    A,R2
-00307C FA                MOV     R2,A
-00307D 1203B6            LCALL   ?C?CLDPTR
-003080 FB                MOV     R3,A
-003081 B4F908            CJNE    A,#0F9H,?C0257?KB_PROCESS
- 1019: 			{
- 1020: 				kb_set_multikey(0x0194);
-003084 7F94              MOV     R7,#094H
-003086 0E                INC     R6
-003087 1227AF            LCALL   _kb_set_multikey
- 1021: 			}	
-00308A 414B              AJMP    ?C0242?KB_PROCESS
-00308C         ?C0257?KB_PROCESS:
- 1022: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
-00308C EB                MOV     A,R3
-00308D B4FA09            CJNE    A,#0FAH,?C0259?KB_PROCESS
- 1023: 			{
- 1024: 				kb_set_multikey(0x018a);//mail
-003090 7F8A              MOV     R7,#08AH
-003092 7E01              MOV     R6,#01H
-003094 1227AF            LCALL   _kb_set_multikey
- 1025: 			}
-003097 414B              AJMP    ?C0242?KB_PROCESS
-003099         ?C0259?KB_PROCESS:
- 1026: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
-003099 904ED9            MOV     DPTR,#pEvt
+ 1032: 			}
+003055 41A6              AJMP    ?C0252?KB_PROCESS
+003057         ?C0257?KB_PROCESS:
+ 1033: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
+003057 904ED9            MOV     DPTR,#pEvt
+00305A E0                MOVX    A,@DPTR
+00305B FB                MOV     R3,A
+00305C A3                INC     DPTR
+00305D E0                MOVX    A,@DPTR
+00305E FA                MOV     R2,A
+00305F A3                INC     DPTR
+003060 E0                MOVX    A,@DPTR
+003061 2401              ADD     A,#01H
+003063 F9                MOV     R1,A
+003064 E4                CLR     A
+003065 3A                ADDC    A,R2
+003066 FA                MOV     R2,A
+003067 A3                INC     DPTR
+003068 E0                MOVX    A,@DPTR
+003069 7E00              MOV     R6,#00H
+00306B 29                ADD     A,R1
+00306C F9                MOV     R1,A
+00306D EE                MOV     A,R6
+00306E 3A                ADDC    A,R2
+00306F FA                MOV     R2,A
+003070 1203B6            LCALL   ?C?CLDPTR
+003073 FB                MOV     R3,A
+003074 B4F507            CJNE    A,#0F5H,?C0259?KB_PROCESS
+ 1034: 			{
+ 1035: 				kb_set_multikey(0x00b5);
+003077 7FB5              MOV     R7,#0B5H
+003079 1227AF            LCALL   _kb_set_multikey
+ 1036: 			}
+00307C 41A6              AJMP    ?C0252?KB_PROCESS
+00307E         ?C0259?KB_PROCESS:
+ 1037: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
+00307E EB                MOV     A,R3
+00307F B4F609            CJNE    A,#0F6H,?C0261?KB_PROCESS
+ 1038: 			{
+ 1039: 				kb_set_multikey(0x00ea);
+003082 7FEA              MOV     R7,#0EAH
+003084 7E00              MOV     R6,#00H
+003086 1227AF            LCALL   _kb_set_multikey
+ 1040: 			}
+003089 41A6              AJMP    ?C0252?KB_PROCESS
+00308B         ?C0261?KB_PROCESS:
+ 1041: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
+00308B 904ED9            MOV     DPTR,#pEvt
+00308E E0                MOVX    A,@DPTR
+00308F FB                MOV     R3,A
+003090 A3                INC     DPTR
+003091 E0                MOVX    A,@DPTR
+003092 FA                MOV     R2,A
+003093 A3                INC     DPTR
+003094 E0                MOVX    A,@DPTR
+003095 2401              ADD     A,#01H
+003097 F9                MOV     R1,A
+003098 E4                CLR     A
+003099 3A                ADDC    A,R2
+00309A FA                MOV     R2,A
+00309B A3                INC     DPTR
 00309C E0                MOVX    A,@DPTR
-00309D FB                MOV     R3,A
-00309E A3                INC     DPTR
-00309F E0                MOVX    A,@DPTR
-0030A0 FA                MOV     R2,A
-0030A1 A3                INC     DPTR
-0030A2 E0                MOVX    A,@DPTR
-0030A3 2401              ADD     A,#01H
-0030A5 F9                MOV     R1,A
-0030A6 E4                CLR     A
-0030A7 3A                ADDC    A,R2
-0030A8 FA                MOV     R2,A
-0030A9 A3                INC     DPTR
-0030AA E0                MOVX    A,@DPTR
-0030AB 7E00              MOV     R6,#00H
-0030AD 29                ADD     A,R1
-0030AE F9                MOV     R1,A
-0030AF EE                MOV     A,R6
-0030B0 3A                ADDC    A,R2
-0030B1 FA                MOV     R2,A
-0030B2 1203B6            LCALL   ?C?CLDPTR
-0030B5 FB                MOV     R3,A
-0030B6 B4FB08            CJNE    A,#0FBH,?C0261?KB_PROCESS
- 1027: 			{
- 1028: 				kb_set_multikey(0x0192);
-0030B9 7F92              MOV     R7,#092H
-0030BB 0E                INC     R6
-0030BC 1227AF            LCALL   _kb_set_multikey
- 1029: 			}
-0030BF 414B              AJMP    ?C0242?KB_PROCESS
-0030C1         ?C0261?KB_PROCESS:
- 1030: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
-0030C1 EB                MOV     A,R3
-0030C2 B4D009            CJNE    A,#0D0H,?C0263?KB_PROCESS
- 1031: 			{
- 1032: 				kb_set_multikey(0x022a);//www Favorites
-0030C5 7F2A              MOV     R7,#02AH
-0030C7 7E02              MOV     R6,#02H
-0030C9 1227AF            LCALL   _kb_set_multikey
- 1033: 			}
-0030CC 414B              AJMP    ?C0242?KB_PROCESS
-0030CE         ?C0263?KB_PROCESS:
- 1034: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
-0030CE 904ED9            MOV     DPTR,#pEvt
-0030D1 E0                MOVX    A,@DPTR
-0030D2 FB                MOV     R3,A
-0030D3 A3                INC     DPTR
-0030D4 E0                MOVX    A,@DPTR
-0030D5 FA                MOV     R2,A
-0030D6 A3                INC     DPTR
-0030D7 E0                MOVX    A,@DPTR
-0030D8 2401              ADD     A,#01H
-0030DA F9                MOV     R1,A
-0030DB E4                CLR     A
-0030DC 3A                ADDC    A,R2
-0030DD FA                MOV     R2,A
-0030DE A3                INC     DPTR
-0030DF E0                MOVX    A,@DPTR
-0030E0 7E00              MOV     R6,#00H
-0030E2 29                ADD     A,R1
-0030E3 F9                MOV     R1,A
-0030E4 EE                MOV     A,R6
-0030E5 3A                ADDC    A,R2
-0030E6 FA                MOV     R2,A
-0030E7 1203B6            LCALL   ?C?CLDPTR
-0030EA FB                MOV     R3,A
-0030EB B4D109            CJNE    A,#0D1H,?C0265?KB_PROCESS
- 1035: 			{
- 1036: 				kb_set_multikey(0x0225);
-0030EE 7F25              MOV     R7,#025H
-0030F0 7E02              MOV     R6,#02H
-0030F2 1227AF            LCALL   _kb_set_multikey
- 1037: 			}
-0030F5 414B              AJMP    ?C0242?KB_PROCESS
-0030F7         ?C0265?KB_PROCESS:
- 1038: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
-0030F7 EB                MOV     A,R3
-0030F8 B4D309            CJNE    A,#0D3H,?C0267?KB_PROCESS
- 1039: 			{
- 1040: 				kb_set_multikey(0x0226);
-0030FB 7F26              MOV     R7,#026H
-0030FD 7E02              MOV     R6,#02H
-0030FF 1227AF            LCALL   _kb_set_multikey
- 1041: 			}
-003102 414B              AJMP    ?C0242?KB_PROCESS
-003104         ?C0267?KB_PROCESS:
- 1042: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
-003104 904ED9            MOV     DPTR,#pEvt
-003107 E0                MOVX    A,@DPTR
-003108 FB                MOV     R3,A
-003109 A3                INC     DPTR
-00310A E0                MOVX    A,@DPTR
-00310B FA                MOV     R2,A
-00310C A3                INC     DPTR
-00310D E0                MOVX    A,@DPTR
-00310E 2401              ADD     A,#01H
-003110 F9                MOV     R1,A
-003111 E4                CLR     A
-003112 3A                ADDC    A,R2
-003113 FA                MOV     R2,A
-003114 A3                INC     DPTR
-003115 E0                MOVX    A,@DPTR
-003116 7E00              MOV     R6,#00H
-003118 29                ADD     A,R1
-003119 F9                MOV     R1,A
-00311A EE                MOV     A,R6
-00311B 3A                ADDC    A,R2
-00311C FA                MOV     R2,A
-00311D 1203B6            LCALL   ?C?CLDPTR
-003120 FB                MOV     R3,A
-003121 B4D209            CJNE    A,#0D2H,?C0269?KB_PROCESS
- 1043: 			{
- 1044: 				kb_set_multikey(0x0224);
-003124 7F24              MOV     R7,#024H
-003126 7E02              MOV     R6,#02H
-003128 1227AF            LCALL   _kb_set_multikey
- 1045: 			}
-00312B 414B              AJMP    ?C0242?KB_PROCESS
-00312D         ?C0269?KB_PROCESS:
- 1046: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
-00312D EB                MOV     A,R3
-00312E B4D409            CJNE    A,#0D4H,?C0271?KB_PROCESS
- 1047: 			{
- 1048: 				kb_set_multikey(0x0227);
-003131 7F27              MOV     R7,#027H
-003133 7E02              MOV     R6,#02H
-003135 1227AF            LCALL   _kb_set_multikey
- 1049: 			}	
-003138 414B              AJMP    ?C0242?KB_PROCESS
-00313A         ?C0271?KB_PROCESS:
- 1050: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
-00313A 904ED9            MOV     DPTR,#pEvt
-00313D E0                MOVX    A,@DPTR
-00313E FB                MOV     R3,A
-00313F A3                INC     DPTR
-003140 E0                MOVX    A,@DPTR
+00309D 7E00              MOV     R6,#00H
+00309F 29                ADD     A,R1
+0030A0 F9                MOV     R1,A
+0030A1 EE                MOV     A,R6
+0030A2 3A                ADDC    A,R2
+0030A3 FA                MOV     R2,A
+0030A4 1203B6            LCALL   ?C?CLDPTR
+0030A7 FB                MOV     R3,A
+0030A8 B4F707            CJNE    A,#0F7H,?C0263?KB_PROCESS
+ 1042: 			{
+ 1043: 				kb_set_multikey(0x00e9);
+0030AB 7FE9              MOV     R7,#0E9H
+0030AD 1227AF            LCALL   _kb_set_multikey
+ 1044: 			}
+0030B0 41A6              AJMP    ?C0252?KB_PROCESS
+0030B2         ?C0263?KB_PROCESS:
+ 1045: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
+0030B2 EB                MOV     A,R3
+0030B3 B4F809            CJNE    A,#0F8H,?C0265?KB_PROCESS
+ 1046: 			{
+ 1047: 				kb_set_multikey(0x00e2);
+0030B6 7FE2              MOV     R7,#0E2H
+0030B8 7E00              MOV     R6,#00H
+0030BA 1227AF            LCALL   _kb_set_multikey
+ 1048: 			}
+0030BD 41A6              AJMP    ?C0252?KB_PROCESS
+0030BF         ?C0265?KB_PROCESS:
+ 1049: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
+0030BF 904ED9            MOV     DPTR,#pEvt
+0030C2 E0                MOVX    A,@DPTR
+0030C3 FB                MOV     R3,A
+0030C4 A3                INC     DPTR
+0030C5 E0                MOVX    A,@DPTR
+0030C6 FA                MOV     R2,A
+0030C7 A3                INC     DPTR
+0030C8 E0                MOVX    A,@DPTR
+0030C9 2401              ADD     A,#01H
+0030CB F9                MOV     R1,A
+0030CC E4                CLR     A
+0030CD 3A                ADDC    A,R2
+0030CE FA                MOV     R2,A
+0030CF A3                INC     DPTR
+0030D0 E0                MOVX    A,@DPTR
+0030D1 7E00              MOV     R6,#00H
+0030D3 29                ADD     A,R1
+0030D4 F9                MOV     R1,A
+0030D5 EE                MOV     A,R6
+0030D6 3A                ADDC    A,R2
+0030D7 FA                MOV     R2,A
+0030D8 1203B6            LCALL   ?C?CLDPTR
+0030DB FB                MOV     R3,A
+0030DC B4F908            CJNE    A,#0F9H,?C0267?KB_PROCESS
+ 1050: 			{
+ 1051: 				kb_set_multikey(0x0194);
+0030DF 7F94              MOV     R7,#094H
+0030E1 0E                INC     R6
+0030E2 1227AF            LCALL   _kb_set_multikey
+ 1052: 			}	
+0030E5 41A6              AJMP    ?C0252?KB_PROCESS
+0030E7         ?C0267?KB_PROCESS:
+ 1053: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
+0030E7 EB                MOV     A,R3
+0030E8 B4FA09            CJNE    A,#0FAH,?C0269?KB_PROCESS
+ 1054: 			{
+ 1055: 				kb_set_multikey(0x018a);//mail
+0030EB 7F8A              MOV     R7,#08AH
+0030ED 7E01              MOV     R6,#01H
+0030EF 1227AF            LCALL   _kb_set_multikey
+ 1056: 			}
+0030F2 41A6              AJMP    ?C0252?KB_PROCESS
+0030F4         ?C0269?KB_PROCESS:
+ 1057: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
+0030F4 904ED9            MOV     DPTR,#pEvt
+0030F7 E0                MOVX    A,@DPTR
+0030F8 FB                MOV     R3,A
+0030F9 A3                INC     DPTR
+0030FA E0                MOVX    A,@DPTR
+0030FB FA                MOV     R2,A
+0030FC A3                INC     DPTR
+0030FD E0                MOVX    A,@DPTR
+0030FE 2401              ADD     A,#01H
+003100 F9                MOV     R1,A
+003101 E4                CLR     A
+003102 3A                ADDC    A,R2
+003103 FA                MOV     R2,A
+003104 A3                INC     DPTR
+003105 E0                MOVX    A,@DPTR
+003106 7E00              MOV     R6,#00H
+003108 29                ADD     A,R1
+003109 F9                MOV     R1,A
+00310A EE                MOV     A,R6
+00310B 3A                ADDC    A,R2
+00310C FA                MOV     R2,A
+00310D 1203B6            LCALL   ?C?CLDPTR
+003110 FB                MOV     R3,A
+003111 B4FB08            CJNE    A,#0FBH,?C0271?KB_PROCESS
+ 1058: 			{
+ 1059: 				kb_set_multikey(0x0192);
+003114 7F92              MOV     R7,#092H
+003116 0E                INC     R6
+003117 1227AF            LCALL   _kb_set_multikey
+ 1060: 			}
+00311A 41A6              AJMP    ?C0252?KB_PROCESS
+00311C         ?C0271?KB_PROCESS:
+ 1061: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
+00311C EB                MOV     A,R3
+00311D B4D009            CJNE    A,#0D0H,?C0273?KB_PROCESS
+ 1062: 			{
+ 1063: 				kb_set_multikey(0x022a);//www Favorites
+003120 7F2A              MOV     R7,#02AH
+003122 7E02              MOV     R6,#02H
+003124 1227AF            LCALL   _kb_set_multikey
+ 1064: 			}
+003127 41A6              AJMP    ?C0252?KB_PROCESS
+003129         ?C0273?KB_PROCESS:
+ 1065: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
+003129 904ED9            MOV     DPTR,#pEvt
+00312C E0                MOVX    A,@DPTR
+00312D FB                MOV     R3,A
+00312E A3                INC     DPTR
+00312F E0                MOVX    A,@DPTR
+003130 FA                MOV     R2,A
+003131 A3                INC     DPTR
+003132 E0                MOVX    A,@DPTR
+003133 2401              ADD     A,#01H
+003135 F9                MOV     R1,A
+003136 E4                CLR     A
+003137 3A                ADDC    A,R2
+003138 FA                MOV     R2,A
+003139 A3                INC     DPTR
+00313A E0                MOVX    A,@DPTR
+00313B 7E00              MOV     R6,#00H
+00313D 29                ADD     A,R1
+00313E F9                MOV     R1,A
+00313F EE                MOV     A,R6
+003140 3A                ADDC    A,R2
 003141 FA                MOV     R2,A
-003142 A3                INC     DPTR
-003143 E0                MOVX    A,@DPTR
-003144 2401              ADD     A,#01H
-003146 F9                MOV     R1,A
-003147 E4                CLR     A
-003148 3A                ADDC    A,R2
-003149 FA                MOV     R2,A
-00314A A3                INC     DPTR
-00314B E0                MOVX    A,@DPTR
-00314C 7E00              MOV     R6,#00H
-00314E 29                ADD     A,R1
-00314F F9                MOV     R1,A
-003150 EE                MOV     A,R6
-003151 3A                ADDC    A,R2
-003152 FA                MOV     R2,A
-003153 1203B6            LCALL   ?C?CLDPTR
-003156 FB                MOV     R3,A
-003157 B4D509            CJNE    A,#0D5H,?C0273?KB_PROCESS
- 1051: 			{
- 1052: 				kb_set_multikey(0x0221);
-00315A 7F21              MOV     R7,#021H
-00315C 7E02              MOV     R6,#02H
-00315E 1227AF            LCALL   _kb_set_multikey
- 1053: 			}
-003161 414B              AJMP    ?C0242?KB_PROCESS
-003163         ?C0273?KB_PROCESS:
- 1054: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
-003163 EB                MOV     A,R3
-003164 B4D609            CJNE    A,#0D6H,?C0275?KB_PROCESS
- 1055: 			{
- 1056: 				kb_set_multikey(0x0223);
-003167 7F23              MOV     R7,#023H
-003169 7E02              MOV     R6,#02H
-00316B 1227AF            LCALL   _kb_set_multikey
- 1057: 			}
-00316E 414B              AJMP    ?C0242?KB_PROCESS
-003170         ?C0275?KB_PROCESS:
- 1058: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
-003170 904ED9            MOV     DPTR,#pEvt
-003173 E0                MOVX    A,@DPTR
-003174 FB                MOV     R3,A
-003175 A3                INC     DPTR
-003176 E0                MOVX    A,@DPTR
+003142 1203B6            LCALL   ?C?CLDPTR
+003145 FB                MOV     R3,A
+003146 B4D109            CJNE    A,#0D1H,?C0275?KB_PROCESS
+ 1066: 			{
+ 1067: 				kb_set_multikey(0x0225);
+003149 7F25              MOV     R7,#025H
+00314B 7E02              MOV     R6,#02H
+00314D 1227AF            LCALL   _kb_set_multikey
+ 1068: 			}
+003150 41A6              AJMP    ?C0252?KB_PROCESS
+003152         ?C0275?KB_PROCESS:
+ 1069: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
+003152 EB                MOV     A,R3
+003153 B4D309            CJNE    A,#0D3H,?C0277?KB_PROCESS
+ 1070: 			{
+ 1071: 				kb_set_multikey(0x0226);
+003156 7F26              MOV     R7,#026H
+003158 7E02              MOV     R6,#02H
+00315A 1227AF            LCALL   _kb_set_multikey
+ 1072: 			}
+00315D 41A6              AJMP    ?C0252?KB_PROCESS
+00315F         ?C0277?KB_PROCESS:
+ 1073: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
+00315F 904ED9            MOV     DPTR,#pEvt
+003162 E0                MOVX    A,@DPTR
+003163 FB                MOV     R3,A
+003164 A3                INC     DPTR
+003165 E0                MOVX    A,@DPTR
+003166 FA                MOV     R2,A
+003167 A3                INC     DPTR
+003168 E0                MOVX    A,@DPTR
+003169 2401              ADD     A,#01H
+00316B F9                MOV     R1,A
+00316C E4                CLR     A
+00316D 3A                ADDC    A,R2
+00316E FA                MOV     R2,A
+00316F A3                INC     DPTR
+003170 E0                MOVX    A,@DPTR
+003171 7E00              MOV     R6,#00H
+003173 29                ADD     A,R1
+003174 F9                MOV     R1,A
+003175 EE                MOV     A,R6
+003176 3A                ADDC    A,R2
 003177 FA                MOV     R2,A
-003178 A3                INC     DPTR
-003179 E0                MOVX    A,@DPTR
-00317A 2401              ADD     A,#01H
-00317C F9                MOV     R1,A
-00317D E4                CLR     A
-00317E 3A                ADDC    A,R2
-00317F FA                MOV     R2,A
-003180 A3                INC     DPTR
-003181 E0                MOVX    A,@DPTR
-003182 7E00              MOV     R6,#00H
-003184 29                ADD     A,R1
-003185 F9                MOV     R1,A
-003186 EE                MOV     A,R6
-003187 3A                ADDC    A,R2
-003188 FA                MOV     R2,A
-003189 1203B6            LCALL   ?C?CLDPTR
-00318C FB                MOV     R3,A
-00318D B4D707            CJNE    A,#0D7H,?C0277?KB_PROCESS
- 1059: 			{
- 1060: 				kb_set_multikey(0x0070);
-003190 7F70              MOV     R7,#070H
-003192 1227AF            LCALL   _kb_set_multikey
- 1061: 			}
-003195 414B              AJMP    ?C0242?KB_PROCESS
-003197         ?C0277?KB_PROCESS:
- 1062: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
-003197 EB                MOV     A,R3
-003198 B4D809            CJNE    A,#0D8H,?C0279?KB_PROCESS
- 1063: 			{
- 1064: 				kb_set_multikey(0x006f);
-00319B 7F6F              MOV     R7,#06FH
-00319D 7E00              MOV     R6,#00H
-00319F 1227AF            LCALL   _kb_set_multikey
- 1065: 			}	
-0031A2 414B              AJMP    ?C0242?KB_PROCESS
-0031A4         ?C0279?KB_PROCESS:
- 1066: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
-0031A4 904ED9            MOV     DPTR,#pEvt
-0031A7 E0                MOVX    A,@DPTR
-0031A8 FB                MOV     R3,A
-0031A9 A3                INC     DPTR
-0031AA E0                MOVX    A,@DPTR
-0031AB FA                MOV     R2,A
-0031AC A3                INC     DPTR
-0031AD E0                MOVX    A,@DPTR
-0031AE 2401              ADD     A,#01H
-0031B0 F9                MOV     R1,A
-0031B1 E4                CLR     A
-0031B2 3A                ADDC    A,R2
-0031B3 FA                MOV     R2,A
-0031B4 A3                INC     DPTR
-0031B5 E0                MOVX    A,@DPTR
-0031B6 7E00              MOV     R6,#00H
-0031B8 29                ADD     A,R1
-0031B9 F9                MOV     R1,A
-0031BA EE                MOV     A,R6
-0031BB 3A                ADDC    A,R2
-0031BC FA                MOV     R2,A
-0031BD 1203B6            LCALL   ?C?CLDPTR
-0031C0 FB                MOV     R3,A
-0031C1 B4D907            CJNE    A,#0D9H,?C0281?KB_PROCESS
- 1067: 		      	{
- 1068: 		        	kb_set_multikey(0x00b8);
-0031C4 7FB8              MOV     R7,#0B8H
+003178 1203B6            LCALL   ?C?CLDPTR
+00317B FB                MOV     R3,A
+00317C B4D209            CJNE    A,#0D2H,?C0279?KB_PROCESS
+ 1074: 			{
+ 1075: 				kb_set_multikey(0x0224);
+00317F 7F24              MOV     R7,#024H
+003181 7E02              MOV     R6,#02H
+003183 1227AF            LCALL   _kb_set_multikey
+ 1076: 			}
+003186 41A6              AJMP    ?C0252?KB_PROCESS
+003188         ?C0279?KB_PROCESS:
+ 1077: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
+003188 EB                MOV     A,R3
+003189 B4D409            CJNE    A,#0D4H,?C0281?KB_PROCESS
+ 1078: 			{
+ 1079: 				kb_set_multikey(0x0227);
+00318C 7F27              MOV     R7,#027H
+00318E 7E02              MOV     R6,#02H
+003190 1227AF            LCALL   _kb_set_multikey
+ 1080: 			}	
+003193 41A6              AJMP    ?C0252?KB_PROCESS
+003195         ?C0281?KB_PROCESS:
+ 1081: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
+003195 904ED9            MOV     DPTR,#pEvt
+003198 E0                MOVX    A,@DPTR
+003199 FB                MOV     R3,A
+00319A A3                INC     DPTR
+00319B E0                MOVX    A,@DPTR
+00319C FA                MOV     R2,A
+00319D A3                INC     DPTR
+00319E E0                MOVX    A,@DPTR
+00319F 2401              ADD     A,#01H
+0031A1 F9                MOV     R1,A
+0031A2 E4                CLR     A
+0031A3 3A                ADDC    A,R2
+0031A4 FA                MOV     R2,A
+0031A5 A3                INC     DPTR
+0031A6 E0                MOVX    A,@DPTR
+0031A7 7E00              MOV     R6,#00H
+0031A9 29                ADD     A,R1
+0031AA F9                MOV     R1,A
+0031AB EE                MOV     A,R6
+0031AC 3A                ADDC    A,R2
+0031AD FA                MOV     R2,A
+0031AE 1203B6            LCALL   ?C?CLDPTR
+0031B1 FB                MOV     R3,A
+0031B2 B4D509            CJNE    A,#0D5H,?C0283?KB_PROCESS
+ 1082: 			{
+ 1083: 				kb_set_multikey(0x0221);
+0031B5 7F21              MOV     R7,#021H
+0031B7 7E02              MOV     R6,#02H
+0031B9 1227AF            LCALL   _kb_set_multikey
+ 1084: 			}
+0031BC 41A6              AJMP    ?C0252?KB_PROCESS
+0031BE         ?C0283?KB_PROCESS:
+ 1085: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
+0031BE EB                MOV     A,R3
+0031BF B4D609            CJNE    A,#0D6H,?C0285?KB_PROCESS
+ 1086: 			{
+ 1087: 				kb_set_multikey(0x0223);
+0031C2 7F23              MOV     R7,#023H
+0031C4 7E02              MOV     R6,#02H
 0031C6 1227AF            LCALL   _kb_set_multikey
- 1069: 		      	}
-0031C9 414B              AJMP    ?C0242?KB_PROCESS
-0031CB         ?C0281?KB_PROCESS:
- 1070: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
-0031CB EB                MOV     A,R3
-0031CC B4DA09            CJNE    A,#0DAH,?C0283?KB_PROCESS
- 1071: 		      	{
- 1072: 		        	kb_set_multikey(0x0030);
-0031CF 7F30              MOV     R7,#030H
-0031D1 7E00              MOV     R6,#00H
-0031D3 1227AF            LCALL   _kb_set_multikey
- 1073: 		      	}	
-0031D6 8073              SJMP    ?C0242?KB_PROCESS
-0031D8         ?C0283?KB_PROCESS:
- 1074: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
-0031D8 904ED9            MOV     DPTR,#pEvt
-0031DB E0                MOVX    A,@DPTR
-0031DC FB                MOV     R3,A
-0031DD A3                INC     DPTR
-0031DE E0                MOVX    A,@DPTR
-0031DF FA                MOV     R2,A
-0031E0 A3                INC     DPTR
-0031E1 E0                MOVX    A,@DPTR
-0031E2 2401              ADD     A,#01H
-0031E4 F9                MOV     R1,A
-0031E5 E4                CLR     A
-0031E6 3A                ADDC    A,R2
-0031E7 FA                MOV     R2,A
-0031E8 A3                INC     DPTR
-0031E9 E0                MOVX    A,@DPTR
-0031EA 7E00              MOV     R6,#00H
-0031EC 29                ADD     A,R1
-0031ED F9                MOV     R1,A
-0031EE EE                MOV     A,R6
-0031EF 3A                ADDC    A,R2
-0031F0 FA                MOV     R2,A
-0031F1 1203B6            LCALL   ?C?CLDPTR
-0031F4 FB                MOV     R3,A
-0031F5 B4DB09            CJNE    A,#0DBH,?C0285?KB_PROCESS
- 1075: 		      	{
- 1076: 		        	kb_set_multikey(0x0306);
-0031F8 7F06              MOV     R7,#06H
-0031FA 7E03              MOV     R6,#03H
-0031FC 1227AF            LCALL   _kb_set_multikey
- 1077: 		      	}
-0031FF 804A              SJMP    ?C0242?KB_PROCESS
-003201         ?C0285?KB_PROCESS:
- 1078: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
-003201 EB                MOV     A,R3
-003202 B4DC09            CJNE    A,#0DCH,?C0287?KB_PROCESS
- 1079: 		      	{
- 1080: 		        	kb_set_multikey(0x0307);
-003205 7F07              MOV     R7,#07H
-003207 7E03              MOV     R6,#03H
-003209 1227AF            LCALL   _kb_set_multikey
- 1081: 		      	}
-00320C 803D              SJMP    ?C0242?KB_PROCESS
-00320E         ?C0287?KB_PROCESS:
- 1082: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
-00320E 904ED9            MOV     DPTR,#pEvt
-003211 E0                MOVX    A,@DPTR
-003212 FB                MOV     R3,A
-003213 A3                INC     DPTR
-003214 E0                MOVX    A,@DPTR
-003215 FA                MOV     R2,A
-003216 A3                INC     DPTR
-003217 E0                MOVX    A,@DPTR
-003218 2401              ADD     A,#01H
-00321A F9                MOV     R1,A
-00321B E4                CLR     A
-00321C 3A                ADDC    A,R2
-00321D FA                MOV     R2,A
-00321E A3                INC     DPTR
-00321F E0                MOVX    A,@DPTR
-003220 7E00              MOV     R6,#00H
-003222 29                ADD     A,R1
-003223 F9                MOV     R1,A
-003224 EE                MOV     A,R6
-003225 3A                ADDC    A,R2
-003226 FA                MOV     R2,A
-003227 1203B6            LCALL   ?C?CLDPTR
-00322A FE                MOV     R6,A
-00322B B4DD07            CJNE    A,#0DDH,?C0289?KB_PROCESS
- 1083: 		      	{
- 1084: 		        	kb_set_systemkey(0x01);
-00322E 7F01              MOV     R7,#01H
-003230 1227CA            LCALL   _kb_set_systemkey
- 1085: 		      	}
-003233 8016              SJMP    ?C0242?KB_PROCESS
-003235         ?C0289?KB_PROCESS:
- 1086: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
-003235 EE                MOV     A,R6
-003236 B4DE07            CJNE    A,#0DEH,?C0291?KB_PROCESS
- 1087: 		      	{
- 1088: 		        	kb_set_systemkey(0x02);
-003239 7F02              MOV     R7,#02H
-00323B 1227CA            LCALL   _kb_set_systemkey
- 1089: 		      	}
-00323E 800B              SJMP    ?C0242?KB_PROCESS
-003240         ?C0291?KB_PROCESS:
- 1090: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
-003240 1203B6            LCALL   ?C?CLDPTR
-003243 B4DF05            CJNE    A,#0DFH,?C0242?KB_PROCESS
- 1091: 		      	{
- 1092: 		        	kb_set_systemkey(0x04);
-003246 7F04              MOV     R7,#04H
-003248 1227CA            LCALL   _kb_set_systemkey
- 1093: 		      	}
-00324B         ?C0242?KB_PROCESS:
- 1094: 			
- 1095: 			if(mult_key_status == KEY_WAIT_RELEASE)
-00324B 904E4B            MOV     DPTR,#mult_key_status
-00324E E0                MOVX    A,@DPTR
-00324F B40224            CJNE    A,#02H,?C0238?KB_PROCESS
- 1096: 			{
- 1097: 				mult_key_value = pEvt->ksPool[i];
-003252 904ED9            MOV     DPTR,#pEvt
-003255 E0                MOVX    A,@DPTR
-003256 FB                MOV     R3,A
-003257 A3                INC     DPTR
-003258 E0                MOVX    A,@DPTR
-003259 FA                MOV     R2,A
-00325A A3                INC     DPTR
-00325B E0                MOVX    A,@DPTR
-00325C 2401              ADD     A,#01H
-00325E F9                MOV     R1,A
-00325F E4                CLR     A
-003260 3A                ADDC    A,R2
-003261 FA                MOV     R2,A
-003262 A3                INC     DPTR
-003263 E0                MOVX    A,@DPTR
-003264 7E00              MOV     R6,#00H
-003266 29                ADD     A,R1
-003267 F9                MOV     R1,A
-003268 EE                MOV     A,R6
-003269 3A                ADDC    A,R2
-00326A FA                MOV     R2,A
-00326B 1203B6            LCALL   ?C?CLDPTR
-00326E 904DED            MOV     DPTR,#mult_key_value
-003271 F0                MOVX    @DPTR,A
- 1098: 				pEvt->ksPool[i] = 0;
-003272 E4                CLR     A
-003273 1203FC            LCALL   ?C?CSTPTR
- 1099: 			}
- 1100: 		}
- 1101: 	}
-003276         ?C0238?KB_PROCESS:
-003276 904EDC            MOV     DPTR,#i
-003279 E0                MOVX    A,@DPTR
-00327A 04                INC     A
-00327B F0                MOVX    @DPTR,A
-00327C 022F6E            LJMP    ?C0236?KB_PROCESS
- 1102: }
-00327F         ?C0295?KB_PROCESS:
-00327F 22                RET     
+ 1088: 			}
+0031C9 41A6              AJMP    ?C0252?KB_PROCESS
+0031CB         ?C0285?KB_PROCESS:
+ 1089: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
+0031CB 904ED9            MOV     DPTR,#pEvt
+0031CE E0                MOVX    A,@DPTR
+0031CF FB                MOV     R3,A
+0031D0 A3                INC     DPTR
+0031D1 E0                MOVX    A,@DPTR
+0031D2 FA                MOV     R2,A
+0031D3 A3                INC     DPTR
+0031D4 E0                MOVX    A,@DPTR
+0031D5 2401              ADD     A,#01H
+0031D7 F9                MOV     R1,A
+0031D8 E4                CLR     A
+0031D9 3A                ADDC    A,R2
+0031DA FA                MOV     R2,A
+0031DB A3                INC     DPTR
+0031DC E0                MOVX    A,@DPTR
+0031DD 7E00              MOV     R6,#00H
+0031DF 29                ADD     A,R1
+0031E0 F9                MOV     R1,A
+0031E1 EE                MOV     A,R6
+0031E2 3A                ADDC    A,R2
+0031E3 FA                MOV     R2,A
+0031E4 1203B6            LCALL   ?C?CLDPTR
+0031E7 FB                MOV     R3,A
+0031E8 B4D707            CJNE    A,#0D7H,?C0287?KB_PROCESS
+ 1090: 			{
+ 1091: 				kb_set_multikey(0x0070);
+0031EB 7F70              MOV     R7,#070H
+0031ED 1227AF            LCALL   _kb_set_multikey
+ 1092: 			}
+0031F0 41A6              AJMP    ?C0252?KB_PROCESS
+0031F2         ?C0287?KB_PROCESS:
+ 1093: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
+0031F2 EB                MOV     A,R3
+0031F3 B4D809            CJNE    A,#0D8H,?C0289?KB_PROCESS
+ 1094: 			{
+ 1095: 				kb_set_multikey(0x006f);
+0031F6 7F6F              MOV     R7,#06FH
+0031F8 7E00              MOV     R6,#00H
+0031FA 1227AF            LCALL   _kb_set_multikey
+ 1096: 			}	
+0031FD 41A6              AJMP    ?C0252?KB_PROCESS
+0031FF         ?C0289?KB_PROCESS:
+ 1097: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
+0031FF 904ED9            MOV     DPTR,#pEvt
+003202 E0                MOVX    A,@DPTR
+003203 FB                MOV     R3,A
+003204 A3                INC     DPTR
+003205 E0                MOVX    A,@DPTR
+003206 FA                MOV     R2,A
+003207 A3                INC     DPTR
+003208 E0                MOVX    A,@DPTR
+003209 2401              ADD     A,#01H
+00320B F9                MOV     R1,A
+00320C E4                CLR     A
+00320D 3A                ADDC    A,R2
+00320E FA                MOV     R2,A
+00320F A3                INC     DPTR
+003210 E0                MOVX    A,@DPTR
+003211 7E00              MOV     R6,#00H
+003213 29                ADD     A,R1
+003214 F9                MOV     R1,A
+003215 EE                MOV     A,R6
+003216 3A                ADDC    A,R2
+003217 FA                MOV     R2,A
+003218 1203B6            LCALL   ?C?CLDPTR
+00321B FB                MOV     R3,A
+00321C B4D907            CJNE    A,#0D9H,?C0291?KB_PROCESS
+ 1098: 		      	{
+ 1099: 		        	kb_set_multikey(0x00b8);
+00321F 7FB8              MOV     R7,#0B8H
+003221 1227AF            LCALL   _kb_set_multikey
+ 1100: 		      	}
+003224 41A6              AJMP    ?C0252?KB_PROCESS
+003226         ?C0291?KB_PROCESS:
+ 1101: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
+003226 EB                MOV     A,R3
+003227 B4DA09            CJNE    A,#0DAH,?C0293?KB_PROCESS
+ 1102: 		      	{
+ 1103: 		        	kb_set_multikey(0x0030);
+00322A 7F30              MOV     R7,#030H
+00322C 7E00              MOV     R6,#00H
+00322E 1227AF            LCALL   _kb_set_multikey
+ 1104: 		      	}	
+003231 8073              SJMP    ?C0252?KB_PROCESS
+003233         ?C0293?KB_PROCESS:
+ 1105: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
+003233 904ED9            MOV     DPTR,#pEvt
+003236 E0                MOVX    A,@DPTR
+003237 FB                MOV     R3,A
+003238 A3                INC     DPTR
+003239 E0                MOVX    A,@DPTR
+00323A FA                MOV     R2,A
+00323B A3                INC     DPTR
+00323C E0                MOVX    A,@DPTR
+00323D 2401              ADD     A,#01H
+00323F F9                MOV     R1,A
+003240 E4                CLR     A
+003241 3A                ADDC    A,R2
+003242 FA                MOV     R2,A
+003243 A3                INC     DPTR
+003244 E0                MOVX    A,@DPTR
+003245 7E00              MOV     R6,#00H
+003247 29                ADD     A,R1
+003248 F9                MOV     R1,A
+003249 EE                MOV     A,R6
+00324A 3A                ADDC    A,R2
+00324B FA                MOV     R2,A
+00324C 1203B6            LCALL   ?C?CLDPTR
+00324F FB                MOV     R3,A
+003250 B4DB09            CJNE    A,#0DBH,?C0295?KB_PROCESS
+ 1106: 		      	{
+ 1107: 		        	kb_set_multikey(0x0306);
+003253 7F06              MOV     R7,#06H
+003255 7E03              MOV     R6,#03H
+003257 1227AF            LCALL   _kb_set_multikey
+ 1108: 		      	}
+00325A 804A              SJMP    ?C0252?KB_PROCESS
+00325C         ?C0295?KB_PROCESS:
+ 1109: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
+00325C EB                MOV     A,R3
+00325D B4DC09            CJNE    A,#0DCH,?C0297?KB_PROCESS
+ 1110: 		      	{
+ 1111: 		        	kb_set_multikey(0x0307);
+003260 7F07              MOV     R7,#07H
+003262 7E03              MOV     R6,#03H
+003264 1227AF            LCALL   _kb_set_multikey
+ 1112: 		      	}
+003267 803D              SJMP    ?C0252?KB_PROCESS
+003269         ?C0297?KB_PROCESS:
+ 1113: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
+003269 904ED9            MOV     DPTR,#pEvt
+00326C E0                MOVX    A,@DPTR
+00326D FB                MOV     R3,A
+00326E A3                INC     DPTR
+00326F E0                MOVX    A,@DPTR
+003270 FA                MOV     R2,A
+003271 A3                INC     DPTR
+003272 E0                MOVX    A,@DPTR
+003273 2401              ADD     A,#01H
+003275 F9                MOV     R1,A
+003276 E4                CLR     A
+003277 3A                ADDC    A,R2
+003278 FA                MOV     R2,A
+003279 A3                INC     DPTR
+00327A E0                MOVX    A,@DPTR
+00327B 7E00              MOV     R6,#00H
+00327D 29                ADD     A,R1
+00327E F9                MOV     R1,A
+00327F EE                MOV     A,R6
+003280 3A                ADDC    A,R2
+003281 FA                MOV     R2,A
+003282 1203B6            LCALL   ?C?CLDPTR
+003285 FE                MOV     R6,A
+003286 B4DD07            CJNE    A,#0DDH,?C0299?KB_PROCESS
+ 1114: 		      	{
+ 1115: 		        	kb_set_systemkey(0x01);
+003289 7F01              MOV     R7,#01H
+00328B 1227CA            LCALL   _kb_set_systemkey
+ 1116: 		      	}
+00328E 8016              SJMP    ?C0252?KB_PROCESS
+003290         ?C0299?KB_PROCESS:
+ 1117: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
+003290 EE                MOV     A,R6
+003291 B4DE07            CJNE    A,#0DEH,?C0301?KB_PROCESS
+ 1118: 		      	{
+ 1119: 		        	kb_set_systemkey(0x02);
+003294 7F02              MOV     R7,#02H
+003296 1227CA            LCALL   _kb_set_systemkey
+ 1120: 		      	}
+003299 800B              SJMP    ?C0252?KB_PROCESS
+00329B         ?C0301?KB_PROCESS:
+ 1121: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
+00329B 1203B6            LCALL   ?C?CLDPTR
+00329E B4DF05            CJNE    A,#0DFH,?C0252?KB_PROCESS
+ 1122: 		      	{
+ 1123: 		        	kb_set_systemkey(0x04);
+0032A1 7F04              MOV     R7,#04H
+0032A3 1227CA            LCALL   _kb_set_systemkey
+ 1124: 		      	}
+0032A6         ?C0252?KB_PROCESS:
+ 1125: 			
+ 1126: 			if(mult_key_status == KEY_WAIT_RELEASE)
+0032A6 904E4B            MOV     DPTR,#mult_key_status
+0032A9 E0                MOVX    A,@DPTR
+0032AA B40224            CJNE    A,#02H,?C0248?KB_PROCESS
+ 1127: 			{
+ 1128: 				mult_key_value = pEvt->ksPool[i];
+0032AD 904ED9            MOV     DPTR,#pEvt
+0032B0 E0                MOVX    A,@DPTR
+0032B1 FB                MOV     R3,A
+0032B2 A3                INC     DPTR
+0032B3 E0                MOVX    A,@DPTR
+0032B4 FA                MOV     R2,A
+0032B5 A3                INC     DPTR
+0032B6 E0                MOVX    A,@DPTR
+0032B7 2401              ADD     A,#01H
+0032B9 F9                MOV     R1,A
+0032BA E4                CLR     A
+0032BB 3A                ADDC    A,R2
+0032BC FA                MOV     R2,A
+0032BD A3                INC     DPTR
+0032BE E0                MOVX    A,@DPTR
+0032BF 7E00              MOV     R6,#00H
+0032C1 29                ADD     A,R1
+0032C2 F9                MOV     R1,A
+0032C3 EE                MOV     A,R6
+0032C4 3A                ADDC    A,R2
+0032C5 FA                MOV     R2,A
+0032C6 1203B6            LCALL   ?C?CLDPTR
+0032C9 904DED            MOV     DPTR,#mult_key_value
+0032CC F0                MOVX    @DPTR,A
+ 1129: 				pEvt->ksPool[i] = 0;
+0032CD E4                CLR     A
+0032CE 1203FC            LCALL   ?C?CSTPTR
+ 1130: 			}
+ 1131: 		}
+ 1132: 	}
+0032D1         ?C0248?KB_PROCESS:
+0032D1 904EDC            MOV     DPTR,#i
+0032D4 E0                MOVX    A,@DPTR
+0032D5 04                INC     A
+0032D6 F0                MOVX    @DPTR,A
+0032D7 022FCE            LJMP    ?C0246?KB_PROCESS
+ 1133: }
+0032DA         ?C0305?KB_PROCESS:
+0032DA 22                RET     
 ----- FUNCTION _kb_multikey_setup (END) -------
 
 
@@ -9630,41 +9711,41 @@
    38: 	byte i = 0;
    39: 
 ;---- Variable 'i' assigned to Register 'R6' ----
-003280 E4                CLR     A
-003281 FE                MOV     R6,A
+0032DB E4                CLR     A
+0032DC FE                MOV     R6,A
    40: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
-003282 EF                MOV     A,R7
-003283 C3                CLR     C
-003284 94E0              SUBB    A,#0E0H
-003286 4020              JC      ?C0005?KEYSCAN
-003288 EF                MOV     A,R7
-003289 D3                SETB    C
-00328A 94E7              SUBB    A,#0E7H
-00328C 501A              JNC     ?C0005?KEYSCAN
+0032DD EF                MOV     A,R7
+0032DE C3                CLR     C
+0032DF 94E0              SUBB    A,#0E0H
+0032E1 4020              JC      ?C0005?KEYSCAN
+0032E3 EF                MOV     A,R7
+0032E4 D3                SETB    C
+0032E5 94E7              SUBB    A,#0E7H
+0032E7 501A              JNC     ?C0005?KEYSCAN
    41: 	{
    42: 		ksEvtPool.standardSel  |=  0x01 << (key & 0x07);
-00328E 904EA4            MOV     DPTR,#ksEvtPool
-003291 E0                MOVX    A,@DPTR
-003292 FE                MOV     R6,A
-003293 EF                MOV     A,R7
-003294 5407              ANL     A,#07H
-003296 FF                MOV     R7,A
-003297 7401              MOV     A,#01H
-003299 A807              MOV     R0,AR7
-00329B 08                INC     R0
-00329C 8002              SJMP    ?C0093?KEYSCAN
-00329E         ?C0092?KEYSCAN:
-00329E C3                CLR     C
-00329F 33                RLC     A
-0032A0         ?C0093?KEYSCAN:
-0032A0 D8FC              DJNZ    R0,?C0092?KEYSCAN
-0032A2 4E                ORL     A,R6
-0032A3 904EA4            MOV     DPTR,#ksEvtPool
-0032A6 F0                MOVX    @DPTR,A
-0032A7 22                RET     
+0032E9 904EA4            MOV     DPTR,#ksEvtPool
+0032EC E0                MOVX    A,@DPTR
+0032ED FE                MOV     R6,A
+0032EE EF                MOV     A,R7
+0032EF 5407              ANL     A,#07H
+0032F1 FF                MOV     R7,A
+0032F2 7401              MOV     A,#01H
+0032F4 A807              MOV     R0,AR7
+0032F6 08                INC     R0
+0032F7 8002              SJMP    ?C0093?KEYSCAN
+0032F9         ?C0092?KEYSCAN:
+0032F9 C3                CLR     C
+0032FA 33                RLC     A
+0032FB         ?C0093?KEYSCAN:
+0032FB D8FC              DJNZ    R0,?C0092?KEYSCAN
+0032FD 4E                ORL     A,R6
+0032FE 904EA4            MOV     DPTR,#ksEvtPool
+003301 F0                MOVX    @DPTR,A
+003302 22                RET     
    43: 		return;
    44: 	}
-0032A8         ?C0005?KEYSCAN:
+003303         ?C0005?KEYSCAN:
    45: /*
    46: 
    47: 	if (key == HID_KEY_RIGHT_GUI)
@@ -9711,52 +9792,52 @@
    88: 	//special key
    89: 
    90: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
-0032A8 E4                CLR     A
-0032A9 FE                MOV     R6,A
-0032AA         ?C0007?KEYSCAN:
+003303 E4                CLR     A
+003304 FE                MOV     R6,A
+003305         ?C0007?KEYSCAN:
    91: 	{
    92: 		if (ksEvtPool.ksPool[i] == key)
-0032AA 74A5              MOV     A,#LOW ksEvtPool+01H
-0032AC 2E                ADD     A,R6
-0032AD F582              MOV     DPL,A
-0032AF E4                CLR     A
-0032B0 344E              ADDC    A,#HIGH ksEvtPool+01H
-0032B2 F583              MOV     DPH,A
-0032B4 E0                MOVX    A,@DPTR
-0032B5 FD                MOV     R5,A
-0032B6 6F                XRL     A,R7
-0032B7 601C              JZ      ?C0006?KEYSCAN
+003305 74A5              MOV     A,#LOW ksEvtPool+01H
+003307 2E                ADD     A,R6
+003308 F582              MOV     DPL,A
+00330A E4                CLR     A
+00330B 344E              ADDC    A,#HIGH ksEvtPool+01H
+00330D F583              MOV     DPH,A
+00330F E0                MOVX    A,@DPTR
+003310 FD                MOV     R5,A
+003311 6F                XRL     A,R7
+003312 601C              JZ      ?C0006?KEYSCAN
    93: 			break;
-0032B9         ?C0010?KEYSCAN:
+003314         ?C0010?KEYSCAN:
    94: 		if (ksEvtPool.ksPool[i] == 0) 
-0032B9 ED                MOV     A,R5
-0032BA 7014              JNZ     ?C0009?KEYSCAN
+003314 ED                MOV     A,R5
+003315 7014              JNZ     ?C0009?KEYSCAN
    95: 		{
    96: 			if(mult_key_value != key)
-0032BC 904DED            MOV     DPTR,#mult_key_value
-0032BF E0                MOVX    A,@DPTR
-0032C0 6F                XRL     A,R7
-0032C1 6012              JZ      ?C0006?KEYSCAN
+003317 904DED            MOV     DPTR,#mult_key_value
+00331A E0                MOVX    A,@DPTR
+00331B 6F                XRL     A,R7
+00331C 6012              JZ      ?C0006?KEYSCAN
    97: 				ksEvtPool.ksPool[i] = key;
-0032C3 74A5              MOV     A,#LOW ksEvtPool+01H
-0032C5 2E                ADD     A,R6
-0032C6 F582              MOV     DPL,A
-0032C8 E4                CLR     A
-0032C9 344E              ADDC    A,#HIGH ksEvtPool+01H
-0032CB F583              MOV     DPH,A
-0032CD EF                MOV     A,R7
-0032CE F0                MOVX    @DPTR,A
+00331E 74A5              MOV     A,#LOW ksEvtPool+01H
+003320 2E                ADD     A,R6
+003321 F582              MOV     DPL,A
+003323 E4                CLR     A
+003324 344E              ADDC    A,#HIGH ksEvtPool+01H
+003326 F583              MOV     DPH,A
+003328 EF                MOV     A,R7
+003329 F0                MOVX    @DPTR,A
    98: 			break;
-0032CF 22                RET     
+00332A 22                RET     
    99: 		}
   100: 	}
-0032D0         ?C0009?KEYSCAN:
-0032D0 0E                INC     R6
-0032D1 EE                MOV     A,R6
-0032D2 B406D5            CJNE    A,#06H,?C0007?KEYSCAN
+00332B         ?C0009?KEYSCAN:
+00332B 0E                INC     R6
+00332C EE                MOV     A,R6
+00332D B406D5            CJNE    A,#06H,?C0007?KEYSCAN
   101: }
-0032D5         ?C0006?KEYSCAN:
-0032D5 22                RET     
+003330         ?C0006?KEYSCAN:
+003330 22                RET     
 ----- FUNCTION _keyIn (END) -------
 
 
@@ -9768,75 +9849,75 @@
   105: 	byte i = 0 ;
   106: 	byte found = 0;
 ;---- Variable 'i' assigned to Register 'R6' ----
-0032D6 E4                CLR     A
-0032D7 FE                MOV     R6,A
+003331 E4                CLR     A
+003332 FE                MOV     R6,A
   107: 
 ;---- Variable 'found' assigned to Register 'R5' ----
-0032D8 FD                MOV     R5,A
+003333 FD                MOV     R5,A
   108: 	if ((key &0xF0) == 0xf0 || (key &0xD0) == 0xD0)
-0032D9 EF                MOV     A,R7
-0032DA 54F0              ANL     A,#0F0H
-0032DC 64F0              XRL     A,#0F0H
-0032DE 6007              JZ      ?C0014?KEYSCAN
-0032E0 EF                MOV     A,R7
-0032E1 54D0              ANL     A,#0D0H
-0032E3 FC                MOV     R4,A
-0032E4 BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
-0032E7         ?C0014?KEYSCAN:
+003334 EF                MOV     A,R7
+003335 54F0              ANL     A,#0F0H
+003337 64F0              XRL     A,#0F0H
+003339 6007              JZ      ?C0014?KEYSCAN
+00333B EF                MOV     A,R7
+00333C 54D0              ANL     A,#0D0H
+00333E FC                MOV     R4,A
+00333F BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
+003342         ?C0014?KEYSCAN:
   109: 	{
   110: 		if(mult_key_status == KEY_WAIT_RELEASE)
-0032E7 904E4B            MOV     DPTR,#mult_key_status
-0032EA E0                MOVX    A,@DPTR
-0032EB B4020B            CJNE    A,#02H,?C0016?KEYSCAN
+003342 904E4B            MOV     DPTR,#mult_key_status
+003345 E0                MOVX    A,@DPTR
+003346 B4020B            CJNE    A,#02H,?C0016?KEYSCAN
   111: 		{
   112: 			mult_key_status = KEY_RELEASE;
-0032EE 7403              MOV     A,#03H
-0032F0 F0                MOVX    @DPTR,A
+003349 7403              MOV     A,#03H
+00334B F0                MOVX    @DPTR,A
   113: 		}
   114: 	}
-0032F1 8006              SJMP    ?C0016?KEYSCAN
-0032F3         ?C0013?KEYSCAN:
+00334C 8006              SJMP    ?C0016?KEYSCAN
+00334E         ?C0013?KEYSCAN:
   115: 	else
   116: 		standard_key_release_flag = 1;
-0032F3 904DDF            MOV     DPTR,#standard_key_release_flag
-0032F6 7401              MOV     A,#01H
-0032F8 F0                MOVX    @DPTR,A
-0032F9         ?C0016?KEYSCAN:
+00334E 904DDF            MOV     DPTR,#standard_key_release_flag
+003351 7401              MOV     A,#01H
+003353 F0                MOVX    @DPTR,A
+003354         ?C0016?KEYSCAN:
   117: 
   118: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
-0032F9 EF                MOV     A,R7
-0032FA C3                CLR     C
-0032FB 94E0              SUBB    A,#0E0H
-0032FD 4021              JC      ?C0017?KEYSCAN
-0032FF EF                MOV     A,R7
-003300 D3                SETB    C
-003301 94E7              SUBB    A,#0E7H
-003303 501B              JNC     ?C0017?KEYSCAN
+003354 EF                MOV     A,R7
+003355 C3                CLR     C
+003356 94E0              SUBB    A,#0E0H
+003358 4021              JC      ?C0017?KEYSCAN
+00335A EF                MOV     A,R7
+00335B D3                SETB    C
+00335C 94E7              SUBB    A,#0E7H
+00335E 501B              JNC     ?C0017?KEYSCAN
   119: 	{
   120: 		ksEvtPool.standardSel  &= ~(0x01 << (key & 0x07));
-003305 904EA4            MOV     DPTR,#ksEvtPool
-003308 E0                MOVX    A,@DPTR
-003309 FE                MOV     R6,A
-00330A EF                MOV     A,R7
-00330B 5407              ANL     A,#07H
-00330D FF                MOV     R7,A
-00330E 7401              MOV     A,#01H
-003310 A807              MOV     R0,AR7
-003312 08                INC     R0
-003313 8002              SJMP    ?C0095?KEYSCAN
-003315         ?C0094?KEYSCAN:
-003315 C3                CLR     C
-003316 33                RLC     A
-003317         ?C0095?KEYSCAN:
-003317 D8FC              DJNZ    R0,?C0094?KEYSCAN
-003319 F4                CPL     A
-00331A 5E                ANL     A,R6
-00331B 904EA4            MOV     DPTR,#ksEvtPool
-00331E F0                MOVX    @DPTR,A
-00331F 22                RET     
+003360 904EA4            MOV     DPTR,#ksEvtPool
+003363 E0                MOVX    A,@DPTR
+003364 FE                MOV     R6,A
+003365 EF                MOV     A,R7
+003366 5407              ANL     A,#07H
+003368 FF                MOV     R7,A
+003369 7401              MOV     A,#01H
+00336B A807              MOV     R0,AR7
+00336D 08                INC     R0
+00336E 8002              SJMP    ?C0095?KEYSCAN
+003370         ?C0094?KEYSCAN:
+003370 C3                CLR     C
+003371 33                RLC     A
+003372         ?C0095?KEYSCAN:
+003372 D8FC              DJNZ    R0,?C0094?KEYSCAN
+003374 F4                CPL     A
+003375 5E                ANL     A,R6
+003376 904EA4            MOV     DPTR,#ksEvtPool
+003379 F0                MOVX    @DPTR,A
+00337A 22                RET     
   121: 		return;
   122: 	}
-003320         ?C0017?KEYSCAN:
+00337B         ?C0017?KEYSCAN:
   123: 	
   124: 
   125: /*
@@ -9882,94 +9963,94 @@
   165: 	}
   166: */	
   167: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
-003320 E4                CLR     A
-003321 FE                MOV     R6,A
-003322         ?C0019?KEYSCAN:
+00337B E4                CLR     A
+00337C FE                MOV     R6,A
+00337D         ?C0019?KEYSCAN:
   168: 	{
   169: 		if (found == 0) 
-003322 ED                MOV     A,R5
-003323 7021              JNZ     ?C0022?KEYSCAN
+00337D ED                MOV     A,R5
+00337E 7021              JNZ     ?C0022?KEYSCAN
   170: 		{
   171: 			if (ksEvtPool.ksPool[i] == key) {
-003325 74A5              MOV     A,#LOW ksEvtPool+01H
-003327 2E                ADD     A,R6
-003328 F582              MOV     DPL,A
-00332A E4                CLR     A
-00332B 344E              ADDC    A,#HIGH ksEvtPool+01H
-00332D F583              MOV     DPH,A
-00332F E0                MOVX    A,@DPTR
-003330 6F                XRL     A,R7
-003331 7047              JNZ     ?C0021?KEYSCAN
+003380 74A5              MOV     A,#LOW ksEvtPool+01H
+003382 2E                ADD     A,R6
+003383 F582              MOV     DPL,A
+003385 E4                CLR     A
+003386 344E              ADDC    A,#HIGH ksEvtPool+01H
+003388 F583              MOV     DPH,A
+00338A E0                MOVX    A,@DPTR
+00338B 6F                XRL     A,R7
+00338C 7047              JNZ     ?C0021?KEYSCAN
   172: 				if (i == KS_BUFF_POLL_LEN-1) {
-003333 EE                MOV     A,R6
-003334 B4050B            CJNE    A,#05H,?C0024?KEYSCAN
+00338E EE                MOV     A,R6
+00338F B4050B            CJNE    A,#05H,?C0024?KEYSCAN
   173: 					ksEvtPool.ksPool[i] = 0;
-003337 24A5              ADD     A,#LOW ksEvtPool+01H
-003339 F582              MOV     DPL,A
-00333B E4                CLR     A
-00333C 344E              ADDC    A,#HIGH ksEvtPool+01H
-00333E F583              MOV     DPH,A
-003340 E4                CLR     A
-003341 F0                MOVX    @DPTR,A
+003392 24A5              ADD     A,#LOW ksEvtPool+01H
+003394 F582              MOV     DPL,A
+003396 E4                CLR     A
+003397 344E              ADDC    A,#HIGH ksEvtPool+01H
+003399 F583              MOV     DPH,A
+00339B E4                CLR     A
+00339C F0                MOVX    @DPTR,A
   174: 				}
-003342         ?C0024?KEYSCAN:
+00339D         ?C0024?KEYSCAN:
   175: 				found = 1;
-003342 7D01              MOV     R5,#01H
+00339D 7D01              MOV     R5,#01H
   176: 			}
   177: 		}
-003344 8034              SJMP    ?C0021?KEYSCAN
-003346         ?C0022?KEYSCAN:
+00339F 8034              SJMP    ?C0021?KEYSCAN
+0033A1         ?C0022?KEYSCAN:
   178: 		else 
   179: 		{
   180: 			ksEvtPool.ksPool[i-1] = ksEvtPool.ksPool[i];
-003346 74A5              MOV     A,#LOW ksEvtPool+01H
-003348 2E                ADD     A,R6
-003349 F582              MOV     DPL,A
-00334B E4                CLR     A
-00334C 344E              ADDC    A,#HIGH ksEvtPool+01H
-00334E F583              MOV     DPH,A
-003350 E0                MOVX    A,@DPTR
-003351 FC                MOV     R4,A
-003352 74A4              MOV     A,#LOW ksEvtPool
-003354 2E                ADD     A,R6
-003355 F582              MOV     DPL,A
-003357 E4                CLR     A
-003358 344E              ADDC    A,#HIGH ksEvtPool
-00335A F583              MOV     DPH,A
-00335C EC                MOV     A,R4
-00335D F0                MOVX    @DPTR,A
+0033A1 74A5              MOV     A,#LOW ksEvtPool+01H
+0033A3 2E                ADD     A,R6
+0033A4 F582              MOV     DPL,A
+0033A6 E4                CLR     A
+0033A7 344E              ADDC    A,#HIGH ksEvtPool+01H
+0033A9 F583              MOV     DPH,A
+0033AB E0                MOVX    A,@DPTR
+0033AC FC                MOV     R4,A
+0033AD 74A4              MOV     A,#LOW ksEvtPool
+0033AF 2E                ADD     A,R6
+0033B0 F582              MOV     DPL,A
+0033B2 E4                CLR     A
+0033B3 344E              ADDC    A,#HIGH ksEvtPool
+0033B5 F583              MOV     DPH,A
+0033B7 EC                MOV     A,R4
+0033B8 F0                MOVX    @DPTR,A
   181: 			if (ksEvtPool.ksPool[i] == 0)
-00335E 74A5              MOV     A,#LOW ksEvtPool+01H
-003360 2E                ADD     A,R6
-003361 F582              MOV     DPL,A
-003363 E4                CLR     A
-003364 344E              ADDC    A,#HIGH ksEvtPool+01H
-003366 F583              MOV     DPH,A
-003368 E0                MOVX    A,@DPTR
-003369 6014              JZ      ?C0018?KEYSCAN
+0033B9 74A5              MOV     A,#LOW ksEvtPool+01H
+0033BB 2E                ADD     A,R6
+0033BC F582              MOV     DPL,A
+0033BE E4                CLR     A
+0033BF 344E              ADDC    A,#HIGH ksEvtPool+01H
+0033C1 F583              MOV     DPH,A
+0033C3 E0                MOVX    A,@DPTR
+0033C4 6014              JZ      ?C0018?KEYSCAN
   182: 				break;
-00336B         ?C0026?KEYSCAN:
+0033C6         ?C0026?KEYSCAN:
   183: 			if (i == KS_BUFF_POLL_LEN-1) {
-00336B EE                MOV     A,R6
-00336C B4050B            CJNE    A,#05H,?C0021?KEYSCAN
+0033C6 EE                MOV     A,R6
+0033C7 B4050B            CJNE    A,#05H,?C0021?KEYSCAN
   184: 				ksEvtPool.ksPool[i] = 0;
-00336F 24A5              ADD     A,#LOW ksEvtPool+01H
-003371 F582              MOV     DPL,A
-003373 E4                CLR     A
-003374 344E              ADDC    A,#HIGH ksEvtPool+01H
-003376 F583              MOV     DPH,A
-003378 E4                CLR     A
-003379 F0                MOVX    @DPTR,A
+0033CA 24A5              ADD     A,#LOW ksEvtPool+01H
+0033CC F582              MOV     DPL,A
+0033CE E4                CLR     A
+0033CF 344E              ADDC    A,#HIGH ksEvtPool+01H
+0033D1 F583              MOV     DPH,A
+0033D3 E4                CLR     A
+0033D4 F0                MOVX    @DPTR,A
   185: 			}
   186: 		}
   187: 	}
-00337A         ?C0021?KEYSCAN:
-00337A 0E                INC     R6
-00337B EE                MOV     A,R6
-00337C B406A3            CJNE    A,#06H,?C0019?KEYSCAN
+0033D5         ?C0021?KEYSCAN:
+0033D5 0E                INC     R6
+0033D6 EE                MOV     A,R6
+0033D7 B406A3            CJNE    A,#06H,?C0019?KEYSCAN
   188: }
-00337F         ?C0018?KEYSCAN:
-00337F 22                RET     
+0033DA         ?C0018?KEYSCAN:
+0033DA 22                RET     
 ----- FUNCTION _keyOut (END) -------
 
 
@@ -9980,292 +10061,292 @@
   256: 	byte i = 0;
   257: 	byte j = 0;
 ;---- Variable 'i' assigned to Register 'R7' ----
-003380 E4                CLR     A
-003381 FF                MOV     R7,A
+0033DB E4                CLR     A
+0033DC FF                MOV     R7,A
   258: 	byte tgroup = 0;
-003382 904EEE            MOV     DPTR,#j
-003385 F0                MOVX    @DPTR,A
+0033DD 904EEE            MOV     DPTR,#j
+0033E0 F0                MOVX    @DPTR,A
   259: 	byte tgpionum = 0;
 ;---- Variable 'tgroup' assigned to Register 'R6' ----
-003386 FE                MOV     R6,A
+0033E1 FE                MOV     R6,A
   260: 	byte temp = 0;
 ;---- Variable 'tgpionum' assigned to Register 'R5' ----
-003387 FD                MOV     R5,A
+0033E2 FD                MOV     R5,A
   261: 	byte check = 0;
-003388 A3                INC     DPTR
-003389 F0                MOVX    @DPTR,A
+0033E3 A3                INC     DPTR
+0033E4 F0                MOVX    @DPTR,A
   262: 	for (i=0; col[i]!=0; i++) {
-00338A A3                INC     DPTR
-00338B F0                MOVX    @DPTR,A
+0033E5 A3                INC     DPTR
+0033E6 F0                MOVX    @DPTR,A
   263: 		tgroup = col[i]  >> 3;
-00338C         ?C0043?KEYSCAN:
-00338C EF                MOV     A,R7
-00338D 900681            MOV     DPTR,#col
-003390 93                MOVC    A,@A+DPTR
-003391 607C              JZ      ?C0044?KEYSCAN
+0033E7         ?C0043?KEYSCAN:
+0033E7 EF                MOV     A,R7
+0033E8 900681            MOV     DPTR,#col
+0033EB 93                MOVC    A,@A+DPTR
+0033EC 607C              JZ      ?C0044?KEYSCAN
   264: 		tgpionum = 1 << (col[i] & 7);
-003393 EF                MOV     A,R7
-003394 93                MOVC    A,@A+DPTR
-003395 FD                MOV     R5,A
-003396 13                RRC     A
-003397 13                RRC     A
-003398 13                RRC     A
-003399 541F              ANL     A,#01FH
-00339B FE                MOV     R6,A
+0033EE EF                MOV     A,R7
+0033EF 93                MOVC    A,@A+DPTR
+0033F0 FD                MOV     R5,A
+0033F1 13                RRC     A
+0033F2 13                RRC     A
+0033F3 13                RRC     A
+0033F4 541F              ANL     A,#01FH
+0033F6 FE                MOV     R6,A
   265: 		GET_RAW_KEY_SEL(ksSelMapCurr[i], tgroup, tgpionum);
-00339C ED                MOV     A,R5
-00339D 5407              ANL     A,#07H
-00339F FD                MOV     R5,A
-0033A0 7401              MOV     A,#01H
-0033A2 A805              MOV     R0,AR5
-0033A4 08                INC     R0
-0033A5 8002              SJMP    ?C0099?KEYSCAN
-0033A7         ?C0098?KEYSCAN:
-0033A7 C3                CLR     C
-0033A8 33                RLC     A
-0033A9         ?C0099?KEYSCAN:
-0033A9 D8FC              DJNZ    R0,?C0098?KEYSCAN
-0033AB FD                MOV     R5,A
+0033F7 ED                MOV     A,R5
+0033F8 5407              ANL     A,#07H
+0033FA FD                MOV     R5,A
+0033FB 7401              MOV     A,#01H
+0033FD A805              MOV     R0,AR5
+0033FF 08                INC     R0
+003400 8002              SJMP    ?C0099?KEYSCAN
+003402         ?C0098?KEYSCAN:
+003402 C3                CLR     C
+003403 33                RLC     A
+003404         ?C0099?KEYSCAN:
+003404 D8FC              DJNZ    R0,?C0098?KEYSCAN
+003406 FD                MOV     R5,A
   266: 	}
-0033AC EE                MOV     A,R6
-0033AD 2478              ADD     A,#078H
-0033AF FB                MOV     R3,A
-0033B0 E4                CLR     A
-0033B1 3480              ADDC    A,#080H
-0033B3 8B82              MOV     DPL,R3
-0033B5 F583              MOV     DPH,A
-0033B7 E0                MOVX    A,@DPTR
-0033B8 FC                MOV     R4,A
-0033B9 ED                MOV     A,R5
-0033BA F4                CPL     A
-0033BB FB                MOV     R3,A
-0033BC EC                MOV     A,R4
-0033BD 5B                ANL     A,R3
-0033BE F0                MOVX    @DPTR,A
-0033BF EE                MOV     A,R6
-0033C0 2470              ADD     A,#070H
-0033C2 F582              MOV     DPL,A
-0033C4 E4                CLR     A
-0033C5 3480              ADDC    A,#080H
-0033C7 F583              MOV     DPH,A
-0033C9 E0                MOVX    A,@DPTR
-0033CA 4D                ORL     A,R5
-0033CB F0                MOVX    @DPTR,A
-0033CC EE                MOV     A,R6
-0033CD 2474              ADD     A,#074H
-0033CF F582              MOV     DPL,A
-0033D1 E4                CLR     A
-0033D2 3480              ADDC    A,#080H
-0033D4 F583              MOV     DPH,A
-0033D6 E0                MOVX    A,@DPTR
-0033D7 5B                ANL     A,R3
-0033D8 F0                MOVX    @DPTR,A
-0033D9 90811C            MOV     DPTR,#0811CH
-0033DC E0                MOVX    A,@DPTR
-0033DD F4                CPL     A
-0033DE FC                MOV     R4,A
-0033DF 74BC              MOV     A,#LOW ksSelMapCurr
-0033E1 2F                ADD     A,R7
-0033E2 F582              MOV     DPL,A
-0033E4 E4                CLR     A
-0033E5 344D              ADDC    A,#HIGH ksSelMapCurr
-0033E7 F583              MOV     DPH,A
-0033E9 EC                MOV     A,R4
-0033EA F0                MOVX    @DPTR,A
-0033EB EE                MOV     A,R6
-0033EC 2478              ADD     A,#078H
-0033EE FB                MOV     R3,A
-0033EF E4                CLR     A
-0033F0 3480              ADDC    A,#080H
-0033F2 8B82              MOV     DPL,R3
-0033F4 F583              MOV     DPH,A
-0033F6 E0                MOVX    A,@DPTR
-0033F7 4D                ORL     A,R5
-0033F8 F0                MOVX    @DPTR,A
-0033F9 EE                MOV     A,R6
-0033FA 2470              ADD     A,#070H
-0033FC FB                MOV     R3,A
-0033FD E4                CLR     A
-0033FE 3480              ADDC    A,#080H
-003400 8B82              MOV     DPL,R3
-003402 F583              MOV     DPH,A
-003404 E0                MOVX    A,@DPTR
-003405 FC                MOV     R4,A
-003406 ED                MOV     A,R5
-003407 F4                CPL     A
-003408 FB                MOV     R3,A
-003409 EC                MOV     A,R4
-00340A 5B                ANL     A,R3
-00340B F0                MOVX    @DPTR,A
+003407 EE                MOV     A,R6
+003408 2478              ADD     A,#078H
+00340A FB                MOV     R3,A
+00340B E4                CLR     A
+00340C 3480              ADDC    A,#080H
+00340E 8B82              MOV     DPL,R3
+003410 F583              MOV     DPH,A
+003412 E0                MOVX    A,@DPTR
+003413 FC                MOV     R4,A
+003414 ED                MOV     A,R5
+003415 F4                CPL     A
+003416 FB                MOV     R3,A
+003417 EC                MOV     A,R4
+003418 5B                ANL     A,R3
+003419 F0                MOVX    @DPTR,A
+00341A EE                MOV     A,R6
+00341B 2470              ADD     A,#070H
+00341D F582              MOV     DPL,A
+00341F E4                CLR     A
+003420 3480              ADDC    A,#080H
+003422 F583              MOV     DPH,A
+003424 E0                MOVX    A,@DPTR
+003425 4D                ORL     A,R5
+003426 F0                MOVX    @DPTR,A
+003427 EE                MOV     A,R6
+003428 2474              ADD     A,#074H
+00342A F582              MOV     DPL,A
+00342C E4                CLR     A
+00342D 3480              ADDC    A,#080H
+00342F F583              MOV     DPH,A
+003431 E0                MOVX    A,@DPTR
+003432 5B                ANL     A,R3
+003433 F0                MOVX    @DPTR,A
+003434 90811C            MOV     DPTR,#0811CH
+003437 E0                MOVX    A,@DPTR
+003438 F4                CPL     A
+003439 FC                MOV     R4,A
+00343A 74BC              MOV     A,#LOW ksSelMapCurr
+00343C 2F                ADD     A,R7
+00343D F582              MOV     DPL,A
+00343F E4                CLR     A
+003440 344D              ADDC    A,#HIGH ksSelMapCurr
+003442 F583              MOV     DPH,A
+003444 EC                MOV     A,R4
+003445 F0                MOVX    @DPTR,A
+003446 EE                MOV     A,R6
+003447 2478              ADD     A,#078H
+003449 FB                MOV     R3,A
+00344A E4                CLR     A
+00344B 3480              ADDC    A,#080H
+00344D 8B82              MOV     DPL,R3
+00344F F583              MOV     DPH,A
+003451 E0                MOVX    A,@DPTR
+003452 4D                ORL     A,R5
+003453 F0                MOVX    @DPTR,A
+003454 EE                MOV     A,R6
+003455 2470              ADD     A,#070H
+003457 FB                MOV     R3,A
+003458 E4                CLR     A
+003459 3480              ADDC    A,#080H
+00345B 8B82              MOV     DPL,R3
+00345D F583              MOV     DPH,A
+00345F E0                MOVX    A,@DPTR
+003460 FC                MOV     R4,A
+003461 ED                MOV     A,R5
+003462 F4                CPL     A
+003463 FB                MOV     R3,A
+003464 EC                MOV     A,R4
+003465 5B                ANL     A,R3
+003466 F0                MOVX    @DPTR,A
   267: 
-00340C 0F                INC     R7
-00340D 618C              AJMP    ?C0043?KEYSCAN
-00340F         ?C0044?KEYSCAN:
+003467 0F                INC     R7
+003468 61E7              AJMP    ?C0043?KEYSCAN
+00346A         ?C0044?KEYSCAN:
   268: 	for (i=0; col[i]!=0; i++) {
-00340F E4                CLR     A
-003410 FF                MOV     R7,A
-003411         ?C0046?KEYSCAN:
-003411 EF                MOV     A,R7
-003412 900681            MOV     DPTR,#col
-003415 93                MOVC    A,@A+DPTR
-003416 607C              JZ      ?C0047?KEYSCAN
+00346A E4                CLR     A
+00346B FF                MOV     R7,A
+00346C         ?C0046?KEYSCAN:
+00346C EF                MOV     A,R7
+00346D 900681            MOV     DPTR,#col
+003470 93                MOVC    A,@A+DPTR
+003471 607C              JZ      ?C0047?KEYSCAN
   269: 		tgroup = col[i]  >> 3;
-003418 EF                MOV     A,R7
-003419 93                MOVC    A,@A+DPTR
-00341A FD                MOV     R5,A
-00341B 13                RRC     A
-00341C 13                RRC     A
-00341D 13                RRC     A
-00341E 541F              ANL     A,#01FH
-003420 FE                MOV     R6,A
+003473 EF                MOV     A,R7
+003474 93                MOVC    A,@A+DPTR
+003475 FD                MOV     R5,A
+003476 13                RRC     A
+003477 13                RRC     A
+003478 13                RRC     A
+003479 541F              ANL     A,#01FH
+00347B FE                MOV     R6,A
   270: 		tgpionum = 1 << (col[i] & 7);
-003421 ED                MOV     A,R5
-003422 5407              ANL     A,#07H
-003424 FD                MOV     R5,A
-003425 7401              MOV     A,#01H
-003427 A805              MOV     R0,AR5
-003429 08                INC     R0
-00342A 8002              SJMP    ?C0101?KEYSCAN
-00342C         ?C0100?KEYSCAN:
-00342C C3                CLR     C
-00342D 33                RLC     A
-00342E         ?C0101?KEYSCAN:
-00342E D8FC              DJNZ    R0,?C0100?KEYSCAN
-003430 FD                MOV     R5,A
+00347C ED                MOV     A,R5
+00347D 5407              ANL     A,#07H
+00347F FD                MOV     R5,A
+003480 7401              MOV     A,#01H
+003482 A805              MOV     R0,AR5
+003484 08                INC     R0
+003485 8002              SJMP    ?C0101?KEYSCAN
+003487         ?C0100?KEYSCAN:
+003487 C3                CLR     C
+003488 33                RLC     A
+003489         ?C0101?KEYSCAN:
+003489 D8FC              DJNZ    R0,?C0100?KEYSCAN
+00348B FD                MOV     R5,A
   271: 		GET_RAW_KEY_SEL(ksSelMapCheck[i], tgroup, tgpionum);
-003431 EE                MOV     A,R6
-003432 2478              ADD     A,#078H
-003434 FB                MOV     R3,A
-003435 E4                CLR     A
-003436 3480              ADDC    A,#080H
-003438 8B82              MOV     DPL,R3
-00343A F583              MOV     DPH,A
-00343C E0                MOVX    A,@DPTR
-00343D FC                MOV     R4,A
-00343E ED                MOV     A,R5
-00343F F4                CPL     A
-003440 FB                MOV     R3,A
-003441 EC                MOV     A,R4
-003442 5B                ANL     A,R3
-003443 F0                MOVX    @DPTR,A
-003444 EE                MOV     A,R6
-003445 2470              ADD     A,#070H
-003447 F582              MOV     DPL,A
-003449 E4                CLR     A
-00344A 3480              ADDC    A,#080H
-00344C F583              MOV     DPH,A
-00344E E0                MOVX    A,@DPTR
-00344F 4D                ORL     A,R5
-003450 F0                MOVX    @DPTR,A
-003451 EE                MOV     A,R6
-003452 2474              ADD     A,#074H
-003454 F582              MOV     DPL,A
-003456 E4                CLR     A
-003457 3480              ADDC    A,#080H
-003459 F583              MOV     DPH,A
-00345B E0                MOVX    A,@DPTR
-00345C 5B                ANL     A,R3
-00345D F0                MOVX    @DPTR,A
-00345E 90811C            MOV     DPTR,#0811CH
-003461 E0                MOVX    A,@DPTR
-003462 F4                CPL     A
-003463 FC                MOV     R4,A
-003464 74A8              MOV     A,#LOW ksSelMapCheck
-003466 2F                ADD     A,R7
-003467 F582              MOV     DPL,A
-003469 E4                CLR     A
-00346A 344D              ADDC    A,#HIGH ksSelMapCheck
-00346C F583              MOV     DPH,A
-00346E EC                MOV     A,R4
-00346F F0                MOVX    @DPTR,A
-003470 EE                MOV     A,R6
-003471 2478              ADD     A,#078H
-003473 FB                MOV     R3,A
-003474 E4                CLR     A
-003475 3480              ADDC    A,#080H
-003477 8B82              MOV     DPL,R3
-003479 F583              MOV     DPH,A
-00347B E0                MOVX    A,@DPTR
-00347C 4D                ORL     A,R5
-00347D F0                MOVX    @DPTR,A
-00347E EE                MOV     A,R6
-00347F 2470              ADD     A,#070H
-003481 FB                MOV     R3,A
-003482 E4                CLR     A
-003483 3480              ADDC    A,#080H
-003485 8B82              MOV     DPL,R3
-003487 F583              MOV     DPH,A
-003489 E0                MOVX    A,@DPTR
-00348A FC                MOV     R4,A
-00348B ED                MOV     A,R5
-00348C F4                CPL     A
-00348D FB                MOV     R3,A
-00348E EC                MOV     A,R4
-00348F 5B                ANL     A,R3
-003490 F0                MOVX    @DPTR,A
+00348C EE                MOV     A,R6
+00348D 2478              ADD     A,#078H
+00348F FB                MOV     R3,A
+003490 E4                CLR     A
+003491 3480              ADDC    A,#080H
+003493 8B82              MOV     DPL,R3
+003495 F583              MOV     DPH,A
+003497 E0                MOVX    A,@DPTR
+003498 FC                MOV     R4,A
+003499 ED                MOV     A,R5
+00349A F4                CPL     A
+00349B FB                MOV     R3,A
+00349C EC                MOV     A,R4
+00349D 5B                ANL     A,R3
+00349E F0                MOVX    @DPTR,A
+00349F EE                MOV     A,R6
+0034A0 2470              ADD     A,#070H
+0034A2 F582              MOV     DPL,A
+0034A4 E4                CLR     A
+0034A5 3480              ADDC    A,#080H
+0034A7 F583              MOV     DPH,A
+0034A9 E0                MOVX    A,@DPTR
+0034AA 4D                ORL     A,R5
+0034AB F0                MOVX    @DPTR,A
+0034AC EE                MOV     A,R6
+0034AD 2474              ADD     A,#074H
+0034AF F582              MOV     DPL,A
+0034B1 E4                CLR     A
+0034B2 3480              ADDC    A,#080H
+0034B4 F583              MOV     DPH,A
+0034B6 E0                MOVX    A,@DPTR
+0034B7 5B                ANL     A,R3
+0034B8 F0                MOVX    @DPTR,A
+0034B9 90811C            MOV     DPTR,#0811CH
+0034BC E0                MOVX    A,@DPTR
+0034BD F4                CPL     A
+0034BE FC                MOV     R4,A
+0034BF 74A8              MOV     A,#LOW ksSelMapCheck
+0034C1 2F                ADD     A,R7
+0034C2 F582              MOV     DPL,A
+0034C4 E4                CLR     A
+0034C5 344D              ADDC    A,#HIGH ksSelMapCheck
+0034C7 F583              MOV     DPH,A
+0034C9 EC                MOV     A,R4
+0034CA F0                MOVX    @DPTR,A
+0034CB EE                MOV     A,R6
+0034CC 2478              ADD     A,#078H
+0034CE FB                MOV     R3,A
+0034CF E4                CLR     A
+0034D0 3480              ADDC    A,#080H
+0034D2 8B82              MOV     DPL,R3
+0034D4 F583              MOV     DPH,A
+0034D6 E0                MOVX    A,@DPTR
+0034D7 4D                ORL     A,R5
+0034D8 F0                MOVX    @DPTR,A
+0034D9 EE                MOV     A,R6
+0034DA 2470              ADD     A,#070H
+0034DC FB                MOV     R3,A
+0034DD E4                CLR     A
+0034DE 3480              ADDC    A,#080H
+0034E0 8B82              MOV     DPL,R3
+0034E2 F583              MOV     DPH,A
+0034E4 E0                MOVX    A,@DPTR
+0034E5 FC                MOV     R4,A
+0034E6 ED                MOV     A,R5
+0034E7 F4                CPL     A
+0034E8 FB                MOV     R3,A
+0034E9 EC                MOV     A,R4
+0034EA 5B                ANL     A,R3
+0034EB F0                MOVX    @DPTR,A
   272: 	}
-003491 0F                INC     R7
-003492 8111              AJMP    ?C0046?KEYSCAN
-003494         ?C0047?KEYSCAN:
+0034EC 0F                INC     R7
+0034ED 816C              AJMP    ?C0046?KEYSCAN
+0034EF         ?C0047?KEYSCAN:
   273: 
   274: 	for (i=0; col[i]!=0; i++) {
-003494 E4                CLR     A
-003495 FF                MOV     R7,A
-003496         ?C0049?KEYSCAN:
-003496 EF                MOV     A,R7
-003497 900681            MOV     DPTR,#col
-00349A 93                MOVC    A,@A+DPTR
-00349B 6040              JZ      ?C0053?KEYSCAN
+0034EF E4                CLR     A
+0034F0 FF                MOV     R7,A
+0034F1         ?C0049?KEYSCAN:
+0034F1 EF                MOV     A,R7
+0034F2 900681            MOV     DPTR,#col
+0034F5 93                MOVC    A,@A+DPTR
+0034F6 6040              JZ      ?C0053?KEYSCAN
   275: 		if (ksSelMapCheck[i]!=ksSelMapCurr[i]) {
-00349D 74BC              MOV     A,#LOW ksSelMapCurr
-00349F 2F                ADD     A,R7
-0034A0 F582              MOV     DPL,A
-0034A2 E4                CLR     A
-0034A3 344D              ADDC    A,#HIGH ksSelMapCurr
-0034A5 F583              MOV     DPH,A
-0034A7 E0                MOVX    A,@DPTR
-0034A8 FE                MOV     R6,A
-0034A9 74A8              MOV     A,#LOW ksSelMapCheck
-0034AB 2F                ADD     A,R7
-0034AC F582              MOV     DPL,A
-0034AE E4                CLR     A
-0034AF 344D              ADDC    A,#HIGH ksSelMapCheck
-0034B1 F583              MOV     DPH,A
-0034B3 E0                MOVX    A,@DPTR
-0034B4 6E                XRL     A,R6
-0034B5 6023              JZ      ?C0051?KEYSCAN
+0034F8 74BC              MOV     A,#LOW ksSelMapCurr
+0034FA 2F                ADD     A,R7
+0034FB F582              MOV     DPL,A
+0034FD E4                CLR     A
+0034FE 344D              ADDC    A,#HIGH ksSelMapCurr
+003500 F583              MOV     DPH,A
+003502 E0                MOVX    A,@DPTR
+003503 FE                MOV     R6,A
+003504 74A8              MOV     A,#LOW ksSelMapCheck
+003506 2F                ADD     A,R7
+003507 F582              MOV     DPL,A
+003509 E4                CLR     A
+00350A 344D              ADDC    A,#HIGH ksSelMapCheck
+00350C F583              MOV     DPH,A
+00350E E0                MOVX    A,@DPTR
+00350F 6E                XRL     A,R6
+003510 6023              JZ      ?C0051?KEYSCAN
   276: 			ksSelMapCurr[i] &= ksSelMapCheck[i];
-0034B7 74BC              MOV     A,#LOW ksSelMapCurr
-0034B9 2F                ADD     A,R7
-0034BA F582              MOV     DPL,A
-0034BC E4                CLR     A
-0034BD 344D              ADDC    A,#HIGH ksSelMapCurr
-0034BF F583              MOV     DPH,A
-0034C1 C083              PUSH    DPH
-0034C3 C082              PUSH    DPL
-0034C5 E0                MOVX    A,@DPTR
-0034C6 FE                MOV     R6,A
-0034C7 74A8              MOV     A,#LOW ksSelMapCheck
-0034C9 2F                ADD     A,R7
-0034CA F582              MOV     DPL,A
-0034CC E4                CLR     A
-0034CD 344D              ADDC    A,#HIGH ksSelMapCheck
-0034CF F583              MOV     DPH,A
-0034D1 E0                MOVX    A,@DPTR
-0034D2 FD                MOV     R5,A
-0034D3 EE                MOV     A,R6
-0034D4 5D                ANL     A,R5
-0034D5 D082              POP     DPL
-0034D7 D083              POP     DPH
-0034D9 F0                MOVX    @DPTR,A
+003512 74BC              MOV     A,#LOW ksSelMapCurr
+003514 2F                ADD     A,R7
+003515 F582              MOV     DPL,A
+003517 E4                CLR     A
+003518 344D              ADDC    A,#HIGH ksSelMapCurr
+00351A F583              MOV     DPH,A
+00351C C083              PUSH    DPH
+00351E C082              PUSH    DPL
+003520 E0                MOVX    A,@DPTR
+003521 FE                MOV     R6,A
+003522 74A8              MOV     A,#LOW ksSelMapCheck
+003524 2F                ADD     A,R7
+003525 F582              MOV     DPL,A
+003527 E4                CLR     A
+003528 344D              ADDC    A,#HIGH ksSelMapCheck
+00352A F583              MOV     DPH,A
+00352C E0                MOVX    A,@DPTR
+00352D FD                MOV     R5,A
+00352E EE                MOV     A,R6
+00352F 5D                ANL     A,R5
+003530 D082              POP     DPL
+003532 D083              POP     DPH
+003534 F0                MOVX    @DPTR,A
   277: 		}
   278: 	}
-0034DA         ?C0051?KEYSCAN:
-0034DA 0F                INC     R7
-0034DB 80B9              SJMP    ?C0049?KEYSCAN
+003535         ?C0051?KEYSCAN:
+003535 0F                INC     R7
+003536 80B9              SJMP    ?C0049?KEYSCAN
   279: }
-0034DD         ?C0053?KEYSCAN:
-0034DD 22                RET     
+003538         ?C0053?KEYSCAN:
+003538 22                RET     
 ----- FUNCTION KS_ScanMatrix (END) -------
 
 
@@ -10275,28 +10356,28 @@
    17: {
    18: 	if(g_variable.current_device_num == 1)
    19: 		GPIO_Setout(BT_LED_GPIO,LED_ON);
-0034DE 904CC3            MOV     DPTR,#g_variable+04H
-0034E1 E0                MOVX    A,@DPTR
-0034E2 B40107            CJNE    A,#01H,?C0002?LED
+003539 904CC3            MOV     DPTR,#g_variable+04H
+00353C E0                MOVX    A,@DPTR
+00353D B40107            CJNE    A,#01H,?C0002?LED
    20: 	else if(g_variable.current_device_num == 2)
-0034E5 D201              SETB    ?_GPIO_Setout?BIT
-0034E7 7F1C              MOV     R7,#01CH
-0034E9 020FDF            LJMP    _GPIO_Setout
-0034EC         ?C0002?LED:
+003540 D201              SETB    ?_GPIO_Setout?BIT
+003542 7F1C              MOV     R7,#01CH
+003544 020FDF            LJMP    _GPIO_Setout
+003547         ?C0002?LED:
    21: 		GPIO_Setout(BT2_LED_GPIO,LED_ON);
-0034EC 904CC3            MOV     DPTR,#g_variable+04H
-0034EF E0                MOVX    A,@DPTR
-0034F0 B40207            CJNE    A,#02H,?C0004?LED
+003547 904CC3            MOV     DPTR,#g_variable+04H
+00354A E0                MOVX    A,@DPTR
+00354B B40207            CJNE    A,#02H,?C0004?LED
    22: 	else
-0034F3 D201              SETB    ?_GPIO_Setout?BIT
-0034F5 7F1C              MOV     R7,#01CH
-0034F7 020FDF            LJMP    _GPIO_Setout
-0034FA         ?C0004?LED:
+00354E D201              SETB    ?_GPIO_Setout?BIT
+003550 7F1C              MOV     R7,#01CH
+003552 020FDF            LJMP    _GPIO_Setout
+003555         ?C0004?LED:
    23: 	{
    24: 		GPIO_Setout(G24_LED_GPIO,LED_ON);
-0034FA D201              SETB    ?_GPIO_Setout?BIT
-0034FC 7F1C              MOV     R7,#01CH
-0034FE 020FDF            LJMP    _GPIO_Setout
+003555 D201              SETB    ?_GPIO_Setout?BIT
+003557 7F1C              MOV     R7,#01CH
+003559 020FDF            LJMP    _GPIO_Setout
    25: 	}
 ----- FUNCTION LED_device_poweron (END) -------
 
@@ -10307,28 +10388,28 @@
    53: {
    54: 	REG_IICD_SCL_LOW  =  0x0d;
    55:    	REG_IICD_SCL_HIGH  =  0x0e;
-003501 908091            MOV     DPTR,#08091H
-003504 740D              MOV     A,#0DH
-003506 F0                MOVX    @DPTR,A
+00355C 908091            MOV     DPTR,#08091H
+00355F 740D              MOV     A,#0DH
+003561 F0                MOVX    @DPTR,A
    56:    	REG_IICD_START_SETUP  = 0x0e;
-003507 A3                INC     DPTR
-003508 04                INC     A
-003509 F0                MOVX    @DPTR,A
+003562 A3                INC     DPTR
+003563 04                INC     A
+003564 F0                MOVX    @DPTR,A
    57:    	REG_IICD_START_HOLD  = 0x0e;
-00350A A3                INC     DPTR
-00350B F0                MOVX    @DPTR,A
+003565 A3                INC     DPTR
+003566 F0                MOVX    @DPTR,A
    58:   	REG_IICD_STOP_SETUP  = 0x0e;
-00350C A3                INC     DPTR
-00350D F0                MOVX    @DPTR,A
+003567 A3                INC     DPTR
+003568 F0                MOVX    @DPTR,A
    59:    	REG_IICD_DATA_SETUP  = 0x0d;
-00350E A3                INC     DPTR
-00350F F0                MOVX    @DPTR,A
+003569 A3                INC     DPTR
+00356A F0                MOVX    @DPTR,A
    60: }
-003510 A3                INC     DPTR
-003511 14                DEC     A
-003512 F0                MOVX    @DPTR,A
+00356B A3                INC     DPTR
+00356C 14                DEC     A
+00356D F0                MOVX    @DPTR,A
    61: 
-003513 22                RET     
+00356E 22                RET     
 ----- FUNCTION System_IIC_clk_setup (END) -------
 
 
@@ -10338,42 +10419,42 @@
    71: {
    72: 	System_clear_mem();
    73: 	YC_adc_init();
-003514 121661            LCALL   System_clear_mem
+00356F 121661            LCALL   System_clear_mem
    74: 	g_variable.release_data =1;
-003517 B149              ACALL   YC_adc_init
+003572 B1A4              ACALL   YC_adc_init
    75: 	g_variable.powerOn_timer = KB_POWERON_LED_ON_TIMER;
-003519 904CEC            MOV     DPTR,#g_variable+02DH
-00351C 7401              MOV     A,#01H
-00351E F0                MOVX    @DPTR,A
+003574 904CEC            MOV     DPTR,#g_variable+02DH
+003577 7401              MOV     A,#01H
+003579 F0                MOVX    @DPTR,A
    76: 	g_variable.recon_count = 0;
-00351F 904CE5            MOV     DPTR,#g_variable+026H
-003522 741E              MOV     A,#01EH
-003524 F0                MOVX    @DPTR,A
+00357A 904CE5            MOV     DPTR,#g_variable+026H
+00357D 741E              MOV     A,#01EH
+00357F F0                MOVX    @DPTR,A
    77: 	g_variable.test_buff = 0xff;
-003525 E4                CLR     A
-003526 904CF2            MOV     DPTR,#g_variable+033H
-003529 F0                MOVX    @DPTR,A
+003580 E4                CLR     A
+003581 904CF2            MOV     DPTR,#g_variable+033H
+003584 F0                MOVX    @DPTR,A
    78: 	le_lap_temp[0] = m_le_lap[3];
-00352A 904D0B            MOV     DPTR,#g_variable+04CH
-00352D 74FF              MOV     A,#0FFH
-00352F F0                MOVX    @DPTR,A
+003585 904D0B            MOV     DPTR,#g_variable+04CH
+003588 74FF              MOV     A,#0FFH
+00358A F0                MOVX    @DPTR,A
    79: 	le_lap_temp[1] = m_le_lap[4];
-003530 9044FC            MOV     DPTR,#m_le_lap+03H
-003533 E0                MOVX    A,@DPTR
-003534 904DD0            MOV     DPTR,#le_lap_temp
-003537 F0                MOVX    @DPTR,A
+00358B 9044FC            MOV     DPTR,#m_le_lap+03H
+00358E E0                MOVX    A,@DPTR
+00358F 904DD0            MOV     DPTR,#le_lap_temp
+003592 F0                MOVX    @DPTR,A
    80: 	le_lap_temp[2] = m_le_lap[5];
-003538 9044FD            MOV     DPTR,#m_le_lap+04H
-00353B E0                MOVX    A,@DPTR
-00353C 904DD1            MOV     DPTR,#le_lap_temp+01H
-00353F F0                MOVX    @DPTR,A
+003593 9044FD            MOV     DPTR,#m_le_lap+04H
+003596 E0                MOVX    A,@DPTR
+003597 904DD1            MOV     DPTR,#le_lap_temp+01H
+00359A F0                MOVX    @DPTR,A
    81: }
-003540 9044FE            MOV     DPTR,#m_le_lap+05H
-003543 E0                MOVX    A,@DPTR
-003544 904DD2            MOV     DPTR,#le_lap_temp+02H
-003547 F0                MOVX    @DPTR,A
+00359B 9044FE            MOV     DPTR,#m_le_lap+05H
+00359E E0                MOVX    A,@DPTR
+00359F 904DD2            MOV     DPTR,#le_lap_temp+02H
+0035A2 F0                MOVX    @DPTR,A
    82: 
-003548 22                RET     
+0035A3 22                RET     
 ----- FUNCTION System_Software_init (END) -------
 
 
@@ -10385,178 +10466,178 @@
     6: 	byte i;
     7: 	
     8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-003549 904CD3            MOV     DPTR,#g_variable+014H
-00354C 7405              MOV     A,#05H
-00354E F0                MOVX    @DPTR,A
+0035A4 904CD3            MOV     DPTR,#g_variable+014H
+0035A7 7405              MOV     A,#05H
+0035A9 F0                MOVX    @DPTR,A
     9: 	g_variable.battery_value_index = 0;
-00354F E4                CLR     A
-003550 A3                INC     DPTR
-003551 F0                MOVX    @DPTR,A
+0035AA E4                CLR     A
+0035AB A3                INC     DPTR
+0035AC 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' ----
-003552 FF                MOV     R7,A
-003553         ?C0001?ADC:
+0035AD FF                MOV     R7,A
+0035AE         ?C0001?ADC:
    13: 	{
    14: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE;
-003553 EF                MOV     A,R7
-003554 25E0              ADD     A,ACC
-003556 24D6              ADD     A,#LOW g_variable+017H
-003558 F582              MOV     DPL,A
-00355A E4                CLR     A
-00355B 344C              ADDC    A,#HIGH g_variable+017H
-00355D F583              MOV     DPH,A
-00355F 7454              MOV     A,#054H
-003561 F0                MOVX    @DPTR,A
-003562 A3                INC     DPTR
-003563 F0                MOVX    @DPTR,A
+0035AE EF                MOV     A,R7
+0035AF 25E0              ADD     A,ACC
+0035B1 24D6              ADD     A,#LOW g_variable+017H
+0035B3 F582              MOV     DPL,A
+0035B5 E4                CLR     A
+0035B6 344C              ADDC    A,#HIGH g_variable+017H
+0035B8 F583              MOV     DPH,A
+0035BA 7454              MOV     A,#054H
+0035BC F0                MOVX    @DPTR,A
+0035BD A3                INC     DPTR
+0035BE F0                MOVX    @DPTR,A
    15: 	}
-003564 0F                INC     R7
-003565 EF                MOV     A,R7
-003566 B404EA            CJNE    A,#04H,?C0001?ADC
-003569         ?C0002?ADC:
+0035BF 0F                INC     R7
+0035C0 EF                MOV     A,R7
+0035C1 B404EA            CJNE    A,#04H,?C0001?ADC
+0035C4         ?C0002?ADC:
    16: 	g_variable.battery_level_full = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V7+m_adc0vBase;
-003569 904C91            MOV     DPTR,#m_adc0vBase
-00356C E0                MOVX    A,@DPTR
-00356D FE                MOV     R6,A
-00356E A3                INC     DPTR
-00356F E0                MOVX    A,@DPTR
-003570 FF                MOV     R7,A
-003571 C3                CLR     C
-003572 904C94            MOV     DPTR,#m_adc3vValue+01H
-003575 E0                MOVX    A,@DPTR
-003576 9F                SUBB    A,R7
-003577 FD                MOV     R5,A
-003578 904C93            MOV     DPTR,#m_adc3vValue
-00357B E0                MOVX    A,@DPTR
-00357C 9E                SUBB    A,R6
-00357D FC                MOV     R4,A
-00357E E4                CLR     A
-00357F 120206            LCALL   ?C?FCASTI
-003582 7B52              MOV     R3,#052H
-003584 7AB8              MOV     R2,#0B8H
-003586 799E              MOV     R1,#09EH
-003588 783F              MOV     R0,#03FH
-00358A 1200FB            LCALL   ?C?FPMUL
-00358D C004              PUSH    AR4
-00358F C005              PUSH    AR5
-003591 C006              PUSH    AR6
-003593 C007              PUSH    AR7
-003595 904C91            MOV     DPTR,#m_adc0vBase
-003598 E0                MOVX    A,@DPTR
-003599 FC                MOV     R4,A
-00359A A3                INC     DPTR
-00359B E0                MOVX    A,@DPTR
-00359C FD                MOV     R5,A
-00359D E4                CLR     A
-00359E 120206            LCALL   ?C?FCASTI
-0035A1 D003              POP     AR3
-0035A3 D002              POP     AR2
-0035A5 D001              POP     AR1
-0035A7 D000              POP     AR0
-0035A9 12000A            LCALL   ?C?FPADD
-0035AC 12023F            LCALL   ?C?CASTF
-0035AF 904CFC            MOV     DPTR,#g_variable+03DH
-0035B2 EE                MOV     A,R6
-0035B3 F0                MOVX    @DPTR,A
-0035B4 A3                INC     DPTR
-0035B5 EF                MOV     A,R7
-0035B6 F0                MOVX    @DPTR,A
+0035C4 904C91            MOV     DPTR,#m_adc0vBase
+0035C7 E0                MOVX    A,@DPTR
+0035C8 FE                MOV     R6,A
+0035C9 A3                INC     DPTR
+0035CA E0                MOVX    A,@DPTR
+0035CB FF                MOV     R7,A
+0035CC C3                CLR     C
+0035CD 904C94            MOV     DPTR,#m_adc3vValue+01H
+0035D0 E0                MOVX    A,@DPTR
+0035D1 9F                SUBB    A,R7
+0035D2 FD                MOV     R5,A
+0035D3 904C93            MOV     DPTR,#m_adc3vValue
+0035D6 E0                MOVX    A,@DPTR
+0035D7 9E                SUBB    A,R6
+0035D8 FC                MOV     R4,A
+0035D9 E4                CLR     A
+0035DA 120206            LCALL   ?C?FCASTI
+0035DD 7B52              MOV     R3,#052H
+0035DF 7AB8              MOV     R2,#0B8H
+0035E1 799E              MOV     R1,#09EH
+0035E3 783F              MOV     R0,#03FH
+0035E5 1200FB            LCALL   ?C?FPMUL
+0035E8 C004              PUSH    AR4
+0035EA C005              PUSH    AR5
+0035EC C006              PUSH    AR6
+0035EE C007              PUSH    AR7
+0035F0 904C91            MOV     DPTR,#m_adc0vBase
+0035F3 E0                MOVX    A,@DPTR
+0035F4 FC                MOV     R4,A
+0035F5 A3                INC     DPTR
+0035F6 E0                MOVX    A,@DPTR
+0035F7 FD                MOV     R5,A
+0035F8 E4                CLR     A
+0035F9 120206            LCALL   ?C?FCASTI
+0035FC D003              POP     AR3
+0035FE D002              POP     AR2
+003600 D001              POP     AR1
+003602 D000              POP     AR0
+003604 12000A            LCALL   ?C?FPADD
+003607 12023F            LCALL   ?C?CASTF
+00360A 904CFC            MOV     DPTR,#g_variable+03DH
+00360D EE                MOV     A,R6
+00360E F0                MOVX    @DPTR,A
+00360F A3                INC     DPTR
+003610 EF                MOV     A,R7
+003611 F0                MOVX    @DPTR,A
    17: 	g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V2+m_adc0vBase;
-0035B7 904C91            MOV     DPTR,#m_adc0vBase
-0035BA E0                MOVX    A,@DPTR
-0035BB FE                MOV     R6,A
-0035BC A3                INC     DPTR
-0035BD E0                MOVX    A,@DPTR
-0035BE FF                MOV     R7,A
-0035BF C3                CLR     C
-0035C0 904C94            MOV     DPTR,#m_adc3vValue+01H
-0035C3 E0                MOVX    A,@DPTR
-0035C4 9F                SUBB    A,R7
-0035C5 FD                MOV     R5,A
-0035C6 904C93            MOV     DPTR,#m_adc3vValue
-0035C9 E0                MOVX    A,@DPTR
-0035CA 9E                SUBB    A,R6
-0035CB FC                MOV     R4,A
-0035CC E4                CLR     A
-0035CD 120206            LCALL   ?C?FCASTI
-0035D0 7BC3              MOV     R3,#0C3H
-0035D2 7AF5              MOV     R2,#0F5H
-0035D4 7988              MOV     R1,#088H
-0035D6 783F              MOV     R0,#03FH
-0035D8 1200FB            LCALL   ?C?FPMUL
-0035DB C004              PUSH    AR4
-0035DD C005              PUSH    AR5
-0035DF C006              PUSH    AR6
-0035E1 C007              PUSH    AR7
-0035E3 904C91            MOV     DPTR,#m_adc0vBase
-0035E6 E0                MOVX    A,@DPTR
-0035E7 FC                MOV     R4,A
-0035E8 A3                INC     DPTR
-0035E9 E0                MOVX    A,@DPTR
-0035EA FD                MOV     R5,A
-0035EB E4                CLR     A
-0035EC 120206            LCALL   ?C?FCASTI
-0035EF D003              POP     AR3
-0035F1 D002              POP     AR2
-0035F3 D001              POP     AR1
-0035F5 D000              POP     AR0
-0035F7 12000A            LCALL   ?C?FPADD
-0035FA 12023F            LCALL   ?C?CASTF
-0035FD 904CDE            MOV     DPTR,#g_variable+01FH
-003600 EE                MOV     A,R6
-003601 F0                MOVX    @DPTR,A
-003602 A3                INC     DPTR
-003603 EF                MOV     A,R7
-003604 F0                MOVX    @DPTR,A
+003612 904C91            MOV     DPTR,#m_adc0vBase
+003615 E0                MOVX    A,@DPTR
+003616 FE                MOV     R6,A
+003617 A3                INC     DPTR
+003618 E0                MOVX    A,@DPTR
+003619 FF                MOV     R7,A
+00361A C3                CLR     C
+00361B 904C94            MOV     DPTR,#m_adc3vValue+01H
+00361E E0                MOVX    A,@DPTR
+00361F 9F                SUBB    A,R7
+003620 FD                MOV     R5,A
+003621 904C93            MOV     DPTR,#m_adc3vValue
+003624 E0                MOVX    A,@DPTR
+003625 9E                SUBB    A,R6
+003626 FC                MOV     R4,A
+003627 E4                CLR     A
+003628 120206            LCALL   ?C?FCASTI
+00362B 7BC3              MOV     R3,#0C3H
+00362D 7AF5              MOV     R2,#0F5H
+00362F 7988              MOV     R1,#088H
+003631 783F              MOV     R0,#03FH
+003633 1200FB            LCALL   ?C?FPMUL
+003636 C004              PUSH    AR4
+003638 C005              PUSH    AR5
+00363A C006              PUSH    AR6
+00363C C007              PUSH    AR7
+00363E 904C91            MOV     DPTR,#m_adc0vBase
+003641 E0                MOVX    A,@DPTR
+003642 FC                MOV     R4,A
+003643 A3                INC     DPTR
+003644 E0                MOVX    A,@DPTR
+003645 FD                MOV     R5,A
+003646 E4                CLR     A
+003647 120206            LCALL   ?C?FCASTI
+00364A D003              POP     AR3
+00364C D002              POP     AR2
+00364E D001              POP     AR1
+003650 D000              POP     AR0
+003652 12000A            LCALL   ?C?FPADD
+003655 12023F            LCALL   ?C?CASTF
+003658 904CDE            MOV     DPTR,#g_variable+01FH
+00365B EE                MOV     A,R6
+00365C F0                MOVX    @DPTR,A
+00365D A3                INC     DPTR
+00365E EF                MOV     A,R7
+00365F F0                MOVX    @DPTR,A
    18: 	g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V0+m_adc0vBase;
-003605 904C91            MOV     DPTR,#m_adc0vBase
-003608 E0                MOVX    A,@DPTR
-003609 FE                MOV     R6,A
-00360A A3                INC     DPTR
-00360B E0                MOVX    A,@DPTR
-00360C FF                MOV     R7,A
-00360D C3                CLR     C
-00360E 904C94            MOV     DPTR,#m_adc3vValue+01H
-003611 E0                MOVX    A,@DPTR
-003612 9F                SUBB    A,R7
-003613 FD                MOV     R5,A
-003614 904C93            MOV     DPTR,#m_adc3vValue
-003617 E0                MOVX    A,@DPTR
-003618 9E                SUBB    A,R6
-003619 FC                MOV     R4,A
-00361A E4                CLR     A
-00361B 120206            LCALL   ?C?FCASTI
-00361E 7BAE              MOV     R3,#0AEH
-003620 7A47              MOV     R2,#047H
-003622 7981              MOV     R1,#081H
-003624 783F              MOV     R0,#03FH
-003626 1200FB            LCALL   ?C?FPMUL
-003629 C004              PUSH    AR4
-00362B C005              PUSH    AR5
-00362D C006              PUSH    AR6
-00362F C007              PUSH    AR7
-003631 904C91            MOV     DPTR,#m_adc0vBase
-003634 E0                MOVX    A,@DPTR
-003635 FC                MOV     R4,A
-003636 A3                INC     DPTR
-003637 E0                MOVX    A,@DPTR
-003638 FD                MOV     R5,A
-003639 E4                CLR     A
-00363A 120206            LCALL   ?C?FCASTI
-00363D D003              POP     AR3
-00363F D002              POP     AR2
-003641 D001              POP     AR1
-003643 D000              POP     AR0
-003645 12000A            LCALL   ?C?FPADD
-003648 12023F            LCALL   ?C?CASTF
-00364B 904CE0            MOV     DPTR,#g_variable+021H
-00364E EE                MOV     A,R6
-00364F F0                MOVX    @DPTR,A
-003650 A3                INC     DPTR
-003651 EF                MOV     A,R7
-003652 F0                MOVX    @DPTR,A
+003660 904C91            MOV     DPTR,#m_adc0vBase
+003663 E0                MOVX    A,@DPTR
+003664 FE                MOV     R6,A
+003665 A3                INC     DPTR
+003666 E0                MOVX    A,@DPTR
+003667 FF                MOV     R7,A
+003668 C3                CLR     C
+003669 904C94            MOV     DPTR,#m_adc3vValue+01H
+00366C E0                MOVX    A,@DPTR
+00366D 9F                SUBB    A,R7
+00366E FD                MOV     R5,A
+00366F 904C93            MOV     DPTR,#m_adc3vValue
+003672 E0                MOVX    A,@DPTR
+003673 9E                SUBB    A,R6
+003674 FC                MOV     R4,A
+003675 E4                CLR     A
+003676 120206            LCALL   ?C?FCASTI
+003679 7BAE              MOV     R3,#0AEH
+00367B 7A47              MOV     R2,#047H
+00367D 7981              MOV     R1,#081H
+00367F 783F              MOV     R0,#03FH
+003681 1200FB            LCALL   ?C?FPMUL
+003684 C004              PUSH    AR4
+003686 C005              PUSH    AR5
+003688 C006              PUSH    AR6
+00368A C007              PUSH    AR7
+00368C 904C91            MOV     DPTR,#m_adc0vBase
+00368F E0                MOVX    A,@DPTR
+003690 FC                MOV     R4,A
+003691 A3                INC     DPTR
+003692 E0                MOVX    A,@DPTR
+003693 FD                MOV     R5,A
+003694 E4                CLR     A
+003695 120206            LCALL   ?C?FCASTI
+003698 D003              POP     AR3
+00369A D002              POP     AR2
+00369C D001              POP     AR1
+00369E D000              POP     AR0
+0036A0 12000A            LCALL   ?C?FPADD
+0036A3 12023F            LCALL   ?C?CASTF
+0036A6 904CE0            MOV     DPTR,#g_variable+021H
+0036A9 EE                MOV     A,R6
+0036AA F0                MOVX    @DPTR,A
+0036AB A3                INC     DPTR
+0036AC EF                MOV     A,R7
+0036AD F0                MOVX    @DPTR,A
    19: #endif
    20: #ifdef ADC_TYPE_VINLPM
    21: 		for (i = 0; i < BAT_ARRAY_LEN; i++)
@@ -10579,7 +10660,7 @@
    38: #endif	
    39: #endif
    40: }
-003653 22                RET     
+0036AE 22                RET     
 ----- FUNCTION YC_adc_init (END) -------
 
 
@@ -10589,13 +10670,13 @@
    84: {
    85: 	m_reset_reg = 1;
    86: 	while(1);
-003654 908010            MOV     DPTR,#m_reset_reg
-003657 7401              MOV     A,#01H
-003659 F0                MOVX    @DPTR,A
-00365A         ?C0006?SYS:
+0036AF 908010            MOV     DPTR,#m_reset_reg
+0036B2 7401              MOV     A,#01H
+0036B4 F0                MOVX    @DPTR,A
+0036B5         ?C0006?SYS:
    87: }
-00365A 80FE              SJMP    ?C0006?SYS
-00365C 22                RET     
+0036B5 80FE              SJMP    ?C0006?SYS
+0036B7 22                RET     
 ----- FUNCTION System_Hardware_reset (END) -------
 
 
@@ -10605,393 +10686,29 @@
   113: {
   114: 	System_Hardware_reset();
   115: }
-00365D 80F5              SJMP    System_Hardware_reset
+0036B8 80F5              SJMP    System_Hardware_reset
 ----- FUNCTION System_Reset_Connect (END) -------
 
 
------ FUNCTION kb_cb_Timer100ms (BEGIN) -----
- FILE: 'sys.c'
-  776: static void kb_cb_Timer100ms()
-  777: {
-  778: 
-  779: 
-  780: 	if (g_variable.delay_enter_lpm_timer) 
-00365F 904CEB            MOV     DPTR,#g_variable+02CH
-003662 E0                MOVX    A,@DPTR
-003663 6002              JZ      ?C0130?SYS
-  781: 	{
-  782: 		g_variable.delay_enter_lpm_timer --;
-003665 14                DEC     A
-003666 F0                MOVX    @DPTR,A
-  783: 	}
-003667         ?C0130?SYS:
-  784: 
-  785: 	if(g_variable.recon_delay)
-003667 904CF1            MOV     DPTR,#g_variable+032H
-00366A E0                MOVX    A,@DPTR
-00366B 6002              JZ      ?C0131?SYS
-  786: 		g_variable.recon_delay--;
-00366D 14                DEC     A
-00366E F0                MOVX    @DPTR,A
-00366F         ?C0131?SYS:
-  787: 
-  788: 	if(g_variable.one_key_press_wait_release_timer)
-00366F 904CFA            MOV     DPTR,#g_variable+03BH
-003672 E0                MOVX    A,@DPTR
-003673 600B              JZ      ?C0132?SYS
-  789: 	{
-  790: 		g_variable.one_key_press_wait_release_timer--;
-003675 14                DEC     A
-003676 F0                MOVX    @DPTR,A
-  791: 		if(!g_variable.one_key_press_wait_release_timer)
-003677 E0                MOVX    A,@DPTR
-003678 7006              JNZ     ?C0132?SYS
-  792: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
-00367A 904CF6            MOV     DPTR,#g_variable+037H
-00367D 7406              MOV     A,#06H
-00367F F0                MOVX    @DPTR,A
-  793: 	}
-003680         ?C0132?SYS:
-  794: 	
-  795: 	if (g_variable.powerOn_timer != 0)
-003680 904CE5            MOV     DPTR,#g_variable+026H
-003683 E0                MOVX    A,@DPTR
-003684 6035              JZ      ?C0134?SYS
-  796: 	{	
-  797: 		if(g_variable.pairing_g24_timeout ||g_variable.pairing_timeout)
-003686 904CEF            MOV     DPTR,#g_variable+030H
-003689 E0                MOVX    A,@DPTR
-00368A 7002              JNZ     ?C0188?SYS
-00368C A3                INC     DPTR
-00368D E0                MOVX    A,@DPTR
-00368E         ?C0188?SYS:
-00368E 700A              JNZ     ?C0136?SYS
-003690 904CE9            MOV     DPTR,#g_variable+02AH
-003693 E0                MOVX    A,@DPTR
-003694 7002              JNZ     ?C0189?SYS
-003696 A3                INC     DPTR
-003697 E0                MOVX    A,@DPTR
-003698         ?C0189?SYS:
-003698 6006              JZ      ?C0135?SYS
-00369A         ?C0136?SYS:
-  798: 		{
-  799: 			g_variable.powerOn_timer = 0;
-00369A E4                CLR     A
-00369B 904CE5            MOV     DPTR,#g_variable+026H
-00369E F0                MOVX    @DPTR,A
-00369F 22                RET     
-  800: 			return;
-  801: 		}
-0036A0         ?C0135?SYS:
-  802: 			
-  803: 		g_variable.powerOn_timer--;
-0036A0 904CE5            MOV     DPTR,#g_variable+026H
-0036A3 E0                MOVX    A,@DPTR
-0036A4 14                DEC     A
-0036A5 F0                MOVX    @DPTR,A
-  804: 		if(g_variable.powerOn_timer)
-0036A6 E0                MOVX    A,@DPTR
-0036A7 6009              JZ      ?C0138?SYS
-  805: 		{
-  806: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_ON);
-0036A9 D201              SETB    ?_GPIO_Setout?BIT
-0036AB 7F1F              MOV     R7,#01FH
-0036AD 120FDF            LCALL   _GPIO_Setout
-  807: 		}
-0036B0 8052              SJMP    ?C0140?SYS
-0036B2         ?C0138?SYS:
-  808: 		else
-  809: 		{
-  810: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_OFF);
-0036B2 C201              CLR     ?_GPIO_Setout?BIT
-0036B4 7F1F              MOV     R7,#01FH
-0036B6 120FDF            LCALL   _GPIO_Setout
-  811: 		}
-  812: 
-  813: 	}
-0036B9 8049              SJMP    ?C0140?SYS
-0036BB         ?C0134?SYS:
-  814: 	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
-0036BB 904CE9            MOV     DPTR,#g_variable+02AH
-0036BE E0                MOVX    A,@DPTR
-0036BF 7002              JNZ     ?C0190?SYS
-0036C1 A3                INC     DPTR
-0036C2 E0                MOVX    A,@DPTR
-0036C3         ?C0190?SYS:
-0036C3 703F              JNZ     ?C0140?SYS
-0036C5 904CEF            MOV     DPTR,#g_variable+030H
-0036C8 E0                MOVX    A,@DPTR
-0036C9 7002              JNZ     ?C0191?SYS
-0036CB A3                INC     DPTR
-0036CC E0                MOVX    A,@DPTR
-0036CD         ?C0191?SYS:
-0036CD 7035              JNZ     ?C0140?SYS
-  815: 	{
-  816: 		if(g_variable.battery_low_led_flash_interval)
-0036CF 904CE2            MOV     DPTR,#g_variable+023H
-0036D2 E0                MOVX    A,@DPTR
-0036D3 602F              JZ      ?C0140?SYS
-  817: 		{
-  818: 			g_variable.battery_low_led_flash_interval--;
-0036D5 14                DEC     A
-0036D6 F0                MOVX    @DPTR,A
-  819: 			if(g_variable.battery_low_led_flash_interval < 8)
-0036D7 E0                MOVX    A,@DPTR
-0036D8 FF                MOV     R7,A
-0036D9 C3                CLR     C
-0036DA 9408              SUBB    A,#08H
-0036DC 5016              JNC     ?C0143?SYS
-  820: 			{
-  821: 				if(g_variable.battery_low_led_flash_interval & 0x02)
-0036DE EF                MOV     A,R7
-0036DF 30E109            JNB     ACC.1,?C0144?SYS
-  822: 				{
-  823: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
-0036E2 D201              SETB    ?_GPIO_Setout?BIT
-0036E4 7F1F              MOV     R7,#01FH
-0036E6 120FDF            LCALL   _GPIO_Setout
-  824: 				}
-0036E9 8010              SJMP    ?C0146?SYS
-0036EB         ?C0144?SYS:
-  825: 				else
-  826: 				{
-  827: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
-0036EB C201              CLR     ?_GPIO_Setout?BIT
-0036ED 7F1F              MOV     R7,#01FH
-0036EF 120FDF            LCALL   _GPIO_Setout
-  828: 				}	
-  829: 			}
-0036F2 8007              SJMP    ?C0146?SYS
-0036F4         ?C0143?SYS:
-  830: 			else
-  831: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
-0036F4 C201              CLR     ?_GPIO_Setout?BIT
-0036F6 7F1F              MOV     R7,#01FH
-0036F8 120FDF            LCALL   _GPIO_Setout
-0036FB         ?C0146?SYS:
-  832: 			if(!g_variable.battery_low_led_flash_interval)
-0036FB 904CE2            MOV     DPTR,#g_variable+023H
-0036FE E0                MOVX    A,@DPTR
-0036FF 7003              JNZ     ?C0140?SYS
-  833: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-003701 7418              MOV     A,#018H
-003703 F0                MOVX    @DPTR,A
-  834: 		}
-  835: 	}		
-003704         ?C0140?SYS:
-  836: // The dongle must receive data within 200ms, otherwise it will be forced to lift
-  837: 	if(!long_press_flag)
-003704 904DDC            MOV     DPTR,#long_press_flag
-003707 E0                MOVX    A,@DPTR
-003708 7036              JNZ     ?C0148?SYS
-  838: 	{
-  839: 		if (repeat_send_24g == 1)
-00370A 904DDD            MOV     DPTR,#repeat_send_24g
-00370D E0                MOVX    A,@DPTR
-00370E 6401              XRL     A,#01H
-003710 702E              JNZ     ?C0148?SYS
-  840: 		{
-  841: 			g_variable.sleepTimer = 0;	
-003712 904CE3            MOV     DPTR,#g_variable+024H
-003715 F0                MOVX    @DPTR,A
-003716 A3                INC     DPTR
-003717 F0                MOVX    @DPTR,A
-  842: 			repeat_send_24g = 0;
-003718 904DDD            MOV     DPTR,#repeat_send_24g
-00371B F0                MOVX    @DPTR,A
-  843: 
-  844: 			 if (multikey[0] != 0)
-00371C 904E4C            MOV     DPTR,#multikey
-00371F E0                MOVX    A,@DPTR
-003720 600D              JZ      ?C0150?SYS
-  845: 			{
-  846: 				IPC_TxHidData(multikey, 3);
-003722 7B01              MOV     R3,#01H
-003724 7A4E              MOV     R2,#HIGH multikey
-003726 794C              MOV     R1,#LOW multikey
-003728 7D03              MOV     R5,#03H
-00372A 121533            LCALL   _IPC_TxHidData
-  847: 			}
-00372D 8011              SJMP    ?C0148?SYS
-00372F         ?C0150?SYS:
-  848: 			else if (hidBuff[0] != 0)
-00372F 904800            MOV     DPTR,#hidBuff
-003732 E0                MOVX    A,@DPTR
-003733 600B              JZ      ?C0148?SYS
-  849: 			{
-  850: 
-  851: 				IPC_TxHidData(hidBuff,9);
-003735 7B01              MOV     R3,#01H
-003737 7A48              MOV     R2,#HIGH hidBuff
-003739 7900              MOV     R1,#LOW hidBuff
-00373B 7D09              MOV     R5,#09H
-00373D 121533            LCALL   _IPC_TxHidData
-  852: 			}
-  853: 		}
-  854: 	}
-003740         ?C0148?SYS:
-  855: 
-  856: 	if(g_variable.sys_mode_led_on_timer && !g_variable.pairing_timeout && !g_variable.pairing_g24_timeout)
-003740 904CE8            MOV     DPTR,#g_variable+029H
-003743 E0                MOVX    A,@DPTR
-003744 602C              JZ      ?C0153?SYS
-003746 A3                INC     DPTR
-003747 E0                MOVX    A,@DPTR
-003748 7002              JNZ     ?C0192?SYS
-00374A A3                INC     DPTR
-00374B E0                MOVX    A,@DPTR
-00374C         ?C0192?SYS:
-00374C 7024              JNZ     ?C0153?SYS
-00374E 904CEF            MOV     DPTR,#g_variable+030H
-003751 E0                MOVX    A,@DPTR
-003752 7002              JNZ     ?C0193?SYS
-003754 A3                INC     DPTR
-003755 E0                MOVX    A,@DPTR
-003756         ?C0193?SYS:
-003756 701A              JNZ     ?C0153?SYS
-  857: 	{
-  858: 		g_variable.sys_mode_led_on_timer--;
-003758 904CE8            MOV     DPTR,#g_variable+029H
-00375B E0                MOVX    A,@DPTR
-00375C 14                DEC     A
-00375D F0                MOVX    @DPTR,A
-  859: 		GPIO_Setout(MODE_LED_GPIO,LED_ON);
-00375E D201              SETB    ?_GPIO_Setout?BIT
-003760 7F1D              MOV     R7,#01DH
-003762 120FDF            LCALL   _GPIO_Setout
-  860: 		if (!g_variable.sys_mode_led_on_timer)
-003765 904CE8            MOV     DPTR,#g_variable+029H
-003768 E0                MOVX    A,@DPTR
-003769 7007              JNZ     ?C0153?SYS
-  861: 		{
-  862: 		GPIO_Setout(MODE_LED_GPIO,LED_OFF);
-00376B C201              CLR     ?_GPIO_Setout?BIT
-00376D 7F1D              MOV     R7,#01DH
-00376F 120FDF            LCALL   _GPIO_Setout
-  863: 		}
-  864: 	}
-003772         ?C0153?SYS:
-  865: 
-  866: //role switch time out
-  867: 	if (switch_role_timer != 0)
-003772 904DD9            MOV     DPTR,#switch_role_timer
-003775 E0                MOVX    A,@DPTR
-003776 6008              JZ      ?C0155?SYS
-  868: 	{
-  869: 		switch_role_timer--; 
-003778 E0                MOVX    A,@DPTR
-003779 14                DEC     A
-00377A F0                MOVX    @DPTR,A
-  870: 		if (switch_role_timer == 0)
-00377B E0                MOVX    A,@DPTR
-00377C 7002              JNZ     ?C0155?SYS
-  871: 		{
-  872: 			System_Reset_Connect();
-00377E D15D              ACALL   System_Reset_Connect
-  873: 		}
-  874: 	}
-003780         ?C0155?SYS:
-  875: 
-  876: // ble delay send secutiry request
-  877: 	if(ble_send_secutiry_request_timer)
-003780 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
-003783 E0                MOVX    A,@DPTR
-003784 6011              JZ      ?C0157?SYS
-  878: 	{
-  879: 		ble_send_secutiry_request_timer--;
-003786 E0                MOVX    A,@DPTR
-003787 14                DEC     A
-003788 F0                MOVX    @DPTR,A
-  880: 		if(!ble_send_secutiry_request_timer)
-003789 E0                MOVX    A,@DPTR
-00378A 700B              JNZ     ?C0157?SYS
-  881: 		{
-  882: 			if(!m_le_send_security_request_flag)
-00378C 904D3D            MOV     DPTR,#m_le_send_security_request_flag
-00378F E0                MOVX    A,@DPTR
-003790 7005              JNZ     ?C0157?SYS
-  883: 			{
-  884: 				IPC_TxControlCmd(IPC_CMD_LE_SMP_SECURITY_REQUEST);
-003792 7F1B              MOV     R7,#01BH
-003794 12085F            LCALL   _IPC_TxControlCmd
-  885: 			}
-  886: 		}
-  887: 	}
-003797         ?C0157?SYS:
-  888: 
-  889: 	if (delayChgInvTimer != 0)
-003797 904DE6            MOV     DPTR,#delayChgInvTimer
-00379A E0                MOVX    A,@DPTR
-00379B 6029              JZ      ?C0137?SYS
-  890: 	{
-  891: 		delayChgInvTimer--;
-00379D E0                MOVX    A,@DPTR
-00379E 14                DEC     A
-00379F F0                MOVX    @DPTR,A
-  892: 		if (delayChgInvTimer == 0)
-0037A0 E0                MOVX    A,@DPTR
-0037A1 7023              JNZ     ?C0137?SYS
-  893: 		{
-  894: 			if( m_24g_led_flag)
-0037A3 904D46            MOV     DPTR,#m_24g_led_flag
-0037A6 E0                MOVX    A,@DPTR
-0037A7 6002              JZ      ?C0162?SYS
-  895: 			{
-  896: 				m_24g_led_flag = 0;
-0037A9 E4                CLR     A
-0037AA F0                MOVX    @DPTR,A
-  897: 			}	
-0037AB         ?C0162?SYS:
-  898: 	
-  899: 			if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
-0037AB 904CC7            MOV     DPTR,#g_variable+08H
-0037AE E0                MOVX    A,@DPTR
-0037AF B40407            CJNE    A,#04H,?C0163?SYS
-  900: 			{
-  901: 				kscurrmult = 0x0c;
-0037B2 904213            MOV     DPTR,#kscurrmult
-0037B5 740C              MOV     A,#0CH
-0037B7 F0                MOVX    @DPTR,A
-  902: 			}
-0037B8 22                RET     
-0037B9         ?C0163?SYS:
-  903: 			else if (g_variable.br_currentState == CHANGE_TO_BR_CONNECTED)
-0037B9 904CC9            MOV     DPTR,#g_variable+0AH
-0037BC E0                MOVX    A,@DPTR
-0037BD B40406            CJNE    A,#04H,?C0137?SYS
-  904: 			{
-  905: 				kscurrmult = 0x3a;
-0037C0 904213            MOV     DPTR,#kscurrmult
-0037C3 743A              MOV     A,#03AH
-0037C5 F0                MOVX    @DPTR,A
-  906: 			}
-  907: 		}
-  908: 	}
-  909: }
-0037C6         ?C0137?SYS:
-0037C6 22                RET     
------ FUNCTION kb_cb_Timer100ms (END) -------
-
-
 ----- FUNCTION _kb_cb_Hid (BEGIN) -----
  FILE: 'sys.c'
   122: static void kb_cb_Hid(byte *p,byte len) {
   123: 	//p[0] is hid type,always is 1(kb) now
-0037C7 904F04            MOV     DPTR,#len
-0037CA ED                MOV     A,R5
-0037CB F0                MOVX    @DPTR,A
+0036BA 904F04            MOV     DPTR,#len
+0036BD ED                MOV     A,R5
+0036BE F0                MOVX    @DPTR,A
 ;---- Variable 'p' assigned to Register 'R1/R2/R3' ----
   124: 	byte temp = p[1];
-0037CC 900001            MOV     DPTR,#01H
-0037CF 1203CF            LCALL   ?C?CLDOPTR
-0037D2 904F05            MOV     DPTR,#temp
-0037D5 F0                MOVX    @DPTR,A
+0036BF 900001            MOV     DPTR,#01H
+0036C2 1203CF            LCALL   ?C?CLDOPTR
+0036C5 904F05            MOV     DPTR,#temp
+0036C8 F0                MOVX    @DPTR,A
   125: 
   126: 	if (len<2) {
   127: 		return;
   128: 	}
   129: }
-0037D6 22                RET     
+0036C9 22                RET     
 ----- FUNCTION _kb_cb_Hid (END) -------
 
 
@@ -11001,216 +10718,216 @@
   475: {
   476: 
   477: 	if(le_send_battery_level_delay_count)
-0037D7 904DDB            MOV     DPTR,#le_send_battery_level_delay_count
-0037DA E0                MOVX    A,@DPTR
-0037DB 600F              JZ      ?C0071?SYS
+0036CA 904DDB            MOV     DPTR,#le_send_battery_level_delay_count
+0036CD E0                MOVX    A,@DPTR
+0036CE 600F              JZ      ?C0071?SYS
   478: 	{
   479: 		le_send_battery_level_delay_count--;
-0037DD E0                MOVX    A,@DPTR
-0037DE 14                DEC     A
-0037DF F0                MOVX    @DPTR,A
+0036D0 E0                MOVX    A,@DPTR
+0036D1 14                DEC     A
+0036D2 F0                MOVX    @DPTR,A
   480: 		if(!le_send_battery_level_delay_count)
-0037E0 E0                MOVX    A,@DPTR
-0037E1 7009              JNZ     ?C0071?SYS
+0036D3 E0                MOVX    A,@DPTR
+0036D4 7009              JNZ     ?C0071?SYS
   481: 		{	
   482: 			m_lpm_mode = 1;
-0037E3 904131            MOV     DPTR,#m_lpm_mode
-0037E6 04                INC     A
-0037E7 F0                MOVX    @DPTR,A
+0036D6 904131            MOV     DPTR,#m_lpm_mode
+0036D9 04                INC     A
+0036DA F0                MOVX    @DPTR,A
   483: 			le_send_battery_level_flag = 1;
-0037E8 904DDA            MOV     DPTR,#le_send_battery_level_flag
-0037EB F0                MOVX    @DPTR,A
+0036DB 904DDA            MOV     DPTR,#le_send_battery_level_flag
+0036DE F0                MOVX    @DPTR,A
   484: 		}
   485: 	}
-0037EC         ?C0071?SYS:
+0036DF         ?C0071?SYS:
   486: 	
   487: //system long sleep timer
   488: 	if (g_variable.br_currentState == CHANGE_TO_BR_CONNECTED ||
-0037EC 904CC9            MOV     DPTR,#g_variable+0AH
-0037EF E0                MOVX    A,@DPTR
-0037F0 6404              XRL     A,#04H
-0037F2 6008              JZ      ?C0074?SYS
-0037F4 904CC7            MOV     DPTR,#g_variable+08H
-0037F7 E0                MOVX    A,@DPTR
-0037F8 6404              XRL     A,#04H
-0037FA 7056              JNZ     ?C0073?SYS
-0037FC         ?C0074?SYS:
+0036DF 904CC9            MOV     DPTR,#g_variable+0AH
+0036E2 E0                MOVX    A,@DPTR
+0036E3 6404              XRL     A,#04H
+0036E5 6008              JZ      ?C0074?SYS
+0036E7 904CC7            MOV     DPTR,#g_variable+08H
+0036EA E0                MOVX    A,@DPTR
+0036EB 6404              XRL     A,#04H
+0036ED 7056              JNZ     ?C0073?SYS
+0036EF         ?C0074?SYS:
   489: 		g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
   490: 	{
   491: 		if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
-0037FC 904CC7            MOV     DPTR,#g_variable+08H
-0037FF E0                MOVX    A,@DPTR
-003800 6404              XRL     A,#04H
-003802 7034              JNZ     ?C0075?SYS
+0036EF 904CC7            MOV     DPTR,#g_variable+08H
+0036F2 E0                MOVX    A,@DPTR
+0036F3 6404              XRL     A,#04H
+0036F5 7034              JNZ     ?C0075?SYS
   492: 		{
   493: 			if(le_send_battery_level_flag || (g_variable.sleepTimer && !(g_variable.sleepTimer & 0x1f)))		// ble battery l
 >> evel updata each 16 second
-003804 904DDA            MOV     DPTR,#le_send_battery_level_flag
-003807 E0                MOVX    A,@DPTR
-003808 7010              JNZ     ?C0077?SYS
-00380A 904CE3            MOV     DPTR,#g_variable+024H
-00380D E0                MOVX    A,@DPTR
-00380E FE                MOV     R6,A
-00380F A3                INC     DPTR
-003810 E0                MOVX    A,@DPTR
-003811 FF                MOV     R7,A
-003812 4E                ORL     A,R6
-003813 6023              JZ      ?C0075?SYS
-003815 EF                MOV     A,R7
-003816 541F              ANL     A,#01FH
-003818 701E              JNZ     ?C0075?SYS
-00381A         ?C0077?SYS:
+0036F7 904DDA            MOV     DPTR,#le_send_battery_level_flag
+0036FA E0                MOVX    A,@DPTR
+0036FB 7010              JNZ     ?C0077?SYS
+0036FD 904CE3            MOV     DPTR,#g_variable+024H
+003700 E0                MOVX    A,@DPTR
+003701 FE                MOV     R6,A
+003702 A3                INC     DPTR
+003703 E0                MOVX    A,@DPTR
+003704 FF                MOV     R7,A
+003705 4E                ORL     A,R6
+003706 6023              JZ      ?C0075?SYS
+003708 EF                MOV     A,R7
+003709 541F              ANL     A,#01FH
+00370B 701E              JNZ     ?C0075?SYS
+00370D         ?C0077?SYS:
   494: 			{
   495: 				le_send_battery_level_flag = 0;
-00381A E4                CLR     A
-00381B 904DDA            MOV     DPTR,#le_send_battery_level_flag
-00381E F0                MOVX    @DPTR,A
+00370D E4                CLR     A
+00370E 904DDA            MOV     DPTR,#le_send_battery_level_flag
+003711 F0                MOVX    @DPTR,A
   496: 				multikey[0] = HID_REPORTID_BATTERY;	
-00381F 904E4C            MOV     DPTR,#multikey
-003822 7404              MOV     A,#04H
-003824 F0                MOVX    @DPTR,A
+003712 904E4C            MOV     DPTR,#multikey
+003715 7404              MOV     A,#04H
+003717 F0                MOVX    @DPTR,A
   497: 				multikey[1] = g_variable.battery_level_percentage;	
-003825 904CFB            MOV     DPTR,#g_variable+03CH
-003828 E0                MOVX    A,@DPTR
-003829 904E4D            MOV     DPTR,#multikey+01H
-00382C F0                MOVX    @DPTR,A
+003718 904CFB            MOV     DPTR,#g_variable+03CH
+00371B E0                MOVX    A,@DPTR
+00371C 904E4D            MOV     DPTR,#multikey+01H
+00371F F0                MOVX    @DPTR,A
   498: 				IPC_TxHidData(multikey, 2);
-00382D 7B01              MOV     R3,#01H
-00382F 7A4E              MOV     R2,#HIGH multikey
-003831 794C              MOV     R1,#LOW multikey
-003833 7D02              MOV     R5,#02H
-003835 121533            LCALL   _IPC_TxHidData
+003720 7B01              MOV     R3,#01H
+003722 7A4E              MOV     R2,#HIGH multikey
+003724 794C              MOV     R1,#LOW multikey
+003726 7D02              MOV     R5,#02H
+003728 121533            LCALL   _IPC_TxHidData
   499: 			}
   500: 		}
-003838         ?C0075?SYS:
+00372B         ?C0075?SYS:
   501: 		if (g_variable.sleepTimer == STANDBY_TIMER_10MIN) 
-003838 904CE3            MOV     DPTR,#g_variable+024H
-00383B E0                MOVX    A,@DPTR
-00383C 6404              XRL     A,#04H
-00383E 7004              JNZ     ?C0181?SYS
-003840 A3                INC     DPTR
-003841 E0                MOVX    A,@DPTR
-003842 64B0              XRL     A,#0B0H
-003844         ?C0181?SYS:
-003844 6002              JZ      $ + 4H
-003846 01CE              AJMP    ?C0089?SYS
+00372B 904CE3            MOV     DPTR,#g_variable+024H
+00372E E0                MOVX    A,@DPTR
+00372F 6404              XRL     A,#04H
+003731 7004              JNZ     ?C0181?SYS
+003733 A3                INC     DPTR
+003734 E0                MOVX    A,@DPTR
+003735 64B0              XRL     A,#0B0H
+003737         ?C0181?SYS:
+003737 6002              JZ      $ + 4H
+003739 E1C1              AJMP    ?C0089?SYS
   502: 		{
   503: 			YC_disconnect_all_link();
-003848 120F59            LCALL   YC_disconnect_all_link
+00373B 120F59            LCALL   YC_disconnect_all_link
   504: 			g_variable.lockLpm = 1;
-00384B 904CED            MOV     DPTR,#g_variable+02EH
-00384E 7401              MOV     A,#01H
-003850 F0                MOVX    @DPTR,A
+00373E 904CED            MOV     DPTR,#g_variable+02EH
+003741 7401              MOV     A,#01H
+003743 F0                MOVX    @DPTR,A
   505: 		}
   506: 	}
-003851 22                RET     
-003852         ?C0073?SYS:
+003744 22                RET     
+003745         ?C0073?SYS:
   507: 	else if(g_variable.g24_currentState == CHANGE_TO_24G_CONNECTED)
-003852 904CC5            MOV     DPTR,#g_variable+06H
-003855 E0                MOVX    A,@DPTR
-003856 6403              XRL     A,#03H
-003858 703C              JNZ     ?C0080?SYS
+003745 904CC5            MOV     DPTR,#g_variable+06H
+003748 E0                MOVX    A,@DPTR
+003749 6403              XRL     A,#03H
+00374B 703C              JNZ     ?C0080?SYS
   508: 	{
   509: #ifdef PC_SLEEP_STATUS_GET	
   510: 		if((g_variable.sleepTimer & 0x1f) == 0x10)	// search dongle each 8s
-00385A 904CE4            MOV     DPTR,#g_variable+025H
-00385D E0                MOVX    A,@DPTR
-00385E 541F              ANL     A,#01FH
-003860 6410              XRL     A,#010H
-003862 7020              JNZ     ?C0081?SYS
+00374D 904CE4            MOV     DPTR,#g_variable+025H
+003750 E0                MOVX    A,@DPTR
+003751 541F              ANL     A,#01FH
+003753 6410              XRL     A,#010H
+003755 7020              JNZ     ?C0081?SYS
   511: 		{
   512: 			xmemclear(hidBuff,9);
-003864 7B01              MOV     R3,#01H
-003866 7A48              MOV     R2,#HIGH hidBuff
-003868 7900              MOV     R1,#LOW hidBuff
-00386A 7D09              MOV     R5,#09H
-00386C FC                MOV     R4,A
-00386D 121635            LCALL   _xmemclear
+003757 7B01              MOV     R3,#01H
+003759 7A48              MOV     R2,#HIGH hidBuff
+00375B 7900              MOV     R1,#LOW hidBuff
+00375D 7D09              MOV     R5,#09H
+00375F FC                MOV     R4,A
+003760 121635            LCALL   _xmemclear
   513: 
   514: 			mult_key_status = 0;
-003870 E4                CLR     A
-003871 904E4B            MOV     DPTR,#mult_key_status
-003874 F0                MOVX    @DPTR,A
+003763 E4                CLR     A
+003764 904E4B            MOV     DPTR,#mult_key_status
+003767 F0                MOVX    @DPTR,A
   515: 			hidBuff[0] = HID_REPORTID_1;		// standard key send
-003875 904800            MOV     DPTR,#hidBuff
-003878 04                INC     A
-003879 F0                MOVX    @DPTR,A
+003768 904800            MOV     DPTR,#hidBuff
+00376B 04                INC     A
+00376C F0                MOVX    @DPTR,A
   516: 			IPC_TxHidData(hidBuff, 9);
-00387A FB                MOV     R3,A
-00387B 7A48              MOV     R2,#HIGH hidBuff
-00387D 7900              MOV     R1,#LOW hidBuff
-00387F 7D09              MOV     R5,#09H
-003881 121533            LCALL   _IPC_TxHidData
+00376D FB                MOV     R3,A
+00376E 7A48              MOV     R2,#HIGH hidBuff
+003770 7900              MOV     R1,#LOW hidBuff
+003772 7D09              MOV     R5,#09H
+003774 121533            LCALL   _IPC_TxHidData
   517: 		}
-003884         ?C0081?SYS:
+003777         ?C0081?SYS:
   518: #endif	
   519: 		if (g_variable.sleepTimer >= STANDBY_TIMER_10MIN)
-003884 C3                CLR     C
-003885 904CE4            MOV     DPTR,#g_variable+025H
-003888 E0                MOVX    A,@DPTR
-003889 94B0              SUBB    A,#0B0H
-00388B 904CE3            MOV     DPTR,#g_variable+024H
-00388E E0                MOVX    A,@DPTR
-00388F 9404              SUBB    A,#04H
-003891 403B              JC      ?C0089?SYS
+003777 C3                CLR     C
+003778 904CE4            MOV     DPTR,#g_variable+025H
+00377B E0                MOVX    A,@DPTR
+00377C 94B0              SUBB    A,#0B0H
+00377E 904CE3            MOV     DPTR,#g_variable+024H
+003781 E0                MOVX    A,@DPTR
+003782 9404              SUBB    A,#04H
+003784 403B              JC      ?C0089?SYS
   520: 		{
   521: 			System_G24_long_lpm();
-003893 021EF3            LJMP    System_G24_long_lpm
+003786 021EF3            LJMP    System_G24_long_lpm
   522: 		}
   523: 	}
-003896         ?C0080?SYS:
+003789         ?C0080?SYS:
   524: 	else if(g_variable.g24_currentState == CHANGE_TO_24G_PAIRING)
-003896 904CC5            MOV     DPTR,#g_variable+06H
-003899 E0                MOVX    A,@DPTR
-00389A B40112            CJNE    A,#01H,?C0084?SYS
+003789 904CC5            MOV     DPTR,#g_variable+06H
+00378C E0                MOVX    A,@DPTR
+00378D B40112            CJNE    A,#01H,?C0084?SYS
   525: 	{
   526: 		if (g_variable.sleepTimer >= BT_PAIRING_TIME_OUT_1MIN)
-00389D C3                CLR     C
-00389E 904CE4            MOV     DPTR,#g_variable+025H
-0038A1 E0                MOVX    A,@DPTR
-0038A2 9458              SUBB    A,#058H
-0038A4 904CE3            MOV     DPTR,#g_variable+024H
-0038A7 E0                MOVX    A,@DPTR
-0038A8 9402              SUBB    A,#02H
-0038AA 4022              JC      ?C0089?SYS
+003790 C3                CLR     C
+003791 904CE4            MOV     DPTR,#g_variable+025H
+003794 E0                MOVX    A,@DPTR
+003795 9458              SUBB    A,#058H
+003797 904CE3            MOV     DPTR,#g_variable+024H
+00379A E0                MOVX    A,@DPTR
+00379B 9402              SUBB    A,#02H
+00379D 4022              JC      ?C0089?SYS
   527: 		{
   528: 			System_G24_long_lpm();
-0038AC 021EF3            LJMP    System_G24_long_lpm
+00379F 021EF3            LJMP    System_G24_long_lpm
   529: 		}
   530: 	}
-0038AF         ?C0084?SYS:
+0037A2         ?C0084?SYS:
   531: 	else
   532: 	{
   533: 		if (g_variable.sleepTimer >= RECONNECT_TIMER_10S)
-0038AF C3                CLR     C
-0038B0 904CE4            MOV     DPTR,#g_variable+025H
-0038B3 E0                MOVX    A,@DPTR
-0038B4 9414              SUBB    A,#014H
-0038B6 904CE3            MOV     DPTR,#g_variable+024H
-0038B9 E0                MOVX    A,@DPTR
-0038BA 9400              SUBB    A,#00H
-0038BC 4010              JC      ?C0089?SYS
+0037A2 C3                CLR     C
+0037A3 904CE4            MOV     DPTR,#g_variable+025H
+0037A6 E0                MOVX    A,@DPTR
+0037A7 9414              SUBB    A,#014H
+0037A9 904CE3            MOV     DPTR,#g_variable+024H
+0037AC E0                MOVX    A,@DPTR
+0037AD 9400              SUBB    A,#00H
+0037AF 4010              JC      ?C0089?SYS
   534: 		{
   535: 			if(ble_reconnect_flag)
-0038BE 904DE5            MOV     DPTR,#ble_reconnect_flag
-0038C1 E0                MOVX    A,@DPTR
-0038C2 6007              JZ      ?C0088?SYS
+0037B1 904DE5            MOV     DPTR,#ble_reconnect_flag
+0037B4 E0                MOVX    A,@DPTR
+0037B5 6007              JZ      ?C0088?SYS
   536: 			{
   537: 				ble_reconnect_flag = 0;
-0038C4 E4                CLR     A
-0038C5 F0                MOVX    @DPTR,A
+0037B7 E4                CLR     A
+0037B8 F0                MOVX    @DPTR,A
   538: 				IPC_TxControlCmd(IPC_CMD_STOP_ADV);
-0038C6 7F0E              MOV     R7,#0EH
-0038C8 12085F            LCALL   _IPC_TxControlCmd
+0037B9 7F0E              MOV     R7,#0EH
+0037BB 12085F            LCALL   _IPC_TxControlCmd
   539: 			}
-0038CB         ?C0088?SYS:
+0037BE         ?C0088?SYS:
   540: 			System_long_sleep();
-0038CB 120F38            LCALL   System_long_sleep
+0037BE 120F38            LCALL   System_long_sleep
   541: 		}
   542: 	}
   543: }
-0038CE         ?C0089?SYS:
-0038CE 22                RET     
+0037C1         ?C0089?SYS:
+0037C1 22                RET     
 ----- FUNCTION YC_connect_timeout_500ms (END) -------
 
 
@@ -11235,299 +10952,663 @@
   651: */		
   652: 	
   653: 	if (g_variable.button_flag & KEY_FLAG_SAME_KEY_PRESS)
-0038CF 904CCE            MOV     DPTR,#g_variable+0FH
-0038D2 E0                MOVX    A,@DPTR
-0038D3 30E13E            JNB     ACC.1,?C0106?SYS
+0037C2 904CCE            MOV     DPTR,#g_variable+0FH
+0037C5 E0                MOVX    A,@DPTR
+0037C6 30E13E            JNB     ACC.1,?C0106?SYS
   654: 	{
   655: 		if (g_variable.button_timer[1] < 250)
-0038D6 904CD0            MOV     DPTR,#g_variable+011H
-0038D9 E0                MOVX    A,@DPTR
-0038DA C3                CLR     C
-0038DB 94FA              SUBB    A,#0FAH
-0038DD 5003              JNC     ?C0107?SYS
+0037C9 904CD0            MOV     DPTR,#g_variable+011H
+0037CC E0                MOVX    A,@DPTR
+0037CD C3                CLR     C
+0037CE 94FA              SUBB    A,#0FAH
+0037D0 5003              JNC     ?C0107?SYS
   656: 			g_variable.button_timer[1]++;
-0038DF E0                MOVX    A,@DPTR
-0038E0 04                INC     A
-0038E1 F0                MOVX    @DPTR,A
-0038E2         ?C0107?SYS:
+0037D2 E0                MOVX    A,@DPTR
+0037D3 04                INC     A
+0037D4 F0                MOVX    @DPTR,A
+0037D5         ?C0107?SYS:
   657: 		if (g_variable.button_timer[1] == 180)			// 500ms*180*3 = 4min30s
-0038E2 904CD0            MOV     DPTR,#g_variable+011H
-0038E5 E0                MOVX    A,@DPTR
-0038E6 64B4              XRL     A,#0B4H
-0038E8 7037              JNZ     ?C0112?SYS
+0037D5 904CD0            MOV     DPTR,#g_variable+011H
+0037D8 E0                MOVX    A,@DPTR
+0037D9 64B4              XRL     A,#0B4H
+0037DB 7037              JNZ     ?C0112?SYS
   658: 		{
   659: 			press_long_time_flag++;
-0038EA 904DE3            MOV     DPTR,#press_long_time_flag
-0038ED E0                MOVX    A,@DPTR
-0038EE 04                INC     A
-0038EF F0                MOVX    @DPTR,A
+0037DD 904DE3            MOV     DPTR,#press_long_time_flag
+0037E0 E0                MOVX    A,@DPTR
+0037E1 04                INC     A
+0037E2 F0                MOVX    @DPTR,A
   660: 			if(press_long_time_flag <= 2)
-0038F0 E0                MOVX    A,@DPTR
-0038F1 D3                SETB    C
-0038F2 9402              SUBB    A,#02H
-0038F4 5007              JNC     ?C0109?SYS
+0037E3 E0                MOVX    A,@DPTR
+0037E4 D3                SETB    C
+0037E5 9402              SUBB    A,#02H
+0037E7 5007              JNC     ?C0109?SYS
   661: 			{
   662: 				g_variable.button_timer[1] = 0;
-0038F6 E4                CLR     A
-0038F7 904CD0            MOV     DPTR,#g_variable+011H
-0038FA F0                MOVX    @DPTR,A
+0037E9 E4                CLR     A
+0037EA 904CD0            MOV     DPTR,#g_variable+011H
+0037ED F0                MOVX    @DPTR,A
   663: 			}
-0038FB 8024              SJMP    ?C0112?SYS
-0038FD         ?C0109?SYS:
+0037EE 8024              SJMP    ?C0112?SYS
+0037F0         ?C0109?SYS:
   664: 			else if(press_long_time_flag == 3)
-0038FD 904DE3            MOV     DPTR,#press_long_time_flag
-003900 E0                MOVX    A,@DPTR
-003901 B4031D            CJNE    A,#03H,?C0112?SYS
+0037F0 904DE3            MOV     DPTR,#press_long_time_flag
+0037F3 E0                MOVX    A,@DPTR
+0037F4 B4031D            CJNE    A,#03H,?C0112?SYS
   665: 			{
   666: 				long_press_flag = 1;
-003904 904DDC            MOV     DPTR,#long_press_flag
-003907 7401              MOV     A,#01H
-003909 F0                MOVX    @DPTR,A
+0037F7 904DDC            MOV     DPTR,#long_press_flag
+0037FA 7401              MOV     A,#01H
+0037FC F0                MOVX    @DPTR,A
   667: 				g_variable.button_timer[1] = 0;
-00390A E4                CLR     A
-00390B 904CD0            MOV     DPTR,#g_variable+011H
-00390E F0                MOVX    @DPTR,A
+0037FD E4                CLR     A
+0037FE 904CD0            MOV     DPTR,#g_variable+011H
+003801 F0                MOVX    @DPTR,A
   668: 				System_long_sleep();
-00390F 120F38            LCALL   System_long_sleep
+003802 120F38            LCALL   System_long_sleep
   669: 			}
   670: 		}
   671: 	}
-003912 800D              SJMP    ?C0112?SYS
-003914         ?C0106?SYS:
+003805 800D              SJMP    ?C0112?SYS
+003807         ?C0106?SYS:
   672: 	else
   673: 	{
   674: 		press_long_time_flag = 0;
-003914 E4                CLR     A
-003915 904DE3            MOV     DPTR,#press_long_time_flag
-003918 F0                MOVX    @DPTR,A
+003807 E4                CLR     A
+003808 904DE3            MOV     DPTR,#press_long_time_flag
+00380B F0                MOVX    @DPTR,A
   675: 		long_press_flag = 0;
-003919 904DDC            MOV     DPTR,#long_press_flag
-00391C F0                MOVX    @DPTR,A
+00380C 904DDC            MOV     DPTR,#long_press_flag
+00380F F0                MOVX    @DPTR,A
   676: 		g_variable.button_timer[1] = 0;
-00391D 904CD0            MOV     DPTR,#g_variable+011H
-003920 F0                MOVX    @DPTR,A
+003810 904CD0            MOV     DPTR,#g_variable+011H
+003813 F0                MOVX    @DPTR,A
   677: 	}
-003921         ?C0112?SYS:
+003814         ?C0112?SYS:
   678: 		
   679: 	if (g_variable.button_flag & KEY_FLAG_FN_24G_DEVICE_BUTTON)		// G24 pairing
-003921 904CCE            MOV     DPTR,#g_variable+0FH
-003924 E0                MOVX    A,@DPTR
-003925 30E43C            JNB     ACC.4,?C0113?SYS
+003814 904CCE            MOV     DPTR,#g_variable+0FH
+003817 E0                MOVX    A,@DPTR
+003818 30E43C            JNB     ACC.4,?C0113?SYS
   680: 	{
   681: 		g_variable.delay_enter_lpm_timer = 10;
-003928 904CEB            MOV     DPTR,#g_variable+02CH
-00392B 740A              MOV     A,#0AH
-00392D F0                MOVX    @DPTR,A
+00381B 904CEB            MOV     DPTR,#g_variable+02CH
+00381E 740A              MOV     A,#0AH
+003820 F0                MOVX    @DPTR,A
   682: 		if (g_variable.button_timer[2] < 250)
-00392E 904CD1            MOV     DPTR,#g_variable+012H
-003931 E0                MOVX    A,@DPTR
-003932 C3                CLR     C
-003933 94FA              SUBB    A,#0FAH
-003935 5003              JNC     ?C0114?SYS
+003821 904CD1            MOV     DPTR,#g_variable+012H
+003824 E0                MOVX    A,@DPTR
+003825 C3                CLR     C
+003826 94FA              SUBB    A,#0FAH
+003828 5003              JNC     ?C0114?SYS
   683: 			g_variable.button_timer[2]++;
-003937 E0                MOVX    A,@DPTR
-003938 04                INC     A
-003939 F0                MOVX    @DPTR,A
-00393A         ?C0114?SYS:
+00382A E0                MOVX    A,@DPTR
+00382B 04                INC     A
+00382C F0                MOVX    @DPTR,A
+00382D         ?C0114?SYS:
   684: 		if (g_variable.button_timer[2] == 6)
-00393A 904CD1            MOV     DPTR,#g_variable+012H
-00393D E0                MOVX    A,@DPTR
-00393E 6406              XRL     A,#06H
-003940 7050              JNZ     ?C0118?SYS
+00382D 904CD1            MOV     DPTR,#g_variable+012H
+003830 E0                MOVX    A,@DPTR
+003831 6406              XRL     A,#06H
+003833 7050              JNZ     ?C0118?SYS
   685: 		{
   686: 			if( !g_variable.current_device_num || (g_variable.current_device_num == 0xfe))
-003942 904CC3            MOV     DPTR,#g_variable+04H
-003945 E0                MOVX    A,@DPTR
-003946 FF                MOV     R7,A
-003947 6004              JZ      ?C0117?SYS
-003949 64FE              XRL     A,#0FEH
-00394B 7045              JNZ     ?C0118?SYS
-00394D         ?C0117?SYS:
+003835 904CC3            MOV     DPTR,#g_variable+04H
+003838 E0                MOVX    A,@DPTR
+003839 FF                MOV     R7,A
+00383A 6004              JZ      ?C0117?SYS
+00383C 64FE              XRL     A,#0FEH
+00383E 7045              JNZ     ?C0118?SYS
+003840         ?C0117?SYS:
   687: 			{
   688: 				g_variable.button_24G_rec_flag = 0;
-00394D E4                CLR     A
-00394E 904CCD            MOV     DPTR,#g_variable+0EH
-003951 F0                MOVX    @DPTR,A
+003840 E4                CLR     A
+003841 904CCD            MOV     DPTR,#g_variable+0EH
+003844 F0                MOVX    @DPTR,A
   689: 				YC_disconnect_all_link();
-003952 120F59            LCALL   YC_disconnect_all_link
+003845 120F59            LCALL   YC_disconnect_all_link
   690: 				Delay1ms(10);
-003955 7F0A              MOV     R7,#0AH
-003957 120F41            LCALL   _Delay1ms
+003848 7F0A              MOV     R7,#0AH
+00384A 120F41            LCALL   _Delay1ms
   691: 				LED_all_shutdown();
-00395A 120FF7            LCALL   LED_all_shutdown
+00384D 120FF7            LCALL   LED_all_shutdown
   692: 				YC_key_action_handle(KEY_PAIRING_24G);
-00395D 7F0A              MOV     R7,#0AH
-00395F 12091C            LCALL   _YC_key_action_handle
+003850 7F0A              MOV     R7,#0AH
+003852 12091C            LCALL   _YC_key_action_handle
   693: 			}
   694: 		}
   695: 	}
-003962 802E              SJMP    ?C0118?SYS
-003964         ?C0113?SYS:
+003855 802E              SJMP    ?C0118?SYS
+003857         ?C0113?SYS:
   696: 	else
   697: 	{
   698: 		if(g_variable.button_24G_rec_flag)
-003964 904CCD            MOV     DPTR,#g_variable+0EH
-003967 E0                MOVX    A,@DPTR
-003968 6023              JZ      ?C0119?SYS
+003857 904CCD            MOV     DPTR,#g_variable+0EH
+00385A E0                MOVX    A,@DPTR
+00385B 6023              JZ      ?C0119?SYS
   699: 		{
   700: 			g_variable.button_24G_rec_flag = 0;
-00396A E4                CLR     A
-00396B F0                MOVX    @DPTR,A
+00385D E4                CLR     A
+00385E F0                MOVX    @DPTR,A
   701: 			YC_key_action_handle(KEY_STOP_DISCOVERY);
-00396C 7F0D              MOV     R7,#0DH
-00396E 12091C            LCALL   _YC_key_action_handle
+00385F 7F0D              MOV     R7,#0DH
+003861 12091C            LCALL   _YC_key_action_handle
   702: 			g_variable.release_data = 1;
-003971 904CEC            MOV     DPTR,#g_variable+02DH
-003974 7401              MOV     A,#01H
-003976 F0                MOVX    @DPTR,A
+003864 904CEC            MOV     DPTR,#g_variable+02DH
+003867 7401              MOV     A,#01H
+003869 F0                MOVX    @DPTR,A
   703: 			g_variable.last_device_num = g_variable.current_device_num;
-003977 904CC3            MOV     DPTR,#g_variable+04H
-00397A E0                MOVX    A,@DPTR
-00397B 904CC0            MOV     DPTR,#g_variable+01H
-00397E F0                MOVX    @DPTR,A
+00386A 904CC3            MOV     DPTR,#g_variable+04H
+00386D E0                MOVX    A,@DPTR
+00386E 904CC0            MOV     DPTR,#g_variable+01H
+003871 F0                MOVX    @DPTR,A
   704: 			g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_NORMAL;
-00397F 904CBF            MOV     DPTR,#g_variable
-003982 7401              MOV     A,#01H
-003984 F0                MOVX    @DPTR,A
+003872 904CBF            MOV     DPTR,#g_variable
+003875 7401              MOV     A,#01H
+003877 F0                MOVX    @DPTR,A
   705: 			YC_update_eeprom_data();
-003985 121A21            LCALL   YC_update_eeprom_data
+003878 121A21            LCALL   YC_update_eeprom_data
   706: 			IPC_TxControlCmd(IPC_CMD_DEVICE_SWITCH);
-003988 7F24              MOV     R7,#024H
-00398A 12085F            LCALL   _IPC_TxControlCmd
+00387B 7F24              MOV     R7,#024H
+00387D 12085F            LCALL   _IPC_TxControlCmd
   707: 		}
-00398D         ?C0119?SYS:
+003880         ?C0119?SYS:
   708: 		g_variable.button_timer[2] = 0;
-00398D E4                CLR     A
-00398E 904CD1            MOV     DPTR,#g_variable+012H
-003991 F0                MOVX    @DPTR,A
+003880 E4                CLR     A
+003881 904CD1            MOV     DPTR,#g_variable+012H
+003884 F0                MOVX    @DPTR,A
   709: 	}
-003992         ?C0118?SYS:
+003885         ?C0118?SYS:
   710: 
   711: 	
   712: 	if (g_variable.button_flag & KEY_FLAG_FN_DEVICE_BUTTON)
-003992 904CCE            MOV     DPTR,#g_variable+0FH
-003995 E0                MOVX    A,@DPTR
-003996 30E34E            JNB     ACC.3,?C0120?SYS
+003885 904CCE            MOV     DPTR,#g_variable+0FH
+003888 E0                MOVX    A,@DPTR
+003889 30E34E            JNB     ACC.3,?C0120?SYS
   713: 	{
   714: 		g_variable.delay_enter_lpm_timer = 10;
-003999 904CEB            MOV     DPTR,#g_variable+02CH
-00399C 740A              MOV     A,#0AH
-00399E F0                MOVX    @DPTR,A
+00388C 904CEB            MOV     DPTR,#g_variable+02CH
+00388F 740A              MOV     A,#0AH
+003891 F0                MOVX    @DPTR,A
   715: 		if (g_variable.button_timer[3] < 250)
-00399F 904CD2            MOV     DPTR,#g_variable+013H
-0039A2 E0                MOVX    A,@DPTR
-0039A3 C3                CLR     C
-0039A4 94FA              SUBB    A,#0FAH
-0039A6 5003              JNC     ?C0121?SYS
+003892 904CD2            MOV     DPTR,#g_variable+013H
+003895 E0                MOVX    A,@DPTR
+003896 C3                CLR     C
+003897 94FA              SUBB    A,#0FAH
+003899 5003              JNC     ?C0121?SYS
   716: 			g_variable.button_timer[3]++;
-0039A8 E0                MOVX    A,@DPTR
-0039A9 04                INC     A
-0039AA F0                MOVX    @DPTR,A
-0039AB         ?C0121?SYS:
+00389B E0                MOVX    A,@DPTR
+00389C 04                INC     A
+00389D F0                MOVX    @DPTR,A
+00389E         ?C0121?SYS:
   717: 		if (g_variable.button_timer[3] == 6)
-0039AB 904CD2            MOV     DPTR,#g_variable+013H
-0039AE E0                MOVX    A,@DPTR
-0039AF 6406              XRL     A,#06H
-0039B1 706F              JNZ     ?C0126?SYS
+00389E 904CD2            MOV     DPTR,#g_variable+013H
+0038A1 E0                MOVX    A,@DPTR
+0038A2 6406              XRL     A,#06H
+0038A4 706F              JNZ     ?C0126?SYS
   718: 		{
   719: 			//do discoverable
   720: 			g_variable.pairing_timeout = BT_PAIRING_TIME_OUT_2MIN;
-0039B3 904CE9            MOV     DPTR,#g_variable+02AH
-0039B6 7404              MOV     A,#04H
-0039B8 F0                MOVX    @DPTR,A
-0039B9 A3                INC     DPTR
-0039BA 74B0              MOV     A,#0B0H
-0039BC F0                MOVX    @DPTR,A
+0038A6 904CE9            MOV     DPTR,#g_variable+02AH
+0038A9 7404              MOV     A,#04H
+0038AB F0                MOVX    @DPTR,A
+0038AC A3                INC     DPTR
+0038AD 74B0              MOV     A,#0B0H
+0038AF F0                MOVX    @DPTR,A
   721: 			g_variable.pairing_g24_timeout = 0;
-0039BD E4                CLR     A
-0039BE 904CEF            MOV     DPTR,#g_variable+030H
-0039C1 F0                MOVX    @DPTR,A
-0039C2 A3                INC     DPTR
-0039C3 F0                MOVX    @DPTR,A
+0038B0 E4                CLR     A
+0038B1 904CEF            MOV     DPTR,#g_variable+030H
+0038B4 F0                MOVX    @DPTR,A
+0038B5 A3                INC     DPTR
+0038B6 F0                MOVX    @DPTR,A
   722: 			YC_key_action_handle(KEY_DISCOVERY);
-0039C4 7F05              MOV     R7,#05H
-0039C6 12091C            LCALL   _YC_key_action_handle
+0038B7 7F05              MOV     R7,#05H
+0038B9 12091C            LCALL   _YC_key_action_handle
   723: 			LED_all_shutdown();
-0039C9 120FF7            LCALL   LED_all_shutdown
+0038BC 120FF7            LCALL   LED_all_shutdown
   724: 			g_variable.button_reconnect_flag = 0;
-0039CC E4                CLR     A
-0039CD 904CCC            MOV     DPTR,#g_variable+0DH
-0039D0 F0                MOVX    @DPTR,A
+0038BF E4                CLR     A
+0038C0 904CCC            MOV     DPTR,#g_variable+0DH
+0038C3 F0                MOVX    @DPTR,A
   725: 			g_variable.release_data = 1;
-0039D1 904CEC            MOV     DPTR,#g_variable+02DH
-0039D4 04                INC     A
-0039D5 F0                MOVX    @DPTR,A
+0038C4 904CEC            MOV     DPTR,#g_variable+02DH
+0038C7 04                INC     A
+0038C8 F0                MOVX    @DPTR,A
   726: 			g_variable.temp_device_num = g_variable.last_device_num;
-0039D6 904CC0            MOV     DPTR,#g_variable+01H
-0039D9 E0                MOVX    A,@DPTR
-0039DA 904CC4            MOV     DPTR,#g_variable+05H
-0039DD F0                MOVX    @DPTR,A
+0038C9 904CC0            MOV     DPTR,#g_variable+01H
+0038CC E0                MOVX    A,@DPTR
+0038CD 904CC4            MOV     DPTR,#g_variable+05H
+0038D0 F0                MOVX    @DPTR,A
   727: 			g_variable.last_device_num = g_variable.current_device_num;
-0039DE 904CC3            MOV     DPTR,#g_variable+04H
-0039E1 E0                MOVX    A,@DPTR
-0039E2 904CC0            MOV     DPTR,#g_variable+01H
-0039E5 F0                MOVX    @DPTR,A
+0038D1 904CC3            MOV     DPTR,#g_variable+04H
+0038D4 E0                MOVX    A,@DPTR
+0038D5 904CC0            MOV     DPTR,#g_variable+01H
+0038D8 F0                MOVX    @DPTR,A
   728: 		}
   729: 	}
-0039E6 22                RET     
-0039E7         ?C0120?SYS:
+0038D9 22                RET     
+0038DA         ?C0120?SYS:
   730: 	else
   731: 	{
   732: 		if (g_variable.button_reconnect_flag)
-0039E7 904CCC            MOV     DPTR,#g_variable+0DH
-0039EA E0                MOVX    A,@DPTR
-0039EB 6030              JZ      ?C0124?SYS
+0038DA 904CCC            MOV     DPTR,#g_variable+0DH
+0038DD E0                MOVX    A,@DPTR
+0038DE 6030              JZ      ?C0124?SYS
   733: 		{
   734: 			g_variable.button_reconnect_flag = 0;
-0039ED E4                CLR     A
-0039EE F0                MOVX    @DPTR,A
+0038E0 E4                CLR     A
+0038E1 F0                MOVX    @DPTR,A
   735: 
   736: 			if(g_variable.last_device_num !=g_variable.current_device_num)		//switch device,
-0039EF 904CC3            MOV     DPTR,#g_variable+04H
-0039F2 E0                MOVX    A,@DPTR
-0039F3 FF                MOV     R7,A
-0039F4 904CC0            MOV     DPTR,#g_variable+01H
-0039F7 E0                MOVX    A,@DPTR
-0039F8 6F                XRL     A,R7
-0039F9 6022              JZ      ?C0124?SYS
+0038E2 904CC3            MOV     DPTR,#g_variable+04H
+0038E5 E0                MOVX    A,@DPTR
+0038E6 FF                MOV     R7,A
+0038E7 904CC0            MOV     DPTR,#g_variable+01H
+0038EA E0                MOVX    A,@DPTR
+0038EB 6F                XRL     A,R7
+0038EC 6022              JZ      ?C0124?SYS
   737: 			{
   738: 				g_variable.release_data = 1;
-0039FB 904CEC            MOV     DPTR,#g_variable+02DH
-0039FE 7401              MOV     A,#01H
-003A00 F0                MOVX    @DPTR,A
+0038EE 904CEC            MOV     DPTR,#g_variable+02DH
+0038F1 7401              MOV     A,#01H
+0038F3 F0                MOVX    @DPTR,A
   739: 				LED_all_shutdown();
-003A01 120FF7            LCALL   LED_all_shutdown
+0038F4 120FF7            LCALL   LED_all_shutdown
   740: 				g_variable.last_device_num = g_variable.current_device_num;
-003A04 904CC3            MOV     DPTR,#g_variable+04H
-003A07 E0                MOVX    A,@DPTR
-003A08 904CC0            MOV     DPTR,#g_variable+01H
-003A0B F0                MOVX    @DPTR,A
+0038F7 904CC3            MOV     DPTR,#g_variable+04H
+0038FA E0                MOVX    A,@DPTR
+0038FB 904CC0            MOV     DPTR,#g_variable+01H
+0038FE F0                MOVX    @DPTR,A
   741: 				g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_NORMAL;
-003A0C 904CBF            MOV     DPTR,#g_variable
-003A0F 7401              MOV     A,#01H
-003A11 F0                MOVX    @DPTR,A
+0038FF 904CBF            MOV     DPTR,#g_variable
+003902 7401              MOV     A,#01H
+003904 F0                MOVX    @DPTR,A
   742: 				
   743: 				YC_disconnect_all_link();
-003A12 120F59            LCALL   YC_disconnect_all_link
+003905 120F59            LCALL   YC_disconnect_all_link
   744: 				YC_update_eeprom_data();
-003A15 121A21            LCALL   YC_update_eeprom_data
+003908 121A21            LCALL   YC_update_eeprom_data
   745: 				IPC_TxControlCmd(IPC_CMD_DEVICE_SWITCH);
-003A18 7F24              MOV     R7,#024H
-003A1A 12085F            LCALL   _IPC_TxControlCmd
+00390B 7F24              MOV     R7,#024H
+00390D 12085F            LCALL   _IPC_TxControlCmd
   746: 			}
   747: 		}
-003A1D         ?C0124?SYS:
+003910         ?C0124?SYS:
   748: 		g_variable.button_timer[3] = 0;
-003A1D E4                CLR     A
-003A1E 904CD2            MOV     DPTR,#g_variable+013H
-003A21 F0                MOVX    @DPTR,A
+003910 E4                CLR     A
+003911 904CD2            MOV     DPTR,#g_variable+013H
+003914 F0                MOVX    @DPTR,A
   749: 	}
   750: }
-003A22         ?C0126?SYS:
-003A22 22                RET     
+003915         ?C0126?SYS:
+003915 22                RET     
 ----- FUNCTION kb_button_press_timer500ms (END) -------
 
 
+----- FUNCTION kb_cb_Timer100ms (BEGIN) -----
+ FILE: 'sys.c'
+  776: static void kb_cb_Timer100ms()
+  777: {
+  778: 
+  779: 
+  780: 	if (g_variable.delay_enter_lpm_timer) 
+003916 904CEB            MOV     DPTR,#g_variable+02CH
+003919 E0                MOVX    A,@DPTR
+00391A 6002              JZ      ?C0130?SYS
+  781: 	{
+  782: 		g_variable.delay_enter_lpm_timer --;
+00391C 14                DEC     A
+00391D F0                MOVX    @DPTR,A
+  783: 	}
+00391E         ?C0130?SYS:
+  784: 
+  785: 	if(g_variable.recon_delay)
+00391E 904CF1            MOV     DPTR,#g_variable+032H
+003921 E0                MOVX    A,@DPTR
+003922 6002              JZ      ?C0131?SYS
+  786: 		g_variable.recon_delay--;
+003924 14                DEC     A
+003925 F0                MOVX    @DPTR,A
+003926         ?C0131?SYS:
+  787: 
+  788: 	if(g_variable.one_key_press_wait_release_timer)
+003926 904CFA            MOV     DPTR,#g_variable+03BH
+003929 E0                MOVX    A,@DPTR
+00392A 600B              JZ      ?C0132?SYS
+  789: 	{
+  790: 		g_variable.one_key_press_wait_release_timer--;
+00392C 14                DEC     A
+00392D F0                MOVX    @DPTR,A
+  791: 		if(!g_variable.one_key_press_wait_release_timer)
+00392E E0                MOVX    A,@DPTR
+00392F 7006              JNZ     ?C0132?SYS
+  792: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
+003931 904CF6            MOV     DPTR,#g_variable+037H
+003934 7406              MOV     A,#06H
+003936 F0                MOVX    @DPTR,A
+  793: 	}
+003937         ?C0132?SYS:
+  794: 	
+  795: 	if (g_variable.powerOn_timer != 0)
+003937 904CE5            MOV     DPTR,#g_variable+026H
+00393A E0                MOVX    A,@DPTR
+00393B 6035              JZ      ?C0134?SYS
+  796: 	{	
+  797: 		if(g_variable.pairing_g24_timeout ||g_variable.pairing_timeout)
+00393D 904CEF            MOV     DPTR,#g_variable+030H
+003940 E0                MOVX    A,@DPTR
+003941 7002              JNZ     ?C0188?SYS
+003943 A3                INC     DPTR
+003944 E0                MOVX    A,@DPTR
+003945         ?C0188?SYS:
+003945 700A              JNZ     ?C0136?SYS
+003947 904CE9            MOV     DPTR,#g_variable+02AH
+00394A E0                MOVX    A,@DPTR
+00394B 7002              JNZ     ?C0189?SYS
+00394D A3                INC     DPTR
+00394E E0                MOVX    A,@DPTR
+00394F         ?C0189?SYS:
+00394F 6006              JZ      ?C0135?SYS
+003951         ?C0136?SYS:
+  798: 		{
+  799: 			g_variable.powerOn_timer = 0;
+003951 E4                CLR     A
+003952 904CE5            MOV     DPTR,#g_variable+026H
+003955 F0                MOVX    @DPTR,A
+003956 22                RET     
+  800: 			return;
+  801: 		}
+003957         ?C0135?SYS:
+  802: 			
+  803: 		g_variable.powerOn_timer--;
+003957 904CE5            MOV     DPTR,#g_variable+026H
+00395A E0                MOVX    A,@DPTR
+00395B 14                DEC     A
+00395C F0                MOVX    @DPTR,A
+  804: 		if(g_variable.powerOn_timer)
+00395D E0                MOVX    A,@DPTR
+00395E 6009              JZ      ?C0138?SYS
+  805: 		{
+  806: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_ON);
+003960 D201              SETB    ?_GPIO_Setout?BIT
+003962 7F1F              MOV     R7,#01FH
+003964 120FDF            LCALL   _GPIO_Setout
+  807: 		}
+003967 8052              SJMP    ?C0140?SYS
+003969         ?C0138?SYS:
+  808: 		else
+  809: 		{
+  810: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_OFF);
+003969 C201              CLR     ?_GPIO_Setout?BIT
+00396B 7F1F              MOV     R7,#01FH
+00396D 120FDF            LCALL   _GPIO_Setout
+  811: 		}
+  812: 
+  813: 	}
+003970 8049              SJMP    ?C0140?SYS
+003972         ?C0134?SYS:
+  814: 	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
+003972 904CE9            MOV     DPTR,#g_variable+02AH
+003975 E0                MOVX    A,@DPTR
+003976 7002              JNZ     ?C0190?SYS
+003978 A3                INC     DPTR
+003979 E0                MOVX    A,@DPTR
+00397A         ?C0190?SYS:
+00397A 703F              JNZ     ?C0140?SYS
+00397C 904CEF            MOV     DPTR,#g_variable+030H
+00397F E0                MOVX    A,@DPTR
+003980 7002              JNZ     ?C0191?SYS
+003982 A3                INC     DPTR
+003983 E0                MOVX    A,@DPTR
+003984         ?C0191?SYS:
+003984 7035              JNZ     ?C0140?SYS
+  815: 	{
+  816: 		if(g_variable.battery_low_led_flash_interval)
+003986 904CE2            MOV     DPTR,#g_variable+023H
+003989 E0                MOVX    A,@DPTR
+00398A 602F              JZ      ?C0140?SYS
+  817: 		{
+  818: 			g_variable.battery_low_led_flash_interval--;
+00398C 14                DEC     A
+00398D F0                MOVX    @DPTR,A
+  819: 			if(g_variable.battery_low_led_flash_interval < 8)
+00398E E0                MOVX    A,@DPTR
+00398F FF                MOV     R7,A
+003990 C3                CLR     C
+003991 9408              SUBB    A,#08H
+003993 5016              JNC     ?C0143?SYS
+  820: 			{
+  821: 				if(g_variable.battery_low_led_flash_interval & 0x02)
+003995 EF                MOV     A,R7
+003996 30E109            JNB     ACC.1,?C0144?SYS
+  822: 				{
+  823: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
+003999 D201              SETB    ?_GPIO_Setout?BIT
+00399B 7F1F              MOV     R7,#01FH
+00399D 120FDF            LCALL   _GPIO_Setout
+  824: 				}
+0039A0 8010              SJMP    ?C0146?SYS
+0039A2         ?C0144?SYS:
+  825: 				else
+  826: 				{
+  827: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
+0039A2 C201              CLR     ?_GPIO_Setout?BIT
+0039A4 7F1F              MOV     R7,#01FH
+0039A6 120FDF            LCALL   _GPIO_Setout
+  828: 				}	
+  829: 			}
+0039A9 8007              SJMP    ?C0146?SYS
+0039AB         ?C0143?SYS:
+  830: 			else
+  831: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
+0039AB C201              CLR     ?_GPIO_Setout?BIT
+0039AD 7F1F              MOV     R7,#01FH
+0039AF 120FDF            LCALL   _GPIO_Setout
+0039B2         ?C0146?SYS:
+  832: 			if(!g_variable.battery_low_led_flash_interval)
+0039B2 904CE2            MOV     DPTR,#g_variable+023H
+0039B5 E0                MOVX    A,@DPTR
+0039B6 7003              JNZ     ?C0140?SYS
+  833: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
+0039B8 7418              MOV     A,#018H
+0039BA F0                MOVX    @DPTR,A
+  834: 		}
+  835: 	}		
+0039BB         ?C0140?SYS:
+  836: // The dongle must receive data within 200ms, otherwise it will be forced to lift
+  837: 	if(!long_press_flag)
+0039BB 904DDC            MOV     DPTR,#long_press_flag
+0039BE E0                MOVX    A,@DPTR
+0039BF 7036              JNZ     ?C0148?SYS
+  838: 	{
+  839: 		if (repeat_send_24g == 1)
+0039C1 904DDD            MOV     DPTR,#repeat_send_24g
+0039C4 E0                MOVX    A,@DPTR
+0039C5 6401              XRL     A,#01H
+0039C7 702E              JNZ     ?C0148?SYS
+  840: 		{
+  841: 			g_variable.sleepTimer = 0;	
+0039C9 904CE3            MOV     DPTR,#g_variable+024H
+0039CC F0                MOVX    @DPTR,A
+0039CD A3                INC     DPTR
+0039CE F0                MOVX    @DPTR,A
+  842: 			repeat_send_24g = 0;
+0039CF 904DDD            MOV     DPTR,#repeat_send_24g
+0039D2 F0                MOVX    @DPTR,A
+  843: 
+  844: 			 if (multikey[0] != 0)
+0039D3 904E4C            MOV     DPTR,#multikey
+0039D6 E0                MOVX    A,@DPTR
+0039D7 600D              JZ      ?C0150?SYS
+  845: 			{
+  846: 				IPC_TxHidData(multikey, 3);
+0039D9 7B01              MOV     R3,#01H
+0039DB 7A4E              MOV     R2,#HIGH multikey
+0039DD 794C              MOV     R1,#LOW multikey
+0039DF 7D03              MOV     R5,#03H
+0039E1 121533            LCALL   _IPC_TxHidData
+  847: 			}
+0039E4 8011              SJMP    ?C0148?SYS
+0039E6         ?C0150?SYS:
+  848: 			else if (hidBuff[0] != 0)
+0039E6 904800            MOV     DPTR,#hidBuff
+0039E9 E0                MOVX    A,@DPTR
+0039EA 600B              JZ      ?C0148?SYS
+  849: 			{
+  850: 
+  851: 				IPC_TxHidData(hidBuff,9);
+0039EC 7B01              MOV     R3,#01H
+0039EE 7A48              MOV     R2,#HIGH hidBuff
+0039F0 7900              MOV     R1,#LOW hidBuff
+0039F2 7D09              MOV     R5,#09H
+0039F4 121533            LCALL   _IPC_TxHidData
+  852: 			}
+  853: 		}
+  854: 	}
+0039F7         ?C0148?SYS:
+  855: 
+  856: 	if(g_variable.sys_mode_led_on_timer && !g_variable.pairing_timeout && !g_variable.pairing_g24_timeout)
+0039F7 904CE8            MOV     DPTR,#g_variable+029H
+0039FA E0                MOVX    A,@DPTR
+0039FB 602C              JZ      ?C0153?SYS
+0039FD A3                INC     DPTR
+0039FE E0                MOVX    A,@DPTR
+0039FF 7002              JNZ     ?C0192?SYS
+003A01 A3                INC     DPTR
+003A02 E0                MOVX    A,@DPTR
+003A03         ?C0192?SYS:
+003A03 7024              JNZ     ?C0153?SYS
+003A05 904CEF            MOV     DPTR,#g_variable+030H
+003A08 E0                MOVX    A,@DPTR
+003A09 7002              JNZ     ?C0193?SYS
+003A0B A3                INC     DPTR
+003A0C E0                MOVX    A,@DPTR
+003A0D         ?C0193?SYS:
+003A0D 701A              JNZ     ?C0153?SYS
+  857: 	{
+  858: 		g_variable.sys_mode_led_on_timer--;
+003A0F 904CE8            MOV     DPTR,#g_variable+029H
+003A12 E0                MOVX    A,@DPTR
+003A13 14                DEC     A
+003A14 F0                MOVX    @DPTR,A
+  859: 		GPIO_Setout(MODE_LED_GPIO,LED_ON);
+003A15 D201              SETB    ?_GPIO_Setout?BIT
+003A17 7F1D              MOV     R7,#01DH
+003A19 120FDF            LCALL   _GPIO_Setout
+  860: 		if (!g_variable.sys_mode_led_on_timer)
+003A1C 904CE8            MOV     DPTR,#g_variable+029H
+003A1F E0                MOVX    A,@DPTR
+003A20 7007              JNZ     ?C0153?SYS
+  861: 		{
+  862: 		GPIO_Setout(MODE_LED_GPIO,LED_OFF);
+003A22 C201              CLR     ?_GPIO_Setout?BIT
+003A24 7F1D              MOV     R7,#01DH
+003A26 120FDF            LCALL   _GPIO_Setout
+  863: 		}
+  864: 	}
+003A29         ?C0153?SYS:
+  865: 
+  866: //role switch time out
+  867: 	if (switch_role_timer != 0)
+003A29 904DD9            MOV     DPTR,#switch_role_timer
+003A2C E0                MOVX    A,@DPTR
+003A2D 6009              JZ      ?C0155?SYS
+  868: 	{
+  869: 		switch_role_timer--; 
+003A2F E0                MOVX    A,@DPTR
+003A30 14                DEC     A
+003A31 F0                MOVX    @DPTR,A
+  870: 		if (switch_role_timer == 0)
+003A32 E0                MOVX    A,@DPTR
+003A33 7003              JNZ     ?C0155?SYS
+  871: 		{
+  872: 			System_Reset_Connect();
+003A35 1236B8            LCALL   System_Reset_Connect
+  873: 		}
+  874: 	}
+003A38         ?C0155?SYS:
+  875: 
+  876: // ble delay send secutiry request
+  877: 	if(ble_send_secutiry_request_timer)
+003A38 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
+003A3B E0                MOVX    A,@DPTR
+003A3C 6011              JZ      ?C0157?SYS
+  878: 	{
+  879: 		ble_send_secutiry_request_timer--;
+003A3E E0                MOVX    A,@DPTR
+003A3F 14                DEC     A
+003A40 F0                MOVX    @DPTR,A
+  880: 		if(!ble_send_secutiry_request_timer)
+003A41 E0                MOVX    A,@DPTR
+003A42 700B              JNZ     ?C0157?SYS
+  881: 		{
+  882: 			if(!m_le_send_security_request_flag)
+003A44 904D3D            MOV     DPTR,#m_le_send_security_request_flag
+003A47 E0                MOVX    A,@DPTR
+003A48 7005              JNZ     ?C0157?SYS
+  883: 			{
+  884: 				IPC_TxControlCmd(IPC_CMD_LE_SMP_SECURITY_REQUEST);
+003A4A 7F1B              MOV     R7,#01BH
+003A4C 12085F            LCALL   _IPC_TxControlCmd
+  885: 			}
+  886: 		}
+  887: 	}
+003A4F         ?C0157?SYS:
+  888: 
+  889: 	if (delayChgInvTimer != 0)
+003A4F 904DE6            MOV     DPTR,#delayChgInvTimer
+003A52 E0                MOVX    A,@DPTR
+003A53 6029              JZ      ?C0137?SYS
+  890: 	{
+  891: 		delayChgInvTimer--;
+003A55 E0                MOVX    A,@DPTR
+003A56 14                DEC     A
+003A57 F0                MOVX    @DPTR,A
+  892: 		if (delayChgInvTimer == 0)
+003A58 E0                MOVX    A,@DPTR
+003A59 7023              JNZ     ?C0137?SYS
+  893: 		{
+  894: 			if( m_24g_led_flag)
+003A5B 904D46            MOV     DPTR,#m_24g_led_flag
+003A5E E0                MOVX    A,@DPTR
+003A5F 6002              JZ      ?C0162?SYS
+  895: 			{
+  896: 				m_24g_led_flag = 0;
+003A61 E4                CLR     A
+003A62 F0                MOVX    @DPTR,A
+  897: 			}	
+003A63         ?C0162?SYS:
+  898: 	
+  899: 			if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
+003A63 904CC7            MOV     DPTR,#g_variable+08H
+003A66 E0                MOVX    A,@DPTR
+003A67 B40407            CJNE    A,#04H,?C0163?SYS
+  900: 			{
+  901: 				kscurrmult = 0x0c;
+003A6A 904213            MOV     DPTR,#kscurrmult
+003A6D 740C              MOV     A,#0CH
+003A6F F0                MOVX    @DPTR,A
+  902: 			}
+003A70 22                RET     
+003A71         ?C0163?SYS:
+  903: 			else if (g_variable.br_currentState == CHANGE_TO_BR_CONNECTED)
+003A71 904CC9            MOV     DPTR,#g_variable+0AH
+003A74 E0                MOVX    A,@DPTR
+003A75 B40406            CJNE    A,#04H,?C0137?SYS
+  904: 			{
+  905: 				kscurrmult = 0x3a;
+003A78 904213            MOV     DPTR,#kscurrmult
+003A7B 743A              MOV     A,#03AH
+003A7D F0                MOVX    @DPTR,A
+  906: 			}
+  907: 		}
+  908: 	}
+  909: }
+003A7E         ?C0137?SYS:
+003A7E 22                RET     
+----- FUNCTION kb_cb_Timer100ms (END) -------
+
+
 ----- FUNCTION YC_adc_check (BEGIN) -----
  FILE: 'adc.c'
    42: void YC_adc_check() 
@@ -11535,578 +11616,578 @@
    44: #ifdef  ADC_ENABLE
    45: 	byte i;
    46: 	ulong batValue = 0;
-003A23 904ED0            MOV     DPTR,#batValue
-003A26 120582            LCALL   ?C?LSTKXDATA
-003A29 00                DB      00H
-003A2A 00                DB      00H
-003A2B 00                DB      00H
-003A2C 00                DB      00H
+003A7F 904ED0            MOV     DPTR,#batValue
+003A82 120582            LCALL   ?C?LSTKXDATA
+003A85 00                DB      00H
+003A86 00                DB      00H
+003A87 00                DB      00H
+003A88 00                DB      00H
    47: 
    48: 	if(!m_adcCurrentValue)
-003A2D 904C95            MOV     DPTR,#m_adcCurrentValue
-003A30 E0                MOVX    A,@DPTR
-003A31 7002              JNZ     ?C0024?ADC
-003A33 A3                INC     DPTR
-003A34 E0                MOVX    A,@DPTR
-003A35         ?C0024?ADC:
-003A35 7002              JNZ     $ + 4H
-003A37 61F4              AJMP    ?C0006?ADC
-003A39         ?C0005?ADC:
+003A89 904C95            MOV     DPTR,#m_adcCurrentValue
+003A8C E0                MOVX    A,@DPTR
+003A8D 7002              JNZ     ?C0024?ADC
+003A8F A3                INC     DPTR
+003A90 E0                MOVX    A,@DPTR
+003A91         ?C0024?ADC:
+003A91 7002              JNZ     $ + 4H
+003A93 8150              AJMP    ?C0006?ADC
+003A95         ?C0005?ADC:
    49: 		return;
    50: 
    51: 	g_variable.battery_value[g_variable.battery_value_index++] = m_adcCurrentValue;
-003A39 904C95            MOV     DPTR,#m_adcCurrentValue
-003A3C E0                MOVX    A,@DPTR
-003A3D FE                MOV     R6,A
-003A3E A3                INC     DPTR
-003A3F E0                MOVX    A,@DPTR
-003A40 FF                MOV     R7,A
-003A41 904CD4            MOV     DPTR,#g_variable+015H
-003A44 E0                MOVX    A,@DPTR
-003A45 FD                MOV     R5,A
-003A46 04                INC     A
-003A47 F0                MOVX    @DPTR,A
-003A48 ED                MOV     A,R5
-003A49 25E0              ADD     A,ACC
-003A4B 24D6              ADD     A,#LOW g_variable+017H
-003A4D F582              MOV     DPL,A
-003A4F E4                CLR     A
-003A50 344C              ADDC    A,#HIGH g_variable+017H
-003A52 F583              MOV     DPH,A
-003A54 EE                MOV     A,R6
-003A55 F0                MOVX    @DPTR,A
-003A56 A3                INC     DPTR
-003A57 EF                MOV     A,R7
-003A58 F0                MOVX    @DPTR,A
+003A95 904C95            MOV     DPTR,#m_adcCurrentValue
+003A98 E0                MOVX    A,@DPTR
+003A99 FE                MOV     R6,A
+003A9A A3                INC     DPTR
+003A9B E0                MOVX    A,@DPTR
+003A9C FF                MOV     R7,A
+003A9D 904CD4            MOV     DPTR,#g_variable+015H
+003AA0 E0                MOVX    A,@DPTR
+003AA1 FD                MOV     R5,A
+003AA2 04                INC     A
+003AA3 F0                MOVX    @DPTR,A
+003AA4 ED                MOV     A,R5
+003AA5 25E0              ADD     A,ACC
+003AA7 24D6              ADD     A,#LOW g_variable+017H
+003AA9 F582              MOV     DPL,A
+003AAB E4                CLR     A
+003AAC 344C              ADDC    A,#HIGH g_variable+017H
+003AAE F583              MOV     DPH,A
+003AB0 EE                MOV     A,R6
+003AB1 F0                MOVX    @DPTR,A
+003AB2 A3                INC     DPTR
+003AB3 EF                MOV     A,R7
+003AB4 F0                MOVX    @DPTR,A
    52: 	if (g_variable.battery_value_index >= BAT_ARRAY_LEN)
-003A59 904CD4            MOV     DPTR,#g_variable+015H
-003A5C E0                MOVX    A,@DPTR
-003A5D C3                CLR     C
-003A5E 9404              SUBB    A,#04H
-003A60 4002              JC      ?C0007?ADC
+003AB5 904CD4            MOV     DPTR,#g_variable+015H
+003AB8 E0                MOVX    A,@DPTR
+003AB9 C3                CLR     C
+003ABA 9404              SUBB    A,#04H
+003ABC 4002              JC      ?C0007?ADC
    53: 		g_variable.battery_value_index = 0;
-003A62 E4                CLR     A
-003A63 F0                MOVX    @DPTR,A
-003A64         ?C0007?ADC:
+003ABE E4                CLR     A
+003ABF F0                MOVX    @DPTR,A
+003AC0         ?C0007?ADC:
    54: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
-003A64 E4                CLR     A
-003A65 904ECF            MOV     DPTR,#i
-003A68 F0                MOVX    @DPTR,A
-003A69         ?C0008?ADC:
+003AC0 E4                CLR     A
+003AC1 904ECF            MOV     DPTR,#i
+003AC4 F0                MOVX    @DPTR,A
+003AC5         ?C0008?ADC:
    55: 	{
    56: 		batValue += g_variable.battery_value[i];
-003A69 904ED0            MOV     DPTR,#batValue
-003A6C E0                MOVX    A,@DPTR
-003A6D F8                MOV     R0,A
-003A6E A3                INC     DPTR
-003A6F E0                MOVX    A,@DPTR
-003A70 F9                MOV     R1,A
-003A71 A3                INC     DPTR
-003A72 E0                MOVX    A,@DPTR
-003A73 FA                MOV     R2,A
-003A74 A3                INC     DPTR
-003A75 E0                MOVX    A,@DPTR
-003A76 FB                MOV     R3,A
-003A77 904ECF            MOV     DPTR,#i
-003A7A E0                MOVX    A,@DPTR
-003A7B 25E0              ADD     A,ACC
-003A7D 24D6              ADD     A,#LOW g_variable+017H
-003A7F F582              MOV     DPL,A
-003A81 E4                CLR     A
-003A82 344C              ADDC    A,#HIGH g_variable+017H
-003A84 F583              MOV     DPH,A
-003A86 E0                MOVX    A,@DPTR
-003A87 FE                MOV     R6,A
-003A88 A3                INC     DPTR
-003A89 E0                MOVX    A,@DPTR
-003A8A FF                MOV     R7,A
-003A8B E4                CLR     A
-003A8C FC                MOV     R4,A
-003A8D FD                MOV     R5,A
-003A8E EB                MOV     A,R3
-003A8F 2F                ADD     A,R7
-003A90 FF                MOV     R7,A
-003A91 EA                MOV     A,R2
-003A92 3E                ADDC    A,R6
-003A93 FE                MOV     R6,A
-003A94 ED                MOV     A,R5
-003A95 39                ADDC    A,R1
-003A96 FD                MOV     R5,A
-003A97 EC                MOV     A,R4
-003A98 38                ADDC    A,R0
-003A99 FC                MOV     R4,A
-003A9A 904ED0            MOV     DPTR,#batValue
-003A9D 120576            LCALL   ?C?LSTXDATA
+003AC5 904ED0            MOV     DPTR,#batValue
+003AC8 E0                MOVX    A,@DPTR
+003AC9 F8                MOV     R0,A
+003ACA A3                INC     DPTR
+003ACB E0                MOVX    A,@DPTR
+003ACC F9                MOV     R1,A
+003ACD A3                INC     DPTR
+003ACE E0                MOVX    A,@DPTR
+003ACF FA                MOV     R2,A
+003AD0 A3                INC     DPTR
+003AD1 E0                MOVX    A,@DPTR
+003AD2 FB                MOV     R3,A
+003AD3 904ECF            MOV     DPTR,#i
+003AD6 E0                MOVX    A,@DPTR
+003AD7 25E0              ADD     A,ACC
+003AD9 24D6              ADD     A,#LOW g_variable+017H
+003ADB F582              MOV     DPL,A
+003ADD E4                CLR     A
+003ADE 344C              ADDC    A,#HIGH g_variable+017H
+003AE0 F583              MOV     DPH,A
+003AE2 E0                MOVX    A,@DPTR
+003AE3 FE                MOV     R6,A
+003AE4 A3                INC     DPTR
+003AE5 E0                MOVX    A,@DPTR
+003AE6 FF                MOV     R7,A
+003AE7 E4                CLR     A
+003AE8 FC                MOV     R4,A
+003AE9 FD                MOV     R5,A
+003AEA EB                MOV     A,R3
+003AEB 2F                ADD     A,R7
+003AEC FF                MOV     R7,A
+003AED EA                MOV     A,R2
+003AEE 3E                ADDC    A,R6
+003AEF FE                MOV     R6,A
+003AF0 ED                MOV     A,R5
+003AF1 39                ADDC    A,R1
+003AF2 FD                MOV     R5,A
+003AF3 EC                MOV     A,R4
+003AF4 38                ADDC    A,R0
+003AF5 FC                MOV     R4,A
+003AF6 904ED0            MOV     DPTR,#batValue
+003AF9 120576            LCALL   ?C?LSTXDATA
    57: 	}
-003AA0 904ECF            MOV     DPTR,#i
-003AA3 E0                MOVX    A,@DPTR
-003AA4 04                INC     A
-003AA5 F0                MOVX    @DPTR,A
-003AA6 E0                MOVX    A,@DPTR
-003AA7 B404BF            CJNE    A,#04H,?C0008?ADC
-003AAA         ?C0009?ADC:
+003AFC 904ECF            MOV     DPTR,#i
+003AFF E0                MOVX    A,@DPTR
+003B00 04                INC     A
+003B01 F0                MOVX    @DPTR,A
+003B02 E0                MOVX    A,@DPTR
+003B03 B404BF            CJNE    A,#04H,?C0008?ADC
+003B06         ?C0009?ADC:
    58: 	batValue = batValue/BAT_ARRAY_LEN;
-003AAA 904ED0            MOV     DPTR,#batValue
-003AAD E0                MOVX    A,@DPTR
-003AAE FC                MOV     R4,A
-003AAF A3                INC     DPTR
-003AB0 E0                MOVX    A,@DPTR
-003AB1 FD                MOV     R5,A
-003AB2 A3                INC     DPTR
-003AB3 E0                MOVX    A,@DPTR
-003AB4 FE                MOV     R6,A
-003AB5 A3                INC     DPTR
-003AB6 E0                MOVX    A,@DPTR
-003AB7 FF                MOV     R7,A
-003AB8 E4                CLR     A
-003AB9 7B04              MOV     R3,#04H
-003ABB FA                MOV     R2,A
-003ABC F9                MOV     R1,A
-003ABD F8                MOV     R0,A
-003ABE 1204C5            LCALL   ?C?ULDIV
-003AC1 904ED0            MOV     DPTR,#batValue
-003AC4 120576            LCALL   ?C?LSTXDATA
+003B06 904ED0            MOV     DPTR,#batValue
+003B09 E0                MOVX    A,@DPTR
+003B0A FC                MOV     R4,A
+003B0B A3                INC     DPTR
+003B0C E0                MOVX    A,@DPTR
+003B0D FD                MOV     R5,A
+003B0E A3                INC     DPTR
+003B0F E0                MOVX    A,@DPTR
+003B10 FE                MOV     R6,A
+003B11 A3                INC     DPTR
+003B12 E0                MOVX    A,@DPTR
+003B13 FF                MOV     R7,A
+003B14 E4                CLR     A
+003B15 7B04              MOV     R3,#04H
+003B17 FA                MOV     R2,A
+003B18 F9                MOV     R1,A
+003B19 F8                MOV     R0,A
+003B1A 1204C5            LCALL   ?C?ULDIV
+003B1D 904ED0            MOV     DPTR,#batValue
+003B20 120576            LCALL   ?C?LSTXDATA
    59: 
    60: 	if(batValue <= g_variable.battery_level_shutdown)
-003AC7 904CE0            MOV     DPTR,#g_variable+021H
-003ACA E0                MOVX    A,@DPTR
-003ACB FE                MOV     R6,A
-003ACC A3                INC     DPTR
-003ACD E0                MOVX    A,@DPTR
-003ACE FF                MOV     R7,A
-003ACF E4                CLR     A
-003AD0 FC                MOV     R4,A
-003AD1 FD                MOV     R5,A
-003AD2 904ED0            MOV     DPTR,#batValue
-003AD5 E0                MOVX    A,@DPTR
-003AD6 F8                MOV     R0,A
-003AD7 A3                INC     DPTR
-003AD8 E0                MOVX    A,@DPTR
-003AD9 F9                MOV     R1,A
-003ADA A3                INC     DPTR
-003ADB E0                MOVX    A,@DPTR
-003ADC FA                MOV     R2,A
-003ADD A3                INC     DPTR
-003ADE E0                MOVX    A,@DPTR
-003ADF FB                MOV     R3,A
-003AE0 D3                SETB    C
-003AE1 120565            LCALL   ?C?ULCMP
-003AE4 5007              JNC     ?C0011?ADC
+003B23 904CE0            MOV     DPTR,#g_variable+021H
+003B26 E0                MOVX    A,@DPTR
+003B27 FE                MOV     R6,A
+003B28 A3                INC     DPTR
+003B29 E0                MOVX    A,@DPTR
+003B2A FF                MOV     R7,A
+003B2B E4                CLR     A
+003B2C FC                MOV     R4,A
+003B2D FD                MOV     R5,A
+003B2E 904ED0            MOV     DPTR,#batValue
+003B31 E0                MOVX    A,@DPTR
+003B32 F8                MOV     R0,A
+003B33 A3                INC     DPTR
+003B34 E0                MOVX    A,@DPTR
+003B35 F9                MOV     R1,A
+003B36 A3                INC     DPTR
+003B37 E0                MOVX    A,@DPTR
+003B38 FA                MOV     R2,A
+003B39 A3                INC     DPTR
+003B3A E0                MOVX    A,@DPTR
+003B3B FB                MOV     R3,A
+003B3C D3                SETB    C
+003B3D 120565            LCALL   ?C?ULCMP
+003B40 5007              JNC     ?C0011?ADC
    61: 		g_variable.battery_level_percentage = 0;
-003AE6 E4                CLR     A
-003AE7 904CFB            MOV     DPTR,#g_variable+03CH
-003AEA F0                MOVX    @DPTR,A
-003AEB 616F              AJMP    ?C0012?ADC
-003AED         ?C0011?ADC:
+003B42 E4                CLR     A
+003B43 904CFB            MOV     DPTR,#g_variable+03CH
+003B46 F0                MOVX    @DPTR,A
+003B47 61CB              AJMP    ?C0012?ADC
+003B49         ?C0011?ADC:
    62: 	else	if(batValue >= g_variable.battery_level_full)
-003AED 904CFC            MOV     DPTR,#g_variable+03DH
-003AF0 E0                MOVX    A,@DPTR
-003AF1 FE                MOV     R6,A
-003AF2 A3                INC     DPTR
-003AF3 E0                MOVX    A,@DPTR
-003AF4 FF                MOV     R7,A
-003AF5 E4                CLR     A
-003AF6 FC                MOV     R4,A
-003AF7 FD                MOV     R5,A
-003AF8 904ED0            MOV     DPTR,#batValue
-003AFB E0                MOVX    A,@DPTR
-003AFC F8                MOV     R0,A
-003AFD A3                INC     DPTR
-003AFE E0                MOVX    A,@DPTR
-003AFF F9                MOV     R1,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 FB                MOV     R3,A
-003B06 C3                CLR     C
-003B07 120565            LCALL   ?C?ULCMP
-003B0A 4008              JC      ?C0013?ADC
+003B49 904CFC            MOV     DPTR,#g_variable+03DH
+003B4C E0                MOVX    A,@DPTR
+003B4D FE                MOV     R6,A
+003B4E A3                INC     DPTR
+003B4F E0                MOVX    A,@DPTR
+003B50 FF                MOV     R7,A
+003B51 E4                CLR     A
+003B52 FC                MOV     R4,A
+003B53 FD                MOV     R5,A
+003B54 904ED0            MOV     DPTR,#batValue
+003B57 E0                MOVX    A,@DPTR
+003B58 F8                MOV     R0,A
+003B59 A3                INC     DPTR
+003B5A E0                MOVX    A,@DPTR
+003B5B F9                MOV     R1,A
+003B5C A3                INC     DPTR
+003B5D E0                MOVX    A,@DPTR
+003B5E FA                MOV     R2,A
+003B5F A3                INC     DPTR
+003B60 E0                MOVX    A,@DPTR
+003B61 FB                MOV     R3,A
+003B62 C3                CLR     C
+003B63 120565            LCALL   ?C?ULCMP
+003B66 4008              JC      ?C0013?ADC
    63: 		g_variable.battery_level_percentage = 100;
-003B0C 904CFB            MOV     DPTR,#g_variable+03CH
-003B0F 7464              MOV     A,#064H
-003B11 F0                MOVX    @DPTR,A
-003B12 805B              SJMP    ?C0012?ADC
-003B14         ?C0013?ADC:
+003B68 904CFB            MOV     DPTR,#g_variable+03CH
+003B6B 7464              MOV     A,#064H
+003B6D F0                MOVX    @DPTR,A
+003B6E 805B              SJMP    ?C0012?ADC
+003B70         ?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) );
-003B14 904CE0            MOV     DPTR,#g_variable+021H
-003B17 E0                MOVX    A,@DPTR
-003B18 FE                MOV     R6,A
-003B19 A3                INC     DPTR
-003B1A E0                MOVX    A,@DPTR
-003B1B FF                MOV     R7,A
-003B1C FB                MOV     R3,A
-003B1D AA06              MOV     R2,AR6
-003B1F E4                CLR     A
-003B20 904ED0            MOV     DPTR,#batValue
-003B23 E0                MOVX    A,@DPTR
-003B24 FC                MOV     R4,A
-003B25 A3                INC     DPTR
-003B26 E0                MOVX    A,@DPTR
-003B27 FD                MOV     R5,A
-003B28 A3                INC     DPTR
-003B29 E0                MOVX    A,@DPTR
-003B2A FE                MOV     R6,A
-003B2B A3                INC     DPTR
-003B2C E0                MOVX    A,@DPTR
-003B2D C3                CLR     C
-003B2E 9B                SUBB    A,R3
-003B2F FF                MOV     R7,A
-003B30 EE                MOV     A,R6
-003B31 9A                SUBB    A,R2
-003B32 FE                MOV     R6,A
-003B33 ED                MOV     A,R5
-003B34 9400              SUBB    A,#00H
-003B36 FD                MOV     R5,A
-003B37 EC                MOV     A,R4
-003B38 9400              SUBB    A,#00H
-003B3A FC                MOV     R4,A
-003B3B E4                CLR     A
-003B3C 7B64              MOV     R3,#064H
-003B3E FA                MOV     R2,A
-003B3F F9                MOV     R1,A
-003B40 F8                MOV     R0,A
-003B41 12043A            LCALL   ?C?LMUL
-003B44 C006              PUSH    AR6
-003B46 C007              PUSH    AR7
-003B48 904CE0            MOV     DPTR,#g_variable+021H
-003B4B E0                MOVX    A,@DPTR
-003B4C FE                MOV     R6,A
-003B4D A3                INC     DPTR
-003B4E E0                MOVX    A,@DPTR
-003B4F FF                MOV     R7,A
-003B50 C3                CLR     C
-003B51 904CFD            MOV     DPTR,#g_variable+03EH
-003B54 E0                MOVX    A,@DPTR
-003B55 9F                SUBB    A,R7
-003B56 FF                MOV     R7,A
-003B57 904CFC            MOV     DPTR,#g_variable+03DH
-003B5A E0                MOVX    A,@DPTR
-003B5B 9E                SUBB    A,R6
-003B5C FE                MOV     R6,A
-003B5D AB07              MOV     R3,AR7
-003B5F FA                MOV     R2,A
-003B60 E4                CLR     A
-003B61 F9                MOV     R1,A
-003B62 F8                MOV     R0,A
-003B63 D007              POP     AR7
-003B65 D006              POP     AR6
-003B67 1204C5            LCALL   ?C?ULDIV
-003B6A 904CFB            MOV     DPTR,#g_variable+03CH
-003B6D EF                MOV     A,R7
-003B6E F0                MOVX    @DPTR,A
-003B6F         ?C0012?ADC:
+003B70 904CE0            MOV     DPTR,#g_variable+021H
+003B73 E0                MOVX    A,@DPTR
+003B74 FE                MOV     R6,A
+003B75 A3                INC     DPTR
+003B76 E0                MOVX    A,@DPTR
+003B77 FF                MOV     R7,A
+003B78 FB                MOV     R3,A
+003B79 AA06              MOV     R2,AR6
+003B7B E4                CLR     A
+003B7C 904ED0            MOV     DPTR,#batValue
+003B7F E0                MOVX    A,@DPTR
+003B80 FC                MOV     R4,A
+003B81 A3                INC     DPTR
+003B82 E0                MOVX    A,@DPTR
+003B83 FD                MOV     R5,A
+003B84 A3                INC     DPTR
+003B85 E0                MOVX    A,@DPTR
+003B86 FE                MOV     R6,A
+003B87 A3                INC     DPTR
+003B88 E0                MOVX    A,@DPTR
+003B89 C3                CLR     C
+003B8A 9B                SUBB    A,R3
+003B8B FF                MOV     R7,A
+003B8C EE                MOV     A,R6
+003B8D 9A                SUBB    A,R2
+003B8E FE                MOV     R6,A
+003B8F ED                MOV     A,R5
+003B90 9400              SUBB    A,#00H
+003B92 FD                MOV     R5,A
+003B93 EC                MOV     A,R4
+003B94 9400              SUBB    A,#00H
+003B96 FC                MOV     R4,A
+003B97 E4                CLR     A
+003B98 7B64              MOV     R3,#064H
+003B9A FA                MOV     R2,A
+003B9B F9                MOV     R1,A
+003B9C F8                MOV     R0,A
+003B9D 12043A            LCALL   ?C?LMUL
+003BA0 C006              PUSH    AR6
+003BA2 C007              PUSH    AR7
+003BA4 904CE0            MOV     DPTR,#g_variable+021H
+003BA7 E0                MOVX    A,@DPTR
+003BA8 FE                MOV     R6,A
+003BA9 A3                INC     DPTR
+003BAA E0                MOVX    A,@DPTR
+003BAB FF                MOV     R7,A
+003BAC C3                CLR     C
+003BAD 904CFD            MOV     DPTR,#g_variable+03EH
+003BB0 E0                MOVX    A,@DPTR
+003BB1 9F                SUBB    A,R7
+003BB2 FF                MOV     R7,A
+003BB3 904CFC            MOV     DPTR,#g_variable+03DH
+003BB6 E0                MOVX    A,@DPTR
+003BB7 9E                SUBB    A,R6
+003BB8 FE                MOV     R6,A
+003BB9 AB07              MOV     R3,AR7
+003BBB FA                MOV     R2,A
+003BBC E4                CLR     A
+003BBD F9                MOV     R1,A
+003BBE F8                MOV     R0,A
+003BBF D007              POP     AR7
+003BC1 D006              POP     AR6
+003BC3 1204C5            LCALL   ?C?ULDIV
+003BC6 904CFB            MOV     DPTR,#g_variable+03CH
+003BC9 EF                MOV     A,R7
+003BCA F0                MOVX    @DPTR,A
+003BCB         ?C0012?ADC:
    66: 	
    67: 	if(batValue < g_variable.battery_level_shutdown)
-003B6F 904CE0            MOV     DPTR,#g_variable+021H
-003B72 E0                MOVX    A,@DPTR
-003B73 FE                MOV     R6,A
-003B74 A3                INC     DPTR
-003B75 E0                MOVX    A,@DPTR
-003B76 FF                MOV     R7,A
-003B77 E4                CLR     A
-003B78 FC                MOV     R4,A
-003B79 FD                MOV     R5,A
-003B7A 904ED0            MOV     DPTR,#batValue
-003B7D E0                MOVX    A,@DPTR
-003B7E F8                MOV     R0,A
-003B7F A3                INC     DPTR
-003B80 E0                MOVX    A,@DPTR
-003B81 F9                MOV     R1,A
-003B82 A3                INC     DPTR
-003B83 E0                MOVX    A,@DPTR
-003B84 FA                MOV     R2,A
-003B85 A3                INC     DPTR
-003B86 E0                MOVX    A,@DPTR
-003B87 FB                MOV     R3,A
-003B88 C3                CLR     C
-003B89 120565            LCALL   ?C?ULCMP
-003B8C 5008              JNC     ?C0015?ADC
+003BCB 904CE0            MOV     DPTR,#g_variable+021H
+003BCE E0                MOVX    A,@DPTR
+003BCF FE                MOV     R6,A
+003BD0 A3                INC     DPTR
+003BD1 E0                MOVX    A,@DPTR
+003BD2 FF                MOV     R7,A
+003BD3 E4                CLR     A
+003BD4 FC                MOV     R4,A
+003BD5 FD                MOV     R5,A
+003BD6 904ED0            MOV     DPTR,#batValue
+003BD9 E0                MOVX    A,@DPTR
+003BDA F8                MOV     R0,A
+003BDB A3                INC     DPTR
+003BDC E0                MOVX    A,@DPTR
+003BDD F9                MOV     R1,A
+003BDE A3                INC     DPTR
+003BDF E0                MOVX    A,@DPTR
+003BE0 FA                MOV     R2,A
+003BE1 A3                INC     DPTR
+003BE2 E0                MOVX    A,@DPTR
+003BE3 FB                MOV     R3,A
+003BE4 C3                CLR     C
+003BE5 120565            LCALL   ?C?ULCMP
+003BE8 5008              JNC     ?C0015?ADC
    68: 	{
    69: 		g_variable.battery_status = BAT_STATUS_SHUT_DOWN;
-003B8E 904CD5            MOV     DPTR,#g_variable+016H
-003B91 7402              MOV     A,#02H
-003B93 F0                MOVX    @DPTR,A
+003BEA 904CD5            MOV     DPTR,#g_variable+016H
+003BED 7402              MOV     A,#02H
+003BEF F0                MOVX    @DPTR,A
    70: 	}
-003B94 8056              SJMP    ?C0016?ADC
-003B96         ?C0015?ADC:
+003BF0 8056              SJMP    ?C0016?ADC
+003BF2         ?C0015?ADC:
    71: 	else
    72: 	{
    73: 		if (batValue < g_variable.battery_level_low)
-003B96 904CDE            MOV     DPTR,#g_variable+01FH
-003B99 E0                MOVX    A,@DPTR
-003B9A FE                MOV     R6,A
-003B9B A3                INC     DPTR
-003B9C E0                MOVX    A,@DPTR
-003B9D FF                MOV     R7,A
-003B9E E4                CLR     A
-003B9F FC                MOV     R4,A
-003BA0 FD                MOV     R5,A
-003BA1 904ED0            MOV     DPTR,#batValue
-003BA4 E0                MOVX    A,@DPTR
-003BA5 F8                MOV     R0,A
-003BA6 A3                INC     DPTR
-003BA7 E0                MOVX    A,@DPTR
-003BA8 F9                MOV     R1,A
-003BA9 A3                INC     DPTR
-003BAA E0                MOVX    A,@DPTR
-003BAB FA                MOV     R2,A
-003BAC A3                INC     DPTR
-003BAD E0                MOVX    A,@DPTR
-003BAE FB                MOV     R3,A
-003BAF C3                CLR     C
-003BB0 120565            LCALL   ?C?ULCMP
-003BB3 501D              JNC     ?C0017?ADC
+003BF2 904CDE            MOV     DPTR,#g_variable+01FH
+003BF5 E0                MOVX    A,@DPTR
+003BF6 FE                MOV     R6,A
+003BF7 A3                INC     DPTR
+003BF8 E0                MOVX    A,@DPTR
+003BF9 FF                MOV     R7,A
+003BFA E4                CLR     A
+003BFB FC                MOV     R4,A
+003BFC FD                MOV     R5,A
+003BFD 904ED0            MOV     DPTR,#batValue
+003C00 E0                MOVX    A,@DPTR
+003C01 F8                MOV     R0,A
+003C02 A3                INC     DPTR
+003C03 E0                MOVX    A,@DPTR
+003C04 F9                MOV     R1,A
+003C05 A3                INC     DPTR
+003C06 E0                MOVX    A,@DPTR
+003C07 FA                MOV     R2,A
+003C08 A3                INC     DPTR
+003C09 E0                MOVX    A,@DPTR
+003C0A FB                MOV     R3,A
+003C0B C3                CLR     C
+003C0C 120565            LCALL   ?C?ULCMP
+003C0F 501D              JNC     ?C0017?ADC
    74: 		{
    75: 			g_variable.battery_status = BAT_STATUS_LOW;
-003BB5 904CD5            MOV     DPTR,#g_variable+016H
-003BB8 7401              MOV     A,#01H
-003BBA F0                MOVX    @DPTR,A
+003C11 904CD5            MOV     DPTR,#g_variable+016H
+003C14 7401              MOV     A,#01H
+003C16 F0                MOVX    @DPTR,A
    76: 			if(!g_variable.g24_long_sleep_flag)
-003BBB 904D02            MOV     DPTR,#g_variable+043H
-003BBE E0                MOVX    A,@DPTR
-003BBF 702B              JNZ     ?C0016?ADC
+003C17 904D02            MOV     DPTR,#g_variable+043H
+003C1A E0                MOVX    A,@DPTR
+003C1B 702B              JNZ     ?C0016?ADC
    77: 			{
    78: 			m_24g_enter_hibernate[0]	= 0x00;
-003BC1 904D40            MOV     DPTR,#m_24g_enter_hibernate
-003BC4 F0                MOVX    @DPTR,A
+003C1D 904D40            MOV     DPTR,#m_24g_enter_hibernate
+003C20 F0                MOVX    @DPTR,A
    79: 			m_24g_enter_hibernate[1]	= 0x48;
-003BC5 A3                INC     DPTR
-003BC6 7448              MOV     A,#048H
-003BC8 F0                MOVX    @DPTR,A
+003C21 A3                INC     DPTR
+003C22 7448              MOV     A,#048H
+003C24 F0                MOVX    @DPTR,A
    80: 			m_24g_enter_hibernate[2]	= 0x12;		// 100ms
-003BC9 A3                INC     DPTR
-003BCA 7412              MOV     A,#012H
-003BCC F0                MOVX    @DPTR,A
+003C25 A3                INC     DPTR
+003C26 7412              MOV     A,#012H
+003C28 F0                MOVX    @DPTR,A
    81: 			m_24g_enter_hibernate[3]	= 0x00;
-003BCD E4                CLR     A
-003BCE A3                INC     DPTR
-003BCF F0                MOVX    @DPTR,A
+003C29 E4                CLR     A
+003C2A A3                INC     DPTR
+003C2B F0                MOVX    @DPTR,A
    82: 			}
    83: 		}
-003BD0 801A              SJMP    ?C0016?ADC
-003BD2         ?C0017?ADC:
+003C2C 801A              SJMP    ?C0016?ADC
+003C2E         ?C0017?ADC:
    84: 		else
    85: 		{
    86: 			g_variable.battery_status = BAT_STATUS_NONE;
-003BD2 E4                CLR     A
-003BD3 904CD5            MOV     DPTR,#g_variable+016H
-003BD6 F0                MOVX    @DPTR,A
+003C2E E4                CLR     A
+003C2F 904CD5            MOV     DPTR,#g_variable+016H
+003C32 F0                MOVX    @DPTR,A
    87: 			if(!g_variable.g24_long_sleep_flag)
-003BD7 904D02            MOV     DPTR,#g_variable+043H
-003BDA E0                MOVX    A,@DPTR
-003BDB 700F              JNZ     ?C0016?ADC
+003C33 904D02            MOV     DPTR,#g_variable+043H
+003C36 E0                MOVX    A,@DPTR
+003C37 700F              JNZ     ?C0016?ADC
    88: 			{
    89: 			m_24g_enter_hibernate[0]	= 0x00;
-003BDD 904D40            MOV     DPTR,#m_24g_enter_hibernate
-003BE0 F0                MOVX    @DPTR,A
+003C39 904D40            MOV     DPTR,#m_24g_enter_hibernate
+003C3C F0                MOVX    @DPTR,A
    90: 			m_24g_enter_hibernate[1]	= 0x48;
-003BE1 A3                INC     DPTR
-003BE2 7448              MOV     A,#048H
-003BE4 F0                MOVX    @DPTR,A
+003C3D A3                INC     DPTR
+003C3E 7448              MOV     A,#048H
+003C40 F0                MOVX    @DPTR,A
    91: 			m_24g_enter_hibernate[2]   = 0x5d;		// 510ms
-003BE5 A3                INC     DPTR
-003BE6 745D              MOV     A,#05DH
-003BE8 F0                MOVX    @DPTR,A
+003C41 A3                INC     DPTR
+003C42 745D              MOV     A,#05DH
+003C44 F0                MOVX    @DPTR,A
    92: 			m_24g_enter_hibernate[3]	= 0x00;
-003BE9 E4                CLR     A
-003BEA A3                INC     DPTR
-003BEB F0                MOVX    @DPTR,A
+003C45 E4                CLR     A
+003C46 A3                INC     DPTR
+003C47 F0                MOVX    @DPTR,A
    93: 			}
    94: 		}
    95: 	}
-003BEC         ?C0016?ADC:
+003C48         ?C0016?ADC:
    96: 
    97: 	g_variable.last_battery_status = g_variable.battery_status;
-003BEC 904CD5            MOV     DPTR,#g_variable+016H
-003BEF E0                MOVX    A,@DPTR
-003BF0 904D01            MOV     DPTR,#g_variable+042H
-003BF3 F0                MOVX    @DPTR,A
+003C48 904CD5            MOV     DPTR,#g_variable+016H
+003C4B E0                MOVX    A,@DPTR
+003C4C 904D01            MOV     DPTR,#g_variable+042H
+003C4F F0                MOVX    @DPTR,A
    98: #endif	
    99: }
-003BF4         ?C0006?ADC:
-003BF4 22                RET     
+003C50         ?C0006?ADC:
+003C50 22                RET     
 ----- FUNCTION YC_adc_check (END) -------
 
 
 ----- FUNCTION _bufsize (BEGIN) -----
-003BF5 904EDD            MOV     DPTR,#rptr
-003BF8 EE                MOV     A,R6
-003BF9 F0                MOVX    @DPTR,A
-003BFA A3                INC     DPTR
-003BFB EF                MOV     A,R7
-003BFC F0                MOVX    @DPTR,A
-003BFD 904EDF            MOV     DPTR,#wptr
-003C00 EC                MOV     A,R4
-003C01 F0                MOVX    @DPTR,A
-003C02 A3                INC     DPTR
-003C03 ED                MOV     A,R5
-003C04 F0                MOVX    @DPTR,A
+003C51 904EDD            MOV     DPTR,#rptr
+003C54 EE                MOV     A,R6
+003C55 F0                MOVX    @DPTR,A
+003C56 A3                INC     DPTR
+003C57 EF                MOV     A,R7
+003C58 F0                MOVX    @DPTR,A
+003C59 904EDF            MOV     DPTR,#wptr
+003C5C EC                MOV     A,R4
+003C5D F0                MOVX    @DPTR,A
+003C5E A3                INC     DPTR
+003C5F ED                MOV     A,R5
+003C60 F0                MOVX    @DPTR,A
 ;---- Variable 'buflen' assigned to Register 'R3' ----
-003C05 904EDF            MOV     DPTR,#wptr
-003C08 E0                MOVX    A,@DPTR
-003C09 FE                MOV     R6,A
-003C0A A3                INC     DPTR
-003C0B E0                MOVX    A,@DPTR
-003C0C FF                MOV     R7,A
-003C0D D3                SETB    C
-003C0E 904EDE            MOV     DPTR,#rptr+01H
-003C11 E0                MOVX    A,@DPTR
-003C12 9F                SUBB    A,R7
-003C13 904EDD            MOV     DPTR,#rptr
-003C16 E0                MOVX    A,@DPTR
-003C17 9E                SUBB    A,R6
-003C18 4016              JC      ?C0001?IPC
-003C1A 904EDF            MOV     DPTR,#wptr
-003C1D E0                MOVX    A,@DPTR
-003C1E FE                MOV     R6,A
-003C1F A3                INC     DPTR
-003C20 E0                MOVX    A,@DPTR
-003C21 FF                MOV     R7,A
-003C22 904EDE            MOV     DPTR,#rptr+01H
-003C25 E0                MOVX    A,@DPTR
-003C26 9F                SUBB    A,R7
-003C27 FF                MOV     R7,A
-003C28 904EDD            MOV     DPTR,#rptr
-003C2B E0                MOVX    A,@DPTR
-003C2C 9E                SUBB    A,R6
-003C2D FE                MOV     R6,A
-003C2E 801E              SJMP    ?C0002?IPC
-003C30         ?C0001?IPC:
-003C30 904EDD            MOV     DPTR,#rptr
-003C33 E0                MOVX    A,@DPTR
-003C34 FE                MOV     R6,A
-003C35 A3                INC     DPTR
-003C36 E0                MOVX    A,@DPTR
-003C37 FF                MOV     R7,A
-003C38 C3                CLR     C
-003C39 904EE0            MOV     DPTR,#wptr+01H
-003C3C E0                MOVX    A,@DPTR
-003C3D 9F                SUBB    A,R7
-003C3E FF                MOV     R7,A
-003C3F 904EDF            MOV     DPTR,#wptr
-003C42 E0                MOVX    A,@DPTR
-003C43 9E                SUBB    A,R6
-003C44 FE                MOV     R6,A
-003C45 AD03              MOV     R5,AR3
-003C47 C3                CLR     C
-003C48 EB                MOV     A,R3
-003C49 9F                SUBB    A,R7
-003C4A FF                MOV     R7,A
-003C4B E4                CLR     A
-003C4C 9E                SUBB    A,R6
-003C4D FE                MOV     R6,A
-003C4E         ?C0002?IPC:
-003C4E 22                RET     
+003C61 904EDF            MOV     DPTR,#wptr
+003C64 E0                MOVX    A,@DPTR
+003C65 FE                MOV     R6,A
+003C66 A3                INC     DPTR
+003C67 E0                MOVX    A,@DPTR
+003C68 FF                MOV     R7,A
+003C69 D3                SETB    C
+003C6A 904EDE            MOV     DPTR,#rptr+01H
+003C6D E0                MOVX    A,@DPTR
+003C6E 9F                SUBB    A,R7
+003C6F 904EDD            MOV     DPTR,#rptr
+003C72 E0                MOVX    A,@DPTR
+003C73 9E                SUBB    A,R6
+003C74 4016              JC      ?C0001?IPC
+003C76 904EDF            MOV     DPTR,#wptr
+003C79 E0                MOVX    A,@DPTR
+003C7A FE                MOV     R6,A
+003C7B A3                INC     DPTR
+003C7C E0                MOVX    A,@DPTR
+003C7D FF                MOV     R7,A
+003C7E 904EDE            MOV     DPTR,#rptr+01H
+003C81 E0                MOVX    A,@DPTR
+003C82 9F                SUBB    A,R7
+003C83 FF                MOV     R7,A
+003C84 904EDD            MOV     DPTR,#rptr
+003C87 E0                MOVX    A,@DPTR
+003C88 9E                SUBB    A,R6
+003C89 FE                MOV     R6,A
+003C8A 801E              SJMP    ?C0002?IPC
+003C8C         ?C0001?IPC:
+003C8C 904EDD            MOV     DPTR,#rptr
+003C8F E0                MOVX    A,@DPTR
+003C90 FE                MOV     R6,A
+003C91 A3                INC     DPTR
+003C92 E0                MOVX    A,@DPTR
+003C93 FF                MOV     R7,A
+003C94 C3                CLR     C
+003C95 904EE0            MOV     DPTR,#wptr+01H
+003C98 E0                MOVX    A,@DPTR
+003C99 9F                SUBB    A,R7
+003C9A FF                MOV     R7,A
+003C9B 904EDF            MOV     DPTR,#wptr
+003C9E E0                MOVX    A,@DPTR
+003C9F 9E                SUBB    A,R6
+003CA0 FE                MOV     R6,A
+003CA1 AD03              MOV     R5,AR3
+003CA3 C3                CLR     C
+003CA4 EB                MOV     A,R3
+003CA5 9F                SUBB    A,R7
+003CA6 FF                MOV     R7,A
+003CA7 E4                CLR     A
+003CA8 9E                SUBB    A,R6
+003CA9 FE                MOV     R6,A
+003CAA         ?C0002?IPC:
+003CAA 22                RET     
 ----- FUNCTION _bufsize (END) -------
 
 
 ----- FUNCTION _IPC_TxBREDRHidData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C4F 900BE7            MOV     DPTR,#ipcSendBuff
-003C52 7403              MOV     A,#03H
-003C54 F0                MOVX    @DPTR,A
-003C55 ED                MOV     A,R5
-003C56 6003              JZ      ?C0017?IPC
-003C58         ?C0016?IPC:
-003C58 1217DC            LCALL   _IPC_TxData
-003C5B         ?C0017?IPC:
-003C5B 22                RET     
+003CAB 900BE7            MOV     DPTR,#ipcSendBuff
+003CAE 7403              MOV     A,#03H
+003CB0 F0                MOVX    @DPTR,A
+003CB1 ED                MOV     A,R5
+003CB2 6003              JZ      ?C0017?IPC
+003CB4         ?C0016?IPC:
+003CB4 1217DC            LCALL   _IPC_TxData
+003CB7         ?C0017?IPC:
+003CB7 22                RET     
 ----- FUNCTION _IPC_TxBREDRHidData (END) -------
 
 
 ----- FUNCTION _IPC_TxSppData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C5C 900BE7            MOV     DPTR,#ipcSendBuff
-003C5F 7404              MOV     A,#04H
-003C61 F0                MOVX    @DPTR,A
-003C62 0217DC            LJMP    _IPC_TxData
+003CB8 900BE7            MOV     DPTR,#ipcSendBuff
+003CBB 7404              MOV     A,#04H
+003CBD F0                MOVX    @DPTR,A
+003CBE 0217DC            LJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxSppData (END) -------
 
 
 ----- FUNCTION _IPC_TxBleData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003C65 900BE7            MOV     DPTR,#ipcSendBuff
-003C68 7405              MOV     A,#05H
-003C6A F0                MOVX    @DPTR,A
-003C6B 0217DC            LJMP    _IPC_TxData
+003CC1 900BE7            MOV     DPTR,#ipcSendBuff
+003CC4 7405              MOV     A,#05H
+003CC6 F0                MOVX    @DPTR,A
+003CC7 0217DC            LJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxBleData (END) -------
 
 
 ----- FUNCTION IPC_GetBBDIsconnectReason (BEGIN) -----
-003C6E 900446            MOV     DPTR,#bbDisReason
-003C71 E0                MOVX    A,@DPTR
-003C72 FF                MOV     R7,A
-003C73 22                RET     
+003CCA 900446            MOV     DPTR,#bbDisReason
+003CCD E0                MOVX    A,@DPTR
+003CCE FF                MOV     R7,A
+003CCF 22                RET     
 ----- FUNCTION IPC_GetBBDIsconnectReason (END) -------
 
 
 ----- FUNCTION YC_Ice_break (BEGIN) -----
-003C74 908280            MOV     DPTR,#08280H
-003C77 7401              MOV     A,#01H
-003C79 F0                MOVX    @DPTR,A
-003C7A 22                RET     
+003CD0 908280            MOV     DPTR,#08280H
+003CD3 7401              MOV     A,#01H
+003CD5 F0                MOVX    @DPTR,A
+003CD6 22                RET     
 ----- FUNCTION YC_Ice_break (END) -------
 
 
 ----- FUNCTION _GPIO_ClearWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-003C7B EF                MOV     A,R7
-003C7C F4                CPL     A
-003C7D 603A              JZ      ?C0023?GPIO
-003C7F         ?C0022?GPIO:
-003C7F EF                MOV     A,R7
-003C80 5407              ANL     A,#07H
-003C82 FE                MOV     R6,A
+003CD7 EF                MOV     A,R7
+003CD8 F4                CPL     A
+003CD9 603A              JZ      ?C0023?GPIO
+003CDB         ?C0022?GPIO:
+003CDB EF                MOV     A,R7
+003CDC 5407              ANL     A,#07H
+003CDE FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-003C83 EF                MOV     A,R7
-003C84 13                RRC     A
-003C85 13                RRC     A
-003C86 13                RRC     A
-003C87 5403              ANL     A,#03H
-003C89 FF                MOV     R7,A
+003CDF EF                MOV     A,R7
+003CE0 13                RRC     A
+003CE1 13                RRC     A
+003CE2 13                RRC     A
+003CE3 5403              ANL     A,#03H
+003CE5 FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-003C8A 24A3              ADD     A,#LOW YC_GPIOWakeupL
-003C8C F582              MOV     DPL,A
-003C8E E4                CLR     A
-003C8F 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-003C91 F583              MOV     DPH,A
-003C93 C083              PUSH    DPH
-003C95 C082              PUSH    DPL
-003C97 E0                MOVX    A,@DPTR
-003C98 FD                MOV     R5,A
-003C99 7401              MOV     A,#01H
-003C9B A806              MOV     R0,AR6
-003C9D 08                INC     R0
-003C9E 8002              SJMP    ?C0043?GPIO
-003CA0         ?C0042?GPIO:
-003CA0 C3                CLR     C
-003CA1 33                RLC     A
-003CA2         ?C0043?GPIO:
-003CA2 D8FC              DJNZ    R0,?C0042?GPIO
-003CA4 F4                CPL     A
-003CA5 FC                MOV     R4,A
-003CA6 5D                ANL     A,R5
-003CA7 D082              POP     DPL
-003CA9 D083              POP     DPH
-003CAB F0                MOVX    @DPTR,A
-003CAC 74A7              MOV     A,#LOW YC_GPIOWakeupH
-003CAE 2F                ADD     A,R7
-003CAF F582              MOV     DPL,A
-003CB1 E4                CLR     A
-003CB2 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-003CB4 F583              MOV     DPH,A
-003CB6 E0                MOVX    A,@DPTR
-003CB7 5C                ANL     A,R4
-003CB8 F0                MOVX    @DPTR,A
-003CB9         ?C0023?GPIO:
-003CB9 22                RET     
+003CE6 24A3              ADD     A,#LOW YC_GPIOWakeupL
+003CE8 F582              MOV     DPL,A
+003CEA E4                CLR     A
+003CEB 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+003CED F583              MOV     DPH,A
+003CEF C083              PUSH    DPH
+003CF1 C082              PUSH    DPL
+003CF3 E0                MOVX    A,@DPTR
+003CF4 FD                MOV     R5,A
+003CF5 7401              MOV     A,#01H
+003CF7 A806              MOV     R0,AR6
+003CF9 08                INC     R0
+003CFA 8002              SJMP    ?C0043?GPIO
+003CFC         ?C0042?GPIO:
+003CFC C3                CLR     C
+003CFD 33                RLC     A
+003CFE         ?C0043?GPIO:
+003CFE D8FC              DJNZ    R0,?C0042?GPIO
+003D00 F4                CPL     A
+003D01 FC                MOV     R4,A
+003D02 5D                ANL     A,R5
+003D03 D082              POP     DPL
+003D05 D083              POP     DPH
+003D07 F0                MOVX    @DPTR,A
+003D08 74A7              MOV     A,#LOW YC_GPIOWakeupH
+003D0A 2F                ADD     A,R7
+003D0B F582              MOV     DPL,A
+003D0D E4                CLR     A
+003D0E 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+003D10 F583              MOV     DPH,A
+003D12 E0                MOVX    A,@DPTR
+003D13 5C                ANL     A,R4
+003D14 F0                MOVX    @DPTR,A
+003D15         ?C0023?GPIO:
+003D15 22                RET     
 ----- FUNCTION _GPIO_ClearWakeup (END) -------
 
 
Index: c51/output/FW.HTM
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/FW.HTM	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/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>05/27/2023  14:38:01</b><p>
+Creation time: <b>05/29/2023  15:30:35</b><p>
 
 <hr>
 
@@ -64,14 +64,14 @@
 <li><a href="#S193">?PR?_GPIO_SETINPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S97"></a>?PR?LED_DEVICE_POWERON?LED (C:0034DEH - C:003500H)</h2>
+<h2><a name="S97"></a>?PR?LED_DEVICE_POWERON?LED (C:003539H - C:00355BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S185">?PR?_GPIO_SETOUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S185">?PR?_GPIO_SETOUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S109"></a>?PR?_KB_CB_HID?SYS (C:0037C7H - C:0037D6H)</h2>
+<h2><a name="S109"></a>?PR?_KB_CB_HID?SYS (C:0036BAH - C:0036C9H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S218">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -114,7 +114,7 @@
 <li><a href="#S115">?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S119"></a>?PR?KB_CB_TIMER100MS?SYS (C:00365FH - C:0037C6H)</h2>
+<h2><a name="S119"></a>?PR?KB_CB_TIMER100MS?SYS (C:003916H - C:003A7EH)</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>
@@ -152,7 +152,7 @@
 <li><a href="#S121">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S141"></a>?PR?_IPC_TXSPPDATA?IPC (C:003C5CH - C:003C64H)</h2>
+<h2><a name="S141"></a>?PR?_IPC_TXSPPDATA?IPC (C:003CB8H - C:003CC0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S137">?PR?_IPC_TXDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -453,7 +453,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:002B42H - C:002F5EH)</h2>
+<h2><a name="S75"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:002B42H - C:002FBEH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S218">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -466,7 +466,7 @@
 <li><a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S77"></a>?PR?_KB_MULTIKEY_SETUP?KB_PROCESS (C:002F5FH - C:00327FH)</h2>
+<h2><a name="S77"></a>?PR?_KB_MULTIKEY_SETUP?KB_PROCESS (C:002FBFH - C:0032DAH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S218">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S70">?PR?_KB_MOTION_KEYSCAN?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -487,14 +487,14 @@
 <li><a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S80"></a>?PR?_KEYIN?KEYSCAN (C:003280H - C:0032D5H)</h2>
+<h2><a name="S80"></a>?PR?_KEYIN?KEYSCAN (C:0032DBH - C:003330H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S81"></a>?PR?_KEYOUT?KEYSCAN (C:0032D6H - C:00337FH)</h2>
+<h2><a name="S81"></a>?PR?_KEYOUT?KEYSCAN (C:003331H - C:0033DAH)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -539,7 +539,7 @@
 <li><a href="#S121">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S89"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:003380H - C:0034DDH)</h2>
+<h2><a name="S89"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:0033DBH - C:003538H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S93">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -639,7 +639,7 @@
 <li><a href="#S72">?PR?_KB_DEVICE_SELECT?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S102"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:003501H - C:003513H)</h2>
+<h2><a name="S102"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:00355CH - C:00356EH)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S103">?PR?SYSTEM_HARDWARE_INIT?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -660,7 +660,7 @@
 <li><a href="#S111">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S104"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:003514H - C:003548H)</h2>
+<h2><a name="S104"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:00356FH - C:0035A3H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S124">?PR?YC_ADC_INIT?ADC</a>) Top=2 Bytes (<a href="#S111">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -673,7 +673,7 @@
 <li><a href="#S111">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S105"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:003654H - C:00365CH)</h2>
+<h2><a name="S105"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:0036AFH - C:0036B7H)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S108">?PR?SYSTEM_RESET_CONNECT?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -709,7 +709,7 @@
 <li><a href="#S121">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S108"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:00365DH - C:00365EH)</h2>
+<h2><a name="S108"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:0036B8H - C:0036B9H)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S119">?PR?KB_CB_TIMER100MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -728,7 +728,7 @@
 <li><a href="#S118">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S114"></a>?PR?YC_CONNECT_TIMEOUT_500MS?SYS (C:0037D7H - C:0038CEH)</h2>
+<h2><a name="S114"></a>?PR?YC_CONNECT_TIMEOUT_500MS?SYS (C:0036CAH - C:0037C1H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=12 Bytes (<a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>) Top=2 Bytes (<a href="#S118">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -774,7 +774,7 @@
 <li><a href="#S118">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S117"></a>?PR?KB_BUTTON_PRESS_TIMER500MS?SYS (C:0038CFH - C:003A22H)</h2>
+<h2><a name="S117"></a>?PR?KB_BUTTON_PRESS_TIMER500MS?SYS (C:0037C2H - C:003915H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=10 Bytes (<a href="#S96">?PR?LED_ALL_SHUTDOWN?LED</a>) Top=2 Bytes (<a href="#S118">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -799,7 +799,7 @@
 <li><a href="#S121">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S124"></a>?PR?YC_ADC_INIT?ADC (C:003549H - C:003653H)</h2>
+<h2><a name="S124"></a>?PR?YC_ADC_INIT?ADC (C:0035A4H - C:0036AEH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S218">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S104">?PR?SYSTEM_SOFTWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -811,7 +811,7 @@
 <li><a href="#S104">?PR?SYSTEM_SOFTWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S125"></a>?PR?YC_ADC_CHECK?ADC (C:003A23H - C:003BF4H)</h2>
+<h2><a name="S125"></a>?PR?YC_ADC_CHECK?ADC (C:003A7FH - C:003C50H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S218">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S127">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -835,7 +835,7 @@
 <li><a href="#S118">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S129"></a>?PR?_BUFSIZE?IPC (C:003BF5H - C:003C4EH)</h2>
+<h2><a name="S129"></a>?PR?_BUFSIZE?IPC (C:003C51H - C:003CAAH)</h2>
 <p><br><b>Maximum Stack:</b> Top=12 Bytes (<a href="#S133">?PR?_IPCTX?IPC</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -905,7 +905,7 @@
 <li><a href="#S141">?PR?_IPC_TXSPPDATA?IPC</a></li>
 </ul>
 
-<h2><a name="S139"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:003C4FH - C:003C5BH)</h2>
+<h2><a name="S139"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:003CABH - C:003CB7H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S137">?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>
@@ -924,7 +924,7 @@
 <li><a href="#S58">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S142"></a>?PR?_IPC_TXBLEDATA?IPC (C:003C65H - C:003C6DH)</h2>
+<h2><a name="S142"></a>?PR?_IPC_TXBLEDATA?IPC (C:003CC1H - C:003CC9H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S137">?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>
Index: c51/output/FW.MAP
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/FW.MAP	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/FW.MAP	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               05/27/2023  14:38:01  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               05/29/2023  15:30:34  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   000392H   XDATA
-C:000000H   C:000000H   C:00FFFFH   003C04H   CODE
+C:000000H   C:000000H   C:00FFFFH   003C60H   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
@@ -203,29 +203,29 @@
 002A57H   002B04H   0000AEH   BYTE   UNIT     CODE           ?PR?_KB_DEVICE_SELECT?KB_PROCESS
 002B05H   002B1CH   000018H   BYTE   UNIT     CODE           ?PR?SYSTEM_CLEAR_TIMER_STATUS?SYS
 002B1DH   002B41H   000025H   BYTE   UNIT     CODE           ?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS
-002B42H   002F5EH   00041DH   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
-002F5FH   00327FH   000321H   BYTE   UNIT     CODE           ?PR?_KB_MULTIKEY_SETUP?KB_PROCESS
-003280H   0032D5H   000056H   BYTE   UNIT     CODE           ?PR?_KEYIN?KEYSCAN
-0032D6H   00337FH   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
-003380H   0034DDH   00015EH   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
-0034DEH   003500H   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
-003501H   003513H   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
-003514H   003548H   000035H   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
-003549H   003653H   00010BH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
-003654H   00365CH   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
-00365DH   00365EH   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
-00365FH   0037C6H   000168H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
-0037C7H   0037D6H   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
-0037D7H   0038CEH   0000F8H   BYTE   UNIT     CODE           ?PR?YC_CONNECT_TIMEOUT_500MS?SYS
-0038CFH   003A22H   000154H   BYTE   UNIT     CODE           ?PR?KB_BUTTON_PRESS_TIMER500MS?SYS
-003A23H   003BF4H   0001D2H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
-003BF5H   003C4EH   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
-003C4FH   003C5BH   00000DH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
-003C5CH   003C64H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
-003C65H   003C6DH   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
-003C6EH   003C73H   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
-003C74H   003C7AH   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
-003C7BH   003CB9H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
+002B42H   002FBEH   00047DH   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
+002FBFH   0032DAH   00031CH   BYTE   UNIT     CODE           ?PR?_KB_MULTIKEY_SETUP?KB_PROCESS
+0032DBH   003330H   000056H   BYTE   UNIT     CODE           ?PR?_KEYIN?KEYSCAN
+003331H   0033DAH   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
+0033DBH   003538H   00015EH   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
+003539H   00355BH   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
+00355CH   00356EH   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
+00356FH   0035A3H   000035H   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
+0035A4H   0036AEH   00010BH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
+0036AFH   0036B7H   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
+0036B8H   0036B9H   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
+0036BAH   0036C9H   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
+0036CAH   0037C1H   0000F8H   BYTE   UNIT     CODE           ?PR?YC_CONNECT_TIMEOUT_500MS?SYS
+0037C2H   003915H   000154H   BYTE   UNIT     CODE           ?PR?KB_BUTTON_PRESS_TIMER500MS?SYS
+003916H   003A7EH   000169H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
+003A7FH   003C50H   0001D2H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
+003C51H   003CAAH   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
+003CABH   003CB7H   00000DH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
+003CB8H   003CC0H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
+003CC1H   003CC9H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
+003CCAH   003CCFH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
+003CD0H   003CD6H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
+003CD7H   003D15H   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
@@ -414,7 +414,7 @@
       0100244FH   CODE     ---       _compare_str
       01000F41H   CODE     ---       _Delay1ms
       010022A6H   CODE     ---       _dmemcpy
-      01003C7BH   CODE     ---       _GPIO_ClearWakeup
+      01003CD7H   CODE     ---       _GPIO_ClearWakeup
       01001E2AH   CODE     ---       _GPIO_FlipOutBit
       01001DE5H   CODE     ---       _GPIO_GetInputStatus
       01001058H   CODE     ---       _GPIO_SetInput
@@ -430,16 +430,16 @@
       01001ABCH   CODE     ---       _IIC_WriteBlock
       01001DD8H   CODE     ---       _IPC_Initialize
       010017D6H   CODE     ---       _IPC_Tx24GData
-      01003C65H   CODE     ---       _IPC_TxBleData
-      01003C4FH   CODE     ---       _IPC_TxBREDRHidData
+      01003CC1H   CODE     ---       _IPC_TxBleData
+      01003CABH   CODE     ---       _IPC_TxBREDRHidData
       0100085FH   CODE     ---       _IPC_TxControlCmd
       010017DCH   CODE     ---       _IPC_TxData
       01001533H   CODE     ---       _IPC_TxHidData
-      01003C5CH   CODE     ---       _IPC_TxSppData
+      01003CB8H   CODE     ---       _IPC_TxSppData
       01002B1DH   CODE     ---       _kb_combination_key_press
       01002A57H   CODE     ---       _kb_device_select
       01001248H   CODE     ---       _kb_motion_keyscan
-      01002F5FH   CODE     ---       _kb_multikey_setup
+      01002FBFH   CODE     ---       _kb_multikey_setup
       01001706H   CODE     ---       _kb_send_combination_key
       010027AFH   CODE     ---       _kb_set_multikey
       010027CAH   CODE     ---       _kb_set_systemkey
@@ -474,7 +474,7 @@
       02004DE1H   XDATA    BYTE      iOS_rec_pinCode
       01001F22H   CODE     ---       IPC_AbandonLpm
       01001B79H   CODE     ---       IPC_DealSingleStep
-      01003C6EH   CODE     ---       IPC_GetBBDIsconnectReason
+      01003CCAH   CODE     ---       IPC_GetBBDIsconnectReason
       01002729H   CODE     ---       IPC_IsTxBuffEmpty
       01001B6BH   CODE     ---       IPC_WaitLpm
       02000550H   XDATA    ---       ipcPin
@@ -483,13 +483,13 @@
       02000BE7H   XDATA    ---       ipcSendBuff
       01002771H   CODE     ---       kb_24g_get_led_status
       010027E5H   CODE     ---       kb_bt_pincode_enter
-      010038CFH   CODE     ---       kb_button_press_timer500ms
+      010037C2H   CODE     ---       kb_button_press_timer500ms
       01001740H   CODE     ---       kb_need_keyscan
       02004DE8H   XDATA    BYTE      key_value_temp
       02004DE4H   XDATA    BYTE      keyCount
       01002499H   CODE     ---       KS_GetCurrentEvt
       01001105H   CODE     ---       KS_Initialize
-      01003380H   CODE     ---       KS_ScanMatrix
+      010033DBH   CODE     ---       KS_ScanMatrix
       010018EAH   CODE     ---       KS_Unistall
       02004213H   XDATA    BYTE      kscurrmult
       02004EA4H   XDATA    ---       ksEvtPool
@@ -504,7 +504,7 @@
       02004DDAH   XDATA    BYTE      le_send_battery_level_flag
       01000FF7H   CODE     ---       LED_all_shutdown
       01000FC1H   CODE     ---       LED_device_poweroff
-      010034DEH   CODE     ---       LED_device_poweron
+      01003539H   CODE     ---       LED_device_poweron
       0100181FH   CODE     ---       LED_handle
       01001FA8H   CODE     ---       LED_timer500ms
       02004DDCH   XDATA    BYTE      long_press_flag
@@ -554,23 +554,23 @@
       01001EF3H   CODE     ---       System_G24_long_lpm
       02004DE9H   XDATA    BYTE      system_key_press
       01000F38H   CODE     ---       System_long_sleep
-      0100365DH   CODE     ---       System_Reset_Connect
-      01003514H   CODE     ---       System_Software_init
-      01003A23H   CODE     ---       YC_adc_check
+      010036B8H   CODE     ---       System_Reset_Connect
+      0100356FH   CODE     ---       System_Software_init
+      01003A7FH   CODE     ---       YC_adc_check
       01001F96H   CODE     ---       YC_adc_check_timer500ms
-      01003549H   CODE     ---       YC_adc_init
+      010035A4H   CODE     ---       YC_adc_init
       01000FA2H   CODE     ---       YC_cancel_reconnect
       01001802H   CODE     ---       YC_check_is_connected
       01001FA9H   CODE     ---       YC_check_need_reconnected
       0100233CH   CODE     ---       YC_clear_BT_same_address_record
       01000F98H   CODE     ---       YC_clear_reconnect_flag
-      010037D7H   CODE     ---       YC_connect_timeout_500ms
+      010036CAH   CODE     ---       YC_connect_timeout_500ms
       01000F59H   CODE     ---       YC_disconnect_all_link
       01002046H   CODE     ---       YC_g24_mode_discovery
       01002263H   CODE     ---       YC_get_ble_ramdon_lap
       020000A7H   XDATA    ---       YC_GPIOWakeupH
       020000A3H   XDATA    ---       YC_GPIOWakeupL
-      01003C74H   CODE     ---       YC_Ice_break
+      01003CD0H   CODE     ---       YC_Ice_break
       01001E46H   CODE     ---       YC_pairing_timerout_500ms
       0100205DH   CODE     ---       YC_start_reconnect
       01001892H   CODE     ---       YC_System_Main
@@ -944,7 +944,7 @@
       01000681H   PUBLIC    CONST    ---       col
 
       ---         MODULE    ---      ---       KB_PROCESS
-      01002F5FH   PUBLIC    CODE     ---       _kb_multikey_setup
+      01002FBFH   PUBLIC    CODE     ---       _kb_multikey_setup
       01002B42H   PUBLIC    CODE     ---       _key_fn_function
       01002B1DH   PUBLIC    CODE     ---       _kb_combination_key_press
       01002A57H   PUBLIC    CODE     ---       _kb_device_select
@@ -1502,380 +1502,407 @@
       01002B4CH   LINE      ---      ---       #684
       01002B51H   LINE      ---      ---       #686
       01002B55H   LINE      ---      ---       #687
-      01002B5AH   LINE      ---      ---       #690
+      01002B5AH   LINE      ---      ---       #691
       01002B61H   LINE      ---      ---       #692
-      01002B91H   LINE      ---      ---       #695
-      01002B91H   LINE      ---      ---       #696
-      01002BC6H   LINE      ---      ---       #697
-      01002BC6H   LINE      ---      ---       #698
-      01002BC6H   LINE      ---      ---       #699
-      01002BCCH   LINE      ---      ---       #700
-      01002BCEH   LINE      ---      ---       #701
-      01002BCEH   LINE      ---      ---       #702
-      01002BD4H   LINE      ---      ---       #703
-      01002BD6H   LINE      ---      ---       #704
-      01002BD6H   LINE      ---      ---       #705
-      01002BDDH   LINE      ---      ---       #706
-      01002BDDH   LINE      ---      ---       #707
-      01002BE8H   LINE      ---      ---       #708
-      01002BEFH   LINE      ---      ---       #709
-      01002BEFH   LINE      ---      ---       #710
-      01002BF5H   LINE      ---      ---       #711
-      01002BF5H   LINE      ---      ---       #712
-      01002BF7H   LINE      ---      ---       #714
-      01002BF7H   LINE      ---      ---       #715
-      01002C02H   LINE      ---      ---       #716
-      01002C09H   LINE      ---      ---       #717
-      01002C09H   LINE      ---      ---       #718
-      01002C0FH   LINE      ---      ---       #719
-      01002C0FH   LINE      ---      ---       #720
-      01002C0FH   LINE      ---      ---       #721
-      01002C14H   LINE      ---      ---       #722
-      01002C16H   LINE      ---      ---       #723
-      01002C16H   LINE      ---      ---       #724
-      01002C1DH   LINE      ---      ---       #725
-      01002C1DH   LINE      ---      ---       #726
-      01002C28H   LINE      ---      ---       #727
-      01002C2FH   LINE      ---      ---       #728
-      01002C2FH   LINE      ---      ---       #729
-      01002C35H   LINE      ---      ---       #730
-      01002C35H   LINE      ---      ---       #731
-      01002C37H   LINE      ---      ---       #733
-      01002C37H   LINE      ---      ---       #734
-      01002C42H   LINE      ---      ---       #735
-      01002C49H   LINE      ---      ---       #736
-      01002C49H   LINE      ---      ---       #737
-      01002C4FH   LINE      ---      ---       #738
-      01002C4FH   LINE      ---      ---       #739
-      01002C4FH   LINE      ---      ---       #740
-      01002C54H   LINE      ---      ---       #742
-      01002C56H   LINE      ---      ---       #743
-      01002C56H   LINE      ---      ---       #744
-      01002C5DH   LINE      ---      ---       #745
-      01002C5DH   LINE      ---      ---       #746
-      01002C68H   LINE      ---      ---       #747
-      01002C6FH   LINE      ---      ---       #748
-      01002C6FH   LINE      ---      ---       #749
-      01002C75H   LINE      ---      ---       #750
-      01002C75H   LINE      ---      ---       #751
-      01002C77H   LINE      ---      ---       #753
-      01002C77H   LINE      ---      ---       #754
-      01002C82H   LINE      ---      ---       #755
-      01002C89H   LINE      ---      ---       #756
-      01002C89H   LINE      ---      ---       #757
-      01002C8FH   LINE      ---      ---       #758
-      01002C8FH   LINE      ---      ---       #759
-      01002C8FH   LINE      ---      ---       #760
-      01002C94H   LINE      ---      ---       #762
-      01002C96H   LINE      ---      ---       #763
-      01002C96H   LINE      ---      ---       #764
-      01002C9DH   LINE      ---      ---       #765
-      01002C9DH   LINE      ---      ---       #766
-      01002CA8H   LINE      ---      ---       #767
-      01002CAFH   LINE      ---      ---       #768
-      01002CAFH   LINE      ---      ---       #769
-      01002CB5H   LINE      ---      ---       #770
-      01002CB5H   LINE      ---      ---       #771
-      01002CB7H   LINE      ---      ---       #773
-      01002CB7H   LINE      ---      ---       #774
-      01002CC2H   LINE      ---      ---       #775
-      01002CC9H   LINE      ---      ---       #776
-      01002CC9H   LINE      ---      ---       #777
-      01002CCFH   LINE      ---      ---       #778
-      01002CCFH   LINE      ---      ---       #779
-      01002CCFH   LINE      ---      ---       #780
-      01002CD4H   LINE      ---      ---       #781
-      01002CD6H   LINE      ---      ---       #782
-      01002CD6H   LINE      ---      ---       #783
-      01002CDCH   LINE      ---      ---       #784
-      01002CDEH   LINE      ---      ---       #785
-      01002CDEH   LINE      ---      ---       #786
-      01002CE4H   LINE      ---      ---       #787
-      01002CE6H   LINE      ---      ---       #788
-      01002CE6H   LINE      ---      ---       #789
-      01002CECH   LINE      ---      ---       #790
-      01002CEEH   LINE      ---      ---       #791
-      01002CEEH   LINE      ---      ---       #792
-      01002CF4H   LINE      ---      ---       #793
-      01002CF6H   LINE      ---      ---       #794
-      01002CF6H   LINE      ---      ---       #795
-      01002CFCH   LINE      ---      ---       #796
-      01002CFEH   LINE      ---      ---       #797
-      01002CFEH   LINE      ---      ---       #798
-      01002D04H   LINE      ---      ---       #799
-      01002D04H   LINE      ---      ---       #800
-      01002D0FH   LINE      ---      ---       #801
-      01002D16H   LINE      ---      ---       #802
-      01002D16H   LINE      ---      ---       #803
-      01002D1CH   LINE      ---      ---       #804
-      01002D1CH   LINE      ---      ---       #805
-      01002D1EH   LINE      ---      ---       #807
-      01002D1EH   LINE      ---      ---       #808
-      01002D24H   LINE      ---      ---       #809
-      01002D24H   LINE      ---      ---       #811
-      01002D26H   LINE      ---      ---       #812
-      01002D26H   LINE      ---      ---       #813
-      01002D2CH   LINE      ---      ---       #814
-      01002D2EH   LINE      ---      ---       #815
-      01002D2EH   LINE      ---      ---       #816
-      01002D39H   LINE      ---      ---       #817
-      01002D40H   LINE      ---      ---       #818
-      01002D40H   LINE      ---      ---       #819
-      01002D46H   LINE      ---      ---       #820
-      01002D46H   LINE      ---      ---       #821
-      01002D4BH   LINE      ---      ---       #822
-      01002D4DH   LINE      ---      ---       #823
-      01002D4DH   LINE      ---      ---       #824
-      01002D58H   LINE      ---      ---       #825
-      01002D5FH   LINE      ---      ---       #826
-      01002D5FH   LINE      ---      ---       #827
-      01002D65H   LINE      ---      ---       #828
-      01002D65H   LINE      ---      ---       #829
+      01002B69H   LINE      ---      ---       #693
+      01002B69H   LINE      ---      ---       #694
+      01002B6DH   LINE      ---      ---       #695
+      01002B73H   LINE      ---      ---       #696
+      01002B73H   LINE      ---      ---       #697
+      01002BA0H   LINE      ---      ---       #700
+      01002BA0H   LINE      ---      ---       #701
+      01002BD8H   LINE      ---      ---       #702
+      01002BD8H   LINE      ---      ---       #703
+      01002BD8H   LINE      ---      ---       #704
+      01002BDEH   LINE      ---      ---       #705
+      01002BE0H   LINE      ---      ---       #706
+      01002BE0H   LINE      ---      ---       #707
+      01002BE6H   LINE      ---      ---       #708
+      01002BE8H   LINE      ---      ---       #709
+      01002BE8H   LINE      ---      ---       #710
+      01002BEFH   LINE      ---      ---       #711
+      01002BEFH   LINE      ---      ---       #712
+      01002BFAH   LINE      ---      ---       #713
+      01002C01H   LINE      ---      ---       #714
+      01002C01H   LINE      ---      ---       #715
+      01002C07H   LINE      ---      ---       #716
+      01002C07H   LINE      ---      ---       #717
+      01002C09H   LINE      ---      ---       #719
+      01002C09H   LINE      ---      ---       #720
+      01002C14H   LINE      ---      ---       #721
+      01002C1BH   LINE      ---      ---       #722
+      01002C1BH   LINE      ---      ---       #723
+      01002C21H   LINE      ---      ---       #724
+      01002C21H   LINE      ---      ---       #725
+      01002C21H   LINE      ---      ---       #726
+      01002C26H   LINE      ---      ---       #727
+      01002C28H   LINE      ---      ---       #728
+      01002C28H   LINE      ---      ---       #729
+      01002C2FH   LINE      ---      ---       #730
+      01002C2FH   LINE      ---      ---       #731
+      01002C3AH   LINE      ---      ---       #732
+      01002C41H   LINE      ---      ---       #733
+      01002C41H   LINE      ---      ---       #734
+      01002C47H   LINE      ---      ---       #735
+      01002C47H   LINE      ---      ---       #736
+      01002C49H   LINE      ---      ---       #738
+      01002C49H   LINE      ---      ---       #739
+      01002C54H   LINE      ---      ---       #740
+      01002C5BH   LINE      ---      ---       #741
+      01002C5BH   LINE      ---      ---       #742
+      01002C61H   LINE      ---      ---       #743
+      01002C61H   LINE      ---      ---       #744
+      01002C61H   LINE      ---      ---       #745
+      01002C66H   LINE      ---      ---       #747
+      01002C68H   LINE      ---      ---       #748
+      01002C68H   LINE      ---      ---       #749
+      01002C6FH   LINE      ---      ---       #750
+      01002C6FH   LINE      ---      ---       #751
+      01002C7AH   LINE      ---      ---       #752
+      01002C81H   LINE      ---      ---       #753
+      01002C81H   LINE      ---      ---       #754
+      01002C87H   LINE      ---      ---       #755
+      01002C87H   LINE      ---      ---       #756
+      01002C89H   LINE      ---      ---       #758
+      01002C89H   LINE      ---      ---       #759
+      01002C94H   LINE      ---      ---       #760
+      01002C9BH   LINE      ---      ---       #761
+      01002C9BH   LINE      ---      ---       #762
+      01002CA1H   LINE      ---      ---       #763
+      01002CA1H   LINE      ---      ---       #764
+      01002CA1H   LINE      ---      ---       #765
+      01002CA6H   LINE      ---      ---       #767
+      01002CA8H   LINE      ---      ---       #768
+      01002CA8H   LINE      ---      ---       #769
+      01002CAFH   LINE      ---      ---       #770
+      01002CAFH   LINE      ---      ---       #771
+      01002CBAH   LINE      ---      ---       #772
+      01002CC1H   LINE      ---      ---       #773
+      01002CC1H   LINE      ---      ---       #774
+      01002CC7H   LINE      ---      ---       #775
+      01002CC7H   LINE      ---      ---       #776
+      01002CC9H   LINE      ---      ---       #778
+      01002CC9H   LINE      ---      ---       #779
+      01002CD4H   LINE      ---      ---       #780
+      01002CDBH   LINE      ---      ---       #781
+      01002CDBH   LINE      ---      ---       #782
+      01002CE1H   LINE      ---      ---       #783
+      01002CE1H   LINE      ---      ---       #784
+      01002CE1H   LINE      ---      ---       #785
+      01002CE6H   LINE      ---      ---       #786
+      01002CE8H   LINE      ---      ---       #787
+      01002CE8H   LINE      ---      ---       #788
+      01002CEEH   LINE      ---      ---       #789
+      01002CF0H   LINE      ---      ---       #790
+      01002CF0H   LINE      ---      ---       #791
+      01002CF6H   LINE      ---      ---       #792
+      01002CF8H   LINE      ---      ---       #793
+      01002CF8H   LINE      ---      ---       #794
+      01002CFEH   LINE      ---      ---       #795
+      01002D00H   LINE      ---      ---       #796
+      01002D00H   LINE      ---      ---       #797
+      01002D06H   LINE      ---      ---       #798
+      01002D08H   LINE      ---      ---       #799
+      01002D08H   LINE      ---      ---       #800
+      01002D0EH   LINE      ---      ---       #801
+      01002D10H   LINE      ---      ---       #802
+      01002D10H   LINE      ---      ---       #803
+      01002D16H   LINE      ---      ---       #804
+      01002D16H   LINE      ---      ---       #805
+      01002D21H   LINE      ---      ---       #806
+      01002D2AH   LINE      ---      ---       #807
+      01002D2AH   LINE      ---      ---       #808
+      01002D30H   LINE      ---      ---       #809
+      01002D30H   LINE      ---      ---       #810
+      01002D32H   LINE      ---      ---       #812
+      01002D32H   LINE      ---      ---       #813
+      01002D38H   LINE      ---      ---       #814
+      01002D38H   LINE      ---      ---       #816
+      01002D3AH   LINE      ---      ---       #817
+      01002D3AH   LINE      ---      ---       #818
+      01002D41H   LINE      ---      ---       #819
+      01002D41H   LINE      ---      ---       #820
+      01002D47H   LINE      ---      ---       #821
+      01002D49H   LINE      ---      ---       #823
+      01002D4FH   LINE      ---      ---       #824
+      01002D51H   LINE      ---      ---       #825
+      01002D51H   LINE      ---      ---       #826
+      01002D58H   LINE      ---      ---       #827
+      01002D58H   LINE      ---      ---       #828
+      01002D63H   LINE      ---      ---       #829
       01002D6AH   LINE      ---      ---       #830
       01002D6AH   LINE      ---      ---       #831
-      01002D6AH   LINE      ---      ---       #832
-      01002D6AH   LINE      ---      ---       #833
-      01002D6AH   LINE      ---      ---       #834
-      01002D74H   LINE      ---      ---       #835
-      01002D74H   LINE      ---      ---       #860
-      01002D9DH   LINE      ---      ---       #861
-      01002D9DH   LINE      ---      ---       #862
-      01002D9DH   LINE      ---      ---       #863
-      01002DA5H   LINE      ---      ---       #864
-      01002DA5H   LINE      ---      ---       #865
-      01002DA8H   LINE      ---      ---       #866
-      01002DB2H   LINE      ---      ---       #867
-      01002DB2H   LINE      ---      ---       #868
-      01002DB8H   LINE      ---      ---       #869
-      01002DBAH   LINE      ---      ---       #870
-      01002DC6H   LINE      ---      ---       #871
-      01002DC6H   LINE      ---      ---       #872
-      01002DDEH   LINE      ---      ---       #873
-      01002DE4H   LINE      ---      ---       #874
-      01002DE4H   LINE      ---      ---       #875
-      01002DE4H   LINE      ---      ---       #876
-      01002DEBH   LINE      ---      ---       #877
-      01002DF1H   LINE      ---      ---       #878
-      01002DF6H   LINE      ---      ---       #879
-      01002DF8H   LINE      ---      ---       #880
-      01002DF8H   LINE      ---      ---       #881
-      01002DFEH   LINE      ---      ---       #882
-      01002DFEH   LINE      ---      ---       #883
-      01002E00H   LINE      ---      ---       #884
-      01002E0AH   LINE      ---      ---       #885
-      01002E0AH   LINE      ---      ---       #886
-      01002E10H   LINE      ---      ---       #887
-      01002E12H   LINE      ---      ---       #888
-      01002E1EH   LINE      ---      ---       #889
-      01002E1EH   LINE      ---      ---       #890
-      01002E36H   LINE      ---      ---       #891
-      01002E3CH   LINE      ---      ---       #892
-      01002E3CH   LINE      ---      ---       #893
-      01002E3CH   LINE      ---      ---       #894
-      01002E43H   LINE      ---      ---       #895
-      01002E49H   LINE      ---      ---       #896
-      01002E4EH   LINE      ---      ---       #897
-      01002E50H   LINE      ---      ---       #898
-      01002E50H   LINE      ---      ---       #899
-      01002E58H   LINE      ---      ---       #900
-      01002E58H   LINE      ---      ---       #901
-      01002E5BH   LINE      ---      ---       #902
-      01002E65H   LINE      ---      ---       #903
-      01002E65H   LINE      ---      ---       #904
-      01002E6BH   LINE      ---      ---       #905
-      01002E6DH   LINE      ---      ---       #906
-      01002E79H   LINE      ---      ---       #907
-      01002E79H   LINE      ---      ---       #908
-      01002E91H   LINE      ---      ---       #909
-      01002E97H   LINE      ---      ---       #910
-      01002E97H   LINE      ---      ---       #911
-      01002E97H   LINE      ---      ---       #912
-      01002E9EH   LINE      ---      ---       #913
-      01002EA4H   LINE      ---      ---       #915
-      01002EA9H   LINE      ---      ---       #916
-      01002EABH   LINE      ---      ---       #917
-      01002EABH   LINE      ---      ---       #918
-      01002EB2H   LINE      ---      ---       #919
-      01002EB2H   LINE      ---      ---       #920
-      01002EBDH   LINE      ---      ---       #921
-      01002EC4H   LINE      ---      ---       #922
-      01002EC4H   LINE      ---      ---       #923
-      01002ECAH   LINE      ---      ---       #924
-      01002ECAH   LINE      ---      ---       #925
-      01002ECFH   LINE      ---      ---       #926
-      01002ECFH   LINE      ---      ---       #927
-      01002ED5H   LINE      ---      ---       #928
-      01002ED7H   LINE      ---      ---       #929
-      01002ED7H   LINE      ---      ---       #930
-      01002EDEH   LINE      ---      ---       #931
-      01002EDEH   LINE      ---      ---       #932
-      01002EE9H   LINE      ---      ---       #933
-      01002EF0H   LINE      ---      ---       #934
-      01002EF0H   LINE      ---      ---       #935
-      01002EF6H   LINE      ---      ---       #936
-      01002EF6H   LINE      ---      ---       #937
-      01002EFBH   LINE      ---      ---       #938
-      01002EFBH   LINE      ---      ---       #939
-      01002F01H   LINE      ---      ---       #940
-      01002F03H   LINE      ---      ---       #941
-      01002F03H   LINE      ---      ---       #942
-      01002F0AH   LINE      ---      ---       #943
-      01002F0AH   LINE      ---      ---       #944
-      01002F15H   LINE      ---      ---       #945
-      01002F1CH   LINE      ---      ---       #946
-      01002F1CH   LINE      ---      ---       #947
-      01002F22H   LINE      ---      ---       #948
-      01002F22H   LINE      ---      ---       #949
-      01002F27H   LINE      ---      ---       #950
-      01002F27H   LINE      ---      ---       #951
-      01002F2DH   LINE      ---      ---       #952
-      01002F2FH   LINE      ---      ---       #953
-      01002F2FH   LINE      ---      ---       #954
-      01002F36H   LINE      ---      ---       #955
-      01002F36H   LINE      ---      ---       #956
-      01002F41H   LINE      ---      ---       #957
-      01002F48H   LINE      ---      ---       #958
-      01002F48H   LINE      ---      ---       #959
-      01002F4EH   LINE      ---      ---       #960
-      01002F4EH   LINE      ---      ---       #961
-      01002F53H   LINE      ---      ---       #962
-      01002F53H   LINE      ---      ---       #963
-      01002F59H   LINE      ---      ---       #964
-      01002F59H   LINE      ---      ---       #965
-      01002F59H   LINE      ---      ---       #966
-      01002F59H   LINE      ---      ---       #967
-      01002F59H   LINE      ---      ---       #968
-      01002F59H   LINE      ---      ---       #970
-      01002F5EH   LINE      ---      ---       #971
+      01002D70H   LINE      ---      ---       #832
+      01002D70H   LINE      ---      ---       #833
+      01002D72H   LINE      ---      ---       #835
+      01002D7DH   LINE      ---      ---       #836
+      01002D84H   LINE      ---      ---       #837
+      01002D84H   LINE      ---      ---       #838
+      01002D8AH   LINE      ---      ---       #839
+      01002D8AH   LINE      ---      ---       #840
+      01002D8CH   LINE      ---      ---       #841
+      01002D8CH   LINE      ---      ---       #842
+      01002D93H   LINE      ---      ---       #843
+      01002D93H   LINE      ---      ---       #844
+      01002D9EH   LINE      ---      ---       #845
+      01002DA5H   LINE      ---      ---       #846
+      01002DA5H   LINE      ---      ---       #847
+      01002DABH   LINE      ---      ---       #848
+      01002DABH   LINE      ---      ---       #849
+      01002DADH   LINE      ---      ---       #851
+      01002DADH   LINE      ---      ---       #852
+      01002DB8H   LINE      ---      ---       #853
+      01002DBFH   LINE      ---      ---       #854
+      01002DBFH   LINE      ---      ---       #855
+      01002DC5H   LINE      ---      ---       #856
+      01002DC5H   LINE      ---      ---       #857
+      01002DC5H   LINE      ---      ---       #858
+      01002DCAH   LINE      ---      ---       #860
+      01002DCAH   LINE      ---      ---       #861
+      01002DCAH   LINE      ---      ---       #862
+      01002DCAH   LINE      ---      ---       #863
+      01002DCAH   LINE      ---      ---       #864
+      01002DCAH   LINE      ---      ---       #865
+      01002DD4H   LINE      ---      ---       #866
+      01002DD4H   LINE      ---      ---       #891
+      01002DFDH   LINE      ---      ---       #892
+      01002DFDH   LINE      ---      ---       #893
+      01002DFDH   LINE      ---      ---       #894
+      01002E05H   LINE      ---      ---       #895
+      01002E05H   LINE      ---      ---       #896
+      01002E08H   LINE      ---      ---       #897
+      01002E12H   LINE      ---      ---       #898
+      01002E12H   LINE      ---      ---       #899
+      01002E18H   LINE      ---      ---       #900
+      01002E1AH   LINE      ---      ---       #901
+      01002E26H   LINE      ---      ---       #902
+      01002E26H   LINE      ---      ---       #903
+      01002E3EH   LINE      ---      ---       #904
+      01002E44H   LINE      ---      ---       #905
+      01002E44H   LINE      ---      ---       #906
+      01002E44H   LINE      ---      ---       #907
+      01002E4BH   LINE      ---      ---       #908
+      01002E51H   LINE      ---      ---       #909
+      01002E56H   LINE      ---      ---       #910
+      01002E58H   LINE      ---      ---       #911
+      01002E58H   LINE      ---      ---       #912
+      01002E5EH   LINE      ---      ---       #913
+      01002E5EH   LINE      ---      ---       #914
+      01002E60H   LINE      ---      ---       #915
+      01002E6AH   LINE      ---      ---       #916
+      01002E6AH   LINE      ---      ---       #917
+      01002E70H   LINE      ---      ---       #918
+      01002E72H   LINE      ---      ---       #919
+      01002E7EH   LINE      ---      ---       #920
+      01002E7EH   LINE      ---      ---       #921
+      01002E96H   LINE      ---      ---       #922
+      01002E9CH   LINE      ---      ---       #923
+      01002E9CH   LINE      ---      ---       #924
+      01002E9CH   LINE      ---      ---       #925
+      01002EA3H   LINE      ---      ---       #926
+      01002EA9H   LINE      ---      ---       #927
+      01002EAEH   LINE      ---      ---       #928
+      01002EB0H   LINE      ---      ---       #929
+      01002EB0H   LINE      ---      ---       #930
+      01002EB8H   LINE      ---      ---       #931
+      01002EB8H   LINE      ---      ---       #932
+      01002EBBH   LINE      ---      ---       #933
+      01002EC5H   LINE      ---      ---       #934
+      01002EC5H   LINE      ---      ---       #935
+      01002ECBH   LINE      ---      ---       #936
+      01002ECDH   LINE      ---      ---       #937
+      01002ED9H   LINE      ---      ---       #938
+      01002ED9H   LINE      ---      ---       #939
+      01002EF1H   LINE      ---      ---       #940
+      01002EF7H   LINE      ---      ---       #941
+      01002EF7H   LINE      ---      ---       #942
+      01002EF7H   LINE      ---      ---       #943
+      01002EFEH   LINE      ---      ---       #944
+      01002F04H   LINE      ---      ---       #946
+      01002F09H   LINE      ---      ---       #947
+      01002F0BH   LINE      ---      ---       #948
+      01002F0BH   LINE      ---      ---       #949
+      01002F12H   LINE      ---      ---       #950
+      01002F12H   LINE      ---      ---       #951
+      01002F1DH   LINE      ---      ---       #952
+      01002F24H   LINE      ---      ---       #953
+      01002F24H   LINE      ---      ---       #954
+      01002F2AH   LINE      ---      ---       #955
+      01002F2AH   LINE      ---      ---       #956
+      01002F2FH   LINE      ---      ---       #957
+      01002F2FH   LINE      ---      ---       #958
+      01002F35H   LINE      ---      ---       #959
+      01002F37H   LINE      ---      ---       #960
+      01002F37H   LINE      ---      ---       #961
+      01002F3EH   LINE      ---      ---       #962
+      01002F3EH   LINE      ---      ---       #963
+      01002F49H   LINE      ---      ---       #964
+      01002F50H   LINE      ---      ---       #965
+      01002F50H   LINE      ---      ---       #966
+      01002F56H   LINE      ---      ---       #967
+      01002F56H   LINE      ---      ---       #968
+      01002F5BH   LINE      ---      ---       #969
+      01002F5BH   LINE      ---      ---       #970
+      01002F61H   LINE      ---      ---       #971
+      01002F63H   LINE      ---      ---       #972
+      01002F63H   LINE      ---      ---       #973
+      01002F6AH   LINE      ---      ---       #974
+      01002F6AH   LINE      ---      ---       #975
+      01002F75H   LINE      ---      ---       #976
+      01002F7CH   LINE      ---      ---       #977
+      01002F7CH   LINE      ---      ---       #978
+      01002F82H   LINE      ---      ---       #979
+      01002F82H   LINE      ---      ---       #980
+      01002F87H   LINE      ---      ---       #981
+      01002F87H   LINE      ---      ---       #982
+      01002F8DH   LINE      ---      ---       #983
+      01002F8FH   LINE      ---      ---       #984
+      01002F8FH   LINE      ---      ---       #985
+      01002F96H   LINE      ---      ---       #986
+      01002F96H   LINE      ---      ---       #987
+      01002FA1H   LINE      ---      ---       #988
+      01002FA8H   LINE      ---      ---       #989
+      01002FA8H   LINE      ---      ---       #990
+      01002FAEH   LINE      ---      ---       #991
+      01002FAEH   LINE      ---      ---       #992
+      01002FB3H   LINE      ---      ---       #993
+      01002FB3H   LINE      ---      ---       #994
+      01002FB9H   LINE      ---      ---       #995
+      01002FB9H   LINE      ---      ---       #996
+      01002FB9H   LINE      ---      ---       #997
+      01002FB9H   LINE      ---      ---       #998
+      01002FB9H   LINE      ---      ---       #999
+      01002FB9H   LINE      ---      ---       #1001
+      01002FBEH   LINE      ---      ---       #1002
       02004EEDH   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002F5FH   BLOCK     CODE     ---       LVL=0
-      01002F5FH   LINE      ---      ---       #975
-      01002F6AH   LINE      ---      ---       #976
-      01002F6AH   BLOCK     CODE     NEAR LAB  LVL=1
-      01002F6AH   LINE      ---      ---       #977
-      01002F6DH   LINE      ---      ---       #979
-      01002F7BH   LINE      ---      ---       #980
-      01002F7BH   LINE      ---      ---       #981
-      01002FA7H   LINE      ---      ---       #983
-      01002FA7H   LINE      ---      ---       #985
-      01002FAEH   LINE      ---      ---       #986
-      01002FAEH   LINE      ---      ---       #987
-      01002FB5H   LINE      ---      ---       #988
-      01002FB8H   LINE      ---      ---       #990
-      01002FBCH   LINE      ---      ---       #991
-      01002FBCH   LINE      ---      ---       #992
-      01002FC3H   LINE      ---      ---       #993
-      01002FC6H   LINE      ---      ---       #994
-      01002FE6H   LINE      ---      ---       #995
-      01002FE6H   LINE      ---      ---       #996
-      01002FEBH   LINE      ---      ---       #997
-      01002FEEH   LINE      ---      ---       #998
-      01002FF2H   LINE      ---      ---       #999
-      01002FF2H   LINE      ---      ---       #1000
-      01002FF9H   LINE      ---      ---       #1001
-      01002FFCH   LINE      ---      ---       #1002
-      0100301CH   LINE      ---      ---       #1003
-      0100301CH   LINE      ---      ---       #1004
-      01003021H   LINE      ---      ---       #1005
-      01003023H   LINE      ---      ---       #1006
-      01003027H   LINE      ---      ---       #1007
-      01003027H   LINE      ---      ---       #1008
-      0100302EH   LINE      ---      ---       #1009
-      01003030H   LINE      ---      ---       #1010
-      01003050H   LINE      ---      ---       #1011
-      01003050H   LINE      ---      ---       #1012
-      01003055H   LINE      ---      ---       #1013
-      01003057H   LINE      ---      ---       #1014
-      0100305BH   LINE      ---      ---       #1015
-      0100305BH   LINE      ---      ---       #1016
-      01003062H   LINE      ---      ---       #1017
-      01003064H   LINE      ---      ---       #1018
-      01003084H   LINE      ---      ---       #1019
-      01003084H   LINE      ---      ---       #1020
-      0100308AH   LINE      ---      ---       #1021
-      0100308CH   LINE      ---      ---       #1022
-      01003090H   LINE      ---      ---       #1023
-      01003090H   LINE      ---      ---       #1024
-      01003097H   LINE      ---      ---       #1025
-      01003099H   LINE      ---      ---       #1026
-      010030B9H   LINE      ---      ---       #1027
-      010030B9H   LINE      ---      ---       #1028
-      010030BFH   LINE      ---      ---       #1029
-      010030C1H   LINE      ---      ---       #1030
-      010030C5H   LINE      ---      ---       #1031
-      010030C5H   LINE      ---      ---       #1032
-      010030CCH   LINE      ---      ---       #1033
-      010030CEH   LINE      ---      ---       #1034
-      010030EEH   LINE      ---      ---       #1035
-      010030EEH   LINE      ---      ---       #1036
-      010030F5H   LINE      ---      ---       #1037
-      010030F7H   LINE      ---      ---       #1038
-      010030FBH   LINE      ---      ---       #1039
-      010030FBH   LINE      ---      ---       #1040
-      01003102H   LINE      ---      ---       #1041
-      01003104H   LINE      ---      ---       #1042
-      01003124H   LINE      ---      ---       #1043
-      01003124H   LINE      ---      ---       #1044
-      0100312BH   LINE      ---      ---       #1045
-      0100312DH   LINE      ---      ---       #1046
-      01003131H   LINE      ---      ---       #1047
-      01003131H   LINE      ---      ---       #1048
-      01003138H   LINE      ---      ---       #1049
-      0100313AH   LINE      ---      ---       #1050
-      0100315AH   LINE      ---      ---       #1051
-      0100315AH   LINE      ---      ---       #1052
-      01003161H   LINE      ---      ---       #1053
-      01003163H   LINE      ---      ---       #1054
-      01003167H   LINE      ---      ---       #1055
-      01003167H   LINE      ---      ---       #1056
-      0100316EH   LINE      ---      ---       #1057
-      01003170H   LINE      ---      ---       #1058
-      01003190H   LINE      ---      ---       #1059
-      01003190H   LINE      ---      ---       #1060
-      01003195H   LINE      ---      ---       #1061
-      01003197H   LINE      ---      ---       #1062
-      0100319BH   LINE      ---      ---       #1063
-      0100319BH   LINE      ---      ---       #1064
-      010031A2H   LINE      ---      ---       #1065
-      010031A4H   LINE      ---      ---       #1066
-      010031C4H   LINE      ---      ---       #1067
-      010031C4H   LINE      ---      ---       #1068
-      010031C9H   LINE      ---      ---       #1069
-      010031CBH   LINE      ---      ---       #1070
-      010031CFH   LINE      ---      ---       #1071
-      010031CFH   LINE      ---      ---       #1072
-      010031D6H   LINE      ---      ---       #1073
-      010031D8H   LINE      ---      ---       #1074
-      010031F8H   LINE      ---      ---       #1075
-      010031F8H   LINE      ---      ---       #1076
-      010031FFH   LINE      ---      ---       #1077
-      01003201H   LINE      ---      ---       #1078
-      01003205H   LINE      ---      ---       #1079
-      01003205H   LINE      ---      ---       #1080
-      0100320CH   LINE      ---      ---       #1081
-      0100320EH   LINE      ---      ---       #1082
-      0100322EH   LINE      ---      ---       #1083
-      0100322EH   LINE      ---      ---       #1084
-      01003233H   LINE      ---      ---       #1085
-      01003235H   LINE      ---      ---       #1086
-      01003239H   LINE      ---      ---       #1087
-      01003239H   LINE      ---      ---       #1088
-      0100323EH   LINE      ---      ---       #1089
-      01003240H   LINE      ---      ---       #1090
-      01003246H   LINE      ---      ---       #1091
-      01003246H   LINE      ---      ---       #1092
-      0100324BH   LINE      ---      ---       #1093
-      0100324BH   LINE      ---      ---       #1095
-      01003252H   LINE      ---      ---       #1096
-      01003252H   LINE      ---      ---       #1097
-      01003272H   LINE      ---      ---       #1098
-      01003276H   LINE      ---      ---       #1099
-      01003276H   LINE      ---      ---       #1100
-      01003276H   LINE      ---      ---       #1101
-      0100327FH   LINE      ---      ---       #1102
+      01002FBFH   BLOCK     CODE     ---       LVL=0
+      01002FBFH   LINE      ---      ---       #1006
+      01002FCAH   LINE      ---      ---       #1007
+      01002FCAH   BLOCK     CODE     NEAR LAB  LVL=1
+      01002FCAH   LINE      ---      ---       #1008
+      01002FCDH   LINE      ---      ---       #1010
+      01002FDBH   LINE      ---      ---       #1011
+      01002FDBH   LINE      ---      ---       #1012
+      01003006H   LINE      ---      ---       #1014
+      01003006H   LINE      ---      ---       #1016
+      0100300DH   LINE      ---      ---       #1017
+      0100300DH   LINE      ---      ---       #1018
+      01003014H   LINE      ---      ---       #1019
+      01003016H   LINE      ---      ---       #1021
+      0100301AH   LINE      ---      ---       #1022
+      0100301AH   LINE      ---      ---       #1023
+      01003021H   LINE      ---      ---       #1024
+      01003023H   LINE      ---      ---       #1025
+      01003043H   LINE      ---      ---       #1026
+      01003043H   LINE      ---      ---       #1027
+      01003048H   LINE      ---      ---       #1028
+      0100304AH   LINE      ---      ---       #1029
+      0100304EH   LINE      ---      ---       #1030
+      0100304EH   LINE      ---      ---       #1031
+      01003055H   LINE      ---      ---       #1032
+      01003057H   LINE      ---      ---       #1033
+      01003077H   LINE      ---      ---       #1034
+      01003077H   LINE      ---      ---       #1035
+      0100307CH   LINE      ---      ---       #1036
+      0100307EH   LINE      ---      ---       #1037
+      01003082H   LINE      ---      ---       #1038
+      01003082H   LINE      ---      ---       #1039
+      01003089H   LINE      ---      ---       #1040
+      0100308BH   LINE      ---      ---       #1041
+      010030ABH   LINE      ---      ---       #1042
+      010030ABH   LINE      ---      ---       #1043
+      010030B0H   LINE      ---      ---       #1044
+      010030B2H   LINE      ---      ---       #1045
+      010030B6H   LINE      ---      ---       #1046
+      010030B6H   LINE      ---      ---       #1047
+      010030BDH   LINE      ---      ---       #1048
+      010030BFH   LINE      ---      ---       #1049
+      010030DFH   LINE      ---      ---       #1050
+      010030DFH   LINE      ---      ---       #1051
+      010030E5H   LINE      ---      ---       #1052
+      010030E7H   LINE      ---      ---       #1053
+      010030EBH   LINE      ---      ---       #1054
+      010030EBH   LINE      ---      ---       #1055
+      010030F2H   LINE      ---      ---       #1056
+      010030F4H   LINE      ---      ---       #1057
+      01003114H   LINE      ---      ---       #1058
+      01003114H   LINE      ---      ---       #1059
+      0100311AH   LINE      ---      ---       #1060
+      0100311CH   LINE      ---      ---       #1061
+      01003120H   LINE      ---      ---       #1062
+      01003120H   LINE      ---      ---       #1063
+      01003127H   LINE      ---      ---       #1064
+      01003129H   LINE      ---      ---       #1065
+      01003149H   LINE      ---      ---       #1066
+      01003149H   LINE      ---      ---       #1067
+      01003150H   LINE      ---      ---       #1068
+      01003152H   LINE      ---      ---       #1069
+      01003156H   LINE      ---      ---       #1070
+      01003156H   LINE      ---      ---       #1071
+      0100315DH   LINE      ---      ---       #1072
+      0100315FH   LINE      ---      ---       #1073
+      0100317FH   LINE      ---      ---       #1074
+      0100317FH   LINE      ---      ---       #1075
+      01003186H   LINE      ---      ---       #1076
+      01003188H   LINE      ---      ---       #1077
+      0100318CH   LINE      ---      ---       #1078
+      0100318CH   LINE      ---      ---       #1079
+      01003193H   LINE      ---      ---       #1080
+      01003195H   LINE      ---      ---       #1081
+      010031B5H   LINE      ---      ---       #1082
+      010031B5H   LINE      ---      ---       #1083
+      010031BCH   LINE      ---      ---       #1084
+      010031BEH   LINE      ---      ---       #1085
+      010031C2H   LINE      ---      ---       #1086
+      010031C2H   LINE      ---      ---       #1087
+      010031C9H   LINE      ---      ---       #1088
+      010031CBH   LINE      ---      ---       #1089
+      010031EBH   LINE      ---      ---       #1090
+      010031EBH   LINE      ---      ---       #1091
+      010031F0H   LINE      ---      ---       #1092
+      010031F2H   LINE      ---      ---       #1093
+      010031F6H   LINE      ---      ---       #1094
+      010031F6H   LINE      ---      ---       #1095
+      010031FDH   LINE      ---      ---       #1096
+      010031FFH   LINE      ---      ---       #1097
+      0100321FH   LINE      ---      ---       #1098
+      0100321FH   LINE      ---      ---       #1099
+      01003224H   LINE      ---      ---       #1100
+      01003226H   LINE      ---      ---       #1101
+      0100322AH   LINE      ---      ---       #1102
+      0100322AH   LINE      ---      ---       #1103
+      01003231H   LINE      ---      ---       #1104
+      01003233H   LINE      ---      ---       #1105
+      01003253H   LINE      ---      ---       #1106
+      01003253H   LINE      ---      ---       #1107
+      0100325AH   LINE      ---      ---       #1108
+      0100325CH   LINE      ---      ---       #1109
+      01003260H   LINE      ---      ---       #1110
+      01003260H   LINE      ---      ---       #1111
+      01003267H   LINE      ---      ---       #1112
+      01003269H   LINE      ---      ---       #1113
+      01003289H   LINE      ---      ---       #1114
+      01003289H   LINE      ---      ---       #1115
+      0100328EH   LINE      ---      ---       #1116
+      01003290H   LINE      ---      ---       #1117
+      01003294H   LINE      ---      ---       #1118
+      01003294H   LINE      ---      ---       #1119
+      01003299H   LINE      ---      ---       #1120
+      0100329BH   LINE      ---      ---       #1121
+      010032A1H   LINE      ---      ---       #1122
+      010032A1H   LINE      ---      ---       #1123
+      010032A6H   LINE      ---      ---       #1124
+      010032A6H   LINE      ---      ---       #1126
+      010032ADH   LINE      ---      ---       #1127
+      010032ADH   LINE      ---      ---       #1128
+      010032CDH   LINE      ---      ---       #1129
+      010032D1H   LINE      ---      ---       #1130
+      010032D1H   LINE      ---      ---       #1131
+      010032D1H   LINE      ---      ---       #1132
+      010032DAH   LINE      ---      ---       #1133
       02004EDCH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1884,7 +1911,7 @@
       02004EA4H   PUBLIC    XDATA    ---       ksEvtPool
       01002499H   PUBLIC    CODE     ---       KS_GetCurrentEvt
       01002741H   PUBLIC    CODE     ---       _array_is_empty
-      01003380H   PUBLIC    CODE     ---       KS_ScanMatrix
+      010033DBH   PUBLIC    CODE     ---       KS_ScanMatrix
       010018EAH   PUBLIC    CODE     ---       KS_Unistall
       01001105H   PUBLIC    CODE     ---       KS_Initialize
 
@@ -1901,70 +1928,70 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003280H   BLOCK     CODE     ---       LVL=0
-      01003280H   LINE      ---      ---       #36
-      01003280H   LINE      ---      ---       #37
-      01003280H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003280H   LINE      ---      ---       #38
-      01003282H   LINE      ---      ---       #40
-      0100328EH   LINE      ---      ---       #41
-      0100328EH   LINE      ---      ---       #42
-      010032A8H   LINE      ---      ---       #44
-      010032A8H   LINE      ---      ---       #90
-      010032AAH   LINE      ---      ---       #91
-      010032AAH   LINE      ---      ---       #92
-      010032B9H   LINE      ---      ---       #93
-      010032B9H   LINE      ---      ---       #94
-      010032BCH   LINE      ---      ---       #95
-      010032BCH   LINE      ---      ---       #96
-      010032C3H   LINE      ---      ---       #97
-      010032CFH   LINE      ---      ---       #98
-      010032D0H   LINE      ---      ---       #99
-      010032D0H   LINE      ---      ---       #100
-      010032D5H   LINE      ---      ---       #101
+      010032DBH   BLOCK     CODE     ---       LVL=0
+      010032DBH   LINE      ---      ---       #36
+      010032DBH   LINE      ---      ---       #37
+      010032DBH   BLOCK     CODE     NEAR LAB  LVL=1
+      010032DBH   LINE      ---      ---       #38
+      010032DDH   LINE      ---      ---       #40
+      010032E9H   LINE      ---      ---       #41
+      010032E9H   LINE      ---      ---       #42
+      01003303H   LINE      ---      ---       #44
+      01003303H   LINE      ---      ---       #90
+      01003305H   LINE      ---      ---       #91
+      01003305H   LINE      ---      ---       #92
+      01003314H   LINE      ---      ---       #93
+      01003314H   LINE      ---      ---       #94
+      01003317H   LINE      ---      ---       #95
+      01003317H   LINE      ---      ---       #96
+      0100331EH   LINE      ---      ---       #97
+      0100332AH   LINE      ---      ---       #98
+      0100332BH   LINE      ---      ---       #99
+      0100332BH   LINE      ---      ---       #100
+      01003330H   LINE      ---      ---       #101
       00000006H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      010032D6H   BLOCK     CODE     ---       LVL=0
-      010032D6H   LINE      ---      ---       #103
-      010032D6H   LINE      ---      ---       #104
-      010032D6H   BLOCK     CODE     NEAR LAB  LVL=1
-      010032D6H   LINE      ---      ---       #105
-      010032D8H   LINE      ---      ---       #106
-      010032D9H   LINE      ---      ---       #108
-      010032E7H   LINE      ---      ---       #109
-      010032E7H   LINE      ---      ---       #110
-      010032EEH   LINE      ---      ---       #111
-      010032EEH   LINE      ---      ---       #112
-      010032F1H   LINE      ---      ---       #113
-      010032F1H   LINE      ---      ---       #114
-      010032F3H   LINE      ---      ---       #116
-      010032F9H   LINE      ---      ---       #118
-      01003305H   LINE      ---      ---       #119
-      01003305H   LINE      ---      ---       #120
-      01003320H   LINE      ---      ---       #122
-      01003320H   LINE      ---      ---       #167
-      01003322H   LINE      ---      ---       #168
-      01003322H   LINE      ---      ---       #169
-      01003325H   LINE      ---      ---       #170
-      01003325H   LINE      ---      ---       #171
-      01003333H   LINE      ---      ---       #172
-      01003337H   LINE      ---      ---       #173
-      01003342H   LINE      ---      ---       #174
-      01003342H   LINE      ---      ---       #175
-      01003344H   LINE      ---      ---       #176
-      01003344H   LINE      ---      ---       #177
-      01003346H   LINE      ---      ---       #179
-      01003346H   LINE      ---      ---       #180
-      0100335EH   LINE      ---      ---       #181
-      0100336BH   LINE      ---      ---       #182
-      0100336BH   LINE      ---      ---       #183
-      0100336FH   LINE      ---      ---       #184
-      0100337AH   LINE      ---      ---       #185
-      0100337AH   LINE      ---      ---       #186
-      0100337AH   LINE      ---      ---       #187
-      0100337FH   LINE      ---      ---       #188
+      01003331H   BLOCK     CODE     ---       LVL=0
+      01003331H   LINE      ---      ---       #103
+      01003331H   LINE      ---      ---       #104
+      01003331H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003331H   LINE      ---      ---       #105
+      01003333H   LINE      ---      ---       #106
+      01003334H   LINE      ---      ---       #108
+      01003342H   LINE      ---      ---       #109
+      01003342H   LINE      ---      ---       #110
+      01003349H   LINE      ---      ---       #111
+      01003349H   LINE      ---      ---       #112
+      0100334CH   LINE      ---      ---       #113
+      0100334CH   LINE      ---      ---       #114
+      0100334EH   LINE      ---      ---       #116
+      01003354H   LINE      ---      ---       #118
+      01003360H   LINE      ---      ---       #119
+      01003360H   LINE      ---      ---       #120
+      0100337BH   LINE      ---      ---       #122
+      0100337BH   LINE      ---      ---       #167
+      0100337DH   LINE      ---      ---       #168
+      0100337DH   LINE      ---      ---       #169
+      01003380H   LINE      ---      ---       #170
+      01003380H   LINE      ---      ---       #171
+      0100338EH   LINE      ---      ---       #172
+      01003392H   LINE      ---      ---       #173
+      0100339DH   LINE      ---      ---       #174
+      0100339DH   LINE      ---      ---       #175
+      0100339FH   LINE      ---      ---       #176
+      0100339FH   LINE      ---      ---       #177
+      010033A1H   LINE      ---      ---       #179
+      010033A1H   LINE      ---      ---       #180
+      010033B9H   LINE      ---      ---       #181
+      010033C6H   LINE      ---      ---       #182
+      010033C6H   LINE      ---      ---       #183
+      010033CAH   LINE      ---      ---       #184
+      010033D5H   LINE      ---      ---       #185
+      010033D5H   LINE      ---      ---       #186
+      010033D5H   LINE      ---      ---       #187
+      010033DAH   LINE      ---      ---       #188
       00000006H   SYMBOL    DATA     VOID      i
       00000005H   SYMBOL    DATA     VOID      found
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -2045,32 +2072,32 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003380H   BLOCK     CODE     ---       LVL=0
-      01003380H   LINE      ---      ---       #254
-      01003380H   LINE      ---      ---       #255
-      01003380H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003380H   LINE      ---      ---       #256
-      01003382H   LINE      ---      ---       #257
-      01003386H   LINE      ---      ---       #258
-      01003387H   LINE      ---      ---       #259
-      01003388H   LINE      ---      ---       #260
-      0100338AH   LINE      ---      ---       #261
-      0100338CH   LINE      ---      ---       #262
-      01003393H   LINE      ---      ---       #263
-      0100339CH   LINE      ---      ---       #264
-      010033ACH   LINE      ---      ---       #265
-      0100340CH   LINE      ---      ---       #266
-      0100340FH   LINE      ---      ---       #268
-      01003418H   LINE      ---      ---       #269
-      01003421H   LINE      ---      ---       #270
-      01003431H   LINE      ---      ---       #271
-      01003491H   LINE      ---      ---       #272
-      01003494H   LINE      ---      ---       #274
-      0100349DH   LINE      ---      ---       #275
-      010034B7H   LINE      ---      ---       #276
-      010034DAH   LINE      ---      ---       #277
-      010034DAH   LINE      ---      ---       #278
-      010034DDH   LINE      ---      ---       #279
+      010033DBH   BLOCK     CODE     ---       LVL=0
+      010033DBH   LINE      ---      ---       #254
+      010033DBH   LINE      ---      ---       #255
+      010033DBH   BLOCK     CODE     NEAR LAB  LVL=1
+      010033DBH   LINE      ---      ---       #256
+      010033DDH   LINE      ---      ---       #257
+      010033E1H   LINE      ---      ---       #258
+      010033E2H   LINE      ---      ---       #259
+      010033E3H   LINE      ---      ---       #260
+      010033E5H   LINE      ---      ---       #261
+      010033E7H   LINE      ---      ---       #262
+      010033EEH   LINE      ---      ---       #263
+      010033F7H   LINE      ---      ---       #264
+      01003407H   LINE      ---      ---       #265
+      01003467H   LINE      ---      ---       #266
+      0100346AH   LINE      ---      ---       #268
+      01003473H   LINE      ---      ---       #269
+      0100347CH   LINE      ---      ---       #270
+      0100348CH   LINE      ---      ---       #271
+      010034ECH   LINE      ---      ---       #272
+      010034EFH   LINE      ---      ---       #274
+      010034F8H   LINE      ---      ---       #275
+      01003512H   LINE      ---      ---       #276
+      01003535H   LINE      ---      ---       #277
+      01003535H   LINE      ---      ---       #278
+      01003538H   LINE      ---      ---       #279
       00000007H   SYMBOL    DATA     VOID      i
       02004EEEH   SYMBOL    XDATA    VOID      j
       00000006H   SYMBOL    DATA     VOID      tgroup
@@ -2210,7 +2237,7 @@
       ---         MODULE    ---      ---       LED
       0100181FH   PUBLIC    CODE     ---       LED_handle
       01000FC1H   PUBLIC    CODE     ---       LED_device_poweroff
-      010034DEH   PUBLIC    CODE     ---       LED_device_poweron
+      01003539H   PUBLIC    CODE     ---       LED_device_poweron
       01000FF7H   PUBLIC    CODE     ---       LED_all_shutdown
 
       01000FF7H   BLOCK     CODE     ---       LVL=0
@@ -2224,15 +2251,15 @@
       01001016H   LINE      ---      ---       #11
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010034DEH   BLOCK     CODE     ---       LVL=0
-      010034DEH   LINE      ---      ---       #16
-      010034DEH   LINE      ---      ---       #17
-      010034DEH   LINE      ---      ---       #18
-      010034E5H   LINE      ---      ---       #19
-      010034ECH   LINE      ---      ---       #20
-      010034F3H   LINE      ---      ---       #21
-      010034FAH   LINE      ---      ---       #23
-      010034FAH   LINE      ---      ---       #24
+      01003539H   BLOCK     CODE     ---       LVL=0
+      01003539H   LINE      ---      ---       #16
+      01003539H   LINE      ---      ---       #17
+      01003539H   LINE      ---      ---       #18
+      01003540H   LINE      ---      ---       #19
+      01003547H   LINE      ---      ---       #20
+      0100354EH   LINE      ---      ---       #21
+      01003555H   LINE      ---      ---       #23
+      01003555H   LINE      ---      ---       #24
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000FC1H   BLOCK     CODE     ---       LVL=0
@@ -2293,15 +2320,15 @@
 
       ---         MODULE    ---      ---       SYS
       01001892H   PUBLIC    CODE     ---       YC_System_Main
-      010038CFH   PUBLIC    CODE     ---       kb_button_press_timer500ms
+      010037C2H   PUBLIC    CODE     ---       kb_button_press_timer500ms
       01001E46H   PUBLIC    CODE     ---       YC_pairing_timerout_500ms
       010022EAH   PUBLIC    CODE     ---       YC_wait_disconnect_timer500ms
-      010037D7H   PUBLIC    CODE     ---       YC_connect_timeout_500ms
+      010036CAH   PUBLIC    CODE     ---       YC_connect_timeout_500ms
       01001FA8H   PUBLIC    CODE     ---       LED_timer500ms
-      0100365DH   PUBLIC    CODE     ---       System_Reset_Connect
+      010036B8H   PUBLIC    CODE     ---       System_Reset_Connect
       01001EF3H   PUBLIC    CODE     ---       System_G24_long_lpm
       01000F38H   PUBLIC    CODE     ---       System_long_sleep
-      01003514H   PUBLIC    CODE     ---       System_Software_init
+      0100356FH   PUBLIC    CODE     ---       System_Software_init
       01002B05H   PUBLIC    CODE     ---       System_clear_timer_status
 
       01001661H   BLOCK     CODE     ---       LVL=0
@@ -2348,16 +2375,16 @@
       01002B1CH   LINE      ---      ---       #51
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003501H   BLOCK     CODE     ---       LVL=0
-      01003501H   LINE      ---      ---       #52
-      01003501H   LINE      ---      ---       #53
-      01003501H   LINE      ---      ---       #54
-      01003507H   LINE      ---      ---       #55
-      0100350AH   LINE      ---      ---       #56
-      0100350CH   LINE      ---      ---       #57
-      0100350EH   LINE      ---      ---       #58
-      01003510H   LINE      ---      ---       #59
-      01003513H   LINE      ---      ---       #60
+      0100355CH   BLOCK     CODE     ---       LVL=0
+      0100355CH   LINE      ---      ---       #52
+      0100355CH   LINE      ---      ---       #53
+      0100355CH   LINE      ---      ---       #54
+      01003562H   LINE      ---      ---       #55
+      01003565H   LINE      ---      ---       #56
+      01003567H   LINE      ---      ---       #57
+      01003569H   LINE      ---      ---       #58
+      0100356BH   LINE      ---      ---       #59
+      0100356EH   LINE      ---      ---       #60
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000FF1H   BLOCK     CODE     ---       LVL=0
@@ -2367,26 +2394,26 @@
       01000FF4H   LINE      ---      ---       #65
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003514H   BLOCK     CODE     ---       LVL=0
-      01003514H   LINE      ---      ---       #70
-      01003514H   LINE      ---      ---       #71
-      01003514H   LINE      ---      ---       #72
-      01003517H   LINE      ---      ---       #73
-      01003519H   LINE      ---      ---       #74
-      0100351FH   LINE      ---      ---       #75
-      01003525H   LINE      ---      ---       #76
-      0100352AH   LINE      ---      ---       #77
-      01003530H   LINE      ---      ---       #78
-      01003538H   LINE      ---      ---       #79
-      01003540H   LINE      ---      ---       #80
-      01003548H   LINE      ---      ---       #81
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003654H   BLOCK     CODE     ---       LVL=0
-      01003654H   LINE      ---      ---       #83
-      01003654H   LINE      ---      ---       #84
-      01003654H   LINE      ---      ---       #85
-      0100365AH   LINE      ---      ---       #86
+      0100356FH   BLOCK     CODE     ---       LVL=0
+      0100356FH   LINE      ---      ---       #70
+      0100356FH   LINE      ---      ---       #71
+      0100356FH   LINE      ---      ---       #72
+      01003572H   LINE      ---      ---       #73
+      01003574H   LINE      ---      ---       #74
+      0100357AH   LINE      ---      ---       #75
+      01003580H   LINE      ---      ---       #76
+      01003585H   LINE      ---      ---       #77
+      0100358BH   LINE      ---      ---       #78
+      01003593H   LINE      ---      ---       #79
+      0100359BH   LINE      ---      ---       #80
+      010035A3H   LINE      ---      ---       #81
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010036AFH   BLOCK     CODE     ---       LVL=0
+      010036AFH   LINE      ---      ---       #83
+      010036AFH   LINE      ---      ---       #84
+      010036AFH   LINE      ---      ---       #85
+      010036B5H   LINE      ---      ---       #86
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000F38H   BLOCK     CODE     ---       LVL=0
@@ -2413,19 +2440,19 @@
       01001F1FH   LINE      ---      ---       #110
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100365DH   BLOCK     CODE     ---       LVL=0
-      0100365DH   LINE      ---      ---       #112
-      0100365DH   LINE      ---      ---       #113
-      0100365DH   LINE      ---      ---       #114
+      010036B8H   BLOCK     CODE     ---       LVL=0
+      010036B8H   LINE      ---      ---       #112
+      010036B8H   LINE      ---      ---       #113
+      010036B8H   LINE      ---      ---       #114
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010037C7H   BLOCK     CODE     ---       LVL=0
-      010037C7H   LINE      ---      ---       #122
-      010037CCH   BLOCK     CODE     NEAR LAB  LVL=1
-      010037CCH   LINE      ---      ---       #124
-      010037D6H   LINE      ---      ---       #126
-      010037D6H   LINE      ---      ---       #128
-      010037D6H   LINE      ---      ---       #129
+      010036BAH   BLOCK     CODE     ---       LVL=0
+      010036BAH   LINE      ---      ---       #122
+      010036BFH   BLOCK     CODE     NEAR LAB  LVL=1
+      010036BFH   LINE      ---      ---       #124
+      010036C9H   LINE      ---      ---       #126
+      010036C9H   LINE      ---      ---       #128
+      010036C9H   LINE      ---      ---       #129
       02004F05H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2708,69 +2735,69 @@
       01001FA8H   LINE      ---      ---       #472
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010037D7H   BLOCK     CODE     ---       LVL=0
-      010037D7H   LINE      ---      ---       #474
-      010037D7H   LINE      ---      ---       #475
-      010037D7H   LINE      ---      ---       #477
-      010037DDH   LINE      ---      ---       #478
-      010037DDH   LINE      ---      ---       #479
-      010037E0H   LINE      ---      ---       #480
-      010037E3H   LINE      ---      ---       #481
-      010037E3H   LINE      ---      ---       #482
-      010037E8H   LINE      ---      ---       #483
-      010037ECH   LINE      ---      ---       #484
-      010037ECH   LINE      ---      ---       #485
-      010037ECH   LINE      ---      ---       #488
-      010037FCH   LINE      ---      ---       #490
-      010037FCH   LINE      ---      ---       #491
-      01003804H   LINE      ---      ---       #492
-      01003804H   LINE      ---      ---       #493
-      0100381AH   LINE      ---      ---       #494
-      0100381AH   LINE      ---      ---       #495
-      0100381FH   LINE      ---      ---       #496
-      01003825H   LINE      ---      ---       #497
-      0100382DH   LINE      ---      ---       #498
-      01003838H   LINE      ---      ---       #499
-      01003838H   LINE      ---      ---       #500
-      01003838H   LINE      ---      ---       #501
-      01003848H   LINE      ---      ---       #502
-      01003848H   LINE      ---      ---       #503
-      0100384BH   LINE      ---      ---       #504
-      01003851H   LINE      ---      ---       #505
-      01003851H   LINE      ---      ---       #506
-      01003852H   LINE      ---      ---       #507
-      0100385AH   LINE      ---      ---       #508
-      0100385AH   LINE      ---      ---       #510
-      01003864H   LINE      ---      ---       #511
-      01003864H   LINE      ---      ---       #512
-      01003870H   LINE      ---      ---       #514
-      01003875H   LINE      ---      ---       #515
-      0100387AH   LINE      ---      ---       #516
-      01003884H   LINE      ---      ---       #517
-      01003884H   LINE      ---      ---       #519
-      01003893H   LINE      ---      ---       #520
-      01003893H   LINE      ---      ---       #521
-      01003896H   LINE      ---      ---       #522
-      01003896H   LINE      ---      ---       #523
-      01003896H   LINE      ---      ---       #524
-      0100389DH   LINE      ---      ---       #525
-      0100389DH   LINE      ---      ---       #526
-      010038ACH   LINE      ---      ---       #527
-      010038ACH   LINE      ---      ---       #528
-      010038AFH   LINE      ---      ---       #529
-      010038AFH   LINE      ---      ---       #530
-      010038AFH   LINE      ---      ---       #532
-      010038AFH   LINE      ---      ---       #533
-      010038BEH   LINE      ---      ---       #534
-      010038BEH   LINE      ---      ---       #535
-      010038C4H   LINE      ---      ---       #536
-      010038C4H   LINE      ---      ---       #537
-      010038C6H   LINE      ---      ---       #538
-      010038CBH   LINE      ---      ---       #539
-      010038CBH   LINE      ---      ---       #540
-      010038CEH   LINE      ---      ---       #541
-      010038CEH   LINE      ---      ---       #542
-      010038CEH   LINE      ---      ---       #543
+      010036CAH   BLOCK     CODE     ---       LVL=0
+      010036CAH   LINE      ---      ---       #474
+      010036CAH   LINE      ---      ---       #475
+      010036CAH   LINE      ---      ---       #477
+      010036D0H   LINE      ---      ---       #478
+      010036D0H   LINE      ---      ---       #479
+      010036D3H   LINE      ---      ---       #480
+      010036D6H   LINE      ---      ---       #481
+      010036D6H   LINE      ---      ---       #482
+      010036DBH   LINE      ---      ---       #483
+      010036DFH   LINE      ---      ---       #484
+      010036DFH   LINE      ---      ---       #485
+      010036DFH   LINE      ---      ---       #488
+      010036EFH   LINE      ---      ---       #490
+      010036EFH   LINE      ---      ---       #491
+      010036F7H   LINE      ---      ---       #492
+      010036F7H   LINE      ---      ---       #493
+      0100370DH   LINE      ---      ---       #494
+      0100370DH   LINE      ---      ---       #495
+      01003712H   LINE      ---      ---       #496
+      01003718H   LINE      ---      ---       #497
+      01003720H   LINE      ---      ---       #498
+      0100372BH   LINE      ---      ---       #499
+      0100372BH   LINE      ---      ---       #500
+      0100372BH   LINE      ---      ---       #501
+      0100373BH   LINE      ---      ---       #502
+      0100373BH   LINE      ---      ---       #503
+      0100373EH   LINE      ---      ---       #504
+      01003744H   LINE      ---      ---       #505
+      01003744H   LINE      ---      ---       #506
+      01003745H   LINE      ---      ---       #507
+      0100374DH   LINE      ---      ---       #508
+      0100374DH   LINE      ---      ---       #510
+      01003757H   LINE      ---      ---       #511
+      01003757H   LINE      ---      ---       #512
+      01003763H   LINE      ---      ---       #514
+      01003768H   LINE      ---      ---       #515
+      0100376DH   LINE      ---      ---       #516
+      01003777H   LINE      ---      ---       #517
+      01003777H   LINE      ---      ---       #519
+      01003786H   LINE      ---      ---       #520
+      01003786H   LINE      ---      ---       #521
+      01003789H   LINE      ---      ---       #522
+      01003789H   LINE      ---      ---       #523
+      01003789H   LINE      ---      ---       #524
+      01003790H   LINE      ---      ---       #525
+      01003790H   LINE      ---      ---       #526
+      0100379FH   LINE      ---      ---       #527
+      0100379FH   LINE      ---      ---       #528
+      010037A2H   LINE      ---      ---       #529
+      010037A2H   LINE      ---      ---       #530
+      010037A2H   LINE      ---      ---       #532
+      010037A2H   LINE      ---      ---       #533
+      010037B1H   LINE      ---      ---       #534
+      010037B1H   LINE      ---      ---       #535
+      010037B7H   LINE      ---      ---       #536
+      010037B7H   LINE      ---      ---       #537
+      010037B9H   LINE      ---      ---       #538
+      010037BEH   LINE      ---      ---       #539
+      010037BEH   LINE      ---      ---       #540
+      010037C1H   LINE      ---      ---       #541
+      010037C1H   LINE      ---      ---       #542
+      010037C1H   LINE      ---      ---       #543
       ---         BLOCKEND  ---      ---       LVL=0
 
       010022EAH   BLOCK     CODE     ---       LVL=0
@@ -2840,98 +2867,98 @@
       01001EF2H   LINE      ---      ---       #633
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010038CFH   BLOCK     CODE     ---       LVL=0
-      010038CFH   LINE      ---      ---       #635
-      010038CFH   LINE      ---      ---       #636
-      010038CFH   LINE      ---      ---       #653
-      010038D6H   LINE      ---      ---       #654
-      010038D6H   LINE      ---      ---       #655
-      010038DFH   LINE      ---      ---       #656
-      010038E2H   LINE      ---      ---       #657
-      010038EAH   LINE      ---      ---       #658
-      010038EAH   LINE      ---      ---       #659
-      010038F0H   LINE      ---      ---       #660
-      010038F6H   LINE      ---      ---       #661
-      010038F6H   LINE      ---      ---       #662
-      010038FBH   LINE      ---      ---       #663
-      010038FDH   LINE      ---      ---       #664
-      01003904H   LINE      ---      ---       #665
-      01003904H   LINE      ---      ---       #666
-      0100390AH   LINE      ---      ---       #667
-      0100390FH   LINE      ---      ---       #668
-      01003912H   LINE      ---      ---       #669
-      01003912H   LINE      ---      ---       #670
-      01003912H   LINE      ---      ---       #671
-      01003914H   LINE      ---      ---       #673
-      01003914H   LINE      ---      ---       #674
-      01003919H   LINE      ---      ---       #675
-      0100391DH   LINE      ---      ---       #676
-      01003921H   LINE      ---      ---       #677
-      01003921H   LINE      ---      ---       #679
-      01003928H   LINE      ---      ---       #680
-      01003928H   LINE      ---      ---       #681
-      0100392EH   LINE      ---      ---       #682
-      01003937H   LINE      ---      ---       #683
-      0100393AH   LINE      ---      ---       #684
-      01003942H   LINE      ---      ---       #685
-      01003942H   LINE      ---      ---       #686
-      0100394DH   LINE      ---      ---       #687
-      0100394DH   LINE      ---      ---       #688
-      01003952H   LINE      ---      ---       #689
-      01003955H   LINE      ---      ---       #690
-      0100395AH   LINE      ---      ---       #691
-      0100395DH   LINE      ---      ---       #692
-      01003962H   LINE      ---      ---       #693
-      01003962H   LINE      ---      ---       #694
-      01003962H   LINE      ---      ---       #695
-      01003964H   LINE      ---      ---       #697
-      01003964H   LINE      ---      ---       #698
-      0100396AH   LINE      ---      ---       #699
-      0100396AH   LINE      ---      ---       #700
-      0100396CH   LINE      ---      ---       #701
-      01003971H   LINE      ---      ---       #702
-      01003977H   LINE      ---      ---       #703
-      0100397FH   LINE      ---      ---       #704
-      01003985H   LINE      ---      ---       #705
-      01003988H   LINE      ---      ---       #706
-      0100398DH   LINE      ---      ---       #707
-      0100398DH   LINE      ---      ---       #708
-      01003992H   LINE      ---      ---       #709
-      01003992H   LINE      ---      ---       #712
-      01003999H   LINE      ---      ---       #713
-      01003999H   LINE      ---      ---       #714
-      0100399FH   LINE      ---      ---       #715
-      010039A8H   LINE      ---      ---       #716
-      010039ABH   LINE      ---      ---       #717
-      010039B3H   LINE      ---      ---       #718
-      010039B3H   LINE      ---      ---       #720
-      010039BDH   LINE      ---      ---       #721
-      010039C4H   LINE      ---      ---       #722
-      010039C9H   LINE      ---      ---       #723
-      010039CCH   LINE      ---      ---       #724
-      010039D1H   LINE      ---      ---       #725
-      010039D6H   LINE      ---      ---       #726
-      010039DEH   LINE      ---      ---       #727
-      010039E6H   LINE      ---      ---       #728
-      010039E6H   LINE      ---      ---       #729
-      010039E7H   LINE      ---      ---       #731
-      010039E7H   LINE      ---      ---       #732
-      010039EDH   LINE      ---      ---       #733
-      010039EDH   LINE      ---      ---       #734
-      010039EFH   LINE      ---      ---       #736
-      010039FBH   LINE      ---      ---       #737
-      010039FBH   LINE      ---      ---       #738
-      01003A01H   LINE      ---      ---       #739
-      01003A04H   LINE      ---      ---       #740
-      01003A0CH   LINE      ---      ---       #741
-      01003A12H   LINE      ---      ---       #743
-      01003A15H   LINE      ---      ---       #744
-      01003A18H   LINE      ---      ---       #745
-      01003A1DH   LINE      ---      ---       #746
-      01003A1DH   LINE      ---      ---       #747
-      01003A1DH   LINE      ---      ---       #748
-      01003A22H   LINE      ---      ---       #749
-      01003A22H   LINE      ---      ---       #750
+      010037C2H   BLOCK     CODE     ---       LVL=0
+      010037C2H   LINE      ---      ---       #635
+      010037C2H   LINE      ---      ---       #636
+      010037C2H   LINE      ---      ---       #653
+      010037C9H   LINE      ---      ---       #654
+      010037C9H   LINE      ---      ---       #655
+      010037D2H   LINE      ---      ---       #656
+      010037D5H   LINE      ---      ---       #657
+      010037DDH   LINE      ---      ---       #658
+      010037DDH   LINE      ---      ---       #659
+      010037E3H   LINE      ---      ---       #660
+      010037E9H   LINE      ---      ---       #661
+      010037E9H   LINE      ---      ---       #662
+      010037EEH   LINE      ---      ---       #663
+      010037F0H   LINE      ---      ---       #664
+      010037F7H   LINE      ---      ---       #665
+      010037F7H   LINE      ---      ---       #666
+      010037FDH   LINE      ---      ---       #667
+      01003802H   LINE      ---      ---       #668
+      01003805H   LINE      ---      ---       #669
+      01003805H   LINE      ---      ---       #670
+      01003805H   LINE      ---      ---       #671
+      01003807H   LINE      ---      ---       #673
+      01003807H   LINE      ---      ---       #674
+      0100380CH   LINE      ---      ---       #675
+      01003810H   LINE      ---      ---       #676
+      01003814H   LINE      ---      ---       #677
+      01003814H   LINE      ---      ---       #679
+      0100381BH   LINE      ---      ---       #680
+      0100381BH   LINE      ---      ---       #681
+      01003821H   LINE      ---      ---       #682
+      0100382AH   LINE      ---      ---       #683
+      0100382DH   LINE      ---      ---       #684
+      01003835H   LINE      ---      ---       #685
+      01003835H   LINE      ---      ---       #686
+      01003840H   LINE      ---      ---       #687
+      01003840H   LINE      ---      ---       #688
+      01003845H   LINE      ---      ---       #689
+      01003848H   LINE      ---      ---       #690
+      0100384DH   LINE      ---      ---       #691
+      01003850H   LINE      ---      ---       #692
+      01003855H   LINE      ---      ---       #693
+      01003855H   LINE      ---      ---       #694
+      01003855H   LINE      ---      ---       #695
+      01003857H   LINE      ---      ---       #697
+      01003857H   LINE      ---      ---       #698
+      0100385DH   LINE      ---      ---       #699
+      0100385DH   LINE      ---      ---       #700
+      0100385FH   LINE      ---      ---       #701
+      01003864H   LINE      ---      ---       #702
+      0100386AH   LINE      ---      ---       #703
+      01003872H   LINE      ---      ---       #704
+      01003878H   LINE      ---      ---       #705
+      0100387BH   LINE      ---      ---       #706
+      01003880H   LINE      ---      ---       #707
+      01003880H   LINE      ---      ---       #708
+      01003885H   LINE      ---      ---       #709
+      01003885H   LINE      ---      ---       #712
+      0100388CH   LINE      ---      ---       #713
+      0100388CH   LINE      ---      ---       #714
+      01003892H   LINE      ---      ---       #715
+      0100389BH   LINE      ---      ---       #716
+      0100389EH   LINE      ---      ---       #717
+      010038A6H   LINE      ---      ---       #718
+      010038A6H   LINE      ---      ---       #720
+      010038B0H   LINE      ---      ---       #721
+      010038B7H   LINE      ---      ---       #722
+      010038BCH   LINE      ---      ---       #723
+      010038BFH   LINE      ---      ---       #724
+      010038C4H   LINE      ---      ---       #725
+      010038C9H   LINE      ---      ---       #726
+      010038D1H   LINE      ---      ---       #727
+      010038D9H   LINE      ---      ---       #728
+      010038D9H   LINE      ---      ---       #729
+      010038DAH   LINE      ---      ---       #731
+      010038DAH   LINE      ---      ---       #732
+      010038E0H   LINE      ---      ---       #733
+      010038E0H   LINE      ---      ---       #734
+      010038E2H   LINE      ---      ---       #736
+      010038EEH   LINE      ---      ---       #737
+      010038EEH   LINE      ---      ---       #738
+      010038F4H   LINE      ---      ---       #739
+      010038F7H   LINE      ---      ---       #740
+      010038FFH   LINE      ---      ---       #741
+      01003905H   LINE      ---      ---       #743
+      01003908H   LINE      ---      ---       #744
+      0100390BH   LINE      ---      ---       #745
+      01003910H   LINE      ---      ---       #746
+      01003910H   LINE      ---      ---       #747
+      01003910H   LINE      ---      ---       #748
+      01003915H   LINE      ---      ---       #749
+      01003915H   LINE      ---      ---       #750
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001F62H   BLOCK     CODE     ---       LVL=0
@@ -2951,120 +2978,120 @@
       01001F95H   LINE      ---      ---       #773
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100365FH   BLOCK     CODE     ---       LVL=0
-      0100365FH   LINE      ---      ---       #776
-      0100365FH   LINE      ---      ---       #777
-      0100365FH   LINE      ---      ---       #780
-      01003665H   LINE      ---      ---       #781
-      01003665H   LINE      ---      ---       #782
-      01003667H   LINE      ---      ---       #783
-      01003667H   LINE      ---      ---       #785
-      0100366DH   LINE      ---      ---       #786
-      0100366FH   LINE      ---      ---       #788
-      01003675H   LINE      ---      ---       #789
-      01003675H   LINE      ---      ---       #790
-      01003677H   LINE      ---      ---       #791
-      0100367AH   LINE      ---      ---       #792
-      01003680H   LINE      ---      ---       #793
-      01003680H   LINE      ---      ---       #795
-      01003686H   LINE      ---      ---       #796
-      01003686H   LINE      ---      ---       #797
-      0100369AH   LINE      ---      ---       #798
-      0100369AH   LINE      ---      ---       #799
-      010036A0H   LINE      ---      ---       #801
-      010036A0H   LINE      ---      ---       #803
-      010036A6H   LINE      ---      ---       #804
-      010036A9H   LINE      ---      ---       #805
-      010036A9H   LINE      ---      ---       #806
-      010036B0H   LINE      ---      ---       #807
-      010036B2H   LINE      ---      ---       #809
-      010036B2H   LINE      ---      ---       #810
-      010036B9H   LINE      ---      ---       #811
-      010036B9H   LINE      ---      ---       #813
-      010036BBH   LINE      ---      ---       #814
-      010036CFH   LINE      ---      ---       #815
-      010036CFH   LINE      ---      ---       #816
-      010036D5H   LINE      ---      ---       #817
-      010036D5H   LINE      ---      ---       #818
-      010036D7H   LINE      ---      ---       #819
-      010036DEH   LINE      ---      ---       #820
-      010036DEH   LINE      ---      ---       #821
-      010036E2H   LINE      ---      ---       #822
-      010036E2H   LINE      ---      ---       #823
-      010036E9H   LINE      ---      ---       #824
-      010036EBH   LINE      ---      ---       #826
-      010036EBH   LINE      ---      ---       #827
-      010036F2H   LINE      ---      ---       #828
-      010036F2H   LINE      ---      ---       #829
-      010036F4H   LINE      ---      ---       #831
-      010036FBH   LINE      ---      ---       #832
-      01003701H   LINE      ---      ---       #833
-      01003704H   LINE      ---      ---       #834
-      01003704H   LINE      ---      ---       #835
-      01003704H   LINE      ---      ---       #837
-      0100370AH   LINE      ---      ---       #838
-      0100370AH   LINE      ---      ---       #839
-      01003712H   LINE      ---      ---       #840
-      01003712H   LINE      ---      ---       #841
-      01003718H   LINE      ---      ---       #842
-      0100371CH   LINE      ---      ---       #844
-      01003722H   LINE      ---      ---       #845
-      01003722H   LINE      ---      ---       #846
-      0100372DH   LINE      ---      ---       #847
-      0100372FH   LINE      ---      ---       #848
-      01003735H   LINE      ---      ---       #849
-      01003735H   LINE      ---      ---       #851
-      01003740H   LINE      ---      ---       #852
-      01003740H   LINE      ---      ---       #853
-      01003740H   LINE      ---      ---       #854
-      01003740H   LINE      ---      ---       #856
-      01003758H   LINE      ---      ---       #857
-      01003758H   LINE      ---      ---       #858
-      0100375EH   LINE      ---      ---       #859
-      01003765H   LINE      ---      ---       #860
-      0100376BH   LINE      ---      ---       #861
-      0100376BH   LINE      ---      ---       #862
-      01003772H   LINE      ---      ---       #863
-      01003772H   LINE      ---      ---       #864
-      01003772H   LINE      ---      ---       #867
-      01003778H   LINE      ---      ---       #868
-      01003778H   LINE      ---      ---       #869
-      0100377BH   LINE      ---      ---       #870
-      0100377EH   LINE      ---      ---       #871
-      0100377EH   LINE      ---      ---       #872
-      01003780H   LINE      ---      ---       #873
-      01003780H   LINE      ---      ---       #874
-      01003780H   LINE      ---      ---       #877
-      01003786H   LINE      ---      ---       #878
-      01003786H   LINE      ---      ---       #879
-      01003789H   LINE      ---      ---       #880
-      0100378CH   LINE      ---      ---       #881
-      0100378CH   LINE      ---      ---       #882
-      01003792H   LINE      ---      ---       #883
-      01003792H   LINE      ---      ---       #884
-      01003797H   LINE      ---      ---       #885
-      01003797H   LINE      ---      ---       #886
-      01003797H   LINE      ---      ---       #887
-      01003797H   LINE      ---      ---       #889
-      0100379DH   LINE      ---      ---       #890
-      0100379DH   LINE      ---      ---       #891
-      010037A0H   LINE      ---      ---       #892
-      010037A3H   LINE      ---      ---       #893
-      010037A3H   LINE      ---      ---       #894
-      010037A9H   LINE      ---      ---       #895
-      010037A9H   LINE      ---      ---       #896
-      010037ABH   LINE      ---      ---       #897
-      010037ABH   LINE      ---      ---       #899
-      010037B2H   LINE      ---      ---       #900
-      010037B2H   LINE      ---      ---       #901
-      010037B8H   LINE      ---      ---       #902
-      010037B9H   LINE      ---      ---       #903
-      010037C0H   LINE      ---      ---       #904
-      010037C0H   LINE      ---      ---       #905
-      010037C6H   LINE      ---      ---       #906
-      010037C6H   LINE      ---      ---       #907
-      010037C6H   LINE      ---      ---       #908
-      010037C6H   LINE      ---      ---       #909
+      01003916H   BLOCK     CODE     ---       LVL=0
+      01003916H   LINE      ---      ---       #776
+      01003916H   LINE      ---      ---       #777
+      01003916H   LINE      ---      ---       #780
+      0100391CH   LINE      ---      ---       #781
+      0100391CH   LINE      ---      ---       #782
+      0100391EH   LINE      ---      ---       #783
+      0100391EH   LINE      ---      ---       #785
+      01003924H   LINE      ---      ---       #786
+      01003926H   LINE      ---      ---       #788
+      0100392CH   LINE      ---      ---       #789
+      0100392CH   LINE      ---      ---       #790
+      0100392EH   LINE      ---      ---       #791
+      01003931H   LINE      ---      ---       #792
+      01003937H   LINE      ---      ---       #793
+      01003937H   LINE      ---      ---       #795
+      0100393DH   LINE      ---      ---       #796
+      0100393DH   LINE      ---      ---       #797
+      01003951H   LINE      ---      ---       #798
+      01003951H   LINE      ---      ---       #799
+      01003957H   LINE      ---      ---       #801
+      01003957H   LINE      ---      ---       #803
+      0100395DH   LINE      ---      ---       #804
+      01003960H   LINE      ---      ---       #805
+      01003960H   LINE      ---      ---       #806
+      01003967H   LINE      ---      ---       #807
+      01003969H   LINE      ---      ---       #809
+      01003969H   LINE      ---      ---       #810
+      01003970H   LINE      ---      ---       #811
+      01003970H   LINE      ---      ---       #813
+      01003972H   LINE      ---      ---       #814
+      01003986H   LINE      ---      ---       #815
+      01003986H   LINE      ---      ---       #816
+      0100398CH   LINE      ---      ---       #817
+      0100398CH   LINE      ---      ---       #818
+      0100398EH   LINE      ---      ---       #819
+      01003995H   LINE      ---      ---       #820
+      01003995H   LINE      ---      ---       #821
+      01003999H   LINE      ---      ---       #822
+      01003999H   LINE      ---      ---       #823
+      010039A0H   LINE      ---      ---       #824
+      010039A2H   LINE      ---      ---       #826
+      010039A2H   LINE      ---      ---       #827
+      010039A9H   LINE      ---      ---       #828
+      010039A9H   LINE      ---      ---       #829
+      010039ABH   LINE      ---      ---       #831
+      010039B2H   LINE      ---      ---       #832
+      010039B8H   LINE      ---      ---       #833
+      010039BBH   LINE      ---      ---       #834
+      010039BBH   LINE      ---      ---       #835
+      010039BBH   LINE      ---      ---       #837
+      010039C1H   LINE      ---      ---       #838
+      010039C1H   LINE      ---      ---       #839
+      010039C9H   LINE      ---      ---       #840
+      010039C9H   LINE      ---      ---       #841
+      010039CFH   LINE      ---      ---       #842
+      010039D3H   LINE      ---      ---       #844
+      010039D9H   LINE      ---      ---       #845
+      010039D9H   LINE      ---      ---       #846
+      010039E4H   LINE      ---      ---       #847
+      010039E6H   LINE      ---      ---       #848
+      010039ECH   LINE      ---      ---       #849
+      010039ECH   LINE      ---      ---       #851
+      010039F7H   LINE      ---      ---       #852
+      010039F7H   LINE      ---      ---       #853
+      010039F7H   LINE      ---      ---       #854
+      010039F7H   LINE      ---      ---       #856
+      01003A0FH   LINE      ---      ---       #857
+      01003A0FH   LINE      ---      ---       #858
+      01003A15H   LINE      ---      ---       #859
+      01003A1CH   LINE      ---      ---       #860
+      01003A22H   LINE      ---      ---       #861
+      01003A22H   LINE      ---      ---       #862
+      01003A29H   LINE      ---      ---       #863
+      01003A29H   LINE      ---      ---       #864
+      01003A29H   LINE      ---      ---       #867
+      01003A2FH   LINE      ---      ---       #868
+      01003A2FH   LINE      ---      ---       #869
+      01003A32H   LINE      ---      ---       #870
+      01003A35H   LINE      ---      ---       #871
+      01003A35H   LINE      ---      ---       #872
+      01003A38H   LINE      ---      ---       #873
+      01003A38H   LINE      ---      ---       #874
+      01003A38H   LINE      ---      ---       #877
+      01003A3EH   LINE      ---      ---       #878
+      01003A3EH   LINE      ---      ---       #879
+      01003A41H   LINE      ---      ---       #880
+      01003A44H   LINE      ---      ---       #881
+      01003A44H   LINE      ---      ---       #882
+      01003A4AH   LINE      ---      ---       #883
+      01003A4AH   LINE      ---      ---       #884
+      01003A4FH   LINE      ---      ---       #885
+      01003A4FH   LINE      ---      ---       #886
+      01003A4FH   LINE      ---      ---       #887
+      01003A4FH   LINE      ---      ---       #889
+      01003A55H   LINE      ---      ---       #890
+      01003A55H   LINE      ---      ---       #891
+      01003A58H   LINE      ---      ---       #892
+      01003A5BH   LINE      ---      ---       #893
+      01003A5BH   LINE      ---      ---       #894
+      01003A61H   LINE      ---      ---       #895
+      01003A61H   LINE      ---      ---       #896
+      01003A63H   LINE      ---      ---       #897
+      01003A63H   LINE      ---      ---       #899
+      01003A6AH   LINE      ---      ---       #900
+      01003A6AH   LINE      ---      ---       #901
+      01003A70H   LINE      ---      ---       #902
+      01003A71H   LINE      ---      ---       #903
+      01003A78H   LINE      ---      ---       #904
+      01003A78H   LINE      ---      ---       #905
+      01003A7EH   LINE      ---      ---       #906
+      01003A7EH   LINE      ---      ---       #907
+      01003A7EH   LINE      ---      ---       #908
+      01003A7EH   LINE      ---      ---       #909
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001DD2H   BLOCK     CODE     ---       LVL=0
@@ -3110,75 +3137,75 @@
 
       ---         MODULE    ---      ---       ADC
       01001F96H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
-      01003A23H   PUBLIC    CODE     ---       YC_adc_check
-      01003549H   PUBLIC    CODE     ---       YC_adc_init
+      01003A7FH   PUBLIC    CODE     ---       YC_adc_check
+      010035A4H   PUBLIC    CODE     ---       YC_adc_init
 
-      01003549H   BLOCK     CODE     ---       LVL=0
-      01003549H   LINE      ---      ---       #3
-      01003549H   LINE      ---      ---       #4
-      01003549H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003549H   LINE      ---      ---       #8
-      0100354FH   LINE      ---      ---       #9
-      01003552H   LINE      ---      ---       #12
-      01003553H   LINE      ---      ---       #13
-      01003553H   LINE      ---      ---       #14
-      01003564H   LINE      ---      ---       #15
-      01003569H   LINE      ---      ---       #16
-      010035B7H   LINE      ---      ---       #17
-      01003605H   LINE      ---      ---       #18
-      01003653H   LINE      ---      ---       #40
+      010035A4H   BLOCK     CODE     ---       LVL=0
+      010035A4H   LINE      ---      ---       #3
+      010035A4H   LINE      ---      ---       #4
+      010035A4H   BLOCK     CODE     NEAR LAB  LVL=1
+      010035A4H   LINE      ---      ---       #8
+      010035AAH   LINE      ---      ---       #9
+      010035ADH   LINE      ---      ---       #12
+      010035AEH   LINE      ---      ---       #13
+      010035AEH   LINE      ---      ---       #14
+      010035BFH   LINE      ---      ---       #15
+      010035C4H   LINE      ---      ---       #16
+      01003612H   LINE      ---      ---       #17
+      01003660H   LINE      ---      ---       #18
+      010036AEH   LINE      ---      ---       #40
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003A23H   BLOCK     CODE     ---       LVL=0
-      01003A23H   LINE      ---      ---       #42
-      01003A23H   LINE      ---      ---       #43
-      01003A23H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003A23H   LINE      ---      ---       #46
-      01003A2DH   LINE      ---      ---       #48
-      01003A39H   LINE      ---      ---       #51
-      01003A59H   LINE      ---      ---       #52
-      01003A62H   LINE      ---      ---       #53
-      01003A64H   LINE      ---      ---       #54
-      01003A69H   LINE      ---      ---       #55
-      01003A69H   LINE      ---      ---       #56
-      01003AA0H   LINE      ---      ---       #57
-      01003AAAH   LINE      ---      ---       #58
-      01003AC7H   LINE      ---      ---       #60
-      01003AE6H   LINE      ---      ---       #61
-      01003AEDH   LINE      ---      ---       #62
-      01003B0CH   LINE      ---      ---       #63
-      01003B14H   LINE      ---      ---       #65
-      01003B6FH   LINE      ---      ---       #67
-      01003B8EH   LINE      ---      ---       #68
-      01003B8EH   LINE      ---      ---       #69
-      01003B94H   LINE      ---      ---       #70
-      01003B96H   LINE      ---      ---       #72
-      01003B96H   LINE      ---      ---       #73
-      01003BB5H   LINE      ---      ---       #74
-      01003BB5H   LINE      ---      ---       #75
-      01003BBBH   LINE      ---      ---       #76
-      01003BC1H   LINE      ---      ---       #77
-      01003BC1H   LINE      ---      ---       #78
-      01003BC5H   LINE      ---      ---       #79
-      01003BC9H   LINE      ---      ---       #80
-      01003BCDH   LINE      ---      ---       #81
-      01003BD0H   LINE      ---      ---       #82
-      01003BD0H   LINE      ---      ---       #83
-      01003BD2H   LINE      ---      ---       #85
-      01003BD2H   LINE      ---      ---       #86
-      01003BD7H   LINE      ---      ---       #87
-      01003BDDH   LINE      ---      ---       #88
-      01003BDDH   LINE      ---      ---       #89
-      01003BE1H   LINE      ---      ---       #90
-      01003BE5H   LINE      ---      ---       #91
-      01003BE9H   LINE      ---      ---       #92
-      01003BECH   LINE      ---      ---       #93
-      01003BECH   LINE      ---      ---       #94
-      01003BECH   LINE      ---      ---       #95
-      01003BECH   LINE      ---      ---       #97
-      01003BF4H   LINE      ---      ---       #99
+      01003A7FH   BLOCK     CODE     ---       LVL=0
+      01003A7FH   LINE      ---      ---       #42
+      01003A7FH   LINE      ---      ---       #43
+      01003A7FH   BLOCK     CODE     NEAR LAB  LVL=1
+      01003A7FH   LINE      ---      ---       #46
+      01003A89H   LINE      ---      ---       #48
+      01003A95H   LINE      ---      ---       #51
+      01003AB5H   LINE      ---      ---       #52
+      01003ABEH   LINE      ---      ---       #53
+      01003AC0H   LINE      ---      ---       #54
+      01003AC5H   LINE      ---      ---       #55
+      01003AC5H   LINE      ---      ---       #56
+      01003AFCH   LINE      ---      ---       #57
+      01003B06H   LINE      ---      ---       #58
+      01003B23H   LINE      ---      ---       #60
+      01003B42H   LINE      ---      ---       #61
+      01003B49H   LINE      ---      ---       #62
+      01003B68H   LINE      ---      ---       #63
+      01003B70H   LINE      ---      ---       #65
+      01003BCBH   LINE      ---      ---       #67
+      01003BEAH   LINE      ---      ---       #68
+      01003BEAH   LINE      ---      ---       #69
+      01003BF0H   LINE      ---      ---       #70
+      01003BF2H   LINE      ---      ---       #72
+      01003BF2H   LINE      ---      ---       #73
+      01003C11H   LINE      ---      ---       #74
+      01003C11H   LINE      ---      ---       #75
+      01003C17H   LINE      ---      ---       #76
+      01003C1DH   LINE      ---      ---       #77
+      01003C1DH   LINE      ---      ---       #78
+      01003C21H   LINE      ---      ---       #79
+      01003C25H   LINE      ---      ---       #80
+      01003C29H   LINE      ---      ---       #81
+      01003C2CH   LINE      ---      ---       #82
+      01003C2CH   LINE      ---      ---       #83
+      01003C2EH   LINE      ---      ---       #85
+      01003C2EH   LINE      ---      ---       #86
+      01003C33H   LINE      ---      ---       #87
+      01003C39H   LINE      ---      ---       #88
+      01003C39H   LINE      ---      ---       #89
+      01003C3DH   LINE      ---      ---       #90
+      01003C41H   LINE      ---      ---       #91
+      01003C45H   LINE      ---      ---       #92
+      01003C48H   LINE      ---      ---       #93
+      01003C48H   LINE      ---      ---       #94
+      01003C48H   LINE      ---      ---       #95
+      01003C48H   LINE      ---      ---       #97
+      01003C50H   LINE      ---      ---       #99
       02004ECFH   SYMBOL    XDATA    VOID      i
       02004ED0H   SYMBOL    XDATA    VOID      batValue
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -3224,19 +3251,19 @@
       01001F22H   PUBLIC    CODE     ---       IPC_AbandonLpm
       01001B6BH   PUBLIC    CODE     ---       IPC_WaitLpm
       01001DD8H   PUBLIC    CODE     ---       _IPC_Initialize
-      01003C6EH   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
-      01003C65H   PUBLIC    CODE     ---       _IPC_TxBleData
-      01003C5CH   PUBLIC    CODE     ---       _IPC_TxSppData
+      01003CCAH   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
+      01003CC1H   PUBLIC    CODE     ---       _IPC_TxBleData
+      01003CB8H   PUBLIC    CODE     ---       _IPC_TxSppData
       010017D6H   PUBLIC    CODE     ---       _IPC_Tx24GData
-      01003C4FH   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
+      01003CABH   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
       010017DCH   PUBLIC    CODE     ---       _IPC_TxData
       0100085FH   PUBLIC    CODE     ---       _IPC_TxControlCmd
 
-      01003BF5H   BLOCK     CODE     ---       LVL=0
-      01003BF5H   LINE      ---      ---       #44
-      01003C05H   LINE      ---      ---       #45
-      01003C05H   LINE      ---      ---       #46
-      01003C4EH   LINE      ---      ---       #47
+      01003C51H   BLOCK     CODE     ---       LVL=0
+      01003C51H   LINE      ---      ---       #44
+      01003C61H   LINE      ---      ---       #45
+      01003C61H   LINE      ---      ---       #46
+      01003CAAH   LINE      ---      ---       #47
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001D82H   BLOCK     CODE     ---       LVL=0
@@ -3293,13 +3320,13 @@
       010017F2H   LINE      ---      ---       #87
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003C4FH   BLOCK     CODE     ---       LVL=0
-      01003C4FH   LINE      ---      ---       #90
-      01003C4FH   LINE      ---      ---       #91
-      01003C4FH   LINE      ---      ---       #92
-      01003C55H   LINE      ---      ---       #93
-      01003C58H   LINE      ---      ---       #94
-      01003C5BH   LINE      ---      ---       #95
+      01003CABH   BLOCK     CODE     ---       LVL=0
+      01003CABH   LINE      ---      ---       #90
+      01003CABH   LINE      ---      ---       #91
+      01003CABH   LINE      ---      ---       #92
+      01003CB1H   LINE      ---      ---       #93
+      01003CB4H   LINE      ---      ---       #94
+      01003CB7H   LINE      ---      ---       #95
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017D6H   BLOCK     CODE     ---       LVL=0
@@ -3308,25 +3335,25 @@
       010017D6H   LINE      ---      ---       #99
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003C5CH   BLOCK     CODE     ---       LVL=0
-      01003C5CH   LINE      ---      ---       #103
-      01003C5CH   LINE      ---      ---       #104
-      01003C5CH   LINE      ---      ---       #105
-      01003C62H   LINE      ---      ---       #106
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C65H   BLOCK     CODE     ---       LVL=0
-      01003C65H   LINE      ---      ---       #109
-      01003C65H   LINE      ---      ---       #110
-      01003C65H   LINE      ---      ---       #111
-      01003C6BH   LINE      ---      ---       #112
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003C6EH   BLOCK     CODE     ---       LVL=0
-      01003C6EH   LINE      ---      ---       #115
-      01003C6EH   LINE      ---      ---       #116
-      01003C6EH   LINE      ---      ---       #117
-      01003C73H   LINE      ---      ---       #118
+      01003CB8H   BLOCK     CODE     ---       LVL=0
+      01003CB8H   LINE      ---      ---       #103
+      01003CB8H   LINE      ---      ---       #104
+      01003CB8H   LINE      ---      ---       #105
+      01003CBEH   LINE      ---      ---       #106
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003CC1H   BLOCK     CODE     ---       LVL=0
+      01003CC1H   LINE      ---      ---       #109
+      01003CC1H   LINE      ---      ---       #110
+      01003CC1H   LINE      ---      ---       #111
+      01003CC7H   LINE      ---      ---       #112
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003CCAH   BLOCK     CODE     ---       LVL=0
+      01003CCAH   LINE      ---      ---       #115
+      01003CCAH   LINE      ---      ---       #116
+      01003CCAH   LINE      ---      ---       #117
+      01003CCFH   LINE      ---      ---       #118
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001DD8H   BLOCK     CODE     ---       LVL=0
@@ -3417,13 +3444,13 @@
       010022A6H   PUBLIC    CODE     ---       _dmemcpy
       02004EBFH   PUBLIC    XDATA    BYTE      ?_xmemcpy?BYTE
       01001205H   PUBLIC    CODE     ---       _xmemcpy
-      01003C74H   PUBLIC    CODE     ---       YC_Ice_break
+      01003CD0H   PUBLIC    CODE     ---       YC_Ice_break
 
-      01003C74H   BLOCK     CODE     ---       LVL=0
-      01003C74H   LINE      ---      ---       #3
-      01003C74H   LINE      ---      ---       #4
-      01003C74H   LINE      ---      ---       #5
-      01003C7AH   LINE      ---      ---       #7
+      01003CD0H   BLOCK     CODE     ---       LVL=0
+      01003CD0H   LINE      ---      ---       #3
+      01003CD0H   LINE      ---      ---       #4
+      01003CD0H   LINE      ---      ---       #5
+      01003CD6H   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001205H   BLOCK     CODE     ---       LVL=0
@@ -3490,7 +3517,7 @@
       01001F2EH   PUBLIC    CODE     ---       GPIO_fillpd
       01001E2AH   PUBLIC    CODE     ---       _GPIO_FlipOutBit
       01001982H   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
-      01003C7BH   PUBLIC    CODE     ---       _GPIO_ClearWakeup
+      01003CD7H   PUBLIC    CODE     ---       _GPIO_ClearWakeup
       00000020H.7 PUBLIC    BIT      BIT       ?_GPIO_SetWakeup?BIT
       01001995H   PUBLIC    CODE     ---       _GPIO_SetWakeup
       00000020H.6 PUBLIC    BIT      BIT       ?_GPIO_SetOutput?BIT
@@ -3619,16 +3646,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003C7BH   BLOCK     CODE     ---       LVL=0
-      01003C7BH   LINE      ---      ---       #107
-      01003C7BH   LINE      ---      ---       #108
-      01003C7BH   BLOCK     CODE     NEAR LAB  LVL=1
-      01003C7BH   LINE      ---      ---       #111
-      01003C7FH   LINE      ---      ---       #113
-      01003C83H   LINE      ---      ---       #114
-      01003C8AH   LINE      ---      ---       #115
-      01003CACH   LINE      ---      ---       #116
-      01003CB9H   LINE      ---      ---       #117
+      01003CD7H   BLOCK     CODE     ---       LVL=0
+      01003CD7H   LINE      ---      ---       #107
+      01003CD7H   LINE      ---      ---       #108
+      01003CD7H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003CD7H   LINE      ---      ---       #111
+      01003CDBH   LINE      ---      ---       #113
+      01003CDFH   LINE      ---      ---       #114
+      01003CE6H   LINE      ---      ---       #115
+      01003D08H   LINE      ---      ---       #116
+      01003D15H   LINE      ---      ---       #117
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -3806,5 +3833,5 @@
       ---         MODULE    ---      ---       ?C_INIT
       01000626H   PUBLIC    CODE     ---       ?C_START
 
-Program Size: data=10.2 xdata=914 const=182 code=15364
+Program Size: data=10.2 xdata=914 const=182 code=15456
 LX51 RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
Index: c51/output/eeprom.dat
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/eeprom.dat	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/eeprom.dat	(working copy)
@@ -8192,8 +8192,8 @@
 38
 aa
 55
-bc
-3c
+18
+3d
 02
 05
 df
@@ -9850,14 +9850,14 @@
 1f
 62
 ff
-36
-5f
+39
+16
 00
 00
 00
 ff
-37
-c7
+36
+ba
 00
 16
 08
@@ -10425,8 +10425,8 @@
 7b
 64
 12
-3b
-f5
+3c
+51
 90
 4e
 bc
@@ -11035,7 +11035,7 @@
 f1
 12
 35
-14
+6f
 7b
 01
 7a
@@ -11131,7 +11131,7 @@
 5d
 12
 35
-01
+5c
 12
 11
 05
@@ -12277,7 +12277,7 @@
 22
 12
 35
-01
+5c
 12
 11
 05
@@ -13275,7 +13275,7 @@
 f9
 12
 2f
-5f
+bf
 90
 4e
 4b
@@ -13728,7 +13728,7 @@
 fd
 12
 3c
-4f
+ab
 90
 4c
 c7
@@ -13771,7 +13771,7 @@
 fd
 12
 3c
-65
+c1
 90
 4c
 c5
@@ -16249,11 +16249,11 @@
 f1
 96
 12
-37
-d7
+36
+ca
 12
-38
-cf
+37
+c2
 12
 22
 ea
@@ -16296,7 +16296,7 @@
 f0
 12
 3a
-23
+7f
 22
 22
 e4
@@ -17590,7 +17590,7 @@
 f0
 12
 33
-80
+db
 7a
 4d
 79
@@ -18061,7 +18061,7 @@
 ff
 12
 32
-80
+db
 80
 08
 90
@@ -18070,8 +18070,8 @@
 e0
 ff
 12
-32
-d6
+33
+31
 90
 4e
 8b
@@ -19300,16 +19300,31 @@
 a3
 f0
 90
-4d
-e2
+4c
+c1
 e0
+fe
 b4
-01
+02
+0a
+ef
+b4
+35
 06
 90
-4c
-c1
+4e
+ed
+74
+64
+f0
+90
+4d
+e2
 e0
+b4
+01
+03
+ee
 60
 23
 90
@@ -19336,7 +19351,7 @@
 60
 02
 a1
-6a
+ca
 90
 4c
 c1
@@ -19346,60 +19361,63 @@
 60
 02
 a1
-6a
-ef
+ca
+90
+4e
+ec
+e0
 12
 05
 b3
 2d
-4d
+8c
 06
 2d
-2e
+51
 1b
 2d
-26
+3a
 1d
 2b
-c6
+d8
 3a
 2b
-ce
+e0
 3b
 2b
-d6
+e8
 3c
 2c
-16
+28
 3d
 2c
-56
+68
 3e
 2c
-96
+a8
 3f
 2c
-d6
+e8
 40
 2c
-de
+f0
 41
 2c
-e6
+f8
 42
-2c
-ee
+2d
+00
 43
-2c
-f6
+2d
+08
 44
-2c
-fe
+2d
+10
 45
 00
 00
 2d
-6a
+ca
 90
 4e
 ed
@@ -19407,7 +19425,7 @@
 d6
 f0
 a1
-6a
+ca
 90
 4e
 ed
@@ -19415,7 +19433,7 @@
 d5
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -19479,7 +19497,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -19543,7 +19561,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -19607,7 +19625,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -19671,7 +19689,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4e
 ed
@@ -19679,7 +19697,7 @@
 f4
 f0
 a1
-6a
+ca
 90
 4e
 ed
@@ -19687,37 +19705,37 @@
 f2
 f0
 a1
-6a
+ca
 90
 4e
 ed
 74
 f5
 f0
-80
-7c
+a1
+ca
 90
 4e
 ed
 74
 f6
 f0
-80
-74
+a1
+ca
 90
 4e
 ed
 74
 f7
 f0
-80
-6c
+a1
+ca
 90
 4c
 c1
 e0
 70
-1a
+1c
 90
 4e
 eb
@@ -19733,25 +19751,42 @@
 4e
 eb
 e0
-30
+20
 e0
-54
+02
+a1
+ca
 90
 4c
 fa
 74
 0a
 f0
-80
-4c
+a1
+ca
 90
 4e
 ed
 74
 da
 f0
-80
-44
+a1
+ca
+90
+4c
+c1
+e0
+b4
+02
+08
+90
+4e
+ed
+74
+35
+f0
+a1
+ca
 90
 4e
 ed
@@ -19759,14 +19794,21 @@
 64
 f0
 80
-3c
+79
+90
+4c
+c1
+e0
+b4
+02
+1a
 90
 4e
 eb
 e0
 ff
 7b
-64
+35
 7d
 02
 71
@@ -19777,24 +19819,78 @@
 e0
 30
 e0
-06
+13
 90
 4c
 fa
 74
 0a
 f0
-e4
+80
+0b
 90
 4e
-ed
+eb
+e0
+ff
+7b
+64
+7d
+02
+71
+1d
+90
+4e
+eb
+e0
+30
+e0
+46
+90
+4c
+fa
+74
+0a
 f0
 80
+3e
+90
+4c
+c1
+e0
+b4
+02
+1a
+90
+4e
+eb
+e0
+ff
+7b
+35
+7d
+40
+71
 1d
 90
 4e
 eb
 e0
+30
+e0
+20
+90
+4c
+fa
+74
+0a
+f0
+80
+18
+90
+4e
+eb
+e0
 ff
 7b
 64
@@ -19829,7 +19925,7 @@
 60
 02
 e1
-59
+b9
 90
 4e
 ec
@@ -19839,7 +19935,7 @@
 70
 02
 c1
-50
+b0
 24
 ee
 60
@@ -19848,29 +19944,29 @@
 cb
 70
 02
-c1
-ab
+e1
+0b
 14
 70
 02
-c1
-d7
+e1
+37
 14
 70
 02
 e1
-03
+63
 14
 70
 02
 e1
-2f
+8f
 24
 3e
 60
 02
 e1
-59
+b9
 90
 4c
 c1
@@ -19961,7 +20057,7 @@
 ed
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -20049,7 +20145,7 @@
 ed
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -20140,7 +20236,7 @@
 ed
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -20184,7 +20280,7 @@
 4d
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -20348,7 +20444,7 @@
 03
 02
 32
-7f
+da
 90
 4e
 d9
@@ -20382,24 +20478,23 @@
 64
 f0
 60
-0a
+09
 ef
 54
 d0
 64
 d0
 60
-03
 02
-32
-76
+41
+d1
 12
 03
 b6
 fb
 b4
 f1
-0a
+09
 7f
 83
 7e
@@ -20407,13 +20502,12 @@
 12
 27
 af
-02
-32
-4b
+41
+a6
 eb
 b4
 f2
-0a
+09
 7f
 cd
 7e
@@ -20421,9 +20515,8 @@
 12
 27
 af
-02
-32
-4b
+41
+a6
 90
 4e
 d9
@@ -20455,19 +20548,18 @@
 fb
 b4
 f3
-08
+07
 7f
 b7
 12
 27
 af
-02
-32
-4b
+41
+a6
 eb
 b4
 f4
-0a
+09
 7f
 b6
 7e
@@ -20475,9 +20567,8 @@
 12
 27
 af
-02
-32
-4b
+41
+a6
 90
 4e
 d9
@@ -20516,7 +20607,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 f6
@@ -20529,7 +20620,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20568,7 +20659,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 f8
@@ -20581,7 +20672,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20621,7 +20712,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 fa
@@ -20634,7 +20725,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20674,7 +20765,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d0
@@ -20687,7 +20778,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20728,7 +20819,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d3
@@ -20741,7 +20832,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20782,7 +20873,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d4
@@ -20795,7 +20886,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20836,7 +20927,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d6
@@ -20849,7 +20940,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20888,7 +20979,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d8
@@ -20901,7 +20992,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -20940,7 +21031,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 da
@@ -21120,7 +21211,7 @@
 f0
 02
 2f
-6e
+ce
 22
 e4
 fe
@@ -21520,7 +21611,7 @@
 f0
 0f
 61
-8c
+e7
 e4
 ff
 ef
@@ -21653,7 +21744,7 @@
 f0
 0f
 81
-11
+6c
 e4
 ff
 ef
@@ -21786,7 +21877,7 @@
 16
 61
 b1
-49
+a4
 90
 4c
 ec
@@ -22114,221 +22205,185 @@
 80
 f5
 90
-4c
-eb
-e0
-60
-02
-14
+4f
+04
+ed
 f0
 90
-4c
-f1
-e0
-60
-02
-14
+00
+01
+12
+03
+cf
+90
+4f
+05
 f0
+22
 90
-4c
-fa
+4d
+db
 e0
 60
-0b
+0f
+e0
 14
 f0
 e0
 70
-06
+09
 90
-4c
-f6
-74
-06
+41
+31
+04
+f0
+90
+4d
+da
 f0
 90
 4c
-e5
+c9
 e0
+64
+04
 60
-35
+08
 90
 4c
-ef
+c7
 e0
+64
+04
 70
-02
-a3
+56
+90
+4c
+c7
 e0
+64
+04
 70
-0a
+34
 90
-4c
-e9
+4d
+da
 e0
 70
-02
+10
+90
+4c
+e3
+e0
+fe
 a3
 e0
+ff
+4e
 60
-06
+23
+ef
+54
+1f
+70
+1e
 e4
 90
+4d
+da
+f0
+90
+4e
 4c
-e5
+74
+04
 f0
-22
 90
 4c
-e5
+fb
 e0
-14
+90
+4e
+4d
 f0
-e0
-60
-09
-d2
-01
-7f
-1f
-12
-0f
-df
-80
-52
-c2
+7b
 01
-7f
-1f
+7a
+4e
+79
+4c
+7d
+02
 12
-0f
-df
-80
-49
+15
+33
 90
 4c
-e9
+e3
 e0
+64
+04
 70
-02
+04
 a3
 e0
-70
-3f
+64
+b0
+60
+02
+e1
+c1
+12
+0f
+59
 90
 4c
-ef
-e0
-70
-02
-a3
-e0
-70
-35
+ed
+74
+01
+f0
+22
 90
 4c
-e2
+c5
 e0
-60
-2f
-14
-f0
-e0
-ff
-c3
-94
-08
-50
-16
-ef
-30
-e1
-09
-d2
-01
-7f
-1f
-12
-0f
-df
-80
-10
-c2
-01
-7f
-1f
-12
-0f
-df
-80
-07
-c2
-01
-7f
-1f
-12
-0f
-df
-90
-4c
-e2
-e0
-70
+64
 03
-74
-18
-f0
-90
-4d
-dc
-e0
 70
-36
+3c
 90
-4d
-dd
+4c
+e4
 e0
+54
+1f
 64
-01
+10
 70
-2e
-90
-4c
-e3
-f0
-a3
-f0
-90
-4d
-dd
-f0
-90
-4e
-4c
-e0
-60
-0d
+20
 7b
 01
 7a
-4e
+48
 79
-4c
+00
 7d
-03
+09
+fc
 12
-15
-33
-80
-11
+16
+35
+e4
+90
+4e
+4b
+f0
 90
 48
 00
-e0
-60
-0b
-7b
-01
+04
+f0
+fb
 7a
 48
 79
@@ -22338,743 +22393,780 @@
 12
 15
 33
+c3
 90
 4c
-e8
-e0
-60
-2c
-a3
-e0
-70
-02
-a3
+e4
 e0
-70
-24
+94
+b0
 90
 4c
-ef
+e3
 e0
-70
+94
+04
+40
+3b
 02
-a3
-e0
-70
-1a
+1e
+f3
 90
 4c
-e8
+c5
 e0
-14
-f0
-d2
+b4
 01
-7f
-1d
 12
-0f
-df
+c3
 90
 4c
-e8
+e4
 e0
-70
-07
-c2
-01
-7f
-1d
-12
-0f
-df
+94
+58
 90
-4d
-d9
-e0
-60
-08
-e0
-14
-f0
+4c
+e3
 e0
-70
+94
 02
-d1
-5d
+40
+22
+02
+1e
+f3
+c3
 90
-4d
-d4
-e0
-60
-11
+4c
+e4
 e0
+94
 14
-f0
+90
+4c
+e3
 e0
-70
-0b
+94
+00
+40
+10
 90
 4d
-3d
+e5
 e0
-70
-05
+60
+07
+e4
+f0
 7f
-1b
+0e
 12
 08
 5f
+12
+0f
+38
+22
 90
-4d
-e6
+4c
+ce
 e0
-60
-29
+30
+e1
+3e
+90
+4c
+d0
 e0
-14
+c3
+94
+fa
+50
+03
+e0
+04
 f0
+90
+4c
+d0
 e0
+64
+b4
 70
-23
+37
 90
 4d
-46
+e3
 e0
-60
-02
-e4
+04
 f0
-90
-4c
-c7
 e0
-b4
-04
+d3
+94
+02
+50
 07
+e4
 90
-42
-13
-74
-0c
+4c
+d0
 f0
-22
+80
+24
 90
-4c
-c9
+4d
+e3
 e0
 b4
-04
-06
+03
+1d
 90
-42
-13
+4d
+dc
 74
-3a
+01
 f0
-22
+e4
 90
-4f
-04
-ed
+4c
+d0
 f0
-90
-00
-01
 12
-03
-cf
+0f
+38
+80
+0d
+e4
 90
-4f
-05
+4d
+e3
 f0
-22
 90
 4d
-db
-e0
-60
-0f
-e0
-14
+dc
 f0
-e0
-70
-09
 90
-41
-31
-04
+4c
+d0
 f0
 90
-4d
-da
+4c
+ce
+e0
+30
+e4
+3c
+90
+4c
+eb
+74
+0a
 f0
 90
 4c
-c9
+d1
+e0
+c3
+94
+fa
+50
+03
 e0
-64
 04
-60
-08
+f0
 90
 4c
-c7
+d1
 e0
 64
-04
+06
 70
-56
+50
 90
 4c
-c7
+c3
 e0
-64
+ff
+60
 04
+64
+fe
 70
-34
+45
+e4
 90
-4d
-da
-e0
-70
-10
+4c
+cd
+f0
+12
+0f
+59
+7f
+0a
+12
+0f
+41
+12
+0f
+f7
+7f
+0a
+12
+09
+1c
+80
+2e
 90
 4c
-e3
-e0
-fe
-a3
+cd
 e0
-ff
-4e
 60
 23
-ef
-54
-1f
-70
-1e
 e4
-90
-4d
-da
 f0
+7f
+0d
+12
+09
+1c
 90
-4e
 4c
+ec
 74
-04
+01
 f0
 90
 4c
-fb
+c3
 e0
 90
-4e
-4d
+4c
+c0
 f0
-7b
-01
-7a
-4e
-79
+90
 4c
-7d
-02
+bf
+74
+01
+f0
 12
-15
-33
+1a
+21
+7f
+24
+12
+08
+5f
+e4
+90
+4c
+d1
+f0
 90
 4c
-e3
-e0
-64
-04
-70
-04
-a3
-e0
-64
-b0
-60
-02
-01
 ce
-12
-0f
-59
+e0
+30
+e3
+4e
 90
 4c
-ed
+eb
 74
-01
+0a
 f0
-22
 90
 4c
-c5
+d2
 e0
-64
+c3
+94
+fa
+50
 03
-70
-3c
+e0
+04
+f0
 90
 4c
-e4
+d2
 e0
-54
-1f
 64
-10
+06
 70
-20
-7b
-01
-7a
-48
-79
-00
-7d
-09
-fc
-12
-16
-35
-e4
+6f
 90
-4e
-4b
+4c
+e9
+74
+04
+f0
+a3
+74
+b0
 f0
+e4
 90
-48
-00
-04
+4c
+ef
 f0
-fb
-7a
-48
-79
-00
-7d
+a3
+f0
+7f
+05
+12
 09
+1c
 12
-15
-33
-c3
+0f
+f7
+e4
 90
 4c
-e4
-e0
-94
-b0
+cc
+f0
 90
 4c
-e3
-e0
-94
+ec
 04
-40
-3b
-02
-1e
-f3
+f0
 90
 4c
-c5
+c0
 e0
-b4
-01
-12
-c3
 90
 4c
-e4
-e0
-94
-58
+c4
+f0
 90
 4c
-e3
-e0
-94
-02
-40
-22
-02
-1e
-f3
 c3
-90
-4c
-e4
 e0
-94
-14
 90
 4c
-e3
-e0
-94
-00
-40
-10
-90
-4d
-e5
-e0
-60
-07
-e4
+c0
 f0
-7f
-0e
-12
-08
-5f
-12
-0f
-38
 22
 90
 4c
-ce
+cc
 e0
+60
 30
-e1
-3e
+e4
+f0
 90
 4c
-d0
-e0
 c3
-94
-fa
-50
-03
 e0
-04
-f0
+ff
 90
 4c
-d0
-e0
-64
-b4
-70
-37
-90
-4d
-e3
-e0
-04
-f0
+c0
 e0
-d3
-94
-02
-50
-07
-e4
+6f
+60
+22
 90
 4c
-d0
+ec
+74
+01
 f0
-80
-24
+12
+0f
+f7
 90
-4d
-e3
+4c
+c3
 e0
-b4
-03
-1d
 90
-4d
-dc
-74
-01
+4c
+c0
 f0
-e4
 90
 4c
-d0
+bf
+74
+01
 f0
 12
 0f
-38
-80
-0d
+59
+12
+1a
+21
+7f
+24
+12
+08
+5f
 e4
 90
-4d
-e3
+4c
+d2
 f0
+22
 90
-4d
-dc
+4c
+eb
+e0
+60
+02
+14
 f0
 90
 4c
-d0
+f1
+e0
+60
+02
+14
 f0
 90
 4c
-ce
+fa
 e0
-30
-e4
-3c
+60
+0b
+14
+f0
+e0
+70
+06
 90
 4c
-eb
+f6
 74
-0a
+06
 f0
 90
 4c
-d1
-e0
-c3
-94
-fa
-50
-03
+e5
 e0
-04
-f0
+60
+35
 90
 4c
-d1
+ef
 e0
-64
-06
 70
-50
+02
+a3
+e0
+70
+0a
 90
 4c
-c3
+e9
 e0
-ff
-60
-04
-64
-fe
 70
-45
+02
+a3
+e0
+60
+06
 e4
 90
 4c
-cd
+e5
 f0
-12
-0f
-59
+22
+90
+4c
+e5
+e0
+14
+f0
+e0
+60
+09
+d2
+01
 7f
-0a
-12
-0f
-41
+1f
 12
 0f
-f7
+df
+80
+52
+c2
+01
 7f
-0a
+1f
 12
-09
-1c
+0f
+df
 80
-2e
+49
 90
 4c
-cd
+e9
 e0
-60
-23
-e4
-f0
-7f
-0d
-12
-09
-1c
-90
-4c
-ec
-74
-01
-f0
+70
+02
+a3
+e0
+70
+3f
 90
 4c
-c3
+ef
+e0
+70
+02
+a3
 e0
+70
+35
 90
 4c
-c0
+e2
+e0
+60
+2f
+14
 f0
-90
-4c
-bf
-74
+e0
+ff
+c3
+94
+08
+50
+16
+ef
+30
+e1
+09
+d2
 01
-f0
+7f
+1f
 12
-1a
-21
+0f
+df
+80
+10
+c2
+01
 7f
-24
+1f
 12
-08
-5f
-e4
+0f
+df
+80
+07
+c2
+01
+7f
+1f
+12
+0f
+df
 90
 4c
-d1
+e2
+e0
+70
+03
+74
+18
 f0
 90
-4c
-ce
+4d
+dc
 e0
-30
-e3
-4e
+70
+36
+90
+4d
+dd
+e0
+64
+01
+70
+2e
 90
 4c
-eb
-74
-0a
+e3
+f0
+a3
 f0
 90
+4d
+dd
+f0
+90
+4e
 4c
-d2
 e0
-c3
-94
-fa
-50
+60
+0d
+7b
+01
+7a
+4e
+79
+4c
+7d
 03
+12
+15
+33
+80
+11
+90
+48
+00
 e0
-04
-f0
+60
+0b
+7b
+01
+7a
+48
+79
+00
+7d
+09
+12
+15
+33
 90
 4c
-d2
+e8
+e0
+60
+2c
+a3
 e0
-64
-06
 70
-6f
+02
+a3
+e0
+70
+24
 90
 4c
-e9
-74
-04
-f0
+ef
+e0
+70
+02
 a3
-74
-b0
-f0
-e4
+e0
+70
+1a
 90
 4c
-ef
-f0
-a3
+e8
+e0
+14
 f0
+d2
+01
 7f
-05
-12
-09
-1c
+1d
 12
 0f
-f7
-e4
+df
 90
 4c
-cc
-f0
+e8
+e0
+70
+07
+c2
+01
+7f
+1d
+12
+0f
+df
 90
-4c
-ec
-04
+4d
+d9
+e0
+60
+09
+e0
+14
 f0
-90
-4c
-c0
 e0
+70
+03
+12
+36
+b8
 90
-4c
-c4
+4d
+d4
+e0
+60
+11
+e0
+14
 f0
+e0
+70
+0b
 90
-4c
-c3
+4d
+3d
 e0
+70
+05
+7f
+1b
+12
+08
+5f
 90
-4c
-c0
+4d
+e6
+e0
+60
+29
+e0
+14
 f0
-22
+e0
+70
+23
 90
-4c
-cc
+4d
+46
 e0
 60
-30
+02
 e4
 f0
 90
 4c
-c3
-e0
-ff
-90
-4c
-c0
+c7
 e0
-6f
-60
-22
+b4
+04
+07
 90
-4c
-ec
+42
+13
 74
-01
+0c
 f0
-12
-0f
-f7
+22
 90
 4c
-c3
+c9
 e0
+b4
+04
+06
 90
-4c
-c0
-f0
-90
-4c
-bf
+42
+13
 74
-01
-f0
-12
-0f
-59
-12
-1a
-21
-7f
-24
-12
-08
-5f
-e4
-90
-4c
-d2
+3a
 f0
 22
 90
@@ -23097,8 +23189,8 @@
 e0
 70
 02
-61
-f4
+81
+50
 90
 4c
 95
@@ -23278,7 +23370,7 @@
 fb
 f0
 61
-6f
+cb
 90
 4c
 fc
@@ -23740,8 +23832,8 @@
 5c
 f0
 22
-5f
-62
+44
+26
 aa
 55
 40
@@ -25818,100 +25910,8 @@
 6c
 59
 50
-3d
-1a
-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
-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
+cf
+90
 ff
 ff
 ff
@@ -32764,5 +32764,5 @@
 ff
 ff
 ff
-6c
-cf
+fe
+b5
Index: c51/output/fw.hex
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/fw.hex	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/fw.hex	(working copy)
@@ -101,7 +101,7 @@
 :1006400054C025E060A840B8E493A3FAE493A3F86B
 :10065000E493A3C8C582C8CAC583CAF0A3C8C5822B
 :10066000C8CAC583CADFE9DEE780BE524E56FF0A1C
-:10067000CA000000FF1F62FF365F000000FF37C79F
+:10067000CA000000FF1F62FF3916000000FF36BAF3
 :10068000001608090A0B0C0D0E1415131119181A6F
 :100690001217FF000000E60000190915213D0000B7
 :1006A00000000000000000000000000000004F00FB
@@ -137,7 +137,7 @@
 :10088000017A4E79E27D03904EB9EBF0A3EAF0A332
 :10089000E9F0A3EDF0904B9CE0FFA3E0904EBDCFBC
 :1008A000F0A3EFF0904B9AE0FEA3E0FF904B9CE0AA
-:1008B000FCA3E0FD7B64123BF5904EBCE0FEEFC371
+:1008B000FCA3E0FD7B64123C51904EBCE0FEEFC314
 :1008C0009E40E1904EBCE0FF14F0EF603F904EB9C7
 :1008D000E0FBA3E475F001120424A9F0FA1203B6B8
 :1008E000FF904EBDE475F00112042485F082F5837B
@@ -175,13 +175,13 @@
 :100AE0000A0D71130E1E140EF3150B83270EBA296F
 :100AF0000D322A0B152F0B77300BBA310C24320B29
 :100B000015330E95340ED4350BB2370B83390BBA2F
-:100B10003C00000F37F1F11235147B017A4C79C09B
+:100B10003C00000F37F1F112356F7B017A4C79C040
 :100B20007D017C007FBD7E7F122111904CC0E0D3FF
 :100B3000940340037401F0904CC0E0904CC3F07FEC
 :100B40000AF1417B017A4C79F47D027C007FBE7E04
 :100B50007F122111904CF4E0B4FF19A3E0B4FF140C
 :100B6000904C93E0A3E0904CF4F0904C91E0A3E023
-:100B7000904CF5F002205D123501121105E4904D04
+:100B7000904CF5F002205D12355C121105E4904DA9
 :100B800002F022904CC3E0D394005002E137E0948D
 :100B9000044002E137E075F01FA424CFF9744D350D
 :100BA000F0FA7B017D1F7C00122422904CBF74035D
@@ -253,7 +253,7 @@
 :100FC00022904CC3E0B40106C2017F1C8011904CFA
 :100FD000C3E0B40206C2017F1C8004C2017F1CEF83
 :100FE000F4600D7B017A807974A20192001210875F
-:100FF00022123501121105C2067F1F12101AC206F5
+:100FF0002212355C121105C2067F1F12101AC2069A
 :101000007F1E111AC2067F1C111AC2067F1C111AFC
 :10101000C2067F1C111AC2067F1DAC07ECF46015D6
 :10102000AF04D2041147AF04A2069201120FDFAF42
@@ -315,7 +315,7 @@
 :1013A00001F9E43AFA7E00E92FF9EE3AFA1203B6AF
 :1013B000FF64396009EF64536004EFB44706904D51
 :1013C000467403F0904EC9E004F080BF904EC5E033
-:1013D000FBA3E0FAA3E0F9122F5F904E4BE0B401BB
+:1013D000FBA3E0FAA3E0F9122FBF904E4BE0B4015B
 :1013E000117402F0904E4CF07B017A4E794C7D03E3
 :1013F000A133904E4BE0B404137402F0904E4C7441
 :1014000006F07B017A4E794C7D03A133904E4BE080
@@ -343,10 +343,10 @@
 :10156000FE747E2FF582E4344EF583EEF00F80D3C7
 :10157000121FA9EF7002C134904CECE06002C1343C
 :10158000904CC9E0B40418904E7EE0B40603740396
-:10159000F07B017A4E797E904E7DE0FD123C4F90BB
+:10159000F07B017A4E797E904E7DE0FD123CAB905F
 :1015A0004CC7E0FF6404600AEFB4031E904DD3E023
 :1015B0006018904E7EE0B406037403F07B017A4E0F
-:1015C000797E904E7DE0FD123C65904CC5E0640351
+:1015C000797E904E7DE0FD123CC1904CC5E06403F5
 :1015D0007062904E7EE0640170237404F0A3E070AA
 :1015E00014904E81E0700EA3E0700AA3E0700690A4
 :1015F0004DDDF08032904DDD7401F0802A904E7EFA
@@ -501,10 +501,10 @@
 :101F4000ED2470FDEC34808D82F583E04EF4FEEFDD
 :101F5000247CFDEC34808D82F583EEF00FEFB40429
 :101F6000CF22F1A8D146904CE4E004F07006904CEA
-:101F7000E3E004F0F1961237D71238CF1222EA903C
+:101F7000E3E004F0F1961236CA1237C21222EA9058
 :101F80004CCAE064026007904CC8E0B40207E490D9
 :101F90004CE3F0A3F022904CD3E0600B14F0E0701F
-:101FA000067405F0123A232222E4904F09F0904C77
+:101FA000067405F0123A7F2222E4904F09F0904C1B
 :101FB000C8E064026007904CCAE0B40206904F0982
 :101FC000E0FF229047F4E05440FEA3E05408FFBE37
 :101FD0004009BF0806904F09E0FF22904CEFE070E7
@@ -585,7 +585,7 @@
 :10248000E0FAA3E0F98F827583001203CF6E600338
 :102490007F00220F80C67F0122E4904E88F0A3F0D7
 :1024A000A3F0A3F0A3F0A3F0A3F0A3F0A3F0A3F094
-:1024B000A3F01233807A4D79A8904EAE7401F0A348
+:1024B000A3F01233DB7A4D79A8904EAE7401F0A3ED
 :1024C000744DF0A374A8F0A37414F07B017A4D79D5
 :1024D000BC914FEF60167B017A4D79BC7D14F141C0
 :1024E000EF7009904CCEE04402F0800C904CCEE0AE
@@ -614,8 +614,8 @@
 :102650005D904E8BE030E03E904E88E0FE333333A9
 :1026600054F8FEEF4E904E8DF0A3E0FF904E8DE0BB
 :1026700090069693FD122B42904E90EFF0904E8E66
-:10268000E030E00A904E90E0FF1232808008904ED9
-:1026900090E0FF1232D6904E8BE0FFC313F0904EC5
+:10268000E030E00A904E90E0FF1232DB8008904E7E
+:1026900090E0FF123331904E8BE0FFC313F0904E69
 :1026A0008EE0FFC313F0904E89E004F08099904EC5
 :1026B0008C7401F0904E88E004F0A1D7904E4BE06E
 :1026C000B4030A904DDFE0B401037402F0904E8C25
@@ -692,282 +692,288 @@
 :102B30007402F022904CF67401F022904CF674046A
 :102B4000F022904EECEDF0904EEBEFF0E4904EED75
 :102B5000F0EF30E005E4904CFAF0904EECE0FFA38B
-:102B6000F0904DE2E0B40106904CC1E06023904D3E
-:102B7000E2E0B40108904CC1E064026014904DE2C0
-:102B8000E064016002A16A904CC1E064016002A1AE
-:102B90006AEF1205B32D4D062D2E1B2D261D2BC6BB
-:102BA0003A2BCE3B2BD63C2C163D2C563E2C963F3A
-:102BB0002CD6402CDE412CE6422CEE432CF6442C45
-:102BC000FE4500002D6A904EED74D6F0A16A904E3D
-:102BD000ED74D5F0A16A904CC1E0B4021A904EEBAE
-:102BE000E0FF7B047D08711D904EEBE030E020900B
-:102BF0004CFA740AF08018904EEBE0FF7B047D01E4
-:102C0000711D904EEBE030E006904CFA740AF0E44F
-:102C1000904EEDF0A16A904CC1E0B4021A904EEBD8
-:102C2000E0FF7B067D08711D904EEBE030E02090C8
-:102C30004CFA740AF08018904EEBE0FF7B067D01A1
-:102C4000711D904EEBE030E006904CFA740AF0E40F
-:102C5000904EEDF0A16A904CC1E0B4021A904EEB98
-:102C6000E0FF7B197D08711D904EEBE030E0209075
-:102C70004CFA740AF08018904EEBE0FF7B197D014E
-:102C8000711D904EEBE030E006904CFA740AF0E4CF
-:102C9000904EEDF0A16A904CC1E0B4021A904EEB58
-:102CA000E0FF7B1B7D08711D904EEBE030E0209033
-:102CB0004CFA740AF08018904EEBE0FF7B1B7D010C
-:102CC000711D904EEBE030E006904CFA740AF0E48F
-:102CD000904EEDF0A16A904EED74F4F0A16A904E22
-:102CE000ED74F2F0A16A904EED74F5F0807C904E98
-:102CF000ED74F6F08074904EED74F7F0806C904CAB
-:102D0000C1E0701A904EEBE0FF7B0F7D08711D90C3
-:102D10004EEBE030E054904CFA740AF0804C904E48
-:102D2000ED74DAF08044904EED7464F0803C904E87
-:102D3000EBE0FF7B647D02711D904EEBE030E0061E
-:102D4000904CFA740AF0E4904EEDF0801D904EEB3A
-:102D5000E0FF7B647D40711D904EEBE030E006901B
-:102D60004CFA740AF0E4904EEDF0904DE2E064010C
-:102D70006002E159904EECE024F87002C15024EE5C
-:102D8000607624CB7002C1AB147002C1D7147002FC
-:102D9000E103147002E12F243E6002E159904CC11E
-:102DA000E06401603F7401F0904CC3E0FF6003B445
-:102DB000FE08904CBF7402F0802AEFD39403502495
-:102DC000EFC39401401E904CC1E0FF904CC3E075EE
-:102DD000F01FA424ECF582E4344DF583EFF0904C21
-:102DE000BF7403F0904EEBE030E006904CE8740CBA
-:102DF000F0E4904EEDF0E159904CC1E0603EE4F01B
-:102E0000904CC3E0FF6003B4FE08904CBF7402F026
-:102E1000802AEFD394035024EFC39401401E904CBA
-:102E2000C1E0FF904CC3E075F01FA424ECF582E4F0
-:102E3000344DF583EFF0904CBF7403F0904EEBE00F
-:102E400030E006904CE8740CF0E4904EEDF0E1595F
-:102E5000904CC1E06402603F7402F0904CC3E0FF0C
-:102E60006003B4FE08904CBF7402F0802AEFD39444
-:102E7000035024EFC39401401E904CC1E0FF904CDE
-:102E8000C3E075F01FA424ECF582E4344DF583EF24
-:102E9000F0904CBF7403F0904EEBE030E006904CA5
-:102EA000E8740CF0E4904EEDF0E159904CC1E0B4C0
-:102EB000021D904EEBE0FF7B4F7D08711D904EEBA5
-:102EC000E030E006904CFA740AF0E4904EEDF09099
-:102ED0004EED744DF0E159904CC1E0B4021D904E9E
-:102EE000EBE0FF7B507D08711D904EEBE030E0067B
-:102EF000904CFA740AF0E4904EEDF0904EED744A66
-:102F0000F08056904CC1E0B4021D904EEBE0FF7B88
-:102F1000517D08711D904EEBE030E006904CFA7444
-:102F20000AF0E4904EEDF0904EED744EF0802A9051
-:102F30004CC1E0B4021D904EEBE0FF7B527D087166
-:102F40001D904EEBE030E006904CFA740AF0E490ED
-:102F50004EEDF0904EED744BF0904EEDE0FF229070
-:102F60004ED9EBF0A3EAF0A3E9F0E4A3F0F0904E21
-:102F7000DCE0FFC39406400302327F904ED9E0FBB1
-:102F8000A3E0FAA3E02401F9E43AFA7E00E92FF97C
-:102F9000EE3AFA1203B6FF54F064F0600AEF54D030
-:102FA00064D060030232761203B6FBB4F10A7F8369
-:102FB0007E011227AF02324BEBB4F20A7FCD7E00C6
-:102FC0001227AF02324B904ED9E0FBA3E0FAA3E008
-:102FD0002401F9E43AFAA3E07E0029F9EE3AFA1264
-:102FE00003B6FBB4F3087FB71227AF02324BEBB442
-:102FF000F40A7FB67E001227AF02324B904ED9E022
-:10300000FBA3E0FAA3E02401F9E43AFAA3E07E008E
-:1030100029F9EE3AFA1203B6FBB4F5077FB5122789
-:10302000AF414BEBB4F6097FEA7E001227AF414B6C
-:10303000904ED9E0FBA3E0FAA3E02401F9E43AFAC8
-:10304000A3E07E0029F9EE3AFA1203B6FBB4F707C3
-:103050007FE91227AF414BEBB4F8097FE27E001203
-:1030600027AF414B904ED9E0FBA3E0FAA3E0240147
-:10307000F9E43AFAA3E07E0029F9EE3AFA1203B62F
-:10308000FBB4F9087F940E1227AF414BEBB4FA0959
-:103090007F8A7E011227AF414B904ED9E0FBA3E01F
-:1030A000FAA3E02401F9E43AFAA3E07E0029F9EE5C
-:1030B0003AFA1203B6FBB4FB087F920E1227AF4117
-:1030C0004BEBB4D0097F2A7E021227AF414B904EC2
-:1030D000D9E0FBA3E0FAA3E02401F9E43AFAA3E083
-:1030E0007E0029F9EE3AFA1203B6FBB4D1097F2526
-:1030F0007E021227AF414BEBB4D3097F267E02122A
-:1031000027AF414B904ED9E0FBA3E0FAA3E02401A6
-:10311000F9E43AFAA3E07E0029F9EE3AFA1203B68E
-:10312000FBB4D2097F247E021227AF414BEBB4D40B
-:10313000097F277E021227AF414B904ED9E0FBA3B7
-:10314000E0FAA3E02401F9E43AFAA3E07E0029F9C9
-:10315000EE3AFA1203B6FBB4D5097F217E0212279C
-:10316000AF414BEBB4D6097F237E021227AF414B10
-:10317000904ED9E0FBA3E0FAA3E02401F9E43AFA87
-:10318000A3E07E0029F9EE3AFA1203B6FBB4D707A2
-:103190007F701227AF414BEBB4D8097F6F7E0012CE
-:1031A00027AF414B904ED9E0FBA3E0FAA3E0240106
-:1031B000F9E43AFAA3E07E0029F9EE3AFA1203B6EE
-:1031C000FBB4D9077FB81227AF414BEBB4DA097FC4
-:1031D000307E001227AF8073904ED9E0FBA3E0FA57
-:1031E000A3E02401F9E43AFAA3E07E0029F9EE3ADB
-:1031F000FA1203B6FBB4DB097F067E031227AF8009
-:103200004AEBB4DC097F077E031227AF803D904E66
-:10321000D9E0FBA3E0FAA3E02401F9E43AFAA3E041
-:103220007E0029F9EE3AFA1203B6FEB4DD077F01FB
-:103230001227CA8016EEB4DE077F021227CA800B5F
-:103240001203B6B4DF057F041227CA904E4BE0B4D8
-:103250000224904ED9E0FBA3E0FAA3E02401F9E4B4
-:103260003AFAA3E07E0029F9EE3AFA1203B6904D3D
-:10327000EDF0E41203FC904EDCE004F0022F6E222D
-:10328000E4FEEFC394E04020EFD394E7501A904E51
-:10329000A4E0FEEF5407FF7401A807088002C333BF
-:1032A000D8FC4E904EA4F022E4FE74A52EF582E4E4
-:1032B000344EF583E0FD6F601CED7014904DEDE031
-:1032C0006F601274A52EF582E4344EF583EFF02280
-:1032D0000EEEB406D522E4FEFDEF54F064F0600774
-:1032E000EF54D0FCBCD00C904E4BE0B4020B7403F6
-:1032F000F08006904DDF7401F0EFC394E04021EFC1
-:10330000D394E7501B904EA4E0FEEF5407FF7401E6
-:10331000A807088002C333D8FCF45E904EA4F022C4
-:10332000E4FEED702174A52EF582E4344EF583E0C1
-:103330006F7047EEB4050B24A5F582E4344EF58397
-:10334000E4F07D01803474A52EF582E4344EF583DB
-:10335000E0FC74A42EF582E4344EF583ECF074A501
-:103360002EF582E4344EF583E06014EEB4050B24B0
-:10337000A5F582E4344EF583E4F00EEEB406A32204
-:10338000E4FF904EEEF0FEFDA3F0A3F0EF90068177
-:1033900093607CEF93FD131313541FFEED5407FD50
-:1033A0007401A805088002C333D8FCFDEE2478FB25
-:1033B000E434808B82F583E0FCEDF4FBEC5BF0EE13
-:1033C0002470F582E43480F583E04DF0EE2474F54A
-:1033D00082E43480F583E05BF090811CE0F4FC74BF
-:1033E000BC2FF582E4344DF583ECF0EE2478FBE459
-:1033F00034808B82F583E04DF0EE2470FBE4348062
-:103400008B82F583E0FCEDF4FBEC5BF00F618CE468
-:10341000FFEF90068193607CEF93FD131313541F0D
-:10342000FEED5407FD7401A805088002C333D8FCE3
-:10343000FDEE2478FBE434808B82F583E0FCEDF430
-:10344000FBEC5BF0EE2470F582E43480F583E04D14
-:10345000F0EE2474F582E43480F583E05BF0908133
-:103460001CE0F4FC74A82FF582E4344DF583ECF0F5
-:10347000EE2478FBE434808B82F583E04DF0EE247B
-:1034800070FBE434808B82F583E0FCEDF4FBEC5BB5
-:10349000F00F8111E4FFEF90068193604074BC2F20
-:1034A000F582E4344DF583E0FE74A82FF582E43410
-:1034B0004DF583E06E602374BC2FF582E4344DF546
-:1034C00083C083C082E0FE74A82FF582E4344DF5FA
-:1034D00083E0FDEE5DD082D083F00F80B922904C66
-:1034E000C3E0B40107D2017F1C020FDF904CC3E0A0
-:1034F000B40207D2017F1C020FDFD2017F1C020F32
-:10350000DF908091740DF0A304F0A3F0A3F0A3F07A
-:10351000A314F022121661B149904CEC7401F090A2
-:103520004CE5741EF0E4904CF2F0904D0B74FFF0FB
-:103530009044FCE0904DD0F09044FDE0904DD1F0EF
-:103540009044FEE0904DD2F022904CD37405F0E40C
-:10355000A3F0FFEF25E024D6F582E4344CF5837424
-:1035600054F0A3F00FEFB404EA904C91E0FEA3E016
-:10357000FFC3904C94E09FFD904C93E09EFCE412BE
-:1035800002067B527AB8799E783F1200FBC004C0D5
-:1035900005C006C007904C91E0FCA3E0FDE41202D8
-:1035A00006D003D002D001D00012000A12023F90D0
-:1035B0004CFCEEF0A3EFF0904C91E0FEA3E0FFC3D3
-:1035C000904C94E09FFD904C93E09EFCE412020628
-:1035D0007BC37AF57988783F1200FBC004C005C030
-:1035E00006C007904C91E0FCA3E0FDE4120206D077
-:1035F00003D002D001D00012000A12023F904CDE2C
-:10360000EEF0A3EFF0904C91E0FEA3E0FFC3904CEE
-:1036100094E09FFD904C93E09EFCE41202067BAE8A
-:103620007A477981783F1200FBC004C005C006C00C
-:1036300007904C91E0FCA3E0FDE4120206D003D019
-:1036400002D001D00012000A12023F904CE0EEF0CE
-:10365000A3EFF0229080107401F080FE2280F5909C
-:103660004CEBE0600214F0904CF1E0600214F0903A
-:103670004CFAE0600B14F0E07006904CF67406F023
-:10368000904CE5E06035904CEFE07002A3E0700AEA
-:10369000904CE9E07002A3E06006E4904CE5F02273
-:1036A000904CE5E014F0E06009D2017F1F120FDFBB
-:1036B0008052C2017F1F120FDF8049904CE9E070F9
-:1036C00002A3E0703F904CEFE07002A3E0703590F1
-:1036D0004CE2E0602F14F0E0FFC394085016EF3086
-:1036E000E109D2017F1F120FDF8010C2017F1F127C
-:1036F0000FDF8007C2017F1F120FDF904CE2E070E6
-:10370000037418F0904DDCE07036904DDDE06401FC
-:10371000702E904CE3F0A3F0904DDDF0904E4CE015
-:10372000600D7B017A4E794C7D0312153380119028
-:103730004800E0600B7B017A4879007D091215335F
-:10374000904CE8E0602CA3E07002A3E07024904C61
-:10375000EFE07002A3E0701A904CE8E014F0D201A0
-:103760007F1D120FDF904CE8E07007C2017F1D1231
-:103770000FDF904DD9E06008E014F0E07002D15DF9
-:10378000904DD4E06011E014F0E0700B904D3DE0FE
-:1037900070057F1B12085F904DE6E06029E014F091
-:1037A000E07023904D46E06002E4F0904CC7E0B436
-:1037B0000407904213740CF022904CC9E0B4040644
-:1037C000904213743AF022904F04EDF090000112F1
-:1037D00003CF904F05F022904DDBE0600FE014F036
-:1037E000E0700990413104F0904DDAF0904CC9E05E
-:1037F00064046008904CC7E064047056904CC7E0C5
-:1038000064047034904DDAE07010904CE3E0FEA355
-:10381000E0FF4E6023EF541F701EE4904DDAF090ED
-:103820004E4C7404F0904CFBE0904E4DF07B017ACE
-:103830004E794C7D02121533904CE3E06404700421
-:10384000A3E064B0600201CE120F59904CED7401F8
-:10385000F022904CC5E06403703C904CE4E0541FAF
-:10386000641070207B017A4879007D09FC121635BE
-:10387000E4904E4BF090480004F0FB7A4879007DCC
-:1038800009121533C3904CE4E094B0904CE3E094FB
-:1038900004403B021EF3904CC5E0B40112C3904CAF
-:1038A000E4E09458904CE3E094024022021EF3C3FB
-:1038B000904CE4E09414904CE3E094004010904D60
-:1038C000E5E06007E4F07F0E12085F120F382290E7
-:1038D0004CCEE030E13E904CD0E0C394FA5003E08F
-:1038E00004F0904CD0E064B47037904DE3E004F005
-:1038F000E0D394025007E4904CD0F08024904DE344
-:10390000E0B4031D904DDC7401F0E4904CD0F01253
-:103910000F38800DE4904DE3F0904DDCF0904CD0EA
-:10392000F0904CCEE030E43C904CEB740AF0904CBC
-:10393000D1E0C394FA5003E004F0904CD1E0640667
-:103940007050904CC3E0FF600464FE7045E4904CFE
-:10395000CDF0120F597F0A120F41120FF77F0A1292
-:10396000091C802E904CCDE06023E4F07F0D1209FD
-:103970001C904CEC7401F0904CC3E0904CC0F09063
-:103980004CBF7401F0121A217F2412085FE4904C9E
-:10399000D1F0904CCEE030E34E904CEB740AF090B6
-:1039A0004CD2E0C394FA5003E004F0904CD2E064AF
-:1039B00006706F904CE97404F0A374B0F0E4904C7E
-:1039C000EFF0A3F07F0512091C120FF7E4904CCC26
-:1039D000F0904CEC04F0904CC0E0904CC4F0904C53
-:1039E000C3E0904CC0F022904CCCE06030E4F0900A
-:1039F0004CC3E0FF904CC0E06F6022904CEC74012F
-:103A0000F0120FF7904CC3E0904CC0F0904CBF7494
-:103A100001F0120F59121A217F2412085FE4904C12
-:103A2000D2F022904ED012058200000000904C95FA
-:103A3000E07002A3E0700261F4904C95E0FEA3E018
-:103A4000FF904CD4E0FD04F0ED25E024D6F582E4AF
-:103A5000344CF583EEF0A3EFF0904CD4E0C3940423
-:103A60004002E4F0E4904ECFF0904ED0E0F8A3E0B6
-:103A7000F9A3E0FAA3E0FB904ECFE025E024D6F5D1
-:103A800082E4344CF583E0FEA3E0FFE4FCFDEB2F81
-:103A9000FFEA3EFEED39FDEC38FC904ED012057683
-:103AA000904ECFE004F0E0B404BF904ED0E0FCA311
-:103AB000E0FDA3E0FEA3E0FFE47B04FAF9F81204C2
-:103AC000C5904ED0120576904CE0E0FEA3E0FFE4F6
-:103AD000FCFD904ED0E0F8A3E0F9A3E0FAA3E0FBF0
-:103AE000D31205655007E4904CFBF0616F904CFCDD
-:103AF000E0FEA3E0FFE4FCFD904ED0E0F8A3E0F987
-:103B0000A3E0FAA3E0FBC31205654008904CFB74E8
-:103B100064F0805B904CE0E0FEA3E0FFFBAA06E4CB
-:103B2000904ED0E0FCA3E0FDA3E0FEA3E0C39BFF2A
-:103B3000EE9AFEED9400FDEC9400FCE47B64FAF94F
-:103B4000F812043AC006C007904CE0E0FEA3E0FF84
-:103B5000C3904CFDE09FFF904CFCE09EFEAB07FA4B
-:103B6000E4F9F8D007D0061204C5904CFBEFF090B2
-:103B70004CE0E0FEA3E0FFE4FCFD904ED0E0F8A3B3
-:103B8000E0F9A3E0FAA3E0FBC31205655008904CEE
-:103B9000D57402F08056904CDEE0FEA3E0FFE4FC1A
-:103BA000FD904ED0E0F8A3E0F9A3E0FAA3E0FBC358
-:103BB000120565501D904CD57401F0904D02E070D7
-:103BC0002B904D40F0A37448F0A37412F0E4A3F0DE
-:103BD000801AE4904CD5F0904D02E0700F904D406B
-:103BE000F0A37448F0A3745DF0E4A3F0904CD5E02A
-:103BF000904D01F022904EDDEEF0A3EFF0904EDFFD
-:103C0000ECF0A3EDF0904EDFE0FEA3E0FFD3904E8A
-:103C1000DEE09F904EDDE09E4016904EDFE0FEA37A
-:103C2000E0FF904EDEE09FFF904EDDE09EFE801EA6
-:103C3000904EDDE0FEA3E0FFC3904EE0E09FFF90DA
-:103C40004EDFE09EFEAD03C3EB9FFFE49EFE22909D
-:103C50000BE77403F0ED60031217DC22900BE7749E
-:103C600004F00217DC900BE77405F00217DC9004F7
-:103C700046E0FF229082807401F022EFF4603AEF78
-:103C80005407FEEF1313135403FF24A3F582E43407
-:103C900000F583C083C082E0FD7401A8060880029D
-:103CA000C333D8FCF4FC5DD082D083F074A72FF529
-:0A3CB00082E43400F583E05CF022AA
+:102B6000F0904CC1E0FEB4020AEFB43506904EED91
+:102B70007464F0904DE2E0B40103EE6023904DE206
+:102B8000E0B40108904CC1E064026014904DE2E0B2
+:102B900064016002A1CA904CC1E064016002A1CA54
+:102BA000904EECE01205B32D8C062D511B2D3A1DD5
+:102BB0002BD83A2BE03B2BE83C2C283D2C683E2CB4
+:102BC000A83F2CE8402CF0412CF8422D00432D0862
+:102BD000442D104500002DCA904EED74D6F0A1CAC8
+:102BE000904EED74D5F0A1CA904CC1E0B4021A9099
+:102BF0004EEBE0FF7B047D08711D904EEBE030E072
+:102C000020904CFA740AF08018904EEBE0FF7B04A1
+:102C10007D01711D904EEBE030E006904CFA740A95
+:102C2000F0E4904EEDF0A1CA904CC1E0B4021A90CD
+:102C30004EEBE0FF7B067D08711D904EEBE030E02F
+:102C400020904CFA740AF08018904EEBE0FF7B065F
+:102C50007D01711D904EEBE030E006904CFA740A55
+:102C6000F0E4904EEDF0A1CA904CC1E0B4021A908D
+:102C70004EEBE0FF7B197D08711D904EEBE030E0DC
+:102C800020904CFA740AF08018904EEBE0FF7B190C
+:102C90007D01711D904EEBE030E006904CFA740A15
+:102CA000F0E4904EEDF0A1CA904CC1E0B4021A904D
+:102CB0004EEBE0FF7B1B7D08711D904EEBE030E09A
+:102CC00020904CFA740AF08018904EEBE0FF7B1BCA
+:102CD0007D01711D904EEBE030E006904CFA740AD5
+:102CE000F0E4904EEDF0A1CA904EED74F4F0A1CA5C
+:102CF000904EED74F2F0A1CA904EED74F5F0A1CAB9
+:102D0000904EED74F6F0A1CA904EED74F7F0A1CAA2
+:102D1000904CC1E0701C904EEBE0FF7B0F7D087182
+:102D20001D904EEBE020E002A1CA904CFA740AF02C
+:102D3000A1CA904EED74DAF0A1CA904CC1E0B40281
+:102D400008904EED7435F0A1CA904EED7464F08099
+:102D500079904CC1E0B4021A904EEBE0FF7B357DD8
+:102D600002711D904EEBE030E013904CFA740AF0C3
+:102D7000800B904EEBE0FF7B647D02711D904EEB6B
+:102D8000E030E046904CFA740AF0803E904CC1E08E
+:102D9000B4021A904EEBE0FF7B357D40711D904EE2
+:102DA000EBE030E020904CFA740AF08018904EEB83
+:102DB000E0FF7B647D40711D904EEBE030E00690BB
+:102DC0004CFA740AF0E4904EEDF0904DE2E06401AC
+:102DD0006002E1B9904EECE024F87002C1B024EE3C
+:102DE000607624CB7002E10B147002E1371470029C
+:102DF000E163147002E18F243E6002E1B9904CC19E
+:102E0000E06401603F7401F0904CC3E0FF6003B4E4
+:102E1000FE08904CBF7402F0802AEFD39403502434
+:102E2000EFC39401401E904CC1E0FF904CC3E0758D
+:102E3000F01FA424ECF582E4344DF583EFF0904CC0
+:102E4000BF7403F0904EEBE030E006904CE8740C59
+:102E5000F0E4904EEDF0E1B9904CC1E0603EE4F05A
+:102E6000904CC3E0FF6003B4FE08904CBF7402F0C6
+:102E7000802AEFD394035024EFC39401401E904C5A
+:102E8000C1E0FF904CC3E075F01FA424ECF582E490
+:102E9000344DF583EFF0904CBF7403F0904EEBE0AF
+:102EA00030E006904CE8740CF0E4904EEDF0E1B99F
+:102EB000904CC1E06402603F7402F0904CC3E0FFAC
+:102EC0006003B4FE08904CBF7402F0802AEFD394E4
+:102ED000035024EFC39401401E904CC1E0FF904C7E
+:102EE000C3E075F01FA424ECF582E4344DF583EFC4
+:102EF000F0904CBF7403F0904EEBE030E006904C45
+:102F0000E8740CF0E4904EEDF0E1B9904CC1E0B4FF
+:102F1000021D904EEBE0FF7B4F7D08711D904EEB44
+:102F2000E030E006904CFA740AF0E4904EEDF09038
+:102F30004EED744DF0E1B9904CC1E0B4021D904EDD
+:102F4000EBE0FF7B507D08711D904EEBE030E0061A
+:102F5000904CFA740AF0E4904EEDF0904EED744A05
+:102F6000F08056904CC1E0B4021D904EEBE0FF7B28
+:102F7000517D08711D904EEBE030E006904CFA74E4
+:102F80000AF0E4904EEDF0904EED744EF0802A90F1
+:102F90004CC1E0B4021D904EEBE0FF7B527D087106
+:102FA0001D904EEBE030E006904CFA740AF0E4908D
+:102FB0004EEDF0904EED744BF0904EEDE0FF229010
+:102FC0004ED9EBF0A3EAF0A3E9F0E4A3F0F0904EC1
+:102FD000DCE0FFC3940640030232DA904ED9E0FBF6
+:102FE000A3E0FAA3E02401F9E43AFA7E00E92FF91C
+:102FF000EE3AFA1203B6FF54F064F06009EF54D0D1
+:1030000064D0600241D11203B6FBB4F1097F837E24
+:10301000011227AF41A6EBB4F2097FCD7E00122743
+:10302000AF41A6904ED9E0FBA3E0FAA3E02401F95A
+:10303000E43AFAA3E07E0029F9EE3AFA1203B6FB6D
+:10304000B4F3077FB71227AF41A6EBB4F4097FB6FC
+:103050007E001227AF41A6904ED9E0FBA3E0FAA371
+:10306000E02401F9E43AFAA3E07E0029F9EE3AFA05
+:103070001203B6FBB4F5077FB51227AF41A6EBB438
+:10308000F6097FEA7E001227AF41A6904ED9E0FBF9
+:10309000A3E0FAA3E02401F9E43AFAA3E07E0029D0
+:1030A000F9EE3AFA1203B6FBB4F7077FE91227AF3D
+:1030B00041A6EBB4F8097FE27E001227AF41A6904B
+:1030C0004ED9E0FBA3E0FAA3E02401F9E43AFAA325
+:1030D000E07E0029F9EE3AFA1203B6FBB4F9087F54
+:1030E000940E1227AF41A6EBB4FA097F8A7E011233
+:1030F00027AF41A6904ED9E0FBA3E0FAA3E024015C
+:10310000F9E43AFAA3E07E0029F9EE3AFA1203B69E
+:10311000FBB4FB087F920E1227AF41A6EBB4D00997
+:103120007F2A7E021227AF41A6904ED9E0FBA3E092
+:10313000FAA3E02401F9E43AFAA3E07E0029F9EECB
+:103140003AFA1203B6FBB4D1097F257E021227AFEB
+:1031500041A6EBB4D3097F267E021227AF41A69089
+:103160004ED9E0FBA3E0FAA3E02401F9E43AFAA384
+:10317000E07E0029F9EE3AFA1203B6FBB4D2097FD9
+:10318000247E021227AF41A6EBB4D4097F277E022A
+:103190001227AF41A6904ED9E0FBA3E0FAA3E024AA
+:1031A00001F9E43AFAA3E07E0029F9EE3AFA1203B3
+:1031B000B6FBB4D5097F217E021227AF41A6EBB43E
+:1031C000D6097F237E021227AF41A6904ED9E0FB9D
+:1031D000A3E0FAA3E02401F9E43AFAA3E07E00298F
+:1031E000F9EE3AFA1203B6FBB4D7077F701227AF95
+:1031F00041A6EBB4D8097F6F7E001227AF41A6909D
+:103200004ED9E0FBA3E0FAA3E02401F9E43AFAA3E3
+:10321000E07E0029F9EE3AFA1203B6FBB4D9077F33
+:10322000B81227AF41A6EBB4DA097F307E0012272F
+:10323000AF8073904ED9E0FBA3E0FAA3E02401F93C
+:10324000E43AFAA3E07E0029F9EE3AFA1203B6FB5B
+:10325000B4DB097F067E031227AF804AEBB4DC099A
+:103260007F077E031227AF803D904ED9E0FBA3E09D
+:10327000FAA3E02401F9E43AFAA3E07E0029F9EE8A
+:103280003AFA1203B6FEB4DD077F011227CA801690
+:10329000EEB4DE077F021227CA800B1203B6B4DF3A
+:1032A000057F041227CA904E4BE0B40224904ED9F9
+:1032B000E0FBA3E0FAA3E02401F9E43AFAA3E07EFC
+:1032C0000029F9EE3AFA1203B6904DEDF0E412033C
+:1032D000FC904EDCE004F0022FCE22E4FEEFC3941B
+:1032E000E04020EFD394E7501A904EA4E0FEEF5454
+:1032F00007FF7401A807088002C333D8FC4E904E24
+:10330000A4F022E4FE74A52EF582E4344EF583E0A9
+:10331000FD6F601CED7014904DEDE06F601274A5B0
+:103320002EF582E4344EF583EFF0220EEEB406D58E
+:1033300022E4FEFDEF54F064F06007EF54D0FCBCD3
+:10334000D00C904E4BE0B4020B7403F08006904D0D
+:10335000DF7401F0EFC394E04021EFD394E7501BFA
+:10336000904EA4E0FEEF5407FF7401A80708800206
+:10337000C333D8FCF45E904EA4F022E4FEED70213D
+:1033800074A52EF582E4344EF583E06F7047EEB4F9
+:10339000050B24A5F582E4344EF583E4F07D01802D
+:1033A0003474A52EF582E4344EF583E0FC74A42E2B
+:1033B000F582E4344EF583ECF074A52EF582E43406
+:1033C0004EF583E06014EEB4050B24A5F582E434D9
+:1033D0004EF583E4F00EEEB406A322E4FF904EEE29
+:1033E000F0FEFDA3F0A3F0EF90068193607CEF93D5
+:1033F000FD131313541FFEED5407FD7401A80508B7
+:103400008002C333D8FCFDEE2478FBE434808B8249
+:10341000F583E0FCEDF4FBEC5BF0EE2470F582E468
+:103420003480F583E04DF0EE2474F582E43480F5C9
+:1034300083E05BF090811CE0F4FC74BC2FF582E427
+:10344000344DF583ECF0EE2478FBE434808B82F588
+:1034500083E04DF0EE2470FBE434808B82F583E052
+:10346000FCEDF4FBEC5BF00F61E7E4FFEF9006810D
+:1034700093607CEF93FD131313541FFEED5407FD6F
+:103480007401A805088002C333D8FCFDEE2478FB44
+:10349000E434808B82F583E0FCEDF4FBEC5BF0EE32
+:1034A0002470F582E43480F583E04DF0EE2474F569
+:1034B00082E43480F583E05BF090811CE0F4FC74DE
+:1034C000A82FF582E4344DF583ECF0EE2478FBE48C
+:1034D00034808B82F583E04DF0EE2470FBE4348081
+:1034E0008B82F583E0FCEDF4FBEC5BF00F816CE488
+:1034F000FFEF90068193604074BC2FF582E4344D59
+:10350000F583E0FE74A82FF582E4344DF583E06E78
+:10351000602374BC2FF582E4344DF583C083C082F0
+:10352000E0FE74A82FF582E4344DF583E0FDEE5DF6
+:10353000D082D083F00F80B922904CC3E0B4010751
+:10354000D2017F1C020FDF904CC3E0B40207D2010E
+:103550007F1C020FDFD2017F1C020FDF908091746D
+:103560000DF0A304F0A3F0A3F0A3F0A314F0221233
+:103570001661B1A4904CEC7401F0904CE5741EF00F
+:10358000E4904CF2F0904D0B74FFF09044FCE0900E
+:103590004DD0F09044FDE0904DD1F09044FEE0908D
+:1035A0004DD2F022904CD37405F0E4A3F0FFEF2548
+:1035B000E024D6F582E4344CF5837454F0A3F00F84
+:1035C000EFB404EA904C91E0FEA3E0FFC3904C946A
+:1035D000E09FFD904C93E09EFCE41202067B527A41
+:1035E000B8799E783F1200FBC004C005C006C00732
+:1035F000904C91E0FCA3E0FDE4120206D003D0025F
+:10360000D001D00012000A12023F904CFCEEF0A351
+:10361000EFF0904C91E0FEA3E0FFC3904C94E09F4C
+:10362000FD904C93E09EFCE41202067BC37AF57990
+:1036300088783F1200FBC004C005C006C007904C4C
+:1036400091E0FCA3E0FDE4120206D003D002D00119
+:10365000D00012000A12023F904CDEEEF0A3EFF011
+:10366000904C91E0FEA3E0FFC3904C94E09FFD904E
+:103670004C93E09EFCE41202067BAE7A4779817897
+:103680003F1200FBC004C005C006C007904C91E08B
+:10369000FCA3E0FDE4120206D003D002D001D0006A
+:1036A00012000A12023F904CE0EEF0A3EFF02290DD
+:1036B00080107401F080FE2280F5904F04EDF090B0
+:1036C00000011203CF904F05F022904DDBE0600F18
+:1036D000E014F0E0700990413104F0904DDAF09080
+:1036E0004CC9E064046008904CC7E06404705690D4
+:1036F0004CC7E064047034904DDAE07010904CE3F5
+:10370000E0FEA3E0FF4E6023EF541F701EE4904DD7
+:10371000DAF0904E4C7404F0904CFBE0904E4DF07B
+:103720007B017A4E794C7D02121533904CE3E064B4
+:10373000047004A3E064B06002E1C1120F59904C20
+:10374000ED7401F022904CC5E06403703C904CE4B1
+:10375000E0541F641070207B017A4879007D09FCD9
+:10376000121635E4904E4BF090480004F0FB7A4876
+:1037700079007D09121533C3904CE4E094B0904C6D
+:10378000E3E09404403B021EF3904CC5E0B4011208
+:10379000C3904CE4E09458904CE3E0940240220241
+:1037A0001EF3C3904CE4E09414904CE3E09400408A
+:1037B00010904DE5E06007E4F07F0E12085F120FF5
+:1037C0003822904CCEE030E13E904CD0E0C394FAE9
+:1037D0005003E004F0904CD0E064B47037904DE3B7
+:1037E000E004F0E0D394025007E4904CD0F0802441
+:1037F000904DE3E0B4031D904DDC7401F0E4904C77
+:10380000D0F0120F38800DE4904DE3F0904DDCF0D5
+:10381000904CD0F0904CCEE030E43C904CEB740AED
+:10382000F0904CD1E0C394FA5003E004F0904CD1F6
+:10383000E064067050904CC3E0FF600464FE704585
+:10384000E4904CCDF0120F597F0A120F41120FF77E
+:103850007F0A12091C802E904CCDE06023E4F07F9B
+:103860000D12091C904CEC7401F0904CC3E0904C8C
+:10387000C0F0904CBF7401F0121A217F2412085F2F
+:10388000E4904CD1F0904CCEE030E34E904CEB7491
+:103890000AF0904CD2E0C394FA5003E004F0904C4C
+:1038A000D2E06406706F904CE97404F0A374B0F039
+:1038B000E4904CEFF0A3F07F0512091C120FF7E41F
+:1038C000904CCCF0904CEC04F0904CC0E0904CC488
+:1038D000F0904CC3E0904CC0F022904CCCE06030B3
+:1038E000E4F0904CC3E0FF904CC0E06F6022904C3D
+:1038F000EC7401F0120FF7904CC3E0904CC0F090C4
+:103900004CBF7401F0120F59121A217F2412085F64
+:10391000E4904CD2F022904CEBE0600214F0904C1A
+:10392000F1E0600214F0904CFAE0600B14F0E070EB
+:1039300006904CF67406F0904CE5E06035904CEF44
+:10394000E07002A3E0700A904CE9E07002A3E0602E
+:1039500006E4904CE5F022904CE5E014F0E06009BC
+:10396000D2017F1F120FDF8052C2017F1F120FDFB3
+:103970008049904CE9E07002A3E0703F904CEFE08A
+:103980007002A3E07035904CE2E0602F14F0E0FF8D
+:10399000C394085016EF30E109D2017F1F120FDFE8
+:1039A0008010C2017F1F120FDF8007C2017F1F122C
+:1039B0000FDF904CE2E070037418F0904DDCE07083
+:1039C00036904DDDE06401702E904CE3F0A3F09052
+:1039D0004DDDF0904E4CE0600D7B017A4E794C7DD0
+:1039E000031215338011904800E0600B7B017A4888
+:1039F00079007D09121533904CE8E0602CA3E0704B
+:103A000002A3E07024904CEFE07002A3E0701A90E3
+:103A10004CE8E014F0D2017F1D120FDF904CE8E07B
+:103A20007007C2017F1D120FDF904DD9E06009E0E1
+:103A300014F0E070031236B8904DD4E06011E01439
+:103A4000F0E0700B904D3DE070057F1B12085F9019
+:103A50004DE6E06029E014F0E07023904D46E06010
+:103A600002E4F0904CC7E0B40407904213740CF0E9
+:103A700022904CC9E0B40406904213743AF02290AC
+:103A80004ED012058200000000904C95E07002A319
+:103A9000E070028150904C95E0FEA3E0FF904CD482
+:103AA000E0FD04F0ED25E024D6F582E4344CF58306
+:103AB000EEF0A3EFF0904CD4E0C394044002E4F0A5
+:103AC000E4904ECFF0904ED0E0F8A3E0F9A3E0FAF6
+:103AD000A3E0FB904ECFE025E024D6F582E4344C01
+:103AE000F583E0FEA3E0FFE4FCFDEB2FFFEA3EFEE2
+:103AF000ED39FDEC38FC904ED0120576904ECFE0BB
+:103B000004F0E0B404BF904ED0E0FCA3E0FDA3E0DD
+:103B1000FEA3E0FFE47B04FAF9F81204C5904ED04E
+:103B2000120576904CE0E0FEA3E0FFE4FCFD904E31
+:103B3000D0E0F8A3E0F9A3E0FAA3E0FBD312056517
+:103B40005007E4904CFBF061CB904CFCE0FEA3E00E
+:103B5000FFE4FCFD904ED0E0F8A3E0F9A3E0FAA367
+:103B6000E0FBC31205654008904CFB7464F0805B79
+:103B7000904CE0E0FEA3E0FFFBAA06E4904ED0E00C
+:103B8000FCA3E0FDA3E0FEA3E0C39BFFEE9AFEEDE5
+:103B90009400FDEC9400FCE47B64FAF9F812043A1A
+:103BA000C006C007904CE0E0FEA3E0FFC3904CFDD0
+:103BB000E09FFF904CFCE09EFEAB07FAE4F9F8D0E2
+:103BC00007D0061204C5904CFBEFF0904CE0E0FEED
+:103BD000A3E0FFE4FCFD904ED0E0F8A3E0F9A3E001
+:103BE000FAA3E0FBC31205655008904CD57402F0AF
+:103BF0008056904CDEE0FEA3E0FFE4FCFD904ED04A
+:103C0000E0F8A3E0F9A3E0FAA3E0FBC312056550D6
+:103C10001D904CD57401F0904D02E0702B904D40FA
+:103C2000F0A37448F0A37412F0E4A3F0801AE490B7
+:103C30004CD5F0904D02E0700F904D40F0A37448C9
+:103C4000F0A3745DF0E4A3F0904CD5E0904D01F04A
+:103C500022904EDDEEF0A3EFF0904EDFECF0A3EDFE
+:103C6000F0904EDFE0FEA3E0FFD3904EDEE09F90A9
+:103C70004EDDE09E4016904EDFE0FEA3E0FF904E4A
+:103C8000DEE09FFF904EDDE09EFE801E904EDDE068
+:103C9000FEA3E0FFC3904EE0E09FFF904EDFE09E6A
+:103CA000FEAD03C3EB9FFFE49EFE22900BE774037F
+:103CB000F0ED60031217DC22900BE77404F002179A
+:103CC000DC900BE77405F00217DC900446E0FF225D
+:103CD0009082807401F022EFF4603AEF5407FEEF17
+:103CE0001313135403FF24A3F582E43400F583C0B7
+:103CF00083C082E0FD7401A806088002C333D8FCAB
+:103D0000F4FC5DD082D083F074A72FF582E43400F8
+:063D1000F583E05CF022E7
 :00000001FF
Index: c51/output/fwram.rom
===================================================================
--- /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/fwram.rom	(revision 700)
+++ /ZXS_KB_Project/ZXS_2bt_3ch_MD287_1026 _KB-BT84/c51/output/fwram.rom	(working copy)
@@ -1654,14 +1654,14 @@
 1f
 62
 ff
-36
-5f
+39
+16
 00
 00
 00
 ff
-37
-c7
+36
+ba
 00
 16
 08
@@ -2229,8 +2229,8 @@
 7b
 64
 12
-3b
-f5
+3c
+51
 90
 4e
 bc
@@ -2839,7 +2839,7 @@
 f1
 12
 35
-14
+6f
 7b
 01
 7a
@@ -2935,7 +2935,7 @@
 5d
 12
 35
-01
+5c
 12
 11
 05
@@ -4081,7 +4081,7 @@
 22
 12
 35
-01
+5c
 12
 11
 05
@@ -5079,7 +5079,7 @@
 f9
 12
 2f
-5f
+bf
 90
 4e
 4b
@@ -5532,7 +5532,7 @@
 fd
 12
 3c
-4f
+ab
 90
 4c
 c7
@@ -5575,7 +5575,7 @@
 fd
 12
 3c
-65
+c1
 90
 4c
 c5
@@ -8053,11 +8053,11 @@
 f1
 96
 12
-37
-d7
+36
+ca
 12
-38
-cf
+37
+c2
 12
 22
 ea
@@ -8100,7 +8100,7 @@
 f0
 12
 3a
-23
+7f
 22
 22
 e4
@@ -9394,7 +9394,7 @@
 f0
 12
 33
-80
+db
 7a
 4d
 79
@@ -9865,7 +9865,7 @@
 ff
 12
 32
-80
+db
 80
 08
 90
@@ -9874,8 +9874,8 @@
 e0
 ff
 12
-32
-d6
+33
+31
 90
 4e
 8b
@@ -11104,16 +11104,31 @@
 a3
 f0
 90
-4d
-e2
+4c
+c1
 e0
+fe
 b4
-01
+02
+0a
+ef
+b4
+35
 06
 90
-4c
-c1
+4e
+ed
+74
+64
+f0
+90
+4d
+e2
 e0
+b4
+01
+03
+ee
 60
 23
 90
@@ -11140,7 +11155,7 @@
 60
 02
 a1
-6a
+ca
 90
 4c
 c1
@@ -11150,60 +11165,63 @@
 60
 02
 a1
-6a
-ef
+ca
+90
+4e
+ec
+e0
 12
 05
 b3
 2d
-4d
+8c
 06
 2d
-2e
+51
 1b
 2d
-26
+3a
 1d
 2b
-c6
+d8
 3a
 2b
-ce
+e0
 3b
 2b
-d6
+e8
 3c
 2c
-16
+28
 3d
 2c
-56
+68
 3e
 2c
-96
+a8
 3f
 2c
-d6
+e8
 40
 2c
-de
+f0
 41
 2c
-e6
+f8
 42
-2c
-ee
+2d
+00
 43
-2c
-f6
+2d
+08
 44
-2c
-fe
+2d
+10
 45
 00
 00
 2d
-6a
+ca
 90
 4e
 ed
@@ -11211,7 +11229,7 @@
 d6
 f0
 a1
-6a
+ca
 90
 4e
 ed
@@ -11219,7 +11237,7 @@
 d5
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -11283,7 +11301,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -11347,7 +11365,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -11411,7 +11429,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4c
 c1
@@ -11475,7 +11493,7 @@
 ed
 f0
 a1
-6a
+ca
 90
 4e
 ed
@@ -11483,7 +11501,7 @@
 f4
 f0
 a1
-6a
+ca
 90
 4e
 ed
@@ -11491,37 +11509,37 @@
 f2
 f0
 a1
-6a
+ca
 90
 4e
 ed
 74
 f5
 f0
-80
-7c
+a1
+ca
 90
 4e
 ed
 74
 f6
 f0
-80
-74
+a1
+ca
 90
 4e
 ed
 74
 f7
 f0
-80
-6c
+a1
+ca
 90
 4c
 c1
 e0
 70
-1a
+1c
 90
 4e
 eb
@@ -11537,25 +11555,42 @@
 4e
 eb
 e0
-30
+20
 e0
-54
+02
+a1
+ca
 90
 4c
 fa
 74
 0a
 f0
-80
-4c
+a1
+ca
 90
 4e
 ed
 74
 da
 f0
-80
-44
+a1
+ca
+90
+4c
+c1
+e0
+b4
+02
+08
+90
+4e
+ed
+74
+35
+f0
+a1
+ca
 90
 4e
 ed
@@ -11563,14 +11598,21 @@
 64
 f0
 80
-3c
+79
+90
+4c
+c1
+e0
+b4
+02
+1a
 90
 4e
 eb
 e0
 ff
 7b
-64
+35
 7d
 02
 71
@@ -11581,24 +11623,78 @@
 e0
 30
 e0
-06
+13
 90
 4c
 fa
 74
 0a
 f0
-e4
+80
+0b
 90
 4e
-ed
+eb
+e0
+ff
+7b
+64
+7d
+02
+71
+1d
+90
+4e
+eb
+e0
+30
+e0
+46
+90
+4c
+fa
+74
+0a
 f0
 80
+3e
+90
+4c
+c1
+e0
+b4
+02
+1a
+90
+4e
+eb
+e0
+ff
+7b
+35
+7d
+40
+71
 1d
 90
 4e
 eb
 e0
+30
+e0
+20
+90
+4c
+fa
+74
+0a
+f0
+80
+18
+90
+4e
+eb
+e0
 ff
 7b
 64
@@ -11633,7 +11729,7 @@
 60
 02
 e1
-59
+b9
 90
 4e
 ec
@@ -11643,7 +11739,7 @@
 70
 02
 c1
-50
+b0
 24
 ee
 60
@@ -11652,29 +11748,29 @@
 cb
 70
 02
-c1
-ab
+e1
+0b
 14
 70
 02
-c1
-d7
+e1
+37
 14
 70
 02
 e1
-03
+63
 14
 70
 02
 e1
-2f
+8f
 24
 3e
 60
 02
 e1
-59
+b9
 90
 4c
 c1
@@ -11765,7 +11861,7 @@
 ed
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -11853,7 +11949,7 @@
 ed
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -11944,7 +12040,7 @@
 ed
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -11988,7 +12084,7 @@
 4d
 f0
 e1
-59
+b9
 90
 4c
 c1
@@ -12152,7 +12248,7 @@
 03
 02
 32
-7f
+da
 90
 4e
 d9
@@ -12186,24 +12282,23 @@
 64
 f0
 60
-0a
+09
 ef
 54
 d0
 64
 d0
 60
-03
 02
-32
-76
+41
+d1
 12
 03
 b6
 fb
 b4
 f1
-0a
+09
 7f
 83
 7e
@@ -12211,13 +12306,12 @@
 12
 27
 af
-02
-32
-4b
+41
+a6
 eb
 b4
 f2
-0a
+09
 7f
 cd
 7e
@@ -12225,9 +12319,8 @@
 12
 27
 af
-02
-32
-4b
+41
+a6
 90
 4e
 d9
@@ -12259,19 +12352,18 @@
 fb
 b4
 f3
-08
+07
 7f
 b7
 12
 27
 af
-02
-32
-4b
+41
+a6
 eb
 b4
 f4
-0a
+09
 7f
 b6
 7e
@@ -12279,9 +12371,8 @@
 12
 27
 af
-02
-32
-4b
+41
+a6
 90
 4e
 d9
@@ -12320,7 +12411,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 f6
@@ -12333,7 +12424,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12372,7 +12463,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 f8
@@ -12385,7 +12476,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12425,7 +12516,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 fa
@@ -12438,7 +12529,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12478,7 +12569,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d0
@@ -12491,7 +12582,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12532,7 +12623,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d3
@@ -12545,7 +12636,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12586,7 +12677,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d4
@@ -12599,7 +12690,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12640,7 +12731,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d6
@@ -12653,7 +12744,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12692,7 +12783,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 d8
@@ -12705,7 +12796,7 @@
 27
 af
 41
-4b
+a6
 90
 4e
 d9
@@ -12744,7 +12835,7 @@
 27
 af
 41
-4b
+a6
 eb
 b4
 da
@@ -12924,7 +13015,7 @@
 f0
 02
 2f
-6e
+ce
 22
 e4
 fe
@@ -13324,7 +13415,7 @@
 f0
 0f
 61
-8c
+e7
 e4
 ff
 ef
@@ -13457,7 +13548,7 @@
 f0
 0f
 81
-11
+6c
 e4
 ff
 ef
@@ -13590,7 +13681,7 @@
 16
 61
 b1
-49
+a4
 90
 4c
 ec
@@ -13918,515 +14009,155 @@
 80
 f5
 90
-4c
-eb
-e0
-60
-02
-14
+4f
+04
+ed
 f0
 90
-4c
-f1
-e0
-60
-02
-14
+00
+01
+12
+03
+cf
+90
+4f
+05
 f0
+22
 90
-4c
-fa
+4d
+db
 e0
 60
-0b
+0f
+e0
 14
 f0
 e0
 70
-06
+09
 90
-4c
-f6
-74
-06
+41
+31
+04
+f0
+90
+4d
+da
 f0
 90
 4c
-e5
+c9
 e0
+64
+04
 60
-35
+08
 90
 4c
-ef
+c7
 e0
+64
+04
 70
-02
-a3
+56
+90
+4c
+c7
 e0
+64
+04
 70
-0a
+34
 90
-4c
-e9
+4d
+da
 e0
 70
-02
+10
+90
+4c
+e3
+e0
+fe
 a3
 e0
+ff
+4e
 60
-06
+23
+ef
+54
+1f
+70
+1e
 e4
 90
+4d
+da
+f0
+90
+4e
 4c
-e5
+74
+04
 f0
-22
 90
 4c
-e5
+fb
 e0
-14
+90
+4e
+4d
 f0
-e0
-60
-09
-d2
-01
-7f
-1f
-12
-0f
-df
-80
-52
-c2
+7b
 01
-7f
-1f
+7a
+4e
+79
+4c
+7d
+02
 12
-0f
-df
-80
-49
+15
+33
 90
 4c
-e9
+e3
 e0
+64
+04
 70
-02
+04
 a3
 e0
-70
-3f
+64
+b0
+60
+02
+e1
+c1
+12
+0f
+59
 90
 4c
-ef
-e0
-70
-02
-a3
+ed
+74
+01
+f0
+22
+90
+4c
+c5
 e0
+64
+03
 70
-35
+3c
 90
 4c
-e2
-e0
-60
-2f
-14
-f0
-e0
-ff
-c3
-94
-08
-50
-16
-ef
-30
-e1
-09
-d2
-01
-7f
-1f
-12
-0f
-df
-80
-10
-c2
-01
-7f
-1f
-12
-0f
-df
-80
-07
-c2
-01
-7f
-1f
-12
-0f
-df
-90
-4c
-e2
-e0
-70
-03
-74
-18
-f0
-90
-4d
-dc
-e0
-70
-36
-90
-4d
-dd
-e0
-64
-01
-70
-2e
-90
-4c
-e3
-f0
-a3
-f0
-90
-4d
-dd
-f0
-90
-4e
-4c
-e0
-60
-0d
-7b
-01
-7a
-4e
-79
-4c
-7d
-03
-12
-15
-33
-80
-11
-90
-48
-00
-e0
-60
-0b
-7b
-01
-7a
-48
-79
-00
-7d
-09
-12
-15
-33
-90
-4c
-e8
-e0
-60
-2c
-a3
-e0
-70
-02
-a3
-e0
-70
-24
-90
-4c
-ef
-e0
-70
-02
-a3
-e0
-70
-1a
-90
-4c
-e8
-e0
-14
-f0
-d2
-01
-7f
-1d
-12
-0f
-df
-90
-4c
-e8
-e0
-70
-07
-c2
-01
-7f
-1d
-12
-0f
-df
-90
-4d
-d9
-e0
-60
-08
-e0
-14
-f0
-e0
-70
-02
-d1
-5d
-90
-4d
-d4
-e0
-60
-11
-e0
-14
-f0
-e0
-70
-0b
-90
-4d
-3d
-e0
-70
-05
-7f
-1b
-12
-08
-5f
-90
-4d
-e6
-e0
-60
-29
-e0
-14
-f0
-e0
-70
-23
-90
-4d
-46
-e0
-60
-02
-e4
-f0
-90
-4c
-c7
-e0
-b4
-04
-07
-90
-42
-13
-74
-0c
-f0
-22
-90
-4c
-c9
-e0
-b4
-04
-06
-90
-42
-13
-74
-3a
-f0
-22
-90
-4f
-04
-ed
-f0
-90
-00
-01
-12
-03
-cf
-90
-4f
-05
-f0
-22
-90
-4d
-db
-e0
-60
-0f
-e0
-14
-f0
-e0
-70
-09
-90
-41
-31
-04
-f0
-90
-4d
-da
-f0
-90
-4c
-c9
-e0
-64
-04
-60
-08
-90
-4c
-c7
-e0
-64
-04
-70
-56
-90
-4c
-c7
-e0
-64
-04
-70
-34
-90
-4d
-da
-e0
-70
-10
-90
-4c
-e3
-e0
-fe
-a3
-e0
-ff
-4e
-60
-23
-ef
-54
-1f
-70
-1e
-e4
-90
-4d
-da
-f0
-90
-4e
-4c
-74
-04
-f0
-90
-4c
-fb
-e0
-90
-4e
-4d
-f0
-7b
-01
-7a
-4e
-79
-4c
-7d
-02
-12
-15
-33
-90
-4c
-e3
-e0
-64
-04
-70
-04
-a3
-e0
-64
-b0
-60
-02
-01
-ce
-12
-0f
-59
-90
-4c
-ed
-74
-01
-f0
-22
-90
-4c
-c5
-e0
-64
-03
-70
-3c
-90
-4c
-e4
+e4
 e0
 54
 1f
@@ -14562,323 +14293,684 @@
 f0
 90
 4c
-d0
+d0
+e0
+64
+b4
+70
+37
+90
+4d
+e3
+e0
+04
+f0
+e0
+d3
+94
+02
+50
+07
+e4
+90
+4c
+d0
+f0
+80
+24
+90
+4d
+e3
+e0
+b4
+03
+1d
+90
+4d
+dc
+74
+01
+f0
+e4
+90
+4c
+d0
+f0
+12
+0f
+38
+80
+0d
+e4
+90
+4d
+e3
+f0
+90
+4d
+dc
+f0
+90
+4c
+d0
+f0
+90
+4c
+ce
+e0
+30
+e4
+3c
+90
+4c
+eb
+74
+0a
+f0
+90
+4c
+d1
+e0
+c3
+94
+fa
+50
+03
+e0
+04
+f0
+90
+4c
+d1
+e0
+64
+06
+70
+50
+90
+4c
+c3
+e0
+ff
+60
+04
+64
+fe
+70
+45
+e4
+90
+4c
+cd
+f0
+12
+0f
+59
+7f
+0a
+12
+0f
+41
+12
+0f
+f7
+7f
+0a
+12
+09
+1c
+80
+2e
+90
+4c
+cd
+e0
+60
+23
+e4
+f0
+7f
+0d
+12
+09
+1c
+90
+4c
+ec
+74
+01
+f0
+90
+4c
+c3
+e0
+90
+4c
+c0
+f0
+90
+4c
+bf
+74
+01
+f0
+12
+1a
+21
+7f
+24
+12
+08
+5f
+e4
+90
+4c
+d1
+f0
+90
+4c
+ce
+e0
+30
+e3
+4e
+90
+4c
+eb
+74
+0a
+f0
+90
+4c
+d2
+e0
+c3
+94
+fa
+50
+03
+e0
+04
+f0
+90
+4c
+d2
+e0
+64
+06
+70
+6f
+90
+4c
+e9
+74
+04
+f0
+a3
+74
+b0
+f0
+e4
+90
+4c
+ef
+f0
+a3
+f0
+7f
+05
+12
+09
+1c
+12
+0f
+f7
+e4
+90
+4c
+cc
+f0
+90
+4c
+ec
+04
+f0
+90
+4c
+c0
+e0
+90
+4c
+c4
+f0
+90
+4c
+c3
 e0
-64
-b4
-70
-37
 90
-4d
-e3
-e0
-04
+4c
+c0
 f0
+22
+90
+4c
+cc
 e0
-d3
-94
-02
-50
-07
+60
+30
 e4
+f0
 90
 4c
-d0
-f0
-80
-24
+c3
+e0
+ff
 90
-4d
-e3
+4c
+c0
 e0
-b4
-03
-1d
+6f
+60
+22
 90
-4d
-dc
+4c
+ec
 74
 01
 f0
-e4
+12
+0f
+f7
 90
 4c
-d0
+c3
+e0
+90
+4c
+c0
+f0
+90
+4c
+bf
+74
+01
 f0
 12
 0f
-38
-80
-0d
+59
+12
+1a
+21
+7f
+24
+12
+08
+5f
 e4
 90
-4d
-e3
+4c
+d2
 f0
+22
 90
-4d
-dc
+4c
+eb
+e0
+60
+02
+14
 f0
 90
 4c
-d0
+f1
+e0
+60
+02
+14
 f0
 90
 4c
-ce
+fa
 e0
-30
-e4
-3c
+60
+0b
+14
+f0
+e0
+70
+06
 90
 4c
-eb
+f6
 74
-0a
+06
 f0
 90
 4c
-d1
-e0
-c3
-94
-fa
-50
-03
+e5
 e0
-04
-f0
+60
+35
 90
 4c
-d1
+ef
 e0
-64
-06
 70
-50
+02
+a3
+e0
+70
+0a
 90
 4c
-c3
+e9
 e0
-ff
-60
-04
-64
-fe
 70
-45
+02
+a3
+e0
+60
+06
 e4
 90
 4c
-cd
+e5
 f0
-12
-0f
-59
+22
+90
+4c
+e5
+e0
+14
+f0
+e0
+60
+09
+d2
+01
 7f
-0a
-12
-0f
-41
+1f
 12
 0f
-f7
+df
+80
+52
+c2
+01
 7f
-0a
+1f
 12
-09
-1c
+0f
+df
 80
-2e
+49
 90
 4c
-cd
+e9
+e0
+70
+02
+a3
+e0
+70
+3f
+90
+4c
+ef
+e0
+70
+02
+a3
+e0
+70
+35
+90
+4c
+e2
 e0
 60
-23
-e4
+2f
+14
 f0
+e0
+ff
+c3
+94
+08
+50
+16
+ef
+30
+e1
+09
+d2
+01
 7f
-0d
+1f
 12
-09
-1c
+0f
+df
+80
+10
+c2
+01
+7f
+1f
+12
+0f
+df
+80
+07
+c2
+01
+7f
+1f
+12
+0f
+df
 90
 4c
-ec
+e2
+e0
+70
+03
 74
-01
+18
 f0
 90
-4c
-c3
+4d
+dc
+e0
+70
+36
+90
+4d
+dd
 e0
+64
+01
+70
+2e
 90
 4c
-c0
+e3
 f0
-90
-4c
-bf
-74
-01
+a3
 f0
-12
-1a
-21
-7f
-24
-12
-08
-5f
-e4
 90
-4c
-d1
+4d
+dd
 f0
 90
+4e
 4c
-ce
 e0
-30
-e3
+60
+0d
+7b
+01
+7a
 4e
-90
-4c
-eb
-74
-0a
-f0
-90
+79
 4c
-d2
-e0
-c3
-94
-fa
-50
+7d
 03
+12
+15
+33
+80
+11
+90
+48
+00
 e0
-04
-f0
+60
+0b
+7b
+01
+7a
+48
+79
+00
+7d
+09
+12
+15
+33
 90
 4c
-d2
+e8
+e0
+60
+2c
+a3
 e0
-64
-06
 70
-6f
-90
-4c
-e9
-74
-04
-f0
+02
 a3
-74
-b0
-f0
-e4
+e0
+70
+24
 90
 4c
 ef
-f0
+e0
+70
+02
 a3
+e0
+70
+1a
+90
+4c
+e8
+e0
+14
 f0
+d2
+01
 7f
-05
-12
-09
-1c
+1d
 12
 0f
-f7
-e4
+df
 90
 4c
-cc
-f0
+e8
+e0
+70
+07
+c2
+01
+7f
+1d
+12
+0f
+df
 90
-4c
-ec
-04
+4d
+d9
+e0
+60
+09
+e0
+14
 f0
-90
-4c
-c0
 e0
+70
+03
+12
+36
+b8
 90
-4c
-c4
+4d
+d4
+e0
+60
+11
+e0
+14
 f0
+e0
+70
+0b
 90
-4c
-c3
+4d
+3d
 e0
+70
+05
+7f
+1b
+12
+08
+5f
 90
-4c
-c0
+4d
+e6
+e0
+60
+29
+e0
+14
 f0
-22
+e0
+70
+23
 90
-4c
-cc
+4d
+46
 e0
 60
-30
+02
 e4
 f0
 90
 4c
-c3
-e0
-ff
-90
-4c
-c0
+c7
 e0
-6f
-60
-22
+b4
+04
+07
 90
-4c
-ec
+42
+13
 74
-01
+0c
 f0
-12
-0f
-f7
+22
 90
 4c
-c3
+c9
 e0
+b4
+04
+06
 90
-4c
-c0
-f0
-90
-4c
-bf
+42
+13
 74
-01
-f0
-12
-0f
-59
-12
-1a
-21
-7f
-24
-12
-08
-5f
-e4
-90
-4c
-d2
+3a
 f0
 22
 90
@@ -14901,8 +14993,8 @@
 e0
 70
 02
-61
-f4
+81
+50
 90
 4c
 95
@@ -15082,7 +15174,7 @@
 fb
 f0
 61
-6f
+cb
 90
 4c
 fc
Index: c51/output/FW
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/FW.SBR
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
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_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/sys.obj
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
