Index: c51/kb_process.c
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/kb_process.c	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/kb_process.c	(working copy)
@@ -597,7 +597,7 @@
 
 	temp = key_value;
 	 
-	if(g_variable.system_mode != OSMODE_WINDOWS)
+	if((g_variable.system_mode != OSMODE_WINDOWS) && (g_variable.system_mode != OSMODE_ANDROID))
 	{
 		if(key_value == HID_KEY_RIGHT_ALT)
 			temp = HID_KEY_RIGHT_GUI;
@@ -608,11 +608,7 @@
 		else if(key_value == HID_KEY_LEFT_ALT)
 			temp = HID_KEY_LEFT_GUI;	
 	}
-	if(g_variable.system_mode == OSMODE_IOS)
-	{
-		if(key_value == HID_KEY_TILDE)
-			temp = HID_KEY_K45;
-	}	 
+	 
 	if(g_variable.system_mode == OSMODE_WINDOWS)
 	{
 		if(key_value == HID_MULTIKEY_OS_LOCK)
Index: c51/output/FW
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/FW.COD
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/FW.COD	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/FW.COD	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               11/04/2022  17:12:23  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               11/07/2022  16:28:08  PAGE 1
 
 
 
@@ -1119,7 +1119,7 @@
 000C8F 904E7D            MOV     DPTR,#len
 000C92 E0                MOVX    A,@DPTR
 000C93 FD                MOV     R5,A
-000C94 1235C6            LCALL   _IPC_TxBleData
+000C94 1235BC            LCALL   _IPC_TxBleData
   142: 
   143: 	}
 000C97         ?C0033?KB_PROCESS:
@@ -1213,7 +1213,7 @@
 000CFA 904E7D            MOV     DPTR,#len
 000CFD E0                MOVX    A,@DPTR
 000CFE FD                MOV     R5,A
-000CFF 1235B6            LCALL   _IPC_Tx24GData
+000CFF 1235AC            LCALL   _IPC_Tx24GData
   171: 	}
   172: }
 000D02         ?C0031?KB_PROCESS:
@@ -1257,8 +1257,8 @@
     5: 	switch (key_num)
     6: 	{
 000D20 14                DEC     A
-000D21 B40D00            CJNE    A,#0DH,?C0259?KB_PROCESS
-000D24         ?C0259?KB_PROCESS:
+000D21 B40D00            CJNE    A,#0DH,?C0257?KB_PROCESS
+000D24         ?C0257?KB_PROCESS:
 000D24 4002              JC      $ + 4H
 000D26 C1EC              AJMP    ?C0025?KB_PROCESS
 000D28 900D36            MOV     DPTR,#0D36H
@@ -1268,7 +1268,7 @@
 000D31 25F0              ADD     A,B
 000D33 C583              XCH     A,DPH
 000D35 73                JMP     @A+DPTR
-000D36         ?C0260?KB_PROCESS:
+000D36         ?C0258?KB_PROCESS:
 000D36 020D5D            LJMP    ?C0004?KB_PROCESS
 000D39 020D5D            LJMP    ?C0004?KB_PROCESS
 000D3C 020D5D            LJMP    ?C0004?KB_PROCESS
@@ -1420,7 +1420,7 @@
 000DF0 79EE              MOV     R1,#LOW bd_key_record_list
 000DF2 7D5D              MOV     R5,#05DH
 000DF4 7C00              MOV     R4,#00H
-000DF6 1236D2            LCALL   _xmemclear_ff
+000DF6 1236C8            LCALL   _xmemclear_ff
    55: 		g_variable.last_device_num = 0xff;
 000DF9 904CC0            MOV     DPTR,#g_variable+01H
 000DFC 74FF              MOV     A,#0FFH
@@ -1680,7 +1680,7 @@
 000F20 B40107            CJNE    A,#01H,?C0075?SYS
   418: 				GPIO_FlipOutBit(BT_LED_GPIO);
 000F23 7F19              MOV     R7,#019H
-000F25 12373E            LCALL   _GPIO_FlipOutBit
+000F25 123734            LCALL   _GPIO_FlipOutBit
 000F28 804A              SJMP    ?C0079?SYS
 000F2A         ?C0075?SYS:
   419: 			else if(g_variable.current_device_num == 2)
@@ -1690,7 +1690,7 @@
 000F30 7042              JNZ     ?C0079?SYS
   420: 				GPIO_FlipOutBit(BT2_LED_GPIO);
 000F32 7F1C              MOV     R7,#01CH
-000F34 12373E            LCALL   _GPIO_FlipOutBit
+000F34 123734            LCALL   _GPIO_FlipOutBit
   421: 		}
 000F37 803B              SJMP    ?C0079?SYS
 000F39         ?C0074?SYS:
@@ -1725,7 +1725,7 @@
   432: 		{
   433: 				GPIO_FlipOutBit(LOWPOWER_LED_GPIO);
 000F5B 7F1D              MOV     R7,#01DH
-000F5D 12373E            LCALL   _GPIO_FlipOutBit
+000F5D 123734            LCALL   _GPIO_FlipOutBit
   434: 		}
 000F60 8012              SJMP    ?C0079?SYS
 000F62         ?C0081?SYS:
@@ -2238,7 +2238,7 @@
 0011A5         ?C0171?SYS:
   888: 	while(1) {
   889: 		IPC_DealSingleStep();
-0011A5 123386            LCALL   IPC_DealSingleStep
+0011A5 12337C            LCALL   IPC_DealSingleStep
   890: 		kb_need_keyscan();
 0011A8 121ED0            LCALL   kb_need_keyscan
   891: 		YC_update_eeprom_data();
@@ -2311,7 +2311,7 @@
   914: 			) 
   915: 			{
   916: 				IPC_AbandonLpm();
-0011F7 1235E0            LCALL   IPC_AbandonLpm
+0011F7 1235D6            LCALL   IPC_AbandonLpm
   917: 				break;
 0011FA 80A9              SJMP    ?C0171?SYS
   918: 			}
@@ -2542,7 +2542,7 @@
 0012F9 80B0              SJMP    ?C0037?KEYSCAN
 0012FB         ?C0038?KEYSCAN:
   229: 	GPIO_fillpd();
-0012FB 12375B            LCALL   GPIO_fillpd
+0012FB 123751            LCALL   GPIO_fillpd
   230: 	
   231: 	temp = REG_GPIO_IN(0);
 0012FE 90811C            MOV     DPTR,#0811CH
@@ -2838,7 +2838,7 @@
 001470 A3                INC     DPTR
 001471 E0                MOVX    A,@DPTR
 001472 F9                MOV     R1,A
-001473 123637            LCALL   _IIC_write
+001473 12362D            LCALL   _IIC_write
 001476 7F0A              MOV     R7,#0AH
 001478 120D03            LCALL   _Delay1ms
 00147B 904E9A            MOV     DPTR,#curr_len
@@ -3398,7 +3398,7 @@
 0016E2 904CC0            MOV     DPTR,#g_variable+01H
 0016E5 F0                MOVX    @DPTR,A
   680: 			LED_device_poweron();
-0016E6 1230A6            LCALL   LED_device_poweron
+0016E6 12309C            LCALL   LED_device_poweron
   681: 			g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_NORMAL;
 0016E9 904CBF            MOV     DPTR,#g_variable
 0016EC 7401              MOV     A,#01H
@@ -3529,7 +3529,7 @@
 00177C 904CC0            MOV     DPTR,#g_variable+01H
 00177F F0                MOVX    @DPTR,A
   723: 				LED_device_poweron();				
-001780 1230A6            LCALL   LED_device_poweron
+001780 12309C            LCALL   LED_device_poweron
   724: 				g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_NORMAL;
 001783 904CBF            MOV     DPTR,#g_variable
 001786 7401              MOV     A,#01H
@@ -4009,7 +4009,7 @@
 00197F 7B01              MOV     R3,#01H
 001981 7D1F              MOV     R5,#01FH
 001983 7C00              MOV     R4,#00H
-001985 1236D2            LCALL   _xmemclear_ff
+001985 1236C8            LCALL   _xmemclear_ff
   208: 			Delay1ms(200);
 001988 7FC8              MOV     R7,#0C8H
 00198A 120D03            LCALL   _Delay1ms
@@ -4276,7 +4276,7 @@
 001AC0 E0                MOVX    A,@DPTR
 001AC1 7003              JNZ     ?C0043?SYS
   294: 			LED_device_poweroff();
-001AC3 1231E6            LCALL   LED_device_poweroff
+001AC3 1231DC            LCALL   LED_device_poweroff
 001AC6         ?C0043?SYS:
   295: 		g_variable.pairing_timeout = 0;
 001AC6 E4                CLR     A
@@ -4931,7 +4931,7 @@
   101: 	YC_adc_init();
 001D9B B1D0              ACALL   System_clear_mem
   102: 	g_variable.release_data =1;
-001D9D 123224            LCALL   YC_adc_init
+001D9D 12321A            LCALL   YC_adc_init
   103: 	g_variable.powerOn_timer = KB_POWERON_LED_ON_TIMER;
 001DA0 904CEB            MOV     DPTR,#g_variable+02CH
 001DA3 7401              MOV     A,#01H
@@ -5314,7 +5314,7 @@
 001F60         ?C0054?KB_PROCESS:
   291: 		return;
   292: 	pEvt = KS_GetCurrentEvt();
-001F60 122B6B            LCALL   KS_GetCurrentEvt
+001F60 122B61            LCALL   KS_GetCurrentEvt
 001F63 904EE5            MOV     DPTR,#pEvt
 001F66 EB                MOV     A,R3
 001F67 F0                MOVX    @DPTR,A
@@ -6670,8 +6670,8 @@
 
 ----- FUNCTION _kb_multikey_setup (BEGIN) -----
  FILE: 'kb_process.c'
-  779: void kb_multikey_setup(tKSEVENT *pEvt)
-  780: {
+  775: void kb_multikey_setup(tKSEVENT *pEvt)
+  776: {
 0024D2 904ED9            MOV     DPTR,#pEvt
 0024D5 EB                MOV     A,R3
 0024D6 F0                MOVX    @DPTR,A
@@ -6681,23 +6681,23 @@
 0024DA A3                INC     DPTR
 0024DB E9                MOV     A,R1
 0024DC F0                MOVX    @DPTR,A
-  781: 	byte i = 0;
-  782: 	
+  777: 	byte i = 0;
+  778: 	
 0024DD E4                CLR     A
 0024DE A3                INC     DPTR
 0024DF F0                MOVX    @DPTR,A
-  783: 	for (i = 0;i < 6;i++)
+  779: 	for (i = 0;i < 6;i++)
 0024E0 F0                MOVX    @DPTR,A
-0024E1         ?C0199?KB_PROCESS:
+0024E1         ?C0197?KB_PROCESS:
 0024E1 904EDC            MOV     DPTR,#i
 0024E4 E0                MOVX    A,@DPTR
 0024E5 FF                MOV     R7,A
 0024E6 C3                CLR     C
 0024E7 9406              SUBB    A,#06H
 0024E9 4002              JC      $ + 4H
-0024EB E1D0              AJMP    ?C0258?KB_PROCESS
-  784: 	{		
-  785: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
+0024EB E1D0              AJMP    ?C0256?KB_PROCESS
+  780: 	{		
+  781: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
 0024ED 904ED9            MOV     DPTR,#pEvt
 0024F0 E0                MOVX    A,@DPTR
 0024F1 FB                MOV     R3,A
@@ -6722,41 +6722,41 @@
 002508 FF                MOV     R7,A
 002509 54F0              ANL     A,#0F0H
 00250B 64F0              XRL     A,#0F0H
-00250D 6009              JZ      ?C0203?KB_PROCESS
+00250D 6009              JZ      ?C0201?KB_PROCESS
 00250F EF                MOV     A,R7
 002510 54D0              ANL     A,#0D0H
 002512 64D0              XRL     A,#0D0H
 002514 6002              JZ      $ + 4H
-002516 E1C8              AJMP    ?C0201?KB_PROCESS
-002518         ?C0203?KB_PROCESS:
-  786: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
-  787: 		{
-  788: 			
-  789: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
+002516 E1C8              AJMP    ?C0199?KB_PROCESS
+002518         ?C0201?KB_PROCESS:
+  782: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
+  783: 		{
+  784: 			
+  785: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
 002518 1203B6            LCALL   ?C?CLDPTR
 00251B FB                MOV     R3,A
-00251C B4F108            CJNE    A,#0F1H,?C0204?KB_PROCESS
-  790: 			{
-  791: 				kb_set_multikey(0x0183); 
+00251C B4F108            CJNE    A,#0F1H,?C0202?KB_PROCESS
+  786: 			{
+  787: 				kb_set_multikey(0x0183); 
 00251F 7F83              MOV     R7,#083H
 002521 7E01              MOV     R6,#01H
 002523 91B7              ACALL   _kb_set_multikey
-  792: 			}
-002525 E19D              AJMP    ?C0205?KB_PROCESS
-002527         ?C0204?KB_PROCESS:
-  793: 			else
-  794: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
+  788: 			}
+002525 E19D              AJMP    ?C0203?KB_PROCESS
+002527         ?C0202?KB_PROCESS:
+  789: 			else
+  790: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
 002527 EB                MOV     A,R3
-002528 B4F208            CJNE    A,#0F2H,?C0206?KB_PROCESS
-  795: 			{ 
-  796: 				kb_set_multikey(0x00cd);
+002528 B4F208            CJNE    A,#0F2H,?C0204?KB_PROCESS
+  791: 			{ 
+  792: 				kb_set_multikey(0x00cd);
 00252B 7FCD              MOV     R7,#0CDH
 00252D 7E00              MOV     R6,#00H
 00252F 91B7              ACALL   _kb_set_multikey
-  797: 			}
-002531 E19D              AJMP    ?C0205?KB_PROCESS
-002533         ?C0206?KB_PROCESS:
-  798: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
+  793: 			}
+002531 E19D              AJMP    ?C0203?KB_PROCESS
+002533         ?C0204?KB_PROCESS:
+  794: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
 002533 904ED9            MOV     DPTR,#pEvt
 002536 E0                MOVX    A,@DPTR
 002537 FB                MOV     R3,A
@@ -6780,26 +6780,26 @@
 00254B FA                MOV     R2,A
 00254C 1203B6            LCALL   ?C?CLDPTR
 00254F FB                MOV     R3,A
-002550 B4F306            CJNE    A,#0F3H,?C0208?KB_PROCESS
-  799: 			{
-  800: 				kb_set_multikey(0x00b7);
+002550 B4F306            CJNE    A,#0F3H,?C0206?KB_PROCESS
+  795: 			{
+  796: 				kb_set_multikey(0x00b7);
 002553 7FB7              MOV     R7,#0B7H
 002555 91B7              ACALL   _kb_set_multikey
-  801: 			}	
-002557 E19D              AJMP    ?C0205?KB_PROCESS
-002559         ?C0208?KB_PROCESS:
-  802: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
+  797: 			}	
+002557 E19D              AJMP    ?C0203?KB_PROCESS
+002559         ?C0206?KB_PROCESS:
+  798: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
 002559 EB                MOV     A,R3
-00255A B4F408            CJNE    A,#0F4H,?C0210?KB_PROCESS
-  803: 			{
-  804: 				kb_set_multikey(0x00b6);
+00255A B4F408            CJNE    A,#0F4H,?C0208?KB_PROCESS
+  799: 			{
+  800: 				kb_set_multikey(0x00b6);
 00255D 7FB6              MOV     R7,#0B6H
 00255F 7E00              MOV     R6,#00H
 002561 91B7              ACALL   _kb_set_multikey
-  805: 			}
-002563 E19D              AJMP    ?C0205?KB_PROCESS
-002565         ?C0210?KB_PROCESS:
-  806: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
+  801: 			}
+002563 E19D              AJMP    ?C0203?KB_PROCESS
+002565         ?C0208?KB_PROCESS:
+  802: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
 002565 904ED9            MOV     DPTR,#pEvt
 002568 E0                MOVX    A,@DPTR
 002569 FB                MOV     R3,A
@@ -6823,26 +6823,26 @@
 00257D FA                MOV     R2,A
 00257E 1203B6            LCALL   ?C?CLDPTR
 002581 FB                MOV     R3,A
-002582 B4F506            CJNE    A,#0F5H,?C0212?KB_PROCESS
-  807: 			{
-  808: 				kb_set_multikey(0x00b5);
+002582 B4F506            CJNE    A,#0F5H,?C0210?KB_PROCESS
+  803: 			{
+  804: 				kb_set_multikey(0x00b5);
 002585 7FB5              MOV     R7,#0B5H
 002587 91B7              ACALL   _kb_set_multikey
-  809: 			}
-002589 E19D              AJMP    ?C0205?KB_PROCESS
-00258B         ?C0212?KB_PROCESS:
-  810: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
+  805: 			}
+002589 E19D              AJMP    ?C0203?KB_PROCESS
+00258B         ?C0210?KB_PROCESS:
+  806: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
 00258B EB                MOV     A,R3
-00258C B4F608            CJNE    A,#0F6H,?C0214?KB_PROCESS
-  811: 			{
-  812: 				kb_set_multikey(0x00ea);
+00258C B4F608            CJNE    A,#0F6H,?C0212?KB_PROCESS
+  807: 			{
+  808: 				kb_set_multikey(0x00ea);
 00258F 7FEA              MOV     R7,#0EAH
 002591 7E00              MOV     R6,#00H
 002593 91B7              ACALL   _kb_set_multikey
-  813: 			}
-002595 E19D              AJMP    ?C0205?KB_PROCESS
-002597         ?C0214?KB_PROCESS:
-  814: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
+  809: 			}
+002595 E19D              AJMP    ?C0203?KB_PROCESS
+002597         ?C0212?KB_PROCESS:
+  810: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
 002597 904ED9            MOV     DPTR,#pEvt
 00259A E0                MOVX    A,@DPTR
 00259B FB                MOV     R3,A
@@ -6866,26 +6866,26 @@
 0025AF FA                MOV     R2,A
 0025B0 1203B6            LCALL   ?C?CLDPTR
 0025B3 FB                MOV     R3,A
-0025B4 B4F706            CJNE    A,#0F7H,?C0216?KB_PROCESS
-  815: 			{
-  816: 				kb_set_multikey(0x00e9);
+0025B4 B4F706            CJNE    A,#0F7H,?C0214?KB_PROCESS
+  811: 			{
+  812: 				kb_set_multikey(0x00e9);
 0025B7 7FE9              MOV     R7,#0E9H
 0025B9 91B7              ACALL   _kb_set_multikey
-  817: 			}
-0025BB E19D              AJMP    ?C0205?KB_PROCESS
-0025BD         ?C0216?KB_PROCESS:
-  818: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
+  813: 			}
+0025BB E19D              AJMP    ?C0203?KB_PROCESS
+0025BD         ?C0214?KB_PROCESS:
+  814: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
 0025BD EB                MOV     A,R3
-0025BE B4F808            CJNE    A,#0F8H,?C0218?KB_PROCESS
-  819: 			{
-  820: 				kb_set_multikey(0x00e2);
+0025BE B4F808            CJNE    A,#0F8H,?C0216?KB_PROCESS
+  815: 			{
+  816: 				kb_set_multikey(0x00e2);
 0025C1 7FE2              MOV     R7,#0E2H
 0025C3 7E00              MOV     R6,#00H
 0025C5 91B7              ACALL   _kb_set_multikey
-  821: 			}
-0025C7 E19D              AJMP    ?C0205?KB_PROCESS
-0025C9         ?C0218?KB_PROCESS:
-  822: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
+  817: 			}
+0025C7 E19D              AJMP    ?C0203?KB_PROCESS
+0025C9         ?C0216?KB_PROCESS:
+  818: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
 0025C9 904ED9            MOV     DPTR,#pEvt
 0025CC E0                MOVX    A,@DPTR
 0025CD FB                MOV     R3,A
@@ -6909,27 +6909,27 @@
 0025E1 FA                MOV     R2,A
 0025E2 1203B6            LCALL   ?C?CLDPTR
 0025E5 FB                MOV     R3,A
-0025E6 B4F907            CJNE    A,#0F9H,?C0220?KB_PROCESS
-  823: 			{
-  824: 				kb_set_multikey(0x0194);
+0025E6 B4F907            CJNE    A,#0F9H,?C0218?KB_PROCESS
+  819: 			{
+  820: 				kb_set_multikey(0x0194);
 0025E9 7F94              MOV     R7,#094H
 0025EB 0E                INC     R6
 0025EC 91B7              ACALL   _kb_set_multikey
-  825: 			}	
-0025EE E19D              AJMP    ?C0205?KB_PROCESS
-0025F0         ?C0220?KB_PROCESS:
-  826: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
+  821: 			}	
+0025EE E19D              AJMP    ?C0203?KB_PROCESS
+0025F0         ?C0218?KB_PROCESS:
+  822: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
 0025F0 EB                MOV     A,R3
-0025F1 B4FA08            CJNE    A,#0FAH,?C0222?KB_PROCESS
-  827: 			{
-  828: 				kb_set_multikey(0x018a);//mail
+0025F1 B4FA08            CJNE    A,#0FAH,?C0220?KB_PROCESS
+  823: 			{
+  824: 				kb_set_multikey(0x018a);//mail
 0025F4 7F8A              MOV     R7,#08AH
 0025F6 7E01              MOV     R6,#01H
 0025F8 91B7              ACALL   _kb_set_multikey
-  829: 			}
-0025FA E19D              AJMP    ?C0205?KB_PROCESS
-0025FC         ?C0222?KB_PROCESS:
-  830: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
+  825: 			}
+0025FA E19D              AJMP    ?C0203?KB_PROCESS
+0025FC         ?C0220?KB_PROCESS:
+  826: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
 0025FC 904ED9            MOV     DPTR,#pEvt
 0025FF E0                MOVX    A,@DPTR
 002600 FB                MOV     R3,A
@@ -6953,27 +6953,27 @@
 002614 FA                MOV     R2,A
 002615 1203B6            LCALL   ?C?CLDPTR
 002618 FB                MOV     R3,A
-002619 B4FB07            CJNE    A,#0FBH,?C0224?KB_PROCESS
-  831: 			{
-  832: 				kb_set_multikey(0x0192);
+002619 B4FB07            CJNE    A,#0FBH,?C0222?KB_PROCESS
+  827: 			{
+  828: 				kb_set_multikey(0x0192);
 00261C 7F92              MOV     R7,#092H
 00261E 0E                INC     R6
 00261F 91B7              ACALL   _kb_set_multikey
-  833: 			}
-002621 E19D              AJMP    ?C0205?KB_PROCESS
-002623         ?C0224?KB_PROCESS:
-  834: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
+  829: 			}
+002621 E19D              AJMP    ?C0203?KB_PROCESS
+002623         ?C0222?KB_PROCESS:
+  830: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
 002623 EB                MOV     A,R3
-002624 B4D008            CJNE    A,#0D0H,?C0226?KB_PROCESS
-  835: 			{
-  836: 				kb_set_multikey(0x022a);//www Favorites
+002624 B4D008            CJNE    A,#0D0H,?C0224?KB_PROCESS
+  831: 			{
+  832: 				kb_set_multikey(0x022a);//www Favorites
 002627 7F2A              MOV     R7,#02AH
 002629 7E02              MOV     R6,#02H
 00262B 91B7              ACALL   _kb_set_multikey
-  837: 			}
-00262D E19D              AJMP    ?C0205?KB_PROCESS
-00262F         ?C0226?KB_PROCESS:
-  838: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
+  833: 			}
+00262D E19D              AJMP    ?C0203?KB_PROCESS
+00262F         ?C0224?KB_PROCESS:
+  834: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
 00262F 904ED9            MOV     DPTR,#pEvt
 002632 E0                MOVX    A,@DPTR
 002633 FB                MOV     R3,A
@@ -6997,27 +6997,27 @@
 002647 FA                MOV     R2,A
 002648 1203B6            LCALL   ?C?CLDPTR
 00264B FB                MOV     R3,A
-00264C B4D108            CJNE    A,#0D1H,?C0228?KB_PROCESS
-  839: 			{
-  840: 				kb_set_multikey(0x0225);
+00264C B4D108            CJNE    A,#0D1H,?C0226?KB_PROCESS
+  835: 			{
+  836: 				kb_set_multikey(0x0225);
 00264F 7F25              MOV     R7,#025H
 002651 7E02              MOV     R6,#02H
 002653 91B7              ACALL   _kb_set_multikey
-  841: 			}
-002655 E19D              AJMP    ?C0205?KB_PROCESS
-002657         ?C0228?KB_PROCESS:
-  842: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
+  837: 			}
+002655 E19D              AJMP    ?C0203?KB_PROCESS
+002657         ?C0226?KB_PROCESS:
+  838: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
 002657 EB                MOV     A,R3
-002658 B4D308            CJNE    A,#0D3H,?C0230?KB_PROCESS
-  843: 			{
-  844: 				kb_set_multikey(0x0226);
+002658 B4D308            CJNE    A,#0D3H,?C0228?KB_PROCESS
+  839: 			{
+  840: 				kb_set_multikey(0x0226);
 00265B 7F26              MOV     R7,#026H
 00265D 7E02              MOV     R6,#02H
 00265F 91B7              ACALL   _kb_set_multikey
-  845: 			}
-002661 E19D              AJMP    ?C0205?KB_PROCESS
-002663         ?C0230?KB_PROCESS:
-  846: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
+  841: 			}
+002661 E19D              AJMP    ?C0203?KB_PROCESS
+002663         ?C0228?KB_PROCESS:
+  842: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
 002663 904ED9            MOV     DPTR,#pEvt
 002666 E0                MOVX    A,@DPTR
 002667 FB                MOV     R3,A
@@ -7041,27 +7041,27 @@
 00267B FA                MOV     R2,A
 00267C 1203B6            LCALL   ?C?CLDPTR
 00267F FB                MOV     R3,A
-002680 B4D208            CJNE    A,#0D2H,?C0232?KB_PROCESS
-  847: 			{
-  848: 				kb_set_multikey(0x0224);
+002680 B4D208            CJNE    A,#0D2H,?C0230?KB_PROCESS
+  843: 			{
+  844: 				kb_set_multikey(0x0224);
 002683 7F24              MOV     R7,#024H
 002685 7E02              MOV     R6,#02H
 002687 91B7              ACALL   _kb_set_multikey
-  849: 			}
-002689 E19D              AJMP    ?C0205?KB_PROCESS
-00268B         ?C0232?KB_PROCESS:
-  850: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
+  845: 			}
+002689 E19D              AJMP    ?C0203?KB_PROCESS
+00268B         ?C0230?KB_PROCESS:
+  846: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
 00268B EB                MOV     A,R3
-00268C B4D408            CJNE    A,#0D4H,?C0234?KB_PROCESS
-  851: 			{
-  852: 				kb_set_multikey(0x0227);
+00268C B4D408            CJNE    A,#0D4H,?C0232?KB_PROCESS
+  847: 			{
+  848: 				kb_set_multikey(0x0227);
 00268F 7F27              MOV     R7,#027H
 002691 7E02              MOV     R6,#02H
 002693 91B7              ACALL   _kb_set_multikey
-  853: 			}	
-002695 E19D              AJMP    ?C0205?KB_PROCESS
-002697         ?C0234?KB_PROCESS:
-  854: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
+  849: 			}	
+002695 E19D              AJMP    ?C0203?KB_PROCESS
+002697         ?C0232?KB_PROCESS:
+  850: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
 002697 904ED9            MOV     DPTR,#pEvt
 00269A E0                MOVX    A,@DPTR
 00269B FB                MOV     R3,A
@@ -7085,27 +7085,27 @@
 0026AF FA                MOV     R2,A
 0026B0 1203B6            LCALL   ?C?CLDPTR
 0026B3 FB                MOV     R3,A
-0026B4 B4D508            CJNE    A,#0D5H,?C0236?KB_PROCESS
-  855: 			{
-  856: 				kb_set_multikey(0x0221);
+0026B4 B4D508            CJNE    A,#0D5H,?C0234?KB_PROCESS
+  851: 			{
+  852: 				kb_set_multikey(0x0221);
 0026B7 7F21              MOV     R7,#021H
 0026B9 7E02              MOV     R6,#02H
 0026BB 91B7              ACALL   _kb_set_multikey
-  857: 			}
-0026BD E19D              AJMP    ?C0205?KB_PROCESS
-0026BF         ?C0236?KB_PROCESS:
-  858: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
+  853: 			}
+0026BD E19D              AJMP    ?C0203?KB_PROCESS
+0026BF         ?C0234?KB_PROCESS:
+  854: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
 0026BF EB                MOV     A,R3
-0026C0 B4D608            CJNE    A,#0D6H,?C0238?KB_PROCESS
-  859: 			{
-  860: 				kb_set_multikey(0x0223);
+0026C0 B4D608            CJNE    A,#0D6H,?C0236?KB_PROCESS
+  855: 			{
+  856: 				kb_set_multikey(0x0223);
 0026C3 7F23              MOV     R7,#023H
 0026C5 7E02              MOV     R6,#02H
 0026C7 91B7              ACALL   _kb_set_multikey
-  861: 			}
-0026C9 E19D              AJMP    ?C0205?KB_PROCESS
-0026CB         ?C0238?KB_PROCESS:
-  862: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
+  857: 			}
+0026C9 E19D              AJMP    ?C0203?KB_PROCESS
+0026CB         ?C0236?KB_PROCESS:
+  858: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
 0026CB 904ED9            MOV     DPTR,#pEvt
 0026CE E0                MOVX    A,@DPTR
 0026CF FB                MOV     R3,A
@@ -7129,26 +7129,26 @@
 0026E3 FA                MOV     R2,A
 0026E4 1203B6            LCALL   ?C?CLDPTR
 0026E7 FB                MOV     R3,A
-0026E8 B4D706            CJNE    A,#0D7H,?C0240?KB_PROCESS
-  863: 			{
-  864: 				kb_set_multikey(0x0070);
+0026E8 B4D706            CJNE    A,#0D7H,?C0238?KB_PROCESS
+  859: 			{
+  860: 				kb_set_multikey(0x0070);
 0026EB 7F70              MOV     R7,#070H
 0026ED 91B7              ACALL   _kb_set_multikey
-  865: 			}
-0026EF E19D              AJMP    ?C0205?KB_PROCESS
-0026F1         ?C0240?KB_PROCESS:
-  866: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
+  861: 			}
+0026EF E19D              AJMP    ?C0203?KB_PROCESS
+0026F1         ?C0238?KB_PROCESS:
+  862: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
 0026F1 EB                MOV     A,R3
-0026F2 B4D808            CJNE    A,#0D8H,?C0242?KB_PROCESS
-  867: 			{
-  868: 				kb_set_multikey(0x006f);
+0026F2 B4D808            CJNE    A,#0D8H,?C0240?KB_PROCESS
+  863: 			{
+  864: 				kb_set_multikey(0x006f);
 0026F5 7F6F              MOV     R7,#06FH
 0026F7 7E00              MOV     R6,#00H
 0026F9 91B7              ACALL   _kb_set_multikey
-  869: 			}	
-0026FB E19D              AJMP    ?C0205?KB_PROCESS
-0026FD         ?C0242?KB_PROCESS:
-  870: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
+  865: 			}	
+0026FB E19D              AJMP    ?C0203?KB_PROCESS
+0026FD         ?C0240?KB_PROCESS:
+  866: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
 0026FD 904ED9            MOV     DPTR,#pEvt
 002700 E0                MOVX    A,@DPTR
 002701 FB                MOV     R3,A
@@ -7172,26 +7172,26 @@
 002715 FA                MOV     R2,A
 002716 1203B6            LCALL   ?C?CLDPTR
 002719 FB                MOV     R3,A
-00271A B4D906            CJNE    A,#0D9H,?C0244?KB_PROCESS
-  871: 		      	{
-  872: 		        	kb_set_multikey(0x00b8);
+00271A B4D906            CJNE    A,#0D9H,?C0242?KB_PROCESS
+  867: 		      	{
+  868: 		        	kb_set_multikey(0x00b8);
 00271D 7FB8              MOV     R7,#0B8H
 00271F 91B7              ACALL   _kb_set_multikey
-  873: 		      	}
-002721 807A              SJMP    ?C0205?KB_PROCESS
-002723         ?C0244?KB_PROCESS:
-  874: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
+  869: 		      	}
+002721 807A              SJMP    ?C0203?KB_PROCESS
+002723         ?C0242?KB_PROCESS:
+  870: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
 002723 EB                MOV     A,R3
-002724 B4DA08            CJNE    A,#0DAH,?C0246?KB_PROCESS
-  875: 		      	{
-  876: 		        	kb_set_multikey(0x0030);
+002724 B4DA08            CJNE    A,#0DAH,?C0244?KB_PROCESS
+  871: 		      	{
+  872: 		        	kb_set_multikey(0x0030);
 002727 7F30              MOV     R7,#030H
 002729 7E00              MOV     R6,#00H
 00272B 91B7              ACALL   _kb_set_multikey
-  877: 		      	}	
-00272D 806E              SJMP    ?C0205?KB_PROCESS
-00272F         ?C0246?KB_PROCESS:
-  878: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
+  873: 		      	}	
+00272D 806E              SJMP    ?C0203?KB_PROCESS
+00272F         ?C0244?KB_PROCESS:
+  874: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
 00272F 904ED9            MOV     DPTR,#pEvt
 002732 E0                MOVX    A,@DPTR
 002733 FB                MOV     R3,A
@@ -7215,27 +7215,27 @@
 002747 FA                MOV     R2,A
 002748 1203B6            LCALL   ?C?CLDPTR
 00274B FB                MOV     R3,A
-00274C B4DB08            CJNE    A,#0DBH,?C0248?KB_PROCESS
-  879: 		      	{
-  880: 		        	kb_set_multikey(0x0306);
+00274C B4DB08            CJNE    A,#0DBH,?C0246?KB_PROCESS
+  875: 		      	{
+  876: 		        	kb_set_multikey(0x0306);
 00274F 7F06              MOV     R7,#06H
 002751 7E03              MOV     R6,#03H
 002753 91B7              ACALL   _kb_set_multikey
-  881: 		      	}
-002755 8046              SJMP    ?C0205?KB_PROCESS
-002757         ?C0248?KB_PROCESS:
-  882: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
+  877: 		      	}
+002755 8046              SJMP    ?C0203?KB_PROCESS
+002757         ?C0246?KB_PROCESS:
+  878: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
 002757 EB                MOV     A,R3
-002758 B4DC08            CJNE    A,#0DCH,?C0250?KB_PROCESS
-  883: 		      	{
-  884: 		        	kb_set_multikey(0x0307);
+002758 B4DC08            CJNE    A,#0DCH,?C0248?KB_PROCESS
+  879: 		      	{
+  880: 		        	kb_set_multikey(0x0307);
 00275B 7F07              MOV     R7,#07H
 00275D 7E03              MOV     R6,#03H
 00275F 91B7              ACALL   _kb_set_multikey
-  885: 		      	}
-002761 803A              SJMP    ?C0205?KB_PROCESS
-002763         ?C0250?KB_PROCESS:
-  886: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
+  881: 		      	}
+002761 803A              SJMP    ?C0203?KB_PROCESS
+002763         ?C0248?KB_PROCESS:
+  882: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
 002763 904ED9            MOV     DPTR,#pEvt
 002766 E0                MOVX    A,@DPTR
 002767 FB                MOV     R3,A
@@ -7259,39 +7259,39 @@
 00277B FA                MOV     R2,A
 00277C 1203B6            LCALL   ?C?CLDPTR
 00277F FE                MOV     R6,A
-002780 B4DD06            CJNE    A,#0DDH,?C0252?KB_PROCESS
-  887: 		      	{
-  888: 		        	kb_set_systemkey(0x01);
+002780 B4DD06            CJNE    A,#0DDH,?C0250?KB_PROCESS
+  883: 		      	{
+  884: 		        	kb_set_systemkey(0x01);
 002783 7F01              MOV     R7,#01H
 002785 F1D1              ACALL   _kb_set_systemkey
-  889: 		      	}
-002787 8014              SJMP    ?C0205?KB_PROCESS
-002789         ?C0252?KB_PROCESS:
-  890: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
+  885: 		      	}
+002787 8014              SJMP    ?C0203?KB_PROCESS
+002789         ?C0250?KB_PROCESS:
+  886: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
 002789 EE                MOV     A,R6
-00278A B4DE06            CJNE    A,#0DEH,?C0254?KB_PROCESS
-  891: 		      	{
-  892: 		        	kb_set_systemkey(0x02);
+00278A B4DE06            CJNE    A,#0DEH,?C0252?KB_PROCESS
+  887: 		      	{
+  888: 		        	kb_set_systemkey(0x02);
 00278D 7F02              MOV     R7,#02H
 00278F F1D1              ACALL   _kb_set_systemkey
-  893: 		      	}
-002791 800A              SJMP    ?C0205?KB_PROCESS
-002793         ?C0254?KB_PROCESS:
-  894: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
+  889: 		      	}
+002791 800A              SJMP    ?C0203?KB_PROCESS
+002793         ?C0252?KB_PROCESS:
+  890: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
 002793 1203B6            LCALL   ?C?CLDPTR
-002796 B4DF04            CJNE    A,#0DFH,?C0205?KB_PROCESS
-  895: 		      	{
-  896: 		        	kb_set_systemkey(0x04);
+002796 B4DF04            CJNE    A,#0DFH,?C0203?KB_PROCESS
+  891: 		      	{
+  892: 		        	kb_set_systemkey(0x04);
 002799 7F04              MOV     R7,#04H
 00279B F1D1              ACALL   _kb_set_systemkey
-  897: 		      	}			
-00279D         ?C0205?KB_PROCESS:
-  898: 			if(mult_key_status == KEY_WAIT_RELEASE)
+  893: 		      	}			
+00279D         ?C0203?KB_PROCESS:
+  894: 			if(mult_key_status == KEY_WAIT_RELEASE)
 00279D 904E4B            MOV     DPTR,#mult_key_status
 0027A0 E0                MOVX    A,@DPTR
-0027A1 B40224            CJNE    A,#02H,?C0201?KB_PROCESS
-  899: 			{
-  900: 				mult_key_value = pEvt->ksPool[i];
+0027A1 B40224            CJNE    A,#02H,?C0199?KB_PROCESS
+  895: 			{
+  896: 				mult_key_value = pEvt->ksPool[i];
 0027A4 904ED9            MOV     DPTR,#pEvt
 0027A7 E0                MOVX    A,@DPTR
 0027A8 FB                MOV     R3,A
@@ -7316,20 +7316,20 @@
 0027BD 1203B6            LCALL   ?C?CLDPTR
 0027C0 904DED            MOV     DPTR,#mult_key_value
 0027C3 F0                MOVX    @DPTR,A
-  901: 				pEvt->ksPool[i] = 0;
+  897: 				pEvt->ksPool[i] = 0;
 0027C4 E4                CLR     A
 0027C5 1203FC            LCALL   ?C?CSTPTR
-  902: 			}
-  903: 		}
-  904: 	}
-0027C8         ?C0201?KB_PROCESS:
+  898: 			}
+  899: 		}
+  900: 	}
+0027C8         ?C0199?KB_PROCESS:
 0027C8 904EDC            MOV     DPTR,#i
 0027CB E0                MOVX    A,@DPTR
 0027CC 04                INC     A
 0027CD F0                MOVX    @DPTR,A
-0027CE 81E1              AJMP    ?C0199?KB_PROCESS
-  905: }
-0027D0         ?C0258?KB_PROCESS:
+0027CE 81E1              AJMP    ?C0197?KB_PROCESS
+  901: }
+0027D0         ?C0256?KB_PROCESS:
 0027D0 22                RET     
 ----- FUNCTION _kb_multikey_setup (END) -------
 
@@ -7595,580 +7595,570 @@
 0028C2 EE                MOV     A,R6
 0028C3 F0                MOVX    @DPTR,A
   599: 	 
-  600: 	if(g_variable.system_mode != OSMODE_WINDOWS)
+  600: 	if((g_variable.system_mode != OSMODE_WINDOWS) && (g_variable.system_mode != OSMODE_ANDROID))
 0028C4 904CC1            MOV     DPTR,#g_variable+02H
 0028C7 E0                MOVX    A,@DPTR
 0028C8 FF                MOV     R7,A
-0028C9 602E              JZ      ?C0133?KB_PROCESS
+0028C9 6032              JZ      ?C0133?KB_PROCESS
+0028CB 6401              XRL     A,#01H
+0028CD 602E              JZ      ?C0133?KB_PROCESS
   601: 	{
   602: 		if(key_value == HID_KEY_RIGHT_ALT)
-0028CB EE                MOV     A,R6
-0028CC B4E608            CJNE    A,#0E6H,?C0134?KB_PROCESS
+0028CF EE                MOV     A,R6
+0028D0 B4E608            CJNE    A,#0E6H,?C0134?KB_PROCESS
   603: 			temp = HID_KEY_RIGHT_GUI;
-0028CF 904F04            MOV     DPTR,#temp
-0028D2 74E7              MOV     A,#0E7H
-0028D4 F0                MOVX    @DPTR,A
-0028D5 8022              SJMP    ?C0133?KB_PROCESS
-0028D7         ?C0134?KB_PROCESS:
+0028D3 904F04            MOV     DPTR,#temp
+0028D6 74E7              MOV     A,#0E7H
+0028D8 F0                MOVX    @DPTR,A
+0028D9 8022              SJMP    ?C0133?KB_PROCESS
+0028DB         ?C0134?KB_PROCESS:
   604: 		else if(key_value == HID_KEY_RIGHT_GUI)
-0028D7 EE                MOV     A,R6
-0028D8 B4E708            CJNE    A,#0E7H,?C0136?KB_PROCESS
+0028DB EE                MOV     A,R6
+0028DC B4E708            CJNE    A,#0E7H,?C0136?KB_PROCESS
   605: 			temp = HID_KEY_RIGHT_ALT;	
-0028DB 904F04            MOV     DPTR,#temp
-0028DE 74E6              MOV     A,#0E6H
-0028E0 F0                MOVX    @DPTR,A
-0028E1 8016              SJMP    ?C0133?KB_PROCESS
-0028E3         ?C0136?KB_PROCESS:
+0028DF 904F04            MOV     DPTR,#temp
+0028E2 74E6              MOV     A,#0E6H
+0028E4 F0                MOVX    @DPTR,A
+0028E5 8016              SJMP    ?C0133?KB_PROCESS
+0028E7         ?C0136?KB_PROCESS:
   606: 		else if(key_value == HID_KEY_LEFT_GUI)
-0028E3 EE                MOV     A,R6
-0028E4 B4E308            CJNE    A,#0E3H,?C0138?KB_PROCESS
+0028E7 EE                MOV     A,R6
+0028E8 B4E308            CJNE    A,#0E3H,?C0138?KB_PROCESS
   607: 			temp = HID_KEY_LEFT_ALT;
-0028E7 904F04            MOV     DPTR,#temp
-0028EA 74E2              MOV     A,#0E2H
-0028EC F0                MOVX    @DPTR,A
-0028ED 800A              SJMP    ?C0133?KB_PROCESS
-0028EF         ?C0138?KB_PROCESS:
+0028EB 904F04            MOV     DPTR,#temp
+0028EE 74E2              MOV     A,#0E2H
+0028F0 F0                MOVX    @DPTR,A
+0028F1 800A              SJMP    ?C0133?KB_PROCESS
+0028F3         ?C0138?KB_PROCESS:
   608: 		else if(key_value == HID_KEY_LEFT_ALT)
-0028EF EE                MOV     A,R6
-0028F0 B4E206            CJNE    A,#0E2H,?C0133?KB_PROCESS
+0028F3 EE                MOV     A,R6
+0028F4 B4E206            CJNE    A,#0E2H,?C0133?KB_PROCESS
   609: 			temp = HID_KEY_LEFT_GUI;	
-0028F3 904F04            MOV     DPTR,#temp
-0028F6 74E3              MOV     A,#0E3H
-0028F8 F0                MOVX    @DPTR,A
+0028F7 904F04            MOV     DPTR,#temp
+0028FA 74E3              MOV     A,#0E3H
+0028FC F0                MOVX    @DPTR,A
   610: 	}
-0028F9         ?C0133?KB_PROCESS:
-  611: 	if(g_variable.system_mode == OSMODE_IOS)
-0028F9 EF                MOV     A,R7
-0028FA B4030A            CJNE    A,#03H,?C0141?KB_PROCESS
-  612: 	{
-  613: 		if(key_value == HID_KEY_TILDE)
-0028FD EE                MOV     A,R6
-0028FE B43506            CJNE    A,#035H,?C0141?KB_PROCESS
-  614: 			temp = HID_KEY_K45;
-002901 904F04            MOV     DPTR,#temp
-002904 7464              MOV     A,#064H
-002906 F0                MOVX    @DPTR,A
-  615: 	}	 
-002907         ?C0141?KB_PROCESS:
-  616: 	if(g_variable.system_mode == OSMODE_WINDOWS)
-002907 904CC1            MOV     DPTR,#g_variable+02H
-00290A E0                MOVX    A,@DPTR
-00290B 7011              JNZ     ?C0143?KB_PROCESS
-  617: 	{
-  618: 		if(key_value == HID_MULTIKEY_OS_LOCK)
-00290D EE                MOV     A,R6
-00290E B4DA0D            CJNE    A,#0DAH,?C0143?KB_PROCESS
-  619: 		{
-  620: 			kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_L);
-002911 AF04              MOV     R7,AR4
-002913 7B0F              MOV     R3,#0FH
-002915 7D08              MOV     R5,#08H
-002917 1188              ACALL   _kb_combination_key_press
-  621: 			temp = HID_KEY_NULL;
-002919 E4                CLR     A
-00291A 904F04            MOV     DPTR,#temp
-00291D F0                MOVX    @DPTR,A
-  622: 		}
-  623: 	}
-00291E         ?C0143?KB_PROCESS:
-  624: 
-  625: 	if(fn_flag == 1)			// Fn lock
-00291E 904DE2            MOV     DPTR,#fn_flag
-002921 E0                MOVX    A,@DPTR
-002922 6401              XRL     A,#01H
-002924 6002              JZ      $ + 4H
-002926 4108              AJMP    ?C0145?KB_PROCESS
-  626: 	{
-  627: 		if((key_value == HID_KEY_Q) || (key_value == HID_KEY_W) || (key_value == HID_KEY_E)|| (key_value == HID_KEY_R))
+0028FD         ?C0133?KB_PROCESS:
+  611: 	 
+  612: 	if(g_variable.system_mode == OSMODE_WINDOWS)
+0028FD 904CC1            MOV     DPTR,#g_variable+02H
+002900 E0                MOVX    A,@DPTR
+002901 7011              JNZ     ?C0141?KB_PROCESS
+  613: 	{
+  614: 		if(key_value == HID_MULTIKEY_OS_LOCK)
+002903 EE                MOV     A,R6
+002904 B4DA0D            CJNE    A,#0DAH,?C0141?KB_PROCESS
+  615: 		{
+  616: 			kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_L);
+002907 AF04              MOV     R7,AR4
+002909 7B0F              MOV     R3,#0FH
+00290B 7D08              MOV     R5,#08H
+00290D 1188              ACALL   _kb_combination_key_press
+  617: 			temp = HID_KEY_NULL;
+00290F E4                CLR     A
+002910 904F04            MOV     DPTR,#temp
+002913 F0                MOVX    @DPTR,A
+  618: 		}
+  619: 	}
+002914         ?C0141?KB_PROCESS:
+  620: 
+  621: 	if(fn_flag == 1)			// Fn lock
+002914 904DE2            MOV     DPTR,#fn_flag
+002917 E0                MOVX    A,@DPTR
+002918 6401              XRL     A,#01H
+00291A 6002              JZ      $ + 4H
+00291C 21FE              AJMP    ?C0143?KB_PROCESS
+  622: 	{
+  623: 		if((key_value == HID_KEY_Q) || (key_value == HID_KEY_W) || (key_value == HID_KEY_E)|| (key_value == HID_KEY_R))
 >> 
+00291E EE                MOV     A,R6
+00291F 6414              XRL     A,#014H
+002921 600F              JZ      ?C0145?KB_PROCESS
+002923 EE                MOV     A,R6
+002924 641A              XRL     A,#01AH
+002926 600A              JZ      ?C0145?KB_PROCESS
 002928 EE                MOV     A,R6
-002929 6414              XRL     A,#014H
-00292B 600F              JZ      ?C0147?KB_PROCESS
+002929 6408              XRL     A,#08H
+00292B 6005              JZ      ?C0145?KB_PROCESS
 00292D EE                MOV     A,R6
-00292E 641A              XRL     A,#01AH
-002930 600A              JZ      ?C0147?KB_PROCESS
+00292E 6415              XRL     A,#015H
+002930 7072              JNZ     ?C0144?KB_PROCESS
+002932         ?C0145?KB_PROCESS:
+  624: 			{
+  625: 				if(key_value == HID_KEY_R)
 002932 EE                MOV     A,R6
-002933 6408              XRL     A,#08H
-002935 6005              JZ      ?C0147?KB_PROCESS
-002937 EE                MOV     A,R6
-002938 6415              XRL     A,#015H
-00293A 7072              JNZ     ?C0146?KB_PROCESS
-00293C         ?C0147?KB_PROCESS:
-  628: 			{
-  629: 				if(key_value == HID_KEY_R)
-00293C EE                MOV     A,R6
-00293D B41508            CJNE    A,#015H,?C0148?KB_PROCESS
+002933 B41508            CJNE    A,#015H,?C0146?KB_PROCESS
+  626: 				{
+  627: 					g_variable.system_mode = OSMODE_MAC;
+002936 904CC1            MOV     DPTR,#g_variable+02H
+002939 7402              MOV     A,#02H
+00293B F0                MOVX    @DPTR,A
+  628: 				}
+00293C 8021              SJMP    ?C0147?KB_PROCESS
+00293E         ?C0146?KB_PROCESS:
+  629: 				else if(key_value == HID_KEY_W)
+00293E EE                MOV     A,R6
+00293F B41A07            CJNE    A,#01AH,?C0148?KB_PROCESS
   630: 				{
-  631: 					g_variable.system_mode = OSMODE_MAC;
-002940 904CC1            MOV     DPTR,#g_variable+02H
-002943 7402              MOV     A,#02H
-002945 F0                MOVX    @DPTR,A
-  632: 				}
-002946 8021              SJMP    ?C0149?KB_PROCESS
-002948         ?C0148?KB_PROCESS:
-  633: 				else if(key_value == HID_KEY_W)
-002948 EE                MOV     A,R6
-002949 B41A07            CJNE    A,#01AH,?C0150?KB_PROCESS
-  634: 				{
-  635: 					g_variable.system_mode = OSMODE_WINDOWS;
-00294C E4                CLR     A
+  631: 					g_variable.system_mode = OSMODE_WINDOWS;
+002942 E4                CLR     A
+002943 904CC1            MOV     DPTR,#g_variable+02H
+002946 F0                MOVX    @DPTR,A
+  632: 	
+  633: 				}
+002947 8016              SJMP    ?C0147?KB_PROCESS
+002949         ?C0148?KB_PROCESS:
+  634: 				else if(key_value == HID_KEY_E)
+002949 EE                MOV     A,R6
+00294A B40808            CJNE    A,#08H,?C0150?KB_PROCESS
+  635: 				{
+  636: 					g_variable.system_mode = OSMODE_ANDROID;
 00294D 904CC1            MOV     DPTR,#g_variable+02H
-002950 F0                MOVX    @DPTR,A
-  636: 	
-  637: 				}
-002951 8016              SJMP    ?C0149?KB_PROCESS
-002953         ?C0150?KB_PROCESS:
-  638: 				else if(key_value == HID_KEY_E)
-002953 EE                MOV     A,R6
-002954 B40808            CJNE    A,#08H,?C0152?KB_PROCESS
-  639: 				{
-  640: 					g_variable.system_mode = OSMODE_ANDROID;
-002957 904CC1            MOV     DPTR,#g_variable+02H
-00295A 7401              MOV     A,#01H
-00295C F0                MOVX    @DPTR,A
-  641: 	
-  642: 				}
-00295D 800A              SJMP    ?C0149?KB_PROCESS
-00295F         ?C0152?KB_PROCESS:
-  643: 				else if(key_value == HID_KEY_Q)
-00295F EE                MOV     A,R6
-002960 B41406            CJNE    A,#014H,?C0149?KB_PROCESS
-  644: 				{
-  645: 					g_variable.system_mode = OSMODE_IOS;
-002963 904CC1            MOV     DPTR,#g_variable+02H
-002966 7403              MOV     A,#03H
-002968 F0                MOVX    @DPTR,A
-  646: 	
-  647: 				}
-002969         ?C0149?KB_PROCESS:
-  648: 				temp = HID_KEY_NULL;
-002969 E4                CLR     A
-00296A 904F04            MOV     DPTR,#temp
-00296D F0                MOVX    @DPTR,A
-  649: 				if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-00296E 904CC3            MOV     DPTR,#g_variable+04H
-002971 E0                MOVX    A,@DPTR
-002972 FF                MOV     R7,A
-002973 6003              JZ      ?C0156?KB_PROCESS
-002975 B4FE08            CJNE    A,#0FEH,?C0155?KB_PROCESS
-002978         ?C0156?KB_PROCESS:
+002950 7401              MOV     A,#01H
+002952 F0                MOVX    @DPTR,A
+  637: 	
+  638: 				}
+002953 800A              SJMP    ?C0147?KB_PROCESS
+002955         ?C0150?KB_PROCESS:
+  639: 				else if(key_value == HID_KEY_Q)
+002955 EE                MOV     A,R6
+002956 B41406            CJNE    A,#014H,?C0147?KB_PROCESS
+  640: 				{
+  641: 					g_variable.system_mode = OSMODE_IOS;
+002959 904CC1            MOV     DPTR,#g_variable+02H
+00295C 7403              MOV     A,#03H
+00295E F0                MOVX    @DPTR,A
+  642: 	
+  643: 				}
+00295F         ?C0147?KB_PROCESS:
+  644: 				temp = HID_KEY_NULL;
+00295F E4                CLR     A
+002960 904F04            MOV     DPTR,#temp
+002963 F0                MOVX    @DPTR,A
+  645: 				if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+002964 904CC3            MOV     DPTR,#g_variable+04H
+002967 E0                MOVX    A,@DPTR
+002968 FF                MOV     R7,A
+002969 6003              JZ      ?C0154?KB_PROCESS
+00296B B4FE08            CJNE    A,#0FEH,?C0153?KB_PROCESS
+00296E         ?C0154?KB_PROCESS:
+  646: 				{
+  647: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+00296E 904CBF            MOV     DPTR,#g_variable
+002971 7402              MOV     A,#02H
+002973 F0                MOVX    @DPTR,A
+  648: 				}
+002974 21FE              AJMP    ?C0143?KB_PROCESS
+002976         ?C0153?KB_PROCESS:
+  649: 				else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+002976 EF                MOV     A,R7
+002977 D3                SETB    C
+002978 9403              SUBB    A,#03H
+00297A 4002              JC      $ + 4H
+00297C 21FE              AJMP    ?C0143?KB_PROCESS
+00297E EF                MOV     A,R7
+00297F C3                CLR     C
+002980 9401              SUBB    A,#01H
+002982 407A              JC      ?C0143?KB_PROCESS
   650: 				{
-  651: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-002978 904CBF            MOV     DPTR,#g_variable
-00297B 7402              MOV     A,#02H
-00297D F0                MOVX    @DPTR,A
-  652: 				}
-00297E 4108              AJMP    ?C0145?KB_PROCESS
-002980         ?C0155?KB_PROCESS:
-  653: 				else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-002980 EF                MOV     A,R7
-002981 D3                SETB    C
-002982 9403              SUBB    A,#03H
-002984 4002              JC      $ + 4H
-002986 4108              AJMP    ?C0145?KB_PROCESS
-002988 EF                MOV     A,R7
-002989 C3                CLR     C
-00298A 9401              SUBB    A,#01H
-00298C 407A              JC      ?C0145?KB_PROCESS
-  654: 				{
-  655: 					bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-00298E 904CC1            MOV     DPTR,#g_variable+02H
-002991 E0                MOVX    A,@DPTR
-002992 FF                MOV     R7,A
-002993 904CC3            MOV     DPTR,#g_variable+04H
-002996 E0                MOVX    A,@DPTR
-002997 75F01F            MOV     B,#01FH
-00299A A4                MUL     AB
-00299B 24EC              ADD     A,#LOW bd_key_record_list-02H
-00299D F582              MOV     DPL,A
-00299F E4                CLR     A
-0029A0 344D              ADDC    A,#HIGH bd_key_record_list-02H
-0029A2 F583              MOV     DPH,A
-0029A4 EF                MOV     A,R7
-0029A5 F0                MOVX    @DPTR,A
-  656: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-0029A6 904CBF            MOV     DPTR,#g_variable
-0029A9 7403              MOV     A,#03H
-0029AB F0                MOVX    @DPTR,A
-  657: 				}
-  658: 			}	
-0029AC 805A              SJMP    ?C0145?KB_PROCESS
-0029AE         ?C0146?KB_PROCESS:
-  659: 		else if(key_value == HID_KEY_TAB)
-0029AE EE                MOV     A,R6
-0029AF 642B              XRL     A,#02BH
-0029B1 7055              JNZ     ?C0145?KB_PROCESS
-  660: 			{
-  661: 				if(state & 1)
-0029B3 EC                MOV     A,R4
-0029B4 30E04C            JNB     ACC.0,?C0161?KB_PROCESS
-  662: 				{						
-  663: 					if(fn_lock_flag)
+  651: 					bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+002984 904CC1            MOV     DPTR,#g_variable+02H
+002987 E0                MOVX    A,@DPTR
+002988 FF                MOV     R7,A
+002989 904CC3            MOV     DPTR,#g_variable+04H
+00298C E0                MOVX    A,@DPTR
+00298D 75F01F            MOV     B,#01FH
+002990 A4                MUL     AB
+002991 24EC              ADD     A,#LOW bd_key_record_list-02H
+002993 F582              MOV     DPL,A
+002995 E4                CLR     A
+002996 344D              ADDC    A,#HIGH bd_key_record_list-02H
+002998 F583              MOV     DPH,A
+00299A EF                MOV     A,R7
+00299B F0                MOVX    @DPTR,A
+  652: 					g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+00299C 904CBF            MOV     DPTR,#g_variable
+00299F 7403              MOV     A,#03H
+0029A1 F0                MOVX    @DPTR,A
+  653: 				}
+  654: 			}	
+0029A2 805A              SJMP    ?C0143?KB_PROCESS
+0029A4         ?C0144?KB_PROCESS:
+  655: 		else if(key_value == HID_KEY_TAB)
+0029A4 EE                MOV     A,R6
+0029A5 642B              XRL     A,#02BH
+0029A7 7055              JNZ     ?C0143?KB_PROCESS
+  656: 			{
+  657: 				if(state & 1)
+0029A9 EC                MOV     A,R4
+0029AA 30E04C            JNB     ACC.0,?C0159?KB_PROCESS
+  658: 				{						
+  659: 					if(fn_lock_flag)
+0029AD 904DE7            MOV     DPTR,#fn_lock_flag
+0029B0 E0                MOVX    A,@DPTR
+0029B1 6004              JZ      ?C0160?KB_PROCESS
+  660: 					{
+  661: 						fn_lock_flag = 0;
+0029B3 E4                CLR     A
+0029B4 F0                MOVX    @DPTR,A
+  662: 					}
+0029B5 8006              SJMP    ?C0161?KB_PROCESS
+0029B7         ?C0160?KB_PROCESS:
+  663: 					else
+  664: 						fn_lock_flag = 1;
 0029B7 904DE7            MOV     DPTR,#fn_lock_flag
-0029BA E0                MOVX    A,@DPTR
-0029BB 6004              JZ      ?C0162?KB_PROCESS
-  664: 					{
-  665: 						fn_lock_flag = 0;
-0029BD E4                CLR     A
-0029BE F0                MOVX    @DPTR,A
-  666: 					}
-0029BF 8006              SJMP    ?C0163?KB_PROCESS
-0029C1         ?C0162?KB_PROCESS:
-  667: 					else
-  668: 						fn_lock_flag = 1;
-0029C1 904DE7            MOV     DPTR,#fn_lock_flag
-0029C4 7401              MOV     A,#01H
-0029C6 F0                MOVX    @DPTR,A
+0029BA 7401              MOV     A,#01H
+0029BC F0                MOVX    @DPTR,A
+0029BD         ?C0161?KB_PROCESS:
+  665: 						
+  666: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
+0029BD 904CC3            MOV     DPTR,#g_variable+04H
+0029C0 E0                MOVX    A,@DPTR
+0029C1 FF                MOV     R7,A
+0029C2 6003              JZ      ?C0163?KB_PROCESS
+0029C4 B4FE08            CJNE    A,#0FEH,?C0162?KB_PROCESS
 0029C7         ?C0163?KB_PROCESS:
-  669: 						
-  670: 					if(g_variable.current_device_num == 0 || g_variable.current_device_num == 0xfe)
-0029C7 904CC3            MOV     DPTR,#g_variable+04H
-0029CA E0                MOVX    A,@DPTR
-0029CB FF                MOV     R7,A
-0029CC 6003              JZ      ?C0165?KB_PROCESS
-0029CE B4FE08            CJNE    A,#0FEH,?C0164?KB_PROCESS
-0029D1         ?C0165?KB_PROCESS:
+  667: 					{
+  668: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+0029C7 904CBF            MOV     DPTR,#g_variable
+0029CA 7402              MOV     A,#02H
+0029CC F0                MOVX    @DPTR,A
+  669: 					}
+0029CD 802A              SJMP    ?C0159?KB_PROCESS
+0029CF         ?C0162?KB_PROCESS:
+  670: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+0029CF EF                MOV     A,R7
+0029D0 D3                SETB    C
+0029D1 9403              SUBB    A,#03H
+0029D3 5024              JNC     ?C0159?KB_PROCESS
+0029D5 EF                MOV     A,R7
+0029D6 C3                CLR     C
+0029D7 9401              SUBB    A,#01H
+0029D9 401E              JC      ?C0159?KB_PROCESS
   671: 					{
-  672: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-0029D1 904CBF            MOV     DPTR,#g_variable
-0029D4 7402              MOV     A,#02H
-0029D6 F0                MOVX    @DPTR,A
-  673: 					}
-0029D7 802A              SJMP    ?C0161?KB_PROCESS
-0029D9         ?C0164?KB_PROCESS:
-  674: 					else	if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-0029D9 EF                MOV     A,R7
-0029DA D3                SETB    C
-0029DB 9403              SUBB    A,#03H
-0029DD 5024              JNC     ?C0161?KB_PROCESS
-0029DF EF                MOV     A,R7
-0029E0 C3                CLR     C
-0029E1 9401              SUBB    A,#01H
-0029E3 401E              JC      ?C0161?KB_PROCESS
-  675: 					{
-  676: 						bd_key_record_list[g_variable.current_device_num - 1].fn_lock = fn_lock_flag;
-0029E5 904DE7            MOV     DPTR,#fn_lock_flag
-0029E8 E0                MOVX    A,@DPTR
-0029E9 FF                MOV     R7,A
-0029EA 904CC3            MOV     DPTR,#g_variable+04H
-0029ED E0                MOVX    A,@DPTR
-0029EE 75F01F            MOV     B,#01FH
-0029F1 A4                MUL     AB
-0029F2 24ED              ADD     A,#LOW bd_key_record_list-01H
-0029F4 F582              MOV     DPL,A
-0029F6 E4                CLR     A
-0029F7 344D              ADDC    A,#HIGH bd_key_record_list-01H
-0029F9 F583              MOV     DPH,A
-0029FB EF                MOV     A,R7
-0029FC F0                MOVX    @DPTR,A
-  677: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-0029FD 904CBF            MOV     DPTR,#g_variable
-002A00 7403              MOV     A,#03H
-002A02 F0                MOVX    @DPTR,A
-  678: 					}
-  679: 				}
-002A03         ?C0161?KB_PROCESS:
-  680: 				temp = HID_KEY_NULL;
-002A03 E4                CLR     A
-002A04 904F04            MOV     DPTR,#temp
-002A07 F0                MOVX    @DPTR,A
-  681: 			}					
-  682: 	}
-002A08         ?C0145?KB_PROCESS:
-  683: 	if((!fast_connect_flag)  && ((!fn_flag && !fn_lock_flag) || (fn_flag == 1 && fn_lock_flag == 1)))
-002A08 904E55            MOV     DPTR,#fast_connect_flag
-002A0B E0                MOVX    A,@DPTR
-002A0C 6002              JZ      $ + 4H
-002A0E 6165              AJMP    ?C0168?KB_PROCESS
-002A10 904DE2            MOV     DPTR,#fn_flag
-002A13 E0                MOVX    A,@DPTR
-002A14 7006              JNZ     ?C0170?KB_PROCESS
-002A16 904DE7            MOV     DPTR,#fn_lock_flag
-002A19 E0                MOVX    A,@DPTR
-002A1A 6014              JZ      ?C0169?KB_PROCESS
-002A1C         ?C0170?KB_PROCESS:
-002A1C 904DE2            MOV     DPTR,#fn_flag
+  672: 						bd_key_record_list[g_variable.current_device_num - 1].fn_lock = fn_lock_flag;
+0029DB 904DE7            MOV     DPTR,#fn_lock_flag
+0029DE E0                MOVX    A,@DPTR
+0029DF FF                MOV     R7,A
+0029E0 904CC3            MOV     DPTR,#g_variable+04H
+0029E3 E0                MOVX    A,@DPTR
+0029E4 75F01F            MOV     B,#01FH
+0029E7 A4                MUL     AB
+0029E8 24ED              ADD     A,#LOW bd_key_record_list-01H
+0029EA F582              MOV     DPL,A
+0029EC E4                CLR     A
+0029ED 344D              ADDC    A,#HIGH bd_key_record_list-01H
+0029EF F583              MOV     DPH,A
+0029F1 EF                MOV     A,R7
+0029F2 F0                MOVX    @DPTR,A
+  673: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+0029F3 904CBF            MOV     DPTR,#g_variable
+0029F6 7403              MOV     A,#03H
+0029F8 F0                MOVX    @DPTR,A
+  674: 					}
+  675: 				}
+0029F9         ?C0159?KB_PROCESS:
+  676: 				temp = HID_KEY_NULL;
+0029F9 E4                CLR     A
+0029FA 904F04            MOV     DPTR,#temp
+0029FD F0                MOVX    @DPTR,A
+  677: 			}					
+  678: 	}
+0029FE         ?C0143?KB_PROCESS:
+  679: 	if((!fast_connect_flag)  && ((!fn_flag && !fn_lock_flag) || (fn_flag == 1 && fn_lock_flag == 1)))
+0029FE 904E55            MOV     DPTR,#fast_connect_flag
+002A01 E0                MOVX    A,@DPTR
+002A02 6002              JZ      $ + 4H
+002A04 615B              AJMP    ?C0166?KB_PROCESS
+002A06 904DE2            MOV     DPTR,#fn_flag
+002A09 E0                MOVX    A,@DPTR
+002A0A 7006              JNZ     ?C0168?KB_PROCESS
+002A0C 904DE7            MOV     DPTR,#fn_lock_flag
+002A0F E0                MOVX    A,@DPTR
+002A10 6014              JZ      ?C0167?KB_PROCESS
+002A12         ?C0168?KB_PROCESS:
+002A12 904DE2            MOV     DPTR,#fn_flag
+002A15 E0                MOVX    A,@DPTR
+002A16 6401              XRL     A,#01H
+002A18 6002              JZ      $ + 4H
+002A1A 615B              AJMP    ?C0166?KB_PROCESS
+002A1C 904DE7            MOV     DPTR,#fn_lock_flag
 002A1F E0                MOVX    A,@DPTR
 002A20 6401              XRL     A,#01H
 002A22 6002              JZ      $ + 4H
-002A24 6165              AJMP    ?C0168?KB_PROCESS
-002A26 904DE7            MOV     DPTR,#fn_lock_flag
-002A29 E0                MOVX    A,@DPTR
-002A2A 6401              XRL     A,#01H
-002A2C 6002              JZ      $ + 4H
-002A2E 6165              AJMP    ?C0168?KB_PROCESS
-002A30         ?C0169?KB_PROCESS:
-  684: 	{
-  685: 		switch (key_value)
-002A30 EE                MOV     A,R6
-002A31 24C6              ADD     A,#0C6H
-002A33 B40C00            CJNE    A,#0CH,?C0261?KB_PROCESS
-002A36         ?C0261?KB_PROCESS:
-002A36 4002              JC      $ + 4H
-002A38 6165              AJMP    ?C0168?KB_PROCESS
-002A3A 902A48            MOV     DPTR,#02A48H
-002A3D 75F003            MOV     B,#03H
-002A40 A4                MUL     AB
-002A41 C583              XCH     A,DPH
-002A43 25F0              ADD     A,B
-002A45 C583              XCH     A,DPH
-002A47 73                JMP     @A+DPTR
-002A48         ?C0262?KB_PROCESS:
-002A48 022A6C            LJMP    ?C0172?KB_PROCESS
-002A4B 022A74            LJMP    ?C0173?KB_PROCESS
-002A4E 022A7C            LJMP    ?C0174?KB_PROCESS
-002A51 022AC3            LJMP    ?C0181?KB_PROCESS
-002A54 022AE9            LJMP    ?C0184?KB_PROCESS
-002A57 022AF1            LJMP    ?C0185?KB_PROCESS
-002A5A 022B37            LJMP    ?C0191?KB_PROCESS
-002A5D 022B3F            LJMP    ?C0192?KB_PROCESS
-002A60 022B47            LJMP    ?C0193?KB_PROCESS
-002A63 022B4F            LJMP    ?C0194?KB_PROCESS
-002A66 022B57            LJMP    ?C0195?KB_PROCESS
-002A69 022B5F            LJMP    ?C0196?KB_PROCESS
-  686: 		{ 	
-  687: 			case HID_KEY_F1:
-002A6C         ?C0172?KB_PROCESS:
-  688: 				temp = HID_MULTIKEY_LIGHT_DOWN;	
-002A6C 904F04            MOV     DPTR,#temp
-002A6F 74D7              MOV     A,#0D7H
-002A71 F0                MOVX    @DPTR,A
-  689: 				break;
-002A72 6165              AJMP    ?C0168?KB_PROCESS
-  690: 			case HID_KEY_F2:
-002A74         ?C0173?KB_PROCESS:
-  691: 				temp = HID_MULTIKEY_LIGHT_UP;
-002A74 904F04            MOV     DPTR,#temp
-002A77 74D8              MOV     A,#0D8H
-002A79 F0                MOVX    @DPTR,A
-  692: 				break;
-002A7A 6165              AJMP    ?C0168?KB_PROCESS
-  693: 			case HID_KEY_F3:
-002A7C         ?C0174?KB_PROCESS:
-  694: 				if(g_variable.system_mode == OSMODE_MAC)
-002A7C 904CC1            MOV     DPTR,#g_variable+02H
-002A7F E0                MOVX    A,@DPTR
-002A80 FE                MOV     R6,A
-002A81 B40219            CJNE    A,#02H,?C0175?KB_PROCESS
-  695: 				{
-  696: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_TAB);
-002A84 AF04              MOV     R7,AR4
-002A86 7B2B              MOV     R3,#02BH
-002A88 7D08              MOV     R5,#08H
-002A8A 1188              ACALL   _kb_combination_key_press
-  697: 					if(state & 1)
-002A8C EC                MOV     A,R4
-002A8D 30E006            JNB     ACC.0,?C0176?KB_PROCESS
-  698: 					{						
-  699: 						g_variable.one_key_press_wait_release_timer = 10;
-002A90 904CF8            MOV     DPTR,#g_variable+039H
-002A93 740A              MOV     A,#0AH
-002A95 F0                MOVX    @DPTR,A
-  700: 					}
-002A96         ?C0176?KB_PROCESS:
-  701: 					temp = HID_KEY_NULL;
-002A96 E4                CLR     A
-002A97 904F04            MOV     DPTR,#temp
-002A9A F0                MOVX    @DPTR,A
-  702: 				}				
-002A9B 6165              AJMP    ?C0168?KB_PROCESS
-002A9D         ?C0175?KB_PROCESS:
-  703: 				else if((g_variable.system_mode == OSMODE_ANDROID)||(g_variable.system_mode == OSMODE_WINDOWS))
-002A9D EE                MOV     A,R6
-002A9E 6401              XRL     A,#01H
-002AA0 6008              JZ      ?C0179?KB_PROCESS
-002AA2 904CC1            MOV     DPTR,#g_variable+02H
-002AA5 E0                MOVX    A,@DPTR
-002AA6 6002              JZ      $ + 4H
-002AA8 6165              AJMP    ?C0168?KB_PROCESS
-002AAA         ?C0179?KB_PROCESS:
-  704: 				{
-  705: 					kb_combination_key_press(state,KS_SEL_LALT,HID_KEY_TAB);
-002AAA AF04              MOV     R7,AR4
-002AAC 7B2B              MOV     R3,#02BH
-002AAE 7D04              MOV     R5,#04H
-002AB0 1188              ACALL   _kb_combination_key_press
-  706: 					if(state & 1)
-002AB2 EC                MOV     A,R4
-002AB3 30E006            JNB     ACC.0,?C0180?KB_PROCESS
-  707: 					{						
-  708: 						g_variable.one_key_press_wait_release_timer = 10;
-002AB6 904CF8            MOV     DPTR,#g_variable+039H
-002AB9 740A              MOV     A,#0AH
-002ABB F0                MOVX    @DPTR,A
-  709: 					}
-002ABC         ?C0180?KB_PROCESS:
-  710: 					temp = HID_KEY_NULL;
-002ABC E4                CLR     A
-002ABD 904F04            MOV     DPTR,#temp
-002AC0 F0                MOVX    @DPTR,A
-  711: 				}
-  712: 				
-  713: 				break;
-002AC1 6165              AJMP    ?C0168?KB_PROCESS
-  714: 			case HID_KEY_F4:
-002AC3         ?C0181?KB_PROCESS:
-  715: 				if(g_variable.system_mode == OSMODE_MAC)
-002AC3 904CC1            MOV     DPTR,#g_variable+02H
-002AC6 E0                MOVX    A,@DPTR
-002AC7 B40217            CJNE    A,#02H,?C0182?KB_PROCESS
-  716: 				{
-  717: 					kb_combination_key_press(state,KS_SEL_LGUI|KS_SEL_LCTRL,HID_KEY_SPACE);
-002ACA AF04              MOV     R7,AR4
-002ACC 7B2C              MOV     R3,#02CH
-002ACE 7D09              MOV     R5,#09H
-002AD0 1188              ACALL   _kb_combination_key_press
-  718: 					if(state & 1)    
-002AD2 EC                MOV     A,R4
-002AD3 30E006            JNB     ACC.0,?C0183?KB_PROCESS
-  719: 					{            
-  720: 					g_variable.one_key_press_wait_release_timer = 10;     
-002AD6 904CF8            MOV     DPTR,#g_variable+039H
-002AD9 740A              MOV     A,#0AH
-002ADB F0                MOVX    @DPTR,A
-  721: 					}	
-002ADC         ?C0183?KB_PROCESS:
-  722: 				temp = HID_KEY_NULL;
-002ADC E4                CLR     A
-002ADD 904F04            MOV     DPTR,#temp
-002AE0 F0                MOVX    @DPTR,A
-  723: 				}				
-002AE1         ?C0182?KB_PROCESS:
-  724: 				temp = HID_MULTIKEY_AC_SEARCH;
-002AE1 904F04            MOV     DPTR,#temp
-002AE4 74D5              MOV     A,#0D5H
-002AE6 F0                MOVX    @DPTR,A
-  725: 				break;				
-002AE7 807C              SJMP    ?C0168?KB_PROCESS
-  726: 			case HID_KEY_F5: 
-002AE9         ?C0184?KB_PROCESS:
-  727: 				temp = HID_MULTIKEY_AC_HOME;
-002AE9 904F04            MOV     DPTR,#temp
-002AEC 74D6              MOV     A,#0D6H
-002AEE F0                MOVX    @DPTR,A
-  728: 				break;
-002AEF 8074              SJMP    ?C0168?KB_PROCESS
-  729: 			case HID_KEY_F6:
-002AF1         ?C0185?KB_PROCESS:
-  730: 				if(g_variable.system_mode == OSMODE_IOS)
-002AF1 904CC1            MOV     DPTR,#g_variable+02H
-002AF4 E0                MOVX    A,@DPTR
-002AF5 B40317            CJNE    A,#03H,?C0186?KB_PROCESS
-  731: 				{
-  732: 				kb_combination_key_press(state,KS_SEL_LGUI|KS_SEL_LSHIFT,HID_KEY_3);
-002AF8 AF04              MOV     R7,AR4
-002AFA 7B20              MOV     R3,#020H
-002AFC 7D0A              MOV     R5,#0AH
-002AFE 1188              ACALL   _kb_combination_key_press
-  733: 					if(state & 1)    
-002B00 EC                MOV     A,R4
-002B01 30E006            JNB     ACC.0,?C0187?KB_PROCESS
-  734: 					{            
-  735: 					g_variable.one_key_press_wait_release_timer = 10;     
-002B04 904CF8            MOV     DPTR,#g_variable+039H
-002B07 740A              MOV     A,#0AH
-002B09 F0                MOVX    @DPTR,A
-  736: 					}	
-002B0A         ?C0187?KB_PROCESS:
-  737: 				temp = HID_KEY_NULL;
-002B0A E4                CLR     A
-002B0B 904F04            MOV     DPTR,#temp
-002B0E F0                MOVX    @DPTR,A
-  738: 				}
-002B0F         ?C0186?KB_PROCESS:
-  739: 				if(g_variable.system_mode == OSMODE_MAC)
-002B0F 904CC1            MOV     DPTR,#g_variable+02H
-002B12 E0                MOVX    A,@DPTR
-002B13 B40219            CJNE    A,#02H,?C0188?KB_PROCESS
-  740: 				{
-  741: 					kb_combination_key_press(state,KS_SEL_LGUI|KS_SEL_LSHIFT,HID_KEY_3);
-002B16 AF04              MOV     R7,AR4
-002B18 7B20              MOV     R3,#020H
-002B1A 7D0A              MOV     R5,#0AH
-002B1C 1188              ACALL   _kb_combination_key_press
-  742: 					if(state & 1)    
-002B1E EF                MOV     A,R7
-002B1F 30E006            JNB     ACC.0,?C0189?KB_PROCESS
-  743: 					{            
-  744: 					g_variable.one_key_press_wait_release_timer = 10;     
-002B22 904CF8            MOV     DPTR,#g_variable+039H
-002B25 740A              MOV     A,#0AH
-002B27 F0                MOVX    @DPTR,A
-  745: 					}	
-002B28         ?C0189?KB_PROCESS:
-  746: 				temp = HID_KEY_NULL;
-002B28 E4                CLR     A
-002B29 904F04            MOV     DPTR,#temp
-002B2C F0                MOVX    @DPTR,A
-  747: 				}				
-002B2D 8036              SJMP    ?C0168?KB_PROCESS
-002B2F         ?C0188?KB_PROCESS:
-  748: 				else
-  749: 					temp = HID_KEY_PRINT_SCREEN;
-002B2F 904F04            MOV     DPTR,#temp
-002B32 7446              MOV     A,#046H
-002B34 F0                MOVX    @DPTR,A
-  750: 				break;	
-002B35 802E              SJMP    ?C0168?KB_PROCESS
-  751: 			case HID_KEY_F7:
-002B37         ?C0191?KB_PROCESS:
-  752: 				temp = HID_MULTIKEY_PRE_TRACK;
-002B37 904F04            MOV     DPTR,#temp
-002B3A 74F4              MOV     A,#0F4H
-002B3C F0                MOVX    @DPTR,A
-  753: 				break;	
-002B3D 8026              SJMP    ?C0168?KB_PROCESS
-  754: 			case HID_KEY_F8:
-002B3F         ?C0192?KB_PROCESS:
-  755: 				temp = HID_MULTIKEY_PALY;
-002B3F 904F04            MOV     DPTR,#temp
-002B42 74F2              MOV     A,#0F2H
-002B44 F0                MOVX    @DPTR,A
-  756: 				break;
-002B45 801E              SJMP    ?C0168?KB_PROCESS
-  757: 			case HID_KEY_F9:
-002B47         ?C0193?KB_PROCESS:
-  758: 				temp = HID_MULTIKEY_NEXT_TRACK;
-002B47 904F04            MOV     DPTR,#temp
-002B4A 74F5              MOV     A,#0F5H
-002B4C F0                MOVX    @DPTR,A
-  759: 				break;
-002B4D 8016              SJMP    ?C0168?KB_PROCESS
-  760: 			case HID_KEY_F10:
-002B4F         ?C0194?KB_PROCESS:
-  761: 				temp = HID_MULTIKEY_MUTE;
-002B4F 904F04            MOV     DPTR,#temp
-002B52 74F8              MOV     A,#0F8H
-002B54 F0                MOVX    @DPTR,A
-  762: 				break;
-002B55 800E              SJMP    ?C0168?KB_PROCESS
-  763: 			case HID_KEY_F11:
-002B57         ?C0195?KB_PROCESS:
-  764: 				temp = HID_MULTIKEY_VOL_DOWN;
-002B57 904F04            MOV     DPTR,#temp
-002B5A 74F6              MOV     A,#0F6H
-002B5C F0                MOVX    @DPTR,A
-  765: 				break;
-002B5D 8006              SJMP    ?C0168?KB_PROCESS
-  766: 			case HID_KEY_F12:
-002B5F         ?C0196?KB_PROCESS:
-  767: 				temp = HID_MULTIKEY_VOL_UP;
-002B5F 904F04            MOV     DPTR,#temp
-002B62 74F7              MOV     A,#0F7H
-002B64 F0                MOVX    @DPTR,A
-  768: 				break;			
-  769: 			default :
-  770: 				break;
-  771: 		}
-  772: 	}
-002B65         ?C0168?KB_PROCESS:
-  773: 
-  774: 	return temp;
-002B65 904F04            MOV     DPTR,#temp
-002B68 E0                MOVX    A,@DPTR
-002B69 FF                MOV     R7,A
-  775: }
-002B6A 22                RET     
+002A24 615B              AJMP    ?C0166?KB_PROCESS
+002A26         ?C0167?KB_PROCESS:
+  680: 	{
+  681: 		switch (key_value)
+002A26 EE                MOV     A,R6
+002A27 24C6              ADD     A,#0C6H
+002A29 B40C00            CJNE    A,#0CH,?C0259?KB_PROCESS
+002A2C         ?C0259?KB_PROCESS:
+002A2C 4002              JC      $ + 4H
+002A2E 615B              AJMP    ?C0166?KB_PROCESS
+002A30 902A3E            MOV     DPTR,#02A3EH
+002A33 75F003            MOV     B,#03H
+002A36 A4                MUL     AB
+002A37 C583              XCH     A,DPH
+002A39 25F0              ADD     A,B
+002A3B C583              XCH     A,DPH
+002A3D 73                JMP     @A+DPTR
+002A3E         ?C0260?KB_PROCESS:
+002A3E 022A62            LJMP    ?C0170?KB_PROCESS
+002A41 022A6A            LJMP    ?C0171?KB_PROCESS
+002A44 022A72            LJMP    ?C0172?KB_PROCESS
+002A47 022AB9            LJMP    ?C0179?KB_PROCESS
+002A4A 022ADF            LJMP    ?C0182?KB_PROCESS
+002A4D 022AE7            LJMP    ?C0183?KB_PROCESS
+002A50 022B2D            LJMP    ?C0189?KB_PROCESS
+002A53 022B35            LJMP    ?C0190?KB_PROCESS
+002A56 022B3D            LJMP    ?C0191?KB_PROCESS
+002A59 022B45            LJMP    ?C0192?KB_PROCESS
+002A5C 022B4D            LJMP    ?C0193?KB_PROCESS
+002A5F 022B55            LJMP    ?C0194?KB_PROCESS
+  682: 		{ 	
+  683: 			case HID_KEY_F1:
+002A62         ?C0170?KB_PROCESS:
+  684: 				temp = HID_MULTIKEY_LIGHT_DOWN;	
+002A62 904F04            MOV     DPTR,#temp
+002A65 74D7              MOV     A,#0D7H
+002A67 F0                MOVX    @DPTR,A
+  685: 				break;
+002A68 615B              AJMP    ?C0166?KB_PROCESS
+  686: 			case HID_KEY_F2:
+002A6A         ?C0171?KB_PROCESS:
+  687: 				temp = HID_MULTIKEY_LIGHT_UP;
+002A6A 904F04            MOV     DPTR,#temp
+002A6D 74D8              MOV     A,#0D8H
+002A6F F0                MOVX    @DPTR,A
+  688: 				break;
+002A70 615B              AJMP    ?C0166?KB_PROCESS
+  689: 			case HID_KEY_F3:
+002A72         ?C0172?KB_PROCESS:
+  690: 				if(g_variable.system_mode == OSMODE_MAC)
+002A72 904CC1            MOV     DPTR,#g_variable+02H
+002A75 E0                MOVX    A,@DPTR
+002A76 FE                MOV     R6,A
+002A77 B40219            CJNE    A,#02H,?C0173?KB_PROCESS
+  691: 				{
+  692: 					kb_combination_key_press(state,KS_SEL_LGUI,HID_KEY_TAB);
+002A7A AF04              MOV     R7,AR4
+002A7C 7B2B              MOV     R3,#02BH
+002A7E 7D08              MOV     R5,#08H
+002A80 1188              ACALL   _kb_combination_key_press
+  693: 					if(state & 1)
+002A82 EC                MOV     A,R4
+002A83 30E006            JNB     ACC.0,?C0174?KB_PROCESS
+  694: 					{						
+  695: 						g_variable.one_key_press_wait_release_timer = 10;
+002A86 904CF8            MOV     DPTR,#g_variable+039H
+002A89 740A              MOV     A,#0AH
+002A8B F0                MOVX    @DPTR,A
+  696: 					}
+002A8C         ?C0174?KB_PROCESS:
+  697: 					temp = HID_KEY_NULL;
+002A8C E4                CLR     A
+002A8D 904F04            MOV     DPTR,#temp
+002A90 F0                MOVX    @DPTR,A
+  698: 				}				
+002A91 615B              AJMP    ?C0166?KB_PROCESS
+002A93         ?C0173?KB_PROCESS:
+  699: 				else if((g_variable.system_mode == OSMODE_ANDROID)||(g_variable.system_mode == OSMODE_WINDOWS))
+002A93 EE                MOV     A,R6
+002A94 6401              XRL     A,#01H
+002A96 6008              JZ      ?C0177?KB_PROCESS
+002A98 904CC1            MOV     DPTR,#g_variable+02H
+002A9B E0                MOVX    A,@DPTR
+002A9C 6002              JZ      $ + 4H
+002A9E 615B              AJMP    ?C0166?KB_PROCESS
+002AA0         ?C0177?KB_PROCESS:
+  700: 				{
+  701: 					kb_combination_key_press(state,KS_SEL_LALT,HID_KEY_TAB);
+002AA0 AF04              MOV     R7,AR4
+002AA2 7B2B              MOV     R3,#02BH
+002AA4 7D04              MOV     R5,#04H
+002AA6 1188              ACALL   _kb_combination_key_press
+  702: 					if(state & 1)
+002AA8 EC                MOV     A,R4
+002AA9 30E006            JNB     ACC.0,?C0178?KB_PROCESS
+  703: 					{						
+  704: 						g_variable.one_key_press_wait_release_timer = 10;
+002AAC 904CF8            MOV     DPTR,#g_variable+039H
+002AAF 740A              MOV     A,#0AH
+002AB1 F0                MOVX    @DPTR,A
+  705: 					}
+002AB2         ?C0178?KB_PROCESS:
+  706: 					temp = HID_KEY_NULL;
+002AB2 E4                CLR     A
+002AB3 904F04            MOV     DPTR,#temp
+002AB6 F0                MOVX    @DPTR,A
+  707: 				}
+  708: 				
+  709: 				break;
+002AB7 615B              AJMP    ?C0166?KB_PROCESS
+  710: 			case HID_KEY_F4:
+002AB9         ?C0179?KB_PROCESS:
+  711: 				if(g_variable.system_mode == OSMODE_MAC)
+002AB9 904CC1            MOV     DPTR,#g_variable+02H
+002ABC E0                MOVX    A,@DPTR
+002ABD B40217            CJNE    A,#02H,?C0180?KB_PROCESS
+  712: 				{
+  713: 					kb_combination_key_press(state,KS_SEL_LGUI|KS_SEL_LCTRL,HID_KEY_SPACE);
+002AC0 AF04              MOV     R7,AR4
+002AC2 7B2C              MOV     R3,#02CH
+002AC4 7D09              MOV     R5,#09H
+002AC6 1188              ACALL   _kb_combination_key_press
+  714: 					if(state & 1)    
+002AC8 EC                MOV     A,R4
+002AC9 30E006            JNB     ACC.0,?C0181?KB_PROCESS
+  715: 					{            
+  716: 					g_variable.one_key_press_wait_release_timer = 10;     
+002ACC 904CF8            MOV     DPTR,#g_variable+039H
+002ACF 740A              MOV     A,#0AH
+002AD1 F0                MOVX    @DPTR,A
+  717: 					}	
+002AD2         ?C0181?KB_PROCESS:
+  718: 				temp = HID_KEY_NULL;
+002AD2 E4                CLR     A
+002AD3 904F04            MOV     DPTR,#temp
+002AD6 F0                MOVX    @DPTR,A
+  719: 				}				
+002AD7         ?C0180?KB_PROCESS:
+  720: 				temp = HID_MULTIKEY_AC_SEARCH;
+002AD7 904F04            MOV     DPTR,#temp
+002ADA 74D5              MOV     A,#0D5H
+002ADC F0                MOVX    @DPTR,A
+  721: 				break;				
+002ADD 807C              SJMP    ?C0166?KB_PROCESS
+  722: 			case HID_KEY_F5: 
+002ADF         ?C0182?KB_PROCESS:
+  723: 				temp = HID_MULTIKEY_AC_HOME;
+002ADF 904F04            MOV     DPTR,#temp
+002AE2 74D6              MOV     A,#0D6H
+002AE4 F0                MOVX    @DPTR,A
+  724: 				break;
+002AE5 8074              SJMP    ?C0166?KB_PROCESS
+  725: 			case HID_KEY_F6:
+002AE7         ?C0183?KB_PROCESS:
+  726: 				if(g_variable.system_mode == OSMODE_IOS)
+002AE7 904CC1            MOV     DPTR,#g_variable+02H
+002AEA E0                MOVX    A,@DPTR
+002AEB B40317            CJNE    A,#03H,?C0184?KB_PROCESS
+  727: 				{
+  728: 				kb_combination_key_press(state,KS_SEL_LGUI|KS_SEL_LSHIFT,HID_KEY_3);
+002AEE AF04              MOV     R7,AR4
+002AF0 7B20              MOV     R3,#020H
+002AF2 7D0A              MOV     R5,#0AH
+002AF4 1188              ACALL   _kb_combination_key_press
+  729: 					if(state & 1)    
+002AF6 EC                MOV     A,R4
+002AF7 30E006            JNB     ACC.0,?C0185?KB_PROCESS
+  730: 					{            
+  731: 					g_variable.one_key_press_wait_release_timer = 10;     
+002AFA 904CF8            MOV     DPTR,#g_variable+039H
+002AFD 740A              MOV     A,#0AH
+002AFF F0                MOVX    @DPTR,A
+  732: 					}	
+002B00         ?C0185?KB_PROCESS:
+  733: 				temp = HID_KEY_NULL;
+002B00 E4                CLR     A
+002B01 904F04            MOV     DPTR,#temp
+002B04 F0                MOVX    @DPTR,A
+  734: 				}
+002B05         ?C0184?KB_PROCESS:
+  735: 				if(g_variable.system_mode == OSMODE_MAC)
+002B05 904CC1            MOV     DPTR,#g_variable+02H
+002B08 E0                MOVX    A,@DPTR
+002B09 B40219            CJNE    A,#02H,?C0186?KB_PROCESS
+  736: 				{
+  737: 					kb_combination_key_press(state,KS_SEL_LGUI|KS_SEL_LSHIFT,HID_KEY_3);
+002B0C AF04              MOV     R7,AR4
+002B0E 7B20              MOV     R3,#020H
+002B10 7D0A              MOV     R5,#0AH
+002B12 1188              ACALL   _kb_combination_key_press
+  738: 					if(state & 1)    
+002B14 EF                MOV     A,R7
+002B15 30E006            JNB     ACC.0,?C0187?KB_PROCESS
+  739: 					{            
+  740: 					g_variable.one_key_press_wait_release_timer = 10;     
+002B18 904CF8            MOV     DPTR,#g_variable+039H
+002B1B 740A              MOV     A,#0AH
+002B1D F0                MOVX    @DPTR,A
+  741: 					}	
+002B1E         ?C0187?KB_PROCESS:
+  742: 				temp = HID_KEY_NULL;
+002B1E E4                CLR     A
+002B1F 904F04            MOV     DPTR,#temp
+002B22 F0                MOVX    @DPTR,A
+  743: 				}				
+002B23 8036              SJMP    ?C0166?KB_PROCESS
+002B25         ?C0186?KB_PROCESS:
+  744: 				else
+  745: 					temp = HID_KEY_PRINT_SCREEN;
+002B25 904F04            MOV     DPTR,#temp
+002B28 7446              MOV     A,#046H
+002B2A F0                MOVX    @DPTR,A
+  746: 				break;	
+002B2B 802E              SJMP    ?C0166?KB_PROCESS
+  747: 			case HID_KEY_F7:
+002B2D         ?C0189?KB_PROCESS:
+  748: 				temp = HID_MULTIKEY_PRE_TRACK;
+002B2D 904F04            MOV     DPTR,#temp
+002B30 74F4              MOV     A,#0F4H
+002B32 F0                MOVX    @DPTR,A
+  749: 				break;	
+002B33 8026              SJMP    ?C0166?KB_PROCESS
+  750: 			case HID_KEY_F8:
+002B35         ?C0190?KB_PROCESS:
+  751: 				temp = HID_MULTIKEY_PALY;
+002B35 904F04            MOV     DPTR,#temp
+002B38 74F2              MOV     A,#0F2H
+002B3A F0                MOVX    @DPTR,A
+  752: 				break;
+002B3B 801E              SJMP    ?C0166?KB_PROCESS
+  753: 			case HID_KEY_F9:
+002B3D         ?C0191?KB_PROCESS:
+  754: 				temp = HID_MULTIKEY_NEXT_TRACK;
+002B3D 904F04            MOV     DPTR,#temp
+002B40 74F5              MOV     A,#0F5H
+002B42 F0                MOVX    @DPTR,A
+  755: 				break;
+002B43 8016              SJMP    ?C0166?KB_PROCESS
+  756: 			case HID_KEY_F10:
+002B45         ?C0192?KB_PROCESS:
+  757: 				temp = HID_MULTIKEY_MUTE;
+002B45 904F04            MOV     DPTR,#temp
+002B48 74F8              MOV     A,#0F8H
+002B4A F0                MOVX    @DPTR,A
+  758: 				break;
+002B4B 800E              SJMP    ?C0166?KB_PROCESS
+  759: 			case HID_KEY_F11:
+002B4D         ?C0193?KB_PROCESS:
+  760: 				temp = HID_MULTIKEY_VOL_DOWN;
+002B4D 904F04            MOV     DPTR,#temp
+002B50 74F6              MOV     A,#0F6H
+002B52 F0                MOVX    @DPTR,A
+  761: 				break;
+002B53 8006              SJMP    ?C0166?KB_PROCESS
+  762: 			case HID_KEY_F12:
+002B55         ?C0194?KB_PROCESS:
+  763: 				temp = HID_MULTIKEY_VOL_UP;
+002B55 904F04            MOV     DPTR,#temp
+002B58 74F7              MOV     A,#0F7H
+002B5A F0                MOVX    @DPTR,A
+  764: 				break;			
+  765: 			default :
+  766: 				break;
+  767: 		}
+  768: 	}
+002B5B         ?C0166?KB_PROCESS:
+  769: 
+  770: 	return temp;
+002B5B 904F04            MOV     DPTR,#temp
+002B5E E0                MOVX    A,@DPTR
+002B5F FF                MOV     R7,A
+  771: }
+002B60 22                RET     
 ----- FUNCTION _key_fn_function (END) -------
 
 
@@ -8178,506 +8168,506 @@
   293: {
   294: 	//
   295: 	byte i = 0;
-002B6B E4                CLR     A
-002B6C 904E88            MOV     DPTR,#i
-002B6F F0                MOVX    @DPTR,A
+002B61 E4                CLR     A
+002B62 904E88            MOV     DPTR,#i
+002B65 F0                MOVX    @DPTR,A
   296: 	byte j = 0;
+002B66 A3                INC     DPTR
+002B67 F0                MOVX    @DPTR,A
+  297: 	byte k = 0;
+002B68 A3                INC     DPTR
+002B69 F0                MOVX    @DPTR,A
+  298: 	byte temp = 0;
+002B6A A3                INC     DPTR
+002B6B F0                MOVX    @DPTR,A
+  299: 	byte flag = 0;
+002B6C A3                INC     DPTR
+002B6D F0                MOVX    @DPTR,A
+  300: 	byte offset = 0;
+002B6E A3                INC     DPTR
+002B6F F0                MOVX    @DPTR,A
+  301: 	byte state = 0;
 002B70 A3                INC     DPTR
 002B71 F0                MOVX    @DPTR,A
-  297: 	byte k = 0;
+  302: 	byte keyCounttemp = 0;
 002B72 A3                INC     DPTR
 002B73 F0                MOVX    @DPTR,A
-  298: 	byte temp = 0;
+  303: 	byte key_value_temp = 0;
 002B74 A3                INC     DPTR
 002B75 F0                MOVX    @DPTR,A
-  299: 	byte flag = 0;
+  304: 	byte ghost = 0;
 002B76 A3                INC     DPTR
 002B77 F0                MOVX    @DPTR,A
-  300: 	byte offset = 0;
+  305: 	byte rawCount = 0;
 002B78 A3                INC     DPTR
 002B79 F0                MOVX    @DPTR,A
-  301: 	byte state = 0;
-002B7A A3                INC     DPTR
-002B7B F0                MOVX    @DPTR,A
-  302: 	byte keyCounttemp = 0;
-002B7C A3                INC     DPTR
-002B7D F0                MOVX    @DPTR,A
-  303: 	byte key_value_temp = 0;
-002B7E A3                INC     DPTR
-002B7F F0                MOVX    @DPTR,A
-  304: 	byte ghost = 0;
-002B80 A3                INC     DPTR
-002B81 F0                MOVX    @DPTR,A
-  305: 	byte rawCount = 0;
-002B82 A3                INC     DPTR
-002B83 F0                MOVX    @DPTR,A
   306: 	
   307: 	KS_ScanMatrix();
-002B84 F144              ACALL   KS_ScanMatrix
+002B7A F13A              ACALL   KS_ScanMatrix
   308: 
   309: 	if (compare_str(ksSelMapCurr,ksSelMapCheck,KB_KSCAN_COL_NUM) 
-002B86 7A4D              MOV     R2,#HIGH ksSelMapCheck
-002B88 79A8              MOV     R1,#LOW ksSelMapCheck
-002B8A 904EAE            MOV     DPTR,#?_compare_str?BYTE+03H
-002B8D 7401              MOV     A,#01H
-002B8F F0                MOVX    @DPTR,A
-002B90 A3                INC     DPTR
-002B91 744D              MOV     A,#HIGH ksSelMapCheck
-002B93 F0                MOVX    @DPTR,A
-002B94 A3                INC     DPTR
-002B95 74A8              MOV     A,#LOW ksSelMapCheck
-002B97 F0                MOVX    @DPTR,A
-002B98 A3                INC     DPTR
-002B99 7414              MOV     A,#014H
-002B9B F0                MOVX    @DPTR,A
-002B9C 7B01              MOV     R3,#01H
-002B9E 7A4D              MOV     R2,#HIGH ksSelMapCurr
-002BA0 79BC              MOV     R1,#LOW ksSelMapCurr
-002BA2 B1FA              ACALL   _compare_str
-002BA4 EF                MOV     A,R7
-002BA5 601C              JZ      ?C0059?KEYSCAN
-002BA7 7B01              MOV     R3,#01H
-002BA9 7A4D              MOV     R2,#HIGH ksSelMapCurr
-002BAB 79BC              MOV     R1,#LOW ksSelMapCurr
-002BAD 7D14              MOV     R5,#014H
-002BAF B1CA              ACALL   _array_is_empty
-002BB1 EF                MOV     A,R7
-002BB2 700F              JNZ     ?C0059?KEYSCAN
+002B7C 7A4D              MOV     R2,#HIGH ksSelMapCheck
+002B7E 79A8              MOV     R1,#LOW ksSelMapCheck
+002B80 904EAE            MOV     DPTR,#?_compare_str?BYTE+03H
+002B83 7401              MOV     A,#01H
+002B85 F0                MOVX    @DPTR,A
+002B86 A3                INC     DPTR
+002B87 744D              MOV     A,#HIGH ksSelMapCheck
+002B89 F0                MOVX    @DPTR,A
+002B8A A3                INC     DPTR
+002B8B 74A8              MOV     A,#LOW ksSelMapCheck
+002B8D F0                MOVX    @DPTR,A
+002B8E A3                INC     DPTR
+002B8F 7414              MOV     A,#014H
+002B91 F0                MOVX    @DPTR,A
+002B92 7B01              MOV     R3,#01H
+002B94 7A4D              MOV     R2,#HIGH ksSelMapCurr
+002B96 79BC              MOV     R1,#LOW ksSelMapCurr
+002B98 B1F0              ACALL   _compare_str
+002B9A EF                MOV     A,R7
+002B9B 601C              JZ      ?C0059?KEYSCAN
+002B9D 7B01              MOV     R3,#01H
+002B9F 7A4D              MOV     R2,#HIGH ksSelMapCurr
+002BA1 79BC              MOV     R1,#LOW ksSelMapCurr
+002BA3 7D14              MOV     R5,#014H
+002BA5 B1C0              ACALL   _array_is_empty
+002BA7 EF                MOV     A,R7
+002BA8 700F              JNZ     ?C0059?KEYSCAN
   310: 		&& !array_is_empty(ksSelMapCurr,KB_KSCAN_COL_NUM))
   311: 	{
   312: 		g_variable.button_flag |= 0x02;
-002BB4 904CCE            MOV     DPTR,#g_variable+0FH
-002BB7 E0                MOVX    A,@DPTR
-002BB8 4402              ORL     A,#02H
-002BBA F0                MOVX    @DPTR,A
+002BAA 904CCE            MOV     DPTR,#g_variable+0FH
+002BAD E0                MOVX    A,@DPTR
+002BAE 4402              ORL     A,#02H
+002BB0 F0                MOVX    @DPTR,A
   313: 		g_variable.battery_motion_check_interval = BATTERY_MOTION_CHECK_INTERVAL;
-002BBB 904D0A            MOV     DPTR,#g_variable+04BH
-002BBE 7414              MOV     A,#014H
-002BC0 F0                MOVX    @DPTR,A
+002BB1 904D0A            MOV     DPTR,#g_variable+04BH
+002BB4 7414              MOV     A,#014H
+002BB6 F0                MOVX    @DPTR,A
   314: 	}
-002BC1 800C              SJMP    ?C0060?KEYSCAN
-002BC3         ?C0059?KEYSCAN:
+002BB7 800C              SJMP    ?C0060?KEYSCAN
+002BB9         ?C0059?KEYSCAN:
   315: 	else
   316: 	{	
   317: 		g_variable.button_flag &= 0xFD;
-002BC3 904CCE            MOV     DPTR,#g_variable+0FH
-002BC6 E0                MOVX    A,@DPTR
-002BC7 54FD              ANL     A,#0FDH
-002BC9 F0                MOVX    @DPTR,A
+002BB9 904CCE            MOV     DPTR,#g_variable+0FH
+002BBC E0                MOVX    A,@DPTR
+002BBD 54FD              ANL     A,#0FDH
+002BBF F0                MOVX    @DPTR,A
   318: 		g_variable.button_timer[1] = 0;
-002BCA E4                CLR     A
-002BCB 904CD0            MOV     DPTR,#g_variable+011H
-002BCE F0                MOVX    @DPTR,A
+002BC0 E4                CLR     A
+002BC1 904CD0            MOV     DPTR,#g_variable+011H
+002BC4 F0                MOVX    @DPTR,A
   319: 	}
-002BCF         ?C0060?KEYSCAN:
+002BC5         ?C0060?KEYSCAN:
   320: 
   321: 	for (i=0; col[i]!=0; i++) 
-002BCF E4                CLR     A
-002BD0 904E88            MOV     DPTR,#i
-002BD3 F0                MOVX    @DPTR,A
-002BD4         ?C0061?KEYSCAN:
-002BD4 904E88            MOV     DPTR,#i
-002BD7 E0                MOVX    A,@DPTR
-002BD8 FF                MOV     R7,A
-002BD9 900681            MOV     DPTR,#col
-002BDC 93                MOVC    A,@A+DPTR
-002BDD 7002              JNZ     $ + 4H
-002BDF 81A1              AJMP    ?C0062?KEYSCAN
+002BC5 E4                CLR     A
+002BC6 904E88            MOV     DPTR,#i
+002BC9 F0                MOVX    @DPTR,A
+002BCA         ?C0061?KEYSCAN:
+002BCA 904E88            MOV     DPTR,#i
+002BCD E0                MOVX    A,@DPTR
+002BCE FF                MOV     R7,A
+002BCF 900681            MOV     DPTR,#col
+002BD2 93                MOVC    A,@A+DPTR
+002BD3 7002              JNZ     $ + 4H
+002BD5 8197              AJMP    ?C0062?KEYSCAN
   322: 	{
   323: 		temp = ksSelMapCurr[i];
-002BE1 74BC              MOV     A,#LOW ksSelMapCurr
-002BE3 2F                ADD     A,R7
-002BE4 F582              MOV     DPL,A
-002BE6 E4                CLR     A
-002BE7 344D              ADDC    A,#HIGH ksSelMapCurr
-002BE9 F583              MOV     DPH,A
-002BEB E0                MOVX    A,@DPTR
-002BEC 904E8B            MOV     DPTR,#temp
-002BEF F0                MOVX    @DPTR,A
+002BD7 74BC              MOV     A,#LOW ksSelMapCurr
+002BD9 2F                ADD     A,R7
+002BDA F582              MOV     DPL,A
+002BDC E4                CLR     A
+002BDD 344D              ADDC    A,#HIGH ksSelMapCurr
+002BDF F583              MOV     DPH,A
+002BE1 E0                MOVX    A,@DPTR
+002BE2 904E8B            MOV     DPTR,#temp
+002BE5 F0                MOVX    @DPTR,A
   324: 		rawCount = bit_count(temp);
-002BF0 E0                MOVX    A,@DPTR
-002BF1 FF                MOV     R7,A
-002BF2 B1BC              ACALL   _bit_count
-002BF4 904E92            MOV     DPTR,#rawCount
-002BF7 EF                MOV     A,R7
-002BF8 F0                MOVX    @DPTR,A
+002BE6 E0                MOVX    A,@DPTR
+002BE7 FF                MOV     R7,A
+002BE8 B1B2              ACALL   _bit_count
+002BEA 904E92            MOV     DPTR,#rawCount
+002BED EF                MOV     A,R7
+002BEE F0                MOVX    @DPTR,A
   325: 		if(rawCount >= 2)		// col[i] has more than two key press
-002BF9 C3                CLR     C
-002BFA 9402              SUBB    A,#02H
-002BFC 5002              JNC     $ + 4H
-002BFE 818A              AJMP    ?C0064?KEYSCAN
+002BEF C3                CLR     C
+002BF0 9402              SUBB    A,#02H
+002BF2 5002              JNC     $ + 4H
+002BF4 8180              AJMP    ?C0064?KEYSCAN
   326: 		{
   327: 			for(j=0 ; j<8 ;j++)
-002C00 E4                CLR     A
-002C01 904E89            MOV     DPTR,#j
-002C04 F0                MOVX    @DPTR,A
-002C05         ?C0065?KEYSCAN:
-002C05 904E89            MOV     DPTR,#j
-002C08 E0                MOVX    A,@DPTR
-002C09 FF                MOV     R7,A
-002C0A C3                CLR     C
-002C0B 9408              SUBB    A,#08H
-002C0D 507B              JNC     ?C0064?KEYSCAN
+002BF6 E4                CLR     A
+002BF7 904E89            MOV     DPTR,#j
+002BFA F0                MOVX    @DPTR,A
+002BFB         ?C0065?KEYSCAN:
+002BFB 904E89            MOV     DPTR,#j
+002BFE E0                MOVX    A,@DPTR
+002BFF FF                MOV     R7,A
+002C00 C3                CLR     C
+002C01 9408              SUBB    A,#08H
+002C03 507B              JNC     ?C0064?KEYSCAN
   328: 			{
   329: 				if(temp & (1<<j))	// Ci_Rj press
-002C0F 7401              MOV     A,#01H
-002C11 7E00              MOV     R6,#00H
-002C13 A807              MOV     R0,AR7
-002C15 08                INC     R0
-002C16 8005              SJMP    ?C0103?KEYSCAN
-002C18         ?C0102?KEYSCAN:
-002C18 C3                CLR     C
-002C19 33                RLC     A
-002C1A CE                XCH     A,R6
-002C1B 33                RLC     A
-002C1C CE                XCH     A,R6
-002C1D         ?C0103?KEYSCAN:
-002C1D D8F9              DJNZ    R0,?C0102?KEYSCAN
-002C1F FF                MOV     R7,A
-002C20 904E8B            MOV     DPTR,#temp
-002C23 E0                MOVX    A,@DPTR
-002C24 FD                MOV     R5,A
-002C25 E4                CLR     A
-002C26 EF                MOV     A,R7
-002C27 5D                ANL     A,R5
-002C28 6058              JZ      ?C0067?KEYSCAN
+002C05 7401              MOV     A,#01H
+002C07 7E00              MOV     R6,#00H
+002C09 A807              MOV     R0,AR7
+002C0B 08                INC     R0
+002C0C 8005              SJMP    ?C0103?KEYSCAN
+002C0E         ?C0102?KEYSCAN:
+002C0E C3                CLR     C
+002C0F 33                RLC     A
+002C10 CE                XCH     A,R6
+002C11 33                RLC     A
+002C12 CE                XCH     A,R6
+002C13         ?C0103?KEYSCAN:
+002C13 D8F9              DJNZ    R0,?C0102?KEYSCAN
+002C15 FF                MOV     R7,A
+002C16 904E8B            MOV     DPTR,#temp
+002C19 E0                MOVX    A,@DPTR
+002C1A FD                MOV     R5,A
+002C1B E4                CLR     A
+002C1C EF                MOV     A,R7
+002C1D 5D                ANL     A,R5
+002C1E 6058              JZ      ?C0067?KEYSCAN
   330: 				{
   331: 					for(k=0 ; col[k]!=0; k++)
-002C2A E4                CLR     A
-002C2B 904E8A            MOV     DPTR,#k
-002C2E F0                MOVX    @DPTR,A
-002C2F         ?C0069?KEYSCAN:
-002C2F 904E8A            MOV     DPTR,#k
-002C32 E0                MOVX    A,@DPTR
-002C33 FF                MOV     R7,A
-002C34 900681            MOV     DPTR,#col
-002C37 93                MOVC    A,@A+DPTR
-002C38 6048              JZ      ?C0067?KEYSCAN
+002C20 E4                CLR     A
+002C21 904E8A            MOV     DPTR,#k
+002C24 F0                MOVX    @DPTR,A
+002C25         ?C0069?KEYSCAN:
+002C25 904E8A            MOV     DPTR,#k
+002C28 E0                MOVX    A,@DPTR
+002C29 FF                MOV     R7,A
+002C2A 900681            MOV     DPTR,#col
+002C2D 93                MOVC    A,@A+DPTR
+002C2E 6048              JZ      ?C0067?KEYSCAN
   332: 					{
   333: 						if(k!= i)
-002C3A 904E88            MOV     DPTR,#i
-002C3D E0                MOVX    A,@DPTR
-002C3E FE                MOV     R6,A
-002C3F EF                MOV     A,R7
-002C40 6E                XRL     A,R6
-002C41 6037              JZ      ?C0071?KEYSCAN
+002C30 904E88            MOV     DPTR,#i
+002C33 E0                MOVX    A,@DPTR
+002C34 FE                MOV     R6,A
+002C35 EF                MOV     A,R7
+002C36 6E                XRL     A,R6
+002C37 6037              JZ      ?C0071?KEYSCAN
   334: 						{
   335: 							if(ksSelMapCurr[k] & (1<<j))	// R line has another key press
-002C43 904E8A            MOV     DPTR,#k
+002C39 904E8A            MOV     DPTR,#k
+002C3C E0                MOVX    A,@DPTR
+002C3D 24BC              ADD     A,#LOW ksSelMapCurr
+002C3F F582              MOV     DPL,A
+002C41 E4                CLR     A
+002C42 344D              ADDC    A,#HIGH ksSelMapCurr
+002C44 F583              MOV     DPH,A
 002C46 E0                MOVX    A,@DPTR
-002C47 24BC              ADD     A,#LOW ksSelMapCurr
-002C49 F582              MOV     DPL,A
-002C4B E4                CLR     A
-002C4C 344D              ADDC    A,#HIGH ksSelMapCurr
-002C4E F583              MOV     DPH,A
-002C50 E0                MOVX    A,@DPTR
-002C51 FD                MOV     R5,A
-002C52 7C00              MOV     R4,#00H
-002C54 904E89            MOV     DPTR,#j
-002C57 E0                MOVX    A,@DPTR
-002C58 FF                MOV     R7,A
-002C59 7401              MOV     A,#01H
-002C5B 7E00              MOV     R6,#00H
-002C5D A807              MOV     R0,AR7
-002C5F 08                INC     R0
-002C60 8005              SJMP    ?C0105?KEYSCAN
-002C62         ?C0104?KEYSCAN:
-002C62 C3                CLR     C
-002C63 33                RLC     A
-002C64 CE                XCH     A,R6
-002C65 33                RLC     A
-002C66 CE                XCH     A,R6
-002C67         ?C0105?KEYSCAN:
-002C67 D8F9              DJNZ    R0,?C0104?KEYSCAN
-002C69 FF                MOV     R7,A
-002C6A EE                MOV     A,R6
-002C6B 5C                ANL     A,R4
-002C6C FE                MOV     R6,A
-002C6D EF                MOV     A,R7
-002C6E 5D                ANL     A,R5
-002C6F 4E                ORL     A,R6
-002C70 6008              JZ      ?C0071?KEYSCAN
+002C47 FD                MOV     R5,A
+002C48 7C00              MOV     R4,#00H
+002C4A 904E89            MOV     DPTR,#j
+002C4D E0                MOVX    A,@DPTR
+002C4E FF                MOV     R7,A
+002C4F 7401              MOV     A,#01H
+002C51 7E00              MOV     R6,#00H
+002C53 A807              MOV     R0,AR7
+002C55 08                INC     R0
+002C56 8005              SJMP    ?C0105?KEYSCAN
+002C58         ?C0104?KEYSCAN:
+002C58 C3                CLR     C
+002C59 33                RLC     A
+002C5A CE                XCH     A,R6
+002C5B 33                RLC     A
+002C5C CE                XCH     A,R6
+002C5D         ?C0105?KEYSCAN:
+002C5D D8F9              DJNZ    R0,?C0104?KEYSCAN
+002C5F FF                MOV     R7,A
+002C60 EE                MOV     A,R6
+002C61 5C                ANL     A,R4
+002C62 FE                MOV     R6,A
+002C63 EF                MOV     A,R7
+002C64 5D                ANL     A,R5
+002C65 4E                ORL     A,R6
+002C66 6008              JZ      ?C0071?KEYSCAN
   336: 							{
   337: 								ghost = 1;
-002C72 904E91            MOV     DPTR,#ghost
-002C75 7401              MOV     A,#01H
-002C77 F0                MOVX    @DPTR,A
+002C68 904E91            MOV     DPTR,#ghost
+002C6B 7401              MOV     A,#01H
+002C6D F0                MOVX    @DPTR,A
   338: 								break;
-002C78 8008              SJMP    ?C0067?KEYSCAN
+002C6E 8008              SJMP    ?C0067?KEYSCAN
   339: 							}	
   340: 						}
   341: 					}
-002C7A         ?C0071?KEYSCAN:
-002C7A 904E8A            MOV     DPTR,#k
-002C7D E0                MOVX    A,@DPTR
-002C7E 04                INC     A
-002C7F F0                MOVX    @DPTR,A
-002C80 80AD              SJMP    ?C0069?KEYSCAN
+002C70         ?C0071?KEYSCAN:
+002C70 904E8A            MOV     DPTR,#k
+002C73 E0                MOVX    A,@DPTR
+002C74 04                INC     A
+002C75 F0                MOVX    @DPTR,A
+002C76 80AD              SJMP    ?C0069?KEYSCAN
   342: 				}
   343: 			}
-002C82         ?C0067?KEYSCAN:
-002C82 904E89            MOV     DPTR,#j
-002C85 E0                MOVX    A,@DPTR
-002C86 04                INC     A
-002C87 F0                MOVX    @DPTR,A
-002C88 8105              AJMP    ?C0065?KEYSCAN
+002C78         ?C0067?KEYSCAN:
+002C78 904E89            MOV     DPTR,#j
+002C7B E0                MOVX    A,@DPTR
+002C7C 04                INC     A
+002C7D F0                MOVX    @DPTR,A
+002C7E 61FB              AJMP    ?C0065?KEYSCAN
   344: 		}
-002C8A         ?C0064?KEYSCAN:
+002C80         ?C0064?KEYSCAN:
   345: 		
   346: 		if (temp!=0)
-002C8A 904E8B            MOV     DPTR,#temp
-002C8D E0                MOVX    A,@DPTR
-002C8E FF                MOV     R7,A
-002C8F 6008              JZ      ?C0063?KEYSCAN
+002C80 904E8B            MOV     DPTR,#temp
+002C83 E0                MOVX    A,@DPTR
+002C84 FF                MOV     R7,A
+002C85 6008              JZ      ?C0063?KEYSCAN
   347: 		{
   348: 			keyCounttemp += bit_count(temp);
-002C91 B1BC              ACALL   _bit_count
-002C93 904E8F            MOV     DPTR,#keyCounttemp
-002C96 E0                MOVX    A,@DPTR
-002C97 2F                ADD     A,R7
-002C98 F0                MOVX    @DPTR,A
+002C87 B1B2              ACALL   _bit_count
+002C89 904E8F            MOV     DPTR,#keyCounttemp
+002C8C E0                MOVX    A,@DPTR
+002C8D 2F                ADD     A,R7
+002C8E F0                MOVX    @DPTR,A
   349: 		}
   350: 	}
-002C99         ?C0063?KEYSCAN:
-002C99 904E88            MOV     DPTR,#i
-002C9C E0                MOVX    A,@DPTR
-002C9D 04                INC     A
-002C9E F0                MOVX    @DPTR,A
-002C9F 61D4              AJMP    ?C0061?KEYSCAN
-002CA1         ?C0062?KEYSCAN:
+002C8F         ?C0063?KEYSCAN:
+002C8F 904E88            MOV     DPTR,#i
+002C92 E0                MOVX    A,@DPTR
+002C93 04                INC     A
+002C94 F0                MOVX    @DPTR,A
+002C95 61CA              AJMP    ?C0061?KEYSCAN
+002C97         ?C0062?KEYSCAN:
   351: 	keyCount = keyCounttemp;
-002CA1 904E8F            MOV     DPTR,#keyCounttemp
-002CA4 E0                MOVX    A,@DPTR
-002CA5 904DE4            MOV     DPTR,#keyCount
-002CA8 F0                MOVX    @DPTR,A
+002C97 904E8F            MOV     DPTR,#keyCounttemp
+002C9A E0                MOVX    A,@DPTR
+002C9B 904DE4            MOV     DPTR,#keyCount
+002C9E F0                MOVX    @DPTR,A
   352: 	
   353: 	for (i=0; col[i]!=0; i++)
-002CA9 E4                CLR     A
-002CAA 904E88            MOV     DPTR,#i
-002CAD F0                MOVX    @DPTR,A
-002CAE         ?C0075?KEYSCAN:
-002CAE 904E88            MOV     DPTR,#i
-002CB1 E0                MOVX    A,@DPTR
-002CB2 FF                MOV     R7,A
-002CB3 900681            MOV     DPTR,#col
-002CB6 93                MOVC    A,@A+DPTR
-002CB7 7002              JNZ     $ + 4H
-002CB9 A190              AJMP    ?C0076?KEYSCAN
+002C9F E4                CLR     A
+002CA0 904E88            MOV     DPTR,#i
+002CA3 F0                MOVX    @DPTR,A
+002CA4         ?C0075?KEYSCAN:
+002CA4 904E88            MOV     DPTR,#i
+002CA7 E0                MOVX    A,@DPTR
+002CA8 FF                MOV     R7,A
+002CA9 900681            MOV     DPTR,#col
+002CAC 93                MOVC    A,@A+DPTR
+002CAD 7002              JNZ     $ + 4H
+002CAF A186              AJMP    ?C0076?KEYSCAN
   354: 	{
   355: 		temp = ksSelMapCurr[i] ^ ksSelMapOld[i];
-002CBB 7493              MOV     A,#LOW ksSelMapOld
-002CBD 2F                ADD     A,R7
-002CBE F582              MOV     DPL,A
-002CC0 E4                CLR     A
-002CC1 344D              ADDC    A,#HIGH ksSelMapOld
-002CC3 F583              MOV     DPH,A
-002CC5 E0                MOVX    A,@DPTR
-002CC6 FE                MOV     R6,A
-002CC7 74BC              MOV     A,#LOW ksSelMapCurr
-002CC9 2F                ADD     A,R7
-002CCA F582              MOV     DPL,A
-002CCC E4                CLR     A
-002CCD 344D              ADDC    A,#HIGH ksSelMapCurr
-002CCF F583              MOV     DPH,A
-002CD1 E0                MOVX    A,@DPTR
-002CD2 6E                XRL     A,R6
-002CD3 904E8B            MOV     DPTR,#temp
-002CD6 F0                MOVX    @DPTR,A
+002CB1 7493              MOV     A,#LOW ksSelMapOld
+002CB3 2F                ADD     A,R7
+002CB4 F582              MOV     DPL,A
+002CB6 E4                CLR     A
+002CB7 344D              ADDC    A,#HIGH ksSelMapOld
+002CB9 F583              MOV     DPH,A
+002CBB E0                MOVX    A,@DPTR
+002CBC FE                MOV     R6,A
+002CBD 74BC              MOV     A,#LOW ksSelMapCurr
+002CBF 2F                ADD     A,R7
+002CC0 F582              MOV     DPL,A
+002CC2 E4                CLR     A
+002CC3 344D              ADDC    A,#HIGH ksSelMapCurr
+002CC5 F583              MOV     DPH,A
+002CC7 E0                MOVX    A,@DPTR
+002CC8 6E                XRL     A,R6
+002CC9 904E8B            MOV     DPTR,#temp
+002CCC F0                MOVX    @DPTR,A
   356: 		state = ksSelMapCurr[i];
-002CD7 904E88            MOV     DPTR,#i
-002CDA E0                MOVX    A,@DPTR
-002CDB FF                MOV     R7,A
-002CDC 24BC              ADD     A,#LOW ksSelMapCurr
-002CDE F582              MOV     DPL,A
-002CE0 E4                CLR     A
-002CE1 344D              ADDC    A,#HIGH ksSelMapCurr
-002CE3 F583              MOV     DPH,A
-002CE5 E0                MOVX    A,@DPTR
-002CE6 904E8E            MOV     DPTR,#state
-002CE9 F0                MOVX    @DPTR,A
+002CCD 904E88            MOV     DPTR,#i
+002CD0 E0                MOVX    A,@DPTR
+002CD1 FF                MOV     R7,A
+002CD2 24BC              ADD     A,#LOW ksSelMapCurr
+002CD4 F582              MOV     DPL,A
+002CD6 E4                CLR     A
+002CD7 344D              ADDC    A,#HIGH ksSelMapCurr
+002CD9 F583              MOV     DPH,A
+002CDB E0                MOVX    A,@DPTR
+002CDC 904E8E            MOV     DPTR,#state
+002CDF F0                MOVX    @DPTR,A
   357: 		if (temp == 0) 
-002CEA 904E8B            MOV     DPTR,#temp
-002CED E0                MOVX    A,@DPTR
-002CEE 7004              JNZ     ?C0078?KEYSCAN
+002CE0 904E8B            MOV     DPTR,#temp
+002CE3 E0                MOVX    A,@DPTR
+002CE4 7004              JNZ     ?C0078?KEYSCAN
   358: 		{
   359: 			continue;
-002CF0 A188              AJMP    ?C0077?KEYSCAN
+002CE6 A17E              AJMP    ?C0077?KEYSCAN
   360: 		}
-002CF2 A188              AJMP    ?C0077?KEYSCAN
-002CF4         ?C0078?KEYSCAN:
+002CE8 A17E              AJMP    ?C0077?KEYSCAN
+002CEA         ?C0078?KEYSCAN:
   361: 		else 
   362: 		{
   363: 
   364: 			if (ghost) 
-002CF4 904E91            MOV     DPTR,#ghost
-002CF7 E0                MOVX    A,@DPTR
-002CF8 6007              JZ      ?C0080?KEYSCAN
+002CEA 904E91            MOV     DPTR,#ghost
+002CED E0                MOVX    A,@DPTR
+002CEE 6007              JZ      ?C0080?KEYSCAN
   365: 				return NULL;
-002CFA 7B00              MOV     R3,#00H
-002CFC 7A00              MOV     R2,#00H
-002CFE 7900              MOV     R1,#00H
-002D00 22                RET     
-002D01         ?C0080?KEYSCAN:
+002CF0 7B00              MOV     R3,#00H
+002CF2 7A00              MOV     R2,#00H
+002CF4 7900              MOV     R1,#00H
+002CF6 22                RET     
+002CF7         ?C0080?KEYSCAN:
   366: 			ksSelMapOld[i] = ksSelMapCurr[i];
-002D01 74BC              MOV     A,#LOW ksSelMapCurr
-002D03 2F                ADD     A,R7
-002D04 F582              MOV     DPL,A
-002D06 E4                CLR     A
-002D07 344D              ADDC    A,#HIGH ksSelMapCurr
-002D09 F583              MOV     DPH,A
-002D0B E0                MOVX    A,@DPTR
-002D0C FE                MOV     R6,A
-002D0D 7493              MOV     A,#LOW ksSelMapOld
-002D0F 2F                ADD     A,R7
-002D10 F582              MOV     DPL,A
-002D12 E4                CLR     A
-002D13 344D              ADDC    A,#HIGH ksSelMapOld
-002D15 F583              MOV     DPH,A
-002D17 EE                MOV     A,R6
-002D18 F0                MOVX    @DPTR,A
+002CF7 74BC              MOV     A,#LOW ksSelMapCurr
+002CF9 2F                ADD     A,R7
+002CFA F582              MOV     DPL,A
+002CFC E4                CLR     A
+002CFD 344D              ADDC    A,#HIGH ksSelMapCurr
+002CFF F583              MOV     DPH,A
+002D01 E0                MOVX    A,@DPTR
+002D02 FE                MOV     R6,A
+002D03 7493              MOV     A,#LOW ksSelMapOld
+002D05 2F                ADD     A,R7
+002D06 F582              MOV     DPL,A
+002D08 E4                CLR     A
+002D09 344D              ADDC    A,#HIGH ksSelMapOld
+002D0B F583              MOV     DPH,A
+002D0D EE                MOV     A,R6
+002D0E F0                MOVX    @DPTR,A
   367: 			for (j = 0 ; j<8 ; j++) 
-002D19 E4                CLR     A
-002D1A 904E89            MOV     DPTR,#j
-002D1D F0                MOVX    @DPTR,A
-002D1E         ?C0082?KEYSCAN:
-002D1E 904E89            MOV     DPTR,#j
-002D21 E0                MOVX    A,@DPTR
-002D22 FF                MOV     R7,A
-002D23 C3                CLR     C
-002D24 9408              SUBB    A,#08H
-002D26 505A              JNC     ?C0083?KEYSCAN
+002D0F E4                CLR     A
+002D10 904E89            MOV     DPTR,#j
+002D13 F0                MOVX    @DPTR,A
+002D14         ?C0082?KEYSCAN:
+002D14 904E89            MOV     DPTR,#j
+002D17 E0                MOVX    A,@DPTR
+002D18 FF                MOV     R7,A
+002D19 C3                CLR     C
+002D1A 9408              SUBB    A,#08H
+002D1C 505A              JNC     ?C0083?KEYSCAN
   368: 			{
   369: 				if (temp&1)
-002D28 904E8B            MOV     DPTR,#temp
-002D2B E0                MOVX    A,@DPTR
-002D2C 30E03B            JNB     ACC.0,?C0085?KEYSCAN
+002D1E 904E8B            MOV     DPTR,#temp
+002D21 E0                MOVX    A,@DPTR
+002D22 30E03B            JNB     ACC.0,?C0085?KEYSCAN
   370: 				{
   371: 					offset = i<<3 |j;
-002D2F 904E88            MOV     DPTR,#i
-002D32 E0                MOVX    A,@DPTR
-002D33 FE                MOV     R6,A
-002D34 33                RLC     A
-002D35 33                RLC     A
-002D36 33                RLC     A
-002D37 54F8              ANL     A,#0F8H
-002D39 FE                MOV     R6,A
-002D3A EF                MOV     A,R7
-002D3B 4E                ORL     A,R6
-002D3C 904E8D            MOV     DPTR,#offset
-002D3F F0                MOVX    @DPTR,A
+002D25 904E88            MOV     DPTR,#i
+002D28 E0                MOVX    A,@DPTR
+002D29 FE                MOV     R6,A
+002D2A 33                RLC     A
+002D2B 33                RLC     A
+002D2C 33                RLC     A
+002D2D 54F8              ANL     A,#0F8H
+002D2F FE                MOV     R6,A
+002D30 EF                MOV     A,R7
+002D31 4E                ORL     A,R6
+002D32 904E8D            MOV     DPTR,#offset
+002D35 F0                MOVX    @DPTR,A
   372: 					key_value_temp = key_fn_function(state,ksMap[offset]);
-002D40 A3                INC     DPTR
-002D41 E0                MOVX    A,@DPTR
-002D42 FF                MOV     R7,A
-002D43 904E8D            MOV     DPTR,#offset
-002D46 E0                MOVX    A,@DPTR
-002D47 900696            MOV     DPTR,#ksMap
-002D4A 93                MOVC    A,@A+DPTR
-002D4B FD                MOV     R5,A
-002D4C 11AD              ACALL   _key_fn_function
-002D4E 904E90            MOV     DPTR,#key_value_temp
-002D51 EF                MOV     A,R7
-002D52 F0                MOVX    @DPTR,A
+002D36 A3                INC     DPTR
+002D37 E0                MOVX    A,@DPTR
+002D38 FF                MOV     R7,A
+002D39 904E8D            MOV     DPTR,#offset
+002D3C E0                MOVX    A,@DPTR
+002D3D 900696            MOV     DPTR,#ksMap
+002D40 93                MOVC    A,@A+DPTR
+002D41 FD                MOV     R5,A
+002D42 11AD              ACALL   _key_fn_function
+002D44 904E90            MOV     DPTR,#key_value_temp
+002D47 EF                MOV     A,R7
+002D48 F0                MOVX    @DPTR,A
   373: 					if (state & 1)
-002D53 904E8E            MOV     DPTR,#state
-002D56 E0                MOVX    A,@DPTR
-002D57 30E009            JNB     ACC.0,?C0086?KEYSCAN
+002D49 904E8E            MOV     DPTR,#state
+002D4C E0                MOVX    A,@DPTR
+002D4D 30E009            JNB     ACC.0,?C0086?KEYSCAN
   374: 					{
   375: 						keyIn(key_value_temp);
-002D5A 904E90            MOV     DPTR,#key_value_temp
-002D5D E0                MOVX    A,@DPTR
-002D5E FF                MOV     R7,A
-002D5F D144              ACALL   _keyIn
+002D50 904E90            MOV     DPTR,#key_value_temp
+002D53 E0                MOVX    A,@DPTR
+002D54 FF                MOV     R7,A
+002D55 D13A              ACALL   _keyIn
   376: 					}
-002D61 8007              SJMP    ?C0085?KEYSCAN
-002D63         ?C0086?KEYSCAN:
+002D57 8007              SJMP    ?C0085?KEYSCAN
+002D59         ?C0086?KEYSCAN:
   377: 					else
   378: 					{
   379: 						keyOut(key_value_temp);
-002D63 904E90            MOV     DPTR,#key_value_temp
-002D66 E0                MOVX    A,@DPTR
-002D67 FF                MOV     R7,A
-002D68 D19A              ACALL   _keyOut
+002D59 904E90            MOV     DPTR,#key_value_temp
+002D5C E0                MOVX    A,@DPTR
+002D5D FF                MOV     R7,A
+002D5E D190              ACALL   _keyOut
   380: 					}
   381: 				}
-002D6A         ?C0085?KEYSCAN:
+002D60         ?C0085?KEYSCAN:
   382: 				temp = temp >>1;
-002D6A 904E8B            MOV     DPTR,#temp
-002D6D E0                MOVX    A,@DPTR
-002D6E FF                MOV     R7,A
-002D6F C3                CLR     C
-002D70 13                RRC     A
-002D71 F0                MOVX    @DPTR,A
+002D60 904E8B            MOV     DPTR,#temp
+002D63 E0                MOVX    A,@DPTR
+002D64 FF                MOV     R7,A
+002D65 C3                CLR     C
+002D66 13                RRC     A
+002D67 F0                MOVX    @DPTR,A
   383: 				state = state>>1;
-002D72 904E8E            MOV     DPTR,#state
-002D75 E0                MOVX    A,@DPTR
-002D76 FF                MOV     R7,A
-002D77 C3                CLR     C
-002D78 13                RRC     A
-002D79 F0                MOVX    @DPTR,A
+002D68 904E8E            MOV     DPTR,#state
+002D6B E0                MOVX    A,@DPTR
+002D6C FF                MOV     R7,A
+002D6D C3                CLR     C
+002D6E 13                RRC     A
+002D6F F0                MOVX    @DPTR,A
   384: 			}
-002D7A 904E89            MOV     DPTR,#j
-002D7D E0                MOVX    A,@DPTR
-002D7E 04                INC     A
-002D7F F0                MOVX    @DPTR,A
-002D80 809C              SJMP    ?C0082?KEYSCAN
-002D82         ?C0083?KEYSCAN:
+002D70 904E89            MOV     DPTR,#j
+002D73 E0                MOVX    A,@DPTR
+002D74 04                INC     A
+002D75 F0                MOVX    @DPTR,A
+002D76 809C              SJMP    ?C0082?KEYSCAN
+002D78         ?C0083?KEYSCAN:
   385: 			flag = 1;
-002D82 904E8C            MOV     DPTR,#flag
-002D85 7401              MOV     A,#01H
-002D87 F0                MOVX    @DPTR,A
+002D78 904E8C            MOV     DPTR,#flag
+002D7B 7401              MOV     A,#01H
+002D7D F0                MOVX    @DPTR,A
   386: 		}
   387: 	}
-002D88         ?C0077?KEYSCAN:
-002D88 904E88            MOV     DPTR,#i
-002D8B E0                MOVX    A,@DPTR
-002D8C 04                INC     A
-002D8D F0                MOVX    @DPTR,A
-002D8E 81AE              AJMP    ?C0075?KEYSCAN
-002D90         ?C0076?KEYSCAN:
+002D7E         ?C0077?KEYSCAN:
+002D7E 904E88            MOV     DPTR,#i
+002D81 E0                MOVX    A,@DPTR
+002D82 04                INC     A
+002D83 F0                MOVX    @DPTR,A
+002D84 81A4              AJMP    ?C0075?KEYSCAN
+002D86         ?C0076?KEYSCAN:
   388: 	
   389: 	if((mult_key_status == KEY_RELEASE) && (standard_key_release_flag == 1))
-002D90 904E4B            MOV     DPTR,#mult_key_status
-002D93 E0                MOVX    A,@DPTR
-002D94 B4030A            CJNE    A,#03H,?C0088?KEYSCAN
-002D97 904DDF            MOV     DPTR,#standard_key_release_flag
-002D9A E0                MOVX    A,@DPTR
-002D9B B40103            CJNE    A,#01H,?C0088?KEYSCAN
+002D86 904E4B            MOV     DPTR,#mult_key_status
+002D89 E0                MOVX    A,@DPTR
+002D8A B4030A            CJNE    A,#03H,?C0088?KEYSCAN
+002D8D 904DDF            MOV     DPTR,#standard_key_release_flag
+002D90 E0                MOVX    A,@DPTR
+002D91 B40103            CJNE    A,#01H,?C0088?KEYSCAN
   390: 	{
   391: 		standard_key_release_flag = 2;		//media key and standard key  release the same time
-002D9E 7402              MOV     A,#02H
-002DA0 F0                MOVX    @DPTR,A
+002D94 7402              MOV     A,#02H
+002D96 F0                MOVX    @DPTR,A
   392: 	}
-002DA1         ?C0088?KEYSCAN:
+002D97         ?C0088?KEYSCAN:
   393: 
   394: 	
   395: 	if (flag || standard_key_release_flag == 2) 
-002DA1 904E8C            MOV     DPTR,#flag
-002DA4 E0                MOVX    A,@DPTR
-002DA5 7007              JNZ     ?C0090?KEYSCAN
-002DA7 904DDF            MOV     DPTR,#standard_key_release_flag
-002DAA E0                MOVX    A,@DPTR
-002DAB B40207            CJNE    A,#02H,?C0089?KEYSCAN
-002DAE         ?C0090?KEYSCAN:
+002D97 904E8C            MOV     DPTR,#flag
+002D9A E0                MOVX    A,@DPTR
+002D9B 7007              JNZ     ?C0090?KEYSCAN
+002D9D 904DDF            MOV     DPTR,#standard_key_release_flag
+002DA0 E0                MOVX    A,@DPTR
+002DA1 B40207            CJNE    A,#02H,?C0089?KEYSCAN
+002DA4         ?C0090?KEYSCAN:
   396: 	{
   397: 		return &ksEvtPool;
-002DAE 7B01              MOV     R3,#01H
-002DB0 7A4E              MOV     R2,#HIGH ksEvtPool
-002DB2 79A4              MOV     R1,#LOW ksEvtPool
-002DB4 22                RET     
+002DA4 7B01              MOV     R3,#01H
+002DA6 7A4E              MOV     R2,#HIGH ksEvtPool
+002DA8 79A4              MOV     R1,#LOW ksEvtPool
+002DAA 22                RET     
   398: 	}
-002DB5         ?C0089?KEYSCAN:
+002DAB         ?C0089?KEYSCAN:
   399: 	else
   400: 	{
   401: 		return NULL;
-002DB5 7B00              MOV     R3,#00H
-002DB7 7A00              MOV     R2,#00H
-002DB9 7900              MOV     R1,#00H
+002DAB 7B00              MOV     R3,#00H
+002DAD 7A00              MOV     R2,#00H
+002DAF 7900              MOV     R1,#00H
   402: 	}
   403: 	
   404: 
   405: }
-002DBB 22                RET     
+002DB1 22                RET     
 ----- FUNCTION KS_GetCurrentEvt (END) -------
 
 
@@ -8689,23 +8679,23 @@
    26: 	unsigned char c;
    27: 	for (c = 0; v; c++) {
 ;---- Variable 'c' assigned to Register 'R6' ----
-002DBC E4                CLR     A
-002DBD FE                MOV     R6,A
-002DBE         ?C0001?KEYSCAN:
-002DBE EF                MOV     A,R7
-002DBF 6006              JZ      ?C0002?KEYSCAN
+002DB2 E4                CLR     A
+002DB3 FE                MOV     R6,A
+002DB4         ?C0001?KEYSCAN:
+002DB4 EF                MOV     A,R7
+002DB5 6006              JZ      ?C0002?KEYSCAN
    28:     	v &= v - 1;
-002DC1 14                DEC     A
-002DC2 5F                ANL     A,R7
-002DC3 FF                MOV     R7,A
+002DB7 14                DEC     A
+002DB8 5F                ANL     A,R7
+002DB9 FF                MOV     R7,A
    29:     }
-002DC4 0E                INC     R6
-002DC5 80F7              SJMP    ?C0001?KEYSCAN
-002DC7         ?C0002?KEYSCAN:
+002DBA 0E                INC     R6
+002DBB 80F7              SJMP    ?C0001?KEYSCAN
+002DBD         ?C0002?KEYSCAN:
    30:     return c;
-002DC7 AF06              MOV     R7,AR6
+002DBD AF06              MOV     R7,AR6
    31: }
-002DC9 22                RET     
+002DBF 22                RET     
 ----- FUNCTION _bit_count (END) -------
 
 
@@ -8713,112 +8703,112 @@
  FILE: 'keyscan.c'
   280: byte array_is_empty(byte * str1,byte len)
   281: {
-002DCA 904EEB            MOV     DPTR,#str1
-002DCD EB                MOV     A,R3
-002DCE F0                MOVX    @DPTR,A
-002DCF A3                INC     DPTR
-002DD0 EA                MOV     A,R2
-002DD1 F0                MOVX    @DPTR,A
-002DD2 A3                INC     DPTR
-002DD3 E9                MOV     A,R1
-002DD4 F0                MOVX    @DPTR,A
+002DC0 904EEB            MOV     DPTR,#str1
+002DC3 EB                MOV     A,R3
+002DC4 F0                MOVX    @DPTR,A
+002DC5 A3                INC     DPTR
+002DC6 EA                MOV     A,R2
+002DC7 F0                MOVX    @DPTR,A
+002DC8 A3                INC     DPTR
+002DC9 E9                MOV     A,R1
+002DCA F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R5' ----
   282: 	byte i;
   283: 	for (i=0;i < len;i++)
 ;---- Variable 'i' assigned to Register 'R7' ----
-002DD5 E4                CLR     A
-002DD6 FF                MOV     R7,A
-002DD7         ?C0054?KEYSCAN:
-002DD7 EF                MOV     A,R7
-002DD8 C3                CLR     C
-002DD9 9D                SUBB    A,R5
-002DDA 501B              JNC     ?C0055?KEYSCAN
+002DCB E4                CLR     A
+002DCC FF                MOV     R7,A
+002DCD         ?C0054?KEYSCAN:
+002DCD EF                MOV     A,R7
+002DCE C3                CLR     C
+002DCF 9D                SUBB    A,R5
+002DD0 501B              JNC     ?C0055?KEYSCAN
   284: 	{
   285: 		if (str1[i] != 0)
-002DDC 904EEB            MOV     DPTR,#str1
-002DDF E0                MOVX    A,@DPTR
-002DE0 FB                MOV     R3,A
-002DE1 A3                INC     DPTR
-002DE2 E0                MOVX    A,@DPTR
-002DE3 FA                MOV     R2,A
-002DE4 A3                INC     DPTR
-002DE5 E0                MOVX    A,@DPTR
-002DE6 F9                MOV     R1,A
-002DE7 8F82              MOV     DPL,R7
-002DE9 758300            MOV     DPH,#00H
-002DEC 1203CF            LCALL   ?C?CLDOPTR
-002DEF 6003              JZ      ?C0056?KEYSCAN
+002DD2 904EEB            MOV     DPTR,#str1
+002DD5 E0                MOVX    A,@DPTR
+002DD6 FB                MOV     R3,A
+002DD7 A3                INC     DPTR
+002DD8 E0                MOVX    A,@DPTR
+002DD9 FA                MOV     R2,A
+002DDA A3                INC     DPTR
+002DDB E0                MOVX    A,@DPTR
+002DDC F9                MOV     R1,A
+002DDD 8F82              MOV     DPL,R7
+002DDF 758300            MOV     DPH,#00H
+002DE2 1203CF            LCALL   ?C?CLDOPTR
+002DE5 6003              JZ      ?C0056?KEYSCAN
   286: 			return 0x00;
-002DF1 7F00              MOV     R7,#00H
-002DF3 22                RET     
+002DE7 7F00              MOV     R7,#00H
+002DE9 22                RET     
   287: 	}
-002DF4         ?C0056?KEYSCAN:
-002DF4 0F                INC     R7
-002DF5 80E0              SJMP    ?C0054?KEYSCAN
-002DF7         ?C0055?KEYSCAN:
+002DEA         ?C0056?KEYSCAN:
+002DEA 0F                INC     R7
+002DEB 80E0              SJMP    ?C0054?KEYSCAN
+002DED         ?C0055?KEYSCAN:
   288: 	return 0x01;
-002DF7 7F01              MOV     R7,#01H
+002DED 7F01              MOV     R7,#01H
   289: }
-002DF9 22                RET     
+002DEF 22                RET     
 ----- FUNCTION _array_is_empty (END) -------
 
 
 ----- FUNCTION _compare_str (BEGIN) -----
-002DFA 904EAB            MOV     DPTR,#str1
-002DFD EB                MOV     A,R3
-002DFE F0                MOVX    @DPTR,A
-002DFF A3                INC     DPTR
-002E00 EA                MOV     A,R2
-002E01 F0                MOVX    @DPTR,A
-002E02 A3                INC     DPTR
-002E03 E9                MOV     A,R1
-002E04 F0                MOVX    @DPTR,A
+002DF0 904EAB            MOV     DPTR,#str1
+002DF3 EB                MOV     A,R3
+002DF4 F0                MOVX    @DPTR,A
+002DF5 A3                INC     DPTR
+002DF6 EA                MOV     A,R2
+002DF7 F0                MOVX    @DPTR,A
+002DF8 A3                INC     DPTR
+002DF9 E9                MOV     A,R1
+002DFA F0                MOVX    @DPTR,A
 ;---- Variable 'i' assigned to Register 'R7' ----
-002E05 E4                CLR     A
-002E06 FF                MOV     R7,A
-002E07         ?C0021?UTILITIES:
-002E07 904EB1            MOV     DPTR,#len
+002DFB E4                CLR     A
+002DFC FF                MOV     R7,A
+002DFD         ?C0021?UTILITIES:
+002DFD 904EB1            MOV     DPTR,#len
+002E00 E0                MOVX    A,@DPTR
+002E01 FE                MOV     R6,A
+002E02 EF                MOV     A,R7
+002E03 C3                CLR     C
+002E04 9E                SUBB    A,R6
+002E05 5030              JNC     ?C0022?UTILITIES
+002E07 904EAE            MOV     DPTR,#str2
 002E0A E0                MOVX    A,@DPTR
-002E0B FE                MOV     R6,A
-002E0C EF                MOV     A,R7
-002E0D C3                CLR     C
-002E0E 9E                SUBB    A,R6
-002E0F 5030              JNC     ?C0022?UTILITIES
-002E11 904EAE            MOV     DPTR,#str2
-002E14 E0                MOVX    A,@DPTR
-002E15 FB                MOV     R3,A
-002E16 A3                INC     DPTR
-002E17 E0                MOVX    A,@DPTR
-002E18 FA                MOV     R2,A
-002E19 A3                INC     DPTR
-002E1A E0                MOVX    A,@DPTR
-002E1B F9                MOV     R1,A
-002E1C 8F82              MOV     DPL,R7
-002E1E 758300            MOV     DPH,#00H
-002E21 1203CF            LCALL   ?C?CLDOPTR
-002E24 FE                MOV     R6,A
-002E25 904EAB            MOV     DPTR,#str1
-002E28 E0                MOVX    A,@DPTR
-002E29 FB                MOV     R3,A
-002E2A A3                INC     DPTR
-002E2B E0                MOVX    A,@DPTR
-002E2C FA                MOV     R2,A
-002E2D A3                INC     DPTR
-002E2E E0                MOVX    A,@DPTR
-002E2F F9                MOV     R1,A
-002E30 8F82              MOV     DPL,R7
-002E32 758300            MOV     DPH,#00H
-002E35 1203CF            LCALL   ?C?CLDOPTR
-002E38 6E                XRL     A,R6
-002E39 6003              JZ      ?C0023?UTILITIES
-002E3B 7F00              MOV     R7,#00H
-002E3D 22                RET     
-002E3E         ?C0023?UTILITIES:
-002E3E 0F                INC     R7
-002E3F 80C6              SJMP    ?C0021?UTILITIES
-002E41         ?C0022?UTILITIES:
-002E41 7F01              MOV     R7,#01H
-002E43 22                RET     
+002E0B FB                MOV     R3,A
+002E0C A3                INC     DPTR
+002E0D E0                MOVX    A,@DPTR
+002E0E FA                MOV     R2,A
+002E0F A3                INC     DPTR
+002E10 E0                MOVX    A,@DPTR
+002E11 F9                MOV     R1,A
+002E12 8F82              MOV     DPL,R7
+002E14 758300            MOV     DPH,#00H
+002E17 1203CF            LCALL   ?C?CLDOPTR
+002E1A FE                MOV     R6,A
+002E1B 904EAB            MOV     DPTR,#str1
+002E1E E0                MOVX    A,@DPTR
+002E1F FB                MOV     R3,A
+002E20 A3                INC     DPTR
+002E21 E0                MOVX    A,@DPTR
+002E22 FA                MOV     R2,A
+002E23 A3                INC     DPTR
+002E24 E0                MOVX    A,@DPTR
+002E25 F9                MOV     R1,A
+002E26 8F82              MOV     DPL,R7
+002E28 758300            MOV     DPH,#00H
+002E2B 1203CF            LCALL   ?C?CLDOPTR
+002E2E 6E                XRL     A,R6
+002E2F 6003              JZ      ?C0023?UTILITIES
+002E31 7F00              MOV     R7,#00H
+002E33 22                RET     
+002E34         ?C0023?UTILITIES:
+002E34 0F                INC     R7
+002E35 80C6              SJMP    ?C0021?UTILITIES
+002E37         ?C0022?UTILITIES:
+002E37 7F01              MOV     R7,#01H
+002E39 22                RET     
 ----- FUNCTION _compare_str (END) -------
 
 
@@ -8830,41 +8820,41 @@
    37: 	byte i = 0;
    38: 
 ;---- Variable 'i' assigned to Register 'R6' ----
-002E44 E4                CLR     A
-002E45 FE                MOV     R6,A
+002E3A E4                CLR     A
+002E3B FE                MOV     R6,A
    39: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
-002E46 EF                MOV     A,R7
-002E47 C3                CLR     C
-002E48 94E0              SUBB    A,#0E0H
-002E4A 4020              JC      ?C0005?KEYSCAN
-002E4C EF                MOV     A,R7
-002E4D D3                SETB    C
-002E4E 94E7              SUBB    A,#0E7H
-002E50 501A              JNC     ?C0005?KEYSCAN
+002E3C EF                MOV     A,R7
+002E3D C3                CLR     C
+002E3E 94E0              SUBB    A,#0E0H
+002E40 4020              JC      ?C0005?KEYSCAN
+002E42 EF                MOV     A,R7
+002E43 D3                SETB    C
+002E44 94E7              SUBB    A,#0E7H
+002E46 501A              JNC     ?C0005?KEYSCAN
    40: 	{
    41: 		ksEvtPool.standardSel  |=  0x01 << (key & 0x07);
-002E52 904EA4            MOV     DPTR,#ksEvtPool
-002E55 E0                MOVX    A,@DPTR
-002E56 FE                MOV     R6,A
-002E57 EF                MOV     A,R7
-002E58 5407              ANL     A,#07H
-002E5A FF                MOV     R7,A
-002E5B 7401              MOV     A,#01H
-002E5D A807              MOV     R0,AR7
-002E5F 08                INC     R0
-002E60 8002              SJMP    ?C0093?KEYSCAN
-002E62         ?C0092?KEYSCAN:
-002E62 C3                CLR     C
-002E63 33                RLC     A
-002E64         ?C0093?KEYSCAN:
-002E64 D8FC              DJNZ    R0,?C0092?KEYSCAN
-002E66 4E                ORL     A,R6
-002E67 904EA4            MOV     DPTR,#ksEvtPool
-002E6A F0                MOVX    @DPTR,A
-002E6B 22                RET     
+002E48 904EA4            MOV     DPTR,#ksEvtPool
+002E4B E0                MOVX    A,@DPTR
+002E4C FE                MOV     R6,A
+002E4D EF                MOV     A,R7
+002E4E 5407              ANL     A,#07H
+002E50 FF                MOV     R7,A
+002E51 7401              MOV     A,#01H
+002E53 A807              MOV     R0,AR7
+002E55 08                INC     R0
+002E56 8002              SJMP    ?C0093?KEYSCAN
+002E58         ?C0092?KEYSCAN:
+002E58 C3                CLR     C
+002E59 33                RLC     A
+002E5A         ?C0093?KEYSCAN:
+002E5A D8FC              DJNZ    R0,?C0092?KEYSCAN
+002E5C 4E                ORL     A,R6
+002E5D 904EA4            MOV     DPTR,#ksEvtPool
+002E60 F0                MOVX    @DPTR,A
+002E61 22                RET     
    42: 		return;
    43: 	}
-002E6C         ?C0005?KEYSCAN:
+002E62         ?C0005?KEYSCAN:
    44: /*
    45: 
    46: 	if (key == HID_KEY_RIGHT_GUI)
@@ -8911,52 +8901,52 @@
    87: 	//special key
    88: 
    89: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
-002E6C E4                CLR     A
-002E6D FE                MOV     R6,A
-002E6E         ?C0007?KEYSCAN:
+002E62 E4                CLR     A
+002E63 FE                MOV     R6,A
+002E64         ?C0007?KEYSCAN:
    90: 	{
    91: 		if (ksEvtPool.ksPool[i] == key)
-002E6E 74A5              MOV     A,#LOW ksEvtPool+01H
-002E70 2E                ADD     A,R6
-002E71 F582              MOV     DPL,A
-002E73 E4                CLR     A
-002E74 344E              ADDC    A,#HIGH ksEvtPool+01H
-002E76 F583              MOV     DPH,A
-002E78 E0                MOVX    A,@DPTR
-002E79 FD                MOV     R5,A
-002E7A 6F                XRL     A,R7
-002E7B 601C              JZ      ?C0006?KEYSCAN
+002E64 74A5              MOV     A,#LOW ksEvtPool+01H
+002E66 2E                ADD     A,R6
+002E67 F582              MOV     DPL,A
+002E69 E4                CLR     A
+002E6A 344E              ADDC    A,#HIGH ksEvtPool+01H
+002E6C F583              MOV     DPH,A
+002E6E E0                MOVX    A,@DPTR
+002E6F FD                MOV     R5,A
+002E70 6F                XRL     A,R7
+002E71 601C              JZ      ?C0006?KEYSCAN
    92: 			break;
-002E7D         ?C0010?KEYSCAN:
+002E73         ?C0010?KEYSCAN:
    93: 		if (ksEvtPool.ksPool[i] == 0) 
-002E7D ED                MOV     A,R5
-002E7E 7014              JNZ     ?C0009?KEYSCAN
+002E73 ED                MOV     A,R5
+002E74 7014              JNZ     ?C0009?KEYSCAN
    94: 		{
    95: 			if(mult_key_value != key)
-002E80 904DED            MOV     DPTR,#mult_key_value
-002E83 E0                MOVX    A,@DPTR
-002E84 6F                XRL     A,R7
-002E85 6012              JZ      ?C0006?KEYSCAN
+002E76 904DED            MOV     DPTR,#mult_key_value
+002E79 E0                MOVX    A,@DPTR
+002E7A 6F                XRL     A,R7
+002E7B 6012              JZ      ?C0006?KEYSCAN
    96: 				ksEvtPool.ksPool[i] = key;
-002E87 74A5              MOV     A,#LOW ksEvtPool+01H
-002E89 2E                ADD     A,R6
-002E8A F582              MOV     DPL,A
-002E8C E4                CLR     A
-002E8D 344E              ADDC    A,#HIGH ksEvtPool+01H
-002E8F F583              MOV     DPH,A
-002E91 EF                MOV     A,R7
-002E92 F0                MOVX    @DPTR,A
+002E7D 74A5              MOV     A,#LOW ksEvtPool+01H
+002E7F 2E                ADD     A,R6
+002E80 F582              MOV     DPL,A
+002E82 E4                CLR     A
+002E83 344E              ADDC    A,#HIGH ksEvtPool+01H
+002E85 F583              MOV     DPH,A
+002E87 EF                MOV     A,R7
+002E88 F0                MOVX    @DPTR,A
    97: 			break;
-002E93 22                RET     
+002E89 22                RET     
    98: 		}
    99: 	}
-002E94         ?C0009?KEYSCAN:
-002E94 0E                INC     R6
-002E95 EE                MOV     A,R6
-002E96 B406D5            CJNE    A,#06H,?C0007?KEYSCAN
+002E8A         ?C0009?KEYSCAN:
+002E8A 0E                INC     R6
+002E8B EE                MOV     A,R6
+002E8C B406D5            CJNE    A,#06H,?C0007?KEYSCAN
   100: }
-002E99         ?C0006?KEYSCAN:
-002E99 22                RET     
+002E8F         ?C0006?KEYSCAN:
+002E8F 22                RET     
 ----- FUNCTION _keyIn (END) -------
 
 
@@ -8968,75 +8958,75 @@
   104: 	byte i = 0 ;
   105: 	byte found = 0;
 ;---- Variable 'i' assigned to Register 'R6' ----
-002E9A E4                CLR     A
-002E9B FE                MOV     R6,A
+002E90 E4                CLR     A
+002E91 FE                MOV     R6,A
   106: 
 ;---- Variable 'found' assigned to Register 'R5' ----
-002E9C FD                MOV     R5,A
+002E92 FD                MOV     R5,A
   107: 	if ((key &0xF0) == 0xf0 || (key &0xD0) == 0xD0)
-002E9D EF                MOV     A,R7
-002E9E 54F0              ANL     A,#0F0H
-002EA0 64F0              XRL     A,#0F0H
-002EA2 6007              JZ      ?C0014?KEYSCAN
-002EA4 EF                MOV     A,R7
-002EA5 54D0              ANL     A,#0D0H
-002EA7 FC                MOV     R4,A
-002EA8 BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
-002EAB         ?C0014?KEYSCAN:
+002E93 EF                MOV     A,R7
+002E94 54F0              ANL     A,#0F0H
+002E96 64F0              XRL     A,#0F0H
+002E98 6007              JZ      ?C0014?KEYSCAN
+002E9A EF                MOV     A,R7
+002E9B 54D0              ANL     A,#0D0H
+002E9D FC                MOV     R4,A
+002E9E BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
+002EA1         ?C0014?KEYSCAN:
   108: 	{
   109: 		if(mult_key_status == KEY_WAIT_RELEASE)
-002EAB 904E4B            MOV     DPTR,#mult_key_status
-002EAE E0                MOVX    A,@DPTR
-002EAF B4020B            CJNE    A,#02H,?C0016?KEYSCAN
+002EA1 904E4B            MOV     DPTR,#mult_key_status
+002EA4 E0                MOVX    A,@DPTR
+002EA5 B4020B            CJNE    A,#02H,?C0016?KEYSCAN
   110: 		{
   111: 			mult_key_status = KEY_RELEASE;
-002EB2 7403              MOV     A,#03H
-002EB4 F0                MOVX    @DPTR,A
+002EA8 7403              MOV     A,#03H
+002EAA F0                MOVX    @DPTR,A
   112: 		}
   113: 	}
-002EB5 8006              SJMP    ?C0016?KEYSCAN
-002EB7         ?C0013?KEYSCAN:
+002EAB 8006              SJMP    ?C0016?KEYSCAN
+002EAD         ?C0013?KEYSCAN:
   114: 	else
   115: 		standard_key_release_flag = 1;
-002EB7 904DDF            MOV     DPTR,#standard_key_release_flag
-002EBA 7401              MOV     A,#01H
-002EBC F0                MOVX    @DPTR,A
-002EBD         ?C0016?KEYSCAN:
+002EAD 904DDF            MOV     DPTR,#standard_key_release_flag
+002EB0 7401              MOV     A,#01H
+002EB2 F0                MOVX    @DPTR,A
+002EB3         ?C0016?KEYSCAN:
   116: 
   117: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
-002EBD EF                MOV     A,R7
-002EBE C3                CLR     C
-002EBF 94E0              SUBB    A,#0E0H
-002EC1 4021              JC      ?C0017?KEYSCAN
-002EC3 EF                MOV     A,R7
-002EC4 D3                SETB    C
-002EC5 94E7              SUBB    A,#0E7H
-002EC7 501B              JNC     ?C0017?KEYSCAN
+002EB3 EF                MOV     A,R7
+002EB4 C3                CLR     C
+002EB5 94E0              SUBB    A,#0E0H
+002EB7 4021              JC      ?C0017?KEYSCAN
+002EB9 EF                MOV     A,R7
+002EBA D3                SETB    C
+002EBB 94E7              SUBB    A,#0E7H
+002EBD 501B              JNC     ?C0017?KEYSCAN
   118: 	{
   119: 		ksEvtPool.standardSel  &= ~(0x01 << (key & 0x07));
-002EC9 904EA4            MOV     DPTR,#ksEvtPool
-002ECC E0                MOVX    A,@DPTR
-002ECD FE                MOV     R6,A
-002ECE EF                MOV     A,R7
-002ECF 5407              ANL     A,#07H
-002ED1 FF                MOV     R7,A
-002ED2 7401              MOV     A,#01H
-002ED4 A807              MOV     R0,AR7
-002ED6 08                INC     R0
-002ED7 8002              SJMP    ?C0095?KEYSCAN
-002ED9         ?C0094?KEYSCAN:
-002ED9 C3                CLR     C
-002EDA 33                RLC     A
-002EDB         ?C0095?KEYSCAN:
-002EDB D8FC              DJNZ    R0,?C0094?KEYSCAN
-002EDD F4                CPL     A
-002EDE 5E                ANL     A,R6
-002EDF 904EA4            MOV     DPTR,#ksEvtPool
-002EE2 F0                MOVX    @DPTR,A
-002EE3 22                RET     
+002EBF 904EA4            MOV     DPTR,#ksEvtPool
+002EC2 E0                MOVX    A,@DPTR
+002EC3 FE                MOV     R6,A
+002EC4 EF                MOV     A,R7
+002EC5 5407              ANL     A,#07H
+002EC7 FF                MOV     R7,A
+002EC8 7401              MOV     A,#01H
+002ECA A807              MOV     R0,AR7
+002ECC 08                INC     R0
+002ECD 8002              SJMP    ?C0095?KEYSCAN
+002ECF         ?C0094?KEYSCAN:
+002ECF C3                CLR     C
+002ED0 33                RLC     A
+002ED1         ?C0095?KEYSCAN:
+002ED1 D8FC              DJNZ    R0,?C0094?KEYSCAN
+002ED3 F4                CPL     A
+002ED4 5E                ANL     A,R6
+002ED5 904EA4            MOV     DPTR,#ksEvtPool
+002ED8 F0                MOVX    @DPTR,A
+002ED9 22                RET     
   120: 		return;
   121: 	}
-002EE4         ?C0017?KEYSCAN:
+002EDA         ?C0017?KEYSCAN:
   122: 	
   123: 
   124: /*
@@ -9082,94 +9072,94 @@
   164: 	}
   165: */	
   166: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
-002EE4 E4                CLR     A
-002EE5 FE                MOV     R6,A
-002EE6         ?C0019?KEYSCAN:
+002EDA E4                CLR     A
+002EDB FE                MOV     R6,A
+002EDC         ?C0019?KEYSCAN:
   167: 	{
   168: 		if (found == 0) 
-002EE6 ED                MOV     A,R5
-002EE7 7021              JNZ     ?C0022?KEYSCAN
+002EDC ED                MOV     A,R5
+002EDD 7021              JNZ     ?C0022?KEYSCAN
   169: 		{
   170: 			if (ksEvtPool.ksPool[i] == key) {
-002EE9 74A5              MOV     A,#LOW ksEvtPool+01H
-002EEB 2E                ADD     A,R6
-002EEC F582              MOV     DPL,A
-002EEE E4                CLR     A
-002EEF 344E              ADDC    A,#HIGH ksEvtPool+01H
-002EF1 F583              MOV     DPH,A
-002EF3 E0                MOVX    A,@DPTR
-002EF4 6F                XRL     A,R7
-002EF5 7047              JNZ     ?C0021?KEYSCAN
+002EDF 74A5              MOV     A,#LOW ksEvtPool+01H
+002EE1 2E                ADD     A,R6
+002EE2 F582              MOV     DPL,A
+002EE4 E4                CLR     A
+002EE5 344E              ADDC    A,#HIGH ksEvtPool+01H
+002EE7 F583              MOV     DPH,A
+002EE9 E0                MOVX    A,@DPTR
+002EEA 6F                XRL     A,R7
+002EEB 7047              JNZ     ?C0021?KEYSCAN
   171: 				if (i == KS_BUFF_POLL_LEN-1) {
-002EF7 EE                MOV     A,R6
-002EF8 B4050B            CJNE    A,#05H,?C0024?KEYSCAN
+002EED EE                MOV     A,R6
+002EEE B4050B            CJNE    A,#05H,?C0024?KEYSCAN
   172: 					ksEvtPool.ksPool[i] = 0;
-002EFB 24A5              ADD     A,#LOW ksEvtPool+01H
-002EFD F582              MOV     DPL,A
-002EFF E4                CLR     A
-002F00 344E              ADDC    A,#HIGH ksEvtPool+01H
-002F02 F583              MOV     DPH,A
-002F04 E4                CLR     A
-002F05 F0                MOVX    @DPTR,A
+002EF1 24A5              ADD     A,#LOW ksEvtPool+01H
+002EF3 F582              MOV     DPL,A
+002EF5 E4                CLR     A
+002EF6 344E              ADDC    A,#HIGH ksEvtPool+01H
+002EF8 F583              MOV     DPH,A
+002EFA E4                CLR     A
+002EFB F0                MOVX    @DPTR,A
   173: 				}
-002F06         ?C0024?KEYSCAN:
+002EFC         ?C0024?KEYSCAN:
   174: 				found = 1;
-002F06 7D01              MOV     R5,#01H
+002EFC 7D01              MOV     R5,#01H
   175: 			}
   176: 		}
-002F08 8034              SJMP    ?C0021?KEYSCAN
-002F0A         ?C0022?KEYSCAN:
+002EFE 8034              SJMP    ?C0021?KEYSCAN
+002F00         ?C0022?KEYSCAN:
   177: 		else 
   178: 		{
   179: 			ksEvtPool.ksPool[i-1] = ksEvtPool.ksPool[i];
-002F0A 74A5              MOV     A,#LOW ksEvtPool+01H
-002F0C 2E                ADD     A,R6
-002F0D F582              MOV     DPL,A
-002F0F E4                CLR     A
-002F10 344E              ADDC    A,#HIGH ksEvtPool+01H
-002F12 F583              MOV     DPH,A
-002F14 E0                MOVX    A,@DPTR
-002F15 FC                MOV     R4,A
-002F16 74A4              MOV     A,#LOW ksEvtPool
-002F18 2E                ADD     A,R6
-002F19 F582              MOV     DPL,A
-002F1B E4                CLR     A
-002F1C 344E              ADDC    A,#HIGH ksEvtPool
-002F1E F583              MOV     DPH,A
-002F20 EC                MOV     A,R4
-002F21 F0                MOVX    @DPTR,A
+002F00 74A5              MOV     A,#LOW ksEvtPool+01H
+002F02 2E                ADD     A,R6
+002F03 F582              MOV     DPL,A
+002F05 E4                CLR     A
+002F06 344E              ADDC    A,#HIGH ksEvtPool+01H
+002F08 F583              MOV     DPH,A
+002F0A E0                MOVX    A,@DPTR
+002F0B FC                MOV     R4,A
+002F0C 74A4              MOV     A,#LOW ksEvtPool
+002F0E 2E                ADD     A,R6
+002F0F F582              MOV     DPL,A
+002F11 E4                CLR     A
+002F12 344E              ADDC    A,#HIGH ksEvtPool
+002F14 F583              MOV     DPH,A
+002F16 EC                MOV     A,R4
+002F17 F0                MOVX    @DPTR,A
   180: 			if (ksEvtPool.ksPool[i] == 0)
-002F22 74A5              MOV     A,#LOW ksEvtPool+01H
-002F24 2E                ADD     A,R6
-002F25 F582              MOV     DPL,A
-002F27 E4                CLR     A
-002F28 344E              ADDC    A,#HIGH ksEvtPool+01H
-002F2A F583              MOV     DPH,A
-002F2C E0                MOVX    A,@DPTR
-002F2D 6014              JZ      ?C0018?KEYSCAN
+002F18 74A5              MOV     A,#LOW ksEvtPool+01H
+002F1A 2E                ADD     A,R6
+002F1B F582              MOV     DPL,A
+002F1D E4                CLR     A
+002F1E 344E              ADDC    A,#HIGH ksEvtPool+01H
+002F20 F583              MOV     DPH,A
+002F22 E0                MOVX    A,@DPTR
+002F23 6014              JZ      ?C0018?KEYSCAN
   181: 				break;
-002F2F         ?C0026?KEYSCAN:
+002F25         ?C0026?KEYSCAN:
   182: 			if (i == KS_BUFF_POLL_LEN-1) {
-002F2F EE                MOV     A,R6
-002F30 B4050B            CJNE    A,#05H,?C0021?KEYSCAN
+002F25 EE                MOV     A,R6
+002F26 B4050B            CJNE    A,#05H,?C0021?KEYSCAN
   183: 				ksEvtPool.ksPool[i] = 0;
-002F33 24A5              ADD     A,#LOW ksEvtPool+01H
-002F35 F582              MOV     DPL,A
-002F37 E4                CLR     A
-002F38 344E              ADDC    A,#HIGH ksEvtPool+01H
-002F3A F583              MOV     DPH,A
-002F3C E4                CLR     A
-002F3D F0                MOVX    @DPTR,A
+002F29 24A5              ADD     A,#LOW ksEvtPool+01H
+002F2B F582              MOV     DPL,A
+002F2D E4                CLR     A
+002F2E 344E              ADDC    A,#HIGH ksEvtPool+01H
+002F30 F583              MOV     DPH,A
+002F32 E4                CLR     A
+002F33 F0                MOVX    @DPTR,A
   184: 			}
   185: 		}
   186: 	}
-002F3E         ?C0021?KEYSCAN:
-002F3E 0E                INC     R6
-002F3F EE                MOV     A,R6
-002F40 B406A3            CJNE    A,#06H,?C0019?KEYSCAN
+002F34         ?C0021?KEYSCAN:
+002F34 0E                INC     R6
+002F35 EE                MOV     A,R6
+002F36 B406A3            CJNE    A,#06H,?C0019?KEYSCAN
   187: }
-002F43         ?C0018?KEYSCAN:
-002F43 22                RET     
+002F39         ?C0018?KEYSCAN:
+002F39 22                RET     
 ----- FUNCTION _keyOut (END) -------
 
 
@@ -9180,293 +9170,293 @@
   255: 	byte i = 0;
   256: 	byte j = 0;
 ;---- Variable 'i' assigned to Register 'R7' ----
-002F44 E4                CLR     A
-002F45 FF                MOV     R7,A
+002F3A E4                CLR     A
+002F3B FF                MOV     R7,A
   257: 	byte tgroup = 0;
-002F46 904EE8            MOV     DPTR,#j
-002F49 F0                MOVX    @DPTR,A
+002F3C 904EE8            MOV     DPTR,#j
+002F3F F0                MOVX    @DPTR,A
   258: 	byte tgpionum = 0;
 ;---- Variable 'tgroup' assigned to Register 'R6' ----
-002F4A FE                MOV     R6,A
+002F40 FE                MOV     R6,A
   259: 	byte temp = 0;
 ;---- Variable 'tgpionum' assigned to Register 'R5' ----
-002F4B FD                MOV     R5,A
+002F41 FD                MOV     R5,A
   260: 	byte check = 0;
-002F4C A3                INC     DPTR
-002F4D F0                MOVX    @DPTR,A
+002F42 A3                INC     DPTR
+002F43 F0                MOVX    @DPTR,A
   261: 	for (i=0; col[i]!=0; i++) {
-002F4E A3                INC     DPTR
-002F4F F0                MOVX    @DPTR,A
+002F44 A3                INC     DPTR
+002F45 F0                MOVX    @DPTR,A
   262: 		tgroup = col[i]  >> 3;
-002F50         ?C0043?KEYSCAN:
-002F50 EF                MOV     A,R7
-002F51 900681            MOV     DPTR,#col
-002F54 93                MOVC    A,@A+DPTR
-002F55 607C              JZ      ?C0044?KEYSCAN
+002F46         ?C0043?KEYSCAN:
+002F46 EF                MOV     A,R7
+002F47 900681            MOV     DPTR,#col
+002F4A 93                MOVC    A,@A+DPTR
+002F4B 607C              JZ      ?C0044?KEYSCAN
   263: 		tgpionum = 1 << (col[i] & 7);
-002F57 EF                MOV     A,R7
-002F58 93                MOVC    A,@A+DPTR
-002F59 FD                MOV     R5,A
-002F5A 13                RRC     A
-002F5B 13                RRC     A
-002F5C 13                RRC     A
-002F5D 541F              ANL     A,#01FH
-002F5F FE                MOV     R6,A
+002F4D EF                MOV     A,R7
+002F4E 93                MOVC    A,@A+DPTR
+002F4F FD                MOV     R5,A
+002F50 13                RRC     A
+002F51 13                RRC     A
+002F52 13                RRC     A
+002F53 541F              ANL     A,#01FH
+002F55 FE                MOV     R6,A
   264: 		GET_RAW_KEY_SEL(ksSelMapCurr[i], tgroup, tgpionum);
-002F60 ED                MOV     A,R5
-002F61 5407              ANL     A,#07H
-002F63 FD                MOV     R5,A
-002F64 7401              MOV     A,#01H
-002F66 A805              MOV     R0,AR5
-002F68 08                INC     R0
-002F69 8002              SJMP    ?C0099?KEYSCAN
-002F6B         ?C0098?KEYSCAN:
-002F6B C3                CLR     C
-002F6C 33                RLC     A
-002F6D         ?C0099?KEYSCAN:
-002F6D D8FC              DJNZ    R0,?C0098?KEYSCAN
-002F6F FD                MOV     R5,A
+002F56 ED                MOV     A,R5
+002F57 5407              ANL     A,#07H
+002F59 FD                MOV     R5,A
+002F5A 7401              MOV     A,#01H
+002F5C A805              MOV     R0,AR5
+002F5E 08                INC     R0
+002F5F 8002              SJMP    ?C0099?KEYSCAN
+002F61         ?C0098?KEYSCAN:
+002F61 C3                CLR     C
+002F62 33                RLC     A
+002F63         ?C0099?KEYSCAN:
+002F63 D8FC              DJNZ    R0,?C0098?KEYSCAN
+002F65 FD                MOV     R5,A
   265: 	}
-002F70 EE                MOV     A,R6
-002F71 2478              ADD     A,#078H
-002F73 FB                MOV     R3,A
-002F74 E4                CLR     A
-002F75 3480              ADDC    A,#080H
-002F77 8B82              MOV     DPL,R3
-002F79 F583              MOV     DPH,A
-002F7B E0                MOVX    A,@DPTR
-002F7C FC                MOV     R4,A
-002F7D ED                MOV     A,R5
-002F7E F4                CPL     A
-002F7F FB                MOV     R3,A
-002F80 EC                MOV     A,R4
-002F81 5B                ANL     A,R3
-002F82 F0                MOVX    @DPTR,A
-002F83 EE                MOV     A,R6
-002F84 2470              ADD     A,#070H
-002F86 F582              MOV     DPL,A
-002F88 E4                CLR     A
-002F89 3480              ADDC    A,#080H
-002F8B F583              MOV     DPH,A
-002F8D E0                MOVX    A,@DPTR
-002F8E 4D                ORL     A,R5
-002F8F F0                MOVX    @DPTR,A
-002F90 EE                MOV     A,R6
-002F91 2474              ADD     A,#074H
-002F93 F582              MOV     DPL,A
-002F95 E4                CLR     A
-002F96 3480              ADDC    A,#080H
-002F98 F583              MOV     DPH,A
-002F9A E0                MOVX    A,@DPTR
-002F9B 5B                ANL     A,R3
-002F9C F0                MOVX    @DPTR,A
-002F9D 90811C            MOV     DPTR,#0811CH
-002FA0 E0                MOVX    A,@DPTR
-002FA1 F4                CPL     A
-002FA2 FC                MOV     R4,A
-002FA3 74BC              MOV     A,#LOW ksSelMapCurr
-002FA5 2F                ADD     A,R7
-002FA6 F582              MOV     DPL,A
-002FA8 E4                CLR     A
-002FA9 344D              ADDC    A,#HIGH ksSelMapCurr
-002FAB F583              MOV     DPH,A
-002FAD EC                MOV     A,R4
-002FAE F0                MOVX    @DPTR,A
-002FAF EE                MOV     A,R6
-002FB0 2478              ADD     A,#078H
-002FB2 FB                MOV     R3,A
-002FB3 E4                CLR     A
-002FB4 3480              ADDC    A,#080H
-002FB6 8B82              MOV     DPL,R3
-002FB8 F583              MOV     DPH,A
-002FBA E0                MOVX    A,@DPTR
-002FBB 4D                ORL     A,R5
-002FBC F0                MOVX    @DPTR,A
-002FBD EE                MOV     A,R6
-002FBE 2470              ADD     A,#070H
-002FC0 FB                MOV     R3,A
-002FC1 E4                CLR     A
-002FC2 3480              ADDC    A,#080H
-002FC4 8B82              MOV     DPL,R3
-002FC6 F583              MOV     DPH,A
-002FC8 E0                MOVX    A,@DPTR
-002FC9 FC                MOV     R4,A
-002FCA ED                MOV     A,R5
-002FCB F4                CPL     A
-002FCC FB                MOV     R3,A
-002FCD EC                MOV     A,R4
-002FCE 5B                ANL     A,R3
-002FCF F0                MOVX    @DPTR,A
+002F66 EE                MOV     A,R6
+002F67 2478              ADD     A,#078H
+002F69 FB                MOV     R3,A
+002F6A E4                CLR     A
+002F6B 3480              ADDC    A,#080H
+002F6D 8B82              MOV     DPL,R3
+002F6F F583              MOV     DPH,A
+002F71 E0                MOVX    A,@DPTR
+002F72 FC                MOV     R4,A
+002F73 ED                MOV     A,R5
+002F74 F4                CPL     A
+002F75 FB                MOV     R3,A
+002F76 EC                MOV     A,R4
+002F77 5B                ANL     A,R3
+002F78 F0                MOVX    @DPTR,A
+002F79 EE                MOV     A,R6
+002F7A 2470              ADD     A,#070H
+002F7C F582              MOV     DPL,A
+002F7E E4                CLR     A
+002F7F 3480              ADDC    A,#080H
+002F81 F583              MOV     DPH,A
+002F83 E0                MOVX    A,@DPTR
+002F84 4D                ORL     A,R5
+002F85 F0                MOVX    @DPTR,A
+002F86 EE                MOV     A,R6
+002F87 2474              ADD     A,#074H
+002F89 F582              MOV     DPL,A
+002F8B E4                CLR     A
+002F8C 3480              ADDC    A,#080H
+002F8E F583              MOV     DPH,A
+002F90 E0                MOVX    A,@DPTR
+002F91 5B                ANL     A,R3
+002F92 F0                MOVX    @DPTR,A
+002F93 90811C            MOV     DPTR,#0811CH
+002F96 E0                MOVX    A,@DPTR
+002F97 F4                CPL     A
+002F98 FC                MOV     R4,A
+002F99 74BC              MOV     A,#LOW ksSelMapCurr
+002F9B 2F                ADD     A,R7
+002F9C F582              MOV     DPL,A
+002F9E E4                CLR     A
+002F9F 344D              ADDC    A,#HIGH ksSelMapCurr
+002FA1 F583              MOV     DPH,A
+002FA3 EC                MOV     A,R4
+002FA4 F0                MOVX    @DPTR,A
+002FA5 EE                MOV     A,R6
+002FA6 2478              ADD     A,#078H
+002FA8 FB                MOV     R3,A
+002FA9 E4                CLR     A
+002FAA 3480              ADDC    A,#080H
+002FAC 8B82              MOV     DPL,R3
+002FAE F583              MOV     DPH,A
+002FB0 E0                MOVX    A,@DPTR
+002FB1 4D                ORL     A,R5
+002FB2 F0                MOVX    @DPTR,A
+002FB3 EE                MOV     A,R6
+002FB4 2470              ADD     A,#070H
+002FB6 FB                MOV     R3,A
+002FB7 E4                CLR     A
+002FB8 3480              ADDC    A,#080H
+002FBA 8B82              MOV     DPL,R3
+002FBC F583              MOV     DPH,A
+002FBE E0                MOVX    A,@DPTR
+002FBF FC                MOV     R4,A
+002FC0 ED                MOV     A,R5
+002FC1 F4                CPL     A
+002FC2 FB                MOV     R3,A
+002FC3 EC                MOV     A,R4
+002FC4 5B                ANL     A,R3
+002FC5 F0                MOVX    @DPTR,A
   266: 
-002FD0 0F                INC     R7
-002FD1 E150              AJMP    ?C0043?KEYSCAN
-002FD3         ?C0044?KEYSCAN:
+002FC6 0F                INC     R7
+002FC7 E146              AJMP    ?C0043?KEYSCAN
+002FC9         ?C0044?KEYSCAN:
   267: 	for (i=0; col[i]!=0; i++) {
-002FD3 E4                CLR     A
-002FD4 FF                MOV     R7,A
-002FD5         ?C0046?KEYSCAN:
-002FD5 EF                MOV     A,R7
-002FD6 900681            MOV     DPTR,#col
-002FD9 93                MOVC    A,@A+DPTR
-002FDA 7003              JNZ     $ + 5H
-002FDC 02305C            LJMP    ?C0047?KEYSCAN
+002FC9 E4                CLR     A
+002FCA FF                MOV     R7,A
+002FCB         ?C0046?KEYSCAN:
+002FCB EF                MOV     A,R7
+002FCC 900681            MOV     DPTR,#col
+002FCF 93                MOVC    A,@A+DPTR
+002FD0 7003              JNZ     $ + 5H
+002FD2 023052            LJMP    ?C0047?KEYSCAN
   268: 		tgroup = col[i]  >> 3;
-002FDF EF                MOV     A,R7
-002FE0 93                MOVC    A,@A+DPTR
-002FE1 FD                MOV     R5,A
-002FE2 13                RRC     A
-002FE3 13                RRC     A
-002FE4 13                RRC     A
-002FE5 541F              ANL     A,#01FH
-002FE7 FE                MOV     R6,A
+002FD5 EF                MOV     A,R7
+002FD6 93                MOVC    A,@A+DPTR
+002FD7 FD                MOV     R5,A
+002FD8 13                RRC     A
+002FD9 13                RRC     A
+002FDA 13                RRC     A
+002FDB 541F              ANL     A,#01FH
+002FDD FE                MOV     R6,A
   269: 		tgpionum = 1 << (col[i] & 7);
-002FE8 ED                MOV     A,R5
-002FE9 5407              ANL     A,#07H
-002FEB FD                MOV     R5,A
-002FEC 7401              MOV     A,#01H
-002FEE A805              MOV     R0,AR5
-002FF0 08                INC     R0
-002FF1 8002              SJMP    ?C0101?KEYSCAN
-002FF3         ?C0100?KEYSCAN:
-002FF3 C3                CLR     C
-002FF4 33                RLC     A
-002FF5         ?C0101?KEYSCAN:
-002FF5 D8FC              DJNZ    R0,?C0100?KEYSCAN
-002FF7 FD                MOV     R5,A
+002FDE ED                MOV     A,R5
+002FDF 5407              ANL     A,#07H
+002FE1 FD                MOV     R5,A
+002FE2 7401              MOV     A,#01H
+002FE4 A805              MOV     R0,AR5
+002FE6 08                INC     R0
+002FE7 8002              SJMP    ?C0101?KEYSCAN
+002FE9         ?C0100?KEYSCAN:
+002FE9 C3                CLR     C
+002FEA 33                RLC     A
+002FEB         ?C0101?KEYSCAN:
+002FEB D8FC              DJNZ    R0,?C0100?KEYSCAN
+002FED FD                MOV     R5,A
   270: 		GET_RAW_KEY_SEL(ksSelMapCheck[i], tgroup, tgpionum);
-002FF8 EE                MOV     A,R6
-002FF9 2478              ADD     A,#078H
-002FFB FB                MOV     R3,A
-002FFC E4                CLR     A
-002FFD 3480              ADDC    A,#080H
-002FFF 8B82              MOV     DPL,R3
-003001 F583              MOV     DPH,A
-003003 E0                MOVX    A,@DPTR
-003004 FC                MOV     R4,A
-003005 ED                MOV     A,R5
-003006 F4                CPL     A
-003007 FB                MOV     R3,A
-003008 EC                MOV     A,R4
-003009 5B                ANL     A,R3
-00300A F0                MOVX    @DPTR,A
-00300B EE                MOV     A,R6
-00300C 2470              ADD     A,#070H
-00300E F582              MOV     DPL,A
-003010 E4                CLR     A
-003011 3480              ADDC    A,#080H
-003013 F583              MOV     DPH,A
-003015 E0                MOVX    A,@DPTR
-003016 4D                ORL     A,R5
-003017 F0                MOVX    @DPTR,A
-003018 EE                MOV     A,R6
-003019 2474              ADD     A,#074H
-00301B F582              MOV     DPL,A
-00301D E4                CLR     A
-00301E 3480              ADDC    A,#080H
-003020 F583              MOV     DPH,A
-003022 E0                MOVX    A,@DPTR
-003023 5B                ANL     A,R3
-003024 F0                MOVX    @DPTR,A
-003025 90811C            MOV     DPTR,#0811CH
-003028 E0                MOVX    A,@DPTR
-003029 F4                CPL     A
-00302A FC                MOV     R4,A
-00302B 74A8              MOV     A,#LOW ksSelMapCheck
-00302D 2F                ADD     A,R7
-00302E F582              MOV     DPL,A
-003030 E4                CLR     A
-003031 344D              ADDC    A,#HIGH ksSelMapCheck
-003033 F583              MOV     DPH,A
-003035 EC                MOV     A,R4
-003036 F0                MOVX    @DPTR,A
-003037 EE                MOV     A,R6
-003038 2478              ADD     A,#078H
-00303A FB                MOV     R3,A
-00303B E4                CLR     A
-00303C 3480              ADDC    A,#080H
-00303E 8B82              MOV     DPL,R3
-003040 F583              MOV     DPH,A
-003042 E0                MOVX    A,@DPTR
-003043 4D                ORL     A,R5
-003044 F0                MOVX    @DPTR,A
-003045 EE                MOV     A,R6
-003046 2470              ADD     A,#070H
-003048 FB                MOV     R3,A
-003049 E4                CLR     A
-00304A 3480              ADDC    A,#080H
-00304C 8B82              MOV     DPL,R3
-00304E F583              MOV     DPH,A
-003050 E0                MOVX    A,@DPTR
-003051 FC                MOV     R4,A
-003052 ED                MOV     A,R5
-003053 F4                CPL     A
-003054 FB                MOV     R3,A
-003055 EC                MOV     A,R4
-003056 5B                ANL     A,R3
-003057 F0                MOVX    @DPTR,A
+002FEE EE                MOV     A,R6
+002FEF 2478              ADD     A,#078H
+002FF1 FB                MOV     R3,A
+002FF2 E4                CLR     A
+002FF3 3480              ADDC    A,#080H
+002FF5 8B82              MOV     DPL,R3
+002FF7 F583              MOV     DPH,A
+002FF9 E0                MOVX    A,@DPTR
+002FFA FC                MOV     R4,A
+002FFB ED                MOV     A,R5
+002FFC F4                CPL     A
+002FFD FB                MOV     R3,A
+002FFE EC                MOV     A,R4
+002FFF 5B                ANL     A,R3
+003000 F0                MOVX    @DPTR,A
+003001 EE                MOV     A,R6
+003002 2470              ADD     A,#070H
+003004 F582              MOV     DPL,A
+003006 E4                CLR     A
+003007 3480              ADDC    A,#080H
+003009 F583              MOV     DPH,A
+00300B E0                MOVX    A,@DPTR
+00300C 4D                ORL     A,R5
+00300D F0                MOVX    @DPTR,A
+00300E EE                MOV     A,R6
+00300F 2474              ADD     A,#074H
+003011 F582              MOV     DPL,A
+003013 E4                CLR     A
+003014 3480              ADDC    A,#080H
+003016 F583              MOV     DPH,A
+003018 E0                MOVX    A,@DPTR
+003019 5B                ANL     A,R3
+00301A F0                MOVX    @DPTR,A
+00301B 90811C            MOV     DPTR,#0811CH
+00301E E0                MOVX    A,@DPTR
+00301F F4                CPL     A
+003020 FC                MOV     R4,A
+003021 74A8              MOV     A,#LOW ksSelMapCheck
+003023 2F                ADD     A,R7
+003024 F582              MOV     DPL,A
+003026 E4                CLR     A
+003027 344D              ADDC    A,#HIGH ksSelMapCheck
+003029 F583              MOV     DPH,A
+00302B EC                MOV     A,R4
+00302C F0                MOVX    @DPTR,A
+00302D EE                MOV     A,R6
+00302E 2478              ADD     A,#078H
+003030 FB                MOV     R3,A
+003031 E4                CLR     A
+003032 3480              ADDC    A,#080H
+003034 8B82              MOV     DPL,R3
+003036 F583              MOV     DPH,A
+003038 E0                MOVX    A,@DPTR
+003039 4D                ORL     A,R5
+00303A F0                MOVX    @DPTR,A
+00303B EE                MOV     A,R6
+00303C 2470              ADD     A,#070H
+00303E FB                MOV     R3,A
+00303F E4                CLR     A
+003040 3480              ADDC    A,#080H
+003042 8B82              MOV     DPL,R3
+003044 F583              MOV     DPH,A
+003046 E0                MOVX    A,@DPTR
+003047 FC                MOV     R4,A
+003048 ED                MOV     A,R5
+003049 F4                CPL     A
+00304A FB                MOV     R3,A
+00304B EC                MOV     A,R4
+00304C 5B                ANL     A,R3
+00304D F0                MOVX    @DPTR,A
   271: 	}
-003058 0F                INC     R7
-003059 022FD5            LJMP    ?C0046?KEYSCAN
-00305C         ?C0047?KEYSCAN:
+00304E 0F                INC     R7
+00304F 022FCB            LJMP    ?C0046?KEYSCAN
+003052         ?C0047?KEYSCAN:
   272: 
   273: 	for (i=0; col[i]!=0; i++) {
-00305C E4                CLR     A
-00305D FF                MOV     R7,A
-00305E         ?C0049?KEYSCAN:
-00305E EF                MOV     A,R7
-00305F 900681            MOV     DPTR,#col
-003062 93                MOVC    A,@A+DPTR
-003063 6040              JZ      ?C0053?KEYSCAN
+003052 E4                CLR     A
+003053 FF                MOV     R7,A
+003054         ?C0049?KEYSCAN:
+003054 EF                MOV     A,R7
+003055 900681            MOV     DPTR,#col
+003058 93                MOVC    A,@A+DPTR
+003059 6040              JZ      ?C0053?KEYSCAN
   274: 		if (ksSelMapCheck[i]!=ksSelMapCurr[i]) {
-003065 74BC              MOV     A,#LOW ksSelMapCurr
-003067 2F                ADD     A,R7
-003068 F582              MOV     DPL,A
-00306A E4                CLR     A
-00306B 344D              ADDC    A,#HIGH ksSelMapCurr
-00306D F583              MOV     DPH,A
-00306F E0                MOVX    A,@DPTR
-003070 FE                MOV     R6,A
-003071 74A8              MOV     A,#LOW ksSelMapCheck
-003073 2F                ADD     A,R7
-003074 F582              MOV     DPL,A
-003076 E4                CLR     A
-003077 344D              ADDC    A,#HIGH ksSelMapCheck
-003079 F583              MOV     DPH,A
-00307B E0                MOVX    A,@DPTR
-00307C 6E                XRL     A,R6
-00307D 6023              JZ      ?C0051?KEYSCAN
+00305B 74BC              MOV     A,#LOW ksSelMapCurr
+00305D 2F                ADD     A,R7
+00305E F582              MOV     DPL,A
+003060 E4                CLR     A
+003061 344D              ADDC    A,#HIGH ksSelMapCurr
+003063 F583              MOV     DPH,A
+003065 E0                MOVX    A,@DPTR
+003066 FE                MOV     R6,A
+003067 74A8              MOV     A,#LOW ksSelMapCheck
+003069 2F                ADD     A,R7
+00306A F582              MOV     DPL,A
+00306C E4                CLR     A
+00306D 344D              ADDC    A,#HIGH ksSelMapCheck
+00306F F583              MOV     DPH,A
+003071 E0                MOVX    A,@DPTR
+003072 6E                XRL     A,R6
+003073 6023              JZ      ?C0051?KEYSCAN
   275: 			ksSelMapCurr[i] &= ksSelMapCheck[i];
-00307F 74BC              MOV     A,#LOW ksSelMapCurr
-003081 2F                ADD     A,R7
-003082 F582              MOV     DPL,A
-003084 E4                CLR     A
-003085 344D              ADDC    A,#HIGH ksSelMapCurr
-003087 F583              MOV     DPH,A
-003089 C083              PUSH    DPH
-00308B C082              PUSH    DPL
-00308D E0                MOVX    A,@DPTR
-00308E FE                MOV     R6,A
-00308F 74A8              MOV     A,#LOW ksSelMapCheck
-003091 2F                ADD     A,R7
-003092 F582              MOV     DPL,A
-003094 E4                CLR     A
-003095 344D              ADDC    A,#HIGH ksSelMapCheck
-003097 F583              MOV     DPH,A
-003099 E0                MOVX    A,@DPTR
-00309A FD                MOV     R5,A
-00309B EE                MOV     A,R6
-00309C 5D                ANL     A,R5
-00309D D082              POP     DPL
-00309F D083              POP     DPH
-0030A1 F0                MOVX    @DPTR,A
+003075 74BC              MOV     A,#LOW ksSelMapCurr
+003077 2F                ADD     A,R7
+003078 F582              MOV     DPL,A
+00307A E4                CLR     A
+00307B 344D              ADDC    A,#HIGH ksSelMapCurr
+00307D F583              MOV     DPH,A
+00307F C083              PUSH    DPH
+003081 C082              PUSH    DPL
+003083 E0                MOVX    A,@DPTR
+003084 FE                MOV     R6,A
+003085 74A8              MOV     A,#LOW ksSelMapCheck
+003087 2F                ADD     A,R7
+003088 F582              MOV     DPL,A
+00308A E4                CLR     A
+00308B 344D              ADDC    A,#HIGH ksSelMapCheck
+00308D F583              MOV     DPH,A
+00308F E0                MOVX    A,@DPTR
+003090 FD                MOV     R5,A
+003091 EE                MOV     A,R6
+003092 5D                ANL     A,R5
+003093 D082              POP     DPL
+003095 D083              POP     DPH
+003097 F0                MOVX    @DPTR,A
   276: 		}
   277: 	}
-0030A2         ?C0051?KEYSCAN:
-0030A2 0F                INC     R7
-0030A3 80B9              SJMP    ?C0049?KEYSCAN
+003098         ?C0051?KEYSCAN:
+003098 0F                INC     R7
+003099 80B9              SJMP    ?C0049?KEYSCAN
   278: }
-0030A5         ?C0053?KEYSCAN:
-0030A5 22                RET     
+00309B         ?C0053?KEYSCAN:
+00309B 22                RET     
 ----- FUNCTION KS_ScanMatrix (END) -------
 
 
@@ -9477,57 +9467,57 @@
    17: 
    18: 
    19: 		if(g_variable.current_device_num == 1)
-0030A6 904CC3            MOV     DPTR,#g_variable+04H
-0030A9 E0                MOVX    A,@DPTR
-0030AA B40115            CJNE    A,#01H,?C0002?LED
+00309C 904CC3            MOV     DPTR,#g_variable+04H
+00309F E0                MOVX    A,@DPTR
+0030A0 B40115            CJNE    A,#01H,?C0002?LED
    20: 		{
    21: 			GPIO_Setout(BT_LED_GPIO,LED_ON);
-0030AD D201              SETB    ?_GPIO_Setout?BIT
-0030AF 7F19              MOV     R7,#019H
-0030B1 120EF2            LCALL   _GPIO_Setout
+0030A3 D201              SETB    ?_GPIO_Setout?BIT
+0030A5 7F19              MOV     R7,#019H
+0030A7 120EF2            LCALL   _GPIO_Setout
    22: 			GPIO_Setout(BT2_LED_GPIO,LED_OFF);
-0030B4 C201              CLR     ?_GPIO_Setout?BIT
-0030B6 7F1C              MOV     R7,#01CH
-0030B8 120EF2            LCALL   _GPIO_Setout
+0030AA C201              CLR     ?_GPIO_Setout?BIT
+0030AC 7F1C              MOV     R7,#01CH
+0030AE 120EF2            LCALL   _GPIO_Setout
    23: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_OFF);
-0030BB C201              CLR     ?_GPIO_Setout?BIT
-0030BD 7F1D              MOV     R7,#01DH
-0030BF 020EF2            LJMP    _GPIO_Setout
+0030B1 C201              CLR     ?_GPIO_Setout?BIT
+0030B3 7F1D              MOV     R7,#01DH
+0030B5 020EF2            LJMP    _GPIO_Setout
    24: 		}	
-0030C2         ?C0002?LED:
+0030B8         ?C0002?LED:
    25: 		else if(g_variable.current_device_num == 2)
-0030C2 904CC3            MOV     DPTR,#g_variable+04H
-0030C5 E0                MOVX    A,@DPTR
-0030C6 B40215            CJNE    A,#02H,?C0004?LED
+0030B8 904CC3            MOV     DPTR,#g_variable+04H
+0030BB E0                MOVX    A,@DPTR
+0030BC B40215            CJNE    A,#02H,?C0004?LED
    26: 		{
    27: 			GPIO_Setout(BT_LED_GPIO,LED_OFF);
-0030C9 C201              CLR     ?_GPIO_Setout?BIT
-0030CB 7F19              MOV     R7,#019H
-0030CD 120EF2            LCALL   _GPIO_Setout
+0030BF C201              CLR     ?_GPIO_Setout?BIT
+0030C1 7F19              MOV     R7,#019H
+0030C3 120EF2            LCALL   _GPIO_Setout
    28: 			GPIO_Setout(BT2_LED_GPIO,LED_ON);
-0030D0 D201              SETB    ?_GPIO_Setout?BIT
-0030D2 7F1C              MOV     R7,#01CH
-0030D4 120EF2            LCALL   _GPIO_Setout
+0030C6 D201              SETB    ?_GPIO_Setout?BIT
+0030C8 7F1C              MOV     R7,#01CH
+0030CA 120EF2            LCALL   _GPIO_Setout
    29: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_OFF);
-0030D7 C201              CLR     ?_GPIO_Setout?BIT
-0030D9 7F1D              MOV     R7,#01DH
-0030DB 020EF2            LJMP    _GPIO_Setout
+0030CD C201              CLR     ?_GPIO_Setout?BIT
+0030CF 7F1D              MOV     R7,#01DH
+0030D1 020EF2            LJMP    _GPIO_Setout
    30: 		}
-0030DE         ?C0004?LED:
+0030D4         ?C0004?LED:
    31: 		else
    32: 		{
    33: 			GPIO_Setout(BT_LED_GPIO,LED_OFF);
-0030DE C201              CLR     ?_GPIO_Setout?BIT
-0030E0 7F19              MOV     R7,#019H
-0030E2 120EF2            LCALL   _GPIO_Setout
+0030D4 C201              CLR     ?_GPIO_Setout?BIT
+0030D6 7F19              MOV     R7,#019H
+0030D8 120EF2            LCALL   _GPIO_Setout
    34: 			GPIO_Setout(BT2_LED_GPIO,LED_OFF);
-0030E5 C201              CLR     ?_GPIO_Setout?BIT
-0030E7 7F1C              MOV     R7,#01CH
-0030E9 120EF2            LCALL   _GPIO_Setout
+0030DB C201              CLR     ?_GPIO_Setout?BIT
+0030DD 7F1C              MOV     R7,#01CH
+0030DF 120EF2            LCALL   _GPIO_Setout
    35: 			GPIO_Setout(LOWPOWER_LED_GPIO,LED_ON);
-0030EC D201              SETB    ?_GPIO_Setout?BIT
-0030EE 7F1D              MOV     R7,#01DH
-0030F0 020EF2            LJMP    _GPIO_Setout
+0030E2 D201              SETB    ?_GPIO_Setout?BIT
+0030E4 7F1D              MOV     R7,#01DH
+0030E6 020EF2            LJMP    _GPIO_Setout
    36: 		}
    37: 	
 ----- FUNCTION LED_device_poweron (END) -------
@@ -9539,248 +9529,248 @@
   764: {
   765: 
   766: 	if (g_variable.delay_enter_lpm_timer) 
-0030F3 904CEA            MOV     DPTR,#g_variable+02BH
-0030F6 E0                MOVX    A,@DPTR
-0030F7 6002              JZ      ?C0143?SYS
+0030E9 904CEA            MOV     DPTR,#g_variable+02BH
+0030EC E0                MOVX    A,@DPTR
+0030ED 6002              JZ      ?C0143?SYS
   767: 	{
   768: 		g_variable.delay_enter_lpm_timer --;
-0030F9 14                DEC     A
-0030FA F0                MOVX    @DPTR,A
+0030EF 14                DEC     A
+0030F0 F0                MOVX    @DPTR,A
   769: 	}
-0030FB         ?C0143?SYS:
+0030F1         ?C0143?SYS:
   770: 
   771: 	if(g_variable.recon_delay)
-0030FB 904CEF            MOV     DPTR,#g_variable+030H
-0030FE E0                MOVX    A,@DPTR
-0030FF 6002              JZ      ?C0144?SYS
+0030F1 904CEF            MOV     DPTR,#g_variable+030H
+0030F4 E0                MOVX    A,@DPTR
+0030F5 6002              JZ      ?C0144?SYS
   772: 		g_variable.recon_delay--;
-003101 14                DEC     A
-003102 F0                MOVX    @DPTR,A
-003103         ?C0144?SYS:
+0030F7 14                DEC     A
+0030F8 F0                MOVX    @DPTR,A
+0030F9         ?C0144?SYS:
   773: 
   774: 	if(g_variable.one_key_press_wait_release_timer)
-003103 904CF8            MOV     DPTR,#g_variable+039H
-003106 E0                MOVX    A,@DPTR
-003107 600B              JZ      ?C0145?SYS
+0030F9 904CF8            MOV     DPTR,#g_variable+039H
+0030FC E0                MOVX    A,@DPTR
+0030FD 600B              JZ      ?C0145?SYS
   775: 	{
   776: 		g_variable.one_key_press_wait_release_timer--;
-003109 14                DEC     A
-00310A F0                MOVX    @DPTR,A
+0030FF 14                DEC     A
+003100 F0                MOVX    @DPTR,A
   777: 		if(!g_variable.one_key_press_wait_release_timer)
-00310B E0                MOVX    A,@DPTR
-00310C 7006              JNZ     ?C0145?SYS
+003101 E0                MOVX    A,@DPTR
+003102 7006              JNZ     ?C0145?SYS
   778: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
-00310E 904CF4            MOV     DPTR,#g_variable+035H
-003111 7406              MOV     A,#06H
-003113 F0                MOVX    @DPTR,A
+003104 904CF4            MOV     DPTR,#g_variable+035H
+003107 7406              MOV     A,#06H
+003109 F0                MOVX    @DPTR,A
   779: 	}
-003114         ?C0145?SYS:
+00310A         ?C0145?SYS:
   780: 	
   781: 	if (g_variable.powerOn_timer != 0)
-003114 904CE5            MOV     DPTR,#g_variable+026H
-003117 E0                MOVX    A,@DPTR
-003118 601E              JZ      ?C0147?SYS
+00310A 904CE5            MOV     DPTR,#g_variable+026H
+00310D E0                MOVX    A,@DPTR
+00310E 601E              JZ      ?C0147?SYS
   782: 	{	
   783: 		if(g_variable.pairing_g24_timeout)
-00311A 904CEE            MOV     DPTR,#g_variable+02FH
-00311D E0                MOVX    A,@DPTR
-00311E 6006              JZ      ?C0148?SYS
+003110 904CEE            MOV     DPTR,#g_variable+02FH
+003113 E0                MOVX    A,@DPTR
+003114 6006              JZ      ?C0148?SYS
   784: 		{
   785: 			g_variable.powerOn_timer = 0;
-003120 E4                CLR     A
-003121 904CE5            MOV     DPTR,#g_variable+026H
-003124 F0                MOVX    @DPTR,A
-003125 22                RET     
+003116 E4                CLR     A
+003117 904CE5            MOV     DPTR,#g_variable+026H
+00311A F0                MOVX    @DPTR,A
+00311B 22                RET     
   786: 			return;
   787: 		}
-003126         ?C0148?SYS:
+00311C         ?C0148?SYS:
   788: 		g_variable.powerOn_timer--;
-003126 904CE5            MOV     DPTR,#g_variable+026H
-003129 E0                MOVX    A,@DPTR
-00312A 14                DEC     A
-00312B F0                MOVX    @DPTR,A
+00311C 904CE5            MOV     DPTR,#g_variable+026H
+00311F E0                MOVX    A,@DPTR
+003120 14                DEC     A
+003121 F0                MOVX    @DPTR,A
   789: 		LED_device_poweron();
-00312C 11A6              ACALL   LED_device_poweron
+003122 119C              ACALL   LED_device_poweron
   790: 		if (!g_variable.powerOn_timer)
-00312E 904CE5            MOV     DPTR,#g_variable+026H
-003131 E0                MOVX    A,@DPTR
-003132 7045              JNZ     ?C0151?SYS
+003124 904CE5            MOV     DPTR,#g_variable+026H
+003127 E0                MOVX    A,@DPTR
+003128 7045              JNZ     ?C0151?SYS
   791: 		{
   792: 			LED_device_poweroff();
-003134 31E6              ACALL   LED_device_poweroff
+00312A 31DC              ACALL   LED_device_poweroff
   793: 		}
   794: 	}
-003136 8041              SJMP    ?C0151?SYS
-003138         ?C0147?SYS:
+00312C 8041              SJMP    ?C0151?SYS
+00312E         ?C0147?SYS:
   795: 	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
-003138 904CE9            MOV     DPTR,#g_variable+02AH
-00313B E0                MOVX    A,@DPTR
-00313C 703B              JNZ     ?C0151?SYS
-00313E 904CEE            MOV     DPTR,#g_variable+02FH
-003141 E0                MOVX    A,@DPTR
-003142 7035              JNZ     ?C0151?SYS
+00312E 904CE9            MOV     DPTR,#g_variable+02AH
+003131 E0                MOVX    A,@DPTR
+003132 703B              JNZ     ?C0151?SYS
+003134 904CEE            MOV     DPTR,#g_variable+02FH
+003137 E0                MOVX    A,@DPTR
+003138 7035              JNZ     ?C0151?SYS
   796: 	{
   797: 		if(g_variable.battery_low_led_flash_interval)
-003144 904CE2            MOV     DPTR,#g_variable+023H
-003147 E0                MOVX    A,@DPTR
-003148 602F              JZ      ?C0151?SYS
+00313A 904CE2            MOV     DPTR,#g_variable+023H
+00313D E0                MOVX    A,@DPTR
+00313E 602F              JZ      ?C0151?SYS
   798: 		{
   799: 			g_variable.battery_low_led_flash_interval--;
-00314A 14                DEC     A
-00314B F0                MOVX    @DPTR,A
+003140 14                DEC     A
+003141 F0                MOVX    @DPTR,A
   800: 			if(g_variable.battery_low_led_flash_interval < 4)
-00314C E0                MOVX    A,@DPTR
-00314D FF                MOV     R7,A
-00314E C3                CLR     C
-00314F 9404              SUBB    A,#04H
-003151 5016              JNC     ?C0154?SYS
+003142 E0                MOVX    A,@DPTR
+003143 FF                MOV     R7,A
+003144 C3                CLR     C
+003145 9404              SUBB    A,#04H
+003147 5016              JNC     ?C0154?SYS
   801: 			{
   802: 				if(g_variable.battery_low_led_flash_interval & 0x02)
-003153 EF                MOV     A,R7
-003154 30E109            JNB     ACC.1,?C0155?SYS
+003149 EF                MOV     A,R7
+00314A 30E109            JNB     ACC.1,?C0155?SYS
   803: 				{
   804: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
-003157 D201              SETB    ?_GPIO_Setout?BIT
-003159 7F1D              MOV     R7,#01DH
-00315B 120EF2            LCALL   _GPIO_Setout
+00314D D201              SETB    ?_GPIO_Setout?BIT
+00314F 7F1D              MOV     R7,#01DH
+003151 120EF2            LCALL   _GPIO_Setout
   805: 				}
-00315E 8010              SJMP    ?C0157?SYS
-003160         ?C0155?SYS:
+003154 8010              SJMP    ?C0157?SYS
+003156         ?C0155?SYS:
   806: 				else
   807: 				{
   808: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
-003160 C201              CLR     ?_GPIO_Setout?BIT
-003162 7F1D              MOV     R7,#01DH
-003164 120EF2            LCALL   _GPIO_Setout
+003156 C201              CLR     ?_GPIO_Setout?BIT
+003158 7F1D              MOV     R7,#01DH
+00315A 120EF2            LCALL   _GPIO_Setout
   809: 				}	
   810: 			}
-003167 8007              SJMP    ?C0157?SYS
-003169         ?C0154?SYS:
+00315D 8007              SJMP    ?C0157?SYS
+00315F         ?C0154?SYS:
   811: 			else
   812: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
-003169 C201              CLR     ?_GPIO_Setout?BIT
-00316B 7F1D              MOV     R7,#01DH
-00316D 120EF2            LCALL   _GPIO_Setout
-003170         ?C0157?SYS:
+00315F C201              CLR     ?_GPIO_Setout?BIT
+003161 7F1D              MOV     R7,#01DH
+003163 120EF2            LCALL   _GPIO_Setout
+003166         ?C0157?SYS:
   813: 			if(!g_variable.battery_low_led_flash_interval)
-003170 904CE2            MOV     DPTR,#g_variable+023H
-003173 E0                MOVX    A,@DPTR
-003174 7003              JNZ     ?C0151?SYS
+003166 904CE2            MOV     DPTR,#g_variable+023H
+003169 E0                MOVX    A,@DPTR
+00316A 7003              JNZ     ?C0151?SYS
   814: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-003176 740A              MOV     A,#0AH
-003178 F0                MOVX    @DPTR,A
+00316C 740A              MOV     A,#0AH
+00316E F0                MOVX    @DPTR,A
   815: 		}
   816: 	}
-003179         ?C0151?SYS:
+00316F         ?C0151?SYS:
   817: 	
   818: // The dongle must receive data within 200ms, otherwise it will be forced to lift
   819: 	if(!long_press_flag)
-003179 904DDC            MOV     DPTR,#long_press_flag
-00317C E0                MOVX    A,@DPTR
-00317D 7036              JNZ     ?C0159?SYS
+00316F 904DDC            MOV     DPTR,#long_press_flag
+003172 E0                MOVX    A,@DPTR
+003173 7036              JNZ     ?C0159?SYS
   820: 	{
   821: 		if (repeat_send_24g == 1)
-00317F 904DDD            MOV     DPTR,#repeat_send_24g
-003182 E0                MOVX    A,@DPTR
-003183 6401              XRL     A,#01H
-003185 702E              JNZ     ?C0159?SYS
+003175 904DDD            MOV     DPTR,#repeat_send_24g
+003178 E0                MOVX    A,@DPTR
+003179 6401              XRL     A,#01H
+00317B 702E              JNZ     ?C0159?SYS
   822: 		{
   823: 			g_variable.sleepTimer = 0;	
-003187 904CE3            MOV     DPTR,#g_variable+024H
-00318A F0                MOVX    @DPTR,A
-00318B A3                INC     DPTR
-00318C F0                MOVX    @DPTR,A
+00317D 904CE3            MOV     DPTR,#g_variable+024H
+003180 F0                MOVX    @DPTR,A
+003181 A3                INC     DPTR
+003182 F0                MOVX    @DPTR,A
   824: 			repeat_send_24g = 0;
-00318D 904DDD            MOV     DPTR,#repeat_send_24g
-003190 F0                MOVX    @DPTR,A
+003183 904DDD            MOV     DPTR,#repeat_send_24g
+003186 F0                MOVX    @DPTR,A
   825: 
   826: 			 if (multikey[0] != 0)
-003191 904E4C            MOV     DPTR,#multikey
-003194 E0                MOVX    A,@DPTR
-003195 600D              JZ      ?C0161?SYS
+003187 904E4C            MOV     DPTR,#multikey
+00318A E0                MOVX    A,@DPTR
+00318B 600D              JZ      ?C0161?SYS
   827: 			{
   828: 				IPC_TxHidData(multikey, 3);
-003197 7B01              MOV     R3,#01H
-003199 7A4E              MOV     R2,#HIGH multikey
-00319B 794C              MOV     R1,#LOW multikey
-00319D 7D03              MOV     R5,#03H
-00319F 120C1F            LCALL   _IPC_TxHidData
+00318D 7B01              MOV     R3,#01H
+00318F 7A4E              MOV     R2,#HIGH multikey
+003191 794C              MOV     R1,#LOW multikey
+003193 7D03              MOV     R5,#03H
+003195 120C1F            LCALL   _IPC_TxHidData
   829: 			}
-0031A2 8011              SJMP    ?C0159?SYS
-0031A4         ?C0161?SYS:
+003198 8011              SJMP    ?C0159?SYS
+00319A         ?C0161?SYS:
   830: 			else if (hidBuff[0] != 0)
-0031A4 904800            MOV     DPTR,#hidBuff
-0031A7 E0                MOVX    A,@DPTR
-0031A8 600B              JZ      ?C0159?SYS
+00319A 904800            MOV     DPTR,#hidBuff
+00319D E0                MOVX    A,@DPTR
+00319E 600B              JZ      ?C0159?SYS
   831: 			{
   832: 
   833: 				IPC_TxHidData(hidBuff,9);
-0031AA 7B01              MOV     R3,#01H
-0031AC 7A48              MOV     R2,#HIGH hidBuff
-0031AE 7900              MOV     R1,#LOW hidBuff
-0031B0 7D09              MOV     R5,#09H
-0031B2 120C1F            LCALL   _IPC_TxHidData
+0031A0 7B01              MOV     R3,#01H
+0031A2 7A48              MOV     R2,#HIGH hidBuff
+0031A4 7900              MOV     R1,#LOW hidBuff
+0031A6 7D09              MOV     R5,#09H
+0031A8 120C1F            LCALL   _IPC_TxHidData
   834: 			}
   835: 		}
   836: 	}
-0031B5         ?C0159?SYS:
+0031AB         ?C0159?SYS:
   837: 
   838: 
   839: // ble delay send secutiry request
   840: 	if(ble_send_secutiry_request_timer)
-0031B5 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
-0031B8 E0                MOVX    A,@DPTR
-0031B9 6011              JZ      ?C0164?SYS
+0031AB 904DD4            MOV     DPTR,#ble_send_secutiry_request_timer
+0031AE E0                MOVX    A,@DPTR
+0031AF 6011              JZ      ?C0164?SYS
   841: 	{
   842: 		ble_send_secutiry_request_timer--;
-0031BB E0                MOVX    A,@DPTR
-0031BC 14                DEC     A
-0031BD F0                MOVX    @DPTR,A
+0031B1 E0                MOVX    A,@DPTR
+0031B2 14                DEC     A
+0031B3 F0                MOVX    @DPTR,A
   843: 		if(!ble_send_secutiry_request_timer)
-0031BE E0                MOVX    A,@DPTR
-0031BF 700B              JNZ     ?C0164?SYS
+0031B4 E0                MOVX    A,@DPTR
+0031B5 700B              JNZ     ?C0164?SYS
   844: 		{
   845: 			if(!m_le_send_security_request_flag)
-0031C1 904D3D            MOV     DPTR,#m_le_send_security_request_flag
-0031C4 E0                MOVX    A,@DPTR
-0031C5 7005              JNZ     ?C0164?SYS
+0031B7 904D3D            MOV     DPTR,#m_le_send_security_request_flag
+0031BA E0                MOVX    A,@DPTR
+0031BB 7005              JNZ     ?C0164?SYS
   846: 			{
   847: 				IPC_TxControlCmd(IPC_CMD_LE_SMP_SECURITY_REQUEST);
-0031C7 7F1B              MOV     R7,#01BH
-0031C9 120FC1            LCALL   _IPC_TxControlCmd
+0031BD 7F1B              MOV     R7,#01BH
+0031BF 120FC1            LCALL   _IPC_TxControlCmd
   848: 			}
   849: 		}
   850: 	}
-0031CC         ?C0164?SYS:
+0031C2         ?C0164?SYS:
   851: 
   852: 	if (delayChgInvTimer != 0){
-0031CC 904DE6            MOV     DPTR,#delayChgInvTimer
-0031CF E0                MOVX    A,@DPTR
-0031D0 6013              JZ      ?C0149?SYS
+0031C2 904DE6            MOV     DPTR,#delayChgInvTimer
+0031C5 E0                MOVX    A,@DPTR
+0031C6 6013              JZ      ?C0149?SYS
   853: 		delayChgInvTimer--;
-0031D2 E0                MOVX    A,@DPTR
-0031D3 14                DEC     A
-0031D4 F0                MOVX    @DPTR,A
+0031C8 E0                MOVX    A,@DPTR
+0031C9 14                DEC     A
+0031CA F0                MOVX    @DPTR,A
   854: 		if (delayChgInvTimer == 0)
-0031D5 E0                MOVX    A,@DPTR
-0031D6 700D              JNZ     ?C0149?SYS
+0031CB E0                MOVX    A,@DPTR
+0031CC 700D              JNZ     ?C0149?SYS
   855: 		{
   856: 
   857: 			if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
-0031D8 904CC7            MOV     DPTR,#g_variable+08H
-0031DB E0                MOVX    A,@DPTR
-0031DC B40406            CJNE    A,#04H,?C0149?SYS
+0031CE 904CC7            MOV     DPTR,#g_variable+08H
+0031D1 E0                MOVX    A,@DPTR
+0031D2 B40406            CJNE    A,#04H,?C0149?SYS
   858: 			{
   859: 				kscurrmult = 0x0c;
-0031DF 904213            MOV     DPTR,#kscurrmult
-0031E2 740C              MOV     A,#0CH
-0031E4 F0                MOVX    @DPTR,A
+0031D5 904213            MOV     DPTR,#kscurrmult
+0031D8 740C              MOV     A,#0CH
+0031DA F0                MOVX    @DPTR,A
   860: 			}
   861: 		}
   862: 	}
   863: }
-0031E5         ?C0149?SYS:
-0031E5 22                RET     
+0031DB         ?C0149?SYS:
+0031DB 22                RET     
 ----- FUNCTION kb_cb_Timer100ms (END) -------
 
 
@@ -9790,28 +9780,28 @@
    41: {
    42: 
    43: 	if(g_variable.current_device_num == 1)
-0031E6 904CC3            MOV     DPTR,#g_variable+04H
-0031E9 E0                MOVX    A,@DPTR
-0031EA B40107            CJNE    A,#01H,?C0007?LED
+0031DC 904CC3            MOV     DPTR,#g_variable+04H
+0031DF E0                MOVX    A,@DPTR
+0031E0 B40107            CJNE    A,#01H,?C0007?LED
    44: 		GPIO_Setout(BT_LED_GPIO,LED_OFF);
-0031ED C201              CLR     ?_GPIO_Setout?BIT
-0031EF 7F19              MOV     R7,#019H
-0031F1 020EF2            LJMP    _GPIO_Setout
-0031F4         ?C0007?LED:
+0031E3 C201              CLR     ?_GPIO_Setout?BIT
+0031E5 7F19              MOV     R7,#019H
+0031E7 020EF2            LJMP    _GPIO_Setout
+0031EA         ?C0007?LED:
    45: 	else if(g_variable.current_device_num == 2)
-0031F4 904CC3            MOV     DPTR,#g_variable+04H
-0031F7 E0                MOVX    A,@DPTR
-0031F8 B40207            CJNE    A,#02H,?C0009?LED
+0031EA 904CC3            MOV     DPTR,#g_variable+04H
+0031ED E0                MOVX    A,@DPTR
+0031EE B40207            CJNE    A,#02H,?C0009?LED
    46: 		GPIO_Setout(BT2_LED_GPIO,LED_OFF);
-0031FB C201              CLR     ?_GPIO_Setout?BIT
-0031FD 7F1C              MOV     R7,#01CH
-0031FF 020EF2            LJMP    _GPIO_Setout
-003202         ?C0009?LED:
+0031F1 C201              CLR     ?_GPIO_Setout?BIT
+0031F3 7F1C              MOV     R7,#01CH
+0031F5 020EF2            LJMP    _GPIO_Setout
+0031F8         ?C0009?LED:
    47: 	else
    48: 	GPIO_Setout(LOWPOWER_LED_GPIO,LED_OFF);
-003202 C201              CLR     ?_GPIO_Setout?BIT
-003204 7F1D              MOV     R7,#01DH
-003206 020EF2            LJMP    _GPIO_Setout
+0031F8 C201              CLR     ?_GPIO_Setout?BIT
+0031FA 7F1D              MOV     R7,#01DH
+0031FC 020EF2            LJMP    _GPIO_Setout
    49: 
    50: 
 ----- FUNCTION LED_device_poweroff (END) -------
@@ -9823,13 +9813,13 @@
   113: {
   114: 	m_reset_reg = 1;
   115: 	while(1);
-003209 908010            MOV     DPTR,#m_reset_reg
-00320C 7401              MOV     A,#01H
-00320E F0                MOVX    @DPTR,A
-00320F         ?C0011?SYS:
+0031FF 908010            MOV     DPTR,#m_reset_reg
+003202 7401              MOV     A,#01H
+003204 F0                MOVX    @DPTR,A
+003205         ?C0011?SYS:
   116: }
-00320F 80FE              SJMP    ?C0011?SYS
-003211 22                RET     
+003205 80FE              SJMP    ?C0011?SYS
+003207 22                RET     
 ----- FUNCTION System_Hardware_reset (END) -------
 
 
@@ -9839,7 +9829,7 @@
   143: {
   144: 	System_Hardware_reset();
   145: }
-003212 80F5              SJMP    System_Hardware_reset
+003208 80F5              SJMP    System_Hardware_reset
 ----- FUNCTION System_Reset_Connect (END) -------
 
 
@@ -9847,21 +9837,21 @@
  FILE: 'sys.c'
   152: static void kb_cb_Hid(byte *p,byte len) {
   153: 	//p[0] is hid type,always is 1(kb) now
-003214 904EFC            MOV     DPTR,#len
-003217 ED                MOV     A,R5
-003218 F0                MOVX    @DPTR,A
+00320A 904EFC            MOV     DPTR,#len
+00320D ED                MOV     A,R5
+00320E F0                MOVX    @DPTR,A
 ;---- Variable 'p' assigned to Register 'R1/R2/R3' ----
   154: 	byte temp = p[1];
-003219 900001            MOV     DPTR,#01H
-00321C 1203CF            LCALL   ?C?CLDOPTR
-00321F 904EFD            MOV     DPTR,#temp
-003222 F0                MOVX    @DPTR,A
+00320F 900001            MOV     DPTR,#01H
+003212 1203CF            LCALL   ?C?CLDOPTR
+003215 904EFD            MOV     DPTR,#temp
+003218 F0                MOVX    @DPTR,A
   155: 
   156: 	if (len<2) {
   157: 		return;
   158: 	}
   159: }
-003223 22                RET     
+003219 22                RET     
 ----- FUNCTION _kb_cb_Hid (END) -------
 
 
@@ -9873,183 +9863,183 @@
     6: 	byte i;
     7: 	
     8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-003224 904CD3            MOV     DPTR,#g_variable+014H
-003227 7405              MOV     A,#05H
-003229 F0                MOVX    @DPTR,A
+00321A 904CD3            MOV     DPTR,#g_variable+014H
+00321D 7405              MOV     A,#05H
+00321F F0                MOVX    @DPTR,A
     9: 	g_variable.battery_value_index = 0;
-00322A E4                CLR     A
-00322B A3                INC     DPTR
-00322C F0                MOVX    @DPTR,A
+003220 E4                CLR     A
+003221 A3                INC     DPTR
+003222 F0                MOVX    @DPTR,A
    10: 	g_variable.battery_motion_check_interval = BATTERY_MOTION_CHECK_INTERVAL;
-00322D 904D0A            MOV     DPTR,#g_variable+04BH
-003230 7414              MOV     A,#014H
-003232 F0                MOVX    @DPTR,A
+003223 904D0A            MOV     DPTR,#g_variable+04BH
+003226 7414              MOV     A,#014H
+003228 F0                MOVX    @DPTR,A
    11: 	
    12: #ifdef ADC_TYPE_HVIN 	
    13: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
 ;---- Variable 'i' assigned to Register 'R7' ----
-003233 E4                CLR     A
-003234 FF                MOV     R7,A
-003235         ?C0001?ADC:
+003229 E4                CLR     A
+00322A FF                MOV     R7,A
+00322B         ?C0001?ADC:
    14: 	{
    15: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE;
-003235 EF                MOV     A,R7
-003236 25E0              ADD     A,ACC
-003238 24D6              ADD     A,#LOW g_variable+017H
-00323A F582              MOV     DPL,A
-00323C E4                CLR     A
-00323D 344C              ADDC    A,#HIGH g_variable+017H
-00323F F583              MOV     DPH,A
-003241 7454              MOV     A,#054H
-003243 F0                MOVX    @DPTR,A
-003244 A3                INC     DPTR
-003245 F0                MOVX    @DPTR,A
+00322B EF                MOV     A,R7
+00322C 25E0              ADD     A,ACC
+00322E 24D6              ADD     A,#LOW g_variable+017H
+003230 F582              MOV     DPL,A
+003232 E4                CLR     A
+003233 344C              ADDC    A,#HIGH g_variable+017H
+003235 F583              MOV     DPH,A
+003237 7454              MOV     A,#054H
+003239 F0                MOVX    @DPTR,A
+00323A A3                INC     DPTR
+00323B F0                MOVX    @DPTR,A
    16: 	}
-003246 0F                INC     R7
-003247 EF                MOV     A,R7
-003248 B404EA            CJNE    A,#04H,?C0001?ADC
-00324B         ?C0002?ADC:
+00323C 0F                INC     R7
+00323D EF                MOV     A,R7
+00323E B404EA            CJNE    A,#04H,?C0001?ADC
+003241         ?C0002?ADC:
    17: 	g_variable.battery_level_full = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_4V2+m_adc0vBase;
-00324B 904C91            MOV     DPTR,#m_adc0vBase
-00324E E0                MOVX    A,@DPTR
-00324F FE                MOV     R6,A
-003250 A3                INC     DPTR
-003251 E0                MOVX    A,@DPTR
-003252 FF                MOV     R7,A
-003253 C3                CLR     C
-003254 904C94            MOV     DPTR,#m_adc3vValue+01H
-003257 E0                MOVX    A,@DPTR
-003258 9F                SUBB    A,R7
-003259 FD                MOV     R5,A
-00325A 904C93            MOV     DPTR,#m_adc3vValue
-00325D E0                MOVX    A,@DPTR
-00325E 9E                SUBB    A,R6
-00325F FC                MOV     R4,A
-003260 E4                CLR     A
-003261 120206            LCALL   ?C?FCASTI
-003264 7B85              MOV     R3,#085H
-003266 7AEB              MOV     R2,#0EBH
-003268 79B1              MOV     R1,#0B1H
-00326A 783F              MOV     R0,#03FH
-00326C 1200FB            LCALL   ?C?FPMUL
-00326F C004              PUSH    AR4
-003271 C005              PUSH    AR5
-003273 C006              PUSH    AR6
-003275 C007              PUSH    AR7
-003277 904C91            MOV     DPTR,#m_adc0vBase
-00327A E0                MOVX    A,@DPTR
-00327B FC                MOV     R4,A
-00327C A3                INC     DPTR
-00327D E0                MOVX    A,@DPTR
-00327E FD                MOV     R5,A
-00327F E4                CLR     A
-003280 120206            LCALL   ?C?FCASTI
-003283 D003              POP     AR3
-003285 D002              POP     AR2
-003287 D001              POP     AR1
-003289 D000              POP     AR0
-00328B 12000A            LCALL   ?C?FPADD
-00328E 12023F            LCALL   ?C?CASTF
-003291 904CFA            MOV     DPTR,#g_variable+03BH
-003294 EE                MOV     A,R6
-003295 F0                MOVX    @DPTR,A
-003296 A3                INC     DPTR
-003297 EF                MOV     A,R7
-003298 F0                MOVX    @DPTR,A
+003241 904C91            MOV     DPTR,#m_adc0vBase
+003244 E0                MOVX    A,@DPTR
+003245 FE                MOV     R6,A
+003246 A3                INC     DPTR
+003247 E0                MOVX    A,@DPTR
+003248 FF                MOV     R7,A
+003249 C3                CLR     C
+00324A 904C94            MOV     DPTR,#m_adc3vValue+01H
+00324D E0                MOVX    A,@DPTR
+00324E 9F                SUBB    A,R7
+00324F FD                MOV     R5,A
+003250 904C93            MOV     DPTR,#m_adc3vValue
+003253 E0                MOVX    A,@DPTR
+003254 9E                SUBB    A,R6
+003255 FC                MOV     R4,A
+003256 E4                CLR     A
+003257 120206            LCALL   ?C?FCASTI
+00325A 7B85              MOV     R3,#085H
+00325C 7AEB              MOV     R2,#0EBH
+00325E 79B1              MOV     R1,#0B1H
+003260 783F              MOV     R0,#03FH
+003262 1200FB            LCALL   ?C?FPMUL
+003265 C004              PUSH    AR4
+003267 C005              PUSH    AR5
+003269 C006              PUSH    AR6
+00326B C007              PUSH    AR7
+00326D 904C91            MOV     DPTR,#m_adc0vBase
+003270 E0                MOVX    A,@DPTR
+003271 FC                MOV     R4,A
+003272 A3                INC     DPTR
+003273 E0                MOVX    A,@DPTR
+003274 FD                MOV     R5,A
+003275 E4                CLR     A
+003276 120206            LCALL   ?C?FCASTI
+003279 D003              POP     AR3
+00327B D002              POP     AR2
+00327D D001              POP     AR1
+00327F D000              POP     AR0
+003281 12000A            LCALL   ?C?FPADD
+003284 12023F            LCALL   ?C?CASTF
+003287 904CFA            MOV     DPTR,#g_variable+03BH
+00328A EE                MOV     A,R6
+00328B F0                MOVX    @DPTR,A
+00328C A3                INC     DPTR
+00328D EF                MOV     A,R7
+00328E F0                MOVX    @DPTR,A
    18: 	g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V2+m_adc0vBase;
-003299 904C91            MOV     DPTR,#m_adc0vBase
-00329C E0                MOVX    A,@DPTR
-00329D FE                MOV     R6,A
-00329E A3                INC     DPTR
-00329F E0                MOVX    A,@DPTR
-0032A0 FF                MOV     R7,A
-0032A1 C3                CLR     C
-0032A2 904C94            MOV     DPTR,#m_adc3vValue+01H
-0032A5 E0                MOVX    A,@DPTR
-0032A6 9F                SUBB    A,R7
-0032A7 FD                MOV     R5,A
-0032A8 904C93            MOV     DPTR,#m_adc3vValue
-0032AB E0                MOVX    A,@DPTR
-0032AC 9E                SUBB    A,R6
-0032AD FC                MOV     R4,A
-0032AE E4                CLR     A
-0032AF 120206            LCALL   ?C?FCASTI
-0032B2 7BC3              MOV     R3,#0C3H
-0032B4 7AF5              MOV     R2,#0F5H
-0032B6 7988              MOV     R1,#088H
-0032B8 783F              MOV     R0,#03FH
-0032BA 1200FB            LCALL   ?C?FPMUL
-0032BD C004              PUSH    AR4
-0032BF C005              PUSH    AR5
-0032C1 C006              PUSH    AR6
-0032C3 C007              PUSH    AR7
-0032C5 904C91            MOV     DPTR,#m_adc0vBase
-0032C8 E0                MOVX    A,@DPTR
-0032C9 FC                MOV     R4,A
-0032CA A3                INC     DPTR
-0032CB E0                MOVX    A,@DPTR
-0032CC FD                MOV     R5,A
-0032CD E4                CLR     A
-0032CE 120206            LCALL   ?C?FCASTI
-0032D1 D003              POP     AR3
-0032D3 D002              POP     AR2
-0032D5 D001              POP     AR1
-0032D7 D000              POP     AR0
-0032D9 12000A            LCALL   ?C?FPADD
-0032DC 12023F            LCALL   ?C?CASTF
-0032DF 904CDE            MOV     DPTR,#g_variable+01FH
-0032E2 EE                MOV     A,R6
-0032E3 F0                MOVX    @DPTR,A
-0032E4 A3                INC     DPTR
-0032E5 EF                MOV     A,R7
-0032E6 F0                MOVX    @DPTR,A
+00328F 904C91            MOV     DPTR,#m_adc0vBase
+003292 E0                MOVX    A,@DPTR
+003293 FE                MOV     R6,A
+003294 A3                INC     DPTR
+003295 E0                MOVX    A,@DPTR
+003296 FF                MOV     R7,A
+003297 C3                CLR     C
+003298 904C94            MOV     DPTR,#m_adc3vValue+01H
+00329B E0                MOVX    A,@DPTR
+00329C 9F                SUBB    A,R7
+00329D FD                MOV     R5,A
+00329E 904C93            MOV     DPTR,#m_adc3vValue
+0032A1 E0                MOVX    A,@DPTR
+0032A2 9E                SUBB    A,R6
+0032A3 FC                MOV     R4,A
+0032A4 E4                CLR     A
+0032A5 120206            LCALL   ?C?FCASTI
+0032A8 7BC3              MOV     R3,#0C3H
+0032AA 7AF5              MOV     R2,#0F5H
+0032AC 7988              MOV     R1,#088H
+0032AE 783F              MOV     R0,#03FH
+0032B0 1200FB            LCALL   ?C?FPMUL
+0032B3 C004              PUSH    AR4
+0032B5 C005              PUSH    AR5
+0032B7 C006              PUSH    AR6
+0032B9 C007              PUSH    AR7
+0032BB 904C91            MOV     DPTR,#m_adc0vBase
+0032BE E0                MOVX    A,@DPTR
+0032BF FC                MOV     R4,A
+0032C0 A3                INC     DPTR
+0032C1 E0                MOVX    A,@DPTR
+0032C2 FD                MOV     R5,A
+0032C3 E4                CLR     A
+0032C4 120206            LCALL   ?C?FCASTI
+0032C7 D003              POP     AR3
+0032C9 D002              POP     AR2
+0032CB D001              POP     AR1
+0032CD D000              POP     AR0
+0032CF 12000A            LCALL   ?C?FPADD
+0032D2 12023F            LCALL   ?C?CASTF
+0032D5 904CDE            MOV     DPTR,#g_variable+01FH
+0032D8 EE                MOV     A,R6
+0032D9 F0                MOVX    @DPTR,A
+0032DA A3                INC     DPTR
+0032DB EF                MOV     A,R7
+0032DC F0                MOVX    @DPTR,A
    19: 	g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V0+m_adc0vBase;
-0032E7 904C91            MOV     DPTR,#m_adc0vBase
-0032EA E0                MOVX    A,@DPTR
-0032EB FE                MOV     R6,A
-0032EC A3                INC     DPTR
-0032ED E0                MOVX    A,@DPTR
-0032EE FF                MOV     R7,A
-0032EF C3                CLR     C
-0032F0 904C94            MOV     DPTR,#m_adc3vValue+01H
-0032F3 E0                MOVX    A,@DPTR
-0032F4 9F                SUBB    A,R7
-0032F5 FD                MOV     R5,A
-0032F6 904C93            MOV     DPTR,#m_adc3vValue
-0032F9 E0                MOVX    A,@DPTR
-0032FA 9E                SUBB    A,R6
-0032FB FC                MOV     R4,A
-0032FC E4                CLR     A
-0032FD 120206            LCALL   ?C?FCASTI
-003300 7BAE              MOV     R3,#0AEH
-003302 7A47              MOV     R2,#047H
-003304 7981              MOV     R1,#081H
-003306 783F              MOV     R0,#03FH
-003308 1200FB            LCALL   ?C?FPMUL
-00330B C004              PUSH    AR4
-00330D C005              PUSH    AR5
-00330F C006              PUSH    AR6
-003311 C007              PUSH    AR7
-003313 904C91            MOV     DPTR,#m_adc0vBase
-003316 E0                MOVX    A,@DPTR
-003317 FC                MOV     R4,A
-003318 A3                INC     DPTR
-003319 E0                MOVX    A,@DPTR
-00331A FD                MOV     R5,A
-00331B E4                CLR     A
-00331C 120206            LCALL   ?C?FCASTI
-00331F D003              POP     AR3
-003321 D002              POP     AR2
-003323 D001              POP     AR1
-003325 D000              POP     AR0
-003327 12000A            LCALL   ?C?FPADD
-00332A 12023F            LCALL   ?C?CASTF
-00332D 904CE0            MOV     DPTR,#g_variable+021H
-003330 EE                MOV     A,R6
-003331 F0                MOVX    @DPTR,A
-003332 A3                INC     DPTR
-003333 EF                MOV     A,R7
-003334 F0                MOVX    @DPTR,A
+0032DD 904C91            MOV     DPTR,#m_adc0vBase
+0032E0 E0                MOVX    A,@DPTR
+0032E1 FE                MOV     R6,A
+0032E2 A3                INC     DPTR
+0032E3 E0                MOVX    A,@DPTR
+0032E4 FF                MOV     R7,A
+0032E5 C3                CLR     C
+0032E6 904C94            MOV     DPTR,#m_adc3vValue+01H
+0032E9 E0                MOVX    A,@DPTR
+0032EA 9F                SUBB    A,R7
+0032EB FD                MOV     R5,A
+0032EC 904C93            MOV     DPTR,#m_adc3vValue
+0032EF E0                MOVX    A,@DPTR
+0032F0 9E                SUBB    A,R6
+0032F1 FC                MOV     R4,A
+0032F2 E4                CLR     A
+0032F3 120206            LCALL   ?C?FCASTI
+0032F6 7BAE              MOV     R3,#0AEH
+0032F8 7A47              MOV     R2,#047H
+0032FA 7981              MOV     R1,#081H
+0032FC 783F              MOV     R0,#03FH
+0032FE 1200FB            LCALL   ?C?FPMUL
+003301 C004              PUSH    AR4
+003303 C005              PUSH    AR5
+003305 C006              PUSH    AR6
+003307 C007              PUSH    AR7
+003309 904C91            MOV     DPTR,#m_adc0vBase
+00330C E0                MOVX    A,@DPTR
+00330D FC                MOV     R4,A
+00330E A3                INC     DPTR
+00330F E0                MOVX    A,@DPTR
+003310 FD                MOV     R5,A
+003311 E4                CLR     A
+003312 120206            LCALL   ?C?FCASTI
+003315 D003              POP     AR3
+003317 D002              POP     AR2
+003319 D001              POP     AR1
+00331B D000              POP     AR0
+00331D 12000A            LCALL   ?C?FPADD
+003320 12023F            LCALL   ?C?CASTF
+003323 904CE0            MOV     DPTR,#g_variable+021H
+003326 EE                MOV     A,R6
+003327 F0                MOVX    @DPTR,A
+003328 A3                INC     DPTR
+003329 EF                MOV     A,R7
+00332A F0                MOVX    @DPTR,A
    20: #endif
    21: #ifdef ADC_TYPE_VINLPM
    22: 		for (i = 0; i < BAT_ARRAY_LEN; i++)
@@ -10072,834 +10062,834 @@
    39: #endif	
    40: #endif
    41: }
-003335 22                RET     
+00332B 22                RET     
 ----- FUNCTION YC_adc_init (END) -------
 
 
 ----- FUNCTION _ipcRx (BEGIN) -----
-003336 904EFE            MOV     DPTR,#dest
-003339 EE                MOV     A,R6
-00333A F0                MOVX    @DPTR,A
-00333B A3                INC     DPTR
-00333C EF                MOV     A,R7
-00333D F0                MOVX    @DPTR,A
+00332C 904EFE            MOV     DPTR,#dest
+00332F EE                MOV     A,R6
+003330 F0                MOVX    @DPTR,A
+003331 A3                INC     DPTR
+003332 EF                MOV     A,R7
+003333 F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R1' ----
-00333E A905              MOV     R1,AR5
-003340 904B9E            MOV     DPTR,#ipcRxReadPtr
-003343 E0                MOVX    A,@DPTR
-003344 FE                MOV     R6,A
-003345 A3                INC     DPTR
-003346 E0                MOVX    A,@DPTR
-003347 FF                MOV     R7,A
+003334 A905              MOV     R1,AR5
+003336 904B9E            MOV     DPTR,#ipcRxReadPtr
+003339 E0                MOVX    A,@DPTR
+00333A FE                MOV     R6,A
+00333B A3                INC     DPTR
+00333C E0                MOVX    A,@DPTR
+00333D FF                MOV     R7,A
 ;---- Variable 'src' assigned to Register 'R6/R7' ----
-003348         ?C0004?IPC:
-003348 AD01              MOV     R5,AR1
-00334A 19                DEC     R1
-00334B ED                MOV     A,R5
-00334C 602F              JZ      ?C0005?IPC
-00334E 0F                INC     R7
-00334F EF                MOV     A,R7
-003350 AC06              MOV     R4,AR6
-003352 7001              JNZ     ?C0046?IPC
-003354 0E                INC     R6
-003355         ?C0046?IPC:
-003355 14                DEC     A
-003356 F582              MOV     DPL,A
-003358 8C83              MOV     DPH,R4
-00335A E0                MOVX    A,@DPTR
-00335B FD                MOV     R5,A
-00335C 904EFE            MOV     DPTR,#dest
-00335F E4                CLR     A
-003360 75F001            MOV     B,#01H
-003363 120424            LCALL   ?C?ILDIX
-003366 85F082            MOV     DPL,B
-003369 F583              MOV     DPH,A
-00336B ED                MOV     A,R5
-00336C F0                MOVX    @DPTR,A
-00336D AD07              MOV     R5,AR7
-00336F AC06              MOV     R4,AR6
-003371 BC4BD4            CJNE    R4,#04BH,?C0004?IPC
-003374 BD9AD1            CJNE    R5,#09AH,?C0004?IPC
-003377 7E4B              MOV     R6,#04BH
-003379 7F36              MOV     R7,#036H
-00337B 80CB              SJMP    ?C0004?IPC
-00337D         ?C0005?IPC:
-00337D 904B9E            MOV     DPTR,#ipcRxReadPtr
-003380 EE                MOV     A,R6
-003381 F0                MOVX    @DPTR,A
-003382 A3                INC     DPTR
-003383 EF                MOV     A,R7
-003384 F0                MOVX    @DPTR,A
-003385 22                RET     
+00333E         ?C0004?IPC:
+00333E AD01              MOV     R5,AR1
+003340 19                DEC     R1
+003341 ED                MOV     A,R5
+003342 602F              JZ      ?C0005?IPC
+003344 0F                INC     R7
+003345 EF                MOV     A,R7
+003346 AC06              MOV     R4,AR6
+003348 7001              JNZ     ?C0046?IPC
+00334A 0E                INC     R6
+00334B         ?C0046?IPC:
+00334B 14                DEC     A
+00334C F582              MOV     DPL,A
+00334E 8C83              MOV     DPH,R4
+003350 E0                MOVX    A,@DPTR
+003351 FD                MOV     R5,A
+003352 904EFE            MOV     DPTR,#dest
+003355 E4                CLR     A
+003356 75F001            MOV     B,#01H
+003359 120424            LCALL   ?C?ILDIX
+00335C 85F082            MOV     DPL,B
+00335F F583              MOV     DPH,A
+003361 ED                MOV     A,R5
+003362 F0                MOVX    @DPTR,A
+003363 AD07              MOV     R5,AR7
+003365 AC06              MOV     R4,AR6
+003367 BC4BD4            CJNE    R4,#04BH,?C0004?IPC
+00336A BD9AD1            CJNE    R5,#09AH,?C0004?IPC
+00336D 7E4B              MOV     R6,#04BH
+00336F 7F36              MOV     R7,#036H
+003371 80CB              SJMP    ?C0004?IPC
+003373         ?C0005?IPC:
+003373 904B9E            MOV     DPTR,#ipcRxReadPtr
+003376 EE                MOV     A,R6
+003377 F0                MOVX    @DPTR,A
+003378 A3                INC     DPTR
+003379 EF                MOV     A,R7
+00337A F0                MOVX    @DPTR,A
+00337B 22                RET     
 ----- FUNCTION _ipcRx (END) -------
 
 
 ----- FUNCTION IPC_DealSingleStep (BEGIN) -----
-003386 7A0C              MOV     R2,#HIGH ipcReadBuff
-003388 794B              MOV     R1,#LOW ipcReadBuff
-00338A 904EEE            MOV     DPTR,#pbuff
-00338D 7401              MOV     A,#01H
-00338F F0                MOVX    @DPTR,A
-003390 A3                INC     DPTR
-003391 740C              MOV     A,#HIGH ipcReadBuff
-003393 F0                MOVX    @DPTR,A
-003394 A3                INC     DPTR
-003395 744B              MOV     A,#LOW ipcReadBuff
-003397 F0                MOVX    @DPTR,A
-003398 904BA0            MOV     DPTR,#ipcRxWritePtr
-00339B E0                MOVX    A,@DPTR
-00339C FE                MOV     R6,A
+00337C 7A0C              MOV     R2,#HIGH ipcReadBuff
+00337E 794B              MOV     R1,#LOW ipcReadBuff
+003380 904EEE            MOV     DPTR,#pbuff
+003383 7401              MOV     A,#01H
+003385 F0                MOVX    @DPTR,A
+003386 A3                INC     DPTR
+003387 740C              MOV     A,#HIGH ipcReadBuff
+003389 F0                MOVX    @DPTR,A
+00338A A3                INC     DPTR
+00338B 744B              MOV     A,#LOW ipcReadBuff
+00338D F0                MOVX    @DPTR,A
+00338E 904BA0            MOV     DPTR,#ipcRxWritePtr
+003391 E0                MOVX    A,@DPTR
+003392 FE                MOV     R6,A
+003393 A3                INC     DPTR
+003394 E0                MOVX    A,@DPTR
+003395 FF                MOV     R7,A
+003396 904B9E            MOV     DPTR,#ipcRxReadPtr
+003399 E0                MOVX    A,@DPTR
+00339A 6E                XRL     A,R6
+00339B 7003              JNZ     ?C0048?IPC
 00339D A3                INC     DPTR
 00339E E0                MOVX    A,@DPTR
-00339F FF                MOV     R7,A
-0033A0 904B9E            MOV     DPTR,#ipcRxReadPtr
-0033A3 E0                MOVX    A,@DPTR
-0033A4 6E                XRL     A,R6
-0033A5 7003              JNZ     ?C0048?IPC
-0033A7 A3                INC     DPTR
-0033A8 E0                MOVX    A,@DPTR
-0033A9 6F                XRL     A,R7
-0033AA         ?C0048?IPC:
-0033AA 7002              JNZ     $ + 4H
-0033AC A135              AJMP    ?C0039?IPC
-0033AE         ?C0027?IPC:
-0033AE 7E0C              MOV     R6,#HIGH ipcReadBuff
-0033B0 7F4B              MOV     R7,#LOW ipcReadBuff
-0033B2 7D03              MOV     R5,#03H
-0033B4 7136              ACALL   _ipcRx
-0033B6 904EEE            MOV     DPTR,#pbuff
-0033B9 E0                MOVX    A,@DPTR
-0033BA FB                MOV     R3,A
-0033BB A3                INC     DPTR
-0033BC E0                MOVX    A,@DPTR
-0033BD FA                MOV     R2,A
-0033BE A3                INC     DPTR
-0033BF E0                MOVX    A,@DPTR
-0033C0 F9                MOV     R1,A
-0033C1 1203B6            LCALL   ?C?CLDPTR
-0033C4 B4022B            CJNE    A,#02H,?C0029?IPC
-0033C7 904EEF            MOV     DPTR,#pbuff+01H
-0033CA E4                CLR     A
-0033CB 75F002            MOV     B,#02H
-0033CE 12040E            LCALL   ?C?IILDX
-0033D1 904EEE            MOV     DPTR,#pbuff
-0033D4 E0                MOVX    A,@DPTR
-0033D5 FB                MOV     R3,A
-0033D6 A3                INC     DPTR
-0033D7 E0                MOVX    A,@DPTR
-0033D8 FA                MOV     R2,A
-0033D9 A3                INC     DPTR
-0033DA E0                MOVX    A,@DPTR
-0033DB F9                MOV     R1,A
-0033DC 1203B6            LCALL   ?C?CLDPTR
-0033DF FF                MOV     R7,A
-0033E0 904E68            MOV     DPTR,#ipcCb
-0033E3 E0                MOVX    A,@DPTR
-0033E4 A3                INC     DPTR
-0033E5 E0                MOVX    A,@DPTR
-0033E6 FA                MOV     R2,A
-0033E7 A3                INC     DPTR
-0033E8 E0                MOVX    A,@DPTR
-0033E9 F582              MOV     DPL,A
-0033EB 8A83              MOV     DPH,R2
-0033ED 1205DD            LCALL   ?C?ICALL2
-0033F0 A135              AJMP    ?C0039?IPC
-0033F2         ?C0029?IPC:
-0033F2 904EEE            MOV     DPTR,#pbuff
-0033F5 E0                MOVX    A,@DPTR
-0033F6 FB                MOV     R3,A
-0033F7 A3                INC     DPTR
-0033F8 E0                MOVX    A,@DPTR
-0033F9 FA                MOV     R2,A
-0033FA A3                INC     DPTR
-0033FB E0                MOVX    A,@DPTR
-0033FC F9                MOV     R1,A
-0033FD 1203B6            LCALL   ?C?CLDPTR
-003400 6404              XRL     A,#04H
-003402 7059              JNZ     ?C0031?IPC
-003404 904EEF            MOV     DPTR,#pbuff+01H
-003407 75F001            MOV     B,#01H
-00340A 12040E            LCALL   ?C?IILDX
-00340D 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
-00340F 7F4E              MOV     R7,#LOW ipcReadBuff+03H
-003411 904EEE            MOV     DPTR,#pbuff
-003414 E0                MOVX    A,@DPTR
-003415 FB                MOV     R3,A
-003416 A3                INC     DPTR
-003417 E0                MOVX    A,@DPTR
-003418 FA                MOV     R2,A
-003419 A3                INC     DPTR
-00341A E0                MOVX    A,@DPTR
-00341B F9                MOV     R1,A
-00341C 1203B6            LCALL   ?C?CLDPTR
-00341F 14                DEC     A
-003420 FD                MOV     R5,A
-003421 7136              ACALL   _ipcRx
-003423 904EEE            MOV     DPTR,#pbuff
-003426 E0                MOVX    A,@DPTR
-003427 FB                MOV     R3,A
-003428 A3                INC     DPTR
-003429 E0                MOVX    A,@DPTR
-00342A FA                MOV     R2,A
-00342B A3                INC     DPTR
-00342C E0                MOVX    A,@DPTR
-00342D 2401              ADD     A,#01H
-00342F F9                MOV     R1,A
-003430 E4                CLR     A
-003431 3A                ADDC    A,R2
-003432 FA                MOV     R2,A
-003433 C002              PUSH    AR2
-003435 C001              PUSH    AR1
-003437 904EEE            MOV     DPTR,#pbuff
-00343A E0                MOVX    A,@DPTR
-00343B A3                INC     DPTR
-00343C E0                MOVX    A,@DPTR
-00343D FA                MOV     R2,A
-00343E A3                INC     DPTR
-00343F E0                MOVX    A,@DPTR
-003440 F9                MOV     R1,A
-003441 1203B6            LCALL   ?C?CLDPTR
-003444 FD                MOV     R5,A
-003445 7C00              MOV     R4,#00H
-003447 904E6B            MOV     DPTR,#ipcCb+03H
-00344A E0                MOVX    A,@DPTR
-00344B A3                INC     DPTR
-00344C E0                MOVX    A,@DPTR
-00344D FA                MOV     R2,A
-00344E A3                INC     DPTR
-00344F E0                MOVX    A,@DPTR
-003450 F582              MOV     DPL,A
-003452 8A83              MOV     DPH,R2
-003454 D001              POP     AR1
-003456 D002              POP     AR2
-003458 1205DD            LCALL   ?C?ICALL2
-00345B A135              AJMP    ?C0039?IPC
-00345D         ?C0031?IPC:
-00345D 904EEE            MOV     DPTR,#pbuff
-003460 E0                MOVX    A,@DPTR
-003461 FB                MOV     R3,A
-003462 A3                INC     DPTR
-003463 E0                MOVX    A,@DPTR
-003464 FA                MOV     R2,A
-003465 A3                INC     DPTR
-003466 E0                MOVX    A,@DPTR
-003467 F9                MOV     R1,A
-003468 1203B6            LCALL   ?C?CLDPTR
-00346B 6405              XRL     A,#05H
-00346D 7059              JNZ     ?C0033?IPC
-00346F 904EEF            MOV     DPTR,#pbuff+01H
-003472 75F001            MOV     B,#01H
-003475 12040E            LCALL   ?C?IILDX
-003478 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
-00347A 7F4E              MOV     R7,#LOW ipcReadBuff+03H
-00347C 904EEE            MOV     DPTR,#pbuff
-00347F E0                MOVX    A,@DPTR
-003480 FB                MOV     R3,A
-003481 A3                INC     DPTR
-003482 E0                MOVX    A,@DPTR
-003483 FA                MOV     R2,A
-003484 A3                INC     DPTR
-003485 E0                MOVX    A,@DPTR
-003486 F9                MOV     R1,A
-003487 1203B6            LCALL   ?C?CLDPTR
-00348A 14                DEC     A
-00348B FD                MOV     R5,A
-00348C 7136              ACALL   _ipcRx
-00348E 904EEE            MOV     DPTR,#pbuff
-003491 E0                MOVX    A,@DPTR
-003492 FB                MOV     R3,A
-003493 A3                INC     DPTR
-003494 E0                MOVX    A,@DPTR
-003495 FA                MOV     R2,A
-003496 A3                INC     DPTR
-003497 E0                MOVX    A,@DPTR
-003498 2401              ADD     A,#01H
-00349A F9                MOV     R1,A
-00349B E4                CLR     A
-00349C 3A                ADDC    A,R2
-00349D FA                MOV     R2,A
-00349E C002              PUSH    AR2
-0034A0 C001              PUSH    AR1
-0034A2 904EEE            MOV     DPTR,#pbuff
-0034A5 E0                MOVX    A,@DPTR
-0034A6 A3                INC     DPTR
-0034A7 E0                MOVX    A,@DPTR
-0034A8 FA                MOV     R2,A
-0034A9 A3                INC     DPTR
-0034AA E0                MOVX    A,@DPTR
-0034AB F9                MOV     R1,A
-0034AC 1203B6            LCALL   ?C?CLDPTR
-0034AF FD                MOV     R5,A
-0034B0 7C00              MOV     R4,#00H
-0034B2 904E74            MOV     DPTR,#ipcCb+0CH
-0034B5 E0                MOVX    A,@DPTR
-0034B6 A3                INC     DPTR
-0034B7 E0                MOVX    A,@DPTR
-0034B8 FA                MOV     R2,A
-0034B9 A3                INC     DPTR
-0034BA E0                MOVX    A,@DPTR
-0034BB F582              MOV     DPL,A
-0034BD 8A83              MOV     DPH,R2
-0034BF D001              POP     AR1
-0034C1 D002              POP     AR2
-0034C3 1205DD            LCALL   ?C?ICALL2
-0034C6 806D              SJMP    ?C0039?IPC
-0034C8         ?C0033?IPC:
-0034C8 904EEE            MOV     DPTR,#pbuff
-0034CB E0                MOVX    A,@DPTR
-0034CC FB                MOV     R3,A
-0034CD A3                INC     DPTR
-0034CE E0                MOVX    A,@DPTR
-0034CF FA                MOV     R2,A
-0034D0 A3                INC     DPTR
-0034D1 E0                MOVX    A,@DPTR
-0034D2 F9                MOV     R1,A
-0034D3 1203B6            LCALL   ?C?CLDPTR
-0034D6 6403              XRL     A,#03H
-0034D8 7059              JNZ     ?C0037?IPC
-0034DA 904EEF            MOV     DPTR,#pbuff+01H
-0034DD 75F001            MOV     B,#01H
-0034E0 12040E            LCALL   ?C?IILDX
-0034E3 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
-0034E5 7F4E              MOV     R7,#LOW ipcReadBuff+03H
-0034E7 904EEE            MOV     DPTR,#pbuff
-0034EA E0                MOVX    A,@DPTR
-0034EB FB                MOV     R3,A
-0034EC A3                INC     DPTR
-0034ED E0                MOVX    A,@DPTR
-0034EE FA                MOV     R2,A
-0034EF A3                INC     DPTR
-0034F0 E0                MOVX    A,@DPTR
-0034F1 F9                MOV     R1,A
-0034F2 1203B6            LCALL   ?C?CLDPTR
-0034F5 14                DEC     A
-0034F6 FD                MOV     R5,A
-0034F7 7136              ACALL   _ipcRx
-0034F9 904EEE            MOV     DPTR,#pbuff
-0034FC E0                MOVX    A,@DPTR
-0034FD FB                MOV     R3,A
-0034FE A3                INC     DPTR
-0034FF E0                MOVX    A,@DPTR
-003500 FA                MOV     R2,A
-003501 A3                INC     DPTR
-003502 E0                MOVX    A,@DPTR
-003503 2401              ADD     A,#01H
-003505 F9                MOV     R1,A
-003506 E4                CLR     A
-003507 3A                ADDC    A,R2
-003508 FA                MOV     R2,A
-003509 C002              PUSH    AR2
-00350B C001              PUSH    AR1
-00350D 904EEE            MOV     DPTR,#pbuff
-003510 E0                MOVX    A,@DPTR
-003511 A3                INC     DPTR
-003512 E0                MOVX    A,@DPTR
-003513 FA                MOV     R2,A
-003514 A3                INC     DPTR
-003515 E0                MOVX    A,@DPTR
-003516 F9                MOV     R1,A
-003517 1203B6            LCALL   ?C?CLDPTR
-00351A FD                MOV     R5,A
-00351B 7C00              MOV     R4,#00H
-00351D 904E77            MOV     DPTR,#ipcCb+0FH
-003520 E0                MOVX    A,@DPTR
-003521 A3                INC     DPTR
-003522 E0                MOVX    A,@DPTR
-003523 FA                MOV     R2,A
-003524 A3                INC     DPTR
-003525 E0                MOVX    A,@DPTR
-003526 F582              MOV     DPL,A
-003528 8A83              MOV     DPH,R2
-00352A D001              POP     AR1
-00352C D002              POP     AR2
-00352E 1205DD            LCALL   ?C?ICALL2
-003531 8002              SJMP    ?C0039?IPC
-003533         ?C0037?IPC:
-003533 80FE              SJMP    ?C0037?IPC
-003535         IPC_TIMER:
-003535         ?C0039?IPC:
-003535 904BA5            MOV     DPTR,#bttimer
-003538 E0                MOVX    A,@DPTR
-003539 FE                MOV     R6,A
+00339F 6F                XRL     A,R7
+0033A0         ?C0048?IPC:
+0033A0 7002              JNZ     $ + 4H
+0033A2 A12B              AJMP    ?C0039?IPC
+0033A4         ?C0027?IPC:
+0033A4 7E0C              MOV     R6,#HIGH ipcReadBuff
+0033A6 7F4B              MOV     R7,#LOW ipcReadBuff
+0033A8 7D03              MOV     R5,#03H
+0033AA 712C              ACALL   _ipcRx
+0033AC 904EEE            MOV     DPTR,#pbuff
+0033AF E0                MOVX    A,@DPTR
+0033B0 FB                MOV     R3,A
+0033B1 A3                INC     DPTR
+0033B2 E0                MOVX    A,@DPTR
+0033B3 FA                MOV     R2,A
+0033B4 A3                INC     DPTR
+0033B5 E0                MOVX    A,@DPTR
+0033B6 F9                MOV     R1,A
+0033B7 1203B6            LCALL   ?C?CLDPTR
+0033BA B4022B            CJNE    A,#02H,?C0029?IPC
+0033BD 904EEF            MOV     DPTR,#pbuff+01H
+0033C0 E4                CLR     A
+0033C1 75F002            MOV     B,#02H
+0033C4 12040E            LCALL   ?C?IILDX
+0033C7 904EEE            MOV     DPTR,#pbuff
+0033CA E0                MOVX    A,@DPTR
+0033CB FB                MOV     R3,A
+0033CC A3                INC     DPTR
+0033CD E0                MOVX    A,@DPTR
+0033CE FA                MOV     R2,A
+0033CF A3                INC     DPTR
+0033D0 E0                MOVX    A,@DPTR
+0033D1 F9                MOV     R1,A
+0033D2 1203B6            LCALL   ?C?CLDPTR
+0033D5 FF                MOV     R7,A
+0033D6 904E68            MOV     DPTR,#ipcCb
+0033D9 E0                MOVX    A,@DPTR
+0033DA A3                INC     DPTR
+0033DB E0                MOVX    A,@DPTR
+0033DC FA                MOV     R2,A
+0033DD A3                INC     DPTR
+0033DE E0                MOVX    A,@DPTR
+0033DF F582              MOV     DPL,A
+0033E1 8A83              MOV     DPH,R2
+0033E3 1205DD            LCALL   ?C?ICALL2
+0033E6 A12B              AJMP    ?C0039?IPC
+0033E8         ?C0029?IPC:
+0033E8 904EEE            MOV     DPTR,#pbuff
+0033EB E0                MOVX    A,@DPTR
+0033EC FB                MOV     R3,A
+0033ED A3                INC     DPTR
+0033EE E0                MOVX    A,@DPTR
+0033EF FA                MOV     R2,A
+0033F0 A3                INC     DPTR
+0033F1 E0                MOVX    A,@DPTR
+0033F2 F9                MOV     R1,A
+0033F3 1203B6            LCALL   ?C?CLDPTR
+0033F6 6404              XRL     A,#04H
+0033F8 7059              JNZ     ?C0031?IPC
+0033FA 904EEF            MOV     DPTR,#pbuff+01H
+0033FD 75F001            MOV     B,#01H
+003400 12040E            LCALL   ?C?IILDX
+003403 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
+003405 7F4E              MOV     R7,#LOW ipcReadBuff+03H
+003407 904EEE            MOV     DPTR,#pbuff
+00340A E0                MOVX    A,@DPTR
+00340B FB                MOV     R3,A
+00340C A3                INC     DPTR
+00340D E0                MOVX    A,@DPTR
+00340E FA                MOV     R2,A
+00340F A3                INC     DPTR
+003410 E0                MOVX    A,@DPTR
+003411 F9                MOV     R1,A
+003412 1203B6            LCALL   ?C?CLDPTR
+003415 14                DEC     A
+003416 FD                MOV     R5,A
+003417 712C              ACALL   _ipcRx
+003419 904EEE            MOV     DPTR,#pbuff
+00341C E0                MOVX    A,@DPTR
+00341D FB                MOV     R3,A
+00341E A3                INC     DPTR
+00341F E0                MOVX    A,@DPTR
+003420 FA                MOV     R2,A
+003421 A3                INC     DPTR
+003422 E0                MOVX    A,@DPTR
+003423 2401              ADD     A,#01H
+003425 F9                MOV     R1,A
+003426 E4                CLR     A
+003427 3A                ADDC    A,R2
+003428 FA                MOV     R2,A
+003429 C002              PUSH    AR2
+00342B C001              PUSH    AR1
+00342D 904EEE            MOV     DPTR,#pbuff
+003430 E0                MOVX    A,@DPTR
+003431 A3                INC     DPTR
+003432 E0                MOVX    A,@DPTR
+003433 FA                MOV     R2,A
+003434 A3                INC     DPTR
+003435 E0                MOVX    A,@DPTR
+003436 F9                MOV     R1,A
+003437 1203B6            LCALL   ?C?CLDPTR
+00343A FD                MOV     R5,A
+00343B 7C00              MOV     R4,#00H
+00343D 904E6B            MOV     DPTR,#ipcCb+03H
+003440 E0                MOVX    A,@DPTR
+003441 A3                INC     DPTR
+003442 E0                MOVX    A,@DPTR
+003443 FA                MOV     R2,A
+003444 A3                INC     DPTR
+003445 E0                MOVX    A,@DPTR
+003446 F582              MOV     DPL,A
+003448 8A83              MOV     DPH,R2
+00344A D001              POP     AR1
+00344C D002              POP     AR2
+00344E 1205DD            LCALL   ?C?ICALL2
+003451 A12B              AJMP    ?C0039?IPC
+003453         ?C0031?IPC:
+003453 904EEE            MOV     DPTR,#pbuff
+003456 E0                MOVX    A,@DPTR
+003457 FB                MOV     R3,A
+003458 A3                INC     DPTR
+003459 E0                MOVX    A,@DPTR
+00345A FA                MOV     R2,A
+00345B A3                INC     DPTR
+00345C E0                MOVX    A,@DPTR
+00345D F9                MOV     R1,A
+00345E 1203B6            LCALL   ?C?CLDPTR
+003461 6405              XRL     A,#05H
+003463 7059              JNZ     ?C0033?IPC
+003465 904EEF            MOV     DPTR,#pbuff+01H
+003468 75F001            MOV     B,#01H
+00346B 12040E            LCALL   ?C?IILDX
+00346E 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
+003470 7F4E              MOV     R7,#LOW ipcReadBuff+03H
+003472 904EEE            MOV     DPTR,#pbuff
+003475 E0                MOVX    A,@DPTR
+003476 FB                MOV     R3,A
+003477 A3                INC     DPTR
+003478 E0                MOVX    A,@DPTR
+003479 FA                MOV     R2,A
+00347A A3                INC     DPTR
+00347B E0                MOVX    A,@DPTR
+00347C F9                MOV     R1,A
+00347D 1203B6            LCALL   ?C?CLDPTR
+003480 14                DEC     A
+003481 FD                MOV     R5,A
+003482 712C              ACALL   _ipcRx
+003484 904EEE            MOV     DPTR,#pbuff
+003487 E0                MOVX    A,@DPTR
+003488 FB                MOV     R3,A
+003489 A3                INC     DPTR
+00348A E0                MOVX    A,@DPTR
+00348B FA                MOV     R2,A
+00348C A3                INC     DPTR
+00348D E0                MOVX    A,@DPTR
+00348E 2401              ADD     A,#01H
+003490 F9                MOV     R1,A
+003491 E4                CLR     A
+003492 3A                ADDC    A,R2
+003493 FA                MOV     R2,A
+003494 C002              PUSH    AR2
+003496 C001              PUSH    AR1
+003498 904EEE            MOV     DPTR,#pbuff
+00349B E0                MOVX    A,@DPTR
+00349C A3                INC     DPTR
+00349D E0                MOVX    A,@DPTR
+00349E FA                MOV     R2,A
+00349F A3                INC     DPTR
+0034A0 E0                MOVX    A,@DPTR
+0034A1 F9                MOV     R1,A
+0034A2 1203B6            LCALL   ?C?CLDPTR
+0034A5 FD                MOV     R5,A
+0034A6 7C00              MOV     R4,#00H
+0034A8 904E74            MOV     DPTR,#ipcCb+0CH
+0034AB E0                MOVX    A,@DPTR
+0034AC A3                INC     DPTR
+0034AD E0                MOVX    A,@DPTR
+0034AE FA                MOV     R2,A
+0034AF A3                INC     DPTR
+0034B0 E0                MOVX    A,@DPTR
+0034B1 F582              MOV     DPL,A
+0034B3 8A83              MOV     DPH,R2
+0034B5 D001              POP     AR1
+0034B7 D002              POP     AR2
+0034B9 1205DD            LCALL   ?C?ICALL2
+0034BC 806D              SJMP    ?C0039?IPC
+0034BE         ?C0033?IPC:
+0034BE 904EEE            MOV     DPTR,#pbuff
+0034C1 E0                MOVX    A,@DPTR
+0034C2 FB                MOV     R3,A
+0034C3 A3                INC     DPTR
+0034C4 E0                MOVX    A,@DPTR
+0034C5 FA                MOV     R2,A
+0034C6 A3                INC     DPTR
+0034C7 E0                MOVX    A,@DPTR
+0034C8 F9                MOV     R1,A
+0034C9 1203B6            LCALL   ?C?CLDPTR
+0034CC 6403              XRL     A,#03H
+0034CE 7059              JNZ     ?C0037?IPC
+0034D0 904EEF            MOV     DPTR,#pbuff+01H
+0034D3 75F001            MOV     B,#01H
+0034D6 12040E            LCALL   ?C?IILDX
+0034D9 7E0C              MOV     R6,#HIGH ipcReadBuff+03H
+0034DB 7F4E              MOV     R7,#LOW ipcReadBuff+03H
+0034DD 904EEE            MOV     DPTR,#pbuff
+0034E0 E0                MOVX    A,@DPTR
+0034E1 FB                MOV     R3,A
+0034E2 A3                INC     DPTR
+0034E3 E0                MOVX    A,@DPTR
+0034E4 FA                MOV     R2,A
+0034E5 A3                INC     DPTR
+0034E6 E0                MOVX    A,@DPTR
+0034E7 F9                MOV     R1,A
+0034E8 1203B6            LCALL   ?C?CLDPTR
+0034EB 14                DEC     A
+0034EC FD                MOV     R5,A
+0034ED 712C              ACALL   _ipcRx
+0034EF 904EEE            MOV     DPTR,#pbuff
+0034F2 E0                MOVX    A,@DPTR
+0034F3 FB                MOV     R3,A
+0034F4 A3                INC     DPTR
+0034F5 E0                MOVX    A,@DPTR
+0034F6 FA                MOV     R2,A
+0034F7 A3                INC     DPTR
+0034F8 E0                MOVX    A,@DPTR
+0034F9 2401              ADD     A,#01H
+0034FB F9                MOV     R1,A
+0034FC E4                CLR     A
+0034FD 3A                ADDC    A,R2
+0034FE FA                MOV     R2,A
+0034FF C002              PUSH    AR2
+003501 C001              PUSH    AR1
+003503 904EEE            MOV     DPTR,#pbuff
+003506 E0                MOVX    A,@DPTR
+003507 A3                INC     DPTR
+003508 E0                MOVX    A,@DPTR
+003509 FA                MOV     R2,A
+00350A A3                INC     DPTR
+00350B E0                MOVX    A,@DPTR
+00350C F9                MOV     R1,A
+00350D 1203B6            LCALL   ?C?CLDPTR
+003510 FD                MOV     R5,A
+003511 7C00              MOV     R4,#00H
+003513 904E77            MOV     DPTR,#ipcCb+0FH
+003516 E0                MOVX    A,@DPTR
+003517 A3                INC     DPTR
+003518 E0                MOVX    A,@DPTR
+003519 FA                MOV     R2,A
+00351A A3                INC     DPTR
+00351B E0                MOVX    A,@DPTR
+00351C F582              MOV     DPL,A
+00351E 8A83              MOV     DPH,R2
+003520 D001              POP     AR1
+003522 D002              POP     AR2
+003524 1205DD            LCALL   ?C?ICALL2
+003527 8002              SJMP    ?C0039?IPC
+003529         ?C0037?IPC:
+003529 80FE              SJMP    ?C0037?IPC
+00352B         IPC_TIMER:
+00352B         ?C0039?IPC:
+00352B 904BA5            MOV     DPTR,#bttimer
+00352E E0                MOVX    A,@DPTR
+00352F FE                MOV     R6,A
+003530 A3                INC     DPTR
+003531 E0                MOVX    A,@DPTR
+003532 FF                MOV     R7,A
+003533 904C5E            MOV     DPTR,#c51timer
+003536 E0                MOVX    A,@DPTR
+003537 6E                XRL     A,R6
+003538 7003              JNZ     ?C0049?IPC
 00353A A3                INC     DPTR
 00353B E0                MOVX    A,@DPTR
-00353C FF                MOV     R7,A
-00353D 904C5E            MOV     DPTR,#c51timer
-003540 E0                MOVX    A,@DPTR
-003541 6E                XRL     A,R6
-003542 7003              JNZ     ?C0049?IPC
+00353C 6F                XRL     A,R7
+00353D         ?C0049?IPC:
+00353D 6022              JZ      ?C0043?IPC
+00353F 904E6E            MOV     DPTR,#ipcCb+06H
+003542 E0                MOVX    A,@DPTR
+003543 FB                MOV     R3,A
 003544 A3                INC     DPTR
 003545 E0                MOVX    A,@DPTR
-003546 6F                XRL     A,R7
-003547         ?C0049?IPC:
-003547 6022              JZ      ?C0043?IPC
-003549 904E6E            MOV     DPTR,#ipcCb+06H
-00354C E0                MOVX    A,@DPTR
-00354D FB                MOV     R3,A
-00354E A3                INC     DPTR
-00354F E0                MOVX    A,@DPTR
-003550 FA                MOV     R2,A
-003551 A3                INC     DPTR
-003552 E0                MOVX    A,@DPTR
-003553 F9                MOV     R1,A
-003554 4A                ORL     A,R2
-003555 6037              JZ      ?C0042?IPC
-003557         ?C0041?IPC:
-003557 1205D9            LCALL   ?C?ICALL
-00355A 904BA5            MOV     DPTR,#bttimer
-00355D E0                MOVX    A,@DPTR
-00355E FF                MOV     R7,A
-00355F A3                INC     DPTR
-003560 E0                MOVX    A,@DPTR
-003561 904C5E            MOV     DPTR,#c51timer
-003564 CF                XCH     A,R7
-003565 F0                MOVX    @DPTR,A
+003546 FA                MOV     R2,A
+003547 A3                INC     DPTR
+003548 E0                MOVX    A,@DPTR
+003549 F9                MOV     R1,A
+00354A 4A                ORL     A,R2
+00354B 6037              JZ      ?C0042?IPC
+00354D         ?C0041?IPC:
+00354D 1205D9            LCALL   ?C?ICALL
+003550 904BA5            MOV     DPTR,#bttimer
+003553 E0                MOVX    A,@DPTR
+003554 FF                MOV     R7,A
+003555 A3                INC     DPTR
+003556 E0                MOVX    A,@DPTR
+003557 904C5E            MOV     DPTR,#c51timer
+00355A CF                XCH     A,R7
+00355B F0                MOVX    @DPTR,A
+00355C A3                INC     DPTR
+00355D EF                MOV     A,R7
+00355E F0                MOVX    @DPTR,A
+00355F 80CA              SJMP    ?C0039?IPC
+003561         ?C0043?IPC:
+003561 904C8D            MOV     DPTR,#btstimer
+003564 E0                MOVX    A,@DPTR
+003565 FF                MOV     R7,A
 003566 A3                INC     DPTR
-003567 EF                MOV     A,R7
-003568 F0                MOVX    @DPTR,A
-003569 80CA              SJMP    ?C0039?IPC
-00356B         ?C0043?IPC:
-00356B 904C8D            MOV     DPTR,#btstimer
+003567 E0                MOVX    A,@DPTR
+003568 6F                XRL     A,R7
+003569 6019              JZ      ?C0042?IPC
+00356B 904E71            MOV     DPTR,#ipcCb+09H
 00356E E0                MOVX    A,@DPTR
-00356F FF                MOV     R7,A
+00356F FB                MOV     R3,A
 003570 A3                INC     DPTR
 003571 E0                MOVX    A,@DPTR
-003572 6F                XRL     A,R7
-003573 6019              JZ      ?C0042?IPC
-003575 904E71            MOV     DPTR,#ipcCb+09H
-003578 E0                MOVX    A,@DPTR
-003579 FB                MOV     R3,A
-00357A A3                INC     DPTR
-00357B E0                MOVX    A,@DPTR
-00357C FA                MOV     R2,A
-00357D A3                INC     DPTR
-00357E E0                MOVX    A,@DPTR
-00357F F9                MOV     R1,A
-003580 4A                ORL     A,R2
-003581 600B              JZ      ?C0042?IPC
-003583         ?C0045?IPC:
-003583 1205D9            LCALL   ?C?ICALL
-003586 904C8D            MOV     DPTR,#btstimer
-003589 E0                MOVX    A,@DPTR
-00358A A3                INC     DPTR
-00358B F0                MOVX    @DPTR,A
-00358C 80DD              SJMP    ?C0043?IPC
-00358E         ?C0042?IPC:
-00358E 22                RET     
+003572 FA                MOV     R2,A
+003573 A3                INC     DPTR
+003574 E0                MOVX    A,@DPTR
+003575 F9                MOV     R1,A
+003576 4A                ORL     A,R2
+003577 600B              JZ      ?C0042?IPC
+003579         ?C0045?IPC:
+003579 1205D9            LCALL   ?C?ICALL
+00357C 904C8D            MOV     DPTR,#btstimer
+00357F E0                MOVX    A,@DPTR
+003580 A3                INC     DPTR
+003581 F0                MOVX    @DPTR,A
+003582 80DD              SJMP    ?C0043?IPC
+003584         ?C0042?IPC:
+003584 22                RET     
 ----- FUNCTION IPC_DealSingleStep (END) -------
 
 
 ----- FUNCTION _IPC_TxData (BEGIN) -----
-00358F 904F09            MOV     DPTR,#len
-003592 ED                MOV     A,R5
-003593 F0                MOVX    @DPTR,A
+003585 904F09            MOV     DPTR,#len
+003588 ED                MOV     A,R5
+003589 F0                MOVX    @DPTR,A
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003594 E0                MOVX    A,@DPTR
-003595 FD                MOV     R5,A
-003596 900BE8            MOV     DPTR,#ipcSendBuff+01H
-003599 F0                MOVX    @DPTR,A
-00359A 7E0B              MOV     R6,#HIGH ipcSendBuff+02H
-00359C 7FE9              MOV     R7,#LOW ipcSendBuff+02H
-00359E 904EC4            MOV     DPTR,#?_xmemcpy?BYTE+05H
-0035A1 ED                MOV     A,R5
-0035A2 F0                MOVX    @DPTR,A
-0035A3 120854            LCALL   _xmemcpy
-0035A6 7B01              MOV     R3,#01H
-0035A8 7A0B              MOV     R2,#HIGH ipcSendBuff
-0035AA 79E7              MOV     R1,#LOW ipcSendBuff
-0035AC 904F09            MOV     DPTR,#len
-0035AF E0                MOVX    A,@DPTR
-0035B0 2402              ADD     A,#02H
-0035B2 FD                MOV     R5,A
-0035B3 020FE9            LJMP    _ipcTx
+00358A E0                MOVX    A,@DPTR
+00358B FD                MOV     R5,A
+00358C 900BE8            MOV     DPTR,#ipcSendBuff+01H
+00358F F0                MOVX    @DPTR,A
+003590 7E0B              MOV     R6,#HIGH ipcSendBuff+02H
+003592 7FE9              MOV     R7,#LOW ipcSendBuff+02H
+003594 904EC4            MOV     DPTR,#?_xmemcpy?BYTE+05H
+003597 ED                MOV     A,R5
+003598 F0                MOVX    @DPTR,A
+003599 120854            LCALL   _xmemcpy
+00359C 7B01              MOV     R3,#01H
+00359E 7A0B              MOV     R2,#HIGH ipcSendBuff
+0035A0 79E7              MOV     R1,#LOW ipcSendBuff
+0035A2 904F09            MOV     DPTR,#len
+0035A5 E0                MOVX    A,@DPTR
+0035A6 2402              ADD     A,#02H
+0035A8 FD                MOV     R5,A
+0035A9 020FE9            LJMP    _ipcTx
 ----- FUNCTION _IPC_TxData (END) -------
 
 
 ----- FUNCTION _IPC_Tx24GData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-0035B6 900BE7            MOV     DPTR,#ipcSendBuff
-0035B9 7406              MOV     A,#06H
-0035BB F0                MOVX    @DPTR,A
-0035BC 80D1              SJMP    _IPC_TxData
+0035AC 900BE7            MOV     DPTR,#ipcSendBuff
+0035AF 7406              MOV     A,#06H
+0035B1 F0                MOVX    @DPTR,A
+0035B2 80D1              SJMP    _IPC_TxData
 ----- FUNCTION _IPC_Tx24GData (END) -------
 
 
 ----- FUNCTION _IPC_TxSppData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-0035BE 900BE7            MOV     DPTR,#ipcSendBuff
-0035C1 7404              MOV     A,#04H
-0035C3 F0                MOVX    @DPTR,A
-0035C4 80C9              SJMP    _IPC_TxData
+0035B4 900BE7            MOV     DPTR,#ipcSendBuff
+0035B7 7404              MOV     A,#04H
+0035B9 F0                MOVX    @DPTR,A
+0035BA 80C9              SJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxSppData (END) -------
 
 
 ----- FUNCTION _IPC_TxBleData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-0035C6 900BE7            MOV     DPTR,#ipcSendBuff
-0035C9 7405              MOV     A,#05H
-0035CB F0                MOVX    @DPTR,A
-0035CC 80C1              SJMP    _IPC_TxData
+0035BC 900BE7            MOV     DPTR,#ipcSendBuff
+0035BF 7405              MOV     A,#05H
+0035C1 F0                MOVX    @DPTR,A
+0035C2 80C1              SJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxBleData (END) -------
 
 
 ----- FUNCTION _IPC_TxBREDRHidData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-0035CE 900BE7            MOV     DPTR,#ipcSendBuff
-0035D1 7403              MOV     A,#03H
-0035D3 F0                MOVX    @DPTR,A
-0035D4 ED                MOV     A,R5
-0035D5 6002              JZ      ?C0017?IPC
-0035D7         ?C0016?IPC:
-0035D7 B18F              ACALL   _IPC_TxData
-0035D9         ?C0017?IPC:
-0035D9 22                RET     
+0035C4 900BE7            MOV     DPTR,#ipcSendBuff
+0035C7 7403              MOV     A,#03H
+0035C9 F0                MOVX    @DPTR,A
+0035CA ED                MOV     A,R5
+0035CB 6002              JZ      ?C0017?IPC
+0035CD         ?C0016?IPC:
+0035CD B185              ACALL   _IPC_TxData
+0035CF         ?C0017?IPC:
+0035CF 22                RET     
 ----- FUNCTION _IPC_TxBREDRHidData (END) -------
 
 
 ----- FUNCTION IPC_GetBBDIsconnectReason (BEGIN) -----
-0035DA 900446            MOV     DPTR,#bbDisReason
-0035DD E0                MOVX    A,@DPTR
-0035DE FF                MOV     R7,A
-0035DF 22                RET     
+0035D0 900446            MOV     DPTR,#bbDisReason
+0035D3 E0                MOVX    A,@DPTR
+0035D4 FF                MOV     R7,A
+0035D5 22                RET     
 ----- FUNCTION IPC_GetBBDIsconnectReason (END) -------
 
 
 ----- FUNCTION IPC_AbandonLpm (BEGIN) -----
-0035E0 900B7F            MOV     DPTR,#lpm_flag
-0035E3 7401              MOV     A,#01H
-0035E5 F0                MOVX    @DPTR,A
-0035E6 E4                CLR     A
-0035E7 900B7E            MOV     DPTR,#current_task
-0035EA F0                MOVX    @DPTR,A
-0035EB 22                RET     
+0035D6 900B7F            MOV     DPTR,#lpm_flag
+0035D9 7401              MOV     A,#01H
+0035DB F0                MOVX    @DPTR,A
+0035DC E4                CLR     A
+0035DD 900B7E            MOV     DPTR,#current_task
+0035E0 F0                MOVX    @DPTR,A
+0035E1 22                RET     
 ----- FUNCTION IPC_AbandonLpm (END) -------
 
 
 ----- FUNCTION YC_Ice_break (BEGIN) -----
-0035EC 908280            MOV     DPTR,#08280H
-0035EF 7401              MOV     A,#01H
-0035F1 F0                MOVX    @DPTR,A
-0035F2 22                RET     
+0035E2 908280            MOV     DPTR,#08280H
+0035E5 7401              MOV     A,#01H
+0035E7 F0                MOVX    @DPTR,A
+0035E8 22                RET     
 ----- FUNCTION YC_Ice_break (END) -------
 
 
 ----- FUNCTION _dmemcpy (BEGIN) -----
-0035F3 904E9C            MOV     DPTR,#dest
-0035F6 EB                MOV     A,R3
-0035F7 F0                MOVX    @DPTR,A
-0035F8 A3                INC     DPTR
-0035F9 EA                MOV     A,R2
-0035FA F0                MOVX    @DPTR,A
-0035FB A3                INC     DPTR
-0035FC E9                MOV     A,R1
-0035FD F0                MOVX    @DPTR,A
-0035FE         ?C0005?UTILITIES:
-0035FE 904EA2            MOV     DPTR,#len
-003601 74FF              MOV     A,#0FFH
-003603 F5F0              MOV     B,A
-003605 120424            LCALL   ?C?ILDIX
-003608 45F0              ORL     A,B
-00360A 602A              JZ      ?C0007?UTILITIES
-00360C 904E9F            MOV     DPTR,#src
-00360F E0                MOVX    A,@DPTR
-003610 FB                MOV     R3,A
-003611 A3                INC     DPTR
-003612 E4                CLR     A
-003613 75F001            MOV     B,#01H
-003616 120424            LCALL   ?C?ILDIX
-003619 A9F0              MOV     R1,B
-00361B FA                MOV     R2,A
-00361C 1203B6            LCALL   ?C?CLDPTR
-00361F FF                MOV     R7,A
-003620 904E9C            MOV     DPTR,#dest
-003623 E0                MOVX    A,@DPTR
-003624 FB                MOV     R3,A
-003625 A3                INC     DPTR
-003626 E4                CLR     A
-003627 75F001            MOV     B,#01H
-00362A 120424            LCALL   ?C?ILDIX
-00362D A9F0              MOV     R1,B
-00362F FA                MOV     R2,A
-003630 EF                MOV     A,R7
-003631 1203FC            LCALL   ?C?CSTPTR
-003634 80C8              SJMP    ?C0005?UTILITIES
-003636         ?C0007?UTILITIES:
-003636 22                RET     
+0035E9 904E9C            MOV     DPTR,#dest
+0035EC EB                MOV     A,R3
+0035ED F0                MOVX    @DPTR,A
+0035EE A3                INC     DPTR
+0035EF EA                MOV     A,R2
+0035F0 F0                MOVX    @DPTR,A
+0035F1 A3                INC     DPTR
+0035F2 E9                MOV     A,R1
+0035F3 F0                MOVX    @DPTR,A
+0035F4         ?C0005?UTILITIES:
+0035F4 904EA2            MOV     DPTR,#len
+0035F7 74FF              MOV     A,#0FFH
+0035F9 F5F0              MOV     B,A
+0035FB 120424            LCALL   ?C?ILDIX
+0035FE 45F0              ORL     A,B
+003600 602A              JZ      ?C0007?UTILITIES
+003602 904E9F            MOV     DPTR,#src
+003605 E0                MOVX    A,@DPTR
+003606 FB                MOV     R3,A
+003607 A3                INC     DPTR
+003608 E4                CLR     A
+003609 75F001            MOV     B,#01H
+00360C 120424            LCALL   ?C?ILDIX
+00360F A9F0              MOV     R1,B
+003611 FA                MOV     R2,A
+003612 1203B6            LCALL   ?C?CLDPTR
+003615 FF                MOV     R7,A
+003616 904E9C            MOV     DPTR,#dest
+003619 E0                MOVX    A,@DPTR
+00361A FB                MOV     R3,A
+00361B A3                INC     DPTR
+00361C E4                CLR     A
+00361D 75F001            MOV     B,#01H
+003620 120424            LCALL   ?C?ILDIX
+003623 A9F0              MOV     R1,B
+003625 FA                MOV     R2,A
+003626 EF                MOV     A,R7
+003627 1203FC            LCALL   ?C?CSTPTR
+00362A 80C8              SJMP    ?C0005?UTILITIES
+00362C         ?C0007?UTILITIES:
+00362C 22                RET     
 ----- FUNCTION _dmemcpy (END) -------
 
 
 ----- FUNCTION _IIC_write (BEGIN) -----
-003637 904EB2            MOV     DPTR,#addr
-00363A EE                MOV     A,R6
-00363B F0                MOVX    @DPTR,A
-00363C A3                INC     DPTR
-00363D EF                MOV     A,R7
-00363E F0                MOVX    @DPTR,A
-00363F 904EB6            MOV     DPTR,#pbuff
-003642 EB                MOV     A,R3
-003643 F0                MOVX    @DPTR,A
-003644 A3                INC     DPTR
-003645 EA                MOV     A,R2
-003646 F0                MOVX    @DPTR,A
-003647 A3                INC     DPTR
-003648 E9                MOV     A,R1
-003649 F0                MOVX    @DPTR,A
-00364A 904EB4            MOV     DPTR,#len
-00364D EC                MOV     A,R4
-00364E F0                MOVX    @DPTR,A
-00364F A3                INC     DPTR
-003650 ED                MOV     A,R5
-003651 F0                MOVX    @DPTR,A
-003652 A3                INC     DPTR
-003653 E0                MOVX    A,@DPTR
-003654 F9                MOV     R1,A
+00362D 904EB2            MOV     DPTR,#addr
+003630 EE                MOV     A,R6
+003631 F0                MOVX    @DPTR,A
+003632 A3                INC     DPTR
+003633 EF                MOV     A,R7
+003634 F0                MOVX    @DPTR,A
+003635 904EB6            MOV     DPTR,#pbuff
+003638 EB                MOV     A,R3
+003639 F0                MOVX    @DPTR,A
+00363A A3                INC     DPTR
+00363B EA                MOV     A,R2
+00363C F0                MOVX    @DPTR,A
+00363D A3                INC     DPTR
+00363E E9                MOV     A,R1
+00363F F0                MOVX    @DPTR,A
+003640 904EB4            MOV     DPTR,#len
+003643 EC                MOV     A,R4
+003644 F0                MOVX    @DPTR,A
+003645 A3                INC     DPTR
+003646 ED                MOV     A,R5
+003647 F0                MOVX    @DPTR,A
+003648 A3                INC     DPTR
+003649 E0                MOVX    A,@DPTR
+00364A F9                MOV     R1,A
+00364B A3                INC     DPTR
+00364C E0                MOVX    A,@DPTR
+00364D FA                MOV     R2,A
+00364E A3                INC     DPTR
+00364F E0                MOVX    A,@DPTR
+003650 904E9F            MOV     DPTR,#?_dmemcpy?BYTE+03H
+003653 C9                XCH     A,R1
+003654 F0                MOVX    @DPTR,A
 003655 A3                INC     DPTR
-003656 E0                MOVX    A,@DPTR
-003657 FA                MOV     R2,A
+003656 EA                MOV     A,R2
+003657 F0                MOVX    @DPTR,A
 003658 A3                INC     DPTR
-003659 E0                MOVX    A,@DPTR
-00365A 904E9F            MOV     DPTR,#?_dmemcpy?BYTE+03H
-00365D C9                XCH     A,R1
-00365E F0                MOVX    @DPTR,A
-00365F A3                INC     DPTR
-003660 EA                MOV     A,R2
-003661 F0                MOVX    @DPTR,A
-003662 A3                INC     DPTR
-003663 E9                MOV     A,R1
-003664 F0                MOVX    @DPTR,A
-003665 A3                INC     DPTR
-003666 EC                MOV     A,R4
-003667 F0                MOVX    @DPTR,A
-003668 A3                INC     DPTR
-003669 ED                MOV     A,R5
-00366A F0                MOVX    @DPTR,A
-00366B 7B01              MOV     R3,#01H
-00366D 7A0B              MOV     R2,#HIGH IIC_TempBuff+03H
-00366F 7986              MOV     R1,#LOW IIC_TempBuff+03H
-003671 B1F3              ACALL   _dmemcpy
-003673 900B83            MOV     DPTR,#IIC_TempBuff
-003676 74A0              MOV     A,#0A0H
-003678 F0                MOVX    @DPTR,A
-003679 904EB2            MOV     DPTR,#addr
-00367C E0                MOVX    A,@DPTR
-00367D FF                MOV     R7,A
-00367E A3                INC     DPTR
-00367F E0                MOVX    A,@DPTR
-003680 900B84            MOV     DPTR,#IIC_TempBuff+01H
-003683 CF                XCH     A,R7
-003684 F0                MOVX    @DPTR,A
-003685 A3                INC     DPTR
-003686 EF                MOV     A,R7
-003687 F0                MOVX    @DPTR,A
-003688 904EB5            MOV     DPTR,#len+01H
-00368B E0                MOVX    A,@DPTR
-00368C 2403              ADD     A,#03H
-00368E FD                MOV     R5,A
-00368F 904EB4            MOV     DPTR,#len
-003692 E0                MOVX    A,@DPTR
-003693 3400              ADDC    A,#00H
-003695 FC                MOV     R4,A
-003696 ED                MOV     A,R5
-003697 FA                MOV     R2,A
-003698 EC                MOV     A,R4
-003699 FF                MOV     R7,A
-00369A EA                MOV     A,R2
-00369B FE                MOV     R6,A
-00369C EF                MOV     A,R7
-00369D 908098            MOV     DPTR,#08098H
-0036A0 EE                MOV     A,R6
-0036A1 F0                MOVX    @DPTR,A
-0036A2 A3                INC     DPTR
-0036A3 EF                MOV     A,R7
-0036A4 F0                MOVX    @DPTR,A
-0036A5 7A0B              MOV     R2,#HIGH IIC_TempBuff
-0036A7 7983              MOV     R1,#LOW IIC_TempBuff
-0036A9 7E0B              MOV     R6,#HIGH IIC_TempBuff
-0036AB 7F83              MOV     R7,#LOW IIC_TempBuff
-0036AD 7483              MOV     A,#LOW IIC_TempBuff
-0036AF FC                MOV     R4,A
-0036B0 740B              MOV     A,#HIGH IIC_TempBuff
-0036B2 FF                MOV     R7,A
-0036B3 EC                MOV     A,R4
-0036B4 FE                MOV     R6,A
-0036B5 EF                MOV     A,R7
-0036B6 A3                INC     DPTR
-0036B7 EE                MOV     A,R6
+003659 E9                MOV     A,R1
+00365A F0                MOVX    @DPTR,A
+00365B A3                INC     DPTR
+00365C EC                MOV     A,R4
+00365D F0                MOVX    @DPTR,A
+00365E A3                INC     DPTR
+00365F ED                MOV     A,R5
+003660 F0                MOVX    @DPTR,A
+003661 7B01              MOV     R3,#01H
+003663 7A0B              MOV     R2,#HIGH IIC_TempBuff+03H
+003665 7986              MOV     R1,#LOW IIC_TempBuff+03H
+003667 B1E9              ACALL   _dmemcpy
+003669 900B83            MOV     DPTR,#IIC_TempBuff
+00366C 74A0              MOV     A,#0A0H
+00366E F0                MOVX    @DPTR,A
+00366F 904EB2            MOV     DPTR,#addr
+003672 E0                MOVX    A,@DPTR
+003673 FF                MOV     R7,A
+003674 A3                INC     DPTR
+003675 E0                MOVX    A,@DPTR
+003676 900B84            MOV     DPTR,#IIC_TempBuff+01H
+003679 CF                XCH     A,R7
+00367A F0                MOVX    @DPTR,A
+00367B A3                INC     DPTR
+00367C EF                MOV     A,R7
+00367D F0                MOVX    @DPTR,A
+00367E 904EB5            MOV     DPTR,#len+01H
+003681 E0                MOVX    A,@DPTR
+003682 2403              ADD     A,#03H
+003684 FD                MOV     R5,A
+003685 904EB4            MOV     DPTR,#len
+003688 E0                MOVX    A,@DPTR
+003689 3400              ADDC    A,#00H
+00368B FC                MOV     R4,A
+00368C ED                MOV     A,R5
+00368D FA                MOV     R2,A
+00368E EC                MOV     A,R4
+00368F FF                MOV     R7,A
+003690 EA                MOV     A,R2
+003691 FE                MOV     R6,A
+003692 EF                MOV     A,R7
+003693 908098            MOV     DPTR,#08098H
+003696 EE                MOV     A,R6
+003697 F0                MOVX    @DPTR,A
+003698 A3                INC     DPTR
+003699 EF                MOV     A,R7
+00369A F0                MOVX    @DPTR,A
+00369B 7A0B              MOV     R2,#HIGH IIC_TempBuff
+00369D 7983              MOV     R1,#LOW IIC_TempBuff
+00369F 7E0B              MOV     R6,#HIGH IIC_TempBuff
+0036A1 7F83              MOV     R7,#LOW IIC_TempBuff
+0036A3 7483              MOV     A,#LOW IIC_TempBuff
+0036A5 FC                MOV     R4,A
+0036A6 740B              MOV     A,#HIGH IIC_TempBuff
+0036A8 FF                MOV     R7,A
+0036A9 EC                MOV     A,R4
+0036AA FE                MOV     R6,A
+0036AB EF                MOV     A,R7
+0036AC A3                INC     DPTR
+0036AD EE                MOV     A,R6
+0036AE F0                MOVX    @DPTR,A
+0036AF A3                INC     DPTR
+0036B0 EF                MOV     A,R7
+0036B1 F0                MOVX    @DPTR,A
+0036B2 90809E            MOV     DPTR,#0809EH
+0036B5 E4                CLR     A
+0036B6 F0                MOVX    @DPTR,A
+0036B7 A3                INC     DPTR
 0036B8 F0                MOVX    @DPTR,A
-0036B9 A3                INC     DPTR
-0036BA EF                MOV     A,R7
-0036BB F0                MOVX    @DPTR,A
-0036BC 90809E            MOV     DPTR,#0809EH
-0036BF E4                CLR     A
-0036C0 F0                MOVX    @DPTR,A
-0036C1 A3                INC     DPTR
-0036C2 F0                MOVX    @DPTR,A
-0036C3 908090            MOV     DPTR,#08090H
-0036C6 04                INC     A
-0036C7 F0                MOVX    @DPTR,A
-0036C8 908006            MOV     DPTR,#08006H
-0036CB E0                MOVX    A,@DPTR
-0036CC 4404              ORL     A,#04H
-0036CE F0                MOVX    @DPTR,A
-0036CF 021FC4            LJMP    IIcWaitDone
+0036B9 908090            MOV     DPTR,#08090H
+0036BC 04                INC     A
+0036BD F0                MOVX    @DPTR,A
+0036BE 908006            MOV     DPTR,#08006H
+0036C1 E0                MOVX    A,@DPTR
+0036C2 4404              ORL     A,#04H
+0036C4 F0                MOVX    @DPTR,A
+0036C5 021FC4            LJMP    IIcWaitDone
 ----- FUNCTION _IIC_write (END) -------
 
 
 ----- FUNCTION _xmemclear_ff (BEGIN) -----
-0036D2 904EF4            MOV     DPTR,#dest
-0036D5 EB                MOV     A,R3
-0036D6 F0                MOVX    @DPTR,A
-0036D7 A3                INC     DPTR
-0036D8 EA                MOV     A,R2
-0036D9 F0                MOVX    @DPTR,A
-0036DA A3                INC     DPTR
-0036DB E9                MOV     A,R1
-0036DC F0                MOVX    @DPTR,A
+0036C8 904EF4            MOV     DPTR,#dest
+0036CB EB                MOV     A,R3
+0036CC F0                MOVX    @DPTR,A
+0036CD A3                INC     DPTR
+0036CE EA                MOV     A,R2
+0036CF F0                MOVX    @DPTR,A
+0036D0 A3                INC     DPTR
+0036D1 E9                MOV     A,R1
+0036D2 F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R4/R5' ----
-0036DD         ?C0011?UTILITIES:
-0036DD ED                MOV     A,R5
-0036DE 1D                DEC     R5
-0036DF AE04              MOV     R6,AR4
-0036E1 7001              JNZ     ?C0027?UTILITIES
-0036E3 1C                DEC     R4
-0036E4         ?C0027?UTILITIES:
-0036E4 4E                ORL     A,R6
-0036E5 6017              JZ      ?C0013?UTILITIES
-0036E7 904EF4            MOV     DPTR,#dest
-0036EA E0                MOVX    A,@DPTR
-0036EB FB                MOV     R3,A
-0036EC A3                INC     DPTR
-0036ED E4                CLR     A
-0036EE 75F001            MOV     B,#01H
-0036F1 120424            LCALL   ?C?ILDIX
-0036F4 A9F0              MOV     R1,B
-0036F6 FA                MOV     R2,A
-0036F7 74FF              MOV     A,#0FFH
-0036F9 1203FC            LCALL   ?C?CSTPTR
-0036FC 80DF              SJMP    ?C0011?UTILITIES
-0036FE         ?C0013?UTILITIES:
-0036FE 22                RET     
+0036D3         ?C0011?UTILITIES:
+0036D3 ED                MOV     A,R5
+0036D4 1D                DEC     R5
+0036D5 AE04              MOV     R6,AR4
+0036D7 7001              JNZ     ?C0027?UTILITIES
+0036D9 1C                DEC     R4
+0036DA         ?C0027?UTILITIES:
+0036DA 4E                ORL     A,R6
+0036DB 6017              JZ      ?C0013?UTILITIES
+0036DD 904EF4            MOV     DPTR,#dest
+0036E0 E0                MOVX    A,@DPTR
+0036E1 FB                MOV     R3,A
+0036E2 A3                INC     DPTR
+0036E3 E4                CLR     A
+0036E4 75F001            MOV     B,#01H
+0036E7 120424            LCALL   ?C?ILDIX
+0036EA A9F0              MOV     R1,B
+0036EC FA                MOV     R2,A
+0036ED 74FF              MOV     A,#0FFH
+0036EF 1203FC            LCALL   ?C?CSTPTR
+0036F2 80DF              SJMP    ?C0011?UTILITIES
+0036F4         ?C0013?UTILITIES:
+0036F4 22                RET     
 ----- FUNCTION _xmemclear_ff (END) -------
 
 
 ----- FUNCTION _GPIO_ClearWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-0036FF EF                MOV     A,R7
-003700 F4                CPL     A
-003701 603A              JZ      ?C0023?GPIO
-003703         ?C0022?GPIO:
-003703 EF                MOV     A,R7
-003704 5407              ANL     A,#07H
-003706 FE                MOV     R6,A
+0036F5 EF                MOV     A,R7
+0036F6 F4                CPL     A
+0036F7 603A              JZ      ?C0023?GPIO
+0036F9         ?C0022?GPIO:
+0036F9 EF                MOV     A,R7
+0036FA 5407              ANL     A,#07H
+0036FC FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-003707 EF                MOV     A,R7
-003708 13                RRC     A
-003709 13                RRC     A
-00370A 13                RRC     A
-00370B 5403              ANL     A,#03H
-00370D FF                MOV     R7,A
+0036FD EF                MOV     A,R7
+0036FE 13                RRC     A
+0036FF 13                RRC     A
+003700 13                RRC     A
+003701 5403              ANL     A,#03H
+003703 FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-00370E 24A3              ADD     A,#LOW YC_GPIOWakeupL
-003710 F582              MOV     DPL,A
-003712 E4                CLR     A
-003713 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-003715 F583              MOV     DPH,A
-003717 C083              PUSH    DPH
-003719 C082              PUSH    DPL
-00371B E0                MOVX    A,@DPTR
-00371C FD                MOV     R5,A
-00371D 7401              MOV     A,#01H
-00371F A806              MOV     R0,AR6
-003721 08                INC     R0
-003722 8002              SJMP    ?C0043?GPIO
-003724         ?C0042?GPIO:
-003724 C3                CLR     C
-003725 33                RLC     A
-003726         ?C0043?GPIO:
-003726 D8FC              DJNZ    R0,?C0042?GPIO
-003728 F4                CPL     A
-003729 FC                MOV     R4,A
-00372A 5D                ANL     A,R5
-00372B D082              POP     DPL
-00372D D083              POP     DPH
-00372F F0                MOVX    @DPTR,A
-003730 74A7              MOV     A,#LOW YC_GPIOWakeupH
-003732 2F                ADD     A,R7
-003733 F582              MOV     DPL,A
-003735 E4                CLR     A
-003736 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-003738 F583              MOV     DPH,A
-00373A E0                MOVX    A,@DPTR
-00373B 5C                ANL     A,R4
-00373C F0                MOVX    @DPTR,A
-00373D         ?C0023?GPIO:
-00373D 22                RET     
+003704 24A3              ADD     A,#LOW YC_GPIOWakeupL
+003706 F582              MOV     DPL,A
+003708 E4                CLR     A
+003709 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+00370B F583              MOV     DPH,A
+00370D C083              PUSH    DPH
+00370F C082              PUSH    DPL
+003711 E0                MOVX    A,@DPTR
+003712 FD                MOV     R5,A
+003713 7401              MOV     A,#01H
+003715 A806              MOV     R0,AR6
+003717 08                INC     R0
+003718 8002              SJMP    ?C0043?GPIO
+00371A         ?C0042?GPIO:
+00371A C3                CLR     C
+00371B 33                RLC     A
+00371C         ?C0043?GPIO:
+00371C D8FC              DJNZ    R0,?C0042?GPIO
+00371E F4                CPL     A
+00371F FC                MOV     R4,A
+003720 5D                ANL     A,R5
+003721 D082              POP     DPL
+003723 D083              POP     DPH
+003725 F0                MOVX    @DPTR,A
+003726 74A7              MOV     A,#LOW YC_GPIOWakeupH
+003728 2F                ADD     A,R7
+003729 F582              MOV     DPL,A
+00372B E4                CLR     A
+00372C 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+00372E F583              MOV     DPH,A
+003730 E0                MOVX    A,@DPTR
+003731 5C                ANL     A,R4
+003732 F0                MOVX    @DPTR,A
+003733         ?C0023?GPIO:
+003733 22                RET     
 ----- FUNCTION _GPIO_ClearWakeup (END) -------
 
 
 ----- FUNCTION _GPIO_FlipOutBit (BEGIN) -----
-00373E 904F0C            MOV     DPTR,#gpio_num
-003741 EF                MOV     A,R7
-003742 F0                MOVX    @DPTR,A
-003743 7B01              MOV     R3,#01H
-003745 7A80              MOV     R2,#080H
-003747 7974              MOV     R1,#074H
-003749 1214A1            LCALL   _gpioGetBit
-00374C 9209              MOV     st,C
-00374E 904F0C            MOV     DPTR,#gpio_num
-003751 E0                MOVX    A,@DPTR
-003752 FF                MOV     R7,A
-003753 A209              MOV     C,st
-003755 B3                CPL     C
-003756 9201              MOV     ?_GPIO_Setout?BIT,C
-003758 020EF2            LJMP    _GPIO_Setout
+003734 904F0C            MOV     DPTR,#gpio_num
+003737 EF                MOV     A,R7
+003738 F0                MOVX    @DPTR,A
+003739 7B01              MOV     R3,#01H
+00373B 7A80              MOV     R2,#080H
+00373D 7974              MOV     R1,#074H
+00373F 1214A1            LCALL   _gpioGetBit
+003742 9209              MOV     st,C
+003744 904F0C            MOV     DPTR,#gpio_num
+003747 E0                MOVX    A,@DPTR
+003748 FF                MOV     R7,A
+003749 A209              MOV     C,st
+00374B B3                CPL     C
+00374C 9201              MOV     ?_GPIO_Setout?BIT,C
+00374E 020EF2            LJMP    _GPIO_Setout
 ----- FUNCTION _GPIO_FlipOutBit (END) -------
 
 
 ----- FUNCTION GPIO_fillpd (BEGIN) -----
 ;---- Variable 'i' assigned to Register 'R7' ----
-00375B E4                CLR     A
-00375C FF                MOV     R7,A
-00375D         ?C0026?GPIO:
-00375D EF                MOV     A,R7
-00375E FD                MOV     R5,A
-00375F 7C00              MOV     R4,#00H
-003761 2478              ADD     A,#078H
-003763 FB                MOV     R3,A
-003764 EC                MOV     A,R4
-003765 3480              ADDC    A,#080H
-003767 8B82              MOV     DPL,R3
-003769 F583              MOV     DPH,A
-00376B E0                MOVX    A,@DPTR
-00376C FE                MOV     R6,A
-00376D ED                MOV     A,R5
-00376E 2470              ADD     A,#070H
-003770 FD                MOV     R5,A
-003771 EC                MOV     A,R4
-003772 3480              ADDC    A,#080H
-003774 8D82              MOV     DPL,R5
-003776 F583              MOV     DPH,A
-003778 E0                MOVX    A,@DPTR
-003779 4E                ORL     A,R6
-00377A F4                CPL     A
-00377B FE                MOV     R6,A
-00377C EF                MOV     A,R7
-00377D 247C              ADD     A,#07CH
-00377F FD                MOV     R5,A
-003780 EC                MOV     A,R4
-003781 3480              ADDC    A,#080H
-003783 8D82              MOV     DPL,R5
-003785 F583              MOV     DPH,A
-003787 EE                MOV     A,R6
-003788 F0                MOVX    @DPTR,A
-003789 0F                INC     R7
-00378A EF                MOV     A,R7
-00378B B404CF            CJNE    A,#04H,?C0026?GPIO
-00378E 22                RET     
+003751 E4                CLR     A
+003752 FF                MOV     R7,A
+003753         ?C0026?GPIO:
+003753 EF                MOV     A,R7
+003754 FD                MOV     R5,A
+003755 7C00              MOV     R4,#00H
+003757 2478              ADD     A,#078H
+003759 FB                MOV     R3,A
+00375A EC                MOV     A,R4
+00375B 3480              ADDC    A,#080H
+00375D 8B82              MOV     DPL,R3
+00375F F583              MOV     DPH,A
+003761 E0                MOVX    A,@DPTR
+003762 FE                MOV     R6,A
+003763 ED                MOV     A,R5
+003764 2470              ADD     A,#070H
+003766 FD                MOV     R5,A
+003767 EC                MOV     A,R4
+003768 3480              ADDC    A,#080H
+00376A 8D82              MOV     DPL,R5
+00376C F583              MOV     DPH,A
+00376E E0                MOVX    A,@DPTR
+00376F 4E                ORL     A,R6
+003770 F4                CPL     A
+003771 FE                MOV     R6,A
+003772 EF                MOV     A,R7
+003773 247C              ADD     A,#07CH
+003775 FD                MOV     R5,A
+003776 EC                MOV     A,R4
+003777 3480              ADDC    A,#080H
+003779 8D82              MOV     DPL,R5
+00377B F583              MOV     DPH,A
+00377D EE                MOV     A,R6
+00377E F0                MOVX    @DPTR,A
+00377F 0F                INC     R7
+003780 EF                MOV     A,R7
+003781 B404CF            CJNE    A,#04H,?C0026?GPIO
+003784 22                RET     
 ----- FUNCTION GPIO_fillpd (END) -------
 
 
Index: c51/output/FW.HTM
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/FW.HTM	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/FW.HTM	(working copy)
@@ -25,7 +25,7 @@
 
 <p class="TinyT">
 Created from: <b>LX51 LINKER/LOCATER V4.41</b><br>
-Creation time: <b>11/04/2022  17:12:23</b><p>
+Creation time: <b>11/07/2022  16:28:08</b><p>
 
 <hr>
 
@@ -64,19 +64,19 @@
 <li><a href="#S194">?PR?_GPIO_SETINPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S101"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:003209H - C:003211H)</h2>
+<h2><a name="S101"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:0031FFH - C:003207H)</h2>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S104">?PR?SYSTEM_RESET_CONNECT?SYS</a></li>
 </ul>
 
-<h2><a name="S104"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:003212H - C:003213H)</h2>
+<h2><a name="S104"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:003208H - C:003209H)</h2>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S101">?PR?SYSTEM_HARDWARE_RESET?SYS</a></li>
 </ul>
 
-<h2><a name="S105"></a>?PR?_KB_CB_HID?SYS (C:003214H - C:003223H)</h2>
+<h2><a name="S105"></a>?PR?_KB_CB_HID?SYS (C:00320AH - C:003219H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S219">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -129,7 +129,7 @@
 <li><a href="#S112">?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S116"></a>?PR?KB_CB_TIMER100MS?SYS (C:0030F3H - C:0031E5H)</h2>
+<h2><a name="S116"></a>?PR?KB_CB_TIMER100MS?SYS (C:0030E9H - C:0031DBH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=14 Bytes (<a href="#S55">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -170,14 +170,14 @@
 <li><a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S140"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:0035CEH - C:0035D9H)</h2>
+<h2><a name="S140"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:0035C4H - C:0035CFH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S138">?PR?_IPC_TXDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S138">?PR?_IPC_TXDATA?IPC</a></li>
 </ul>
 
-<h2><a name="S142"></a>?PR?_IPC_TXSPPDATA?IPC (C:0035BEH - C:0035C5H)</h2>
+<h2><a name="S142"></a>?PR?_IPC_TXSPPDATA?IPC (C:0035B4H - C:0035BBH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S138">?PR?_IPC_TXDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -451,7 +451,7 @@
 <li><a href="#S70">?PR?_KEY_FN_FUNCTION?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S70"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:0028ADH - C:002B6AH)</h2>
+<h2><a name="S70"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:0028ADH - C:002B60H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S69">?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS</a>) Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -477,21 +477,21 @@
 <li><a href="#S65">?PR?_KB_MOTION_KEYSCAN?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S74"></a>?PR?_BIT_COUNT?KEYSCAN (C:002DBCH - C:002DC9H)</h2>
+<h2><a name="S74"></a>?PR?_BIT_COUNT?KEYSCAN (C:002DB2H - C:002DBFH)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S75"></a>?PR?_KEYIN?KEYSCAN (C:002E44H - C:002E99H)</h2>
+<h2><a name="S75"></a>?PR?_KEYIN?KEYSCAN (C:002E3AH - C:002E8FH)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S76"></a>?PR?_KEYOUT?KEYSCAN (C:002E9AH - C:002F43H)</h2>
+<h2><a name="S76"></a>?PR?_KEYOUT?KEYSCAN (C:002E90H - C:002F39H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -536,14 +536,14 @@
 <li><a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S84"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:002F44H - C:0030A5H)</h2>
+<h2><a name="S84"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:002F3AH - C:00309BH)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S86"></a>?PR?_ARRAY_IS_EMPTY?KEYSCAN (C:002DCAH - C:002DF9H)</h2>
+<h2><a name="S86"></a>?PR?_ARRAY_IS_EMPTY?KEYSCAN (C:002DC0H - C:002DEFH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S219">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -555,7 +555,7 @@
 <li><a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S88"></a>?PR?KS_GETCURRENTEVT?KEYSCAN (C:002B6BH - C:002DBBH)</h2>
+<h2><a name="S88"></a>?PR?KS_GETCURRENTEVT?KEYSCAN (C:002B61H - C:002DB1H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S84">?PR?KS_SCANMATRIX?KEYSCAN</a>) Top=4 Bytes (<a href="#S62">?PR?KB_MOTION?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -588,7 +588,7 @@
 <li><a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S92"></a>?PR?LED_DEVICE_POWERON?LED (C:0030A6H - C:0030F2H)</h2>
+<h2><a name="S92"></a>?PR?LED_DEVICE_POWERON?LED (C:00309CH - C:0030E8H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S186">?PR?_GPIO_SETOUT?GPIO</a>) Top=4 Bytes (<a href="#S114">?PR?KB_BUTTON_PRESS_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -601,7 +601,7 @@
 <li><a href="#S116">?PR?KB_CB_TIMER100MS?SYS</a></li>
 </ul>
 
-<h2><a name="S93"></a>?PR?LED_DEVICE_POWEROFF?LED (C:0031E6H - C:003208H)</h2>
+<h2><a name="S93"></a>?PR?LED_DEVICE_POWEROFF?LED (C:0031DCH - C:0031FEH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S186">?PR?_GPIO_SETOUT?GPIO</a>) Top=2 Bytes (<a href="#S107">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -804,7 +804,7 @@
 <li><a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S124"></a>?PR?YC_ADC_INIT?ADC (C:003224H - C:003335H)</h2>
+<h2><a name="S124"></a>?PR?YC_ADC_INIT?ADC (C:00321AH - C:00332BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S219">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S100">?PR?SYSTEM_SOFTWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -859,7 +859,7 @@
 <li><a href="#S134">?PR?_IPCTX?IPC</a></li>
 </ul>
 
-<h2><a name="S132"></a>?PR?_IPCRX?IPC (C:003336H - C:003385H)</h2>
+<h2><a name="S132"></a>?PR?_IPCRX?IPC (C:00332CH - C:00337BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S219">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S149">?PR?IPC_DEALSINGLESTEP?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -906,7 +906,7 @@
 <li><a href="#S112">?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S138"></a>?PR?_IPC_TXDATA?IPC (C:00358FH - C:0035B5H)</h2>
+<h2><a name="S138"></a>?PR?_IPC_TXDATA?IPC (C:003585H - C:0035ABH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S169">?PR?_XMEMCPY?UTILITIES</a>) Top=8 Bytes (<a href="#S143">?PR?_IPC_TXBLEDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -922,7 +922,7 @@
 <li><a href="#S142">?PR?_IPC_TXSPPDATA?IPC</a></li>
 </ul>
 
-<h2><a name="S141"></a>?PR?_IPC_TX24GDATA?IPC (C:0035B6H - C:0035BDH)</h2>
+<h2><a name="S141"></a>?PR?_IPC_TX24GDATA?IPC (C:0035ACH - C:0035B3H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S138">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S55">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -934,7 +934,7 @@
 <li><a href="#S55">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S143"></a>?PR?_IPC_TXBLEDATA?IPC (C:0035C6H - C:0035CDH)</h2>
+<h2><a name="S143"></a>?PR?_IPC_TXBLEDATA?IPC (C:0035BCH - C:0035C3H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S138">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S55">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -958,7 +958,7 @@
 <li><a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S147"></a>?PR?IPC_ABANDONLPM?IPC (C:0035E0H - C:0035EBH)</h2>
+<h2><a name="S147"></a>?PR?IPC_ABANDONLPM?IPC (C:0035D6H - C:0035E1H)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -972,7 +972,7 @@
 <li><a href="#S62">?PR?KB_MOTION?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S149"></a>?PR?IPC_DEALSINGLESTEP?IPC (C:003386H - C:00358EH)</h2>
+<h2><a name="S149"></a>?PR?IPC_DEALSINGLESTEP?IPC (C:00337CH - C:003584H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S132">?PR?_IPCRX?IPC</a>) Top=2 Bytes (<a href="#S118">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1001,7 +1001,7 @@
 <li><a href="#S4">?PR?_YC_STORE_RECORD_LIST?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S171"></a>?PR?_DMEMCPY?UTILITIES (C:0035F3H - C:003636H)</h2>
+<h2><a name="S171"></a>?PR?_DMEMCPY?UTILITIES (C:0035E9H - C:00362CH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S219">?C?LIB_CODE</a>) Top=16 Bytes (<a href="#S213">?PR?_IIC_WRITE?IIC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1029,7 +1029,7 @@
 <li><a href="#S111">?PR?YC_CONNECT_TIMEOUT_500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S175"></a>?PR?_XMEMCLEAR_FF?UTILITIES (C:0036D2H - C:0036FEH)</h2>
+<h2><a name="S175"></a>?PR?_XMEMCLEAR_FF?UTILITIES (C:0036C8H - C:0036F4H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S219">?C?LIB_CODE</a>) Top=12 Bytes (<a href="#S53">?PR?_YC_KEY_ACTION_HANDLE?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1057,7 +1057,7 @@
 <li><a href="#S15">?PR?YC_UPDATE_EEPROM_DATA?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S178"></a>?PR?_COMPARE_STR?UTILITIES (C:002DFAH - C:002E43H)</h2>
+<h2><a name="S178"></a>?PR?_COMPARE_STR?UTILITIES (C:002DF0H - C:002E39H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S219">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S88">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1214,7 +1214,7 @@
 <li><a href="#S82">?PR?KS_UNISTALL?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S204"></a>?PR?_GPIO_FLIPOUTBIT?GPIO (C:00373EH - C:00375AH)</h2>
+<h2><a name="S204"></a>?PR?_GPIO_FLIPOUTBIT?GPIO (C:003734H - C:003750H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S183">?PR?_GPIOGETBIT?GPIO</a>) Top=4 Bytes (<a href="#S110">?PR?LED_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1227,7 +1227,7 @@
 <li><a href="#S110">?PR?LED_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S207"></a>?PR?GPIO_FILLPD?GPIO (C:00375BH - C:00378EH)</h2>
+<h2><a name="S207"></a>?PR?GPIO_FILLPD?GPIO (C:003751H - C:003784H)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S82">?PR?KS_UNISTALL?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -1258,7 +1258,7 @@
 <li><a href="#S13">?PR?YC_START_RECONNECT?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S213"></a>?PR?_IIC_WRITE?IIC (C:003637H - C:0036D1H)</h2>
+<h2><a name="S213"></a>?PR?_IIC_WRITE?IIC (C:00362DH - C:0036C7H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S171">?PR?_DMEMCPY?UTILITIES</a>) Top=14 Bytes (<a href="#S215">?PR?_IIC_WRITEBLOCK?IIC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
Index: c51/output/FW.MAP
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/FW.MAP	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/FW.MAP	(working copy)
@@ -1,8 +1,8 @@
-LX51 LINKER/LOCATER V4.41                                                               11/04/2022  17:12:23  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               11/07/2022  16:28:08  PAGE 1
 
 
 LX51 LINKER/LOCATER V4.41, INVOKED BY:
-D:\KEIL\C51\BIN\LX51.EXE OUTPUT/BLUETOOTH.OBJ, OUTPUT/GLOBAL_VARIABLE.OBJ, OUTPUT/KB_PROCESS.OBJ, OUTPUT/KEYSCAN.OBJ, OU
+H:\KEIL\C51\BIN\LX51.EXE OUTPUT/BLUETOOTH.OBJ, OUTPUT/GLOBAL_VARIABLE.OBJ, OUTPUT/KB_PROCESS.OBJ, OUTPUT/KEYSCAN.OBJ, OU
 >> TPUT/LED.OBJ, OUTPUT/SYS.OBJ, OUTPUT/ADC.OBJ, OUTPUT/RAM.OBJ, OUTPUT/..\PATCH\IPC.OBJ, OUTPUT/..\PATCH\UTILITIES.OBJ,
 >>  OUTPUT/..\PATCH\GPIO.OBJ, OUTPUT/..\PATCH\IIC.OBJ TO OUTPUT\FW CLASSES (XDATA (X:0X4DD0-X:0X4F40), CODE (C:0-C:0XFFF
 >> F), DATA (D:0X10-0X7F), IDATA (I:0X80-0XCF)) SEGMENTS (?STACK (D:0XD0)) NOOVERLAY PAGELENGTH (60000) CODE
@@ -37,47 +37,47 @@
          COMMENT TYPE 0: C51 V9.00
   OUTPUT/..\PATCH\IIC.OBJ (IIC)
          COMMENT TYPE 0: C51 V9.00
-  D:\KEIL\C51\LIB\C51FPL.LIB (?C?FPADD)
+  H:\KEIL\C51\LIB\C51FPL.LIB (?C?FPADD)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51FPL.LIB (?C?FPMUL)
+  H:\KEIL\C51\LIB\C51FPL.LIB (?C?FPMUL)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51FPL.LIB (?C?FCAST)
+  H:\KEIL\C51\LIB\C51FPL.LIB (?C?FCAST)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51FPL.LIB (?C?CASTF)
+  H:\KEIL\C51\LIB\C51FPL.LIB (?C?CASTF)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51FPL.LIB (?C?FPGETOPN)
+  H:\KEIL\C51\LIB\C51FPL.LIB (?C?FPGETOPN)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C_STARTUP)
+  H:\KEIL\C51\LIB\C51L.LIB (?C_STARTUP)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?COPY)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?COPY)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?CLDPTR)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?CLDPTR)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?CLDOPTR)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?CLDOPTR)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?CSTPTR)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?CSTPTR)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?IILDX)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?IILDX)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?ILDIX)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?ILDIX)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?LMUL)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?LMUL)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?ULDIV)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?ULDIV)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?LNEG)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?LNEG)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?ULCMP)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?ULCMP)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?LSTXDATA)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?LSTXDATA)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?LSTKXDATA)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?LSTKXDATA)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?CCASE)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?CCASE)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C?ICALL)
+  H:\KEIL\C51\LIB\C51L.LIB (?C?ICALL)
          COMMENT TYPE 1: A51 / ASM51 Assembler
-  D:\KEIL\C51\LIB\C51L.LIB (?C_INIT)
+  H:\KEIL\C51\LIB\C51L.LIB (?C_INIT)
          COMMENT TYPE 1: A51 / ASM51 Assembler
 
 
@@ -86,7 +86,7 @@
 BASE        START       END         USED      MEMORY CLASS
 ==========================================================
 X:000000H   X:004DD0H   X:004F40H   00038CH   XDATA
-C:000000H   C:000000H   C:00FFFFH   0036D9H   CODE
+C:000000H   C:000000H   C:00FFFFH   0036CFH   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
@@ -196,37 +196,37 @@
 0027D1H   0027EBH   00001BH   BYTE   UNIT     CODE           ?PR?_KB_SET_SYSTEMKEY?KB_PROCESS
 0027ECH   002887H   00009CH   BYTE   UNIT     CODE           ?PR?_KB_DEVICE_SELECT?KB_PROCESS
 002888H   0028ACH   000025H   BYTE   UNIT     CODE           ?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS
-0028ADH   002B6AH   0002BEH   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
-002B6BH   002DBBH   000251H   BYTE   UNIT     CODE           ?PR?KS_GETCURRENTEVT?KEYSCAN
-002DBCH   002DC9H   00000EH   BYTE   UNIT     CODE           ?PR?_BIT_COUNT?KEYSCAN
-002DCAH   002DF9H   000030H   BYTE   UNIT     CODE           ?PR?_ARRAY_IS_EMPTY?KEYSCAN
-002DFAH   002E43H   00004AH   BYTE   UNIT     CODE           ?PR?_COMPARE_STR?UTILITIES
-002E44H   002E99H   000056H   BYTE   UNIT     CODE           ?PR?_KEYIN?KEYSCAN
-002E9AH   002F43H   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
-002F44H   0030A5H   000162H   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
-0030A6H   0030F2H   00004DH   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
-0030F3H   0031E5H   0000F3H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
-0031E6H   003208H   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWEROFF?LED
-003209H   003211H   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
-003212H   003213H   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
-003214H   003223H   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
-003224H   003335H   000112H   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
-003336H   003385H   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
-003386H   00358EH   000209H   BYTE   UNIT     CODE           ?PR?IPC_DEALSINGLESTEP?IPC
-00358FH   0035B5H   000027H   BYTE   UNIT     CODE           ?PR?_IPC_TXDATA?IPC
-0035B6H   0035BDH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TX24GDATA?IPC
-0035BEH   0035C5H   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
-0035C6H   0035CDH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
-0035CEH   0035D9H   00000CH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
-0035DAH   0035DFH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
-0035E0H   0035EBH   00000CH   BYTE   UNIT     CODE           ?PR?IPC_ABANDONLPM?IPC
-0035ECH   0035F2H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
-0035F3H   003636H   000044H   BYTE   UNIT     CODE           ?PR?_DMEMCPY?UTILITIES
-003637H   0036D1H   00009BH   BYTE   UNIT     CODE           ?PR?_IIC_WRITE?IIC
-0036D2H   0036FEH   00002DH   BYTE   UNIT     CODE           ?PR?_XMEMCLEAR_FF?UTILITIES
-0036FFH   00373DH   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
-00373EH   00375AH   00001DH   BYTE   UNIT     CODE           ?PR?_GPIO_FLIPOUTBIT?GPIO
-00375BH   00378EH   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
+0028ADH   002B60H   0002B4H   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
+002B61H   002DB1H   000251H   BYTE   UNIT     CODE           ?PR?KS_GETCURRENTEVT?KEYSCAN
+002DB2H   002DBFH   00000EH   BYTE   UNIT     CODE           ?PR?_BIT_COUNT?KEYSCAN
+002DC0H   002DEFH   000030H   BYTE   UNIT     CODE           ?PR?_ARRAY_IS_EMPTY?KEYSCAN
+002DF0H   002E39H   00004AH   BYTE   UNIT     CODE           ?PR?_COMPARE_STR?UTILITIES
+002E3AH   002E8FH   000056H   BYTE   UNIT     CODE           ?PR?_KEYIN?KEYSCAN
+002E90H   002F39H   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
+002F3AH   00309BH   000162H   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
+00309CH   0030E8H   00004DH   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
+0030E9H   0031DBH   0000F3H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
+0031DCH   0031FEH   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWEROFF?LED
+0031FFH   003207H   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
+003208H   003209H   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
+00320AH   003219H   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
+00321AH   00332BH   000112H   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
+00332CH   00337BH   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
+00337CH   003584H   000209H   BYTE   UNIT     CODE           ?PR?IPC_DEALSINGLESTEP?IPC
+003585H   0035ABH   000027H   BYTE   UNIT     CODE           ?PR?_IPC_TXDATA?IPC
+0035ACH   0035B3H   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TX24GDATA?IPC
+0035B4H   0035BBH   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
+0035BCH   0035C3H   000008H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
+0035C4H   0035CFH   00000CH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
+0035D0H   0035D5H   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
+0035D6H   0035E1H   00000CH   BYTE   UNIT     CODE           ?PR?IPC_ABANDONLPM?IPC
+0035E2H   0035E8H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
+0035E9H   00362CH   000044H   BYTE   UNIT     CODE           ?PR?_DMEMCPY?UTILITIES
+00362DH   0036C7H   00009BH   BYTE   UNIT     CODE           ?PR?_IIC_WRITE?IIC
+0036C8H   0036F4H   00002DH   BYTE   UNIT     CODE           ?PR?_XMEMCLEAR_FF?UTILITIES
+0036F5H   003733H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
+003734H   003750H   00001DH   BYTE   UNIT     CODE           ?PR?_GPIO_FLIPOUTBIT?GPIO
+003751H   003784H   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
 
 * * * * * * * * * * *  X D A T A   M E M O R Y  * * * * * * * * * * * * *
 000040H   000045H   000006H   BYTE   OFFS..   XDATA          ?XD?GLOBAL_VARIABLE?29
@@ -413,12 +413,12 @@
       00000000H   NUMBER   ---       ?C?XDATASEG
       01000626H   CODE     ---       ?C_START
       01000000H   CODE     ---       ?C_STARTUP
-      01002DCAH   CODE     ---       _array_is_empty
-      01002DFAH   CODE     ---       _compare_str
+      01002DC0H   CODE     ---       _array_is_empty
+      01002DF0H   CODE     ---       _compare_str
       01000D03H   CODE     ---       _Delay1ms
-      010035F3H   CODE     ---       _dmemcpy
-      010036FFH   CODE     ---       _GPIO_ClearWakeup
-      0100373EH   CODE     ---       _GPIO_FlipOutBit
+      010035E9H   CODE     ---       _dmemcpy
+      010036F5H   CODE     ---       _GPIO_ClearWakeup
+      01003734H   CODE     ---       _GPIO_FlipOutBit
       0100149BH   CODE     ---       _GPIO_GetInputStatus
       01001D01H   CODE     ---       _GPIO_SetInput
       01001D5AH   CODE     ---       _GPIO_Setoe
@@ -429,16 +429,16 @@
       01001217H   CODE     ---       _GPIO_SetWakeup
       0100133CH   CODE     ---       _GPIO_SetWakeupByCurrentState
       01001B78H   CODE     ---       _IIC_Read
-      01003637H   CODE     ---       _IIC_write
+      0100362DH   CODE     ---       _IIC_write
       010013ECH   CODE     ---       _IIC_WriteBlock
       010017E0H   CODE     ---       _IPC_Initialize
-      010035B6H   CODE     ---       _IPC_Tx24GData
-      010035C6H   CODE     ---       _IPC_TxBleData
-      010035CEH   CODE     ---       _IPC_TxBREDRHidData
+      010035ACH   CODE     ---       _IPC_Tx24GData
+      010035BCH   CODE     ---       _IPC_TxBleData
+      010035C4H   CODE     ---       _IPC_TxBREDRHidData
       01000FC1H   CODE     ---       _IPC_TxControlCmd
-      0100358FH   CODE     ---       _IPC_TxData
+      01003585H   CODE     ---       _IPC_TxData
       01000C1FH   CODE     ---       _IPC_TxHidData
-      010035BEH   CODE     ---       _IPC_TxSppData
+      010035B4H   CODE     ---       _IPC_TxSppData
       01002888H   CODE     ---       _kb_combination_key_press
       010027ECH   CODE     ---       _kb_device_select
       01000897H   CODE     ---       _kb_motion_keyscan
@@ -448,7 +448,7 @@
       010027D1H   CODE     ---       _kb_set_systemkey
       010028ADH   CODE     ---       _key_fn_function
       01001E69H   CODE     ---       _xmemclear
-      010036D2H   CODE     ---       _xmemclear_ff
+      010036C8H   CODE     ---       _xmemclear_ff
       01000854H   CODE     ---       _xmemcpy
       01000D1BH   CODE     ---       _YC_key_action_handle
       01000737H   CODE     ---       _YC_load_record_list
@@ -472,12 +472,12 @@
       02004DD8H   XDATA    BYTE      fn_tx_flag
       02004CBFH   XDATA    ---       g_variable
       02004DD5H   XDATA    BYTE      get_24g_led_send
-      0100375BH   CODE     ---       GPIO_fillpd
+      01003751H   CODE     ---       GPIO_fillpd
       02004800H   XDATA    ---       hidBuff
       02004DE1H   XDATA    BYTE      iOS_rec_pinCode
-      010035E0H   CODE     ---       IPC_AbandonLpm
-      01003386H   CODE     ---       IPC_DealSingleStep
-      010035DAH   CODE     ---       IPC_GetBBDIsconnectReason
+      010035D6H   CODE     ---       IPC_AbandonLpm
+      0100337CH   CODE     ---       IPC_DealSingleStep
+      010035D0H   CODE     ---       IPC_GetBBDIsconnectReason
       01001FCCH   CODE     ---       IPC_IsTxBuffEmpty
       010017B8H   CODE     ---       IPC_WaitLpm
       02000550H   XDATA    ---       ipcPin
@@ -490,9 +490,9 @@
       01001ED0H   CODE     ---       kb_need_keyscan
       02004DE8H   XDATA    BYTE      key_value_temp
       02004DE4H   XDATA    BYTE      keyCount
-      01002B6BH   CODE     ---       KS_GetCurrentEvt
+      01002B61H   CODE     ---       KS_GetCurrentEvt
       01001D20H   CODE     ---       KS_Initialize
-      01002F44H   CODE     ---       KS_ScanMatrix
+      01002F3AH   CODE     ---       KS_ScanMatrix
       010012A3H   CODE     ---       KS_Unistall
       02004213H   XDATA    BYTE      kscurrmult
       02004EA4H   XDATA    ---       ksEvtPool
@@ -506,8 +506,8 @@
       02004DDBH   XDATA    BYTE      le_send_battery_level_delay_count
       02004DDAH   XDATA    BYTE      le_send_battery_level_flag
       010015EFH   CODE     ---       LED_all_shutdown
-      010031E6H   CODE     ---       LED_device_poweroff
-      010030A6H   CODE     ---       LED_device_poweron
+      010031DCH   CODE     ---       LED_device_poweroff
+      0100309CH   CODE     ---       LED_device_poweron
       010010ECH   CODE     ---       LED_handle
       01000F04H   CODE     ---       LED_timer500ms
       02004DDCH   XDATA    BYTE      long_press_flag
@@ -559,11 +559,11 @@
       0100216FH   CODE     ---       System_G24_long_lpm
       02004DE9H   XDATA    BYTE      system_key_press
       010017AEH   CODE     ---       System_long_sleep
-      01003212H   CODE     ---       System_Reset_Connect
+      01003208H   CODE     ---       System_Reset_Connect
       01001D9BH   CODE     ---       System_Software_init
       010022E2H   CODE     ---       YC_adc_check
       01002222H   CODE     ---       YC_adc_check_timer500ms
-      01003224H   CODE     ---       YC_adc_init
+      0100321AH   CODE     ---       YC_adc_init
       01002201H   CODE     ---       YC_adc_motion_check_timer500ms
       0100186DH   CODE     ---       YC_cancel_reconnect
       010010D7H   CODE     ---       YC_check_is_connected
@@ -575,7 +575,7 @@
       01002272H   CODE     ---       YC_get_ble_ramdon_lap
       020000A7H   XDATA    ---       YC_GPIOWakeupH
       020000A3H   XDATA    ---       YC_GPIOWakeupL
-      010035ECH   CODE     ---       YC_Ice_break
+      010035E2H   CODE     ---       YC_Ice_break
       010021B8H   CODE     ---       YC_pairing_timerout_500ms
       01001C28H   CODE     ---       YC_start_reconnect
       010011A3H   CODE     ---       YC_System_Main
@@ -1365,390 +1365,385 @@
       010028BAH   LINE      ---      ---       #596
       010028BFH   LINE      ---      ---       #598
       010028C4H   LINE      ---      ---       #600
-      010028CBH   LINE      ---      ---       #601
-      010028CBH   LINE      ---      ---       #602
-      010028CFH   LINE      ---      ---       #603
-      010028D7H   LINE      ---      ---       #604
-      010028DBH   LINE      ---      ---       #605
-      010028E3H   LINE      ---      ---       #606
-      010028E7H   LINE      ---      ---       #607
-      010028EFH   LINE      ---      ---       #608
-      010028F3H   LINE      ---      ---       #609
-      010028F9H   LINE      ---      ---       #610
-      010028F9H   LINE      ---      ---       #611
+      010028CFH   LINE      ---      ---       #601
+      010028CFH   LINE      ---      ---       #602
+      010028D3H   LINE      ---      ---       #603
+      010028DBH   LINE      ---      ---       #604
+      010028DFH   LINE      ---      ---       #605
+      010028E7H   LINE      ---      ---       #606
+      010028EBH   LINE      ---      ---       #607
+      010028F3H   LINE      ---      ---       #608
+      010028F7H   LINE      ---      ---       #609
+      010028FDH   LINE      ---      ---       #610
       010028FDH   LINE      ---      ---       #612
-      010028FDH   LINE      ---      ---       #613
-      01002901H   LINE      ---      ---       #614
+      01002903H   LINE      ---      ---       #613
+      01002903H   LINE      ---      ---       #614
       01002907H   LINE      ---      ---       #615
       01002907H   LINE      ---      ---       #616
-      0100290DH   LINE      ---      ---       #617
-      0100290DH   LINE      ---      ---       #618
-      01002911H   LINE      ---      ---       #619
-      01002911H   LINE      ---      ---       #620
-      01002919H   LINE      ---      ---       #621
+      0100290FH   LINE      ---      ---       #617
+      01002914H   LINE      ---      ---       #618
+      01002914H   LINE      ---      ---       #619
+      01002914H   LINE      ---      ---       #621
       0100291EH   LINE      ---      ---       #622
       0100291EH   LINE      ---      ---       #623
-      0100291EH   LINE      ---      ---       #625
-      01002928H   LINE      ---      ---       #626
-      01002928H   LINE      ---      ---       #627
+      01002932H   LINE      ---      ---       #624
+      01002932H   LINE      ---      ---       #625
+      01002936H   LINE      ---      ---       #626
+      01002936H   LINE      ---      ---       #627
       0100293CH   LINE      ---      ---       #628
-      0100293CH   LINE      ---      ---       #629
-      01002940H   LINE      ---      ---       #630
-      01002940H   LINE      ---      ---       #631
-      01002946H   LINE      ---      ---       #632
-      01002948H   LINE      ---      ---       #633
-      0100294CH   LINE      ---      ---       #634
-      0100294CH   LINE      ---      ---       #635
-      01002951H   LINE      ---      ---       #637
+      0100293EH   LINE      ---      ---       #629
+      01002942H   LINE      ---      ---       #630
+      01002942H   LINE      ---      ---       #631
+      01002947H   LINE      ---      ---       #633
+      01002949H   LINE      ---      ---       #634
+      0100294DH   LINE      ---      ---       #635
+      0100294DH   LINE      ---      ---       #636
       01002953H   LINE      ---      ---       #638
-      01002957H   LINE      ---      ---       #639
-      01002957H   LINE      ---      ---       #640
-      0100295DH   LINE      ---      ---       #642
+      01002955H   LINE      ---      ---       #639
+      01002959H   LINE      ---      ---       #640
+      01002959H   LINE      ---      ---       #641
       0100295FH   LINE      ---      ---       #643
-      01002963H   LINE      ---      ---       #644
-      01002963H   LINE      ---      ---       #645
-      01002969H   LINE      ---      ---       #647
-      01002969H   LINE      ---      ---       #648
-      0100296EH   LINE      ---      ---       #649
-      01002978H   LINE      ---      ---       #650
-      01002978H   LINE      ---      ---       #651
-      0100297EH   LINE      ---      ---       #652
-      01002980H   LINE      ---      ---       #653
-      0100298EH   LINE      ---      ---       #654
-      0100298EH   LINE      ---      ---       #655
-      010029A6H   LINE      ---      ---       #656
-      010029ACH   LINE      ---      ---       #657
-      010029ACH   LINE      ---      ---       #658
-      010029AEH   LINE      ---      ---       #659
+      0100295FH   LINE      ---      ---       #644
+      01002964H   LINE      ---      ---       #645
+      0100296EH   LINE      ---      ---       #646
+      0100296EH   LINE      ---      ---       #647
+      01002974H   LINE      ---      ---       #648
+      01002976H   LINE      ---      ---       #649
+      01002984H   LINE      ---      ---       #650
+      01002984H   LINE      ---      ---       #651
+      0100299CH   LINE      ---      ---       #652
+      010029A2H   LINE      ---      ---       #653
+      010029A2H   LINE      ---      ---       #654
+      010029A4H   LINE      ---      ---       #655
+      010029A9H   LINE      ---      ---       #656
+      010029A9H   LINE      ---      ---       #657
+      010029ADH   LINE      ---      ---       #658
+      010029ADH   LINE      ---      ---       #659
       010029B3H   LINE      ---      ---       #660
       010029B3H   LINE      ---      ---       #661
-      010029B7H   LINE      ---      ---       #662
-      010029B7H   LINE      ---      ---       #663
-      010029BDH   LINE      ---      ---       #664
-      010029BDH   LINE      ---      ---       #665
-      010029BFH   LINE      ---      ---       #666
-      010029C1H   LINE      ---      ---       #668
-      010029C7H   LINE      ---      ---       #670
-      010029D1H   LINE      ---      ---       #671
-      010029D1H   LINE      ---      ---       #672
-      010029D7H   LINE      ---      ---       #673
-      010029D9H   LINE      ---      ---       #674
-      010029E5H   LINE      ---      ---       #675
-      010029E5H   LINE      ---      ---       #676
-      010029FDH   LINE      ---      ---       #677
-      01002A03H   LINE      ---      ---       #678
-      01002A03H   LINE      ---      ---       #679
-      01002A03H   LINE      ---      ---       #680
-      01002A08H   LINE      ---      ---       #681
-      01002A08H   LINE      ---      ---       #682
-      01002A08H   LINE      ---      ---       #683
-      01002A30H   LINE      ---      ---       #684
-      01002A30H   LINE      ---      ---       #685
-      01002A6CH   LINE      ---      ---       #686
-      01002A6CH   LINE      ---      ---       #687
-      01002A6CH   LINE      ---      ---       #688
+      010029B5H   LINE      ---      ---       #662
+      010029B7H   LINE      ---      ---       #664
+      010029BDH   LINE      ---      ---       #666
+      010029C7H   LINE      ---      ---       #667
+      010029C7H   LINE      ---      ---       #668
+      010029CDH   LINE      ---      ---       #669
+      010029CFH   LINE      ---      ---       #670
+      010029DBH   LINE      ---      ---       #671
+      010029DBH   LINE      ---      ---       #672
+      010029F3H   LINE      ---      ---       #673
+      010029F9H   LINE      ---      ---       #674
+      010029F9H   LINE      ---      ---       #675
+      010029F9H   LINE      ---      ---       #676
+      010029FEH   LINE      ---      ---       #677
+      010029FEH   LINE      ---      ---       #678
+      010029FEH   LINE      ---      ---       #679
+      01002A26H   LINE      ---      ---       #680
+      01002A26H   LINE      ---      ---       #681
+      01002A62H   LINE      ---      ---       #682
+      01002A62H   LINE      ---      ---       #683
+      01002A62H   LINE      ---      ---       #684
+      01002A68H   LINE      ---      ---       #685
+      01002A6AH   LINE      ---      ---       #686
+      01002A6AH   LINE      ---      ---       #687
+      01002A70H   LINE      ---      ---       #688
       01002A72H   LINE      ---      ---       #689
-      01002A74H   LINE      ---      ---       #690
-      01002A74H   LINE      ---      ---       #691
+      01002A72H   LINE      ---      ---       #690
+      01002A7AH   LINE      ---      ---       #691
       01002A7AH   LINE      ---      ---       #692
-      01002A7CH   LINE      ---      ---       #693
-      01002A7CH   LINE      ---      ---       #694
-      01002A84H   LINE      ---      ---       #695
-      01002A84H   LINE      ---      ---       #696
+      01002A82H   LINE      ---      ---       #693
+      01002A86H   LINE      ---      ---       #694
+      01002A86H   LINE      ---      ---       #695
+      01002A8CH   LINE      ---      ---       #696
       01002A8CH   LINE      ---      ---       #697
-      01002A90H   LINE      ---      ---       #698
-      01002A90H   LINE      ---      ---       #699
-      01002A96H   LINE      ---      ---       #700
-      01002A96H   LINE      ---      ---       #701
-      01002A9BH   LINE      ---      ---       #702
-      01002A9DH   LINE      ---      ---       #703
-      01002AAAH   LINE      ---      ---       #704
-      01002AAAH   LINE      ---      ---       #705
+      01002A91H   LINE      ---      ---       #698
+      01002A93H   LINE      ---      ---       #699
+      01002AA0H   LINE      ---      ---       #700
+      01002AA0H   LINE      ---      ---       #701
+      01002AA8H   LINE      ---      ---       #702
+      01002AACH   LINE      ---      ---       #703
+      01002AACH   LINE      ---      ---       #704
+      01002AB2H   LINE      ---      ---       #705
       01002AB2H   LINE      ---      ---       #706
-      01002AB6H   LINE      ---      ---       #707
-      01002AB6H   LINE      ---      ---       #708
-      01002ABCH   LINE      ---      ---       #709
-      01002ABCH   LINE      ---      ---       #710
-      01002AC1H   LINE      ---      ---       #711
-      01002AC1H   LINE      ---      ---       #713
-      01002AC3H   LINE      ---      ---       #714
-      01002AC3H   LINE      ---      ---       #715
-      01002ACAH   LINE      ---      ---       #716
-      01002ACAH   LINE      ---      ---       #717
+      01002AB7H   LINE      ---      ---       #707
+      01002AB7H   LINE      ---      ---       #709
+      01002AB9H   LINE      ---      ---       #710
+      01002AB9H   LINE      ---      ---       #711
+      01002AC0H   LINE      ---      ---       #712
+      01002AC0H   LINE      ---      ---       #713
+      01002AC8H   LINE      ---      ---       #714
+      01002ACCH   LINE      ---      ---       #715
+      01002ACCH   LINE      ---      ---       #716
+      01002AD2H   LINE      ---      ---       #717
       01002AD2H   LINE      ---      ---       #718
-      01002AD6H   LINE      ---      ---       #719
-      01002AD6H   LINE      ---      ---       #720
-      01002ADCH   LINE      ---      ---       #721
-      01002ADCH   LINE      ---      ---       #722
-      01002AE1H   LINE      ---      ---       #723
-      01002AE1H   LINE      ---      ---       #724
+      01002AD7H   LINE      ---      ---       #719
+      01002AD7H   LINE      ---      ---       #720
+      01002ADDH   LINE      ---      ---       #721
+      01002ADFH   LINE      ---      ---       #722
+      01002ADFH   LINE      ---      ---       #723
+      01002AE5H   LINE      ---      ---       #724
       01002AE7H   LINE      ---      ---       #725
-      01002AE9H   LINE      ---      ---       #726
-      01002AE9H   LINE      ---      ---       #727
-      01002AEFH   LINE      ---      ---       #728
-      01002AF1H   LINE      ---      ---       #729
-      01002AF1H   LINE      ---      ---       #730
-      01002AF8H   LINE      ---      ---       #731
-      01002AF8H   LINE      ---      ---       #732
+      01002AE7H   LINE      ---      ---       #726
+      01002AEEH   LINE      ---      ---       #727
+      01002AEEH   LINE      ---      ---       #728
+      01002AF6H   LINE      ---      ---       #729
+      01002AFAH   LINE      ---      ---       #730
+      01002AFAH   LINE      ---      ---       #731
+      01002B00H   LINE      ---      ---       #732
       01002B00H   LINE      ---      ---       #733
-      01002B04H   LINE      ---      ---       #734
-      01002B04H   LINE      ---      ---       #735
-      01002B0AH   LINE      ---      ---       #736
-      01002B0AH   LINE      ---      ---       #737
-      01002B0FH   LINE      ---      ---       #738
-      01002B0FH   LINE      ---      ---       #739
-      01002B16H   LINE      ---      ---       #740
-      01002B16H   LINE      ---      ---       #741
+      01002B05H   LINE      ---      ---       #734
+      01002B05H   LINE      ---      ---       #735
+      01002B0CH   LINE      ---      ---       #736
+      01002B0CH   LINE      ---      ---       #737
+      01002B14H   LINE      ---      ---       #738
+      01002B18H   LINE      ---      ---       #739
+      01002B18H   LINE      ---      ---       #740
+      01002B1EH   LINE      ---      ---       #741
       01002B1EH   LINE      ---      ---       #742
-      01002B22H   LINE      ---      ---       #743
-      01002B22H   LINE      ---      ---       #744
-      01002B28H   LINE      ---      ---       #745
-      01002B28H   LINE      ---      ---       #746
+      01002B23H   LINE      ---      ---       #743
+      01002B25H   LINE      ---      ---       #745
+      01002B2BH   LINE      ---      ---       #746
       01002B2DH   LINE      ---      ---       #747
-      01002B2FH   LINE      ---      ---       #749
+      01002B2DH   LINE      ---      ---       #748
+      01002B33H   LINE      ---      ---       #749
       01002B35H   LINE      ---      ---       #750
-      01002B37H   LINE      ---      ---       #751
-      01002B37H   LINE      ---      ---       #752
+      01002B35H   LINE      ---      ---       #751
+      01002B3BH   LINE      ---      ---       #752
       01002B3DH   LINE      ---      ---       #753
-      01002B3FH   LINE      ---      ---       #754
-      01002B3FH   LINE      ---      ---       #755
+      01002B3DH   LINE      ---      ---       #754
+      01002B43H   LINE      ---      ---       #755
       01002B45H   LINE      ---      ---       #756
-      01002B47H   LINE      ---      ---       #757
-      01002B47H   LINE      ---      ---       #758
+      01002B45H   LINE      ---      ---       #757
+      01002B4BH   LINE      ---      ---       #758
       01002B4DH   LINE      ---      ---       #759
-      01002B4FH   LINE      ---      ---       #760
-      01002B4FH   LINE      ---      ---       #761
+      01002B4DH   LINE      ---      ---       #760
+      01002B53H   LINE      ---      ---       #761
       01002B55H   LINE      ---      ---       #762
-      01002B57H   LINE      ---      ---       #763
-      01002B57H   LINE      ---      ---       #764
-      01002B5DH   LINE      ---      ---       #765
-      01002B5FH   LINE      ---      ---       #766
-      01002B5FH   LINE      ---      ---       #767
-      01002B65H   LINE      ---      ---       #768
-      01002B65H   LINE      ---      ---       #769
-      01002B65H   LINE      ---      ---       #770
-      01002B65H   LINE      ---      ---       #771
-      01002B65H   LINE      ---      ---       #772
-      01002B65H   LINE      ---      ---       #774
-      01002B6AH   LINE      ---      ---       #775
+      01002B55H   LINE      ---      ---       #763
+      01002B5BH   LINE      ---      ---       #764
+      01002B5BH   LINE      ---      ---       #765
+      01002B5BH   LINE      ---      ---       #766
+      01002B5BH   LINE      ---      ---       #767
+      01002B5BH   LINE      ---      ---       #768
+      01002B5BH   LINE      ---      ---       #770
+      01002B60H   LINE      ---      ---       #771
       02004F04H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       010024D2H   BLOCK     CODE     ---       LVL=0
-      010024D2H   LINE      ---      ---       #779
-      010024DDH   LINE      ---      ---       #780
+      010024D2H   LINE      ---      ---       #775
+      010024DDH   LINE      ---      ---       #776
       010024DDH   BLOCK     CODE     NEAR LAB  LVL=1
-      010024DDH   LINE      ---      ---       #781
-      010024E0H   LINE      ---      ---       #783
-      010024EDH   LINE      ---      ---       #784
-      010024EDH   LINE      ---      ---       #785
-      01002518H   LINE      ---      ---       #787
-      01002518H   LINE      ---      ---       #789
-      0100251FH   LINE      ---      ---       #790
-      0100251FH   LINE      ---      ---       #791
-      01002525H   LINE      ---      ---       #792
-      01002527H   LINE      ---      ---       #794
-      0100252BH   LINE      ---      ---       #795
-      0100252BH   LINE      ---      ---       #796
-      01002531H   LINE      ---      ---       #797
-      01002533H   LINE      ---      ---       #798
-      01002553H   LINE      ---      ---       #799
-      01002553H   LINE      ---      ---       #800
-      01002557H   LINE      ---      ---       #801
-      01002559H   LINE      ---      ---       #802
-      0100255DH   LINE      ---      ---       #803
-      0100255DH   LINE      ---      ---       #804
-      01002563H   LINE      ---      ---       #805
-      01002565H   LINE      ---      ---       #806
-      01002585H   LINE      ---      ---       #807
-      01002585H   LINE      ---      ---       #808
-      01002589H   LINE      ---      ---       #809
-      0100258BH   LINE      ---      ---       #810
-      0100258FH   LINE      ---      ---       #811
-      0100258FH   LINE      ---      ---       #812
-      01002595H   LINE      ---      ---       #813
-      01002597H   LINE      ---      ---       #814
-      010025B7H   LINE      ---      ---       #815
-      010025B7H   LINE      ---      ---       #816
-      010025BBH   LINE      ---      ---       #817
-      010025BDH   LINE      ---      ---       #818
-      010025C1H   LINE      ---      ---       #819
-      010025C1H   LINE      ---      ---       #820
-      010025C7H   LINE      ---      ---       #821
-      010025C9H   LINE      ---      ---       #822
-      010025E9H   LINE      ---      ---       #823
-      010025E9H   LINE      ---      ---       #824
-      010025EEH   LINE      ---      ---       #825
-      010025F0H   LINE      ---      ---       #826
-      010025F4H   LINE      ---      ---       #827
-      010025F4H   LINE      ---      ---       #828
-      010025FAH   LINE      ---      ---       #829
-      010025FCH   LINE      ---      ---       #830
-      0100261CH   LINE      ---      ---       #831
-      0100261CH   LINE      ---      ---       #832
-      01002621H   LINE      ---      ---       #833
-      01002623H   LINE      ---      ---       #834
-      01002627H   LINE      ---      ---       #835
-      01002627H   LINE      ---      ---       #836
-      0100262DH   LINE      ---      ---       #837
-      0100262FH   LINE      ---      ---       #838
-      0100264FH   LINE      ---      ---       #839
-      0100264FH   LINE      ---      ---       #840
-      01002655H   LINE      ---      ---       #841
-      01002657H   LINE      ---      ---       #842
-      0100265BH   LINE      ---      ---       #843
-      0100265BH   LINE      ---      ---       #844
-      01002661H   LINE      ---      ---       #845
-      01002663H   LINE      ---      ---       #846
-      01002683H   LINE      ---      ---       #847
-      01002683H   LINE      ---      ---       #848
-      01002689H   LINE      ---      ---       #849
-      0100268BH   LINE      ---      ---       #850
-      0100268FH   LINE      ---      ---       #851
-      0100268FH   LINE      ---      ---       #852
-      01002695H   LINE      ---      ---       #853
-      01002697H   LINE      ---      ---       #854
-      010026B7H   LINE      ---      ---       #855
-      010026B7H   LINE      ---      ---       #856
-      010026BDH   LINE      ---      ---       #857
-      010026BFH   LINE      ---      ---       #858
-      010026C3H   LINE      ---      ---       #859
-      010026C3H   LINE      ---      ---       #860
-      010026C9H   LINE      ---      ---       #861
-      010026CBH   LINE      ---      ---       #862
-      010026EBH   LINE      ---      ---       #863
-      010026EBH   LINE      ---      ---       #864
-      010026EFH   LINE      ---      ---       #865
-      010026F1H   LINE      ---      ---       #866
-      010026F5H   LINE      ---      ---       #867
-      010026F5H   LINE      ---      ---       #868
-      010026FBH   LINE      ---      ---       #869
-      010026FDH   LINE      ---      ---       #870
-      0100271DH   LINE      ---      ---       #871
-      0100271DH   LINE      ---      ---       #872
-      01002721H   LINE      ---      ---       #873
-      01002723H   LINE      ---      ---       #874
-      01002727H   LINE      ---      ---       #875
-      01002727H   LINE      ---      ---       #876
-      0100272DH   LINE      ---      ---       #877
-      0100272FH   LINE      ---      ---       #878
-      0100274FH   LINE      ---      ---       #879
-      0100274FH   LINE      ---      ---       #880
-      01002755H   LINE      ---      ---       #881
-      01002757H   LINE      ---      ---       #882
-      0100275BH   LINE      ---      ---       #883
-      0100275BH   LINE      ---      ---       #884
-      01002761H   LINE      ---      ---       #885
-      01002763H   LINE      ---      ---       #886
-      01002783H   LINE      ---      ---       #887
-      01002783H   LINE      ---      ---       #888
-      01002787H   LINE      ---      ---       #889
-      01002789H   LINE      ---      ---       #890
-      0100278DH   LINE      ---      ---       #891
-      0100278DH   LINE      ---      ---       #892
-      01002791H   LINE      ---      ---       #893
-      01002793H   LINE      ---      ---       #894
-      01002799H   LINE      ---      ---       #895
-      01002799H   LINE      ---      ---       #896
-      0100279DH   LINE      ---      ---       #897
-      0100279DH   LINE      ---      ---       #898
-      010027A4H   LINE      ---      ---       #899
-      010027A4H   LINE      ---      ---       #900
-      010027C4H   LINE      ---      ---       #901
-      010027C8H   LINE      ---      ---       #902
-      010027C8H   LINE      ---      ---       #903
-      010027C8H   LINE      ---      ---       #904
-      010027D0H   LINE      ---      ---       #905
+      010024DDH   LINE      ---      ---       #777
+      010024E0H   LINE      ---      ---       #779
+      010024EDH   LINE      ---      ---       #780
+      010024EDH   LINE      ---      ---       #781
+      01002518H   LINE      ---      ---       #783
+      01002518H   LINE      ---      ---       #785
+      0100251FH   LINE      ---      ---       #786
+      0100251FH   LINE      ---      ---       #787
+      01002525H   LINE      ---      ---       #788
+      01002527H   LINE      ---      ---       #790
+      0100252BH   LINE      ---      ---       #791
+      0100252BH   LINE      ---      ---       #792
+      01002531H   LINE      ---      ---       #793
+      01002533H   LINE      ---      ---       #794
+      01002553H   LINE      ---      ---       #795
+      01002553H   LINE      ---      ---       #796
+      01002557H   LINE      ---      ---       #797
+      01002559H   LINE      ---      ---       #798
+      0100255DH   LINE      ---      ---       #799
+      0100255DH   LINE      ---      ---       #800
+      01002563H   LINE      ---      ---       #801
+      01002565H   LINE      ---      ---       #802
+      01002585H   LINE      ---      ---       #803
+      01002585H   LINE      ---      ---       #804
+      01002589H   LINE      ---      ---       #805
+      0100258BH   LINE      ---      ---       #806
+      0100258FH   LINE      ---      ---       #807
+      0100258FH   LINE      ---      ---       #808
+      01002595H   LINE      ---      ---       #809
+      01002597H   LINE      ---      ---       #810
+      010025B7H   LINE      ---      ---       #811
+      010025B7H   LINE      ---      ---       #812
+      010025BBH   LINE      ---      ---       #813
+      010025BDH   LINE      ---      ---       #814
+      010025C1H   LINE      ---      ---       #815
+      010025C1H   LINE      ---      ---       #816
+      010025C7H   LINE      ---      ---       #817
+      010025C9H   LINE      ---      ---       #818
+      010025E9H   LINE      ---      ---       #819
+      010025E9H   LINE      ---      ---       #820
+      010025EEH   LINE      ---      ---       #821
+      010025F0H   LINE      ---      ---       #822
+      010025F4H   LINE      ---      ---       #823
+      010025F4H   LINE      ---      ---       #824
+      010025FAH   LINE      ---      ---       #825
+      010025FCH   LINE      ---      ---       #826
+      0100261CH   LINE      ---      ---       #827
+      0100261CH   LINE      ---      ---       #828
+      01002621H   LINE      ---      ---       #829
+      01002623H   LINE      ---      ---       #830
+      01002627H   LINE      ---      ---       #831
+      01002627H   LINE      ---      ---       #832
+      0100262DH   LINE      ---      ---       #833
+      0100262FH   LINE      ---      ---       #834
+      0100264FH   LINE      ---      ---       #835
+      0100264FH   LINE      ---      ---       #836
+      01002655H   LINE      ---      ---       #837
+      01002657H   LINE      ---      ---       #838
+      0100265BH   LINE      ---      ---       #839
+      0100265BH   LINE      ---      ---       #840
+      01002661H   LINE      ---      ---       #841
+      01002663H   LINE      ---      ---       #842
+      01002683H   LINE      ---      ---       #843
+      01002683H   LINE      ---      ---       #844
+      01002689H   LINE      ---      ---       #845
+      0100268BH   LINE      ---      ---       #846
+      0100268FH   LINE      ---      ---       #847
+      0100268FH   LINE      ---      ---       #848
+      01002695H   LINE      ---      ---       #849
+      01002697H   LINE      ---      ---       #850
+      010026B7H   LINE      ---      ---       #851
+      010026B7H   LINE      ---      ---       #852
+      010026BDH   LINE      ---      ---       #853
+      010026BFH   LINE      ---      ---       #854
+      010026C3H   LINE      ---      ---       #855
+      010026C3H   LINE      ---      ---       #856
+      010026C9H   LINE      ---      ---       #857
+      010026CBH   LINE      ---      ---       #858
+      010026EBH   LINE      ---      ---       #859
+      010026EBH   LINE      ---      ---       #860
+      010026EFH   LINE      ---      ---       #861
+      010026F1H   LINE      ---      ---       #862
+      010026F5H   LINE      ---      ---       #863
+      010026F5H   LINE      ---      ---       #864
+      010026FBH   LINE      ---      ---       #865
+      010026FDH   LINE      ---      ---       #866
+      0100271DH   LINE      ---      ---       #867
+      0100271DH   LINE      ---      ---       #868
+      01002721H   LINE      ---      ---       #869
+      01002723H   LINE      ---      ---       #870
+      01002727H   LINE      ---      ---       #871
+      01002727H   LINE      ---      ---       #872
+      0100272DH   LINE      ---      ---       #873
+      0100272FH   LINE      ---      ---       #874
+      0100274FH   LINE      ---      ---       #875
+      0100274FH   LINE      ---      ---       #876
+      01002755H   LINE      ---      ---       #877
+      01002757H   LINE      ---      ---       #878
+      0100275BH   LINE      ---      ---       #879
+      0100275BH   LINE      ---      ---       #880
+      01002761H   LINE      ---      ---       #881
+      01002763H   LINE      ---      ---       #882
+      01002783H   LINE      ---      ---       #883
+      01002783H   LINE      ---      ---       #884
+      01002787H   LINE      ---      ---       #885
+      01002789H   LINE      ---      ---       #886
+      0100278DH   LINE      ---      ---       #887
+      0100278DH   LINE      ---      ---       #888
+      01002791H   LINE      ---      ---       #889
+      01002793H   LINE      ---      ---       #890
+      01002799H   LINE      ---      ---       #891
+      01002799H   LINE      ---      ---       #892
+      0100279DH   LINE      ---      ---       #893
+      0100279DH   LINE      ---      ---       #894
+      010027A4H   LINE      ---      ---       #895
+      010027A4H   LINE      ---      ---       #896
+      010027C4H   LINE      ---      ---       #897
+      010027C8H   LINE      ---      ---       #898
+      010027C8H   LINE      ---      ---       #899
+      010027C8H   LINE      ---      ---       #900
+      010027D0H   LINE      ---      ---       #901
       02004EDCH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       ---         MODULE    ---      ---       KEYSCAN
       02004EA4H   PUBLIC    XDATA    ---       ksEvtPool
-      01002B6BH   PUBLIC    CODE     ---       KS_GetCurrentEvt
-      01002DCAH   PUBLIC    CODE     ---       _array_is_empty
-      01002F44H   PUBLIC    CODE     ---       KS_ScanMatrix
+      01002B61H   PUBLIC    CODE     ---       KS_GetCurrentEvt
+      01002DC0H   PUBLIC    CODE     ---       _array_is_empty
+      01002F3AH   PUBLIC    CODE     ---       KS_ScanMatrix
       010012A3H   PUBLIC    CODE     ---       KS_Unistall
       01001D20H   PUBLIC    CODE     ---       KS_Initialize
 
-      01002DBCH   BLOCK     CODE     ---       LVL=0
-      01002DBCH   LINE      ---      ---       #24
-      01002DBCH   LINE      ---      ---       #25
-      01002DBCH   BLOCK     CODE     NEAR LAB  LVL=1
-      01002DBCH   LINE      ---      ---       #27
-      01002DC1H   LINE      ---      ---       #28
-      01002DC4H   LINE      ---      ---       #29
-      01002DC7H   LINE      ---      ---       #30
-      01002DC9H   LINE      ---      ---       #31
+      01002DB2H   BLOCK     CODE     ---       LVL=0
+      01002DB2H   LINE      ---      ---       #24
+      01002DB2H   LINE      ---      ---       #25
+      01002DB2H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002DB2H   LINE      ---      ---       #27
+      01002DB7H   LINE      ---      ---       #28
+      01002DBAH   LINE      ---      ---       #29
+      01002DBDH   LINE      ---      ---       #30
+      01002DBFH   LINE      ---      ---       #31
       00000006H   SYMBOL    DATA     VOID      c
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002E44H   BLOCK     CODE     ---       LVL=0
-      01002E44H   LINE      ---      ---       #35
-      01002E44H   LINE      ---      ---       #36
-      01002E44H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002E44H   LINE      ---      ---       #37
-      01002E46H   LINE      ---      ---       #39
-      01002E52H   LINE      ---      ---       #40
-      01002E52H   LINE      ---      ---       #41
-      01002E6CH   LINE      ---      ---       #43
-      01002E6CH   LINE      ---      ---       #89
-      01002E6EH   LINE      ---      ---       #90
-      01002E6EH   LINE      ---      ---       #91
-      01002E7DH   LINE      ---      ---       #92
-      01002E7DH   LINE      ---      ---       #93
-      01002E80H   LINE      ---      ---       #94
-      01002E80H   LINE      ---      ---       #95
-      01002E87H   LINE      ---      ---       #96
-      01002E93H   LINE      ---      ---       #97
-      01002E94H   LINE      ---      ---       #98
-      01002E94H   LINE      ---      ---       #99
-      01002E99H   LINE      ---      ---       #100
+      01002E3AH   BLOCK     CODE     ---       LVL=0
+      01002E3AH   LINE      ---      ---       #35
+      01002E3AH   LINE      ---      ---       #36
+      01002E3AH   BLOCK     CODE     NEAR LAB  LVL=1
+      01002E3AH   LINE      ---      ---       #37
+      01002E3CH   LINE      ---      ---       #39
+      01002E48H   LINE      ---      ---       #40
+      01002E48H   LINE      ---      ---       #41
+      01002E62H   LINE      ---      ---       #43
+      01002E62H   LINE      ---      ---       #89
+      01002E64H   LINE      ---      ---       #90
+      01002E64H   LINE      ---      ---       #91
+      01002E73H   LINE      ---      ---       #92
+      01002E73H   LINE      ---      ---       #93
+      01002E76H   LINE      ---      ---       #94
+      01002E76H   LINE      ---      ---       #95
+      01002E7DH   LINE      ---      ---       #96
+      01002E89H   LINE      ---      ---       #97
+      01002E8AH   LINE      ---      ---       #98
+      01002E8AH   LINE      ---      ---       #99
+      01002E8FH   LINE      ---      ---       #100
       00000006H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002E9AH   BLOCK     CODE     ---       LVL=0
-      01002E9AH   LINE      ---      ---       #102
-      01002E9AH   LINE      ---      ---       #103
-      01002E9AH   BLOCK     CODE     NEAR LAB  LVL=1
-      01002E9AH   LINE      ---      ---       #104
-      01002E9CH   LINE      ---      ---       #105
-      01002E9DH   LINE      ---      ---       #107
-      01002EABH   LINE      ---      ---       #108
-      01002EABH   LINE      ---      ---       #109
-      01002EB2H   LINE      ---      ---       #110
-      01002EB2H   LINE      ---      ---       #111
-      01002EB5H   LINE      ---      ---       #112
-      01002EB5H   LINE      ---      ---       #113
-      01002EB7H   LINE      ---      ---       #115
-      01002EBDH   LINE      ---      ---       #117
-      01002EC9H   LINE      ---      ---       #118
-      01002EC9H   LINE      ---      ---       #119
-      01002EE4H   LINE      ---      ---       #121
-      01002EE4H   LINE      ---      ---       #166
-      01002EE6H   LINE      ---      ---       #167
-      01002EE6H   LINE      ---      ---       #168
-      01002EE9H   LINE      ---      ---       #169
-      01002EE9H   LINE      ---      ---       #170
-      01002EF7H   LINE      ---      ---       #171
-      01002EFBH   LINE      ---      ---       #172
-      01002F06H   LINE      ---      ---       #173
-      01002F06H   LINE      ---      ---       #174
-      01002F08H   LINE      ---      ---       #175
-      01002F08H   LINE      ---      ---       #176
-      01002F0AH   LINE      ---      ---       #178
-      01002F0AH   LINE      ---      ---       #179
-      01002F22H   LINE      ---      ---       #180
-      01002F2FH   LINE      ---      ---       #181
-      01002F2FH   LINE      ---      ---       #182
-      01002F33H   LINE      ---      ---       #183
-      01002F3EH   LINE      ---      ---       #184
-      01002F3EH   LINE      ---      ---       #185
-      01002F3EH   LINE      ---      ---       #186
-      01002F43H   LINE      ---      ---       #187
+      01002E90H   BLOCK     CODE     ---       LVL=0
+      01002E90H   LINE      ---      ---       #102
+      01002E90H   LINE      ---      ---       #103
+      01002E90H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002E90H   LINE      ---      ---       #104
+      01002E92H   LINE      ---      ---       #105
+      01002E93H   LINE      ---      ---       #107
+      01002EA1H   LINE      ---      ---       #108
+      01002EA1H   LINE      ---      ---       #109
+      01002EA8H   LINE      ---      ---       #110
+      01002EA8H   LINE      ---      ---       #111
+      01002EABH   LINE      ---      ---       #112
+      01002EABH   LINE      ---      ---       #113
+      01002EADH   LINE      ---      ---       #115
+      01002EB3H   LINE      ---      ---       #117
+      01002EBFH   LINE      ---      ---       #118
+      01002EBFH   LINE      ---      ---       #119
+      01002EDAH   LINE      ---      ---       #121
+      01002EDAH   LINE      ---      ---       #166
+      01002EDCH   LINE      ---      ---       #167
+      01002EDCH   LINE      ---      ---       #168
+      01002EDFH   LINE      ---      ---       #169
+      01002EDFH   LINE      ---      ---       #170
+      01002EEDH   LINE      ---      ---       #171
+      01002EF1H   LINE      ---      ---       #172
+      01002EFCH   LINE      ---      ---       #173
+      01002EFCH   LINE      ---      ---       #174
+      01002EFEH   LINE      ---      ---       #175
+      01002EFEH   LINE      ---      ---       #176
+      01002F00H   LINE      ---      ---       #178
+      01002F00H   LINE      ---      ---       #179
+      01002F18H   LINE      ---      ---       #180
+      01002F25H   LINE      ---      ---       #181
+      01002F25H   LINE      ---      ---       #182
+      01002F29H   LINE      ---      ---       #183
+      01002F34H   LINE      ---      ---       #184
+      01002F34H   LINE      ---      ---       #185
+      01002F34H   LINE      ---      ---       #186
+      01002F39H   LINE      ---      ---       #187
       00000006H   SYMBOL    DATA     VOID      i
       00000005H   SYMBOL    DATA     VOID      found
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -1829,32 +1824,32 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002F44H   BLOCK     CODE     ---       LVL=0
-      01002F44H   LINE      ---      ---       #253
-      01002F44H   LINE      ---      ---       #254
-      01002F44H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002F44H   LINE      ---      ---       #255
-      01002F46H   LINE      ---      ---       #256
-      01002F4AH   LINE      ---      ---       #257
-      01002F4BH   LINE      ---      ---       #258
-      01002F4CH   LINE      ---      ---       #259
-      01002F4EH   LINE      ---      ---       #260
-      01002F50H   LINE      ---      ---       #261
-      01002F57H   LINE      ---      ---       #262
-      01002F60H   LINE      ---      ---       #263
-      01002F70H   LINE      ---      ---       #264
-      01002FD0H   LINE      ---      ---       #265
-      01002FD3H   LINE      ---      ---       #267
-      01002FDFH   LINE      ---      ---       #268
-      01002FE8H   LINE      ---      ---       #269
-      01002FF8H   LINE      ---      ---       #270
-      01003058H   LINE      ---      ---       #271
-      0100305CH   LINE      ---      ---       #273
-      01003065H   LINE      ---      ---       #274
-      0100307FH   LINE      ---      ---       #275
-      010030A2H   LINE      ---      ---       #276
-      010030A2H   LINE      ---      ---       #277
-      010030A5H   LINE      ---      ---       #278
+      01002F3AH   BLOCK     CODE     ---       LVL=0
+      01002F3AH   LINE      ---      ---       #253
+      01002F3AH   LINE      ---      ---       #254
+      01002F3AH   BLOCK     CODE     NEAR LAB  LVL=1
+      01002F3AH   LINE      ---      ---       #255
+      01002F3CH   LINE      ---      ---       #256
+      01002F40H   LINE      ---      ---       #257
+      01002F41H   LINE      ---      ---       #258
+      01002F42H   LINE      ---      ---       #259
+      01002F44H   LINE      ---      ---       #260
+      01002F46H   LINE      ---      ---       #261
+      01002F4DH   LINE      ---      ---       #262
+      01002F56H   LINE      ---      ---       #263
+      01002F66H   LINE      ---      ---       #264
+      01002FC6H   LINE      ---      ---       #265
+      01002FC9H   LINE      ---      ---       #267
+      01002FD5H   LINE      ---      ---       #268
+      01002FDEH   LINE      ---      ---       #269
+      01002FEEH   LINE      ---      ---       #270
+      0100304EH   LINE      ---      ---       #271
+      01003052H   LINE      ---      ---       #273
+      0100305BH   LINE      ---      ---       #274
+      01003075H   LINE      ---      ---       #275
+      01003098H   LINE      ---      ---       #276
+      01003098H   LINE      ---      ---       #277
+      0100309BH   LINE      ---      ---       #278
       00000007H   SYMBOL    DATA     VOID      i
       02004EE8H   SYMBOL    XDATA    VOID      j
       00000006H   SYMBOL    DATA     VOID      tgroup
@@ -1864,120 +1859,120 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002DCAH   BLOCK     CODE     ---       LVL=0
-      01002DCAH   LINE      ---      ---       #280
-      01002DD5H   LINE      ---      ---       #281
-      01002DD5H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002DD5H   LINE      ---      ---       #283
-      01002DDCH   LINE      ---      ---       #284
-      01002DDCH   LINE      ---      ---       #285
-      01002DF1H   LINE      ---      ---       #286
-      01002DF4H   LINE      ---      ---       #287
-      01002DF7H   LINE      ---      ---       #288
-      01002DF9H   LINE      ---      ---       #289
+      01002DC0H   BLOCK     CODE     ---       LVL=0
+      01002DC0H   LINE      ---      ---       #280
+      01002DCBH   LINE      ---      ---       #281
+      01002DCBH   BLOCK     CODE     NEAR LAB  LVL=1
+      01002DCBH   LINE      ---      ---       #283
+      01002DD2H   LINE      ---      ---       #284
+      01002DD2H   LINE      ---      ---       #285
+      01002DE7H   LINE      ---      ---       #286
+      01002DEAH   LINE      ---      ---       #287
+      01002DEDH   LINE      ---      ---       #288
+      01002DEFH   LINE      ---      ---       #289
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002B6BH   BLOCK     CODE     ---       LVL=0
-      01002B6BH   LINE      ---      ---       #292
-      01002B6BH   LINE      ---      ---       #293
-      01002B6BH   BLOCK     CODE     NEAR LAB  LVL=1
-      01002B6BH   LINE      ---      ---       #295
-      01002B70H   LINE      ---      ---       #296
-      01002B72H   LINE      ---      ---       #297
-      01002B74H   LINE      ---      ---       #298
-      01002B76H   LINE      ---      ---       #299
-      01002B78H   LINE      ---      ---       #300
-      01002B7AH   LINE      ---      ---       #301
-      01002B7CH   LINE      ---      ---       #302
-      01002B7EH   LINE      ---      ---       #303
-      01002B80H   LINE      ---      ---       #304
-      01002B82H   LINE      ---      ---       #305
-      01002B84H   LINE      ---      ---       #307
-      01002B86H   LINE      ---      ---       #309
-      01002BB4H   LINE      ---      ---       #311
-      01002BB4H   LINE      ---      ---       #312
-      01002BBBH   LINE      ---      ---       #313
-      01002BC1H   LINE      ---      ---       #314
-      01002BC3H   LINE      ---      ---       #316
-      01002BC3H   LINE      ---      ---       #317
-      01002BCAH   LINE      ---      ---       #318
-      01002BCFH   LINE      ---      ---       #319
-      01002BCFH   LINE      ---      ---       #321
-      01002BE1H   LINE      ---      ---       #322
-      01002BE1H   LINE      ---      ---       #323
-      01002BF0H   LINE      ---      ---       #324
-      01002BF9H   LINE      ---      ---       #325
-      01002C00H   LINE      ---      ---       #326
-      01002C00H   LINE      ---      ---       #327
-      01002C0FH   LINE      ---      ---       #328
-      01002C0FH   LINE      ---      ---       #329
-      01002C2AH   LINE      ---      ---       #330
-      01002C2AH   LINE      ---      ---       #331
-      01002C3AH   LINE      ---      ---       #332
-      01002C3AH   LINE      ---      ---       #333
-      01002C43H   LINE      ---      ---       #334
-      01002C43H   LINE      ---      ---       #335
-      01002C72H   LINE      ---      ---       #336
-      01002C72H   LINE      ---      ---       #337
-      01002C78H   LINE      ---      ---       #338
-      01002C7AH   LINE      ---      ---       #339
-      01002C7AH   LINE      ---      ---       #340
-      01002C7AH   LINE      ---      ---       #341
-      01002C82H   LINE      ---      ---       #342
-      01002C82H   LINE      ---      ---       #343
-      01002C8AH   LINE      ---      ---       #344
-      01002C8AH   LINE      ---      ---       #346
-      01002C91H   LINE      ---      ---       #347
-      01002C91H   LINE      ---      ---       #348
-      01002C99H   LINE      ---      ---       #349
-      01002C99H   LINE      ---      ---       #350
-      01002CA1H   LINE      ---      ---       #351
-      01002CA9H   LINE      ---      ---       #353
-      01002CBBH   LINE      ---      ---       #354
-      01002CBBH   LINE      ---      ---       #355
-      01002CD7H   LINE      ---      ---       #356
-      01002CEAH   LINE      ---      ---       #357
-      01002CF0H   LINE      ---      ---       #358
-      01002CF0H   LINE      ---      ---       #359
-      01002CF2H   LINE      ---      ---       #360
-      01002CF4H   LINE      ---      ---       #362
-      01002CF4H   LINE      ---      ---       #364
-      01002CFAH   LINE      ---      ---       #365
-      01002D01H   LINE      ---      ---       #366
-      01002D19H   LINE      ---      ---       #367
-      01002D28H   LINE      ---      ---       #368
-      01002D28H   LINE      ---      ---       #369
-      01002D2FH   LINE      ---      ---       #370
-      01002D2FH   LINE      ---      ---       #371
-      01002D40H   LINE      ---      ---       #372
-      01002D53H   LINE      ---      ---       #373
-      01002D5AH   LINE      ---      ---       #374
-      01002D5AH   LINE      ---      ---       #375
-      01002D61H   LINE      ---      ---       #376
-      01002D63H   LINE      ---      ---       #378
-      01002D63H   LINE      ---      ---       #379
-      01002D6AH   LINE      ---      ---       #380
-      01002D6AH   LINE      ---      ---       #381
-      01002D6AH   LINE      ---      ---       #382
-      01002D72H   LINE      ---      ---       #383
-      01002D7AH   LINE      ---      ---       #384
-      01002D82H   LINE      ---      ---       #385
-      01002D88H   LINE      ---      ---       #386
-      01002D88H   LINE      ---      ---       #387
-      01002D90H   LINE      ---      ---       #389
-      01002D9EH   LINE      ---      ---       #390
-      01002D9EH   LINE      ---      ---       #391
-      01002DA1H   LINE      ---      ---       #392
-      01002DA1H   LINE      ---      ---       #395
-      01002DAEH   LINE      ---      ---       #396
-      01002DAEH   LINE      ---      ---       #397
-      01002DB5H   LINE      ---      ---       #398
-      01002DB5H   LINE      ---      ---       #400
-      01002DB5H   LINE      ---      ---       #401
-      01002DBBH   LINE      ---      ---       #402
-      01002DBBH   LINE      ---      ---       #405
+      01002B61H   BLOCK     CODE     ---       LVL=0
+      01002B61H   LINE      ---      ---       #292
+      01002B61H   LINE      ---      ---       #293
+      01002B61H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002B61H   LINE      ---      ---       #295
+      01002B66H   LINE      ---      ---       #296
+      01002B68H   LINE      ---      ---       #297
+      01002B6AH   LINE      ---      ---       #298
+      01002B6CH   LINE      ---      ---       #299
+      01002B6EH   LINE      ---      ---       #300
+      01002B70H   LINE      ---      ---       #301
+      01002B72H   LINE      ---      ---       #302
+      01002B74H   LINE      ---      ---       #303
+      01002B76H   LINE      ---      ---       #304
+      01002B78H   LINE      ---      ---       #305
+      01002B7AH   LINE      ---      ---       #307
+      01002B7CH   LINE      ---      ---       #309
+      01002BAAH   LINE      ---      ---       #311
+      01002BAAH   LINE      ---      ---       #312
+      01002BB1H   LINE      ---      ---       #313
+      01002BB7H   LINE      ---      ---       #314
+      01002BB9H   LINE      ---      ---       #316
+      01002BB9H   LINE      ---      ---       #317
+      01002BC0H   LINE      ---      ---       #318
+      01002BC5H   LINE      ---      ---       #319
+      01002BC5H   LINE      ---      ---       #321
+      01002BD7H   LINE      ---      ---       #322
+      01002BD7H   LINE      ---      ---       #323
+      01002BE6H   LINE      ---      ---       #324
+      01002BEFH   LINE      ---      ---       #325
+      01002BF6H   LINE      ---      ---       #326
+      01002BF6H   LINE      ---      ---       #327
+      01002C05H   LINE      ---      ---       #328
+      01002C05H   LINE      ---      ---       #329
+      01002C20H   LINE      ---      ---       #330
+      01002C20H   LINE      ---      ---       #331
+      01002C30H   LINE      ---      ---       #332
+      01002C30H   LINE      ---      ---       #333
+      01002C39H   LINE      ---      ---       #334
+      01002C39H   LINE      ---      ---       #335
+      01002C68H   LINE      ---      ---       #336
+      01002C68H   LINE      ---      ---       #337
+      01002C6EH   LINE      ---      ---       #338
+      01002C70H   LINE      ---      ---       #339
+      01002C70H   LINE      ---      ---       #340
+      01002C70H   LINE      ---      ---       #341
+      01002C78H   LINE      ---      ---       #342
+      01002C78H   LINE      ---      ---       #343
+      01002C80H   LINE      ---      ---       #344
+      01002C80H   LINE      ---      ---       #346
+      01002C87H   LINE      ---      ---       #347
+      01002C87H   LINE      ---      ---       #348
+      01002C8FH   LINE      ---      ---       #349
+      01002C8FH   LINE      ---      ---       #350
+      01002C97H   LINE      ---      ---       #351
+      01002C9FH   LINE      ---      ---       #353
+      01002CB1H   LINE      ---      ---       #354
+      01002CB1H   LINE      ---      ---       #355
+      01002CCDH   LINE      ---      ---       #356
+      01002CE0H   LINE      ---      ---       #357
+      01002CE6H   LINE      ---      ---       #358
+      01002CE6H   LINE      ---      ---       #359
+      01002CE8H   LINE      ---      ---       #360
+      01002CEAH   LINE      ---      ---       #362
+      01002CEAH   LINE      ---      ---       #364
+      01002CF0H   LINE      ---      ---       #365
+      01002CF7H   LINE      ---      ---       #366
+      01002D0FH   LINE      ---      ---       #367
+      01002D1EH   LINE      ---      ---       #368
+      01002D1EH   LINE      ---      ---       #369
+      01002D25H   LINE      ---      ---       #370
+      01002D25H   LINE      ---      ---       #371
+      01002D36H   LINE      ---      ---       #372
+      01002D49H   LINE      ---      ---       #373
+      01002D50H   LINE      ---      ---       #374
+      01002D50H   LINE      ---      ---       #375
+      01002D57H   LINE      ---      ---       #376
+      01002D59H   LINE      ---      ---       #378
+      01002D59H   LINE      ---      ---       #379
+      01002D60H   LINE      ---      ---       #380
+      01002D60H   LINE      ---      ---       #381
+      01002D60H   LINE      ---      ---       #382
+      01002D68H   LINE      ---      ---       #383
+      01002D70H   LINE      ---      ---       #384
+      01002D78H   LINE      ---      ---       #385
+      01002D7EH   LINE      ---      ---       #386
+      01002D7EH   LINE      ---      ---       #387
+      01002D86H   LINE      ---      ---       #389
+      01002D94H   LINE      ---      ---       #390
+      01002D94H   LINE      ---      ---       #391
+      01002D97H   LINE      ---      ---       #392
+      01002D97H   LINE      ---      ---       #395
+      01002DA4H   LINE      ---      ---       #396
+      01002DA4H   LINE      ---      ---       #397
+      01002DABH   LINE      ---      ---       #398
+      01002DABH   LINE      ---      ---       #400
+      01002DABH   LINE      ---      ---       #401
+      01002DB1H   LINE      ---      ---       #402
+      01002DB1H   LINE      ---      ---       #405
       02004E88H   SYMBOL    XDATA    VOID      i
       02004E89H   SYMBOL    XDATA    VOID      j
       02004E8AH   SYMBOL    XDATA    VOID      k
@@ -1994,8 +1989,8 @@
 
       ---         MODULE    ---      ---       LED
       010010ECH   PUBLIC    CODE     ---       LED_handle
-      010031E6H   PUBLIC    CODE     ---       LED_device_poweroff
-      010030A6H   PUBLIC    CODE     ---       LED_device_poweron
+      010031DCH   PUBLIC    CODE     ---       LED_device_poweroff
+      0100309CH   PUBLIC    CODE     ---       LED_device_poweron
       010015EFH   PUBLIC    CODE     ---       LED_all_shutdown
 
       010015EFH   BLOCK     CODE     ---       LVL=0
@@ -2007,35 +2002,35 @@
       01001601H   LINE      ---      ---       #10
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010030A6H   BLOCK     CODE     ---       LVL=0
-      010030A6H   LINE      ---      ---       #15
-      010030A6H   LINE      ---      ---       #16
-      010030A6H   LINE      ---      ---       #19
-      010030ADH   LINE      ---      ---       #20
-      010030ADH   LINE      ---      ---       #21
-      010030B4H   LINE      ---      ---       #22
-      010030BBH   LINE      ---      ---       #23
-      010030C2H   LINE      ---      ---       #24
-      010030C2H   LINE      ---      ---       #25
-      010030C9H   LINE      ---      ---       #26
-      010030C9H   LINE      ---      ---       #27
-      010030D0H   LINE      ---      ---       #28
-      010030D7H   LINE      ---      ---       #29
-      010030DEH   LINE      ---      ---       #30
-      010030DEH   LINE      ---      ---       #32
-      010030DEH   LINE      ---      ---       #33
-      010030E5H   LINE      ---      ---       #34
-      010030ECH   LINE      ---      ---       #35
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010031E6H   BLOCK     CODE     ---       LVL=0
-      010031E6H   LINE      ---      ---       #40
-      010031E6H   LINE      ---      ---       #41
-      010031E6H   LINE      ---      ---       #43
-      010031EDH   LINE      ---      ---       #44
-      010031F4H   LINE      ---      ---       #45
-      010031FBH   LINE      ---      ---       #46
-      01003202H   LINE      ---      ---       #48
+      0100309CH   BLOCK     CODE     ---       LVL=0
+      0100309CH   LINE      ---      ---       #15
+      0100309CH   LINE      ---      ---       #16
+      0100309CH   LINE      ---      ---       #19
+      010030A3H   LINE      ---      ---       #20
+      010030A3H   LINE      ---      ---       #21
+      010030AAH   LINE      ---      ---       #22
+      010030B1H   LINE      ---      ---       #23
+      010030B8H   LINE      ---      ---       #24
+      010030B8H   LINE      ---      ---       #25
+      010030BFH   LINE      ---      ---       #26
+      010030BFH   LINE      ---      ---       #27
+      010030C6H   LINE      ---      ---       #28
+      010030CDH   LINE      ---      ---       #29
+      010030D4H   LINE      ---      ---       #30
+      010030D4H   LINE      ---      ---       #32
+      010030D4H   LINE      ---      ---       #33
+      010030DBH   LINE      ---      ---       #34
+      010030E2H   LINE      ---      ---       #35
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010031DCH   BLOCK     CODE     ---       LVL=0
+      010031DCH   LINE      ---      ---       #40
+      010031DCH   LINE      ---      ---       #41
+      010031DCH   LINE      ---      ---       #43
+      010031E3H   LINE      ---      ---       #44
+      010031EAH   LINE      ---      ---       #45
+      010031F1H   LINE      ---      ---       #46
+      010031F8H   LINE      ---      ---       #48
       ---         BLOCKEND  ---      ---       LVL=0
 
       010010ECH   BLOCK     CODE     ---       LVL=0
@@ -2108,7 +2103,7 @@
       01002233H   PUBLIC    CODE     ---       YC_wait_disconnect_timer500ms
       01002072H   PUBLIC    CODE     ---       YC_connect_timeout_500ms
       01000F04H   PUBLIC    CODE     ---       LED_timer500ms
-      01003212H   PUBLIC    CODE     ---       System_Reset_Connect
+      01003208H   PUBLIC    CODE     ---       System_Reset_Connect
       0100216FH   PUBLIC    CODE     ---       System_G24_long_lpm
       010017AEH   PUBLIC    CODE     ---       System_long_sleep
       01001D9BH   PUBLIC    CODE     ---       System_Software_init
@@ -2218,11 +2213,11 @@
       01001DCFH   LINE      ---      ---       #110
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003209H   BLOCK     CODE     ---       LVL=0
-      01003209H   LINE      ---      ---       #112
-      01003209H   LINE      ---      ---       #113
-      01003209H   LINE      ---      ---       #114
-      0100320FH   LINE      ---      ---       #115
+      010031FFH   BLOCK     CODE     ---       LVL=0
+      010031FFH   LINE      ---      ---       #112
+      010031FFH   LINE      ---      ---       #113
+      010031FFH   LINE      ---      ---       #114
+      01003205H   LINE      ---      ---       #115
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017AEH   BLOCK     CODE     ---       LVL=0
@@ -2250,19 +2245,19 @@
       0100219DH   LINE      ---      ---       #140
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003212H   BLOCK     CODE     ---       LVL=0
-      01003212H   LINE      ---      ---       #142
-      01003212H   LINE      ---      ---       #143
-      01003212H   LINE      ---      ---       #144
+      01003208H   BLOCK     CODE     ---       LVL=0
+      01003208H   LINE      ---      ---       #142
+      01003208H   LINE      ---      ---       #143
+      01003208H   LINE      ---      ---       #144
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003214H   BLOCK     CODE     ---       LVL=0
-      01003214H   LINE      ---      ---       #152
-      01003219H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003219H   LINE      ---      ---       #154
-      01003223H   LINE      ---      ---       #156
-      01003223H   LINE      ---      ---       #158
-      01003223H   LINE      ---      ---       #159
+      0100320AH   BLOCK     CODE     ---       LVL=0
+      0100320AH   LINE      ---      ---       #152
+      0100320FH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100320FH   LINE      ---      ---       #154
+      01003219H   LINE      ---      ---       #156
+      01003219H   LINE      ---      ---       #158
+      01003219H   LINE      ---      ---       #159
       02004EFDH   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2779,92 +2774,92 @@
       010021B6H   LINE      ---      ---       #750
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010030F3H   BLOCK     CODE     ---       LVL=0
-      010030F3H   LINE      ---      ---       #763
-      010030F3H   LINE      ---      ---       #764
-      010030F3H   LINE      ---      ---       #766
-      010030F9H   LINE      ---      ---       #767
-      010030F9H   LINE      ---      ---       #768
-      010030FBH   LINE      ---      ---       #769
-      010030FBH   LINE      ---      ---       #771
-      01003101H   LINE      ---      ---       #772
-      01003103H   LINE      ---      ---       #774
-      01003109H   LINE      ---      ---       #775
-      01003109H   LINE      ---      ---       #776
-      0100310BH   LINE      ---      ---       #777
-      0100310EH   LINE      ---      ---       #778
-      01003114H   LINE      ---      ---       #779
-      01003114H   LINE      ---      ---       #781
-      0100311AH   LINE      ---      ---       #782
-      0100311AH   LINE      ---      ---       #783
-      01003120H   LINE      ---      ---       #784
-      01003120H   LINE      ---      ---       #785
-      01003126H   LINE      ---      ---       #787
-      01003126H   LINE      ---      ---       #788
-      0100312CH   LINE      ---      ---       #789
-      0100312EH   LINE      ---      ---       #790
-      01003134H   LINE      ---      ---       #791
-      01003134H   LINE      ---      ---       #792
-      01003136H   LINE      ---      ---       #793
-      01003136H   LINE      ---      ---       #794
-      01003138H   LINE      ---      ---       #795
-      01003144H   LINE      ---      ---       #796
-      01003144H   LINE      ---      ---       #797
-      0100314AH   LINE      ---      ---       #798
-      0100314AH   LINE      ---      ---       #799
-      0100314CH   LINE      ---      ---       #800
-      01003153H   LINE      ---      ---       #801
-      01003153H   LINE      ---      ---       #802
-      01003157H   LINE      ---      ---       #803
-      01003157H   LINE      ---      ---       #804
-      0100315EH   LINE      ---      ---       #805
-      01003160H   LINE      ---      ---       #807
-      01003160H   LINE      ---      ---       #808
-      01003167H   LINE      ---      ---       #809
-      01003167H   LINE      ---      ---       #810
-      01003169H   LINE      ---      ---       #812
-      01003170H   LINE      ---      ---       #813
-      01003176H   LINE      ---      ---       #814
-      01003179H   LINE      ---      ---       #815
-      01003179H   LINE      ---      ---       #816
-      01003179H   LINE      ---      ---       #819
-      0100317FH   LINE      ---      ---       #820
-      0100317FH   LINE      ---      ---       #821
-      01003187H   LINE      ---      ---       #822
-      01003187H   LINE      ---      ---       #823
-      0100318DH   LINE      ---      ---       #824
-      01003191H   LINE      ---      ---       #826
-      01003197H   LINE      ---      ---       #827
-      01003197H   LINE      ---      ---       #828
-      010031A2H   LINE      ---      ---       #829
-      010031A4H   LINE      ---      ---       #830
-      010031AAH   LINE      ---      ---       #831
-      010031AAH   LINE      ---      ---       #833
-      010031B5H   LINE      ---      ---       #834
-      010031B5H   LINE      ---      ---       #835
-      010031B5H   LINE      ---      ---       #836
-      010031B5H   LINE      ---      ---       #840
-      010031BBH   LINE      ---      ---       #841
-      010031BBH   LINE      ---      ---       #842
-      010031BEH   LINE      ---      ---       #843
-      010031C1H   LINE      ---      ---       #844
-      010031C1H   LINE      ---      ---       #845
-      010031C7H   LINE      ---      ---       #846
-      010031C7H   LINE      ---      ---       #847
-      010031CCH   LINE      ---      ---       #848
-      010031CCH   LINE      ---      ---       #849
-      010031CCH   LINE      ---      ---       #850
-      010031CCH   LINE      ---      ---       #852
-      010031D2H   LINE      ---      ---       #853
-      010031D5H   LINE      ---      ---       #854
-      010031D8H   LINE      ---      ---       #855
-      010031D8H   LINE      ---      ---       #857
-      010031DFH   LINE      ---      ---       #858
-      010031DFH   LINE      ---      ---       #859
-      010031E5H   LINE      ---      ---       #860
-      010031E5H   LINE      ---      ---       #861
-      010031E5H   LINE      ---      ---       #862
-      010031E5H   LINE      ---      ---       #863
+      010030E9H   BLOCK     CODE     ---       LVL=0
+      010030E9H   LINE      ---      ---       #763
+      010030E9H   LINE      ---      ---       #764
+      010030E9H   LINE      ---      ---       #766
+      010030EFH   LINE      ---      ---       #767
+      010030EFH   LINE      ---      ---       #768
+      010030F1H   LINE      ---      ---       #769
+      010030F1H   LINE      ---      ---       #771
+      010030F7H   LINE      ---      ---       #772
+      010030F9H   LINE      ---      ---       #774
+      010030FFH   LINE      ---      ---       #775
+      010030FFH   LINE      ---      ---       #776
+      01003101H   LINE      ---      ---       #777
+      01003104H   LINE      ---      ---       #778
+      0100310AH   LINE      ---      ---       #779
+      0100310AH   LINE      ---      ---       #781
+      01003110H   LINE      ---      ---       #782
+      01003110H   LINE      ---      ---       #783
+      01003116H   LINE      ---      ---       #784
+      01003116H   LINE      ---      ---       #785
+      0100311CH   LINE      ---      ---       #787
+      0100311CH   LINE      ---      ---       #788
+      01003122H   LINE      ---      ---       #789
+      01003124H   LINE      ---      ---       #790
+      0100312AH   LINE      ---      ---       #791
+      0100312AH   LINE      ---      ---       #792
+      0100312CH   LINE      ---      ---       #793
+      0100312CH   LINE      ---      ---       #794
+      0100312EH   LINE      ---      ---       #795
+      0100313AH   LINE      ---      ---       #796
+      0100313AH   LINE      ---      ---       #797
+      01003140H   LINE      ---      ---       #798
+      01003140H   LINE      ---      ---       #799
+      01003142H   LINE      ---      ---       #800
+      01003149H   LINE      ---      ---       #801
+      01003149H   LINE      ---      ---       #802
+      0100314DH   LINE      ---      ---       #803
+      0100314DH   LINE      ---      ---       #804
+      01003154H   LINE      ---      ---       #805
+      01003156H   LINE      ---      ---       #807
+      01003156H   LINE      ---      ---       #808
+      0100315DH   LINE      ---      ---       #809
+      0100315DH   LINE      ---      ---       #810
+      0100315FH   LINE      ---      ---       #812
+      01003166H   LINE      ---      ---       #813
+      0100316CH   LINE      ---      ---       #814
+      0100316FH   LINE      ---      ---       #815
+      0100316FH   LINE      ---      ---       #816
+      0100316FH   LINE      ---      ---       #819
+      01003175H   LINE      ---      ---       #820
+      01003175H   LINE      ---      ---       #821
+      0100317DH   LINE      ---      ---       #822
+      0100317DH   LINE      ---      ---       #823
+      01003183H   LINE      ---      ---       #824
+      01003187H   LINE      ---      ---       #826
+      0100318DH   LINE      ---      ---       #827
+      0100318DH   LINE      ---      ---       #828
+      01003198H   LINE      ---      ---       #829
+      0100319AH   LINE      ---      ---       #830
+      010031A0H   LINE      ---      ---       #831
+      010031A0H   LINE      ---      ---       #833
+      010031ABH   LINE      ---      ---       #834
+      010031ABH   LINE      ---      ---       #835
+      010031ABH   LINE      ---      ---       #836
+      010031ABH   LINE      ---      ---       #840
+      010031B1H   LINE      ---      ---       #841
+      010031B1H   LINE      ---      ---       #842
+      010031B4H   LINE      ---      ---       #843
+      010031B7H   LINE      ---      ---       #844
+      010031B7H   LINE      ---      ---       #845
+      010031BDH   LINE      ---      ---       #846
+      010031BDH   LINE      ---      ---       #847
+      010031C2H   LINE      ---      ---       #848
+      010031C2H   LINE      ---      ---       #849
+      010031C2H   LINE      ---      ---       #850
+      010031C2H   LINE      ---      ---       #852
+      010031C8H   LINE      ---      ---       #853
+      010031CBH   LINE      ---      ---       #854
+      010031CEH   LINE      ---      ---       #855
+      010031CEH   LINE      ---      ---       #857
+      010031D5H   LINE      ---      ---       #858
+      010031D5H   LINE      ---      ---       #859
+      010031DBH   LINE      ---      ---       #860
+      010031DBH   LINE      ---      ---       #861
+      010031DBH   LINE      ---      ---       #862
+      010031DBH   LINE      ---      ---       #863
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017DAH   BLOCK     CODE     ---       LVL=0
@@ -2919,23 +2914,23 @@
       01002222H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
       01002201H   PUBLIC    CODE     ---       YC_adc_motion_check_timer500ms
       010022E2H   PUBLIC    CODE     ---       YC_adc_check
-      01003224H   PUBLIC    CODE     ---       YC_adc_init
+      0100321AH   PUBLIC    CODE     ---       YC_adc_init
 
-      01003224H   BLOCK     CODE     ---       LVL=0
-      01003224H   LINE      ---      ---       #3
-      01003224H   LINE      ---      ---       #4
-      01003224H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003224H   LINE      ---      ---       #8
-      0100322AH   LINE      ---      ---       #9
-      0100322DH   LINE      ---      ---       #10
-      01003233H   LINE      ---      ---       #13
-      01003235H   LINE      ---      ---       #14
-      01003235H   LINE      ---      ---       #15
-      01003246H   LINE      ---      ---       #16
-      0100324BH   LINE      ---      ---       #17
-      01003299H   LINE      ---      ---       #18
-      010032E7H   LINE      ---      ---       #19
-      01003335H   LINE      ---      ---       #41
+      0100321AH   BLOCK     CODE     ---       LVL=0
+      0100321AH   LINE      ---      ---       #3
+      0100321AH   LINE      ---      ---       #4
+      0100321AH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100321AH   LINE      ---      ---       #8
+      01003220H   LINE      ---      ---       #9
+      01003223H   LINE      ---      ---       #10
+      01003229H   LINE      ---      ---       #13
+      0100322BH   LINE      ---      ---       #14
+      0100322BH   LINE      ---      ---       #15
+      0100323CH   LINE      ---      ---       #16
+      01003241H   LINE      ---      ---       #17
+      0100328FH   LINE      ---      ---       #18
+      010032DDH   LINE      ---      ---       #19
+      0100332BH   LINE      ---      ---       #41
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3044,17 +3039,17 @@
       02000C4BH   PUBLIC    XDATA    ---       ipcReadBuff
       0200054FH   PUBLIC    XDATA    BYTE      ipcPinlen
       02000B7EH   PUBLIC    XDATA    BYTE      current_task
-      01003386H   PUBLIC    CODE     ---       IPC_DealSingleStep
+      0100337CH   PUBLIC    CODE     ---       IPC_DealSingleStep
       01001FCCH   PUBLIC    CODE     ---       IPC_IsTxBuffEmpty
-      010035E0H   PUBLIC    CODE     ---       IPC_AbandonLpm
+      010035D6H   PUBLIC    CODE     ---       IPC_AbandonLpm
       010017B8H   PUBLIC    CODE     ---       IPC_WaitLpm
       010017E0H   PUBLIC    CODE     ---       _IPC_Initialize
-      010035DAH   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
-      010035C6H   PUBLIC    CODE     ---       _IPC_TxBleData
-      010035BEH   PUBLIC    CODE     ---       _IPC_TxSppData
-      010035B6H   PUBLIC    CODE     ---       _IPC_Tx24GData
-      010035CEH   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
-      0100358FH   PUBLIC    CODE     ---       _IPC_TxData
+      010035D0H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
+      010035BCH   PUBLIC    CODE     ---       _IPC_TxBleData
+      010035B4H   PUBLIC    CODE     ---       _IPC_TxSppData
+      010035ACH   PUBLIC    CODE     ---       _IPC_Tx24GData
+      010035C4H   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
+      01003585H   PUBLIC    CODE     ---       _IPC_TxData
       01000FC1H   PUBLIC    CODE     ---       _IPC_TxControlCmd
 
       0100107DH   BLOCK     CODE     ---       LVL=0
@@ -3064,19 +3059,19 @@
       010010D6H   LINE      ---      ---       #47
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003336H   BLOCK     CODE     ---       LVL=0
-      01003336H   LINE      ---      ---       #49
-      01003340H   LINE      ---      ---       #50
-      01003340H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003340H   LINE      ---      ---       #51
-      01003348H   LINE      ---      ---       #52
-      0100334EH   LINE      ---      ---       #53
-      0100336DH   LINE      ---      ---       #54
-      01003377H   LINE      ---      ---       #55
-      0100337BH   LINE      ---      ---       #56
-      0100337BH   LINE      ---      ---       #57
-      0100337DH   LINE      ---      ---       #58
-      01003385H   LINE      ---      ---       #59
+      0100332CH   BLOCK     CODE     ---       LVL=0
+      0100332CH   LINE      ---      ---       #49
+      01003336H   LINE      ---      ---       #50
+      01003336H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003336H   LINE      ---      ---       #51
+      0100333EH   LINE      ---      ---       #52
+      01003344H   LINE      ---      ---       #53
+      01003363H   LINE      ---      ---       #54
+      0100336DH   LINE      ---      ---       #55
+      01003371H   LINE      ---      ---       #56
+      01003371H   LINE      ---      ---       #57
+      01003373H   LINE      ---      ---       #58
+      0100337BH   LINE      ---      ---       #59
       00000006H   SYMBOL    DATA     VOID      src
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3110,49 +3105,49 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100358FH   BLOCK     CODE     ---       LVL=0
-      0100358FH   LINE      ---      ---       #83
-      01003594H   LINE      ---      ---       #84
-      01003594H   LINE      ---      ---       #85
-      0100359AH   LINE      ---      ---       #86
-      010035A6H   LINE      ---      ---       #87
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010035CEH   BLOCK     CODE     ---       LVL=0
-      010035CEH   LINE      ---      ---       #90
-      010035CEH   LINE      ---      ---       #91
-      010035CEH   LINE      ---      ---       #92
-      010035D4H   LINE      ---      ---       #93
-      010035D7H   LINE      ---      ---       #94
-      010035D9H   LINE      ---      ---       #95
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010035B6H   BLOCK     CODE     ---       LVL=0
-      010035B6H   LINE      ---      ---       #97
-      010035B6H   LINE      ---      ---       #98
-      010035B6H   LINE      ---      ---       #99
-      010035BCH   LINE      ---      ---       #100
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010035BEH   BLOCK     CODE     ---       LVL=0
-      010035BEH   LINE      ---      ---       #103
-      010035BEH   LINE      ---      ---       #104
-      010035BEH   LINE      ---      ---       #105
-      010035C4H   LINE      ---      ---       #106
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010035C6H   BLOCK     CODE     ---       LVL=0
-      010035C6H   LINE      ---      ---       #109
-      010035C6H   LINE      ---      ---       #110
-      010035C6H   LINE      ---      ---       #111
-      010035CCH   LINE      ---      ---       #112
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010035DAH   BLOCK     CODE     ---       LVL=0
-      010035DAH   LINE      ---      ---       #115
-      010035DAH   LINE      ---      ---       #116
-      010035DAH   LINE      ---      ---       #117
-      010035DFH   LINE      ---      ---       #118
+      01003585H   BLOCK     CODE     ---       LVL=0
+      01003585H   LINE      ---      ---       #83
+      0100358AH   LINE      ---      ---       #84
+      0100358AH   LINE      ---      ---       #85
+      01003590H   LINE      ---      ---       #86
+      0100359CH   LINE      ---      ---       #87
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035C4H   BLOCK     CODE     ---       LVL=0
+      010035C4H   LINE      ---      ---       #90
+      010035C4H   LINE      ---      ---       #91
+      010035C4H   LINE      ---      ---       #92
+      010035CAH   LINE      ---      ---       #93
+      010035CDH   LINE      ---      ---       #94
+      010035CFH   LINE      ---      ---       #95
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035ACH   BLOCK     CODE     ---       LVL=0
+      010035ACH   LINE      ---      ---       #97
+      010035ACH   LINE      ---      ---       #98
+      010035ACH   LINE      ---      ---       #99
+      010035B2H   LINE      ---      ---       #100
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035B4H   BLOCK     CODE     ---       LVL=0
+      010035B4H   LINE      ---      ---       #103
+      010035B4H   LINE      ---      ---       #104
+      010035B4H   LINE      ---      ---       #105
+      010035BAH   LINE      ---      ---       #106
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035BCH   BLOCK     CODE     ---       LVL=0
+      010035BCH   LINE      ---      ---       #109
+      010035BCH   LINE      ---      ---       #110
+      010035BCH   LINE      ---      ---       #111
+      010035C2H   LINE      ---      ---       #112
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035D0H   BLOCK     CODE     ---       LVL=0
+      010035D0H   LINE      ---      ---       #115
+      010035D0H   LINE      ---      ---       #116
+      010035D0H   LINE      ---      ---       #117
+      010035D5H   LINE      ---      ---       #118
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017E0H   BLOCK     CODE     ---       LVL=0
@@ -3169,12 +3164,12 @@
       010017C1H   LINE      ---      ---       #129
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010035E0H   BLOCK     CODE     ---       LVL=0
-      010035E0H   LINE      ---      ---       #132
-      010035E0H   LINE      ---      ---       #133
-      010035E0H   LINE      ---      ---       #134
-      010035E6H   LINE      ---      ---       #135
-      010035EBH   LINE      ---      ---       #136
+      010035D6H   BLOCK     CODE     ---       LVL=0
+      010035D6H   LINE      ---      ---       #132
+      010035D6H   LINE      ---      ---       #133
+      010035D6H   LINE      ---      ---       #134
+      010035DCH   LINE      ---      ---       #135
+      010035E1H   LINE      ---      ---       #136
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001FCCH   BLOCK     CODE     ---       LVL=0
@@ -3186,70 +3181,70 @@
       01001FE3H   LINE      ---      ---       #143
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003386H   BLOCK     CODE     ---       LVL=0
-      01003386H   LINE      ---      ---       #146
-      01003386H   LINE      ---      ---       #147
-      01003386H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003386H   LINE      ---      ---       #148
-      01003398H   LINE      ---      ---       #149
-      010033AEH   LINE      ---      ---       #150
-      010033AEH   LINE      ---      ---       #151
-      010033B6H   LINE      ---      ---       #152
-      010033C7H   LINE      ---      ---       #153
-      010033D1H   LINE      ---      ---       #154
-      010033F0H   LINE      ---      ---       #155
-      010033F2H   LINE      ---      ---       #156
-      01003404H   LINE      ---      ---       #157
-      0100340DH   LINE      ---      ---       #158
-      01003423H   LINE      ---      ---       #159
-      0100345BH   LINE      ---      ---       #160
-      0100345DH   LINE      ---      ---       #161
-      0100346FH   LINE      ---      ---       #162
-      01003478H   LINE      ---      ---       #163
-      0100348EH   LINE      ---      ---       #164
-      010034C6H   LINE      ---      ---       #165
-      010034C8H   LINE      ---      ---       #166
-      010034DAH   LINE      ---      ---       #167
-      010034E3H   LINE      ---      ---       #168
-      010034F9H   LINE      ---      ---       #169
-      01003531H   LINE      ---      ---       #170
-      01003533H   LINE      ---      ---       #171
-      01003533H   LINE      ---      ---       #172
-      01003535H   LINE      ---      ---       #173
-      01003535H   LINE      ---      ---       #174
-      01003535H   LINE      ---      ---       #175
-      01003549H   LINE      ---      ---       #176
-      01003557H   LINE      ---      ---       #178
-      0100355AH   LINE      ---      ---       #180
-      01003569H   LINE      ---      ---       #181
-      0100356BH   LINE      ---      ---       #182
-      01003575H   LINE      ---      ---       #183
-      01003583H   LINE      ---      ---       #185
-      01003586H   LINE      ---      ---       #187
-      0100358CH   LINE      ---      ---       #188
-      0100358EH   LINE      ---      ---       #190
-      01003535H   SYMBOL    ---      ---       IPC_TIMERingleStep
+      0100337CH   BLOCK     CODE     ---       LVL=0
+      0100337CH   LINE      ---      ---       #146
+      0100337CH   LINE      ---      ---       #147
+      0100337CH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100337CH   LINE      ---      ---       #148
+      0100338EH   LINE      ---      ---       #149
+      010033A4H   LINE      ---      ---       #150
+      010033A4H   LINE      ---      ---       #151
+      010033ACH   LINE      ---      ---       #152
+      010033BDH   LINE      ---      ---       #153
+      010033C7H   LINE      ---      ---       #154
+      010033E6H   LINE      ---      ---       #155
+      010033E8H   LINE      ---      ---       #156
+      010033FAH   LINE      ---      ---       #157
+      01003403H   LINE      ---      ---       #158
+      01003419H   LINE      ---      ---       #159
+      01003451H   LINE      ---      ---       #160
+      01003453H   LINE      ---      ---       #161
+      01003465H   LINE      ---      ---       #162
+      0100346EH   LINE      ---      ---       #163
+      01003484H   LINE      ---      ---       #164
+      010034BCH   LINE      ---      ---       #165
+      010034BEH   LINE      ---      ---       #166
+      010034D0H   LINE      ---      ---       #167
+      010034D9H   LINE      ---      ---       #168
+      010034EFH   LINE      ---      ---       #169
+      01003527H   LINE      ---      ---       #170
+      01003529H   LINE      ---      ---       #171
+      01003529H   LINE      ---      ---       #172
+      0100352BH   LINE      ---      ---       #173
+      0100352BH   LINE      ---      ---       #174
+      0100352BH   LINE      ---      ---       #175
+      0100353FH   LINE      ---      ---       #176
+      0100354DH   LINE      ---      ---       #178
+      01003550H   LINE      ---      ---       #180
+      0100355FH   LINE      ---      ---       #181
+      01003561H   LINE      ---      ---       #182
+      0100356BH   LINE      ---      ---       #183
+      01003579H   LINE      ---      ---       #185
+      0100357CH   LINE      ---      ---       #187
+      01003582H   LINE      ---      ---       #188
+      01003584H   LINE      ---      ---       #190
+      0100352BH   SYMBOL    ---      ---       IPC_TIMERingleStep
       02004EEEH   SYMBOL    XDATA    VOID      pbuff
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       ---         MODULE    ---      ---       UTILITIES
       02004EABH   PUBLIC    XDATA    BYTE      ?_compare_str?BYTE
-      01002DFAH   PUBLIC    CODE     ---       _compare_str
+      01002DF0H   PUBLIC    CODE     ---       _compare_str
       01000D03H   PUBLIC    CODE     ---       _Delay1ms
-      010036D2H   PUBLIC    CODE     ---       _xmemclear_ff
+      010036C8H   PUBLIC    CODE     ---       _xmemclear_ff
       01001E69H   PUBLIC    CODE     ---       _xmemclear
       02004E9CH   PUBLIC    XDATA    BYTE      ?_dmemcpy?BYTE
-      010035F3H   PUBLIC    CODE     ---       _dmemcpy
+      010035E9H   PUBLIC    CODE     ---       _dmemcpy
       02004EBFH   PUBLIC    XDATA    BYTE      ?_xmemcpy?BYTE
       01000854H   PUBLIC    CODE     ---       _xmemcpy
-      010035ECH   PUBLIC    CODE     ---       YC_Ice_break
+      010035E2H   PUBLIC    CODE     ---       YC_Ice_break
 
-      010035ECH   BLOCK     CODE     ---       LVL=0
-      010035ECH   LINE      ---      ---       #3
-      010035ECH   LINE      ---      ---       #4
-      010035ECH   LINE      ---      ---       #5
-      010035F2H   LINE      ---      ---       #7
+      010035E2H   BLOCK     CODE     ---       LVL=0
+      010035E2H   LINE      ---      ---       #3
+      010035E2H   LINE      ---      ---       #4
+      010035E2H   LINE      ---      ---       #5
+      010035E8H   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000854H   BLOCK     CODE     ---       LVL=0
@@ -3260,12 +3255,12 @@
       01000896H   LINE      ---      ---       #14
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010035F3H   BLOCK     CODE     ---       LVL=0
-      010035F3H   LINE      ---      ---       #16
-      010035FEH   LINE      ---      ---       #17
-      010035FEH   LINE      ---      ---       #18
-      0100360CH   LINE      ---      ---       #19
-      01003636H   LINE      ---      ---       #21
+      010035E9H   BLOCK     CODE     ---       LVL=0
+      010035E9H   LINE      ---      ---       #16
+      010035F4H   LINE      ---      ---       #17
+      010035F4H   LINE      ---      ---       #18
+      01003602H   LINE      ---      ---       #19
+      0100362CH   LINE      ---      ---       #21
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001E69H   BLOCK     CODE     ---       LVL=0
@@ -3276,12 +3271,12 @@
       01001E94H   LINE      ---      ---       #28
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010036D2H   BLOCK     CODE     ---       LVL=0
-      010036D2H   LINE      ---      ---       #30
-      010036DDH   LINE      ---      ---       #31
-      010036DDH   LINE      ---      ---       #32
-      010036E7H   LINE      ---      ---       #33
-      010036FEH   LINE      ---      ---       #35
+      010036C8H   BLOCK     CODE     ---       LVL=0
+      010036C8H   LINE      ---      ---       #30
+      010036D3H   LINE      ---      ---       #31
+      010036D3H   LINE      ---      ---       #32
+      010036DDH   LINE      ---      ---       #33
+      010036F4H   LINE      ---      ---       #35
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000D03H   BLOCK     CODE     ---       LVL=0
@@ -3296,16 +3291,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002DFAH   BLOCK     CODE     ---       LVL=0
-      01002DFAH   LINE      ---      ---       #54
-      01002E05H   LINE      ---      ---       #55
-      01002E05H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002E05H   LINE      ---      ---       #57
-      01002E11H   LINE      ---      ---       #58
-      01002E3BH   LINE      ---      ---       #59
-      01002E3EH   LINE      ---      ---       #60
-      01002E41H   LINE      ---      ---       #61
-      01002E43H   LINE      ---      ---       #62
+      01002DF0H   BLOCK     CODE     ---       LVL=0
+      01002DF0H   LINE      ---      ---       #54
+      01002DFBH   LINE      ---      ---       #55
+      01002DFBH   BLOCK     CODE     NEAR LAB  LVL=1
+      01002DFBH   LINE      ---      ---       #57
+      01002E07H   LINE      ---      ---       #58
+      01002E31H   LINE      ---      ---       #59
+      01002E34H   LINE      ---      ---       #60
+      01002E37H   LINE      ---      ---       #61
+      01002E39H   LINE      ---      ---       #62
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3313,10 +3308,10 @@
       ---         MODULE    ---      ---       GPIO
       020000A3H   PUBLIC    XDATA    ---       YC_GPIOWakeupL
       020000A7H   PUBLIC    XDATA    ---       YC_GPIOWakeupH
-      0100375BH   PUBLIC    CODE     ---       GPIO_fillpd
-      0100373EH   PUBLIC    CODE     ---       _GPIO_FlipOutBit
+      01003751H   PUBLIC    CODE     ---       GPIO_fillpd
+      01003734H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
       0100133CH   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
-      010036FFH   PUBLIC    CODE     ---       _GPIO_ClearWakeup
+      010036F5H   PUBLIC    CODE     ---       _GPIO_ClearWakeup
       00000020H.7 PUBLIC    BIT      BIT       ?_GPIO_SetWakeup?BIT
       01001217H   PUBLIC    CODE     ---       _GPIO_SetWakeup
       00000020H.6 PUBLIC    BIT      BIT       ?_GPIO_SetOutput?BIT
@@ -3445,16 +3440,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      010036FFH   BLOCK     CODE     ---       LVL=0
-      010036FFH   LINE      ---      ---       #107
-      010036FFH   LINE      ---      ---       #108
-      010036FFH   BLOCK     CODE     NEAR LAB  LVL=1
-      010036FFH   LINE      ---      ---       #111
-      01003703H   LINE      ---      ---       #113
-      01003707H   LINE      ---      ---       #114
-      0100370EH   LINE      ---      ---       #115
-      01003730H   LINE      ---      ---       #116
-      0100373DH   LINE      ---      ---       #117
+      010036F5H   BLOCK     CODE     ---       LVL=0
+      010036F5H   LINE      ---      ---       #107
+      010036F5H   LINE      ---      ---       #108
+      010036F5H   BLOCK     CODE     NEAR LAB  LVL=1
+      010036F5H   LINE      ---      ---       #111
+      010036F9H   LINE      ---      ---       #113
+      010036FDH   LINE      ---      ---       #114
+      01003704H   LINE      ---      ---       #115
+      01003726H   LINE      ---      ---       #116
+      01003733H   LINE      ---      ---       #117
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -3470,30 +3465,30 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100373EH   BLOCK     CODE     ---       LVL=0
-      0100373EH   LINE      ---      ---       #125
-      01003743H   LINE      ---      ---       #126
-      01003743H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003743H   LINE      ---      ---       #127
-      0100374EH   LINE      ---      ---       #128
+      01003734H   BLOCK     CODE     ---       LVL=0
+      01003734H   LINE      ---      ---       #125
+      01003739H   LINE      ---      ---       #126
+      01003739H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003739H   LINE      ---      ---       #127
+      01003744H   LINE      ---      ---       #128
       00000021H.1 SYMBOL    BIT      VOID      st
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100375BH   BLOCK     CODE     ---       LVL=0
-      0100375BH   LINE      ---      ---       #131
-      0100375BH   LINE      ---      ---       #132
-      0100375BH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100375BH   LINE      ---      ---       #134
-      0100375DH   LINE      ---      ---       #135
-      0100378EH   LINE      ---      ---       #136
+      01003751H   BLOCK     CODE     ---       LVL=0
+      01003751H   LINE      ---      ---       #131
+      01003751H   LINE      ---      ---       #132
+      01003751H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003751H   LINE      ---      ---       #134
+      01003753H   LINE      ---      ---       #135
+      01003784H   LINE      ---      ---       #136
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       ---         MODULE    ---      ---       IIC
       010013ECH   PUBLIC    CODE     ---       _IIC_WriteBlock
-      01003637H   PUBLIC    CODE     ---       _IIC_write
+      0100362DH   PUBLIC    CODE     ---       _IIC_write
       01001B78H   PUBLIC    CODE     ---       _IIC_Read
 
       01001FC4H   BLOCK     CODE     ---       LVL=0
@@ -3526,18 +3521,18 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003637H   BLOCK     CODE     ---       LVL=0
-      01003637H   LINE      ---      ---       #35
-      01003652H   LINE      ---      ---       #36
-      01003652H   LINE      ---      ---       #37
-      01003673H   LINE      ---      ---       #38
-      01003679H   LINE      ---      ---       #39
-      01003688H   LINE      ---      ---       #40
-      010036A5H   LINE      ---      ---       #41
-      010036BCH   LINE      ---      ---       #42
-      010036C3H   LINE      ---      ---       #43
-      010036C8H   LINE      ---      ---       #44
-      010036CFH   LINE      ---      ---       #45
+      0100362DH   BLOCK     CODE     ---       LVL=0
+      0100362DH   LINE      ---      ---       #35
+      01003648H   LINE      ---      ---       #36
+      01003648H   LINE      ---      ---       #37
+      01003669H   LINE      ---      ---       #38
+      0100366FH   LINE      ---      ---       #39
+      0100367EH   LINE      ---      ---       #40
+      0100369BH   LINE      ---      ---       #41
+      010036B2H   LINE      ---      ---       #42
+      010036B9H   LINE      ---      ---       #43
+      010036BEH   LINE      ---      ---       #44
+      010036C5H   LINE      ---      ---       #45
       ---         BLOCKEND  ---      ---       LVL=0
 
       010013ECH   BLOCK     CODE     ---       LVL=0
@@ -3632,5 +3627,5 @@
       ---         MODULE    ---      ---       ?C_INIT
       01000626H   PUBLIC    CODE     ---       ?C_START
 
-Program Size: data=10.2 xdata=908 const=182 code=14041
+Program Size: data=10.2 xdata=908 const=182 code=14031
 LX51 RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
Index: c51/output/FW.SBR
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/eeprom.dat
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/eeprom.dat	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/eeprom.dat	(working copy)
@@ -6596,7 +6596,7 @@
 29
 aa
 55
-91
+87
 37
 02
 05
@@ -8255,13 +8255,13 @@
 9e
 ff
 30
-f3
+e9
 00
 00
 00
 ff
 32
-14
+0a
 00
 ff
 08
@@ -9820,7 +9820,7 @@
 fd
 12
 35
-c6
+bc
 90
 4c
 c5
@@ -9927,7 +9927,7 @@
 fd
 12
 35
-b6
+ac
 22
 ef
 d3
@@ -10174,7 +10174,7 @@
 00
 12
 36
-d2
+c8
 90
 4c
 c0
@@ -10477,7 +10477,7 @@
 19
 12
 37
-3e
+34
 80
 4a
 90
@@ -10492,7 +10492,7 @@
 1c
 12
 37
-3e
+34
 80
 3b
 c2
@@ -10533,7 +10533,7 @@
 1d
 12
 37
-3e
+34
 80
 12
 c2
@@ -11117,7 +11117,7 @@
 da
 12
 33
-86
+7c
 12
 1e
 d0
@@ -11199,7 +11199,7 @@
 05
 12
 35
-e0
+d6
 80
 a9
 51
@@ -11459,7 +11459,7 @@
 b0
 12
 37
-5b
+51
 90
 81
 1c
@@ -11835,7 +11835,7 @@
 f9
 12
 36
-37
+2d
 7f
 0a
 12
@@ -12462,7 +12462,7 @@
 f0
 12
 30
-a6
+9c
 90
 4c
 bf
@@ -12616,7 +12616,7 @@
 f0
 12
 30
-a6
+9c
 90
 4c
 bf
@@ -13133,7 +13133,7 @@
 00
 12
 36
-d2
+c8
 7f
 c8
 12
@@ -13451,7 +13451,7 @@
 03
 12
 31
-e6
+dc
 e4
 90
 4c
@@ -14181,7 +14181,7 @@
 d0
 12
 32
-24
+1a
 90
 4c
 eb
@@ -14632,7 +14632,7 @@
 26
 12
 2b
-6b
+61
 90
 4e
 e5
@@ -17040,6 +17040,10 @@
 e0
 ff
 60
+32
+64
+01
+60
 2e
 ee
 b4
@@ -17087,20 +17091,6 @@
 74
 e3
 f0
-ef
-b4
-03
-0a
-ee
-b4
-35
-06
-90
-4f
-04
-74
-64
-f0
 90
 4c
 c1
@@ -17132,8 +17122,8 @@
 01
 60
 02
-41
-08
+21
+fe
 ee
 64
 14
@@ -17220,16 +17210,16 @@
 74
 02
 f0
-41
-08
+21
+fe
 ef
 d3
 94
 03
 40
 02
-41
-08
+21
+fe
 ef
 c3
 94
@@ -17365,7 +17355,7 @@
 60
 02
 61
-65
+5b
 90
 4d
 e2
@@ -17387,7 +17377,7 @@
 60
 02
 61
-65
+5b
 90
 4d
 e7
@@ -17397,7 +17387,7 @@
 60
 02
 61
-65
+5b
 ee
 24
 c6
@@ -17407,10 +17397,10 @@
 40
 02
 61
-65
+5b
 90
 2a
-48
+3e
 75
 f0
 03
@@ -17424,40 +17414,40 @@
 73
 02
 2a
-6c
+62
 02
 2a
-74
+6a
 02
 2a
-7c
+72
 02
 2a
-c3
+b9
 02
 2a
-e9
+df
 02
 2a
-f1
+e7
 02
 2b
-37
+2d
 02
 2b
-3f
+35
 02
 2b
-47
+3d
 02
 2b
-4f
+45
 02
 2b
-57
+4d
 02
 2b
-5f
+55
 90
 4f
 04
@@ -17465,7 +17455,7 @@
 d7
 f0
 61
-65
+5b
 90
 4f
 04
@@ -17473,7 +17463,7 @@
 d8
 f0
 61
-65
+5b
 90
 4c
 c1
@@ -17506,7 +17496,7 @@
 04
 f0
 61
-65
+5b
 ee
 64
 01
@@ -17519,7 +17509,7 @@
 60
 02
 61
-65
+5b
 af
 04
 7b
@@ -17544,7 +17534,7 @@
 04
 f0
 61
-65
+5b
 90
 4c
 c1
@@ -17739,7 +17729,7 @@
 a3
 f0
 f1
-44
+3a
 7a
 4d
 79
@@ -17769,7 +17759,7 @@
 79
 bc
 b1
-fa
+f0
 ef
 60
 1c
@@ -17782,7 +17772,7 @@
 7d
 14
 b1
-ca
+c0
 ef
 70
 0f
@@ -17830,7 +17820,7 @@
 70
 02
 81
-a1
+97
 74
 bc
 2f
@@ -17849,7 +17839,7 @@
 e0
 ff
 b1
-bc
+b2
 90
 4e
 92
@@ -17861,7 +17851,7 @@
 50
 02
 81
-8a
+80
 e4
 90
 4e
@@ -17998,8 +17988,8 @@
 e0
 04
 f0
-81
-05
+61
+fb
 90
 4e
 8b
@@ -18008,7 +17998,7 @@
 60
 08
 b1
-bc
+b2
 90
 4e
 8f
@@ -18022,7 +18012,7 @@
 04
 f0
 61
-d4
+ca
 90
 4e
 8f
@@ -18048,7 +18038,7 @@
 70
 02
 a1
-90
+86
 74
 93
 2f
@@ -18103,9 +18093,9 @@
 70
 04
 a1
-88
+7e
 a1
-88
+7e
 90
 4e
 91
@@ -18214,7 +18204,7 @@
 e0
 ff
 d1
-44
+3a
 80
 07
 90
@@ -18223,7 +18213,7 @@
 e0
 ff
 d1
-9a
+90
 90
 4e
 8b
@@ -18261,7 +18251,7 @@
 04
 f0
 81
-ae
+a4
 90
 4e
 4b
@@ -18840,7 +18830,7 @@
 f0
 0f
 e1
-50
+46
 e4
 ff
 ef
@@ -18852,7 +18842,7 @@
 03
 02
 30
-5c
+52
 ef
 93
 fd
@@ -18977,7 +18967,7 @@
 0f
 02
 2f
-d5
+cb
 e4
 ff
 ef
@@ -19187,7 +19177,7 @@
 14
 f0
 11
-a6
+9c
 90
 4c
 e5
@@ -19195,7 +19185,7 @@
 70
 45
 31
-e6
+dc
 80
 41
 90
@@ -19827,7 +19817,7 @@
 70
 02
 a1
-35
+2b
 7e
 0c
 7f
@@ -19835,7 +19825,7 @@
 7d
 03
 71
-36
+2c
 90
 4e
 ee
@@ -19895,7 +19885,7 @@
 05
 dd
 a1
-35
+2b
 90
 4e
 ee
@@ -19944,7 +19934,7 @@
 14
 fd
 71
-36
+2c
 90
 4e
 ee
@@ -20002,7 +19992,7 @@
 05
 dd
 a1
-35
+2b
 90
 4e
 ee
@@ -20051,7 +20041,7 @@
 14
 fd
 71
-36
+2c
 90
 4e
 ee
@@ -20158,7 +20148,7 @@
 14
 fd
 71
-36
+2c
 90
 4e
 ee
@@ -20382,7 +20372,7 @@
 60
 02
 b1
-8f
+85
 22
 90
 04
@@ -20536,7 +20526,7 @@
 79
 86
 b1
-f3
+e9
 90
 0b
 83
@@ -20821,8 +20811,8 @@
 04
 cf
 22
-cf
-65
+c4
+a6
 aa
 55
 40
@@ -22176,8 +22166,8 @@
 6c
 59
 50
-b8
-d8
+bf
+f6
 ff
 ff
 ff
@@ -32764,5 +32754,15 @@
 ff
 ff
 ff
-2f
-dc
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+2e
+e1
Index: c51/output/fw.hex
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/fw.hex	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/fw.hex	(working copy)
@@ -101,7 +101,7 @@
 :1006400054C025E060A840B8E493A3FAE493A3F86B
 :10065000E493A3C8C582C8CAC583CAF0A3C8C5822B
 :10066000C8CAC583CADFE9DEE780BE524E56FF180E
-:1006700089000000FF219EFF30F3000000FF3214CC
+:1006700089000000FF219EFF30E9000000FF320AE0
 :1006800000FF08090A0B0C0D0E111312FFFFFFFFEC
 :100690000F140000000000000000000000001E35E4
 :1006A0008B1D29042B141F3A8A1B6416391A203B10
@@ -199,14 +199,14 @@
 :100C60007002A102904CEBE06002A102904CC7E040
 :100C7000FF6404600AEFB4031E904DD3E060189047
 :100C80004E7EE0B406037403F07B017A4E797E90C9
-:100C90004E7DE0FD1235C6904CC5E0640370639054
+:100C90004E7DE0FD1235BC904CC5E064037063905E
 :100CA0004E7EE0640170237404F0A3E07014904E53
 :100CB00081E0700EA3E0700AA3E07006904DDDF0B5
 :100CC0008032904DDD7401F0802A904E7EE0B402B7
 :100CD000197405F0A3E0700AA3E07006904DDDF0F2
 :100CE0008012904DDD7401F0800A904E7EE0B403D6
 :100CF000037407F07B017A4E797E904E7DE0FD1201
-:100D000035B622EFD394004011E4FDFC0DBD000187
+:100D000035AC22EFD394004011E4FDFC0DBD000191
 :100D10000CBC04F8BDA6F51F80E922904F03EFF04C
 :100D200014B40D004002C1EC900D3675F003A4C55B
 :100D30008325F0C58373020D5D020D5D020D5D021A
@@ -221,7 +221,7 @@
 :100DC0004DEC7403F02212187FE4904DD4F0904D56
 :100DD000D3F0904E55F01222727F0DF1C1E4904C89
 :100DE000EDF022122045E4904CEDF0227B017A4D8B
-:100DF00079EE7D5D7C001236D2904CC074FFF0A37A
+:100DF00079EE7D5D7C001236C8904CC074FFF0A384
 :100E0000F07FC8B103C2017FFFD1F27B017A4D7937
 :100E1000EE7D5D7C007F607E7F1213EC7B017A4C5F
 :100E200079C07D017C007FBD7E7F1213ECD2017FF3
@@ -240,10 +240,10 @@
 :100EF000F022EFF4600D7B017A807974A2019200F8
 :100F0000121FE422904DEBE064026002E1C0904CBD
 :100F1000E9E06039904CCCE06401601D904CC3E086
-:100F2000B401077F1912373E804A904CC3E0640237
-:100F300070427F1C12373E803BC2017F19D1F2C242
+:100F2000B401077F19123734804A904CC3E0640241
+:100F300070427F1C123734803BC2017F19D1F2C24C
 :100F4000017F1CD1F2C2017F1DD1F28027904CEEAF
-:100F5000E06021904CCDE0640160077F1D12373EB8
+:100F5000E06021904CCDE0640160077F1D123734C2
 :100F60008012C2017F19D1F2C2017F1CD1F2C201ED
 :100F70007F1DD1F21210D7EF6046904CE5E0704033
 :100F8000A3E0601614F0D2017FFFD1F2904CE6E0AE
@@ -280,12 +280,12 @@
 :10117000F2904CB7E030E107D2017F18020EF2C2C4
 :10118000017F18020EF2C2017FFF120EF2C2017F30
 :1011900018020EF2C2017F18020EF2C2017F18126D
-:1011A0000EF222F1DA123386121ED0715111EC9137
+:1011A0000EF222F1DA12337C121ED0715111EC9141
 :1011B000E0904D7DE0600312216F900B7EE01460A3
 :1011C0001E24FE70E051A3C2077F1A5117C2077F89
 :1011D000155117C2077F175117B1EFF1B880FE9074
 :1011E0004CEAE07012904CECE0700C904CE5E07032
-:1011F00006904CF8E060051235E080A951A3C207C3
+:1011F00006904CF8E060051235D680A951A3C207CD
 :101200007F1A5117C2077F155117C2077F17511751
 :10121000F1B88091808F22EFF4700241A2EF540761
 :10122000FEEF1313135403FF30074324A3F582E4A6
@@ -301,7 +301,7 @@
 :1012C00001A805088002C333D8FCFDEE2478FBE4B6
 :1012D00034808B82F583E0FCEDF4FBEC5BF0EE24D4
 :1012E00070F582E43480F583E04DF0EE2474F582ED
-:1012F000E43480F583E05BF00F80B012375B9081BF
+:1012F000E43480F583E05BF00F80B01237519081C9
 :101300001CE0904F07F0904DDCE06020E4FF713C62
 :101310007F01713C7F02713C7F03713C7F04713C13
 :101320007F05713C7F06713C7F078010904F07E07E
@@ -325,7 +325,7 @@
 :10144000A3E0FF8004AE04AF05904E9AEEF0FCA33B
 :10145000EFF0FDC3904E96E09DF0904E95E09CF02D
 :10146000904E93E0FEA3E0FF904E97E0FBA3E0FADE
-:10147000A3E0F91236377F0A120D03904E9AE0FE70
+:10147000A3E0F912362D7F0A120D03904E9AE0FE7A
 :10148000A3E0FF904E98EE8FF012040E904E94E081
 :101490002FF0904E93E03EF08103227B017A817918
 :1014A0001CAD07E4904F0AF0FEEF5407F0EF131362
@@ -364,7 +364,7 @@
 :1016B0001BB1EF904CEB7401F0904CC0E0904CC427
 :1016C000F0904CC3E0904CC0F08045904CCDE06071
 :1016D00025E4F07F0D120D1B904CEB7401F0904C43
-:1016E000C3E0904CC0F01230A6904CBF7401F07172
+:1016E000C3E0904CC0F012309C904CBF7401F0717C
 :1016F000517F24120FC1904CD1E0FFC39406500BD0
 :10170000EF94004006904CE57403F0E4904CD1F067
 :10171000904CCEE030E347904CEA740AF0904CD203
@@ -374,7 +374,7 @@
 :10175000E0904CC4F0904CC3E0904CC0F022904C10
 :10176000CCE0602FE4F0904CC3E0FF904CC0E06F01
 :101770006021904CEB7401F0904CC3E0904CC0F0B1
-:101780001230A6904CBF7401F012204571517F2495
+:1017800012309C904CBF7401F012204571517F249F
 :10179000120FC1904CD2E0FFC39406500BEF94009F
 :1017A0004006904CE57403F0E4904CD2F022E490B3
 :1017B0004D38F07F19020FC1E4900B7FF0900B7E43
@@ -406,7 +406,7 @@
 :10195000EB7402F08128B16BB120E4904CFCF022D2
 :10196000904CC3E0D3940050026177E094044002AD
 :101970006177E075F01FA424CFF9744D35F0FA7B40
-:10198000017D1F7C001236D27FC8120D03C2017F79
+:10198000017D1F7C001236C87FC8120D03C2017F83
 :10199000FF120EF27B017A4D79EE7D5D7C007F6057
 :1019A0007E7F1213ECD2017FFF020EF2904DD6E043
 :1019B000FF020737904CC57403F0E4A3F0117FE4F5
@@ -426,7 +426,7 @@
 :101A9000F582E4344DF583E4F0904DE7E0FF904C9F
 :101AA000C3E075F01FA424EDF582E4344DF583EF17
 :101AB000F0904DE5E07006904DD47414F0904CE534
-:101AC000E070031231E6E4904CE9F0904CE3F0A3AF
+:101AC000E070031231DCE4904CE9F0904CE3F0A3B9
 :101AD000F022904CC77404F0E4A3F0117FE4904C22
 :101AE000EBF0904DDB740AF0904CC3E0904CC0F0EA
 :101AF000904CBF7403F022904CC3E014FD7F0112A0
@@ -471,7 +471,7 @@
 :101D60007A807970A2049200F1E422908091740D3F
 :101D7000F0A304F0A3F0A3F0A3F0A314F022E490E6
 :101D80004F05F0F0904F05E0FFC39408500CC205DA
-:101D9000B101904F05E004F080EA22B1D012322464
+:101D9000B101904F05E004F080EA22B1D012321A6E
 :101DA000904CEB7401F0904CE5740AF0E4904CF028
 :101DB000F0904D0974FFF09044FCE0904DD0F0900D
 :101DC00044FDE0904DD1F09044FEE0904DD2F022E1
@@ -500,7 +500,7 @@
 :101F30004CF47405F022904CF4E0B40615E4904C97
 :101F4000F6F0904CF5F0A3E0FDE4FFD195E4904C61
 :101F5000F4F022904EE5E4F0A3F0A3F0F1CC50268B
-:101F6000122B6B904EE5EBF0A3EAF0A3E9F04A7078
+:101F6000122B61904EE5EBF0A3EAF0A3E9F04A7082
 :101F700007904CB604F0800F904EE5E0FBA3E0FA2A
 :101F8000A3E0F912089722904D46E06036904DDDAF
 :101F9000E07030904CC5E0B403297B017A487900A9
@@ -650,241 +650,241 @@
 :10289000EF30E012904CF4E0B403047402F02290A4
 :1028A0004CF47401F022904CF47404F022AE05ACA8
 :1028B00007E4904F04F0EC30E005E4904CF8F09021
-:1028C0004F04EEF0904CC1E0FF602EEEB4E60890AD
-:1028D0004F0474E7F08022EEB4E708904F0474E6EA
-:1028E000F08016EEB4E308904F0474E2F0800AEE34
-:1028F000B4E206904F0474E3F0EFB4030AEEB4358B
-:1029000006904F047464F0904CC1E07011EEB4DA9C
-:102910000DAF047B0F7D081188E4904F04F0904DBB
-:10292000E2E0640160024108EE6414600FEE641A94
-:10293000600AEE64086005EE64157072EEB4150866
-:10294000904CC17402F08021EEB41A07E4904CC19F
-:10295000F08016EEB40808904CC17401F0800AEEC5
-:10296000B41406904CC17403F0E4904F04F0904C02
-:10297000C3E0FF6003B4FE08904CBF7402F041084E
-:10298000EFD3940340024108EFC39401407A904C86
-:10299000C1E0FF904CC3E075F01FA424ECF582E485
-:1029A000344DF583EFF0904CBF7403F0805AEE6421
-:1029B0002B7055EC30E04C904DE7E06004E4F08083
-:1029C00006904DE77401F0904CC3E0FF6003B4FE45
-:1029D00008904CBF7402F0802AEFD394035024EF88
-:1029E000C39401401E904DE7E0FF904CC3E075F0AA
-:1029F0001FA424EDF582E4344DF583EFF0904CBF35
-:102A00007403F0E4904F04F0904E55E0600261656D
-:102A1000904DE2E07006904DE7E06014904DE2E0EA
-:102A2000640160026165904DE7E0640160026165E8
-:102A3000EE24C6B40C0040026165902A4875F0038C
-:102A4000A4C58325F0C58373022A6C022A74022A66
-:102A50007C022AC3022AE9022AF1022B37022B3F09
-:102A6000022B47022B4F022B57022B5F904F04740F
-:102A7000D7F06165904F0474D8F06165904CC1E067
-:102A8000FEB40219AF047B2B7D081188EC30E00600
-:102A9000904CF8740AF0E4904F04F06165EE640124
-:102AA0006008904CC1E060026165AF047B2B7D043F
-:102AB0001188EC30E006904CF8740AF0E4904F0472
-:102AC000F06165904CC1E0B40217AF047B2C7D0926
-:102AD0001188EC30E006904CF8740AF0E4904F0452
-:102AE000F0904F0474D5F0807C904F0474D6F08041
-:102AF00074904CC1E0B40317AF047B207D0A1188A9
-:102B0000EC30E006904CF8740AF0E4904F04F0903A
-:102B10004CC1E0B40219AF047B207D0A1188EF306C
-:102B2000E006904CF8740AF0E4904F04F080369080
-:102B30004F047446F0802E904F0474F4F080269079
-:102B40004F0474F2F0801E904F0474F5F0801690DC
-:102B50004F0474F8F0800E904F0474F6F0800690E5
-:102B60004F0474F7F0904F04E0FF22E4904E88F099
-:102B7000A3F0A3F0A3F0A3F0A3F0A3F0A3F0A3F0BD
-:102B8000A3F0A3F0F1447A4D79A8904EAE7401F011
-:102B9000A3744DF0A374A8F0A37414F07B017A4DD4
-:102BA00079BCB1FAEF601C7B017A4D79BC7D14B120
-:102BB000CAEF700F904CCEE04402F0904D0A7414AE
-:102BC000F0800C904CCEE054FDF0E4904CD0F0E45A
-:102BD000904E88F0904E88E0FF90068193700281BD
-:102BE000A174BC2FF582E4344DF583E0904E8BF058
-:102BF000E0FFB1BC904E92EFF0C394025002818A84
-:102C0000E4904E89F0904E89E0FFC39408507B74A5
-:102C1000017E00A807088005C333CE33CED8F9FF64
-:102C2000904E8BE0FDE4EF5D6058E4904E8AF090AA
-:102C30004E8AE0FF900681936048904E88E0FEEF58
-:102C40006E6037904E8AE024BCF582E4344DF58303
-:102C5000E0FD7C00904E89E0FF74017E00A807082B
-:102C60008005C333CE33CED8F9FFEE5CFEEF5D4E68
-:102C70006008904E917401F08008904E8AE004F054
-:102C800080AD904E89E004F08105904E8BE0FF60AE
-:102C900008B1BC904E8FE02FF0904E88E004F061B8
-:102CA000D4904E8FE0904DE4F0E4904E88F0904E3A
-:102CB00088E0FF900681937002A19074932FF582B3
-:102CC000E4344DF583E0FE74BC2FF582E4344DF519
-:102CD00083E06E904E8BF0904E88E0FF24BCF5822E
-:102CE000E4344DF583E0904E8EF0904E8BE070040E
-:102CF000A188A188904E91E060077B007A0079005E
-:102D00002274BC2FF582E4344DF583E0FE74932FDA
-:102D1000F582E4344DF583EEF0E4904E89F0904E68
-:102D200089E0FFC39408505A904E8BE030E03B900E
-:102D30004E88E0FE33333354F8FEEF4E904E8DF064
-:102D4000A3E0FF904E8DE090069693FD11AD904E5E
-:102D500090EFF0904E8EE030E009904E90E0FFD181
-:102D6000448007904E90E0FFD19A904E8BE0FFC3D5
-:102D700013F0904E8EE0FFC313F0904E89E004F004
-:102D8000809C904E8C7401F0904E88E004F081AEEF
-:102D9000904E4BE0B4030A904DDFE0B4010374029F
-:102DA000F0904E8CE07007904DDFE0B402077B019D
-:102DB0007A4E79A4227B007A00790022E4FEEF604B
-:102DC00006145FFF0E80F7AF0622904EEBEBF0A3E8
-:102DD000EAF0A3E9F0E4FFEFC39D501B904EEBE057
-:102DE000FBA3E0FAA3E0F98F827583001203CF60A2
-:102DF000037F00220F80E07F0122904EABEBF0A317
-:102E0000EAF0A3E9F0E4FF904EB1E0FEEFC39E507C
-:102E100030904EAEE0FBA3E0FAA3E0F98F82758319
-:102E2000001203CFFE904EABE0FBA3E0FAA3E0F963
-:102E30008F827583001203CF6E60037F00220F80A4
-:102E4000C67F0122E4FEEFC394E04020EFD394E775
-:102E5000501A904EA4E0FEEF5407FF7401A8070833
-:102E60008002C333D8FC4E904EA4F022E4FE74A539
-:102E70002EF582E4344EF583E0FD6F601CED701496
-:102E8000904DEDE06F601274A52EF582E4344EF59E
-:102E900083EFF0220EEEB406D522E4FEFDEF54F0EF
-:102EA00064F06007EF54D0FCBCD00C904E4BE0B403
-:102EB000020B7403F08006904DDF7401F0EFC394B1
-:102EC000E04021EFD394E7501B904EA4E0FEEF5476
-:102ED00007FF7401A807088002C333D8FCF45E9092
-:102EE0004EA4F022E4FEED702174A52EF582E434A8
-:102EF0004EF583E06F7047EEB4050B24A5F582E430
-:102F0000344EF583E4F07D01803474A52EF582E41F
-:102F1000344EF583E0FC74A42EF582E4344EF58340
-:102F2000ECF074A52EF582E4344EF583E06014EEE7
-:102F3000B4050B24A5F582E4344EF583E4F00EEEDF
-:102F4000B406A322E4FF904EE8F0FEFDA3F0A3F048
-:102F5000EF90068193607CEF93FD131313541FFED3
-:102F6000ED5407FD7401A805088002C333D8FCFDA9
-:102F7000EE2478FBE434808B82F583E0FCEDF4FBF7
-:102F8000EC5BF0EE2470F582E43480F583E04DF0E4
-:102F9000EE2474F582E43480F583E05BF090811CCC
-:102FA000E0F4FC74BC2FF582E4344DF583ECF0EED4
-:102FB0002478FBE434808B82F583E04DF0EE2470BE
-:102FC000FBE434808B82F583E0FCEDF4FBEC5BF0FA
-:102FD0000FE150E4FFEF90068193700302305CEF45
-:102FE00093FD131313541FFEED5407FD7401A80540
-:102FF000088002C333D8FCFDEE2478FBE434808BD8
-:1030000082F583E0FCEDF4FBEC5BF0EE2470F582DE
-:10301000E43480F583E04DF0EE2474F582E43480EE
-:10302000F583E05BF090811CE0F4FC74A82FF5823E
-:10303000E4344DF583ECF0EE2478FBE434808B82AD
-:10304000F583E04DF0EE2470FBE434808B82F58351
-:10305000E0FCEDF4FBEC5BF00F022FD5E4FFEF900A
-:10306000068193604074BC2FF582E4344DF583E013
-:10307000FE74A82FF582E4344DF583E06E6023746E
-:10308000BC2FF582E4344DF583C083C082E0FE742A
-:10309000A82FF582E4344DF583E0FDEE5DD082D0BB
-:1030A00083F00F80B922904CC3E0B40115D2017FA8
-:1030B00019120EF2C2017F1C120EF2C2017F1D0214
-:1030C0000EF2904CC3E0B40215C2017F19120EF249
-:1030D000D2017F1C120EF2C2017F1D020EF2C2014C
-:1030E0007F19120EF2C2017F1C120EF2D2017F1D57
-:1030F000020EF2904CEAE0600214F0904CEFE060B7
-:103100000214F0904CF8E0600B14F0E07006904C64
-:10311000F47406F0904CE5E0601E904CEEE0600622
-:10312000E4904CE5F022904CE5E014F011A6904CB0
-:10313000E5E0704531E68041904CE9E0703B904C11
-:10314000EEE07035904CE2E0602F14F0E0FFC394A5
-:10315000045016EF30E109D2017F1D120EF28010EB
-:10316000C2017F1D120EF28007C2017F1D120EF2F6
-:10317000904CE2E07003740AF0904DDCE070369001
-:103180004DDDE06401702E904CE3F0A3F0904DDD36
-:10319000F0904E4CE0600D7B017A4E794C7D03122D
-:1031A0000C1F8011904800E0600B7B017A48790089
-:1031B0007D09120C1F904DD4E06011E014F0E07016
-:1031C0000B904D3DE070057F1B120FC1904DE6E066
-:1031D0006013E014F0E0700D904CC7E0B40406906A
-:1031E0004213740CF022904CC3E0B40107C2017F7B
-:1031F00019020EF2904CC3E0B40207C2017F1C0218
-:103200000EF2C2017F1D020EF29080107401F08058
-:10321000FE2280F5904EFCEDF09000011203CF905D
-:103220004EFDF022904CD37405F0E4A3F0904D0ACB
-:103230007414F0E4FFEF25E024D6F582E4344CF575
-:10324000837454F0A3F00FEFB404EA904C91E0FEC5
-:10325000A3E0FFC3904C94E09FFD904C93E09EFC54
-:10326000E41202067B857AEB79B1783F1200FBC04D
-:1032700004C005C006C007904C91E0FCA3E0FDE44B
-:10328000120206D003D002D001D00012000A1202AE
-:103290003F904CFAEEF0A3EFF0904C91E0FEA3E0EB
-:1032A000FFC3904C94E09FFD904C93E09EFCE41291
-:1032B00002067BC37AF57988783F1200FBC004C010
-:1032C00005C006C007904C91E0FCA3E0FDE41202AB
-:1032D00006D003D002D001D00012000A12023F90A3
-:1032E0004CDEEEF0A3EFF0904C91E0FEA3E0FFC3C4
-:1032F000904C94E09FFD904C93E09EFCE4120206FB
-:103300007BAE7A477981783F1200FBC004C005C0CC
-:1033100006C007904C91E0FCA3E0FDE4120206D049
-:1033200003D002D001D00012000A12023F904CE0FC
-:10333000EEF0A3EFF022904EFEEEF0A3EFF0A90521
-:10334000904B9EE0FEA3E0FFAD0119ED602F0FEF63
-:10335000AC0670010E14F5828C83E0FD904EFEE405
-:1033600075F00112042485F082F583EDF0AD07AC11
-:1033700006BC4BD4BD9AD17E4B7F3680CB904B9E02
-:10338000EEF0A3EFF0227A0C794B904EEE7401F040
-:10339000A3740CF0A3744BF0904BA0E0FEA3E0FFED
-:1033A000904B9EE06E7003A3E06F7002A1357E0C1F
-:1033B0007F4B7D037136904EEEE0FBA3E0FAA3E075
-:1033C000F91203B6B4022B904EEFE475F00212042A
-:1033D0000E904EEEE0FBA3E0FAA3E0F91203B6FF75
-:1033E000904E68E0A3E0FAA3E0F5828A831205DD3F
-:1033F000A135904EEEE0FBA3E0FAA3E0F91203B68C
-:1034000064047059904EEF75F00112040E7E0C7F2B
-:103410004E904EEEE0FBA3E0FAA3E0F91203B614DF
-:10342000FD7136904EEEE0FBA3E0FAA3E02401F933
-:10343000E43AFAC002C001904EEEE0A3E0FAA3E045
-:10344000F91203B6FD7C00904E6BE0A3E0FAA3E016
-:10345000F5828A83D001D0021205DDA135904EEEAF
-:10346000E0FBA3E0FAA3E0F91203B66405705990FB
-:103470004EEF75F00112040E7E0C7F4E904EEEE082
-:10348000FBA3E0FAA3E0F91203B614FD7136904EE7
-:10349000EEE0FBA3E0FAA3E02401F9E43AFAC0026B
-:1034A000C001904EEEE0A3E0FAA3E0F91203B6FDEE
-:1034B0007C00904E74E0A3E0FAA3E0F5828A83D00A
-:1034C00001D0021205DD806D904EEEE0FBA3E0FA24
-:1034D000A3E0F91203B664037059904EEF75F00142
-:1034E00012040E7E0C7F4E904EEEE0FBA3E0FAA39A
-:1034F000E0F91203B614FD7136904EEEE0FBA3E046
-:10350000FAA3E02401F9E43AFAC002C001904EEEB9
-:10351000E0A3E0FAA3E0F91203B6FD7C00904E7739
-:10352000E0A3E0FAA3E0F5828A83D001D00212057D
-:10353000DD800280FE904BA5E0FEA3E0FF904C5E94
-:10354000E06E7003A3E06F6022904E6EE0FBA3E09C
-:10355000FAA3E0F94A60371205D9904BA5E0FFA322
-:10356000E0904C5ECFF0A3EFF080CA904C8DE0FF6E
-:10357000A3E06F6019904E71E0FBA3E0FAA3E0F9BD
-:103580004A600B1205D9904C8DE0A3F080DD2290AB
-:103590004F09EDF0E0FD900BE8F07E0B7FE9904ED7
-:1035A000C4EDF01208547B017A0B79E7904F09E0E3
-:1035B0002402FD020FE9900BE77406F080D1900B16
-:1035C000E77404F080C9900BE77405F080C1900B9C
-:1035D000E77403F0ED6002B18F22900446E0FF2211
-:1035E000900B7F7401F0E4900B7EF0229082807447
-:1035F00001F022904E9CEBF0A3EAF0A3E9F0904E8C
-:10360000A274FFF5F012042445F0602A904E9FE06A
-:10361000FBA3E475F001120424A9F0FA1203B6FF2B
-:10362000904E9CE0FBA3E475F001120424A9F0FA8B
-:10363000EF1203FC80C822904EB2EEF0A3EFF090A0
-:103640004EB6EBF0A3EAF0A3E9F0904EB4ECF0A391
-:10365000EDF0A3E0F9A3E0FAA3E0904E9FC9F0A338
-:10366000EAF0A3E9F0A3ECF0A3EDF07B017A0B798B
-:1036700086B1F3900B8374A0F0904EB2E0FFA3E00C
-:10368000900B84CFF0A3EFF0904EB5E02403FD90B3
-:103690004EB4E03400FCEDFAECFFEAFEEF908098C7
-:1036A000EEF0A3EFF07A0B79837E0B7F837483FCBB
-:1036B000740BFFECFEEFA3EEF0A3EFF090809EE41E
-:1036C000F0A3F090809004F0908006E04404F002B3
-:1036D0001FC4904EF4EBF0A3EAF0A3E9F0ED1DAEA9
-:1036E0000470011C4E6017904EF4E0FBA3E475F0EB
-:1036F00001120424A9F0FA74FF1203FC80DF22EF08
-:10370000F4603AEF5407FEEF1313135403FF24A39E
-:10371000F582E43400F583C083C082E0FD7401A823
-:1037200006088002C333D8FCF4FC5DD082D083F05D
-:1037300074A72FF582E43400F583E05CF022904F0B
-:103740000CEFF07B017A8079741214A19209904FEA
-:103750000CE0FFA209B39201020EF2E4FFEFFD7C40
-:10376000002478FBEC34808B82F583E0FEED24703E
-:10377000FDEC34808D82F583E04EF4FEEF247CFD79
-:0F378000EC34808D82F583EEF00FEFB404CF228E
+:1028C0004F04EEF0904CC1E0FF60326401602EEEE8
+:1028D000B4E608904F0474E7F08022EEB4E7089065
+:1028E0004F0474E6F08016EEB4E308904F0474E2EF
+:1028F000F0800AEEB4E206904F0474E3F0904CC10D
+:10290000E07011EEB4DA0DAF047B0F7D081188E49E
+:10291000904F04F0904DE2E06401600221FEEE640D
+:1029200014600FEE641A600AEE64086005EE641528
+:102930007072EEB41508904CC17402F08021EEB4B0
+:102940001A07E4904CC1F08016EEB40808904CC110
+:102950007401F0800AEEB41406904CC17403F0E4E4
+:10296000904F04F0904CC3E0FF6003B4FE08904C1D
+:10297000BF7402F021FEEFD39403400221FEEFC3A7
+:102980009401407A904CC1E0FF904CC3E075F01F79
+:10299000A424ECF582E4344DF583EFF0904CBF7441
+:1029A00003F0805AEE642B7055EC30E04C904DE70C
+:1029B000E06004E4F08006904DE77401F0904CC3B1
+:1029C000E0FF6003B4FE08904CBF7402F0802AEF71
+:1029D000D394035024EFC39401401E904DE7E0FFD1
+:1029E000904CC3E075F01FA424EDF582E4344DF55E
+:1029F00083EFF0904CBF7403F0E4904F04F0904EDE
+:102A000055E06002615B904DE2E07006904DE7E0BA
+:102A10006014904DE2E064016002615B904DE7E07C
+:102A200064016002615BEE24C6B40C004002615B8D
+:102A3000902A3E75F003A4C58325F0C58373022A4E
+:102A400062022A6A022A72022AB9022ADF022AE7ED
+:102A5000022B2D022B35022B3D022B45022B4D0262
+:102A60002B55904F0474D7F0615B904F0474D8F0ED
+:102A7000615B904CC1E0FEB40219AF047B2B7D0872
+:102A80001188EC30E006904CF8740AF0E4904F04A2
+:102A9000F0615BEE64016008904CC1E06002615B34
+:102AA000AF047B2B7D041188EC30E006904CF87469
+:102AB0000AF0E4904F04F0615B904CC1E0B402175F
+:102AC000AF047B2C7D091188EC30E006904CF87443
+:102AD0000AF0E4904F04F0904F0474D5F0807C909D
+:102AE0004F0474D6F08074904CC1E0B40317AF0467
+:102AF0007B207D0A1188EC30E006904CF8740AF0D7
+:102B0000E4904F04F0904CC1E0B40219AF047B2074
+:102B10007D0A1188EF30E006904CF8740AF0E490DA
+:102B20004F04F08036904F047446F0802E904F048E
+:102B300074F4F08026904F0474F2F0801E904F04DD
+:102B400074F5F08016904F0474F8F0800E904F04E6
+:102B500074F6F08006904F0474F7F0904F04E0FF95
+:102B600022E4904E88F0A3F0A3F0A3F0A3F0A3F02A
+:102B7000A3F0A3F0A3F0A3F0A3F0F13A7A4D79A863
+:102B8000904EAE7401F0A3744DF0A374A8F0A3743A
+:102B900014F07B017A4D79BCB1F0EF601C7B017AB7
+:102BA0004D79BC7D14B1C0EF700F904CCEE0440263
+:102BB000F0904D0A7414F0800C904CCEE054FDF06F
+:102BC000E4904CD0F0E4904E88F0904E88E0FF9076
+:102BD0000681937002819774BC2FF582E4344DF521
+:102BE00083E0904E8BF0E0FFB1B2904E92EFF0C3D5
+:102BF000940250028180E4904E89F0904E89E0FF6B
+:102C0000C39408507B74017E00A807088005C33375
+:102C1000CE33CED8F9FF904E8BE0FDE4EF5D6058E7
+:102C2000E4904E8AF0904E8AE0FF900681936048CF
+:102C3000904E88E0FEEF6E6037904E8AE024BCF53F
+:102C400082E4344DF583E0FD7C00904E89E0FF7412
+:102C5000017E00A807088005C333CE33CED8F9FF24
+:102C6000EE5CFEEF5D4E6008904E917401F08008BE
+:102C7000904E8AE004F080AD904E89E004F061FB54
+:102C8000904E8BE0FF6008B1B2904E8FE02FF09035
+:102C90004E88E004F061CA904E8FE0904DE4F0E47D
+:102CA000904E88F0904E88E0FF900681937002A1CC
+:102CB0008674932FF582E4344DF583E0FE74BC2FC7
+:102CC000F582E4344DF583E06E904E8BF0904E88A3
+:102CD000E0FF24BCF582E4344DF583E0904E8EF0A5
+:102CE000904E8BE07004A17EA17E904E91E0600733
+:102CF0007B007A0079002274BC2FF582E4344DF514
+:102D000083E0FE74932FF582E4344DF583EEF0E416
+:102D1000904E89F0904E89E0FFC39408505A904E2F
+:102D20008BE030E03B904E88E0FE33333354F8FEC6
+:102D3000EF4E904E8DF0A3E0FF904E8DE090069602
+:102D400093FD11AD904E90EFF0904E8EE030E00983
+:102D5000904E90E0FFD13A8007904E90E0FFD190E6
+:102D6000904E8BE0FFC313F0904E8EE0FFC313F044
+:102D7000904E89E004F0809C904E8C7401F0904E4F
+:102D800088E004F081A4904E4BE0B4030A904DDF3C
+:102D9000E0B401037402F0904E8CE07007904DDFB8
+:102DA000E0B402077B017A4E79A4227B007A007995
+:102DB0000022E4FEEF6006145FFF0E80F7AF0622EC
+:102DC000904EEBEBF0A3EAF0A3E9F0E4FFEFC39D34
+:102DD000501B904EEBE0FBA3E0FAA3E0F98F827565
+:102DE00083001203CF60037F00220F80E07F012267
+:102DF000904EABEBF0A3EAF0A3E9F0E4FF904EB104
+:102E0000E0FEEFC39E5030904EAEE0FBA3E0FAA38D
+:102E1000E0F98F827583001203CFFE904EABE0FB8A
+:102E2000A3E0FAA3E0F98F827583001203CF6E60EE
+:102E3000037F00220F80C67F0122E4FEEFC394E0EF
+:102E40004020EFD394E7501A904EA4E0FEEF5407D1
+:102E5000FF7401A807088002C333D8FC4E904EA42B
+:102E6000F022E4FE74A52EF582E4344EF583E0FDF5
+:102E70006F601CED7014904DEDE06F601274A52E24
+:102E8000F582E4344EF583EFF0220EEEB406D5223F
+:102E9000E4FEFDEF54F064F06007EF54D0FCBCD0CA
+:102EA0000C904E4BE0B4020B7403F08006904DDFA3
+:102EB0007401F0EFC394E04021EFD394E7501B90EE
+:102EC0004EA4E0FEEF5407FF7401A807088002C378
+:102ED00033D8FCF45E904EA4F022E4FEED70217431
+:102EE000A52EF582E4344EF583E06F7047EEB4050D
+:102EF0000B24A5F582E4344EF583E4F07D018034A3
+:102F000074A52EF582E4344EF583E0FC74A42EF50E
+:102F100082E4344EF583ECF074A52EF582E4344E51
+:102F2000F583E06014EEB4050B24A5F582E4344E7D
+:102F3000F583E4F00EEEB406A322E4FF904EE8F031
+:102F4000FEFDA3F0A3F0EF90068193607CEF93FD6C
+:102F5000131313541FFEED5407FD7401A8050880D8
+:102F600002C333D8FCFDEE2478FBE434808B82F579
+:102F700083E0FCEDF4FBEC5BF0EE2470F582E434CE
+:102F800080F583E04DF0EE2474F582E43480F5831F
+:102F9000E05BF090811CE0F4FC74BC2FF582E4341B
+:102FA0004DF583ECF0EE2478FBE434808B82F583DE
+:102FB000E04DF0EE2470FBE434808B82F583E0FC7E
+:102FC000EDF4FBEC5BF00FE146E4FFEF900681933C
+:102FD0007003023052EF93FD131313541FFEED5490
+:102FE00007FD7401A805088002C333D8FCFDEE2458
+:102FF00078FBE434808B82F583E0FCEDF4FBEC5B42
+:10300000F0EE2470F582E43480F583E04DF0EE2498
+:1030100074F582E43480F583E05BF090811CE0F489
+:10302000FC74A82FF582E4344DF583ECF0EE24789F
+:10303000FBE434808B82F583E04DF0EE2470FBE4FA
+:1030400034808B82F583E0FCEDF4FBEC5BF00F0247
+:103050002FCBE4FFEF90068193604074BC2FF58284
+:10306000E4344DF583E0FE74A82FF582E4344DF589
+:1030700083E06E602374BC2FF582E4344DF583C089
+:1030800083C082E0FE74A82FF582E4344DF583E01E
+:10309000FDEE5DD082D083F00F80B922904CC3E06A
+:1030A000B40115D2017F19120EF2C2017F1C120E5B
+:1030B000F2C2017F1D020EF2904CC3E0B40215C2B1
+:1030C000017F19120EF2D2017F1C120EF2C2017F93
+:1030D0001D020EF2C2017F19120EF2C2017F1C12F4
+:1030E0000EF2D2017F1D020EF2904CEAE060021453
+:1030F000F0904CEFE0600214F0904CF8E0600B149C
+:10310000F0E07006904CF47406F0904CE5E0601E20
+:10311000904CEEE06006E4904CE5F022904CE5E047
+:1031200014F0119C904CE5E0704531DC8041904CEE
+:10313000E9E0703B904CEEE07035904CE2E0602F9F
+:1031400014F0E0FFC394045016EF30E109D2017F80
+:103150001D120EF28010C2017F1D120EF28007C2F6
+:10316000017F1D120EF2904CE2E07003740AF090A1
+:103170004DDCE07036904DDDE06401702E904CE344
+:10318000F0A3F0904DDDF0904E4CE0600D7B017AA5
+:103190004E794C7D03120C1F8011904800E0600BAB
+:1031A0007B017A4879007D09120C1F904DD4E060B4
+:1031B00011E014F0E0700B904D3DE070057F1B12A4
+:1031C0000FC1904DE6E06013E014F0E0700D904CFC
+:1031D000C7E0B40406904213740CF022904CC3E094
+:1031E000B40107C2017F19020EF2904CC3E0B40291
+:1031F00007C2017F1C020EF2C2017F1D020EF29077
+:1032000080107401F080FE2280F5904EFCEDF0906D
+:1032100000011203CF904EFDF022904CD37405F0C4
+:10322000E4A3F0904D0A7414F0E4FFEF25E024D6F7
+:10323000F582E4344CF5837454F0A3F00FEFB4043A
+:10324000EA904C91E0FEA3E0FFC3904C94E09FFD18
+:10325000904C93E09EFCE41202067B857AEB79B1F8
+:10326000783F1200FBC004C005C006C007904C9117
+:10327000E0FCA3E0FDE4120206D003D002D001D0AE
+:103280000012000A12023F904CFAEEF0A3EFF09009
+:103290004C91E0FEA3E0FFC3904C94E09FFD904C66
+:1032A00093E09EFCE41202067BC37AF57988783FAE
+:1032B0001200FBC004C005C006C007904C91E0FCA2
+:1032C000A3E0FDE4120206D003D002D001D0001228
+:1032D000000A12023F904CDEEEF0A3EFF0904C910A
+:1032E000E0FEA3E0FFC3904C94E09FFD904C93E080
+:1032F0009EFCE41202067BAE7A477981783F120089
+:10330000FBC004C005C006C007904C91E0FCA3E0E0
+:10331000FDE4120206D003D002D001D00012000A50
+:1033200012023F904CE0EEF0A3EFF022904EFEEE42
+:10333000F0A3EFF0A905904B9EE0FEA3E0FFAD01E6
+:1033400019ED602F0FEFAC0670010E14F5828C831F
+:10335000E0FD904EFEE475F00112042485F082F544
+:1033600083EDF0AD07AC06BC4BD4BD9AD17E4B7F4C
+:103370003680CB904B9EEEF0A3EFF0227A0C794B87
+:10338000904EEE7401F0A3740CF0A3744BF0904BCC
+:10339000A0E0FEA3E0FF904B9EE06E7003A3E06F01
+:1033A0007002A12B7E0C7F4B7D03712C904EEEE0C2
+:1033B000FBA3E0FAA3E0F91203B6B4022B904EEFA0
+:1033C000E475F00212040E904EEEE0FBA3E0FAA3C7
+:1033D000E0F91203B6FF904E68E0A3E0FAA3E0F52F
+:1033E000828A831205DDA12B904EEEE0FBA3E0FA6A
+:1033F000A3E0F91203B664047059904EEF75F00122
+:1034000012040E7E0C7F4E904EEEE0FBA3E0FAA37A
+:10341000E0F91203B614FD712C904EEEE0FBA3E030
+:10342000FAA3E02401F9E43AFAC002C001904EEE9A
+:10343000E0A3E0FAA3E0F91203B6FD7C00904E6B26
+:10344000E0A3E0FAA3E0F5828A83D001D00212055E
+:10345000DDA12B904EEEE0FBA3E0FAA3E0F912030E
+:10346000B664057059904EEF75F00112040E7E0C93
+:103470007F4E904EEEE0FBA3E0FAA3E0F91203B614
+:1034800014FD712C904EEEE0FBA3E0FAA3E02401C2
+:10349000F9E43AFAC002C001904EEEE0A3E0FAA3CC
+:1034A000E0F91203B6FD7C00904E74E0A3E0FAA3AD
+:1034B000E0F5828A83D001D0021205DD806D904E46
+:1034C000EEE0FBA3E0FAA3E0F91203B6640370593F
+:1034D000904EEF75F00112040E7E0C7F4E904EEE72
+:1034E000E0FBA3E0FAA3E0F91203B614FD712C90FF
+:1034F0004EEEE0FBA3E0FAA3E02401F9E43AFAC0BF
+:1035000002C001904EEEE0A3E0FAA3E0F91203B688
+:10351000FD7C00904E77E0A3E0FAA3E0F5828A8379
+:10352000D001D0021205DD800280FE904BA5E0FEA6
+:10353000A3E0FF904C5EE06E7003A3E06F6022900A
+:103540004E6EE0FBA3E0FAA3E0F94A60371205D91A
+:10355000904BA5E0FFA3E0904C5ECFF0A3EFF0808E
+:10356000CA904C8DE0FFA3E06F6019904E71E0FBB4
+:10357000A3E0FAA3E0F94A600B1205D9904C8DE064
+:10358000A3F080DD22904F09EDF0E0FD900BE8F014
+:103590007E0B7FE9904EC4EDF01208547B017A0B4C
+:1035A00079E7904F09E02402FD020FE9900BE774E0
+:1035B00006F080D1900BE77404F080C9900BE7749B
+:1035C00005F080C1900BE77403F0ED6002B1852235
+:1035D000900446E0FF22900B7F7401F0E4900B7E94
+:1035E000F0229082807401F022904E9CEBF0A3EACE
+:1035F000F0A3E9F0904EA274FFF5F012042445F018
+:10360000602A904E9FE0FBA3E475F001120424A908
+:10361000F0FA1203B6FF904E9CE0FBA3E475F001B4
+:10362000120424A9F0FAEF1203FC80C822904EB2D3
+:10363000EEF0A3EFF0904EB6EBF0A3EAF0A3E9F0C2
+:10364000904EB4ECF0A3EDF0A3E0F9A3E0FAA3E010
+:10365000904E9FC9F0A3EAF0A3E9F0A3ECF0A3ED2C
+:10366000F07B017A0B7986B1E9900B8374A0F0901E
+:103670004EB2E0FFA3E0900B84CFF0A3EFF0904EAA
+:10368000B5E02403FD904EB4E03400FCEDFAECFF0D
+:10369000EAFEEF908098EEF0A3EFF07A0B79837E4C
+:1036A0000B7F837483FC740BFFECFEEFA3EEF0A39F
+:1036B000EFF090809EE4F0A3F090809004F0908072
+:1036C00006E04404F0021FC4904EF4EBF0A3EAF0CD
+:1036D000A3E9F0ED1DAE0470011C4E6017904EF48E
+:1036E000E0FBA3E475F001120424A9F0FA74FF12C0
+:1036F00003FC80DF22EFF4603AEF5407FEEF131370
+:10370000135403FF24A3F582E43400F583C083C07F
+:1037100082E0FD7401A806088002C333D8FCF4FCE3
+:103720005DD082D083F074A72FF582E43400F58356
+:10373000E05CF022904F0CEFF07B017A80797412FC
+:1037400014A19209904F0CE0FFA209B39201020E5E
+:10375000F2E4FFEFFD7C002478FBEC34808B82F5F3
+:1037600083E0FEED2470FDEC34808D82F583E04E25
+:10377000F4FEEF247CFDEC34808D82F583EEF00FB7
+:05378000EFB404CF22AC
 :00000001FF
Index: c51/output/fwram.rom
===================================================================
--- /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/fwram.rom	(revision 5194)
+++ /branch/mouse_project/LeXiang/Keyboard/KD8015_2mode_3ch_LI/c51/output/fwram.rom	(working copy)
@@ -1655,13 +1655,13 @@
 9e
 ff
 30
-f3
+e9
 00
 00
 00
 ff
 32
-14
+0a
 00
 ff
 08
@@ -3220,7 +3220,7 @@
 fd
 12
 35
-c6
+bc
 90
 4c
 c5
@@ -3327,7 +3327,7 @@
 fd
 12
 35
-b6
+ac
 22
 ef
 d3
@@ -3574,7 +3574,7 @@
 00
 12
 36
-d2
+c8
 90
 4c
 c0
@@ -3877,7 +3877,7 @@
 19
 12
 37
-3e
+34
 80
 4a
 90
@@ -3892,7 +3892,7 @@
 1c
 12
 37
-3e
+34
 80
 3b
 c2
@@ -3933,7 +3933,7 @@
 1d
 12
 37
-3e
+34
 80
 12
 c2
@@ -4517,7 +4517,7 @@
 da
 12
 33
-86
+7c
 12
 1e
 d0
@@ -4599,7 +4599,7 @@
 05
 12
 35
-e0
+d6
 80
 a9
 51
@@ -4859,7 +4859,7 @@
 b0
 12
 37
-5b
+51
 90
 81
 1c
@@ -5235,7 +5235,7 @@
 f9
 12
 36
-37
+2d
 7f
 0a
 12
@@ -5862,7 +5862,7 @@
 f0
 12
 30
-a6
+9c
 90
 4c
 bf
@@ -6016,7 +6016,7 @@
 f0
 12
 30
-a6
+9c
 90
 4c
 bf
@@ -6533,7 +6533,7 @@
 00
 12
 36
-d2
+c8
 7f
 c8
 12
@@ -6851,7 +6851,7 @@
 03
 12
 31
-e6
+dc
 e4
 90
 4c
@@ -7581,7 +7581,7 @@
 d0
 12
 32
-24
+1a
 90
 4c
 eb
@@ -8032,7 +8032,7 @@
 26
 12
 2b
-6b
+61
 90
 4e
 e5
@@ -10440,6 +10440,10 @@
 e0
 ff
 60
+32
+64
+01
+60
 2e
 ee
 b4
@@ -10487,20 +10491,6 @@
 74
 e3
 f0
-ef
-b4
-03
-0a
-ee
-b4
-35
-06
-90
-4f
-04
-74
-64
-f0
 90
 4c
 c1
@@ -10532,8 +10522,8 @@
 01
 60
 02
-41
-08
+21
+fe
 ee
 64
 14
@@ -10620,16 +10610,16 @@
 74
 02
 f0
-41
-08
+21
+fe
 ef
 d3
 94
 03
 40
 02
-41
-08
+21
+fe
 ef
 c3
 94
@@ -10765,7 +10755,7 @@
 60
 02
 61
-65
+5b
 90
 4d
 e2
@@ -10787,7 +10777,7 @@
 60
 02
 61
-65
+5b
 90
 4d
 e7
@@ -10797,7 +10787,7 @@
 60
 02
 61
-65
+5b
 ee
 24
 c6
@@ -10807,10 +10797,10 @@
 40
 02
 61
-65
+5b
 90
 2a
-48
+3e
 75
 f0
 03
@@ -10824,40 +10814,40 @@
 73
 02
 2a
-6c
+62
 02
 2a
-74
+6a
 02
 2a
-7c
+72
 02
 2a
-c3
+b9
 02
 2a
-e9
+df
 02
 2a
-f1
+e7
 02
 2b
-37
+2d
 02
 2b
-3f
+35
 02
 2b
-47
+3d
 02
 2b
-4f
+45
 02
 2b
-57
+4d
 02
 2b
-5f
+55
 90
 4f
 04
@@ -10865,7 +10855,7 @@
 d7
 f0
 61
-65
+5b
 90
 4f
 04
@@ -10873,7 +10863,7 @@
 d8
 f0
 61
-65
+5b
 90
 4c
 c1
@@ -10906,7 +10896,7 @@
 04
 f0
 61
-65
+5b
 ee
 64
 01
@@ -10919,7 +10909,7 @@
 60
 02
 61
-65
+5b
 af
 04
 7b
@@ -10944,7 +10934,7 @@
 04
 f0
 61
-65
+5b
 90
 4c
 c1
@@ -11139,7 +11129,7 @@
 a3
 f0
 f1
-44
+3a
 7a
 4d
 79
@@ -11169,7 +11159,7 @@
 79
 bc
 b1
-fa
+f0
 ef
 60
 1c
@@ -11182,7 +11172,7 @@
 7d
 14
 b1
-ca
+c0
 ef
 70
 0f
@@ -11230,7 +11220,7 @@
 70
 02
 81
-a1
+97
 74
 bc
 2f
@@ -11249,7 +11239,7 @@
 e0
 ff
 b1
-bc
+b2
 90
 4e
 92
@@ -11261,7 +11251,7 @@
 50
 02
 81
-8a
+80
 e4
 90
 4e
@@ -11398,8 +11388,8 @@
 e0
 04
 f0
-81
-05
+61
+fb
 90
 4e
 8b
@@ -11408,7 +11398,7 @@
 60
 08
 b1
-bc
+b2
 90
 4e
 8f
@@ -11422,7 +11412,7 @@
 04
 f0
 61
-d4
+ca
 90
 4e
 8f
@@ -11448,7 +11438,7 @@
 70
 02
 a1
-90
+86
 74
 93
 2f
@@ -11503,9 +11493,9 @@
 70
 04
 a1
-88
+7e
 a1
-88
+7e
 90
 4e
 91
@@ -11614,7 +11604,7 @@
 e0
 ff
 d1
-44
+3a
 80
 07
 90
@@ -11623,7 +11613,7 @@
 e0
 ff
 d1
-9a
+90
 90
 4e
 8b
@@ -11661,7 +11651,7 @@
 04
 f0
 81
-ae
+a4
 90
 4e
 4b
@@ -12240,7 +12230,7 @@
 f0
 0f
 e1
-50
+46
 e4
 ff
 ef
@@ -12252,7 +12242,7 @@
 03
 02
 30
-5c
+52
 ef
 93
 fd
@@ -12377,7 +12367,7 @@
 0f
 02
 2f
-d5
+cb
 e4
 ff
 ef
@@ -12587,7 +12577,7 @@
 14
 f0
 11
-a6
+9c
 90
 4c
 e5
@@ -12595,7 +12585,7 @@
 70
 45
 31
-e6
+dc
 80
 41
 90
@@ -13227,7 +13217,7 @@
 70
 02
 a1
-35
+2b
 7e
 0c
 7f
@@ -13235,7 +13225,7 @@
 7d
 03
 71
-36
+2c
 90
 4e
 ee
@@ -13295,7 +13285,7 @@
 05
 dd
 a1
-35
+2b
 90
 4e
 ee
@@ -13344,7 +13334,7 @@
 14
 fd
 71
-36
+2c
 90
 4e
 ee
@@ -13402,7 +13392,7 @@
 05
 dd
 a1
-35
+2b
 90
 4e
 ee
@@ -13451,7 +13441,7 @@
 14
 fd
 71
-36
+2c
 90
 4e
 ee
@@ -13558,7 +13548,7 @@
 14
 fd
 71
-36
+2c
 90
 4e
 ee
@@ -13782,7 +13772,7 @@
 60
 02
 b1
-8f
+85
 22
 90
 04
@@ -13936,7 +13926,7 @@
 79
 86
 b1
-f3
+e9
 90
 0b
 83
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
