Index: c51/kb_process.c
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/kb_process.c	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/c51/kb_process.c	(working copy)
@@ -674,6 +674,7 @@
 			temp = HID_KEY_TILDE;
 		}
 	}
+	/*
 	else if(temp == HID_KEY_L)
 	{
 		if(g_variable.system_mode != OSMODE_IOS)
@@ -770,7 +771,7 @@
 				
 		}
 	}
-
+	*/
 
 	if(fn_flag == 1)			// Fn lock
 	{
Index: c51/output/FW
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/FW.COD
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/output/FW.COD	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/c51/output/FW.COD	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               09/13/2023  18:54:20  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               10/11/2023  12:23:52  PAGE 1
 
 
 
@@ -1187,7 +1187,7 @@
 000CC5 904E83            MOV     DPTR,#len
 000CC8 E0                MOVX    A,@DPTR
 000CC9 FD                MOV     R5,A
-000CCA 12372D            LCALL   _IPC_TxBleData
+000CCA 1235B0            LCALL   _IPC_TxBleData
   142: 
   143: 	}
 000CCD         ?C0033?KB_PROCESS:
@@ -1281,7 +1281,7 @@
 000D30 904E83            MOV     DPTR,#len
 000D33 E0                MOVX    A,@DPTR
 000D34 FD                MOV     R5,A
-000D35 12371B            LCALL   _IPC_Tx24GData
+000D35 12359E            LCALL   _IPC_Tx24GData
   171: 	}
   172: }
 000D38         ?C0031?KB_PROCESS:
@@ -2381,7 +2381,7 @@
 001234 7974              MOV     R1,#074H
 001236 A201              MOV     C,bit_val
 001238 9200              MOV     ?_gpioSetBit?BIT,C
-00123A 1233D1            LCALL   _gpioSetBit
+00123A 123254            LCALL   _gpioSetBit
 00123D         ?C0007?GPIO:
 00123D 22                RET     
 ----- FUNCTION _GPIO_Setout (END) -------
@@ -2397,8 +2397,8 @@
     5: 	switch (key_num)
     6: 	{
 001243 14                DEC     A
-001244 B40D00            CJNE    A,#0DH,?C0292?KB_PROCESS
-001247         ?C0292?KB_PROCESS:
+001244 B40D00            CJNE    A,#0DH,?C0245?KB_PROCESS
+001247         ?C0245?KB_PROCESS:
 001247 4002              JC      $ + 4H
 001249 810D              AJMP    ?C0025?KB_PROCESS
 00124B 901259            MOV     DPTR,#01259H
@@ -2408,7 +2408,7 @@
 001254 25F0              ADD     A,B
 001256 C583              XCH     A,DPH
 001258 73                JMP     @A+DPTR
-001259         ?C0293?KB_PROCESS:
+001259         ?C0246?KB_PROCESS:
 001259 021280            LJMP    ?C0004?KB_PROCESS
 00125C 021280            LJMP    ?C0004?KB_PROCESS
 00125F 021280            LJMP    ?C0004?KB_PROCESS
@@ -2844,9 +2844,9 @@
   126: 		System_Hardware_init();
 001474         ?C0015?SYS:
   127: 		System_Software_init();
-001474 12345B            LCALL   System_Hardware_init
+001474 1232DE            LCALL   System_Hardware_init
   128: 
-001477 1235FA            LCALL   System_Software_init
+001477 12347D            LCALL   System_Software_init
   129: 		IIC_Read(EEPROM_BATTERY_SHUTDOWN_FLAG ,1 ,(byte *)&g_variable.battery_shutdown_flag);
 00147A 7B01              MOV     R3,#01H
 00147C 7A4C              MOV     R2,#HIGH g_variable+03DH
@@ -2940,7 +2940,7 @@
 0014F1 904CC3            MOV     DPTR,#g_variable+04H
 0014F4 F0                MOVX    @DPTR,A
   148: 		LED_device_poweron();
-0014F5 123492            LCALL   LED_device_poweron
+0014F5 123315            LCALL   LED_device_poweron
   149: 		Delay1ms(10);
 0014F8 7F0A              MOV     R7,#0AH
 0014FA F1A8              ACALL   _Delay1ms
@@ -3039,9 +3039,9 @@
   173: 	case IPC_EVT_WAKEUP:
 001580         ?C0023?SYS:
   174: 		System_IIC_clk_setup();
-001580 12347F            LCALL   System_IIC_clk_setup
+001580 123302            LCALL   System_IIC_clk_setup
   175: 		KS_Initialize();
-001583 02344E            LJMP    KS_Initialize
+001583 0232D1            LJMP    KS_Initialize
   176: 
   177: 		break;
   178: 
@@ -4198,14 +4198,14 @@
 001A46         ?C0016?GPIO:
 001A46 AF04              MOV     R7,AR4
 001A48 D204              SETB    ?_GPIO_Setoe?BIT
-001A4A 1233C0            LCALL   _GPIO_Setoe
+001A4A 123243            LCALL   _GPIO_Setoe
 001A4D AF04              MOV     R7,AR4
 001A4F A206              MOV     C,st
 001A51 9201              MOV     ?_GPIO_Setout?BIT,C
 001A53 12122C            LCALL   _GPIO_Setout
 001A56 AF04              MOV     R7,AR4
 001A58 C202              CLR     ?_GPIO_SetPu?BIT
-001A5A 123380            LCALL   _GPIO_SetPu
+001A5A 123203            LCALL   _GPIO_SetPu
 001A5D         ?C0017?GPIO:
 001A5D 22                RET     
 ----- FUNCTION _GPIO_SetOutput (END) -------
@@ -4525,7 +4525,7 @@
   802: 			) 
   803: 			{
   804: 				IPC_AbandonLpm();
-001BEA 12373C            LCALL   IPC_AbandonLpm
+001BEA 1235BF            LCALL   IPC_AbandonLpm
   805: 				break;
 001BED 80AB              SJMP    ?C0145?SYS
   806: 			}
@@ -4641,7 +4641,7 @@
 001C56 80B0              SJMP    ?C0043?KEYSCAN
 001C58         ?C0044?KEYSCAN:
   243: 	GPIO_fillpd();
-001C58 12378E            LCALL   GPIO_fillpd
+001C58 123611            LCALL   GPIO_fillpd
   244: 	
   245: 	temp = REG_GPIO_IN(0);
 001C5B 90811C            MOV     DPTR,#0811CH
@@ -6592,8 +6592,8 @@
 
 ----- FUNCTION _kb_multikey_setup (BEGIN) -----
  FILE: 'kb_process.c'
-  882: void kb_multikey_setup(tKSEVENT *pEvt)
-  883: {
+  883: void kb_multikey_setup(tKSEVENT *pEvt)
+  884: {
 002585 904EDE            MOV     DPTR,#pEvt
 002588 EB                MOV     A,R3
 002589 F0                MOVX    @DPTR,A
@@ -6603,23 +6603,23 @@
 00258D A3                INC     DPTR
 00258E E9                MOV     A,R1
 00258F F0                MOVX    @DPTR,A
-  884: 	byte i = 0;
-  885: 	
+  885: 	byte i = 0;
+  886: 	
 002590 E4                CLR     A
 002591 A3                INC     DPTR
 002592 F0                MOVX    @DPTR,A
-  886: 	for (i = 0;i < 6;i++)
+  887: 	for (i = 0;i < 6;i++)
 002593 F0                MOVX    @DPTR,A
-002594         ?C0232?KB_PROCESS:
+002594         ?C0185?KB_PROCESS:
 002594 904EE1            MOV     DPTR,#i
 002597 E0                MOVX    A,@DPTR
 002598 FF                MOV     R7,A
 002599 C3                CLR     C
 00259A 9406              SUBB    A,#06H
 00259C 4003              JC      $ + 5H
-00259E 02289C            LJMP    ?C0291?KB_PROCESS
-  887: 	{		
-  888: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
+00259E 02289C            LJMP    ?C0244?KB_PROCESS
+  888: 	{		
+  889: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
 0025A1 904EDE            MOV     DPTR,#pEvt
 0025A4 E0                MOVX    A,@DPTR
 0025A5 FB                MOV     R3,A
@@ -6644,41 +6644,41 @@
 0025BC FF                MOV     R7,A
 0025BD 54F0              ANL     A,#0F0H
 0025BF 64F0              XRL     A,#0F0H
-0025C1 600A              JZ      ?C0236?KB_PROCESS
+0025C1 600A              JZ      ?C0189?KB_PROCESS
 0025C3 EF                MOV     A,R7
 0025C4 54D0              ANL     A,#0D0H
 0025C6 64D0              XRL     A,#0D0H
 0025C8 6003              JZ      $ + 5H
-0025CA 022893            LJMP    ?C0234?KB_PROCESS
-0025CD         ?C0236?KB_PROCESS:
-  889: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
-  890: 		{
-  891: 			
-  892: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
+0025CA 022893            LJMP    ?C0187?KB_PROCESS
+0025CD         ?C0189?KB_PROCESS:
+  890: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
+  891: 		{
+  892: 			
+  893: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
 0025CD 1203B6            LCALL   ?C?CLDPTR
 0025D0 FB                MOV     R3,A
-0025D1 B4F109            CJNE    A,#0F1H,?C0237?KB_PROCESS
-  893: 			{
-  894: 				kb_set_multikey(0x0183); 
+0025D1 B4F109            CJNE    A,#0F1H,?C0190?KB_PROCESS
+  894: 			{
+  895: 				kb_set_multikey(0x0183); 
 0025D4 7F83              MOV     R7,#083H
 0025D6 7E01              MOV     R6,#01H
 0025D8 B16A              ACALL   _kb_set_multikey
-  895: 			}
-0025DA 022868            LJMP    ?C0238?KB_PROCESS
-0025DD         ?C0237?KB_PROCESS:
-  896: 			else
-  897: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
+  896: 			}
+0025DA 022868            LJMP    ?C0191?KB_PROCESS
+0025DD         ?C0190?KB_PROCESS:
+  897: 			else
+  898: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
 0025DD EB                MOV     A,R3
-0025DE B4F209            CJNE    A,#0F2H,?C0239?KB_PROCESS
-  898: 			{ 
-  899: 				kb_set_multikey(0x00cd);
+0025DE B4F209            CJNE    A,#0F2H,?C0192?KB_PROCESS
+  899: 			{ 
+  900: 				kb_set_multikey(0x00cd);
 0025E1 7FCD              MOV     R7,#0CDH
 0025E3 7E00              MOV     R6,#00H
 0025E5 B16A              ACALL   _kb_set_multikey
-  900: 			}
-0025E7 022868            LJMP    ?C0238?KB_PROCESS
-0025EA         ?C0239?KB_PROCESS:
-  901: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
+  901: 			}
+0025E7 022868            LJMP    ?C0191?KB_PROCESS
+0025EA         ?C0192?KB_PROCESS:
+  902: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
 0025EA 904EDE            MOV     DPTR,#pEvt
 0025ED E0                MOVX    A,@DPTR
 0025EE FB                MOV     R3,A
@@ -6702,26 +6702,26 @@
 002602 FA                MOV     R2,A
 002603 1203B6            LCALL   ?C?CLDPTR
 002606 FB                MOV     R3,A
-002607 B4F307            CJNE    A,#0F3H,?C0241?KB_PROCESS
-  902: 			{
-  903: 				kb_set_multikey(0x00b7);
+002607 B4F307            CJNE    A,#0F3H,?C0194?KB_PROCESS
+  903: 			{
+  904: 				kb_set_multikey(0x00b7);
 00260A 7FB7              MOV     R7,#0B7H
 00260C B16A              ACALL   _kb_set_multikey
-  904: 			}	
-00260E 022868            LJMP    ?C0238?KB_PROCESS
-002611         ?C0241?KB_PROCESS:
-  905: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
+  905: 			}	
+00260E 022868            LJMP    ?C0191?KB_PROCESS
+002611         ?C0194?KB_PROCESS:
+  906: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
 002611 EB                MOV     A,R3
-002612 B4F409            CJNE    A,#0F4H,?C0243?KB_PROCESS
-  906: 			{
-  907: 				kb_set_multikey(0x00b6);
+002612 B4F409            CJNE    A,#0F4H,?C0196?KB_PROCESS
+  907: 			{
+  908: 				kb_set_multikey(0x00b6);
 002615 7FB6              MOV     R7,#0B6H
 002617 7E00              MOV     R6,#00H
 002619 B16A              ACALL   _kb_set_multikey
-  908: 			}
-00261B 022868            LJMP    ?C0238?KB_PROCESS
-00261E         ?C0243?KB_PROCESS:
-  909: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
+  909: 			}
+00261B 022868            LJMP    ?C0191?KB_PROCESS
+00261E         ?C0196?KB_PROCESS:
+  910: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
 00261E 904EDE            MOV     DPTR,#pEvt
 002621 E0                MOVX    A,@DPTR
 002622 FB                MOV     R3,A
@@ -6745,26 +6745,26 @@
 002636 FA                MOV     R2,A
 002637 1203B6            LCALL   ?C?CLDPTR
 00263A FB                MOV     R3,A
-00263B B4F507            CJNE    A,#0F5H,?C0245?KB_PROCESS
-  910: 			{
-  911: 				kb_set_multikey(0x00b5);
+00263B B4F507            CJNE    A,#0F5H,?C0198?KB_PROCESS
+  911: 			{
+  912: 				kb_set_multikey(0x00b5);
 00263E 7FB5              MOV     R7,#0B5H
 002640 B16A              ACALL   _kb_set_multikey
-  912: 			}
-002642 022868            LJMP    ?C0238?KB_PROCESS
-002645         ?C0245?KB_PROCESS:
-  913: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
+  913: 			}
+002642 022868            LJMP    ?C0191?KB_PROCESS
+002645         ?C0198?KB_PROCESS:
+  914: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
 002645 EB                MOV     A,R3
-002646 B4F609            CJNE    A,#0F6H,?C0247?KB_PROCESS
-  914: 			{
-  915: 				kb_set_multikey(0x00ea);
+002646 B4F609            CJNE    A,#0F6H,?C0200?KB_PROCESS
+  915: 			{
+  916: 				kb_set_multikey(0x00ea);
 002649 7FEA              MOV     R7,#0EAH
 00264B 7E00              MOV     R6,#00H
 00264D B16A              ACALL   _kb_set_multikey
-  916: 			}
-00264F 022868            LJMP    ?C0238?KB_PROCESS
-002652         ?C0247?KB_PROCESS:
-  917: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
+  917: 			}
+00264F 022868            LJMP    ?C0191?KB_PROCESS
+002652         ?C0200?KB_PROCESS:
+  918: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
 002652 904EDE            MOV     DPTR,#pEvt
 002655 E0                MOVX    A,@DPTR
 002656 FB                MOV     R3,A
@@ -6788,26 +6788,26 @@
 00266A FA                MOV     R2,A
 00266B 1203B6            LCALL   ?C?CLDPTR
 00266E FB                MOV     R3,A
-00266F B4F707            CJNE    A,#0F7H,?C0249?KB_PROCESS
-  918: 			{
-  919: 				kb_set_multikey(0x00e9);
+00266F B4F707            CJNE    A,#0F7H,?C0202?KB_PROCESS
+  919: 			{
+  920: 				kb_set_multikey(0x00e9);
 002672 7FE9              MOV     R7,#0E9H
 002674 B16A              ACALL   _kb_set_multikey
-  920: 			}
-002676 022868            LJMP    ?C0238?KB_PROCESS
-002679         ?C0249?KB_PROCESS:
-  921: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
+  921: 			}
+002676 022868            LJMP    ?C0191?KB_PROCESS
+002679         ?C0202?KB_PROCESS:
+  922: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
 002679 EB                MOV     A,R3
-00267A B4F809            CJNE    A,#0F8H,?C0251?KB_PROCESS
-  922: 			{
-  923: 				kb_set_multikey(0x00e2);
+00267A B4F809            CJNE    A,#0F8H,?C0204?KB_PROCESS
+  923: 			{
+  924: 				kb_set_multikey(0x00e2);
 00267D 7FE2              MOV     R7,#0E2H
 00267F 7E00              MOV     R6,#00H
 002681 B16A              ACALL   _kb_set_multikey
-  924: 			}
-002683 022868            LJMP    ?C0238?KB_PROCESS
-002686         ?C0251?KB_PROCESS:
-  925: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
+  925: 			}
+002683 022868            LJMP    ?C0191?KB_PROCESS
+002686         ?C0204?KB_PROCESS:
+  926: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
 002686 904EDE            MOV     DPTR,#pEvt
 002689 E0                MOVX    A,@DPTR
 00268A FB                MOV     R3,A
@@ -6831,27 +6831,27 @@
 00269E FA                MOV     R2,A
 00269F 1203B6            LCALL   ?C?CLDPTR
 0026A2 FB                MOV     R3,A
-0026A3 B4F908            CJNE    A,#0F9H,?C0253?KB_PROCESS
-  926: 			{
-  927: 				kb_set_multikey(0x0194);
+0026A3 B4F908            CJNE    A,#0F9H,?C0206?KB_PROCESS
+  927: 			{
+  928: 				kb_set_multikey(0x0194);
 0026A6 7F94              MOV     R7,#094H
 0026A8 0E                INC     R6
 0026A9 B16A              ACALL   _kb_set_multikey
-  928: 			}	
-0026AB 022868            LJMP    ?C0238?KB_PROCESS
-0026AE         ?C0253?KB_PROCESS:
-  929: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
+  929: 			}	
+0026AB 022868            LJMP    ?C0191?KB_PROCESS
+0026AE         ?C0206?KB_PROCESS:
+  930: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
 0026AE EB                MOV     A,R3
-0026AF B4FA09            CJNE    A,#0FAH,?C0255?KB_PROCESS
-  930: 			{
-  931: 				kb_set_multikey(0x018a);//mail
+0026AF B4FA09            CJNE    A,#0FAH,?C0208?KB_PROCESS
+  931: 			{
+  932: 				kb_set_multikey(0x018a);//mail
 0026B2 7F8A              MOV     R7,#08AH
 0026B4 7E01              MOV     R6,#01H
 0026B6 B16A              ACALL   _kb_set_multikey
-  932: 			}
-0026B8 022868            LJMP    ?C0238?KB_PROCESS
-0026BB         ?C0255?KB_PROCESS:
-  933: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
+  933: 			}
+0026B8 022868            LJMP    ?C0191?KB_PROCESS
+0026BB         ?C0208?KB_PROCESS:
+  934: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
 0026BB 904EDE            MOV     DPTR,#pEvt
 0026BE E0                MOVX    A,@DPTR
 0026BF FB                MOV     R3,A
@@ -6875,27 +6875,27 @@
 0026D3 FA                MOV     R2,A
 0026D4 1203B6            LCALL   ?C?CLDPTR
 0026D7 FB                MOV     R3,A
-0026D8 B4FB08            CJNE    A,#0FBH,?C0257?KB_PROCESS
-  934: 			{
-  935: 				kb_set_multikey(0x0192);
+0026D8 B4FB08            CJNE    A,#0FBH,?C0210?KB_PROCESS
+  935: 			{
+  936: 				kb_set_multikey(0x0192);
 0026DB 7F92              MOV     R7,#092H
 0026DD 0E                INC     R6
 0026DE B16A              ACALL   _kb_set_multikey
-  936: 			}
-0026E0 022868            LJMP    ?C0238?KB_PROCESS
-0026E3         ?C0257?KB_PROCESS:
-  937: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
+  937: 			}
+0026E0 022868            LJMP    ?C0191?KB_PROCESS
+0026E3         ?C0210?KB_PROCESS:
+  938: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
 0026E3 EB                MOV     A,R3
-0026E4 B4D009            CJNE    A,#0D0H,?C0259?KB_PROCESS
-  938: 			{
-  939: 				kb_set_multikey(0x022a);//www Favorites
+0026E4 B4D009            CJNE    A,#0D0H,?C0212?KB_PROCESS
+  939: 			{
+  940: 				kb_set_multikey(0x022a);//www Favorites
 0026E7 7F2A              MOV     R7,#02AH
 0026E9 7E02              MOV     R6,#02H
 0026EB B16A              ACALL   _kb_set_multikey
-  940: 			}
-0026ED 022868            LJMP    ?C0238?KB_PROCESS
-0026F0         ?C0259?KB_PROCESS:
-  941: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
+  941: 			}
+0026ED 022868            LJMP    ?C0191?KB_PROCESS
+0026F0         ?C0212?KB_PROCESS:
+  942: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
 0026F0 904EDE            MOV     DPTR,#pEvt
 0026F3 E0                MOVX    A,@DPTR
 0026F4 FB                MOV     R3,A
@@ -6919,27 +6919,27 @@
 002708 FA                MOV     R2,A
 002709 1203B6            LCALL   ?C?CLDPTR
 00270C FB                MOV     R3,A
-00270D B4D109            CJNE    A,#0D1H,?C0261?KB_PROCESS
-  942: 			{
-  943: 				kb_set_multikey(0x0225);
+00270D B4D109            CJNE    A,#0D1H,?C0214?KB_PROCESS
+  943: 			{
+  944: 				kb_set_multikey(0x0225);
 002710 7F25              MOV     R7,#025H
 002712 7E02              MOV     R6,#02H
 002714 B16A              ACALL   _kb_set_multikey
-  944: 			}
-002716 022868            LJMP    ?C0238?KB_PROCESS
-002719         ?C0261?KB_PROCESS:
-  945: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
+  945: 			}
+002716 022868            LJMP    ?C0191?KB_PROCESS
+002719         ?C0214?KB_PROCESS:
+  946: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
 002719 EB                MOV     A,R3
-00271A B4D309            CJNE    A,#0D3H,?C0263?KB_PROCESS
-  946: 			{
-  947: 				kb_set_multikey(0x0226);
+00271A B4D309            CJNE    A,#0D3H,?C0216?KB_PROCESS
+  947: 			{
+  948: 				kb_set_multikey(0x0226);
 00271D 7F26              MOV     R7,#026H
 00271F 7E02              MOV     R6,#02H
 002721 B16A              ACALL   _kb_set_multikey
-  948: 			}
-002723 022868            LJMP    ?C0238?KB_PROCESS
-002726         ?C0263?KB_PROCESS:
-  949: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
+  949: 			}
+002723 022868            LJMP    ?C0191?KB_PROCESS
+002726         ?C0216?KB_PROCESS:
+  950: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
 002726 904EDE            MOV     DPTR,#pEvt
 002729 E0                MOVX    A,@DPTR
 00272A FB                MOV     R3,A
@@ -6963,27 +6963,27 @@
 00273E FA                MOV     R2,A
 00273F 1203B6            LCALL   ?C?CLDPTR
 002742 FB                MOV     R3,A
-002743 B4D209            CJNE    A,#0D2H,?C0265?KB_PROCESS
-  950: 			{
-  951: 				kb_set_multikey(0x0224);
+002743 B4D209            CJNE    A,#0D2H,?C0218?KB_PROCESS
+  951: 			{
+  952: 				kb_set_multikey(0x0224);
 002746 7F24              MOV     R7,#024H
 002748 7E02              MOV     R6,#02H
 00274A B16A              ACALL   _kb_set_multikey
-  952: 			}
-00274C 022868            LJMP    ?C0238?KB_PROCESS
-00274F         ?C0265?KB_PROCESS:
-  953: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
+  953: 			}
+00274C 022868            LJMP    ?C0191?KB_PROCESS
+00274F         ?C0218?KB_PROCESS:
+  954: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
 00274F EB                MOV     A,R3
-002750 B4D409            CJNE    A,#0D4H,?C0267?KB_PROCESS
-  954: 			{
-  955: 				kb_set_multikey(0x0227);
+002750 B4D409            CJNE    A,#0D4H,?C0220?KB_PROCESS
+  955: 			{
+  956: 				kb_set_multikey(0x0227);
 002753 7F27              MOV     R7,#027H
 002755 7E02              MOV     R6,#02H
 002757 B16A              ACALL   _kb_set_multikey
-  956: 			}	
-002759 022868            LJMP    ?C0238?KB_PROCESS
-00275C         ?C0267?KB_PROCESS:
-  957: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
+  957: 			}	
+002759 022868            LJMP    ?C0191?KB_PROCESS
+00275C         ?C0220?KB_PROCESS:
+  958: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
 00275C 904EDE            MOV     DPTR,#pEvt
 00275F E0                MOVX    A,@DPTR
 002760 FB                MOV     R3,A
@@ -7007,27 +7007,27 @@
 002774 FA                MOV     R2,A
 002775 1203B6            LCALL   ?C?CLDPTR
 002778 FB                MOV     R3,A
-002779 B4D509            CJNE    A,#0D5H,?C0269?KB_PROCESS
-  958: 			{
-  959: 				kb_set_multikey(0x0221);
+002779 B4D509            CJNE    A,#0D5H,?C0222?KB_PROCESS
+  959: 			{
+  960: 				kb_set_multikey(0x0221);
 00277C 7F21              MOV     R7,#021H
 00277E 7E02              MOV     R6,#02H
 002780 B16A              ACALL   _kb_set_multikey
-  960: 			}
-002782 022868            LJMP    ?C0238?KB_PROCESS
-002785         ?C0269?KB_PROCESS:
-  961: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
+  961: 			}
+002782 022868            LJMP    ?C0191?KB_PROCESS
+002785         ?C0222?KB_PROCESS:
+  962: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
 002785 EB                MOV     A,R3
-002786 B4D609            CJNE    A,#0D6H,?C0271?KB_PROCESS
-  962: 			{
-  963: 				kb_set_multikey(0x0223);
+002786 B4D609            CJNE    A,#0D6H,?C0224?KB_PROCESS
+  963: 			{
+  964: 				kb_set_multikey(0x0223);
 002789 7F23              MOV     R7,#023H
 00278B 7E02              MOV     R6,#02H
 00278D B16A              ACALL   _kb_set_multikey
-  964: 			}
-00278F 022868            LJMP    ?C0238?KB_PROCESS
-002792         ?C0271?KB_PROCESS:
-  965: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
+  965: 			}
+00278F 022868            LJMP    ?C0191?KB_PROCESS
+002792         ?C0224?KB_PROCESS:
+  966: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
 002792 904EDE            MOV     DPTR,#pEvt
 002795 E0                MOVX    A,@DPTR
 002796 FB                MOV     R3,A
@@ -7051,26 +7051,26 @@
 0027AA FA                MOV     R2,A
 0027AB 1203B6            LCALL   ?C?CLDPTR
 0027AE FB                MOV     R3,A
-0027AF B4D707            CJNE    A,#0D7H,?C0273?KB_PROCESS
-  966: 			{
-  967: 				kb_set_multikey(0x0070);
+0027AF B4D707            CJNE    A,#0D7H,?C0226?KB_PROCESS
+  967: 			{
+  968: 				kb_set_multikey(0x0070);
 0027B2 7F70              MOV     R7,#070H
 0027B4 B16A              ACALL   _kb_set_multikey
-  968: 			}
-0027B6 022868            LJMP    ?C0238?KB_PROCESS
-0027B9         ?C0273?KB_PROCESS:
-  969: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
+  969: 			}
+0027B6 022868            LJMP    ?C0191?KB_PROCESS
+0027B9         ?C0226?KB_PROCESS:
+  970: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
 0027B9 EB                MOV     A,R3
-0027BA B4D809            CJNE    A,#0D8H,?C0275?KB_PROCESS
-  970: 			{
-  971: 				kb_set_multikey(0x006f);
+0027BA B4D809            CJNE    A,#0D8H,?C0228?KB_PROCESS
+  971: 			{
+  972: 				kb_set_multikey(0x006f);
 0027BD 7F6F              MOV     R7,#06FH
 0027BF 7E00              MOV     R6,#00H
 0027C1 B16A              ACALL   _kb_set_multikey
-  972: 			}	
-0027C3 022868            LJMP    ?C0238?KB_PROCESS
-0027C6         ?C0275?KB_PROCESS:
-  973: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
+  973: 			}	
+0027C3 022868            LJMP    ?C0191?KB_PROCESS
+0027C6         ?C0228?KB_PROCESS:
+  974: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_IOS_SOFT_KB)  //IOS VIR KB
 0027C6 904EDE            MOV     DPTR,#pEvt
 0027C9 E0                MOVX    A,@DPTR
 0027CA FB                MOV     R3,A
@@ -7094,26 +7094,26 @@
 0027DE FA                MOV     R2,A
 0027DF 1203B6            LCALL   ?C?CLDPTR
 0027E2 FB                MOV     R3,A
-0027E3 B4D906            CJNE    A,#0D9H,?C0277?KB_PROCESS
-  974: 		      	{
-  975: 		        	kb_set_multikey(0x00b8);
+0027E3 B4D906            CJNE    A,#0D9H,?C0230?KB_PROCESS
+  975: 		      	{
+  976: 		        	kb_set_multikey(0x00b8);
 0027E6 7FB8              MOV     R7,#0B8H
 0027E8 B16A              ACALL   _kb_set_multikey
-  976: 		      	}
-0027EA 807C              SJMP    ?C0238?KB_PROCESS
-0027EC         ?C0277?KB_PROCESS:
-  977: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
+  977: 		      	}
+0027EA 807C              SJMP    ?C0191?KB_PROCESS
+0027EC         ?C0230?KB_PROCESS:
+  978: 		      else if (pEvt->ksPool[i] ==  HID_MULTIKEY_OS_LOCK)
 0027EC EB                MOV     A,R3
-0027ED B4DA08            CJNE    A,#0DAH,?C0279?KB_PROCESS
-  978: 		      	{
-  979: 		        	kb_set_multikey(0x0030);
+0027ED B4DA08            CJNE    A,#0DAH,?C0232?KB_PROCESS
+  979: 		      	{
+  980: 		        	kb_set_multikey(0x0030);
 0027F0 7F30              MOV     R7,#030H
 0027F2 7E00              MOV     R6,#00H
 0027F4 B16A              ACALL   _kb_set_multikey
-  980: 		      	}	
-0027F6 8070              SJMP    ?C0238?KB_PROCESS
-0027F8         ?C0279?KB_PROCESS:
-  981: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
+  981: 		      	}	
+0027F6 8070              SJMP    ?C0191?KB_PROCESS
+0027F8         ?C0232?KB_PROCESS:
+  982: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SETUP_SHORTCUTS)
 0027F8 904EDE            MOV     DPTR,#pEvt
 0027FB E0                MOVX    A,@DPTR
 0027FC FB                MOV     R3,A
@@ -7137,27 +7137,27 @@
 002810 FA                MOV     R2,A
 002811 1203B6            LCALL   ?C?CLDPTR
 002814 FB                MOV     R3,A
-002815 B4DB09            CJNE    A,#0DBH,?C0281?KB_PROCESS
-  982: 		      	{
-  983: 		        	kb_set_multikey(0x0306);
+002815 B4DB09            CJNE    A,#0DBH,?C0234?KB_PROCESS
+  983: 		      	{
+  984: 		        	kb_set_multikey(0x0306);
 002818 7F06              MOV     R7,#06H
 00281A 7E03              MOV     R6,#03H
 00281C 12256A            LCALL   _kb_set_multikey
-  984: 		      	}
-00281F 8047              SJMP    ?C0238?KB_PROCESS
-002821         ?C0281?KB_PROCESS:
-  985: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
+  985: 		      	}
+00281F 8047              SJMP    ?C0191?KB_PROCESS
+002821         ?C0234?KB_PROCESS:
+  986: 		      	else if (pEvt->ksPool[i] ==  HID_MULTIKEY_ANDROID_SOFT_KB)
 002821 EB                MOV     A,R3
-002822 B4DC09            CJNE    A,#0DCH,?C0283?KB_PROCESS
-  986: 		      	{
-  987: 		        	kb_set_multikey(0x0307);
+002822 B4DC09            CJNE    A,#0DCH,?C0236?KB_PROCESS
+  987: 		      	{
+  988: 		        	kb_set_multikey(0x0307);
 002825 7F07              MOV     R7,#07H
 002827 7E03              MOV     R6,#03H
 002829 12256A            LCALL   _kb_set_multikey
-  988: 		      	}
-00282C 803A              SJMP    ?C0238?KB_PROCESS
-00282E         ?C0283?KB_PROCESS:
-  989: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
+  989: 		      	}
+00282C 803A              SJMP    ?C0191?KB_PROCESS
+00282E         ?C0236?KB_PROCESS:
+  990: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
 00282E 904EDE            MOV     DPTR,#pEvt
 002831 E0                MOVX    A,@DPTR
 002832 FB                MOV     R3,A
@@ -7181,40 +7181,40 @@
 002846 FA                MOV     R2,A
 002847 1203B6            LCALL   ?C?CLDPTR
 00284A FE                MOV     R6,A
-00284B B4DD06            CJNE    A,#0DDH,?C0285?KB_PROCESS
-  990: 		      	{
-  991: 		        	kb_set_systemkey(0x01);
+00284B B4DD06            CJNE    A,#0DDH,?C0238?KB_PROCESS
+  991: 		      	{
+  992: 		        	kb_set_systemkey(0x01);
 00284E 7F01              MOV     R7,#01H
 002850 119D              ACALL   _kb_set_systemkey
-  992: 		      	}
-002852 8014              SJMP    ?C0238?KB_PROCESS
-002854         ?C0285?KB_PROCESS:
-  993: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
+  993: 		      	}
+002852 8014              SJMP    ?C0191?KB_PROCESS
+002854         ?C0238?KB_PROCESS:
+  994: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
 002854 EE                MOV     A,R6
-002855 B4DE06            CJNE    A,#0DEH,?C0287?KB_PROCESS
-  994: 		      	{
-  995: 		        	kb_set_systemkey(0x02);
+002855 B4DE06            CJNE    A,#0DEH,?C0240?KB_PROCESS
+  995: 		      	{
+  996: 		        	kb_set_systemkey(0x02);
 002858 7F02              MOV     R7,#02H
 00285A 119D              ACALL   _kb_set_systemkey
-  996: 		      	}
-00285C 800A              SJMP    ?C0238?KB_PROCESS
-00285E         ?C0287?KB_PROCESS:
-  997: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
+  997: 		      	}
+00285C 800A              SJMP    ?C0191?KB_PROCESS
+00285E         ?C0240?KB_PROCESS:
+  998: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
 00285E 1203B6            LCALL   ?C?CLDPTR
-002861 B4DF04            CJNE    A,#0DFH,?C0238?KB_PROCESS
-  998: 		      	{
-  999: 		        	kb_set_systemkey(0x04);
+002861 B4DF04            CJNE    A,#0DFH,?C0191?KB_PROCESS
+  999: 		      	{
+ 1000: 		        	kb_set_systemkey(0x04);
 002864 7F04              MOV     R7,#04H
 002866 119D              ACALL   _kb_set_systemkey
- 1000: 		      	}
-002868         ?C0238?KB_PROCESS:
- 1001: 			
- 1002: 			if(mult_key_status == KEY_WAIT_RELEASE)
+ 1001: 		      	}
+002868         ?C0191?KB_PROCESS:
+ 1002: 			
+ 1003: 			if(mult_key_status == KEY_WAIT_RELEASE)
 002868 904E51            MOV     DPTR,#mult_key_status
 00286B E0                MOVX    A,@DPTR
-00286C B40224            CJNE    A,#02H,?C0234?KB_PROCESS
- 1003: 			{
- 1004: 				mult_key_value = pEvt->ksPool[i];
+00286C B40224            CJNE    A,#02H,?C0187?KB_PROCESS
+ 1004: 			{
+ 1005: 				mult_key_value = pEvt->ksPool[i];
 00286F 904EDE            MOV     DPTR,#pEvt
 002872 E0                MOVX    A,@DPTR
 002873 FB                MOV     R3,A
@@ -7239,20 +7239,20 @@
 002888 1203B6            LCALL   ?C?CLDPTR
 00288B 904DF2            MOV     DPTR,#mult_key_value
 00288E F0                MOVX    @DPTR,A
- 1005: 				pEvt->ksPool[i] = 0;
+ 1006: 				pEvt->ksPool[i] = 0;
 00288F E4                CLR     A
 002890 1203FC            LCALL   ?C?CSTPTR
- 1006: 			}
- 1007: 		}
- 1008: 	}
-002893         ?C0234?KB_PROCESS:
+ 1007: 			}
+ 1008: 		}
+ 1009: 	}
+002893         ?C0187?KB_PROCESS:
 002893 904EE1            MOV     DPTR,#i
 002896 E0                MOVX    A,@DPTR
 002897 04                INC     A
 002898 F0                MOVX    @DPTR,A
-002899 022594            LJMP    ?C0232?KB_PROCESS
- 1009: }
-00289C         ?C0291?KB_PROCESS:
+002899 022594            LJMP    ?C0185?KB_PROCESS
+ 1010: }
+00289C         ?C0244?KB_PROCESS:
 00289C 22                RET     
 ----- FUNCTION _kb_multikey_setup (END) -------
 
@@ -9106,724 +9106,516 @@
  FILE: 'kb_process.c'
   654: byte key_fn_function(byte state ,byte key_value)
   655: {
-;---- Variable 'state' assigned to Register 'R6' ----
-00300F AE07              MOV     R6,AR7
-;---- Variable 'key_value' assigned to Register 'R4' ----
-003011 AC05              MOV     R4,AR5
+;---- Variable 'state' assigned to Register 'R7' ----
+;---- Variable 'key_value' assigned to Register 'R5' ----
   656: 	byte temp = 0;
   657: 
-003013 E4                CLR     A
-003014 904F09            MOV     DPTR,#temp
-003017 F0                MOVX    @DPTR,A
+00300F E4                CLR     A
+003010 904F09            MOV     DPTR,#temp
+003013 F0                MOVX    @DPTR,A
   658: 	if(state & 1)
-003018 EE                MOV     A,R6
-003019 30E005            JNB     ACC.0,?C0148?KB_PROCESS
+003014 EF                MOV     A,R7
+003015 30E005            JNB     ACC.0,?C0148?KB_PROCESS
   659: 		g_variable.one_key_press_wait_release_timer = 0;
-00301C E4                CLR     A
-00301D 904CF8            MOV     DPTR,#g_variable+039H
-003020 F0                MOVX    @DPTR,A
-003021         ?C0148?KB_PROCESS:
+003018 E4                CLR     A
+003019 904CF8            MOV     DPTR,#g_variable+039H
+00301C F0                MOVX    @DPTR,A
+00301D         ?C0148?KB_PROCESS:
   660: 
   661: 	temp = key_value;
-003021 904F09            MOV     DPTR,#temp
-003024 EC                MOV     A,R4
-003025 F0                MOVX    @DPTR,A
-003026 FF                MOV     R7,A
+00301D 904F09            MOV     DPTR,#temp
+003020 ED                MOV     A,R5
+003021 F0                MOVX    @DPTR,A
+003022 FE                MOV     R6,A
   662: 
   663: 	if(temp == HID_KEY_TILDE)
-003027 BF3512            CJNE    R7,#035H,?C0149?KB_PROCESS
+003023 BE350F            CJNE    R6,#035H,?C0149?KB_PROCESS
   664: 	{
   665: 		if(g_variable.system_mode == OSMODE_IOS)
-00302A 904CC1            MOV     DPTR,#g_variable+02H
-00302D E0                MOVX    A,@DPTR
-00302E 6402              XRL     A,#02H
-003030 6002              JZ      $ + 4H
-003032 21C6              AJMP    ?C0151?KB_PROCESS
+003026 904CC1            MOV     DPTR,#g_variable+02H
+003029 E0                MOVX    A,@DPTR
+00302A B4021C            CJNE    A,#02H,?C0151?KB_PROCESS
   666: 		{
   667: 			temp = HID_KEY_K45;
-003034 904F09            MOV     DPTR,#temp
-003037 7464              MOV     A,#064H
-003039 F0                MOVX    @DPTR,A
+00302D 904F09            MOV     DPTR,#temp
+003030 7464              MOV     A,#064H
+003032 F0                MOVX    @DPTR,A
   668: 		}
   669: 	}
-00303A 21C6              AJMP    ?C0151?KB_PROCESS
-00303C         ?C0149?KB_PROCESS:
+003033 8014              SJMP    ?C0151?KB_PROCESS
+003035         ?C0149?KB_PROCESS:
   670: 	else if(temp == HID_KEY_K45)
-00303C 904F09            MOV     DPTR,#temp
-00303F E0                MOVX    A,@DPTR
-003040 FF                MOV     R7,A
-003041 B46412            CJNE    A,#064H,?C0152?KB_PROCESS
+003035 904F09            MOV     DPTR,#temp
+003038 E0                MOVX    A,@DPTR
+003039 B4640D            CJNE    A,#064H,?C0151?KB_PROCESS
   671: 	{
   672: 		if(g_variable.system_mode == OSMODE_IOS)
-003044 904CC1            MOV     DPTR,#g_variable+02H
-003047 E0                MOVX    A,@DPTR
-003048 6402              XRL     A,#02H
-00304A 6002              JZ      $ + 4H
-00304C 21C6              AJMP    ?C0151?KB_PROCESS
+00303C 904CC1            MOV     DPTR,#g_variable+02H
+00303F E0                MOVX    A,@DPTR
+003040 B40206            CJNE    A,#02H,?C0151?KB_PROCESS
   673: 		{
   674: 			temp = HID_KEY_TILDE;
-00304E 904F09            MOV     DPTR,#temp
-003051 7435              MOV     A,#035H
-003053 F0                MOVX    @DPTR,A
+003043 904F09            MOV     DPTR,#temp
+003046 7435              MOV     A,#035H
+003048 F0                MOVX    @DPTR,A
   675: 		}
   676: 	}
-003054 21C6              AJMP    ?C0151?KB_PROCESS
-003056         ?C0152?KB_PROCESS:
-  677: 	else if(temp == HID_KEY_L)
-003056 EF                MOV     A,R7
-003057 B40F20            CJNE    A,#0FH,?C0155?KB_PROCESS
-  678: 	{
-  679: 		if(g_variable.system_mode != OSMODE_IOS)
-00305A 904CC1            MOV     DPTR,#g_variable+02H
-00305D E0                MOVX    A,@DPTR
-00305E 6402              XRL     A,#02H
-003060 7002              JNZ     $ + 4H
-003062 21C6              AJMP    ?C0151?KB_PROCESS
-  680: 		{
-  681: 			if(alt_l_flag || alt_r_flag)
-003064 904DD3            MOV     DPTR,#alt_l_flag
-003067 E0                MOVX    A,@DPTR
-003068 7008              JNZ     ?C0158?KB_PROCESS
-00306A 904DD4            MOV     DPTR,#alt_r_flag
-00306D E0                MOVX    A,@DPTR
-00306E 7002              JNZ     $ + 4H
-003070 21C6              AJMP    ?C0151?KB_PROCESS
-003072         ?C0158?KB_PROCESS:
-  682: 				temp = HID_KEY_Q;
-003072 904F09            MOV     DPTR,#temp
-003075 7414              MOV     A,#014H
-003077 F0                MOVX    @DPTR,A
-  683: 		}
-  684: 	}
-003078 21C6              AJMP    ?C0151?KB_PROCESS
-00307A         ?C0155?KB_PROCESS:
-  685: 	else if(temp == HID_KEY_7)
-00307A 904F09            MOV     DPTR,#temp
-00307D E0                MOVX    A,@DPTR
-00307E FF                MOV     R7,A
-00307F B42420            CJNE    A,#024H,?C0160?KB_PROCESS
-  686: 	{
-  687: 		if(g_variable.system_mode == OSMODE_IOS)
-003082 904CC1            MOV     DPTR,#g_variable+02H
-003085 E0                MOVX    A,@DPTR
-003086 6402              XRL     A,#02H
-003088 6002              JZ      $ + 4H
-00308A 21C6              AJMP    ?C0151?KB_PROCESS
-  688: 		{
-  689: 			if(alt_l_flag || alt_r_flag)
-00308C 904DD3            MOV     DPTR,#alt_l_flag
-00308F E0                MOVX    A,@DPTR
-003090 7008              JNZ     ?C0163?KB_PROCESS
-003092 904DD4            MOV     DPTR,#alt_r_flag
-003095 E0                MOVX    A,@DPTR
-003096 7002              JNZ     $ + 4H
-003098 21C6              AJMP    ?C0151?KB_PROCESS
-00309A         ?C0163?KB_PROCESS:
-  690: 				temp = HID_KEY_8;
-00309A 904F09            MOV     DPTR,#temp
-00309D 7425              MOV     A,#025H
-00309F F0                MOVX    @DPTR,A
-  691: 		}
-  692: 	}
-0030A0 21C6              AJMP    ?C0151?KB_PROCESS
-0030A2         ?C0160?KB_PROCESS:
-  693: 	else if(temp == HID_KEY_8)
-0030A2 EF                MOV     A,R7
-0030A3 B42520            CJNE    A,#025H,?C0165?KB_PROCESS
-  694: 	{
-  695: 		if(g_variable.system_mode == OSMODE_IOS)
-0030A6 904CC1            MOV     DPTR,#g_variable+02H
-0030A9 E0                MOVX    A,@DPTR
-0030AA 6402              XRL     A,#02H
-0030AC 6002              JZ      $ + 4H
-0030AE 21C6              AJMP    ?C0151?KB_PROCESS
-  696: 		{
-  697: 			if(alt_l_flag || alt_r_flag)
-0030B0 904DD3            MOV     DPTR,#alt_l_flag
-0030B3 E0                MOVX    A,@DPTR
-0030B4 7008              JNZ     ?C0168?KB_PROCESS
-0030B6 904DD4            MOV     DPTR,#alt_r_flag
-0030B9 E0                MOVX    A,@DPTR
-0030BA 7002              JNZ     $ + 4H
-0030BC 21C6              AJMP    ?C0151?KB_PROCESS
-0030BE         ?C0168?KB_PROCESS:
-  698: 				temp = HID_KEY_5;
-0030BE 904F09            MOV     DPTR,#temp
-0030C1 7422              MOV     A,#022H
-0030C3 F0                MOVX    @DPTR,A
-  699: 		}
-  700: 	}
-0030C4 21C6              AJMP    ?C0151?KB_PROCESS
-0030C6         ?C0165?KB_PROCESS:
-  701: 	else if(temp == HID_KEY_9)
-0030C6 904F09            MOV     DPTR,#temp
-0030C9 E0                MOVX    A,@DPTR
-0030CA FF                MOV     R7,A
-0030CB B42620            CJNE    A,#026H,?C0170?KB_PROCESS
-  702: 	{
-  703: 		if(g_variable.system_mode == OSMODE_IOS)
-0030CE 904CC1            MOV     DPTR,#g_variable+02H
-0030D1 E0                MOVX    A,@DPTR
-0030D2 6402              XRL     A,#02H
-0030D4 6002              JZ      $ + 4H
-0030D6 21C6              AJMP    ?C0151?KB_PROCESS
-  704: 		{
-  705: 			if(alt_l_flag || alt_r_flag)
-0030D8 904DD3            MOV     DPTR,#alt_l_flag
-0030DB E0                MOVX    A,@DPTR
-0030DC 7008              JNZ     ?C0173?KB_PROCESS
-0030DE 904DD4            MOV     DPTR,#alt_r_flag
-0030E1 E0                MOVX    A,@DPTR
-0030E2 7002              JNZ     $ + 4H
-0030E4 21C6              AJMP    ?C0151?KB_PROCESS
-0030E6         ?C0173?KB_PROCESS:
-  706: 				temp = HID_KEY_6;
-0030E6 904F09            MOV     DPTR,#temp
-0030E9 7423              MOV     A,#023H
-0030EB F0                MOVX    @DPTR,A
-  707: 		}
-  708: 	}
-0030EC 21C6              AJMP    ?C0151?KB_PROCESS
-0030EE         ?C0170?KB_PROCESS:
-  709: 	else if(temp == HID_KEY_0)
-0030EE EF                MOV     A,R7
-0030EF B42720            CJNE    A,#027H,?C0175?KB_PROCESS
-  710: 	{
-  711: 		if(g_variable.system_mode == OSMODE_IOS)
+003049         ?C0151?KB_PROCESS:
+  677: 	/*
+  678: 	else if(temp == HID_KEY_L)
+  679: 	{
+  680: 		if(g_variable.system_mode != OSMODE_IOS)
+  681: 		{
+  682: 			if(alt_l_flag || alt_r_flag)
+  683: 				temp = HID_KEY_Q;
+  684: 		}
+  685: 	}
+  686: 	else if(temp == HID_KEY_7)
+  687: 	{
+  688: 		if(g_variable.system_mode == OSMODE_IOS)
+  689: 		{
+  690: 			if(alt_l_flag || alt_r_flag)
+  691: 				temp = HID_KEY_8;
+  692: 		}
+  693: 	}
+  694: 	else if(temp == HID_KEY_8)
+  695: 	{
+  696: 		if(g_variable.system_mode == OSMODE_IOS)
+  697: 		{
+  698: 			if(alt_l_flag || alt_r_flag)
+  699: 				temp = HID_KEY_5;
+  700: 		}
+  701: 	}
+  702: 	else if(temp == HID_KEY_9)
+  703: 	{
+  704: 		if(g_variable.system_mode == OSMODE_IOS)
+  705: 		{
+  706: 			if(alt_l_flag || alt_r_flag)
+  707: 				temp = HID_KEY_6;
+  708: 		}
+  709: 	}
+  710: 	else if(temp == HID_KEY_0)
+  711: 	{
+  712: 		if(g_variable.system_mode == OSMODE_IOS)
+  713: 		{
+  714: 			if(alt_l_flag || alt_r_flag)
+  715: 				temp = HID_KEY_9;
+  716: 		}
+  717: 	}
+  718: 	else if(temp == HID_KEY_MINUS)
+  719: 	{
+  720: 		if(g_variable.system_mode == OSMODE_IOS)
+  721: 		{
+  722: 			if(alt_l_flag || alt_r_flag)
+  723: 			{
+  724: 				if(alt_l_flag)
+  725: 				{
+  726: 					if(shift_r_flag)
+  727: 					{
+  728: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_RSHIFT,HID_KEY_7);
+  729: 					}
+  730: 					else
+  731: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_LSHIFT,HID_KEY_7);
+  732: 				}
+  733: 				else
+  734: 				{
+  735: 					if(shift_l_flag)
+  736: 					{
+  737: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_LSHIFT,HID_KEY_7);
+  738: 					}
+  739: 					else
+  740: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_RSHIFT,HID_KEY_7);
+  741: 				}
+  742: 			}
+  743: 				
+  744: 		}
+  745: 	}
+  746: 	else if(temp == HID_KEY_RIGHT_BRACKET)
+  747: 	{
+  748: 		if(g_variable.system_mode == OSMODE_IOS)
+  749: 		{
+  750: 			if(alt_l_flag || alt_r_flag)
+  751: 			{
+  752: 				if(alt_l_flag)
+  753: 				{
+  754: 					if(shift_r_flag)
+  755: 					{
+  756: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_RSHIFT,HID_KEY_8);
+  757: 					}
+  758: 					else
+  759: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_LSHIFT,HID_KEY_8);
+  760: 				}
+  761: 				else
+  762: 				{
+  763: 					if(shift_l_flag)
+  764: 					{
+  765: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_LSHIFT,HID_KEY_8);
+  766: 					}
+  767: 					else
+  768: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_RSHIFT,HID_KEY_8);
+  769: 				}
+  770: 			}
+  771: 				
+  772: 		}
+  773: 	}
+  774: 	*/
+  775: 
+  776: 	if(fn_flag == 1)			// Fn lock
+003049 904DE5            MOV     DPTR,#fn_flag
+00304C E0                MOVX    A,@DPTR
+00304D 6401              XRL     A,#01H
+00304F 6002              JZ      $ + 4H
+003051 21D9              AJMP    ?C0154?KB_PROCESS
+  777: 	{
+  778: 		switch (key_value)
+003053 ED                MOV     A,R5
+003054 1205B3            LCALL   ?C?CCASE
+003057 3129              DW      ?C0166?KB_PROCESS
+003059 08                DB      08H
+00305A 3088              DW      ?C0156?KB_PROCESS
+00305C 14                DB      014H
+00305D 30DA              DW      ?C0161?KB_PROCESS
+00305F 1A                DB      01AH
+003060 317B              DW      ?C0171?KB_PROCESS
+003062 3A                DB      03AH
+003063 3183              DW      ?C0172?KB_PROCESS
+003065 3B                DB      03BH
+003066 318B              DW      ?C0173?KB_PROCESS
+003068 3C                DB      03CH
+003069 3193              DW      ?C0174?KB_PROCESS
+00306B 3D                DB      03DH
+00306C 319B              DW      ?C0175?KB_PROCESS
+00306E 3E                DB      03EH
+00306F 31A3              DW      ?C0176?KB_PROCESS
+003071 3F                DB      03FH
+003072 31AB              DW      ?C0177?KB_PROCESS
+003074 40                DB      040H
+003075 31B3              DW      ?C0178?KB_PROCESS
+003077 41                DB      041H
+003078 31BB              DW      ?C0179?KB_PROCESS
+00307A 42                DB      042H
+00307B 31C3              DW      ?C0180?KB_PROCESS
+00307D 43                DB      043H
+00307E 31CB              DW      ?C0181?KB_PROCESS
+003080 44                DB      044H
+003081 31D3              DW      ?C0182?KB_PROCESS
+003083 45                DB      045H
+003084 0000              DW      00H
+003086 31D9              DW      ?C0154?KB_PROCESS
+  779: 		{ 	
+  780: 			case HID_KEY_Q:
+003088         ?C0156?KB_PROCESS:
+  781: 				if(g_variable.system_mode != OSMODE_ANDROID)
+003088 904CC1            MOV     DPTR,#g_variable+02H
+00308B E0                MOVX    A,@DPTR
+00308C 6401              XRL     A,#01H
+00308E 6039              JZ      ?C0157?KB_PROCESS
+  782: 				{
+  783: 					g_variable.system_mode = OSMODE_ANDROID;
+003090 7401              MOV     A,#01H
+003092 F0                MOVX    @DPTR,A
+  784: 					if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+003093 904CC3            MOV     DPTR,#g_variable+04H
+003096 E0                MOVX    A,@DPTR
+003097 FE                MOV     R6,A
+003098 D3                SETB    C
+003099 9403              SUBB    A,#03H
+00309B 5026              JNC     ?C0158?KB_PROCESS
+00309D EE                MOV     A,R6
+00309E C3                CLR     C
+00309F 9401              SUBB    A,#01H
+0030A1 4020              JC      ?C0158?KB_PROCESS
+  785: 					{
+  786: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+0030A3 904CC1            MOV     DPTR,#g_variable+02H
+0030A6 E0                MOVX    A,@DPTR
+0030A7 FE                MOV     R6,A
+0030A8 904CC3            MOV     DPTR,#g_variable+04H
+0030AB E0                MOVX    A,@DPTR
+0030AC 75F01F            MOV     B,#01FH
+0030AF A4                MUL     AB
+0030B0 24F2              ADD     A,#LOW bd_key_record_list-02H
+0030B2 F582              MOV     DPL,A
+0030B4 E4                CLR     A
+0030B5 344D              ADDC    A,#HIGH bd_key_record_list-02H
+0030B7 F583              MOV     DPH,A
+0030B9 EE                MOV     A,R6
+0030BA F0                MOVX    @DPTR,A
+  787: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+0030BB 904CBF            MOV     DPTR,#g_variable
+0030BE 7403              MOV     A,#03H
+0030C0 F0                MOVX    @DPTR,A
+  788: 					}
+0030C1 8006              SJMP    ?C0157?KB_PROCESS
+0030C3         ?C0158?KB_PROCESS:
+  789: 					else
+  790: 					{
+  791: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+0030C3 904CBF            MOV     DPTR,#g_variable
+0030C6 7402              MOV     A,#02H
+0030C8 F0                MOVX    @DPTR,A
+  792: 					}
+  793: 				}
+0030C9         ?C0157?KB_PROCESS:
+  794: 				if(state & 1)
+0030C9 EF                MOV     A,R7
+0030CA 30E006            JNB     ACC.0,?C0160?KB_PROCESS
+  795: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+0030CD 904CE8            MOV     DPTR,#g_variable+029H
+0030D0 740C              MOV     A,#0CH
+0030D2 F0                MOVX    @DPTR,A
+0030D3         ?C0160?KB_PROCESS:
+  796: 				
+  797: 				temp = HID_KEY_NULL;
+0030D3 E4                CLR     A
+0030D4 904F09            MOV     DPTR,#temp
+0030D7 F0                MOVX    @DPTR,A
+  798: 				break;
+0030D8 21D9              AJMP    ?C0154?KB_PROCESS
+  799: 			case HID_KEY_W:
+0030DA         ?C0161?KB_PROCESS:
+  800: 				if(g_variable.system_mode != OSMODE_WINDOWS)
+0030DA 904CC1            MOV     DPTR,#g_variable+02H
+0030DD E0                MOVX    A,@DPTR
+0030DE 6038              JZ      ?C0162?KB_PROCESS
+  801: 				{
+  802: 					g_variable.system_mode = OSMODE_WINDOWS;
+0030E0 E4                CLR     A
+0030E1 F0                MOVX    @DPTR,A
+  803: 					if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+0030E2 904CC3            MOV     DPTR,#g_variable+04H
+0030E5 E0                MOVX    A,@DPTR
+0030E6 FE                MOV     R6,A
+0030E7 D3                SETB    C
+0030E8 9403              SUBB    A,#03H
+0030EA 5026              JNC     ?C0163?KB_PROCESS
+0030EC EE                MOV     A,R6
+0030ED C3                CLR     C
+0030EE 9401              SUBB    A,#01H
+0030F0 4020              JC      ?C0163?KB_PROCESS
+  804: 					{
+  805: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
 0030F2 904CC1            MOV     DPTR,#g_variable+02H
 0030F5 E0                MOVX    A,@DPTR
-0030F6 6402              XRL     A,#02H
-0030F8 6002              JZ      $ + 4H
-0030FA 21C6              AJMP    ?C0151?KB_PROCESS
-  712: 		{
-  713: 			if(alt_l_flag || alt_r_flag)
-0030FC 904DD3            MOV     DPTR,#alt_l_flag
-0030FF E0                MOVX    A,@DPTR
-003100 7008              JNZ     ?C0178?KB_PROCESS
-003102 904DD4            MOV     DPTR,#alt_r_flag
-003105 E0                MOVX    A,@DPTR
-003106 7002              JNZ     $ + 4H
-003108 21C6              AJMP    ?C0151?KB_PROCESS
-00310A         ?C0178?KB_PROCESS:
-  714: 				temp = HID_KEY_9;
-00310A 904F09            MOV     DPTR,#temp
-00310D 7426              MOV     A,#026H
+0030F6 FE                MOV     R6,A
+0030F7 904CC3            MOV     DPTR,#g_variable+04H
+0030FA E0                MOVX    A,@DPTR
+0030FB 75F01F            MOV     B,#01FH
+0030FE A4                MUL     AB
+0030FF 24F2              ADD     A,#LOW bd_key_record_list-02H
+003101 F582              MOV     DPL,A
+003103 E4                CLR     A
+003104 344D              ADDC    A,#HIGH bd_key_record_list-02H
+003106 F583              MOV     DPH,A
+003108 EE                MOV     A,R6
+003109 F0                MOVX    @DPTR,A
+  806: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+00310A 904CBF            MOV     DPTR,#g_variable
+00310D 7403              MOV     A,#03H
 00310F F0                MOVX    @DPTR,A
-  715: 		}
-  716: 	}
-003110 21C6              AJMP    ?C0151?KB_PROCESS
-003112         ?C0175?KB_PROCESS:
-  717: 	else if(temp == HID_KEY_MINUS)
-003112 904F09            MOV     DPTR,#temp
-003115 E0                MOVX    A,@DPTR
-003116 FA                MOV     R2,A
-003117 642D              XRL     A,#02DH
-003119 7056              JNZ     ?C0180?KB_PROCESS
-  718: 	{
-  719: 		if(g_variable.system_mode == OSMODE_IOS)
-00311B 904CC1            MOV     DPTR,#g_variable+02H
-00311E E0                MOVX    A,@DPTR
-00311F 6402              XRL     A,#02H
-003121 6002              JZ      $ + 4H
-003123 21C6              AJMP    ?C0151?KB_PROCESS
-  720: 		{
-  721: 			if(alt_l_flag || alt_r_flag)
-003125 904DD3            MOV     DPTR,#alt_l_flag
-003128 E0                MOVX    A,@DPTR
-003129 7008              JNZ     ?C0183?KB_PROCESS
-00312B 904DD4            MOV     DPTR,#alt_r_flag
-00312E E0                MOVX    A,@DPTR
-00312F 7002              JNZ     $ + 4H
-003131 21C6              AJMP    ?C0151?KB_PROCESS
-003133         ?C0183?KB_PROCESS:
-  722: 			{
-  723: 				if(alt_l_flag)
-003133 904DD3            MOV     DPTR,#alt_l_flag
-003136 E0                MOVX    A,@DPTR
-003137 601C              JZ      ?C0184?KB_PROCESS
-  724: 				{
-  725: 					if(shift_r_flag)
-003139 904DF1            MOV     DPTR,#shift_r_flag
-00313C E0                MOVX    A,@DPTR
-00313D 600B              JZ      ?C0185?KB_PROCESS
-  726: 					{
-  727: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_RSHIFT,HID_KEY_7);
-00313F AF06              MOV     R7,AR6
-003141 7B24              MOV     R3,#024H
-003143 7D24              MOV     R5,#024H
-003145 122FEA            LCALL   _kb_combination_key_press
-  728: 					}
-003148 807C              SJMP    ?C0151?KB_PROCESS
-00314A         ?C0185?KB_PROCESS:
-  729: 					else
-  730: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_LSHIFT,HID_KEY_7);
-00314A AF06              MOV     R7,AR6
-00314C 7B24              MOV     R3,#024H
-00314E 7D06              MOV     R5,#06H
-003150 122FEA            LCALL   _kb_combination_key_press
-  731: 				}
-003153 8071              SJMP    ?C0151?KB_PROCESS
-003155         ?C0184?KB_PROCESS:
-  732: 				else
-  733: 				{
-  734: 					if(shift_l_flag)
-003155 904DEE            MOV     DPTR,#shift_l_flag
-003158 E0                MOVX    A,@DPTR
-003159 600B              JZ      ?C0188?KB_PROCESS
-  735: 					{
-  736: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_LSHIFT,HID_KEY_7);
-00315B AF06              MOV     R7,AR6
-00315D 7B24              MOV     R3,#024H
-00315F 7D42              MOV     R5,#042H
-003161 122FEA            LCALL   _kb_combination_key_press
-  737: 					}
-003164 8060              SJMP    ?C0151?KB_PROCESS
-003166         ?C0188?KB_PROCESS:
-  738: 					else
-  739: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_RSHIFT,HID_KEY_7);
-003166 AF06              MOV     R7,AR6
-003168 7B24              MOV     R3,#024H
-00316A 7D60              MOV     R5,#060H
-00316C 122FEA            LCALL   _kb_combination_key_press
-  740: 				}
-  741: 			}
-  742: 				
-  743: 		}
-  744: 	}
-00316F 8055              SJMP    ?C0151?KB_PROCESS
-003171         ?C0180?KB_PROCESS:
-  745: 	else if(temp == HID_KEY_RIGHT_BRACKET)
-003171 EA                MOV     A,R2
-003172 6430              XRL     A,#030H
-003174 7050              JNZ     ?C0151?KB_PROCESS
-  746: 	{
-  747: 		if(g_variable.system_mode == OSMODE_IOS)
-003176 904CC1            MOV     DPTR,#g_variable+02H
-003179 E0                MOVX    A,@DPTR
-00317A 6402              XRL     A,#02H
-00317C 7048              JNZ     ?C0151?KB_PROCESS
-  748: 		{
-  749: 			if(alt_l_flag || alt_r_flag)
-00317E 904DD3            MOV     DPTR,#alt_l_flag
-003181 E0                MOVX    A,@DPTR
-003182 7006              JNZ     ?C0194?KB_PROCESS
-003184 904DD4            MOV     DPTR,#alt_r_flag
-003187 E0                MOVX    A,@DPTR
-003188 603C              JZ      ?C0151?KB_PROCESS
-00318A         ?C0194?KB_PROCESS:
-  750: 			{
-  751: 				if(alt_l_flag)
-00318A 904DD3            MOV     DPTR,#alt_l_flag
-00318D E0                MOVX    A,@DPTR
-00318E 601C              JZ      ?C0195?KB_PROCESS
-  752: 				{
-  753: 					if(shift_r_flag)
-003190 904DF1            MOV     DPTR,#shift_r_flag
-003193 E0                MOVX    A,@DPTR
-003194 600B              JZ      ?C0196?KB_PROCESS
-  754: 					{
-  755: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_RSHIFT,HID_KEY_8);
-003196 AF06              MOV     R7,AR6
-003198 7B25              MOV     R3,#025H
-00319A 7D24              MOV     R5,#024H
-00319C 122FEA            LCALL   _kb_combination_key_press
-  756: 					}
-00319F 8025              SJMP    ?C0151?KB_PROCESS
-0031A1         ?C0196?KB_PROCESS:
-  757: 					else
-  758: 						kb_combination_key_press(state,KS_SEL_LALT|KS_SEL_LSHIFT,HID_KEY_8);
-0031A1 AF06              MOV     R7,AR6
-0031A3 7B25              MOV     R3,#025H
-0031A5 7D06              MOV     R5,#06H
-0031A7 122FEA            LCALL   _kb_combination_key_press
-  759: 				}
-0031AA 801A              SJMP    ?C0151?KB_PROCESS
-0031AC         ?C0195?KB_PROCESS:
-  760: 				else
-  761: 				{
-  762: 					if(shift_l_flag)
-0031AC 904DEE            MOV     DPTR,#shift_l_flag
-0031AF E0                MOVX    A,@DPTR
-0031B0 600B              JZ      ?C0199?KB_PROCESS
-  763: 					{
-  764: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_LSHIFT,HID_KEY_8);
-0031B2 AF06              MOV     R7,AR6
-0031B4 7B25              MOV     R3,#025H
-0031B6 7D42              MOV     R5,#042H
-0031B8 122FEA            LCALL   _kb_combination_key_press
-  765: 					}
-0031BB 8009              SJMP    ?C0151?KB_PROCESS
-0031BD         ?C0199?KB_PROCESS:
-  766: 					else
-  767: 						kb_combination_key_press(state,KS_SEL_RALT|KS_SEL_RSHIFT,HID_KEY_8);
-0031BD AF06              MOV     R7,AR6
-0031BF 7B25              MOV     R3,#025H
-0031C1 7D60              MOV     R5,#060H
-0031C3 122FEA            LCALL   _kb_combination_key_press
-  768: 				}
-  769: 			}
-  770: 				
-  771: 		}
-  772: 	}
-0031C6         ?C0151?KB_PROCESS:
-  773: 
-  774: 
-  775: 	if(fn_flag == 1)			// Fn lock
-0031C6 904DE5            MOV     DPTR,#fn_flag
-0031C9 E0                MOVX    A,@DPTR
-0031CA 6401              XRL     A,#01H
-0031CC 6002              JZ      $ + 4H
-0031CE 6156              AJMP    ?C0201?KB_PROCESS
-  776: 	{
-  777: 		switch (key_value)
-0031D0 EC                MOV     A,R4
-0031D1 1205B3            LCALL   ?C?CCASE
-0031D4 32A6              DW      ?C0213?KB_PROCESS
-0031D6 08                DB      08H
-0031D7 3205              DW      ?C0203?KB_PROCESS
-0031D9 14                DB      014H
-0031DA 3257              DW      ?C0208?KB_PROCESS
-0031DC 1A                DB      01AH
-0031DD 32F8              DW      ?C0218?KB_PROCESS
-0031DF 3A                DB      03AH
-0031E0 3300              DW      ?C0219?KB_PROCESS
-0031E2 3B                DB      03BH
-0031E3 3308              DW      ?C0220?KB_PROCESS
-0031E5 3C                DB      03CH
-0031E6 3310              DW      ?C0221?KB_PROCESS
-0031E8 3D                DB      03DH
-0031E9 3318              DW      ?C0222?KB_PROCESS
-0031EB 3E                DB      03EH
-0031EC 3320              DW      ?C0223?KB_PROCESS
-0031EE 3F                DB      03FH
-0031EF 3328              DW      ?C0224?KB_PROCESS
-0031F1 40                DB      040H
-0031F2 3330              DW      ?C0225?KB_PROCESS
-0031F4 41                DB      041H
-0031F5 3338              DW      ?C0226?KB_PROCESS
-0031F7 42                DB      042H
-0031F8 3340              DW      ?C0227?KB_PROCESS
-0031FA 43                DB      043H
-0031FB 3348              DW      ?C0228?KB_PROCESS
-0031FD 44                DB      044H
-0031FE 3350              DW      ?C0229?KB_PROCESS
-003200 45                DB      045H
-003201 0000              DW      00H
-003203 3356              DW      ?C0201?KB_PROCESS
-  778: 		{ 	
-  779: 			case HID_KEY_Q:
-003205         ?C0203?KB_PROCESS:
-  780: 				if(g_variable.system_mode != OSMODE_ANDROID)
-003205 904CC1            MOV     DPTR,#g_variable+02H
-003208 E0                MOVX    A,@DPTR
-003209 6401              XRL     A,#01H
-00320B 6039              JZ      ?C0204?KB_PROCESS
-  781: 				{
-  782: 					g_variable.system_mode = OSMODE_ANDROID;
-00320D 7401              MOV     A,#01H
-00320F F0                MOVX    @DPTR,A
-  783: 					if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-003210 904CC3            MOV     DPTR,#g_variable+04H
-003213 E0                MOVX    A,@DPTR
-003214 FF                MOV     R7,A
-003215 D3                SETB    C
-003216 9403              SUBB    A,#03H
-003218 5026              JNC     ?C0205?KB_PROCESS
-00321A EF                MOV     A,R7
-00321B C3                CLR     C
-00321C 9401              SUBB    A,#01H
-00321E 4020              JC      ?C0205?KB_PROCESS
-  784: 					{
-  785: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-003220 904CC1            MOV     DPTR,#g_variable+02H
-003223 E0                MOVX    A,@DPTR
-003224 FF                MOV     R7,A
-003225 904CC3            MOV     DPTR,#g_variable+04H
-003228 E0                MOVX    A,@DPTR
-003229 75F01F            MOV     B,#01FH
-00322C A4                MUL     AB
-00322D 24F2              ADD     A,#LOW bd_key_record_list-02H
-00322F F582              MOV     DPL,A
-003231 E4                CLR     A
-003232 344D              ADDC    A,#HIGH bd_key_record_list-02H
-003234 F583              MOV     DPH,A
-003236 EF                MOV     A,R7
-003237 F0                MOVX    @DPTR,A
-  786: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-003238 904CBF            MOV     DPTR,#g_variable
-00323B 7403              MOV     A,#03H
-00323D F0                MOVX    @DPTR,A
-  787: 					}
-00323E 8006              SJMP    ?C0204?KB_PROCESS
-003240         ?C0205?KB_PROCESS:
-  788: 					else
-  789: 					{
-  790: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-003240 904CBF            MOV     DPTR,#g_variable
-003243 7402              MOV     A,#02H
-003245 F0                MOVX    @DPTR,A
-  791: 					}
-  792: 				}
-003246         ?C0204?KB_PROCESS:
-  793: 				if(state & 1)
-003246 EE                MOV     A,R6
-003247 30E006            JNB     ACC.0,?C0207?KB_PROCESS
-  794: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-00324A 904CE8            MOV     DPTR,#g_variable+029H
-00324D 740C              MOV     A,#0CH
-00324F F0                MOVX    @DPTR,A
-003250         ?C0207?KB_PROCESS:
-  795: 				
-  796: 				temp = HID_KEY_NULL;
-003250 E4                CLR     A
-003251 904F09            MOV     DPTR,#temp
-003254 F0                MOVX    @DPTR,A
-  797: 				break;
-003255 6156              AJMP    ?C0201?KB_PROCESS
-  798: 			case HID_KEY_W:
-003257         ?C0208?KB_PROCESS:
-  799: 				if(g_variable.system_mode != OSMODE_WINDOWS)
-003257 904CC1            MOV     DPTR,#g_variable+02H
-00325A E0                MOVX    A,@DPTR
-00325B 6038              JZ      ?C0209?KB_PROCESS
-  800: 				{
-  801: 					g_variable.system_mode = OSMODE_WINDOWS;
-00325D E4                CLR     A
-00325E F0                MOVX    @DPTR,A
-  802: 					if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-00325F 904CC3            MOV     DPTR,#g_variable+04H
-003262 E0                MOVX    A,@DPTR
-003263 FF                MOV     R7,A
-003264 D3                SETB    C
-003265 9403              SUBB    A,#03H
-003267 5026              JNC     ?C0210?KB_PROCESS
-003269 EF                MOV     A,R7
-00326A C3                CLR     C
-00326B 9401              SUBB    A,#01H
-00326D 4020              JC      ?C0210?KB_PROCESS
-  803: 					{
-  804: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-00326F 904CC1            MOV     DPTR,#g_variable+02H
-003272 E0                MOVX    A,@DPTR
-003273 FF                MOV     R7,A
-003274 904CC3            MOV     DPTR,#g_variable+04H
-003277 E0                MOVX    A,@DPTR
-003278 75F01F            MOV     B,#01FH
-00327B A4                MUL     AB
-00327C 24F2              ADD     A,#LOW bd_key_record_list-02H
-00327E F582              MOV     DPL,A
-003280 E4                CLR     A
-003281 344D              ADDC    A,#HIGH bd_key_record_list-02H
-003283 F583              MOV     DPH,A
-003285 EF                MOV     A,R7
-003286 F0                MOVX    @DPTR,A
-  805: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-003287 904CBF            MOV     DPTR,#g_variable
-00328A 7403              MOV     A,#03H
-00328C F0                MOVX    @DPTR,A
-  806: 					}
-00328D 8006              SJMP    ?C0209?KB_PROCESS
-00328F         ?C0210?KB_PROCESS:
-  807: 					else
-  808: 					{
-  809: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-00328F 904CBF            MOV     DPTR,#g_variable
-003292 7402              MOV     A,#02H
-003294 F0                MOVX    @DPTR,A
-  810: 					}
-  811: 				}
-003295         ?C0209?KB_PROCESS:
-  812: 				if(state & 1)
-003295 EE                MOV     A,R6
-003296 30E006            JNB     ACC.0,?C0212?KB_PROCESS
-  813: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-003299 904CE8            MOV     DPTR,#g_variable+029H
-00329C 740C              MOV     A,#0CH
-00329E F0                MOVX    @DPTR,A
-00329F         ?C0212?KB_PROCESS:
-  814: 				
-  815: 				temp = HID_KEY_NULL;
-00329F E4                CLR     A
-0032A0 904F09            MOV     DPTR,#temp
-0032A3 F0                MOVX    @DPTR,A
-  816: 				break;
-0032A4 6156              AJMP    ?C0201?KB_PROCESS
-  817: 			case HID_KEY_E:
-0032A6         ?C0213?KB_PROCESS:
-  818: 				if(g_variable.system_mode != OSMODE_IOS)
-0032A6 904CC1            MOV     DPTR,#g_variable+02H
-0032A9 E0                MOVX    A,@DPTR
-0032AA 6402              XRL     A,#02H
-0032AC 6039              JZ      ?C0214?KB_PROCESS
-  819: 				{
-  820: 					g_variable.system_mode = OSMODE_IOS;
-0032AE 7402              MOV     A,#02H
-0032B0 F0                MOVX    @DPTR,A
-  821: 					if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
-0032B1 904CC3            MOV     DPTR,#g_variable+04H
-0032B4 E0                MOVX    A,@DPTR
-0032B5 FF                MOV     R7,A
-0032B6 D3                SETB    C
-0032B7 9403              SUBB    A,#03H
-0032B9 5026              JNC     ?C0215?KB_PROCESS
-0032BB EF                MOV     A,R7
-0032BC C3                CLR     C
-0032BD 9401              SUBB    A,#01H
-0032BF 4020              JC      ?C0215?KB_PROCESS
-  822: 					{
-  823: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
-0032C1 904CC1            MOV     DPTR,#g_variable+02H
-0032C4 E0                MOVX    A,@DPTR
-0032C5 FF                MOV     R7,A
-0032C6 904CC3            MOV     DPTR,#g_variable+04H
-0032C9 E0                MOVX    A,@DPTR
-0032CA 75F01F            MOV     B,#01FH
-0032CD A4                MUL     AB
-0032CE 24F2              ADD     A,#LOW bd_key_record_list-02H
-0032D0 F582              MOV     DPL,A
-0032D2 E4                CLR     A
-0032D3 344D              ADDC    A,#HIGH bd_key_record_list-02H
-0032D5 F583              MOV     DPH,A
-0032D7 EF                MOV     A,R7
-0032D8 F0                MOVX    @DPTR,A
-  824: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
-0032D9 904CBF            MOV     DPTR,#g_variable
-0032DC 7403              MOV     A,#03H
-0032DE F0                MOVX    @DPTR,A
-  825: 					}
-0032DF 8006              SJMP    ?C0214?KB_PROCESS
-0032E1         ?C0215?KB_PROCESS:
-  826: 					else
-  827: 					{
-  828: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
-0032E1 904CBF            MOV     DPTR,#g_variable
-0032E4 7402              MOV     A,#02H
-0032E6 F0                MOVX    @DPTR,A
-  829: 					}
-  830: 				}
-0032E7         ?C0214?KB_PROCESS:
-  831: 				if(state & 1)
-0032E7 EE                MOV     A,R6
-0032E8 30E006            JNB     ACC.0,?C0217?KB_PROCESS
-  832: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
-0032EB 904CE8            MOV     DPTR,#g_variable+029H
-0032EE 740C              MOV     A,#0CH
-0032F0 F0                MOVX    @DPTR,A
-0032F1         ?C0217?KB_PROCESS:
-  833: 				
-  834: 				temp = HID_KEY_NULL;
-0032F1 E4                CLR     A
-0032F2 904F09            MOV     DPTR,#temp
-0032F5 F0                MOVX    @DPTR,A
-  835: 				break;
-0032F6 805E              SJMP    ?C0201?KB_PROCESS
-  836: 			case HID_KEY_F1:
-0032F8         ?C0218?KB_PROCESS:
-  837: 				temp = HID_MULTIKEY_MEDIA;
-0032F8 904F09            MOV     DPTR,#temp
-0032FB 74F1              MOV     A,#0F1H
-0032FD F0                MOVX    @DPTR,A
-  838: 				break;
-0032FE 8056              SJMP    ?C0201?KB_PROCESS
-  839: 			case HID_KEY_F2:
-003300         ?C0219?KB_PROCESS:
-  840: 				temp = HID_MULTIKEY_VOL_DOWN;
-003300 904F09            MOV     DPTR,#temp
-003303 74F6              MOV     A,#0F6H
-003305 F0                MOVX    @DPTR,A
-  841: 				break;
-003306 804E              SJMP    ?C0201?KB_PROCESS
-  842: 			case HID_KEY_F3:
-003308         ?C0220?KB_PROCESS:
-  843: 				temp = HID_MULTIKEY_VOL_UP;
-003308 904F09            MOV     DPTR,#temp
-00330B 74F7              MOV     A,#0F7H
-00330D F0                MOVX    @DPTR,A
-  844: 				break;
-00330E 8046              SJMP    ?C0201?KB_PROCESS
-  845: 			case HID_KEY_F4:
-003310         ?C0221?KB_PROCESS:
-  846: 				temp = HID_MULTIKEY_MUTE;
-003310 904F09            MOV     DPTR,#temp
-003313 74F8              MOV     A,#0F8H
-003315 F0                MOVX    @DPTR,A
-  847: 				break;
-003316 803E              SJMP    ?C0201?KB_PROCESS
-  848: 			case HID_KEY_F5:
-003318         ?C0222?KB_PROCESS:
-  849: 				temp = HID_MULTIKEY_PRE_TRACK;
-003318 904F09            MOV     DPTR,#temp
-00331B 74F4              MOV     A,#0F4H
-00331D F0                MOVX    @DPTR,A
-  850: 				break;	
-00331E 8036              SJMP    ?C0201?KB_PROCESS
-  851: 			case HID_KEY_F6:
-003320         ?C0223?KB_PROCESS:
-  852: 				temp = HID_MULTIKEY_NEXT_TRACK;
-003320 904F09            MOV     DPTR,#temp
-003323 74F5              MOV     A,#0F5H
-003325 F0                MOVX    @DPTR,A
-  853: 				break;	
-003326 802E              SJMP    ?C0201?KB_PROCESS
-  854: 			case HID_KEY_F7:
-003328         ?C0224?KB_PROCESS:
-  855: 				temp = HID_MULTIKEY_PALY;
-003328 904F09            MOV     DPTR,#temp
-00332B 74F2              MOV     A,#0F2H
-00332D F0                MOVX    @DPTR,A
-  856: 				break;
-00332E 8026              SJMP    ?C0201?KB_PROCESS
-  857: 			case HID_KEY_F8:
-003330         ?C0225?KB_PROCESS:
-  858: 				temp = HID_MULTIKEY_STOP;
-003330 904F09            MOV     DPTR,#temp
-003333 74F3              MOV     A,#0F3H
-003335 F0                MOVX    @DPTR,A
-  859: 				break;
-003336 801E              SJMP    ?C0201?KB_PROCESS
-  860: 			case HID_KEY_F9:
-003338         ?C0226?KB_PROCESS:
-  861: 				temp = HID_MULTIKEY_AC_HOME;
-003338 904F09            MOV     DPTR,#temp
-00333B 74D6              MOV     A,#0D6H
-00333D F0                MOVX    @DPTR,A
-  862: 				break;	
-00333E 8016              SJMP    ?C0201?KB_PROCESS
-  863: 			case HID_KEY_F10:
-003340         ?C0227?KB_PROCESS:
-  864: 				temp = HID_MULTIKEY_MAIL;
-003340 904F09            MOV     DPTR,#temp
-003343 74FA              MOV     A,#0FAH
-003345 F0                MOVX    @DPTR,A
-  865: 				break;
-003346 800E              SJMP    ?C0201?KB_PROCESS
-  866: 			case HID_KEY_F11:
-003348         ?C0228?KB_PROCESS:
-  867: 				temp = HID_MULTIKEY_MY_COMPUTER;
-003348 904F09            MOV     DPTR,#temp
-00334B 74F9              MOV     A,#0F9H
-00334D F0                MOVX    @DPTR,A
-  868: 				break;
-00334E 8006              SJMP    ?C0201?KB_PROCESS
-  869: 			case HID_KEY_F12:
-003350         ?C0229?KB_PROCESS:
-  870: 				temp = HID_MULTIKEY_AC_SEARCH;
-003350 904F09            MOV     DPTR,#temp
-003353 74D5              MOV     A,#0D5H
-003355 F0                MOVX    @DPTR,A
-  871: 				break;
-  872: 			default :
-  873: 				break;
-  874: 		}
-  875: 	}
-003356         ?C0201?KB_PROCESS:
-  876: 
-  877: 	return temp;
-003356 904F09            MOV     DPTR,#temp
-003359 E0                MOVX    A,@DPTR
-00335A FF                MOV     R7,A
-  878: }
-00335B 22                RET     
+  807: 					}
+003110 8006              SJMP    ?C0162?KB_PROCESS
+003112         ?C0163?KB_PROCESS:
+  808: 					else
+  809: 					{
+  810: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+003112 904CBF            MOV     DPTR,#g_variable
+003115 7402              MOV     A,#02H
+003117 F0                MOVX    @DPTR,A
+  811: 					}
+  812: 				}
+003118         ?C0162?KB_PROCESS:
+  813: 				if(state & 1)
+003118 EF                MOV     A,R7
+003119 30E006            JNB     ACC.0,?C0165?KB_PROCESS
+  814: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+00311C 904CE8            MOV     DPTR,#g_variable+029H
+00311F 740C              MOV     A,#0CH
+003121 F0                MOVX    @DPTR,A
+003122         ?C0165?KB_PROCESS:
+  815: 				
+  816: 				temp = HID_KEY_NULL;
+003122 E4                CLR     A
+003123 904F09            MOV     DPTR,#temp
+003126 F0                MOVX    @DPTR,A
+  817: 				break;
+003127 21D9              AJMP    ?C0154?KB_PROCESS
+  818: 			case HID_KEY_E:
+003129         ?C0166?KB_PROCESS:
+  819: 				if(g_variable.system_mode != OSMODE_IOS)
+003129 904CC1            MOV     DPTR,#g_variable+02H
+00312C E0                MOVX    A,@DPTR
+00312D 6402              XRL     A,#02H
+00312F 6039              JZ      ?C0167?KB_PROCESS
+  820: 				{
+  821: 					g_variable.system_mode = OSMODE_IOS;
+003131 7402              MOV     A,#02H
+003133 F0                MOVX    @DPTR,A
+  822: 					if (g_variable.current_device_num <= 3 && g_variable.current_device_num >= 1)
+003134 904CC3            MOV     DPTR,#g_variable+04H
+003137 E0                MOVX    A,@DPTR
+003138 FE                MOV     R6,A
+003139 D3                SETB    C
+00313A 9403              SUBB    A,#03H
+00313C 5026              JNC     ?C0168?KB_PROCESS
+00313E EE                MOV     A,R6
+00313F C3                CLR     C
+003140 9401              SUBB    A,#01H
+003142 4020              JC      ?C0168?KB_PROCESS
+  823: 					{
+  824: 						bd_key_record_list[g_variable.current_device_num - 1].system_mode = g_variable.system_mode;
+003144 904CC1            MOV     DPTR,#g_variable+02H
+003147 E0                MOVX    A,@DPTR
+003148 FE                MOV     R6,A
+003149 904CC3            MOV     DPTR,#g_variable+04H
+00314C E0                MOVX    A,@DPTR
+00314D 75F01F            MOV     B,#01FH
+003150 A4                MUL     AB
+003151 24F2              ADD     A,#LOW bd_key_record_list-02H
+003153 F582              MOV     DPL,A
+003155 E4                CLR     A
+003156 344D              ADDC    A,#HIGH bd_key_record_list-02H
+003158 F583              MOV     DPH,A
+00315A EE                MOV     A,R6
+00315B F0                MOVX    @DPTR,A
+  825: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_BT;
+00315C 904CBF            MOV     DPTR,#g_variable
+00315F 7403              MOV     A,#03H
+003161 F0                MOVX    @DPTR,A
+  826: 					}
+003162 8006              SJMP    ?C0167?KB_PROCESS
+003164         ?C0168?KB_PROCESS:
+  827: 					else
+  828: 					{
+  829: 						g_variable.update_eeprom_flag = EEPROM_STORE_TYPE_G24;
+003164 904CBF            MOV     DPTR,#g_variable
+003167 7402              MOV     A,#02H
+003169 F0                MOVX    @DPTR,A
+  830: 					}
+  831: 				}
+00316A         ?C0167?KB_PROCESS:
+  832: 				if(state & 1)
+00316A EF                MOV     A,R7
+00316B 30E006            JNB     ACC.0,?C0170?KB_PROCESS
+  833: 					g_variable.sys_mode_led_on_timer = KB_MODE_LED_ON_TIMER;
+00316E 904CE8            MOV     DPTR,#g_variable+029H
+003171 740C              MOV     A,#0CH
+003173 F0                MOVX    @DPTR,A
+003174         ?C0170?KB_PROCESS:
+  834: 				
+  835: 				temp = HID_KEY_NULL;
+003174 E4                CLR     A
+003175 904F09            MOV     DPTR,#temp
+003178 F0                MOVX    @DPTR,A
+  836: 				break;
+003179 805E              SJMP    ?C0154?KB_PROCESS
+  837: 			case HID_KEY_F1:
+00317B         ?C0171?KB_PROCESS:
+  838: 				temp = HID_MULTIKEY_MEDIA;
+00317B 904F09            MOV     DPTR,#temp
+00317E 74F1              MOV     A,#0F1H
+003180 F0                MOVX    @DPTR,A
+  839: 				break;
+003181 8056              SJMP    ?C0154?KB_PROCESS
+  840: 			case HID_KEY_F2:
+003183         ?C0172?KB_PROCESS:
+  841: 				temp = HID_MULTIKEY_VOL_DOWN;
+003183 904F09            MOV     DPTR,#temp
+003186 74F6              MOV     A,#0F6H
+003188 F0                MOVX    @DPTR,A
+  842: 				break;
+003189 804E              SJMP    ?C0154?KB_PROCESS
+  843: 			case HID_KEY_F3:
+00318B         ?C0173?KB_PROCESS:
+  844: 				temp = HID_MULTIKEY_VOL_UP;
+00318B 904F09            MOV     DPTR,#temp
+00318E 74F7              MOV     A,#0F7H
+003190 F0                MOVX    @DPTR,A
+  845: 				break;
+003191 8046              SJMP    ?C0154?KB_PROCESS
+  846: 			case HID_KEY_F4:
+003193         ?C0174?KB_PROCESS:
+  847: 				temp = HID_MULTIKEY_MUTE;
+003193 904F09            MOV     DPTR,#temp
+003196 74F8              MOV     A,#0F8H
+003198 F0                MOVX    @DPTR,A
+  848: 				break;
+003199 803E              SJMP    ?C0154?KB_PROCESS
+  849: 			case HID_KEY_F5:
+00319B         ?C0175?KB_PROCESS:
+  850: 				temp = HID_MULTIKEY_PRE_TRACK;
+00319B 904F09            MOV     DPTR,#temp
+00319E 74F4              MOV     A,#0F4H
+0031A0 F0                MOVX    @DPTR,A
+  851: 				break;	
+0031A1 8036              SJMP    ?C0154?KB_PROCESS
+  852: 			case HID_KEY_F6:
+0031A3         ?C0176?KB_PROCESS:
+  853: 				temp = HID_MULTIKEY_NEXT_TRACK;
+0031A3 904F09            MOV     DPTR,#temp
+0031A6 74F5              MOV     A,#0F5H
+0031A8 F0                MOVX    @DPTR,A
+  854: 				break;	
+0031A9 802E              SJMP    ?C0154?KB_PROCESS
+  855: 			case HID_KEY_F7:
+0031AB         ?C0177?KB_PROCESS:
+  856: 				temp = HID_MULTIKEY_PALY;
+0031AB 904F09            MOV     DPTR,#temp
+0031AE 74F2              MOV     A,#0F2H
+0031B0 F0                MOVX    @DPTR,A
+  857: 				break;
+0031B1 8026              SJMP    ?C0154?KB_PROCESS
+  858: 			case HID_KEY_F8:
+0031B3         ?C0178?KB_PROCESS:
+  859: 				temp = HID_MULTIKEY_STOP;
+0031B3 904F09            MOV     DPTR,#temp
+0031B6 74F3              MOV     A,#0F3H
+0031B8 F0                MOVX    @DPTR,A
+  860: 				break;
+0031B9 801E              SJMP    ?C0154?KB_PROCESS
+  861: 			case HID_KEY_F9:
+0031BB         ?C0179?KB_PROCESS:
+  862: 				temp = HID_MULTIKEY_AC_HOME;
+0031BB 904F09            MOV     DPTR,#temp
+0031BE 74D6              MOV     A,#0D6H
+0031C0 F0                MOVX    @DPTR,A
+  863: 				break;	
+0031C1 8016              SJMP    ?C0154?KB_PROCESS
+  864: 			case HID_KEY_F10:
+0031C3         ?C0180?KB_PROCESS:
+  865: 				temp = HID_MULTIKEY_MAIL;
+0031C3 904F09            MOV     DPTR,#temp
+0031C6 74FA              MOV     A,#0FAH
+0031C8 F0                MOVX    @DPTR,A
+  866: 				break;
+0031C9 800E              SJMP    ?C0154?KB_PROCESS
+  867: 			case HID_KEY_F11:
+0031CB         ?C0181?KB_PROCESS:
+  868: 				temp = HID_MULTIKEY_MY_COMPUTER;
+0031CB 904F09            MOV     DPTR,#temp
+0031CE 74F9              MOV     A,#0F9H
+0031D0 F0                MOVX    @DPTR,A
+  869: 				break;
+0031D1 8006              SJMP    ?C0154?KB_PROCESS
+  870: 			case HID_KEY_F12:
+0031D3         ?C0182?KB_PROCESS:
+  871: 				temp = HID_MULTIKEY_AC_SEARCH;
+0031D3 904F09            MOV     DPTR,#temp
+0031D6 74D5              MOV     A,#0D5H
+0031D8 F0                MOVX    @DPTR,A
+  872: 				break;
+  873: 			default :
+  874: 				break;
+  875: 		}
+  876: 	}
+0031D9         ?C0154?KB_PROCESS:
+  877: 
+  878: 	return temp;
+0031D9 904F09            MOV     DPTR,#temp
+0031DC E0                MOVX    A,@DPTR
+0031DD FF                MOV     R7,A
+  879: }
+0031DE 22                RET     
 ----- FUNCTION _key_fn_function (END) -------
 
 
@@ -9831,193 +9623,193 @@
  FILE: 'keyscan.c'
     7: void GPIO_SetInput_no_pupd(byte gpio_num)
     8: {
-00335C 904F0A            MOV     DPTR,#gpio_num
-00335F EF                MOV     A,R7
-003360 F0                MOVX    @DPTR,A
+0031DF 904F0A            MOV     DPTR,#gpio_num
+0031E2 EF                MOV     A,R7
+0031E3 F0                MOVX    @DPTR,A
     9: 	if(gpio_num == 0xff)
    10: 		return;
-003361 F4                CPL     A
-003362 601B              JZ      ?C0002?KEYSCAN
-003364         ?C0001?KEYSCAN:
+0031E4 F4                CPL     A
+0031E5 601B              JZ      ?C0002?KEYSCAN
+0031E7         ?C0001?KEYSCAN:
    11: 	GPIO_SetPd(gpio_num, 0);
-003364 904F0A            MOV     DPTR,#gpio_num
-003367 E0                MOVX    A,@DPTR
-003368 FF                MOV     R7,A
-003369 C203              CLR     ?_GPIO_SetPd?BIT
-00336B 7191              ACALL   _GPIO_SetPd
+0031E7 904F0A            MOV     DPTR,#gpio_num
+0031EA E0                MOVX    A,@DPTR
+0031EB FF                MOV     R7,A
+0031EC C203              CLR     ?_GPIO_SetPd?BIT
+0031EE 5114              ACALL   _GPIO_SetPd
    12: 	GPIO_SetPu(gpio_num, 0);
-00336D 904F0A            MOV     DPTR,#gpio_num
-003370 E0                MOVX    A,@DPTR
-003371 FF                MOV     R7,A
-003372 C202              CLR     ?_GPIO_SetPu?BIT
-003374 7180              ACALL   _GPIO_SetPu
+0031F0 904F0A            MOV     DPTR,#gpio_num
+0031F3 E0                MOVX    A,@DPTR
+0031F4 FF                MOV     R7,A
+0031F5 C202              CLR     ?_GPIO_SetPu?BIT
+0031F7 5103              ACALL   _GPIO_SetPu
    13: 	GPIO_Setoe(gpio_num, 0);
-003376 904F0A            MOV     DPTR,#gpio_num
-003379 E0                MOVX    A,@DPTR
-00337A FF                MOV     R7,A
-00337B C204              CLR     ?_GPIO_Setoe?BIT
-00337D 71C0              ACALL   _GPIO_Setoe
+0031F9 904F0A            MOV     DPTR,#gpio_num
+0031FC E0                MOVX    A,@DPTR
+0031FD FF                MOV     R7,A
+0031FE C204              CLR     ?_GPIO_Setoe?BIT
+003200 5143              ACALL   _GPIO_Setoe
    14: }
-00337F         ?C0002?KEYSCAN:
-00337F 22                RET     
+003202         ?C0002?KEYSCAN:
+003202 22                RET     
 ----- FUNCTION _GPIO_SetInput_no_pupd (END) -------
 
 
 ----- FUNCTION _GPIO_SetPu (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-003380 EF                MOV     A,R7
-003381 F4                CPL     A
-003382 600C              JZ      ?C0009?GPIO
-003384         ?C0008?GPIO:
-003384 7B01              MOV     R3,#01H
-003386 7A80              MOV     R2,#080H
-003388 7978              MOV     R1,#078H
-00338A A202              MOV     C,bit_val
-00338C 9200              MOV     ?_gpioSetBit?BIT,C
-00338E 71D1              ACALL   _gpioSetBit
-003390         ?C0009?GPIO:
-003390 22                RET     
+003203 EF                MOV     A,R7
+003204 F4                CPL     A
+003205 600C              JZ      ?C0009?GPIO
+003207         ?C0008?GPIO:
+003207 7B01              MOV     R3,#01H
+003209 7A80              MOV     R2,#080H
+00320B 7978              MOV     R1,#078H
+00320D A202              MOV     C,bit_val
+00320F 9200              MOV     ?_gpioSetBit?BIT,C
+003211 5154              ACALL   _gpioSetBit
+003213         ?C0009?GPIO:
+003213 22                RET     
 ----- FUNCTION _GPIO_SetPu (END) -------
 
 
 ----- FUNCTION _GPIO_SetPd (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-003391 EF                MOV     A,R7
-003392 F4                CPL     A
-003393 600C              JZ      ?C0011?GPIO
-003395         ?C0010?GPIO:
-003395 7B01              MOV     R3,#01H
-003397 7A80              MOV     R2,#080H
-003399 797C              MOV     R1,#07CH
-00339B A203              MOV     C,bit_val
-00339D 9200              MOV     ?_gpioSetBit?BIT,C
-00339F 71D1              ACALL   _gpioSetBit
-0033A1         ?C0011?GPIO:
-0033A1 22                RET     
+003214 EF                MOV     A,R7
+003215 F4                CPL     A
+003216 600C              JZ      ?C0011?GPIO
+003218         ?C0010?GPIO:
+003218 7B01              MOV     R3,#01H
+00321A 7A80              MOV     R2,#080H
+00321C 797C              MOV     R1,#07CH
+00321E A203              MOV     C,bit_val
+003220 9200              MOV     ?_gpioSetBit?BIT,C
+003222 5154              ACALL   _gpioSetBit
+003224         ?C0011?GPIO:
+003224 22                RET     
 ----- FUNCTION _GPIO_SetPd (END) -------
 
 
 ----- FUNCTION _GPIO_SetInput (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R4' ----
-0033A2 AC07              MOV     R4,AR7
-0033A4 EC                MOV     A,R4
-0033A5 F4                CPL     A
-0033A6 6017              JZ      ?C0015?GPIO
-0033A8         ?C0014?GPIO:
-0033A8 AF04              MOV     R7,AR4
-0033AA A205              MOV     C,st
-0033AC 9203              MOV     ?_GPIO_SetPd?BIT,C
-0033AE 7191              ACALL   _GPIO_SetPd
-0033B0 AF04              MOV     R7,AR4
-0033B2 A205              MOV     C,st
-0033B4 B3                CPL     C
-0033B5 9202              MOV     ?_GPIO_SetPu?BIT,C
-0033B7 7180              ACALL   _GPIO_SetPu
-0033B9 AF04              MOV     R7,AR4
-0033BB C204              CLR     ?_GPIO_Setoe?BIT
-0033BD 71C0              ACALL   _GPIO_Setoe
-0033BF         ?C0015?GPIO:
-0033BF 22                RET     
+003225 AC07              MOV     R4,AR7
+003227 EC                MOV     A,R4
+003228 F4                CPL     A
+003229 6017              JZ      ?C0015?GPIO
+00322B         ?C0014?GPIO:
+00322B AF04              MOV     R7,AR4
+00322D A205              MOV     C,st
+00322F 9203              MOV     ?_GPIO_SetPd?BIT,C
+003231 5114              ACALL   _GPIO_SetPd
+003233 AF04              MOV     R7,AR4
+003235 A205              MOV     C,st
+003237 B3                CPL     C
+003238 9202              MOV     ?_GPIO_SetPu?BIT,C
+00323A 5103              ACALL   _GPIO_SetPu
+00323C AF04              MOV     R7,AR4
+00323E C204              CLR     ?_GPIO_Setoe?BIT
+003240 5143              ACALL   _GPIO_Setoe
+003242         ?C0015?GPIO:
+003242 22                RET     
 ----- FUNCTION _GPIO_SetInput (END) -------
 
 
 ----- FUNCTION _GPIO_Setoe (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-0033C0 EF                MOV     A,R7
-0033C1 F4                CPL     A
-0033C2 600C              JZ      ?C0013?GPIO
-0033C4         ?C0012?GPIO:
-0033C4 7B01              MOV     R3,#01H
-0033C6 7A80              MOV     R2,#080H
-0033C8 7970              MOV     R1,#070H
-0033CA A204              MOV     C,bit_val
-0033CC 9200              MOV     ?_gpioSetBit?BIT,C
-0033CE 71D1              ACALL   _gpioSetBit
-0033D0         ?C0013?GPIO:
-0033D0 22                RET     
+003243 EF                MOV     A,R7
+003244 F4                CPL     A
+003245 600C              JZ      ?C0013?GPIO
+003247         ?C0012?GPIO:
+003247 7B01              MOV     R3,#01H
+003249 7A80              MOV     R2,#080H
+00324B 7970              MOV     R1,#070H
+00324D A204              MOV     C,bit_val
+00324F 9200              MOV     ?_gpioSetBit?BIT,C
+003251 5154              ACALL   _gpioSetBit
+003253         ?C0013?GPIO:
+003253 22                RET     
 ----- FUNCTION _GPIO_Setoe (END) -------
 
 
 ----- FUNCTION _gpioSetBit (BEGIN) -----
-0033D1 904EFC            MOV     DPTR,#reg_base
-0033D4 EB                MOV     A,R3
-0033D5 F0                MOVX    @DPTR,A
-0033D6 A3                INC     DPTR
-0033D7 EA                MOV     A,R2
-0033D8 F0                MOVX    @DPTR,A
-0033D9 A3                INC     DPTR
-0033DA E9                MOV     A,R1
-0033DB F0                MOVX    @DPTR,A
+003254 904EFC            MOV     DPTR,#reg_base
+003257 EB                MOV     A,R3
+003258 F0                MOVX    @DPTR,A
+003259 A3                INC     DPTR
+00325A EA                MOV     A,R2
+00325B F0                MOVX    @DPTR,A
+00325C A3                INC     DPTR
+00325D E9                MOV     A,R1
+00325E F0                MOVX    @DPTR,A
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
 ;---- Variable 'queue' assigned to Register 'R6' ----
-0033DC E4                CLR     A
-0033DD FE                MOV     R6,A
+00325F E4                CLR     A
+003260 FE                MOV     R6,A
 ;---- Variable 'group' assigned to Register 'R5' ----
-0033DE FD                MOV     R5,A
-0033DF EF                MOV     A,R7
-0033E0 5407              ANL     A,#07H
-0033E2 FE                MOV     R6,A
-0033E3 EF                MOV     A,R7
-0033E4 13                RRC     A
-0033E5 13                RRC     A
-0033E6 13                RRC     A
-0033E7 5403              ANL     A,#03H
-0033E9 FD                MOV     R5,A
-0033EA 300022            JNB     bit_val,?C0001?GPIO
-0033ED 904EFC            MOV     DPTR,#reg_base
-0033F0 E0                MOVX    A,@DPTR
-0033F1 FB                MOV     R3,A
-0033F2 A3                INC     DPTR
-0033F3 E0                MOVX    A,@DPTR
-0033F4 FA                MOV     R2,A
-0033F5 A3                INC     DPTR
-0033F6 E0                MOVX    A,@DPTR
-0033F7 2D                ADD     A,R5
-0033F8 F9                MOV     R1,A
-0033F9 E4                CLR     A
-0033FA 3A                ADDC    A,R2
-0033FB FA                MOV     R2,A
-0033FC 1203B6            LCALL   ?C?CLDPTR
-0033FF FF                MOV     R7,A
-003400 7401              MOV     A,#01H
-003402 A806              MOV     R0,AR6
-003404 08                INC     R0
-003405 8002              SJMP    ?C0031?GPIO
-003407         ?C0030?GPIO:
-003407 C3                CLR     C
-003408 33                RLC     A
-003409         ?C0031?GPIO:
-003409 D8FC              DJNZ    R0,?C0030?GPIO
-00340B 4F                ORL     A,R7
-00340C 0203FC            LJMP    ?C?CSTPTR
-00340F         ?C0001?GPIO:
-00340F 904EFC            MOV     DPTR,#reg_base
-003412 E0                MOVX    A,@DPTR
-003413 FB                MOV     R3,A
-003414 A3                INC     DPTR
-003415 E0                MOVX    A,@DPTR
-003416 FA                MOV     R2,A
-003417 A3                INC     DPTR
-003418 E0                MOVX    A,@DPTR
-003419 2D                ADD     A,R5
-00341A F9                MOV     R1,A
-00341B E4                CLR     A
-00341C 3A                ADDC    A,R2
-00341D FA                MOV     R2,A
-00341E 1203B6            LCALL   ?C?CLDPTR
-003421 FF                MOV     R7,A
-003422 7401              MOV     A,#01H
-003424 A806              MOV     R0,AR6
-003426 08                INC     R0
-003427 8002              SJMP    ?C0033?GPIO
-003429         ?C0032?GPIO:
-003429 C3                CLR     C
-00342A 33                RLC     A
-00342B         ?C0033?GPIO:
-00342B D8FC              DJNZ    R0,?C0032?GPIO
-00342D F4                CPL     A
-00342E 5F                ANL     A,R7
-00342F 0203FC            LJMP    ?C?CSTPTR
+003261 FD                MOV     R5,A
+003262 EF                MOV     A,R7
+003263 5407              ANL     A,#07H
+003265 FE                MOV     R6,A
+003266 EF                MOV     A,R7
+003267 13                RRC     A
+003268 13                RRC     A
+003269 13                RRC     A
+00326A 5403              ANL     A,#03H
+00326C FD                MOV     R5,A
+00326D 300022            JNB     bit_val,?C0001?GPIO
+003270 904EFC            MOV     DPTR,#reg_base
+003273 E0                MOVX    A,@DPTR
+003274 FB                MOV     R3,A
+003275 A3                INC     DPTR
+003276 E0                MOVX    A,@DPTR
+003277 FA                MOV     R2,A
+003278 A3                INC     DPTR
+003279 E0                MOVX    A,@DPTR
+00327A 2D                ADD     A,R5
+00327B F9                MOV     R1,A
+00327C E4                CLR     A
+00327D 3A                ADDC    A,R2
+00327E FA                MOV     R2,A
+00327F 1203B6            LCALL   ?C?CLDPTR
+003282 FF                MOV     R7,A
+003283 7401              MOV     A,#01H
+003285 A806              MOV     R0,AR6
+003287 08                INC     R0
+003288 8002              SJMP    ?C0031?GPIO
+00328A         ?C0030?GPIO:
+00328A C3                CLR     C
+00328B 33                RLC     A
+00328C         ?C0031?GPIO:
+00328C D8FC              DJNZ    R0,?C0030?GPIO
+00328E 4F                ORL     A,R7
+00328F 0203FC            LJMP    ?C?CSTPTR
+003292         ?C0001?GPIO:
+003292 904EFC            MOV     DPTR,#reg_base
+003295 E0                MOVX    A,@DPTR
+003296 FB                MOV     R3,A
+003297 A3                INC     DPTR
+003298 E0                MOVX    A,@DPTR
+003299 FA                MOV     R2,A
+00329A A3                INC     DPTR
+00329B E0                MOVX    A,@DPTR
+00329C 2D                ADD     A,R5
+00329D F9                MOV     R1,A
+00329E E4                CLR     A
+00329F 3A                ADDC    A,R2
+0032A0 FA                MOV     R2,A
+0032A1 1203B6            LCALL   ?C?CLDPTR
+0032A4 FF                MOV     R7,A
+0032A5 7401              MOV     A,#01H
+0032A7 A806              MOV     R0,AR6
+0032A9 08                INC     R0
+0032AA 8002              SJMP    ?C0033?GPIO
+0032AC         ?C0032?GPIO:
+0032AC C3                CLR     C
+0032AD 33                RLC     A
+0032AE         ?C0033?GPIO:
+0032AE D8FC              DJNZ    R0,?C0032?GPIO
+0032B0 F4                CPL     A
+0032B1 5F                ANL     A,R7
+0032B2 0203FC            LJMP    ?C?CSTPTR
 ----- FUNCTION _gpioSetBit (END) -------
 
 
@@ -10027,29 +9819,29 @@
   213: {
   214: 	byte i = 0;
   215: 	for (i=0; col[i]!=0; i++) {
-003432 E4                CLR     A
-003433 904F0C            MOV     DPTR,#i
-003436 F0                MOVX    @DPTR,A
+0032B5 E4                CLR     A
+0032B6 904F0C            MOV     DPTR,#i
+0032B9 F0                MOVX    @DPTR,A
   216: 		GPIO_SetInput_no_pupd(col[i]);
-003437 F0                MOVX    @DPTR,A
-003438         ?C0038?KEYSCAN:
-003438 904F0C            MOV     DPTR,#i
-00343B E0                MOVX    A,@DPTR
-00343C 900681            MOV     DPTR,#col
-00343F 93                MOVC    A,@A+DPTR
-003440 FF                MOV     R7,A
-003441 600A              JZ      ?C0041?KEYSCAN
+0032BA F0                MOVX    @DPTR,A
+0032BB         ?C0038?KEYSCAN:
+0032BB 904F0C            MOV     DPTR,#i
+0032BE E0                MOVX    A,@DPTR
+0032BF 900681            MOV     DPTR,#col
+0032C2 93                MOVC    A,@A+DPTR
+0032C3 FF                MOV     R7,A
+0032C4 600A              JZ      ?C0041?KEYSCAN
   217: 	}
-003443 715C              ACALL   _GPIO_SetInput_no_pupd
+0032C6 31DF              ACALL   _GPIO_SetInput_no_pupd
   218: }
-003445 904F0C            MOV     DPTR,#i
-003448 E0                MOVX    A,@DPTR
-003449 04                INC     A
-00344A F0                MOVX    @DPTR,A
-00344B 80EB              SJMP    ?C0038?KEYSCAN
+0032C8 904F0C            MOV     DPTR,#i
+0032CB E0                MOVX    A,@DPTR
+0032CC 04                INC     A
+0032CD F0                MOVX    @DPTR,A
+0032CE 80EB              SJMP    ?C0038?KEYSCAN
   219: 
-00344D         ?C0041?KEYSCAN:
-00344D 22                RET     
+0032D0         ?C0041?KEYSCAN:
+0032D0 22                RET     
 ----- FUNCTION ksColInitialize (END) -------
 
 
@@ -10059,19 +9851,19 @@
   221: {
   222: 	REG_GPIO_SELECT(0) = 0;
   223: 	REG_GPIO_SELECT(1) = 0;
-00344E 908080            MOV     DPTR,#08080H
-003451 E4                CLR     A
-003452 F0                MOVX    @DPTR,A
+0032D1 908080            MOV     DPTR,#08080H
+0032D4 E4                CLR     A
+0032D5 F0                MOVX    @DPTR,A
   224: 	REG_GPIO_SELECT(2) = 0;
-003453 A3                INC     DPTR
-003454 F0                MOVX    @DPTR,A
+0032D6 A3                INC     DPTR
+0032D7 F0                MOVX    @DPTR,A
   225: 	ksRawInitialize();
-003455 A3                INC     DPTR
-003456 F0                MOVX    @DPTR,A
+0032D8 A3                INC     DPTR
+0032D9 F0                MOVX    @DPTR,A
   226: 	ksColInitialize();
-003457 9162              ACALL   ksRawInitialize
+0032DA 51E5              ACALL   ksRawInitialize
   227: }
-003459 80D7              SJMP    ksColInitialize
+0032DC 80D7              SJMP    ksColInitialize
 ----- FUNCTION KS_Initialize (END) -------
 
 
@@ -10081,11 +9873,11 @@
    54: {
    55: 	System_IIC_clk_setup();
    56: 	KS_Initialize();
-00345B 917F              ACALL   System_IIC_clk_setup
+0032DE 7102              ACALL   System_IIC_clk_setup
    57: 	LED_all_shutdown();
-00345D 914E              ACALL   KS_Initialize
+0032E0 51D1              ACALL   KS_Initialize
    58: }
-00345F 021A1E            LJMP    LED_all_shutdown
+0032E2 021A1E            LJMP    LED_all_shutdown
 ----- FUNCTION System_Hardware_init (END) -------
 
 
@@ -10095,30 +9887,30 @@
   204: {
   205: 	byte i = 0;
   206: 	
-003462 E4                CLR     A
-003463 904F0B            MOV     DPTR,#i
-003466 F0                MOVX    @DPTR,A
+0032E5 E4                CLR     A
+0032E6 904F0B            MOV     DPTR,#i
+0032E9 F0                MOVX    @DPTR,A
   207: 	for (i=0; i<8; i++) {
-003467 F0                MOVX    @DPTR,A
-003468         ?C0034?KEYSCAN:
-003468 904F0B            MOV     DPTR,#i
-00346B E0                MOVX    A,@DPTR
-00346C FF                MOV     R7,A
-00346D C3                CLR     C
-00346E 9408              SUBB    A,#08H
-003470 500C              JNC     ?C0037?KEYSCAN
+0032EA F0                MOVX    @DPTR,A
+0032EB         ?C0034?KEYSCAN:
+0032EB 904F0B            MOV     DPTR,#i
+0032EE E0                MOVX    A,@DPTR
+0032EF FF                MOV     R7,A
+0032F0 C3                CLR     C
+0032F1 9408              SUBB    A,#08H
+0032F3 500C              JNC     ?C0037?KEYSCAN
   208: 		GPIO_SetInput(i, 0);
-003472 C205              CLR     ?_GPIO_SetInput?BIT
-003474 71A2              ACALL   _GPIO_SetInput
+0032F5 C205              CLR     ?_GPIO_SetInput?BIT
+0032F7 5125              ACALL   _GPIO_SetInput
   209: 	}
-003476 904F0B            MOV     DPTR,#i
-003479 E0                MOVX    A,@DPTR
-00347A 04                INC     A
-00347B F0                MOVX    @DPTR,A
-00347C 80EA              SJMP    ?C0034?KEYSCAN
+0032F9 904F0B            MOV     DPTR,#i
+0032FC E0                MOVX    A,@DPTR
+0032FD 04                INC     A
+0032FE F0                MOVX    @DPTR,A
+0032FF 80EA              SJMP    ?C0034?KEYSCAN
   210: }
-00347E         ?C0037?KEYSCAN:
-00347E 22                RET     
+003301         ?C0037?KEYSCAN:
+003301 22                RET     
 ----- FUNCTION ksRawInitialize (END) -------
 
 
@@ -10128,28 +9920,28 @@
    44: {
    45: 	REG_IICD_SCL_LOW  =  0x0d;
    46:    	REG_IICD_SCL_HIGH  =  0x0e;
-00347F 908091            MOV     DPTR,#08091H
-003482 740D              MOV     A,#0DH
-003484 F0                MOVX    @DPTR,A
+003302 908091            MOV     DPTR,#08091H
+003305 740D              MOV     A,#0DH
+003307 F0                MOVX    @DPTR,A
    47:    	REG_IICD_START_SETUP  = 0x0e;
-003485 A3                INC     DPTR
-003486 04                INC     A
-003487 F0                MOVX    @DPTR,A
+003308 A3                INC     DPTR
+003309 04                INC     A
+00330A F0                MOVX    @DPTR,A
    48:    	REG_IICD_START_HOLD  = 0x0e;
-003488 A3                INC     DPTR
-003489 F0                MOVX    @DPTR,A
+00330B A3                INC     DPTR
+00330C F0                MOVX    @DPTR,A
    49:   	REG_IICD_STOP_SETUP  = 0x0e;
-00348A A3                INC     DPTR
-00348B F0                MOVX    @DPTR,A
+00330D A3                INC     DPTR
+00330E F0                MOVX    @DPTR,A
    50:    	REG_IICD_DATA_SETUP  = 0x0d;
-00348C A3                INC     DPTR
-00348D F0                MOVX    @DPTR,A
+00330F A3                INC     DPTR
+003310 F0                MOVX    @DPTR,A
    51: }
-00348E A3                INC     DPTR
-00348F 14                DEC     A
-003490 F0                MOVX    @DPTR,A
+003311 A3                INC     DPTR
+003312 14                DEC     A
+003313 F0                MOVX    @DPTR,A
    52: 
-003491 22                RET     
+003314 22                RET     
 ----- FUNCTION System_IIC_clk_setup (END) -------
 
 
@@ -10159,27 +9951,27 @@
    16: {
    17: 	if(g_variable.current_device_num == 1)
    18: 		GPIO_Setout(BT_LED_GPIO,LED_ON);
-003492 904CC3            MOV     DPTR,#g_variable+04H
-003495 E0                MOVX    A,@DPTR
-003496 B40107            CJNE    A,#01H,?C0002?LED
+003315 904CC3            MOV     DPTR,#g_variable+04H
+003318 E0                MOVX    A,@DPTR
+003319 B40107            CJNE    A,#01H,?C0002?LED
    19: 	else if(g_variable.current_device_num == 2)
-003499 D201              SETB    ?_GPIO_Setout?BIT
-00349B 7F1E              MOV     R7,#01EH
-00349D 02122C            LJMP    _GPIO_Setout
-0034A0         ?C0002?LED:
+00331C D201              SETB    ?_GPIO_Setout?BIT
+00331E 7F1E              MOV     R7,#01EH
+003320 02122C            LJMP    _GPIO_Setout
+003323         ?C0002?LED:
    20: 		GPIO_Setout(BT2_LED_GPIO,LED_ON);
-0034A0 904CC3            MOV     DPTR,#g_variable+04H
-0034A3 E0                MOVX    A,@DPTR
-0034A4 B40207            CJNE    A,#02H,?C0004?LED
+003323 904CC3            MOV     DPTR,#g_variable+04H
+003326 E0                MOVX    A,@DPTR
+003327 B40207            CJNE    A,#02H,?C0004?LED
    21: 	else
-0034A7 D201              SETB    ?_GPIO_Setout?BIT
-0034A9 7F0C              MOV     R7,#0CH
-0034AB 02122C            LJMP    _GPIO_Setout
-0034AE         ?C0004?LED:
+00332A D201              SETB    ?_GPIO_Setout?BIT
+00332C 7F0C              MOV     R7,#0CH
+00332E 02122C            LJMP    _GPIO_Setout
+003331         ?C0004?LED:
    22: 		GPIO_Setout(G24_LED_GPIO,LED_ON);
-0034AE D201              SETB    ?_GPIO_Setout?BIT
-0034B0 7F1D              MOV     R7,#01DH
-0034B2 02122C            LJMP    _GPIO_Setout
+003331 D201              SETB    ?_GPIO_Setout?BIT
+003333 7F1D              MOV     R7,#01DH
+003335 02122C            LJMP    _GPIO_Setout
    23: }
 ----- FUNCTION LED_device_poweron (END) -------
 
@@ -10190,321 +9982,321 @@
   632: {
   633: 
   634: 	if (g_variable.delay_enter_lpm_timer) 
-0034B5 904CEA            MOV     DPTR,#g_variable+02BH
-0034B8 E0                MOVX    A,@DPTR
-0034B9 6002              JZ      ?C0110?SYS
+003338 904CEA            MOV     DPTR,#g_variable+02BH
+00333B E0                MOVX    A,@DPTR
+00333C 6002              JZ      ?C0110?SYS
   635: 	{
   636: 		g_variable.delay_enter_lpm_timer --;
-0034BB 14                DEC     A
-0034BC F0                MOVX    @DPTR,A
+00333E 14                DEC     A
+00333F F0                MOVX    @DPTR,A
   637: 	}
-0034BD         ?C0110?SYS:
+003340         ?C0110?SYS:
   638: 
   639: 	if(g_variable.recon_delay)
-0034BD 904CEF            MOV     DPTR,#g_variable+030H
-0034C0 E0                MOVX    A,@DPTR
-0034C1 6002              JZ      ?C0111?SYS
+003340 904CEF            MOV     DPTR,#g_variable+030H
+003343 E0                MOVX    A,@DPTR
+003344 6002              JZ      ?C0111?SYS
   640: 		g_variable.recon_delay--;
-0034C3 14                DEC     A
-0034C4 F0                MOVX    @DPTR,A
-0034C5         ?C0111?SYS:
+003346 14                DEC     A
+003347 F0                MOVX    @DPTR,A
+003348         ?C0111?SYS:
   641: 
   642: 	if(g_variable.one_key_press_wait_release_timer)
-0034C5 904CF8            MOV     DPTR,#g_variable+039H
-0034C8 E0                MOVX    A,@DPTR
-0034C9 600B              JZ      ?C0112?SYS
+003348 904CF8            MOV     DPTR,#g_variable+039H
+00334B E0                MOVX    A,@DPTR
+00334C 600B              JZ      ?C0112?SYS
   643: 	{
   644: 		g_variable.one_key_press_wait_release_timer--;
-0034CB 14                DEC     A
-0034CC F0                MOVX    @DPTR,A
+00334E 14                DEC     A
+00334F F0                MOVX    @DPTR,A
   645: 		if(!g_variable.one_key_press_wait_release_timer)
-0034CD E0                MOVX    A,@DPTR
-0034CE 7006              JNZ     ?C0112?SYS
+003350 E0                MOVX    A,@DPTR
+003351 7006              JNZ     ?C0112?SYS
   646: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
-0034D0 904CF4            MOV     DPTR,#g_variable+035H
-0034D3 7406              MOV     A,#06H
-0034D5 F0                MOVX    @DPTR,A
+003353 904CF4            MOV     DPTR,#g_variable+035H
+003356 7406              MOV     A,#06H
+003358 F0                MOVX    @DPTR,A
   647: 	}
-0034D6         ?C0112?SYS:
+003359         ?C0112?SYS:
   648: 	
   649: 	if (g_variable.powerOn_timer != 0)
-0034D6 904CE5            MOV     DPTR,#g_variable+026H
-0034D9 E0                MOVX    A,@DPTR
-0034DA 6025              JZ      ?C0114?SYS
+003359 904CE5            MOV     DPTR,#g_variable+026H
+00335C E0                MOVX    A,@DPTR
+00335D 6025              JZ      ?C0114?SYS
   650: 	{	
   651: 		if(g_variable.pairing_g24_timeout ||g_variable.pairing_timeout)
-0034DC 904CEE            MOV     DPTR,#g_variable+02FH
-0034DF E0                MOVX    A,@DPTR
-0034E0 7006              JNZ     ?C0116?SYS
-0034E2 904CE9            MOV     DPTR,#g_variable+02AH
-0034E5 E0                MOVX    A,@DPTR
-0034E6 6006              JZ      ?C0115?SYS
-0034E8         ?C0116?SYS:
+00335F 904CEE            MOV     DPTR,#g_variable+02FH
+003362 E0                MOVX    A,@DPTR
+003363 7006              JNZ     ?C0116?SYS
+003365 904CE9            MOV     DPTR,#g_variable+02AH
+003368 E0                MOVX    A,@DPTR
+003369 6006              JZ      ?C0115?SYS
+00336B         ?C0116?SYS:
   652: 		{
   653: 			g_variable.powerOn_timer = 0;
-0034E8 E4                CLR     A
-0034E9 904CE5            MOV     DPTR,#g_variable+026H
-0034EC F0                MOVX    @DPTR,A
-0034ED 22                RET     
+00336B E4                CLR     A
+00336C 904CE5            MOV     DPTR,#g_variable+026H
+00336F F0                MOVX    @DPTR,A
+003370 22                RET     
   654: 			return;
   655: 		}
-0034EE         ?C0115?SYS:
+003371         ?C0115?SYS:
   656: 			
   657: 		g_variable.powerOn_timer--;
-0034EE 904CE5            MOV     DPTR,#g_variable+026H
-0034F1 E0                MOVX    A,@DPTR
-0034F2 14                DEC     A
-0034F3 F0                MOVX    @DPTR,A
+003371 904CE5            MOV     DPTR,#g_variable+026H
+003374 E0                MOVX    A,@DPTR
+003375 14                DEC     A
+003376 F0                MOVX    @DPTR,A
   658: 		LED_device_poweron();
-0034F4 9192              ACALL   LED_device_poweron
+003377 7115              ACALL   LED_device_poweron
   659: 		if (!g_variable.powerOn_timer)
-0034F6 904CE5            MOV     DPTR,#g_variable+026H
-0034F9 E0                MOVX    A,@DPTR
-0034FA 7068              JNZ     ?C0119?SYS
+003379 904CE5            MOV     DPTR,#g_variable+026H
+00337C E0                MOVX    A,@DPTR
+00337D 7068              JNZ     ?C0119?SYS
   660: 		{
   661: 			LED_device_poweroff();
-0034FC 1217C9            LCALL   LED_device_poweroff
+00337F 1217C9            LCALL   LED_device_poweroff
   662: 		}
   663: 	}
-0034FF 8063              SJMP    ?C0119?SYS
-003501         ?C0114?SYS:
+003382 8063              SJMP    ?C0119?SYS
+003384         ?C0114?SYS:
   664: 	else	if ((g_variable.pairing_timeout == 0) && (g_variable.pairing_g24_timeout == 0))  //  pairing
-003501 904CE9            MOV     DPTR,#g_variable+02AH
-003504 E0                MOVX    A,@DPTR
-003505 705D              JNZ     ?C0119?SYS
-003507 904CEE            MOV     DPTR,#g_variable+02FH
-00350A E0                MOVX    A,@DPTR
-00350B 7057              JNZ     ?C0119?SYS
+003384 904CE9            MOV     DPTR,#g_variable+02AH
+003387 E0                MOVX    A,@DPTR
+003388 705D              JNZ     ?C0119?SYS
+00338A 904CEE            MOV     DPTR,#g_variable+02FH
+00338D E0                MOVX    A,@DPTR
+00338E 7057              JNZ     ?C0119?SYS
   665: 	{
   666: 		if(g_variable.battery_low_led_flash_interval)
-00350D 904CE2            MOV     DPTR,#g_variable+023H
-003510 E0                MOVX    A,@DPTR
-003511 6051              JZ      ?C0119?SYS
+003390 904CE2            MOV     DPTR,#g_variable+023H
+003393 E0                MOVX    A,@DPTR
+003394 6051              JZ      ?C0119?SYS
   667: 		{
   668: 			if(g_variable.sleepTimer < LOW_POWER_TIMER_30S)
-003513 C3                CLR     C
-003514 904CE4            MOV     DPTR,#g_variable+025H
-003517 E0                MOVX    A,@DPTR
-003518 943C              SUBB    A,#03CH
-00351A 904CE3            MOV     DPTR,#g_variable+024H
-00351D E0                MOVX    A,@DPTR
-00351E 9400              SUBB    A,#00H
-003520 5035              JNC     ?C0122?SYS
+003396 C3                CLR     C
+003397 904CE4            MOV     DPTR,#g_variable+025H
+00339A E0                MOVX    A,@DPTR
+00339B 943C              SUBB    A,#03CH
+00339D 904CE3            MOV     DPTR,#g_variable+024H
+0033A0 E0                MOVX    A,@DPTR
+0033A1 9400              SUBB    A,#00H
+0033A3 5035              JNC     ?C0122?SYS
   669: 			{
   670: 				g_variable.battery_low_led_flash_interval--;
-003522 904CE2            MOV     DPTR,#g_variable+023H
-003525 E0                MOVX    A,@DPTR
-003526 14                DEC     A
-003527 F0                MOVX    @DPTR,A
+0033A5 904CE2            MOV     DPTR,#g_variable+023H
+0033A8 E0                MOVX    A,@DPTR
+0033A9 14                DEC     A
+0033AA F0                MOVX    @DPTR,A
   671: 				if(g_variable.battery_low_led_flash_interval < 4)
-003528 E0                MOVX    A,@DPTR
-003529 FF                MOV     R7,A
-00352A C3                CLR     C
-00352B 9404              SUBB    A,#04H
-00352D 5016              JNC     ?C0123?SYS
+0033AB E0                MOVX    A,@DPTR
+0033AC FF                MOV     R7,A
+0033AD C3                CLR     C
+0033AE 9404              SUBB    A,#04H
+0033B0 5016              JNC     ?C0123?SYS
   672: 				{
   673: 					if(g_variable.battery_low_led_flash_interval & 0x02)
-00352F EF                MOV     A,R7
-003530 30E109            JNB     ACC.1,?C0124?SYS
+0033B2 EF                MOV     A,R7
+0033B3 30E109            JNB     ACC.1,?C0124?SYS
   674: 					{
   675: 						GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
-003533 D201              SETB    ?_GPIO_Setout?BIT
-003535 7F0C              MOV     R7,#0CH
-003537 12122C            LCALL   _GPIO_Setout
+0033B6 D201              SETB    ?_GPIO_Setout?BIT
+0033B8 7F0C              MOV     R7,#0CH
+0033BA 12122C            LCALL   _GPIO_Setout
   676: 					}
-00353A 8010              SJMP    ?C0126?SYS
-00353C         ?C0124?SYS:
+0033BD 8010              SJMP    ?C0126?SYS
+0033BF         ?C0124?SYS:
   677: 					else
   678: 					{
   679: 						GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
-00353C C201              CLR     ?_GPIO_Setout?BIT
-00353E 7F0C              MOV     R7,#0CH
-003540 12122C            LCALL   _GPIO_Setout
+0033BF C201              CLR     ?_GPIO_Setout?BIT
+0033C1 7F0C              MOV     R7,#0CH
+0033C3 12122C            LCALL   _GPIO_Setout
   680: 					}	
   681: 				}
-003543 8007              SJMP    ?C0126?SYS
-003545         ?C0123?SYS:
+0033C6 8007              SJMP    ?C0126?SYS
+0033C8         ?C0123?SYS:
   682: 				else
   683: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
-003545 C201              CLR     ?_GPIO_Setout?BIT
-003547 7F0C              MOV     R7,#0CH
-003549 12122C            LCALL   _GPIO_Setout
-00354C         ?C0126?SYS:
+0033C8 C201              CLR     ?_GPIO_Setout?BIT
+0033CA 7F0C              MOV     R7,#0CH
+0033CC 12122C            LCALL   _GPIO_Setout
+0033CF         ?C0126?SYS:
   684: 				if(!g_variable.battery_low_led_flash_interval)
-00354C 904CE2            MOV     DPTR,#g_variable+023H
-00354F E0                MOVX    A,@DPTR
-003550 7012              JNZ     ?C0119?SYS
+0033CF 904CE2            MOV     DPTR,#g_variable+023H
+0033D2 E0                MOVX    A,@DPTR
+0033D3 7012              JNZ     ?C0119?SYS
   685: 					g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-003552 741C              MOV     A,#01CH
-003554 F0                MOVX    @DPTR,A
+0033D5 741C              MOV     A,#01CH
+0033D7 F0                MOVX    @DPTR,A
   686: 			}
-003555 800D              SJMP    ?C0119?SYS
-003557         ?C0122?SYS:
+0033D8 800D              SJMP    ?C0119?SYS
+0033DA         ?C0122?SYS:
   687: 			else
   688: 			{
   689: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-003557 904CE2            MOV     DPTR,#g_variable+023H
-00355A 741C              MOV     A,#01CH
-00355C F0                MOVX    @DPTR,A
+0033DA 904CE2            MOV     DPTR,#g_variable+023H
+0033DD 741C              MOV     A,#01CH
+0033DF F0                MOVX    @DPTR,A
   690: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
-00355D C201              CLR     ?_GPIO_Setout?BIT
-00355F 7F0C              MOV     R7,#0CH
-003561 12122C            LCALL   _GPIO_Setout
+0033E0 C201              CLR     ?_GPIO_Setout?BIT
+0033E2 7F0C              MOV     R7,#0CH
+0033E4 12122C            LCALL   _GPIO_Setout
   691: 			}
   692: 		}
   693: 	}
-003564         ?C0119?SYS:
+0033E7         ?C0119?SYS:
   694: 	
   695: // The dongle must receive data within 200ms, otherwise it will be forced to lift
   696: 	if(!long_press_flag)
-003564 904DDF            MOV     DPTR,#long_press_flag
-003567 E0                MOVX    A,@DPTR
-003568 7036              JNZ     ?C0129?SYS
+0033E7 904DDF            MOV     DPTR,#long_press_flag
+0033EA E0                MOVX    A,@DPTR
+0033EB 7036              JNZ     ?C0129?SYS
   697: 	{
   698: 		if (repeat_send_24g == 1)
-00356A 904DE0            MOV     DPTR,#repeat_send_24g
-00356D E0                MOVX    A,@DPTR
-00356E 6401              XRL     A,#01H
-003570 702E              JNZ     ?C0129?SYS
+0033ED 904DE0            MOV     DPTR,#repeat_send_24g
+0033F0 E0                MOVX    A,@DPTR
+0033F1 6401              XRL     A,#01H
+0033F3 702E              JNZ     ?C0129?SYS
   699: 		{
   700: 			g_variable.sleepTimer = 0;	
-003572 904CE3            MOV     DPTR,#g_variable+024H
-003575 F0                MOVX    @DPTR,A
-003576 A3                INC     DPTR
-003577 F0                MOVX    @DPTR,A
+0033F5 904CE3            MOV     DPTR,#g_variable+024H
+0033F8 F0                MOVX    @DPTR,A
+0033F9 A3                INC     DPTR
+0033FA F0                MOVX    @DPTR,A
   701: 			repeat_send_24g = 0;
-003578 904DE0            MOV     DPTR,#repeat_send_24g
-00357B F0                MOVX    @DPTR,A
+0033FB 904DE0            MOV     DPTR,#repeat_send_24g
+0033FE F0                MOVX    @DPTR,A
   702: 
   703: 			 if (multikey[0] != 0)
-00357C 904E52            MOV     DPTR,#multikey
-00357F E0                MOVX    A,@DPTR
-003580 600D              JZ      ?C0131?SYS
+0033FF 904E52            MOV     DPTR,#multikey
+003402 E0                MOVX    A,@DPTR
+003403 600D              JZ      ?C0131?SYS
   704: 			{
   705: 				IPC_TxHidData(multikey, 3);
-003582 7B01              MOV     R3,#01H
-003584 7A4E              MOV     R2,#HIGH multikey
-003586 7952              MOV     R1,#LOW multikey
-003588 7D03              MOV     R5,#03H
-00358A 120C55            LCALL   _IPC_TxHidData
+003405 7B01              MOV     R3,#01H
+003407 7A4E              MOV     R2,#HIGH multikey
+003409 7952              MOV     R1,#LOW multikey
+00340B 7D03              MOV     R5,#03H
+00340D 120C55            LCALL   _IPC_TxHidData
   706: 			}
-00358D 8011              SJMP    ?C0129?SYS
-00358F         ?C0131?SYS:
+003410 8011              SJMP    ?C0129?SYS
+003412         ?C0131?SYS:
   707: 			else if (hidBuff[0] != 0)
-00358F 904800            MOV     DPTR,#hidBuff
-003592 E0                MOVX    A,@DPTR
-003593 600B              JZ      ?C0129?SYS
+003412 904800            MOV     DPTR,#hidBuff
+003415 E0                MOVX    A,@DPTR
+003416 600B              JZ      ?C0129?SYS
   708: 			{
   709: 
   710: 				IPC_TxHidData(hidBuff,9);
-003595 7B01              MOV     R3,#01H
-003597 7A48              MOV     R2,#HIGH hidBuff
-003599 7900              MOV     R1,#LOW hidBuff
-00359B 7D09              MOV     R5,#09H
-00359D 120C55            LCALL   _IPC_TxHidData
+003418 7B01              MOV     R3,#01H
+00341A 7A48              MOV     R2,#HIGH hidBuff
+00341C 7900              MOV     R1,#LOW hidBuff
+00341E 7D09              MOV     R5,#09H
+003420 120C55            LCALL   _IPC_TxHidData
   711: 			}
   712: 		}
   713: 	}
-0035A0         ?C0129?SYS:
+003423         ?C0129?SYS:
   714: 
   715: 	if(g_variable.sys_mode_led_on_timer && !g_variable.pairing_timeout && !g_variable.pairing_g24_timeout)
-0035A0 904CE8            MOV     DPTR,#g_variable+029H
-0035A3 E0                MOVX    A,@DPTR
-0035A4 601B              JZ      ?C0134?SYS
-0035A6 A3                INC     DPTR
-0035A7 E0                MOVX    A,@DPTR
-0035A8 7017              JNZ     ?C0134?SYS
-0035AA 904CEE            MOV     DPTR,#g_variable+02FH
-0035AD E0                MOVX    A,@DPTR
-0035AE 7011              JNZ     ?C0134?SYS
+003423 904CE8            MOV     DPTR,#g_variable+029H
+003426 E0                MOVX    A,@DPTR
+003427 601B              JZ      ?C0134?SYS
+003429 A3                INC     DPTR
+00342A E0                MOVX    A,@DPTR
+00342B 7017              JNZ     ?C0134?SYS
+00342D 904CEE            MOV     DPTR,#g_variable+02FH
+003430 E0                MOVX    A,@DPTR
+003431 7011              JNZ     ?C0134?SYS
   716: 	{
   717: 		g_variable.sys_mode_led_on_timer--;
-0035B0 904CE8            MOV     DPTR,#g_variable+029H
-0035B3 E0                MOVX    A,@DPTR
-0035B4 14                DEC     A
-0035B5 F0                MOVX    @DPTR,A
+003433 904CE8            MOV     DPTR,#g_variable+029H
+003436 E0                MOVX    A,@DPTR
+003437 14                DEC     A
+003438 F0                MOVX    @DPTR,A
   718: 		if(g_variable.sys_mode_led_on_timer & 0x02)
-0035B6 E0                MOVX    A,@DPTR
-0035B7 30E104            JNB     ACC.1,?C0135?SYS
+003439 E0                MOVX    A,@DPTR
+00343A 30E104            JNB     ACC.1,?C0135?SYS
   719: 		{
   720: 			LED_device_poweron();
-0035BA 9192              ACALL   LED_device_poweron
+00343D 7115              ACALL   LED_device_poweron
   721: 		}
-0035BC 8003              SJMP    ?C0134?SYS
-0035BE         ?C0135?SYS:
+00343F 8003              SJMP    ?C0134?SYS
+003441         ?C0135?SYS:
   722: 		else
   723: 		{
   724: 			LED_device_poweroff();
-0035BE 1217C9            LCALL   LED_device_poweroff
+003441 1217C9            LCALL   LED_device_poweroff
   725: 		}
   726: 	}
-0035C1         ?C0134?SYS:
+003444         ?C0134?SYS:
   727: 
   728: // ble delay send secutiry request
   729: 	if(ble_send_secutiry_request_timer)
-0035C1 904DD6            MOV     DPTR,#ble_send_secutiry_request_timer
-0035C4 E0                MOVX    A,@DPTR
-0035C5 6011              JZ      ?C0137?SYS
+003444 904DD6            MOV     DPTR,#ble_send_secutiry_request_timer
+003447 E0                MOVX    A,@DPTR
+003448 6011              JZ      ?C0137?SYS
   730: 	{
   731: 		ble_send_secutiry_request_timer--;
-0035C7 E0                MOVX    A,@DPTR
-0035C8 14                DEC     A
-0035C9 F0                MOVX    @DPTR,A
+00344A E0                MOVX    A,@DPTR
+00344B 14                DEC     A
+00344C F0                MOVX    @DPTR,A
   732: 		if(!ble_send_secutiry_request_timer)
-0035CA E0                MOVX    A,@DPTR
-0035CB 700B              JNZ     ?C0137?SYS
+00344D E0                MOVX    A,@DPTR
+00344E 700B              JNZ     ?C0137?SYS
   733: 		{
   734: 			if(!m_le_send_security_request_flag)
-0035CD 904D3D            MOV     DPTR,#m_le_send_security_request_flag
-0035D0 E0                MOVX    A,@DPTR
-0035D1 7005              JNZ     ?C0137?SYS
+003450 904D3D            MOV     DPTR,#m_le_send_security_request_flag
+003453 E0                MOVX    A,@DPTR
+003454 7005              JNZ     ?C0137?SYS
   735: 			{
   736: 				IPC_TxControlCmd(IPC_CMD_LE_SMP_SECURITY_REQUEST);
-0035D3 7F1B              MOV     R7,#01BH
-0035D5 121413            LCALL   _IPC_TxControlCmd
+003456 7F1B              MOV     R7,#01BH
+003458 121413            LCALL   _IPC_TxControlCmd
   737: 			}
   738: 		}
   739: 	}
-0035D8         ?C0137?SYS:
+00345B         ?C0137?SYS:
   740: 
   741: 	if (delayChgInvTimer != 0){
-0035D8 904DE9            MOV     DPTR,#delayChgInvTimer
-0035DB E0                MOVX    A,@DPTR
-0035DC 601B              JZ      ?C0117?SYS
+00345B 904DE9            MOV     DPTR,#delayChgInvTimer
+00345E E0                MOVX    A,@DPTR
+00345F 601B              JZ      ?C0117?SYS
   742: 		delayChgInvTimer--;
-0035DE E0                MOVX    A,@DPTR
-0035DF 14                DEC     A
-0035E0 F0                MOVX    @DPTR,A
+003461 E0                MOVX    A,@DPTR
+003462 14                DEC     A
+003463 F0                MOVX    @DPTR,A
   743: 		if (delayChgInvTimer == 0)
-0035E1 E0                MOVX    A,@DPTR
-0035E2 7015              JNZ     ?C0117?SYS
+003464 E0                MOVX    A,@DPTR
+003465 7015              JNZ     ?C0117?SYS
   744: 		{
   745: 			if( m_24g_led_flag)
-0035E4 904D46            MOV     DPTR,#m_24g_led_flag
-0035E7 E0                MOVX    A,@DPTR
-0035E8 6002              JZ      ?C0142?SYS
+003467 904D46            MOV     DPTR,#m_24g_led_flag
+00346A E0                MOVX    A,@DPTR
+00346B 6002              JZ      ?C0142?SYS
   746: 			{
   747: 				m_24g_led_flag = 0;
-0035EA E4                CLR     A
-0035EB F0                MOVX    @DPTR,A
+00346D E4                CLR     A
+00346E F0                MOVX    @DPTR,A
   748: 			}	
-0035EC         ?C0142?SYS:
+00346F         ?C0142?SYS:
   749: 	
   750: 			if (g_variable.ble_currentState == CHANGE_TO_BLE_CONNECTED)
-0035EC 904CC7            MOV     DPTR,#g_variable+08H
-0035EF E0                MOVX    A,@DPTR
-0035F0 B40406            CJNE    A,#04H,?C0117?SYS
+00346F 904CC7            MOV     DPTR,#g_variable+08H
+003472 E0                MOVX    A,@DPTR
+003473 B40406            CJNE    A,#04H,?C0117?SYS
   751: 			{
   752: 				kscurrmult = 0x0c;
-0035F3 904213            MOV     DPTR,#kscurrmult
-0035F6 740C              MOV     A,#0CH
-0035F8 F0                MOVX    @DPTR,A
+003476 904213            MOV     DPTR,#kscurrmult
+003479 740C              MOV     A,#0CH
+00347B F0                MOVX    @DPTR,A
   753: 			}
   754: 		}
   755: 	}
   756: }
-0035F9         ?C0117?SYS:
-0035F9 22                RET     
+00347C         ?C0117?SYS:
+00347C 22                RET     
 ----- FUNCTION kb_cb_Timer100ms (END) -------
 
 
@@ -10514,42 +10306,42 @@
    62: {
    63: 	System_clear_mem();
    64: 	YC_adc_init();
-0035FA 120D65            LCALL   System_clear_mem
+00347D 120D65            LCALL   System_clear_mem
    65: 	g_variable.release_data =1;
-0035FD D12F              ACALL   YC_adc_init
+003480 91B2              ACALL   YC_adc_init
    66: 	g_variable.powerOn_timer = KB_POWERON_LED_ON_TIMER;
-0035FF 904CEB            MOV     DPTR,#g_variable+02CH
-003602 7401              MOV     A,#01H
-003604 F0                MOVX    @DPTR,A
+003482 904CEB            MOV     DPTR,#g_variable+02CH
+003485 7401              MOV     A,#01H
+003487 F0                MOVX    @DPTR,A
    67: 	g_variable.recon_count = 0;
-003605 904CE5            MOV     DPTR,#g_variable+026H
-003608 741E              MOV     A,#01EH
-00360A F0                MOVX    @DPTR,A
+003488 904CE5            MOV     DPTR,#g_variable+026H
+00348B 741E              MOV     A,#01EH
+00348D F0                MOVX    @DPTR,A
    68: 	g_variable.test_buff = 0xff;
-00360B E4                CLR     A
-00360C 904CF0            MOV     DPTR,#g_variable+031H
-00360F F0                MOVX    @DPTR,A
+00348E E4                CLR     A
+00348F 904CF0            MOV     DPTR,#g_variable+031H
+003492 F0                MOVX    @DPTR,A
    69: 	le_lap_temp[0] = m_le_lap[3];
-003610 904D07            MOV     DPTR,#g_variable+048H
-003613 74FF              MOV     A,#0FFH
-003615 F0                MOVX    @DPTR,A
+003493 904D07            MOV     DPTR,#g_variable+048H
+003496 74FF              MOV     A,#0FFH
+003498 F0                MOVX    @DPTR,A
    70: 	le_lap_temp[1] = m_le_lap[4];
-003616 9044FC            MOV     DPTR,#m_le_lap+03H
-003619 E0                MOVX    A,@DPTR
-00361A 904DD0            MOV     DPTR,#le_lap_temp
-00361D F0                MOVX    @DPTR,A
+003499 9044FC            MOV     DPTR,#m_le_lap+03H
+00349C E0                MOVX    A,@DPTR
+00349D 904DD0            MOV     DPTR,#le_lap_temp
+0034A0 F0                MOVX    @DPTR,A
    71: 	le_lap_temp[2] = m_le_lap[5];
-00361E 9044FD            MOV     DPTR,#m_le_lap+04H
-003621 E0                MOVX    A,@DPTR
-003622 904DD1            MOV     DPTR,#le_lap_temp+01H
-003625 F0                MOVX    @DPTR,A
+0034A1 9044FD            MOV     DPTR,#m_le_lap+04H
+0034A4 E0                MOVX    A,@DPTR
+0034A5 904DD1            MOV     DPTR,#le_lap_temp+01H
+0034A8 F0                MOVX    @DPTR,A
    72: }
-003626 9044FE            MOV     DPTR,#m_le_lap+05H
-003629 E0                MOVX    A,@DPTR
-00362A 904DD2            MOV     DPTR,#le_lap_temp+02H
-00362D F0                MOVX    @DPTR,A
+0034A9 9044FE            MOV     DPTR,#m_le_lap+05H
+0034AC E0                MOVX    A,@DPTR
+0034AD 904DD2            MOV     DPTR,#le_lap_temp+02H
+0034B0 F0                MOVX    @DPTR,A
    73: 
-00362E 22                RET     
+0034B1 22                RET     
 ----- FUNCTION System_Software_init (END) -------
 
 
@@ -10561,13 +10353,13 @@
     6: 	byte i;
     7: 	
     8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-00362F 904CD3            MOV     DPTR,#g_variable+014H
-003632 7405              MOV     A,#05H
-003634 F0                MOVX    @DPTR,A
+0034B2 904CD3            MOV     DPTR,#g_variable+014H
+0034B5 7405              MOV     A,#05H
+0034B7 F0                MOVX    @DPTR,A
     9: 	g_variable.battery_value_index = 0;
-003635 E4                CLR     A
-003636 A3                INC     DPTR
-003637 F0                MOVX    @DPTR,A
+0034B8 E4                CLR     A
+0034B9 A3                INC     DPTR
+0034BA F0                MOVX    @DPTR,A
    10: 
    11: #ifdef ADC_TYPE_HVIN 	
    12: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
@@ -10581,132 +10373,132 @@
    20: #ifdef ADC_TYPE_VINLPM
    21: 		for (i = 0; i < BAT_ARRAY_LEN; i++)
 ;---- Variable 'i' assigned to Register 'R7' ----
-003638 FF                MOV     R7,A
-003639         ?C0001?ADC:
+0034BB FF                MOV     R7,A
+0034BC         ?C0001?ADC:
    22: 		{
    23: 			g_variable.battery_value[i] = INIT_BATTERY_VALUE_VINLPM;
-003639 EF                MOV     A,R7
-00363A 25E0              ADD     A,ACC
-00363C 24D6              ADD     A,#LOW g_variable+017H
-00363E F582              MOV     DPL,A
-003640 E4                CLR     A
-003641 344C              ADDC    A,#HIGH g_variable+017H
-003643 F583              MOV     DPH,A
-003645 7451              MOV     A,#051H
-003647 F0                MOVX    @DPTR,A
-003648 A3                INC     DPTR
-003649 F0                MOVX    @DPTR,A
+0034BC EF                MOV     A,R7
+0034BD 25E0              ADD     A,ACC
+0034BF 24D6              ADD     A,#LOW g_variable+017H
+0034C1 F582              MOV     DPL,A
+0034C3 E4                CLR     A
+0034C4 344C              ADDC    A,#HIGH g_variable+017H
+0034C6 F583              MOV     DPH,A
+0034C8 7451              MOV     A,#051H
+0034CA F0                MOVX    @DPTR,A
+0034CB A3                INC     DPTR
+0034CC F0                MOVX    @DPTR,A
    24: 		}
-00364A 0F                INC     R7
-00364B EF                MOV     A,R7
-00364C B404EA            CJNE    A,#04H,?C0001?ADC
-00364F         ?C0002?ADC:
+0034CD 0F                INC     R7
+0034CE EF                MOV     A,R7
+0034CF B404EA            CJNE    A,#04H,?C0001?ADC
+0034D2         ?C0002?ADC:
    25: 		g_variable.battery_level_full = m_adc3vValue;
-00364F 904C93            MOV     DPTR,#m_adc3vValue
-003652 E0                MOVX    A,@DPTR
-003653 FF                MOV     R7,A
-003654 A3                INC     DPTR
-003655 E0                MOVX    A,@DPTR
-003656 904CFA            MOV     DPTR,#g_variable+03BH
-003659 CF                XCH     A,R7
-00365A F0                MOVX    @DPTR,A
-00365B A3                INC     DPTR
-00365C EF                MOV     A,R7
-00365D F0                MOVX    @DPTR,A
+0034D2 904C93            MOV     DPTR,#m_adc3vValue
+0034D5 E0                MOVX    A,@DPTR
+0034D6 FF                MOV     R7,A
+0034D7 A3                INC     DPTR
+0034D8 E0                MOVX    A,@DPTR
+0034D9 904CFA            MOV     DPTR,#g_variable+03BH
+0034DC CF                XCH     A,R7
+0034DD F0                MOVX    @DPTR,A
+0034DE A3                INC     DPTR
+0034DF EF                MOV     A,R7
+0034E0 F0                MOVX    @DPTR,A
    26: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V2+m_adc0vBase;
-00365E 904C91            MOV     DPTR,#m_adc0vBase
-003661 E0                MOVX    A,@DPTR
-003662 FE                MOV     R6,A
-003663 A3                INC     DPTR
-003664 E0                MOVX    A,@DPTR
-003665 FF                MOV     R7,A
-003666 C3                CLR     C
-003667 904C94            MOV     DPTR,#m_adc3vValue+01H
-00366A E0                MOVX    A,@DPTR
-00366B 9F                SUBB    A,R7
-00366C FD                MOV     R5,A
-00366D 904C93            MOV     DPTR,#m_adc3vValue
-003670 E0                MOVX    A,@DPTR
-003671 9E                SUBB    A,R6
-003672 FC                MOV     R4,A
-003673 E4                CLR     A
-003674 120206            LCALL   ?C?FCASTI
-003677 7BA4              MOV     R3,#0A4H
-003679 7A70              MOV     R2,#070H
-00367B 793D              MOV     R1,#03DH
-00367D 783F              MOV     R0,#03FH
-00367F 1200FB            LCALL   ?C?FPMUL
-003682 C004              PUSH    AR4
-003684 C005              PUSH    AR5
-003686 C006              PUSH    AR6
-003688 C007              PUSH    AR7
-00368A 904C91            MOV     DPTR,#m_adc0vBase
-00368D E0                MOVX    A,@DPTR
-00368E FC                MOV     R4,A
-00368F A3                INC     DPTR
-003690 E0                MOVX    A,@DPTR
-003691 FD                MOV     R5,A
-003692 E4                CLR     A
-003693 120206            LCALL   ?C?FCASTI
-003696 D003              POP     AR3
-003698 D002              POP     AR2
-00369A D001              POP     AR1
-00369C D000              POP     AR0
-00369E 12000A            LCALL   ?C?FPADD
-0036A1 12023F            LCALL   ?C?CASTF
-0036A4 904CDE            MOV     DPTR,#g_variable+01FH
-0036A7 EE                MOV     A,R6
-0036A8 F0                MOVX    @DPTR,A
-0036A9 A3                INC     DPTR
-0036AA EF                MOV     A,R7
-0036AB F0                MOVX    @DPTR,A
+0034E1 904C91            MOV     DPTR,#m_adc0vBase
+0034E4 E0                MOVX    A,@DPTR
+0034E5 FE                MOV     R6,A
+0034E6 A3                INC     DPTR
+0034E7 E0                MOVX    A,@DPTR
+0034E8 FF                MOV     R7,A
+0034E9 C3                CLR     C
+0034EA 904C94            MOV     DPTR,#m_adc3vValue+01H
+0034ED E0                MOVX    A,@DPTR
+0034EE 9F                SUBB    A,R7
+0034EF FD                MOV     R5,A
+0034F0 904C93            MOV     DPTR,#m_adc3vValue
+0034F3 E0                MOVX    A,@DPTR
+0034F4 9E                SUBB    A,R6
+0034F5 FC                MOV     R4,A
+0034F6 E4                CLR     A
+0034F7 120206            LCALL   ?C?FCASTI
+0034FA 7BA4              MOV     R3,#0A4H
+0034FC 7A70              MOV     R2,#070H
+0034FE 793D              MOV     R1,#03DH
+003500 783F              MOV     R0,#03FH
+003502 1200FB            LCALL   ?C?FPMUL
+003505 C004              PUSH    AR4
+003507 C005              PUSH    AR5
+003509 C006              PUSH    AR6
+00350B C007              PUSH    AR7
+00350D 904C91            MOV     DPTR,#m_adc0vBase
+003510 E0                MOVX    A,@DPTR
+003511 FC                MOV     R4,A
+003512 A3                INC     DPTR
+003513 E0                MOVX    A,@DPTR
+003514 FD                MOV     R5,A
+003515 E4                CLR     A
+003516 120206            LCALL   ?C?FCASTI
+003519 D003              POP     AR3
+00351B D002              POP     AR2
+00351D D001              POP     AR1
+00351F D000              POP     AR0
+003521 12000A            LCALL   ?C?FPADD
+003524 12023F            LCALL   ?C?CASTF
+003527 904CDE            MOV     DPTR,#g_variable+01FH
+00352A EE                MOV     A,R6
+00352B F0                MOVX    @DPTR,A
+00352C A3                INC     DPTR
+00352D EF                MOV     A,R7
+00352E F0                MOVX    @DPTR,A
    27: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V0+m_adc0vBase;
-0036AC 904C91            MOV     DPTR,#m_adc0vBase
-0036AF E0                MOVX    A,@DPTR
-0036B0 FE                MOV     R6,A
-0036B1 A3                INC     DPTR
-0036B2 E0                MOVX    A,@DPTR
-0036B3 FF                MOV     R7,A
-0036B4 C3                CLR     C
-0036B5 904C94            MOV     DPTR,#m_adc3vValue+01H
-0036B8 E0                MOVX    A,@DPTR
-0036B9 9F                SUBB    A,R7
-0036BA FD                MOV     R5,A
-0036BB 904C93            MOV     DPTR,#m_adc3vValue
-0036BE E0                MOVX    A,@DPTR
-0036BF 9E                SUBB    A,R6
-0036C0 FC                MOV     R4,A
-0036C1 E4                CLR     A
-0036C2 120206            LCALL   ?C?FCASTI
-0036C5 7BD7              MOV     R3,#0D7H
-0036C7 7AA3              MOV     R2,#0A3H
-0036C9 7930              MOV     R1,#030H
-0036CB 783F              MOV     R0,#03FH
-0036CD 1200FB            LCALL   ?C?FPMUL
-0036D0 C004              PUSH    AR4
-0036D2 C005              PUSH    AR5
-0036D4 C006              PUSH    AR6
-0036D6 C007              PUSH    AR7
-0036D8 904C91            MOV     DPTR,#m_adc0vBase
-0036DB E0                MOVX    A,@DPTR
-0036DC FC                MOV     R4,A
-0036DD A3                INC     DPTR
-0036DE E0                MOVX    A,@DPTR
-0036DF FD                MOV     R5,A
-0036E0 E4                CLR     A
-0036E1 120206            LCALL   ?C?FCASTI
-0036E4 D003              POP     AR3
-0036E6 D002              POP     AR2
-0036E8 D001              POP     AR1
-0036EA D000              POP     AR0
-0036EC 12000A            LCALL   ?C?FPADD
-0036EF 12023F            LCALL   ?C?CASTF
-0036F2 904CE0            MOV     DPTR,#g_variable+021H
-0036F5 EE                MOV     A,R6
-0036F6 F0                MOVX    @DPTR,A
-0036F7 A3                INC     DPTR
-0036F8 EF                MOV     A,R7
-0036F9 F0                MOVX    @DPTR,A
+00352F 904C91            MOV     DPTR,#m_adc0vBase
+003532 E0                MOVX    A,@DPTR
+003533 FE                MOV     R6,A
+003534 A3                INC     DPTR
+003535 E0                MOVX    A,@DPTR
+003536 FF                MOV     R7,A
+003537 C3                CLR     C
+003538 904C94            MOV     DPTR,#m_adc3vValue+01H
+00353B E0                MOVX    A,@DPTR
+00353C 9F                SUBB    A,R7
+00353D FD                MOV     R5,A
+00353E 904C93            MOV     DPTR,#m_adc3vValue
+003541 E0                MOVX    A,@DPTR
+003542 9E                SUBB    A,R6
+003543 FC                MOV     R4,A
+003544 E4                CLR     A
+003545 120206            LCALL   ?C?FCASTI
+003548 7BD7              MOV     R3,#0D7H
+00354A 7AA3              MOV     R2,#0A3H
+00354C 7930              MOV     R1,#030H
+00354E 783F              MOV     R0,#03FH
+003550 1200FB            LCALL   ?C?FPMUL
+003553 C004              PUSH    AR4
+003555 C005              PUSH    AR5
+003557 C006              PUSH    AR6
+003559 C007              PUSH    AR7
+00355B 904C91            MOV     DPTR,#m_adc0vBase
+00355E E0                MOVX    A,@DPTR
+00355F FC                MOV     R4,A
+003560 A3                INC     DPTR
+003561 E0                MOVX    A,@DPTR
+003562 FD                MOV     R5,A
+003563 E4                CLR     A
+003564 120206            LCALL   ?C?FCASTI
+003567 D003              POP     AR3
+003569 D002              POP     AR2
+00356B D001              POP     AR1
+00356D D000              POP     AR0
+00356F 12000A            LCALL   ?C?FPADD
+003572 12023F            LCALL   ?C?CASTF
+003575 904CE0            MOV     DPTR,#g_variable+021H
+003578 EE                MOV     A,R6
+003579 F0                MOVX    @DPTR,A
+00357A A3                INC     DPTR
+00357B EF                MOV     A,R7
+00357C F0                MOVX    @DPTR,A
    28: #endif
    29: #ifdef ADC_TYPE_GPIO
    30: 	m_adc_channel = ADC_CHANNEL;
@@ -10722,7 +10514,7 @@
    40: 	m_le_battery_level_display_enable = 0;
    41: #endif
    42: }
-0036FA 22                RET     
+00357D 22                RET     
 ----- FUNCTION YC_adc_init (END) -------
 
 
@@ -10730,21 +10522,21 @@
  FILE: 'sys.c'
   111: static void kb_cb_Hid(byte *p,byte len) {
   112: 	//p[0] is hid type,always is 1(kb) now
-0036FB 904F01            MOV     DPTR,#len
-0036FE ED                MOV     A,R5
-0036FF F0                MOVX    @DPTR,A
+00357E 904F01            MOV     DPTR,#len
+003581 ED                MOV     A,R5
+003582 F0                MOVX    @DPTR,A
 ;---- Variable 'p' assigned to Register 'R1/R2/R3' ----
   113: 	byte temp = p[1];
-003700 900001            MOV     DPTR,#01H
-003703 1203CF            LCALL   ?C?CLDOPTR
-003706 904F02            MOV     DPTR,#temp
-003709 F0                MOVX    @DPTR,A
+003583 900001            MOV     DPTR,#01H
+003586 1203CF            LCALL   ?C?CLDOPTR
+003589 904F02            MOV     DPTR,#temp
+00358C F0                MOVX    @DPTR,A
   114: 
   115: 	if (len<2) {
   116: 		return;
   117: 	}
   118: }
-00370A 22                RET     
+00358D 22                RET     
 ----- FUNCTION _kb_cb_Hid (END) -------
 
 
@@ -10754,177 +10546,177 @@
     6: {
     7: 	YC_System_Main();
     8: }
-00370B 021B98            LJMP    YC_System_Main
+00358E 021B98            LJMP    YC_System_Main
 ----- FUNCTION main (END) -------
 
 
 ----- FUNCTION _IPC_TxBREDRHidData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-00370E 900BE7            MOV     DPTR,#ipcSendBuff
-003711 7403              MOV     A,#03H
-003713 F0                MOVX    @DPTR,A
-003714 ED                MOV     A,R5
-003715 6003              JZ      ?C0017?IPC
-003717         ?C0016?IPC:
-003717 120FD1            LCALL   _IPC_TxData
-00371A         ?C0017?IPC:
-00371A 22                RET     
+003591 900BE7            MOV     DPTR,#ipcSendBuff
+003594 7403              MOV     A,#03H
+003596 F0                MOVX    @DPTR,A
+003597 ED                MOV     A,R5
+003598 6003              JZ      ?C0017?IPC
+00359A         ?C0016?IPC:
+00359A 120FD1            LCALL   _IPC_TxData
+00359D         ?C0017?IPC:
+00359D 22                RET     
 ----- FUNCTION _IPC_TxBREDRHidData (END) -------
 
 
 ----- FUNCTION _IPC_Tx24GData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-00371B 900BE7            MOV     DPTR,#ipcSendBuff
-00371E 7406              MOV     A,#06H
-003720 F0                MOVX    @DPTR,A
-003721 020FD1            LJMP    _IPC_TxData
+00359E 900BE7            MOV     DPTR,#ipcSendBuff
+0035A1 7406              MOV     A,#06H
+0035A3 F0                MOVX    @DPTR,A
+0035A4 020FD1            LJMP    _IPC_TxData
 ----- FUNCTION _IPC_Tx24GData (END) -------
 
 
 ----- FUNCTION _IPC_TxSppData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-003724 900BE7            MOV     DPTR,#ipcSendBuff
-003727 7404              MOV     A,#04H
-003729 F0                MOVX    @DPTR,A
-00372A 020FD1            LJMP    _IPC_TxData
+0035A7 900BE7            MOV     DPTR,#ipcSendBuff
+0035AA 7404              MOV     A,#04H
+0035AC F0                MOVX    @DPTR,A
+0035AD 020FD1            LJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxSppData (END) -------
 
 
 ----- FUNCTION _IPC_TxBleData (BEGIN) -----
 ;---- Variable 'len' assigned to Register 'R5' ----
 ;---- Variable 'dt' assigned to Register 'R1/R2/R3' ----
-00372D 900BE7            MOV     DPTR,#ipcSendBuff
-003730 7405              MOV     A,#05H
-003732 F0                MOVX    @DPTR,A
-003733 020FD1            LJMP    _IPC_TxData
+0035B0 900BE7            MOV     DPTR,#ipcSendBuff
+0035B3 7405              MOV     A,#05H
+0035B5 F0                MOVX    @DPTR,A
+0035B6 020FD1            LJMP    _IPC_TxData
 ----- FUNCTION _IPC_TxBleData (END) -------
 
 
 ----- FUNCTION IPC_GetBBDIsconnectReason (BEGIN) -----
-003736 900446            MOV     DPTR,#bbDisReason
-003739 E0                MOVX    A,@DPTR
-00373A FF                MOV     R7,A
-00373B 22                RET     
+0035B9 900446            MOV     DPTR,#bbDisReason
+0035BC E0                MOVX    A,@DPTR
+0035BD FF                MOV     R7,A
+0035BE 22                RET     
 ----- FUNCTION IPC_GetBBDIsconnectReason (END) -------
 
 
 ----- FUNCTION IPC_AbandonLpm (BEGIN) -----
-00373C 900B7F            MOV     DPTR,#lpm_flag
-00373F 7401              MOV     A,#01H
-003741 F0                MOVX    @DPTR,A
-003742 E4                CLR     A
-003743 900B7E            MOV     DPTR,#current_task
-003746 F0                MOVX    @DPTR,A
-003747 22                RET     
+0035BF 900B7F            MOV     DPTR,#lpm_flag
+0035C2 7401              MOV     A,#01H
+0035C4 F0                MOVX    @DPTR,A
+0035C5 E4                CLR     A
+0035C6 900B7E            MOV     DPTR,#current_task
+0035C9 F0                MOVX    @DPTR,A
+0035CA 22                RET     
 ----- FUNCTION IPC_AbandonLpm (END) -------
 
 
 ----- FUNCTION YC_Ice_break (BEGIN) -----
-003748 908280            MOV     DPTR,#08280H
-00374B 7401              MOV     A,#01H
-00374D F0                MOVX    @DPTR,A
-00374E 22                RET     
+0035CB 908280            MOV     DPTR,#08280H
+0035CE 7401              MOV     A,#01H
+0035D0 F0                MOVX    @DPTR,A
+0035D1 22                RET     
 ----- FUNCTION YC_Ice_break (END) -------
 
 
 ----- FUNCTION _GPIO_ClearWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-00374F EF                MOV     A,R7
-003750 F4                CPL     A
-003751 603A              JZ      ?C0023?GPIO
-003753         ?C0022?GPIO:
-003753 EF                MOV     A,R7
-003754 5407              ANL     A,#07H
-003756 FE                MOV     R6,A
+0035D2 EF                MOV     A,R7
+0035D3 F4                CPL     A
+0035D4 603A              JZ      ?C0023?GPIO
+0035D6         ?C0022?GPIO:
+0035D6 EF                MOV     A,R7
+0035D7 5407              ANL     A,#07H
+0035D9 FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-003757 EF                MOV     A,R7
-003758 13                RRC     A
-003759 13                RRC     A
-00375A 13                RRC     A
-00375B 5403              ANL     A,#03H
-00375D FF                MOV     R7,A
+0035DA EF                MOV     A,R7
+0035DB 13                RRC     A
+0035DC 13                RRC     A
+0035DD 13                RRC     A
+0035DE 5403              ANL     A,#03H
+0035E0 FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-00375E 24A3              ADD     A,#LOW YC_GPIOWakeupL
-003760 F582              MOV     DPL,A
-003762 E4                CLR     A
-003763 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-003765 F583              MOV     DPH,A
-003767 C083              PUSH    DPH
-003769 C082              PUSH    DPL
-00376B E0                MOVX    A,@DPTR
-00376C FD                MOV     R5,A
-00376D 7401              MOV     A,#01H
-00376F A806              MOV     R0,AR6
-003771 08                INC     R0
-003772 8002              SJMP    ?C0043?GPIO
-003774         ?C0042?GPIO:
-003774 C3                CLR     C
-003775 33                RLC     A
-003776         ?C0043?GPIO:
-003776 D8FC              DJNZ    R0,?C0042?GPIO
-003778 F4                CPL     A
-003779 FC                MOV     R4,A
-00377A 5D                ANL     A,R5
-00377B D082              POP     DPL
-00377D D083              POP     DPH
-00377F F0                MOVX    @DPTR,A
-003780 74A7              MOV     A,#LOW YC_GPIOWakeupH
-003782 2F                ADD     A,R7
-003783 F582              MOV     DPL,A
-003785 E4                CLR     A
-003786 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-003788 F583              MOV     DPH,A
-00378A E0                MOVX    A,@DPTR
-00378B 5C                ANL     A,R4
-00378C F0                MOVX    @DPTR,A
-00378D         ?C0023?GPIO:
-00378D 22                RET     
+0035E1 24A3              ADD     A,#LOW YC_GPIOWakeupL
+0035E3 F582              MOV     DPL,A
+0035E5 E4                CLR     A
+0035E6 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+0035E8 F583              MOV     DPH,A
+0035EA C083              PUSH    DPH
+0035EC C082              PUSH    DPL
+0035EE E0                MOVX    A,@DPTR
+0035EF FD                MOV     R5,A
+0035F0 7401              MOV     A,#01H
+0035F2 A806              MOV     R0,AR6
+0035F4 08                INC     R0
+0035F5 8002              SJMP    ?C0043?GPIO
+0035F7         ?C0042?GPIO:
+0035F7 C3                CLR     C
+0035F8 33                RLC     A
+0035F9         ?C0043?GPIO:
+0035F9 D8FC              DJNZ    R0,?C0042?GPIO
+0035FB F4                CPL     A
+0035FC FC                MOV     R4,A
+0035FD 5D                ANL     A,R5
+0035FE D082              POP     DPL
+003600 D083              POP     DPH
+003602 F0                MOVX    @DPTR,A
+003603 74A7              MOV     A,#LOW YC_GPIOWakeupH
+003605 2F                ADD     A,R7
+003606 F582              MOV     DPL,A
+003608 E4                CLR     A
+003609 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+00360B F583              MOV     DPH,A
+00360D E0                MOVX    A,@DPTR
+00360E 5C                ANL     A,R4
+00360F F0                MOVX    @DPTR,A
+003610         ?C0023?GPIO:
+003610 22                RET     
 ----- FUNCTION _GPIO_ClearWakeup (END) -------
 
 
 ----- FUNCTION GPIO_fillpd (BEGIN) -----
 ;---- Variable 'i' assigned to Register 'R7' ----
-00378E E4                CLR     A
-00378F FF                MOV     R7,A
-003790         ?C0026?GPIO:
-003790 EF                MOV     A,R7
-003791 FD                MOV     R5,A
-003792 7C00              MOV     R4,#00H
-003794 2478              ADD     A,#078H
-003796 FB                MOV     R3,A
-003797 EC                MOV     A,R4
-003798 3480              ADDC    A,#080H
-00379A 8B82              MOV     DPL,R3
-00379C F583              MOV     DPH,A
-00379E E0                MOVX    A,@DPTR
-00379F FE                MOV     R6,A
-0037A0 ED                MOV     A,R5
-0037A1 2470              ADD     A,#070H
-0037A3 FD                MOV     R5,A
-0037A4 EC                MOV     A,R4
-0037A5 3480              ADDC    A,#080H
-0037A7 8D82              MOV     DPL,R5
-0037A9 F583              MOV     DPH,A
-0037AB E0                MOVX    A,@DPTR
-0037AC 4E                ORL     A,R6
-0037AD F4                CPL     A
-0037AE FE                MOV     R6,A
-0037AF EF                MOV     A,R7
-0037B0 247C              ADD     A,#07CH
-0037B2 FD                MOV     R5,A
-0037B3 EC                MOV     A,R4
-0037B4 3480              ADDC    A,#080H
-0037B6 8D82              MOV     DPL,R5
-0037B8 F583              MOV     DPH,A
-0037BA EE                MOV     A,R6
-0037BB F0                MOVX    @DPTR,A
-0037BC 0F                INC     R7
-0037BD EF                MOV     A,R7
-0037BE B404CF            CJNE    A,#04H,?C0026?GPIO
-0037C1 22                RET     
+003611 E4                CLR     A
+003612 FF                MOV     R7,A
+003613         ?C0026?GPIO:
+003613 EF                MOV     A,R7
+003614 FD                MOV     R5,A
+003615 7C00              MOV     R4,#00H
+003617 2478              ADD     A,#078H
+003619 FB                MOV     R3,A
+00361A EC                MOV     A,R4
+00361B 3480              ADDC    A,#080H
+00361D 8B82              MOV     DPL,R3
+00361F F583              MOV     DPH,A
+003621 E0                MOVX    A,@DPTR
+003622 FE                MOV     R6,A
+003623 ED                MOV     A,R5
+003624 2470              ADD     A,#070H
+003626 FD                MOV     R5,A
+003627 EC                MOV     A,R4
+003628 3480              ADDC    A,#080H
+00362A 8D82              MOV     DPL,R5
+00362C F583              MOV     DPH,A
+00362E E0                MOVX    A,@DPTR
+00362F 4E                ORL     A,R6
+003630 F4                CPL     A
+003631 FE                MOV     R6,A
+003632 EF                MOV     A,R7
+003633 247C              ADD     A,#07CH
+003635 FD                MOV     R5,A
+003636 EC                MOV     A,R4
+003637 3480              ADDC    A,#080H
+003639 8D82              MOV     DPL,R5
+00363B F583              MOV     DPH,A
+00363D EE                MOV     A,R6
+00363E F0                MOVX    @DPTR,A
+00363F 0F                INC     R7
+003640 EF                MOV     A,R7
+003641 B404CF            CJNE    A,#04H,?C0026?GPIO
+003644 22                RET     
 ----- FUNCTION GPIO_fillpd (END) -------
 
 
Index: c51/output/FW.HTM
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/output/FW.HTM	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/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>09/13/2023  18:54:20</b><p>
+Creation time: <b>10/11/2023  12:23:52</b><p>
 
 <hr>
 
@@ -55,7 +55,7 @@
 <li><a href="#S109">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S107"></a>?PR?_KB_CB_HID?SYS (C:0036FBH - C:00370AH)</h2>
+<h2><a name="S107"></a>?PR?_KB_CB_HID?SYS (C:00357EH - C:00358DH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S216">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -109,7 +109,7 @@
 <li><a href="#S113">?PR?YC_WAIT_DISCONNECT_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S117"></a>?PR?KB_CB_TIMER100MS?SYS (C:0034B5H - C:0035F9H)</h2>
+<h2><a name="S117"></a>?PR?KB_CB_TIMER100MS?SYS (C:003338H - C:00347CH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=14 Bytes (<a href="#S56">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -141,21 +141,21 @@
 <li><a href="#S126">?PR?MAIN?RAM</a></li>
 </ul>
 
-<h2><a name="S126"></a>?PR?MAIN?RAM (C:00370BH - C:00370DH)</h2>
+<h2><a name="S126"></a>?PR?MAIN?RAM (C:00358EH - C:003590H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=18 Bytes (<a href="#S119">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S119">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S137"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:00370EH - C:00371AH)</h2>
+<h2><a name="S137"></a>?PR?_IPC_TXBREDRHIDDATA?IPC (C:003591H - C:00359DH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S135">?PR?_IPC_TXDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S135">?PR?_IPC_TXDATA?IPC</a></li>
 </ul>
 
-<h2><a name="S139"></a>?PR?_IPC_TXSPPDATA?IPC (C:003724H - C:00372CH)</h2>
+<h2><a name="S139"></a>?PR?_IPC_TXSPPDATA?IPC (C:0035A7H - C:0035AFH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S135">?PR?_IPC_TXDATA?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -416,19 +416,11 @@
 <li><a href="#S66">?PR?_KB_MOTION_KEYSCAN?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S70"></a>?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS (C:002FEAH - C:00300EH)</h2>
-<p><br><b>Maximum Stack:</b> Top=8 Bytes (<a href="#S71">?PR?_KEY_FN_FUNCTION?KB_PROCESS</a>)<p>
-<p><br><b>Called from:</b></p>
-<ul>
-<li><a href="#S71">?PR?_KEY_FN_FUNCTION?KB_PROCESS</a></li>
-</ul>
-
-<h2><a name="S71"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:00300FH - C:00335BH)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S70">?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS</a>) Top=6 Bytes (<a href="#S92">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
+<h2><a name="S71"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:00300FH - C:0031DEH)</h2>
+<p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S216">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S92">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S216">?C?LIB_CODE</a></li>
-<li><a href="#S70">?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS</a></li>
 </ul>
 
 <p><br><b>Called from:</b></p>
@@ -450,7 +442,7 @@
 <li><a href="#S66">?PR?_KB_MOTION_KEYSCAN?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S75"></a>?PR?_GPIO_SETINPUT_NO_PUPD?KEYSCAN (C:00335CH - C:00337FH)</h2>
+<h2><a name="S75"></a>?PR?_GPIO_SETINPUT_NO_PUPD?KEYSCAN (C:0031DFH - C:003202H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S187">?PR?_GPIO_SETPD?GPIO</a>) Top=6 Bytes (<a href="#S83">?PR?KSCOLINITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -492,7 +484,7 @@
 <li><a href="#S92">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S81"></a>?PR?KSRAWINITIALIZE?KEYSCAN (C:003462H - C:00347EH)</h2>
+<h2><a name="S81"></a>?PR?KSRAWINITIALIZE?KEYSCAN (C:0032E5H - C:003301H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S191">?PR?_GPIO_SETINPUT?GPIO</a>) Top=6 Bytes (<a href="#S85">?PR?KS_INITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -504,7 +496,7 @@
 <li><a href="#S85">?PR?KS_INITIALIZE?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S83"></a>?PR?KSCOLINITIALIZE?KEYSCAN (C:003432H - C:00344DH)</h2>
+<h2><a name="S83"></a>?PR?KSCOLINITIALIZE?KEYSCAN (C:0032B5H - C:0032D0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S75">?PR?_GPIO_SETINPUT_NO_PUPD?KEYSCAN</a>) Top=4 Bytes (<a href="#S85">?PR?KS_INITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -516,7 +508,7 @@
 <li><a href="#S85">?PR?KS_INITIALIZE?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S85"></a>?PR?KS_INITIALIZE?KEYSCAN (C:00344EH - C:00345AH)</h2>
+<h2><a name="S85"></a>?PR?KS_INITIALIZE?KEYSCAN (C:0032D1H - C:0032DDH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=10 Bytes (<a href="#S81">?PR?KSRAWINITIALIZE?KEYSCAN</a>) Top=4 Bytes (<a href="#S101">?PR?SYSTEM_HARDWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -600,7 +592,7 @@
 <li><a href="#S119">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S96"></a>?PR?LED_DEVICE_POWERON?LED (C:003492H - C:0034B4H)</h2>
+<h2><a name="S96"></a>?PR?LED_DEVICE_POWERON?LED (C:003315H - C:003337H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S183">?PR?_GPIO_SETOUT?GPIO</a>) Top=2 Bytes (<a href="#S109">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -652,7 +644,7 @@
 <li><a href="#S102">?PR?SYSTEM_SOFTWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S100"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:00347FH - C:003491H)</h2>
+<h2><a name="S100"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:003302H - C:003314H)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S101">?PR?SYSTEM_HARDWARE_INIT?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -660,7 +652,7 @@
 <li><a href="#S101">?PR?SYSTEM_HARDWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S101"></a>?PR?SYSTEM_HARDWARE_INIT?SYS (C:00345BH - C:003461H)</h2>
+<h2><a name="S101"></a>?PR?SYSTEM_HARDWARE_INIT?SYS (C:0032DEH - C:0032E4H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=12 Bytes (<a href="#S85">?PR?KS_INITIALIZE?KEYSCAN</a>) Top=2 Bytes (<a href="#S109">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -674,7 +666,7 @@
 <li><a href="#S109">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S102"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:0035FAH - C:00362EH)</h2>
+<h2><a name="S102"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:00347DH - C:0034B1H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S122">?PR?YC_ADC_INIT?ADC</a>) Top=2 Bytes (<a href="#S109">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -791,7 +783,7 @@
 <li><a href="#S119">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S122"></a>?PR?YC_ADC_INIT?ADC (C:00362FH - C:0036FAH)</h2>
+<h2><a name="S122"></a>?PR?YC_ADC_INIT?ADC (C:0034B2H - C:00357DH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S216">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S102">?PR?SYSTEM_SOFTWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -898,7 +890,7 @@
 <li><a href="#S139">?PR?_IPC_TXSPPDATA?IPC</a></li>
 </ul>
 
-<h2><a name="S138"></a>?PR?_IPC_TX24GDATA?IPC (C:00371BH - C:003723H)</h2>
+<h2><a name="S138"></a>?PR?_IPC_TX24GDATA?IPC (C:00359EH - C:0035A6H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S135">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S56">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -910,7 +902,7 @@
 <li><a href="#S56">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S140"></a>?PR?_IPC_TXBLEDATA?IPC (C:00372DH - C:003735H)</h2>
+<h2><a name="S140"></a>?PR?_IPC_TXBLEDATA?IPC (C:0035B0H - C:0035B8H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S135">?PR?_IPC_TXDATA?IPC</a>) Top=8 Bytes (<a href="#S56">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -935,7 +927,7 @@
 <li><a href="#S119">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S144"></a>?PR?IPC_ABANDONLPM?IPC (C:00373CH - C:003747H)</h2>
+<h2><a name="S144"></a>?PR?IPC_ABANDONLPM?IPC (C:0035BFH - C:0035CAH)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S119">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -1044,7 +1036,7 @@
 <li><a href="#S92">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S177"></a>?PR?_GPIOSETBIT?GPIO (C:0033D1H - C:003431H)</h2>
+<h2><a name="S177"></a>?PR?_GPIOSETBIT?GPIO (C:003254H - C:0032B4H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S216">?C?LIB_CODE</a>) Top=14 Bytes (<a href="#S183">?PR?_GPIO_SETOUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1100,7 +1092,7 @@
 <li><a href="#S15">?PR?YC_UPDATE_EEPROM_DATA?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S185"></a>?PR?_GPIO_SETPU?GPIO (C:003380H - C:003390H)</h2>
+<h2><a name="S185"></a>?PR?_GPIO_SETPU?GPIO (C:003203H - C:003213H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S177">?PR?_GPIOSETBIT?GPIO</a>) Top=10 Bytes (<a href="#S191">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1114,7 +1106,7 @@
 <li><a href="#S193">?PR?_GPIO_SETOUTPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S187"></a>?PR?_GPIO_SETPD?GPIO (C:003391H - C:0033A1H)</h2>
+<h2><a name="S187"></a>?PR?_GPIO_SETPD?GPIO (C:003214H - C:003224H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S177">?PR?_GPIOSETBIT?GPIO</a>) Top=10 Bytes (<a href="#S191">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1127,7 +1119,7 @@
 <li><a href="#S75">?PR?_GPIO_SETINPUT_NO_PUPD?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S189"></a>?PR?_GPIO_SETOE?GPIO (C:0033C0H - C:0033D0H)</h2>
+<h2><a name="S189"></a>?PR?_GPIO_SETOE?GPIO (C:003243H - C:003253H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S177">?PR?_GPIOSETBIT?GPIO</a>) Top=10 Bytes (<a href="#S191">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1141,7 +1133,7 @@
 <li><a href="#S193">?PR?_GPIO_SETOUTPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S191"></a>?PR?_GPIO_SETINPUT?GPIO (C:0033A2H - C:0033BFH)</h2>
+<h2><a name="S191"></a>?PR?_GPIO_SETINPUT?GPIO (C:003225H - C:003242H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S187">?PR?_GPIO_SETPD?GPIO</a>) Top=8 Bytes (<a href="#S81">?PR?KSRAWINITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -1194,7 +1186,7 @@
 <li><a href="#S111">?PR?LED_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S204"></a>?PR?GPIO_FILLPD?GPIO (C:00378EH - C:0037C1H)</h2>
+<h2><a name="S204"></a>?PR?GPIO_FILLPD?GPIO (C:003611H - C:003644H)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S86">?PR?KS_UNISTALL?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
Index: c51/output/FW.MAP
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/output/FW.MAP	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/c51/output/FW.MAP	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               09/13/2023  18:54:19  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               10/11/2023  12:23:52  PAGE 1
 
 
 LX51 LINKER/LOCATER V4.41, INVOKED BY:
@@ -86,7 +86,7 @@
 BASE        START       END         USED      MEMORY CLASS
 ==========================================================
 X:000000H   X:004DD0H   X:004F40H   00038DH   XDATA
-C:000000H   C:000000H   C:00FFFFH   00370CH   CODE
+C:000000H   C:000000H   C:00FFFFH   00358FH   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
@@ -198,33 +198,33 @@
 002E3CH   002EE5H   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
 002EE6H   002FE9H   000104H   BYTE   UNIT     CODE           ?PR?_KB_DEVICE_SELECT?KB_PROCESS
 002FEAH   00300EH   000025H   BYTE   UNIT     CODE           ?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS
-00300FH   00335BH   00034DH   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
-00335CH   00337FH   000024H   BYTE   UNIT     CODE           ?PR?_GPIO_SETINPUT_NO_PUPD?KEYSCAN
-003380H   003390H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPU?GPIO
-003391H   0033A1H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPD?GPIO
-0033A2H   0033BFH   00001EH   BYTE   UNIT     CODE           ?PR?_GPIO_SETINPUT?GPIO
-0033C0H   0033D0H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETOE?GPIO
-0033D1H   003431H   000061H   BYTE   UNIT     CODE           ?PR?_GPIOSETBIT?GPIO
-003432H   00344DH   00001CH   BYTE   UNIT     CODE           ?PR?KSCOLINITIALIZE?KEYSCAN
-00344EH   00345AH   00000DH   BYTE   UNIT     CODE           ?PR?KS_INITIALIZE?KEYSCAN
-00345BH   003461H   000007H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_INIT?SYS
-003462H   00347EH   00001DH   BYTE   UNIT     CODE           ?PR?KSRAWINITIALIZE?KEYSCAN
-00347FH   003491H   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
-003492H   0034B4H   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
-0034B5H   0035F9H   000145H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
-0035FAH   00362EH   000035H   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
-00362FH   0036FAH   0000CCH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
-0036FBH   00370AH   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
-00370BH   00370DH   000003H   BYTE   UNIT     CODE           ?PR?MAIN?RAM
-00370EH   00371AH   00000DH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
-00371BH   003723H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TX24GDATA?IPC
-003724H   00372CH   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
-00372DH   003735H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
-003736H   00373BH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
-00373CH   003747H   00000CH   BYTE   UNIT     CODE           ?PR?IPC_ABANDONLPM?IPC
-003748H   00374EH   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
-00374FH   00378DH   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
-00378EH   0037C1H   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
+00300FH   0031DEH   0001D0H   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
+0031DFH   003202H   000024H   BYTE   UNIT     CODE           ?PR?_GPIO_SETINPUT_NO_PUPD?KEYSCAN
+003203H   003213H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPU?GPIO
+003214H   003224H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPD?GPIO
+003225H   003242H   00001EH   BYTE   UNIT     CODE           ?PR?_GPIO_SETINPUT?GPIO
+003243H   003253H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETOE?GPIO
+003254H   0032B4H   000061H   BYTE   UNIT     CODE           ?PR?_GPIOSETBIT?GPIO
+0032B5H   0032D0H   00001CH   BYTE   UNIT     CODE           ?PR?KSCOLINITIALIZE?KEYSCAN
+0032D1H   0032DDH   00000DH   BYTE   UNIT     CODE           ?PR?KS_INITIALIZE?KEYSCAN
+0032DEH   0032E4H   000007H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_INIT?SYS
+0032E5H   003301H   00001DH   BYTE   UNIT     CODE           ?PR?KSRAWINITIALIZE?KEYSCAN
+003302H   003314H   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
+003315H   003337H   000023H   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWERON?LED
+003338H   00347CH   000145H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
+00347DH   0034B1H   000035H   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
+0034B2H   00357DH   0000CCH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
+00357EH   00358DH   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
+00358EH   003590H   000003H   BYTE   UNIT     CODE           ?PR?MAIN?RAM
+003591H   00359DH   00000DH   BYTE   UNIT     CODE           ?PR?_IPC_TXBREDRHIDDATA?IPC
+00359EH   0035A6H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TX24GDATA?IPC
+0035A7H   0035AFH   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXSPPDATA?IPC
+0035B0H   0035B8H   000009H   BYTE   UNIT     CODE           ?PR?_IPC_TXBLEDATA?IPC
+0035B9H   0035BEH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
+0035BFH   0035CAH   00000CH   BYTE   UNIT     CODE           ?PR?IPC_ABANDONLPM?IPC
+0035CBH   0035D1H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
+0035D2H   003610H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
+003611H   003644H   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?30
@@ -412,29 +412,29 @@
       01002D9CH   CODE     ---       _compare_str
       010017A8H   CODE     ---       _Delay1ms
       010022F1H   CODE     ---       _dmemcpy
-      0100374FH   CODE     ---       _GPIO_ClearWakeup
+      010035D2H   CODE     ---       _GPIO_ClearWakeup
       010022C3H   CODE     ---       _GPIO_FlipOutBit
       01001FBBH   CODE     ---       _GPIO_GetInputStatus
-      010033A2H   CODE     ---       _GPIO_SetInput
-      0100335CH   CODE     ---       _GPIO_SetInput_no_pupd
-      010033C0H   CODE     ---       _GPIO_Setoe
+      01003225H   CODE     ---       _GPIO_SetInput
+      010031DFH   CODE     ---       _GPIO_SetInput_no_pupd
+      01003243H   CODE     ---       _GPIO_Setoe
       0100122CH   CODE     ---       _GPIO_Setout
       01001A40H   CODE     ---       _GPIO_SetOutput
-      01003391H   CODE     ---       _GPIO_SetPd
-      01003380H   CODE     ---       _GPIO_SetPu
+      01003214H   CODE     ---       _GPIO_SetPd
+      01003203H   CODE     ---       _GPIO_SetPu
       01001CACH   CODE     ---       _GPIO_SetWakeup
       01001C99H   CODE     ---       _GPIO_SetWakeupByCurrentState
       01002089H   CODE     ---       _IIC_Read
       01002141H   CODE     ---       _IIC_write
       01001AE9H   CODE     ---       _IIC_WriteBlock
       01001FAEH   CODE     ---       _IPC_Initialize
-      0100371BH   CODE     ---       _IPC_Tx24GData
-      0100372DH   CODE     ---       _IPC_TxBleData
-      0100370EH   CODE     ---       _IPC_TxBREDRHidData
+      0100359EH   CODE     ---       _IPC_Tx24GData
+      010035B0H   CODE     ---       _IPC_TxBleData
+      01003591H   CODE     ---       _IPC_TxBREDRHidData
       01001413H   CODE     ---       _IPC_TxControlCmd
       01000FD1H   CODE     ---       _IPC_TxData
       01000C55H   CODE     ---       _IPC_TxHidData
-      01003724H   CODE     ---       _IPC_TxSppData
+      010035A7H   CODE     ---       _IPC_TxSppData
       01002FEAH   CODE     ---       _kb_combination_key_press
       01002EE6H   CODE     ---       _kb_device_select
       010008C0H   CODE     ---       _kb_motion_keyscan
@@ -473,12 +473,12 @@
       02004DDAH   XDATA    BYTE      fn_tx_flag
       02004CBFH   XDATA    ---       g_variable
       02004DD7H   XDATA    BYTE      get_24g_led_send
-      0100378EH   CODE     ---       GPIO_fillpd
+      01003611H   CODE     ---       GPIO_fillpd
       02004800H   XDATA    ---       hidBuff
       02004DE4H   XDATA    BYTE      iOS_rec_pinCode
-      0100373CH   CODE     ---       IPC_AbandonLpm
+      010035BFH   CODE     ---       IPC_AbandonLpm
       01001D4FH   CODE     ---       IPC_DealSingleStep
-      01003736H   CODE     ---       IPC_GetBBDIsconnectReason
+      010035B9H   CODE     ---       IPC_GetBBDIsconnectReason
       01002D54H   CODE     ---       IPC_IsTxBuffEmpty
       01001D41H   CODE     ---       IPC_WaitLpm
       02000550H   XDATA    ---       ipcPin
@@ -491,7 +491,7 @@
       02004DEBH   XDATA    BYTE      key_value_temp
       02004DE7H   XDATA    BYTE      keyCount
       0100293EH   CODE     ---       KS_GetCurrentEvt
-      0100344EH   CODE     ---       KS_Initialize
+      010032D1H   CODE     ---       KS_Initialize
       01002B98H   CODE     ---       KS_ScanMatrix
       01001C00H   CODE     ---       KS_Unistall
       02004213H   XDATA    BYTE      kscurrmult
@@ -507,7 +507,7 @@
       02004DDDH   XDATA    BYTE      le_send_battery_level_flag
       01001A1EH   CODE     ---       LED_all_shutdown
       010017C9H   CODE     ---       LED_device_poweroff
-      01003492H   CODE     ---       LED_device_poweron
+      01003315H   CODE     ---       LED_device_poweron
       010010F7H   CODE     ---       LED_handle
       0100227DH   CODE     ---       LED_timer500ms
       02004DDFH   XDATA    BYTE      long_press_flag
@@ -542,7 +542,7 @@
       02008010H   XDATA    BYTE      m_reset_reg
       020047F4H   XDATA    WORD      m_ui_state_map
       02000B81H   XDATA    BYTE      m_wakup_from_power_flag
-      0100370BH   CODE     ---       main
+      0100358EH   CODE     ---       main
       02004E51H   XDATA    BYTE      mult_key_status
       02004DF2H   XDATA    BYTE      mult_key_value
       02004E52H   XDATA    ---       multikey
@@ -559,10 +559,10 @@
       02004DECH   XDATA    BYTE      system_key_press
       010017C0H   CODE     ---       System_long_sleep
       01001D38H   CODE     ---       System_Reset_Connect
-      010035FAH   CODE     ---       System_Software_init
+      0100347DH   CODE     ---       System_Software_init
       01002335H   CODE     ---       YC_adc_check
       010022E0H   CODE     ---       YC_adc_check_timer500ms
-      0100362FH   CODE     ---       YC_adc_init
+      010034B2H   CODE     ---       YC_adc_init
       010018A0H   CODE     ---       YC_cancel_reconnect
       010010E2H   CODE     ---       YC_check_is_connected
       01001820H   CODE     ---       YC_check_need_reconnected
@@ -573,7 +573,7 @@
       01002046H   CODE     ---       YC_get_ble_ramdon_lap
       020000A7H   XDATA    ---       YC_GPIOWakeupH
       020000A3H   XDATA    ---       YC_GPIOWakeupL
-      01003748H   CODE     ---       YC_Ice_break
+      010035CBH   CODE     ---       YC_Ice_break
       01002234H   CODE     ---       YC_pairing_timerout_500ms
       01002017H   CODE     ---       YC_start_reconnect
       01001B98H   CODE     ---       YC_System_Main
@@ -1412,340 +1412,252 @@
 
       0100300FH   BLOCK     CODE     ---       LVL=0
       0100300FH   LINE      ---      ---       #654
-      01003013H   LINE      ---      ---       #655
-      01003013H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003013H   LINE      ---      ---       #656
-      01003018H   LINE      ---      ---       #658
-      0100301CH   LINE      ---      ---       #659
-      01003021H   LINE      ---      ---       #661
-      01003027H   LINE      ---      ---       #663
-      0100302AH   LINE      ---      ---       #664
-      0100302AH   LINE      ---      ---       #665
-      01003034H   LINE      ---      ---       #666
-      01003034H   LINE      ---      ---       #667
-      0100303AH   LINE      ---      ---       #668
-      0100303AH   LINE      ---      ---       #669
-      0100303CH   LINE      ---      ---       #670
-      01003044H   LINE      ---      ---       #671
-      01003044H   LINE      ---      ---       #672
-      0100304EH   LINE      ---      ---       #673
-      0100304EH   LINE      ---      ---       #674
-      01003054H   LINE      ---      ---       #675
-      01003054H   LINE      ---      ---       #676
-      01003056H   LINE      ---      ---       #677
-      0100305AH   LINE      ---      ---       #678
-      0100305AH   LINE      ---      ---       #679
-      01003064H   LINE      ---      ---       #680
-      01003064H   LINE      ---      ---       #681
-      01003072H   LINE      ---      ---       #682
-      01003078H   LINE      ---      ---       #683
-      01003078H   LINE      ---      ---       #684
-      0100307AH   LINE      ---      ---       #685
-      01003082H   LINE      ---      ---       #686
-      01003082H   LINE      ---      ---       #687
-      0100308CH   LINE      ---      ---       #688
-      0100308CH   LINE      ---      ---       #689
-      0100309AH   LINE      ---      ---       #690
-      010030A0H   LINE      ---      ---       #691
-      010030A0H   LINE      ---      ---       #692
-      010030A2H   LINE      ---      ---       #693
-      010030A6H   LINE      ---      ---       #694
-      010030A6H   LINE      ---      ---       #695
-      010030B0H   LINE      ---      ---       #696
-      010030B0H   LINE      ---      ---       #697
-      010030BEH   LINE      ---      ---       #698
-      010030C4H   LINE      ---      ---       #699
-      010030C4H   LINE      ---      ---       #700
-      010030C6H   LINE      ---      ---       #701
-      010030CEH   LINE      ---      ---       #702
-      010030CEH   LINE      ---      ---       #703
-      010030D8H   LINE      ---      ---       #704
-      010030D8H   LINE      ---      ---       #705
-      010030E6H   LINE      ---      ---       #706
-      010030ECH   LINE      ---      ---       #707
-      010030ECH   LINE      ---      ---       #708
-      010030EEH   LINE      ---      ---       #709
-      010030F2H   LINE      ---      ---       #710
-      010030F2H   LINE      ---      ---       #711
-      010030FCH   LINE      ---      ---       #712
-      010030FCH   LINE      ---      ---       #713
-      0100310AH   LINE      ---      ---       #714
-      01003110H   LINE      ---      ---       #715
-      01003110H   LINE      ---      ---       #716
-      01003112H   LINE      ---      ---       #717
-      0100311BH   LINE      ---      ---       #718
-      0100311BH   LINE      ---      ---       #719
-      01003125H   LINE      ---      ---       #720
-      01003125H   LINE      ---      ---       #721
-      01003133H   LINE      ---      ---       #722
-      01003133H   LINE      ---      ---       #723
-      01003139H   LINE      ---      ---       #724
-      01003139H   LINE      ---      ---       #725
-      0100313FH   LINE      ---      ---       #726
-      0100313FH   LINE      ---      ---       #727
-      01003148H   LINE      ---      ---       #728
-      0100314AH   LINE      ---      ---       #730
-      01003153H   LINE      ---      ---       #731
-      01003155H   LINE      ---      ---       #733
-      01003155H   LINE      ---      ---       #734
-      0100315BH   LINE      ---      ---       #735
-      0100315BH   LINE      ---      ---       #736
-      01003164H   LINE      ---      ---       #737
-      01003166H   LINE      ---      ---       #739
-      0100316FH   LINE      ---      ---       #740
-      0100316FH   LINE      ---      ---       #741
-      0100316FH   LINE      ---      ---       #743
-      0100316FH   LINE      ---      ---       #744
-      01003171H   LINE      ---      ---       #745
-      01003176H   LINE      ---      ---       #746
-      01003176H   LINE      ---      ---       #747
-      0100317EH   LINE      ---      ---       #748
-      0100317EH   LINE      ---      ---       #749
-      0100318AH   LINE      ---      ---       #750
-      0100318AH   LINE      ---      ---       #751
-      01003190H   LINE      ---      ---       #752
-      01003190H   LINE      ---      ---       #753
-      01003196H   LINE      ---      ---       #754
-      01003196H   LINE      ---      ---       #755
-      0100319FH   LINE      ---      ---       #756
-      010031A1H   LINE      ---      ---       #758
-      010031AAH   LINE      ---      ---       #759
-      010031ACH   LINE      ---      ---       #761
-      010031ACH   LINE      ---      ---       #762
-      010031B2H   LINE      ---      ---       #763
-      010031B2H   LINE      ---      ---       #764
-      010031BBH   LINE      ---      ---       #765
-      010031BDH   LINE      ---      ---       #767
-      010031C6H   LINE      ---      ---       #768
-      010031C6H   LINE      ---      ---       #769
-      010031C6H   LINE      ---      ---       #771
-      010031C6H   LINE      ---      ---       #772
-      010031C6H   LINE      ---      ---       #775
-      010031D0H   LINE      ---      ---       #776
-      010031D0H   LINE      ---      ---       #777
-      01003205H   LINE      ---      ---       #778
-      01003205H   LINE      ---      ---       #779
-      01003205H   LINE      ---      ---       #780
-      0100320DH   LINE      ---      ---       #781
-      0100320DH   LINE      ---      ---       #782
-      01003210H   LINE      ---      ---       #783
-      01003220H   LINE      ---      ---       #784
-      01003220H   LINE      ---      ---       #785
-      01003238H   LINE      ---      ---       #786
-      0100323EH   LINE      ---      ---       #787
-      01003240H   LINE      ---      ---       #789
-      01003240H   LINE      ---      ---       #790
-      01003246H   LINE      ---      ---       #791
-      01003246H   LINE      ---      ---       #792
-      01003246H   LINE      ---      ---       #793
-      0100324AH   LINE      ---      ---       #794
-      01003250H   LINE      ---      ---       #796
-      01003255H   LINE      ---      ---       #797
-      01003257H   LINE      ---      ---       #798
-      01003257H   LINE      ---      ---       #799
-      0100325DH   LINE      ---      ---       #800
-      0100325DH   LINE      ---      ---       #801
-      0100325FH   LINE      ---      ---       #802
-      0100326FH   LINE      ---      ---       #803
-      0100326FH   LINE      ---      ---       #804
-      01003287H   LINE      ---      ---       #805
-      0100328DH   LINE      ---      ---       #806
-      0100328FH   LINE      ---      ---       #808
-      0100328FH   LINE      ---      ---       #809
-      01003295H   LINE      ---      ---       #810
-      01003295H   LINE      ---      ---       #811
-      01003295H   LINE      ---      ---       #812
-      01003299H   LINE      ---      ---       #813
-      0100329FH   LINE      ---      ---       #815
-      010032A4H   LINE      ---      ---       #816
-      010032A6H   LINE      ---      ---       #817
-      010032A6H   LINE      ---      ---       #818
-      010032AEH   LINE      ---      ---       #819
-      010032AEH   LINE      ---      ---       #820
-      010032B1H   LINE      ---      ---       #821
-      010032C1H   LINE      ---      ---       #822
-      010032C1H   LINE      ---      ---       #823
-      010032D9H   LINE      ---      ---       #824
-      010032DFH   LINE      ---      ---       #825
-      010032E1H   LINE      ---      ---       #827
-      010032E1H   LINE      ---      ---       #828
-      010032E7H   LINE      ---      ---       #829
-      010032E7H   LINE      ---      ---       #830
-      010032E7H   LINE      ---      ---       #831
-      010032EBH   LINE      ---      ---       #832
-      010032F1H   LINE      ---      ---       #834
-      010032F6H   LINE      ---      ---       #835
-      010032F8H   LINE      ---      ---       #836
-      010032F8H   LINE      ---      ---       #837
-      010032FEH   LINE      ---      ---       #838
-      01003300H   LINE      ---      ---       #839
-      01003300H   LINE      ---      ---       #840
-      01003306H   LINE      ---      ---       #841
-      01003308H   LINE      ---      ---       #842
-      01003308H   LINE      ---      ---       #843
-      0100330EH   LINE      ---      ---       #844
-      01003310H   LINE      ---      ---       #845
-      01003310H   LINE      ---      ---       #846
-      01003316H   LINE      ---      ---       #847
-      01003318H   LINE      ---      ---       #848
-      01003318H   LINE      ---      ---       #849
-      0100331EH   LINE      ---      ---       #850
-      01003320H   LINE      ---      ---       #851
-      01003320H   LINE      ---      ---       #852
-      01003326H   LINE      ---      ---       #853
-      01003328H   LINE      ---      ---       #854
-      01003328H   LINE      ---      ---       #855
-      0100332EH   LINE      ---      ---       #856
-      01003330H   LINE      ---      ---       #857
-      01003330H   LINE      ---      ---       #858
-      01003336H   LINE      ---      ---       #859
-      01003338H   LINE      ---      ---       #860
-      01003338H   LINE      ---      ---       #861
-      0100333EH   LINE      ---      ---       #862
-      01003340H   LINE      ---      ---       #863
-      01003340H   LINE      ---      ---       #864
-      01003346H   LINE      ---      ---       #865
-      01003348H   LINE      ---      ---       #866
-      01003348H   LINE      ---      ---       #867
-      0100334EH   LINE      ---      ---       #868
-      01003350H   LINE      ---      ---       #869
-      01003350H   LINE      ---      ---       #870
-      01003356H   LINE      ---      ---       #871
-      01003356H   LINE      ---      ---       #872
-      01003356H   LINE      ---      ---       #873
-      01003356H   LINE      ---      ---       #874
-      01003356H   LINE      ---      ---       #875
-      01003356H   LINE      ---      ---       #877
-      0100335BH   LINE      ---      ---       #878
+      0100300FH   LINE      ---      ---       #655
+      0100300FH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100300FH   LINE      ---      ---       #656
+      01003014H   LINE      ---      ---       #658
+      01003018H   LINE      ---      ---       #659
+      0100301DH   LINE      ---      ---       #661
+      01003023H   LINE      ---      ---       #663
+      01003026H   LINE      ---      ---       #664
+      01003026H   LINE      ---      ---       #665
+      0100302DH   LINE      ---      ---       #666
+      0100302DH   LINE      ---      ---       #667
+      01003033H   LINE      ---      ---       #668
+      01003033H   LINE      ---      ---       #669
+      01003035H   LINE      ---      ---       #670
+      0100303CH   LINE      ---      ---       #671
+      0100303CH   LINE      ---      ---       #672
+      01003043H   LINE      ---      ---       #673
+      01003043H   LINE      ---      ---       #674
+      01003049H   LINE      ---      ---       #675
+      01003049H   LINE      ---      ---       #676
+      01003049H   LINE      ---      ---       #776
+      01003053H   LINE      ---      ---       #777
+      01003053H   LINE      ---      ---       #778
+      01003088H   LINE      ---      ---       #779
+      01003088H   LINE      ---      ---       #780
+      01003088H   LINE      ---      ---       #781
+      01003090H   LINE      ---      ---       #782
+      01003090H   LINE      ---      ---       #783
+      01003093H   LINE      ---      ---       #784
+      010030A3H   LINE      ---      ---       #785
+      010030A3H   LINE      ---      ---       #786
+      010030BBH   LINE      ---      ---       #787
+      010030C1H   LINE      ---      ---       #788
+      010030C3H   LINE      ---      ---       #790
+      010030C3H   LINE      ---      ---       #791
+      010030C9H   LINE      ---      ---       #792
+      010030C9H   LINE      ---      ---       #793
+      010030C9H   LINE      ---      ---       #794
+      010030CDH   LINE      ---      ---       #795
+      010030D3H   LINE      ---      ---       #797
+      010030D8H   LINE      ---      ---       #798
+      010030DAH   LINE      ---      ---       #799
+      010030DAH   LINE      ---      ---       #800
+      010030E0H   LINE      ---      ---       #801
+      010030E0H   LINE      ---      ---       #802
+      010030E2H   LINE      ---      ---       #803
+      010030F2H   LINE      ---      ---       #804
+      010030F2H   LINE      ---      ---       #805
+      0100310AH   LINE      ---      ---       #806
+      01003110H   LINE      ---      ---       #807
+      01003112H   LINE      ---      ---       #809
+      01003112H   LINE      ---      ---       #810
+      01003118H   LINE      ---      ---       #811
+      01003118H   LINE      ---      ---       #812
+      01003118H   LINE      ---      ---       #813
+      0100311CH   LINE      ---      ---       #814
+      01003122H   LINE      ---      ---       #816
+      01003127H   LINE      ---      ---       #817
+      01003129H   LINE      ---      ---       #818
+      01003129H   LINE      ---      ---       #819
+      01003131H   LINE      ---      ---       #820
+      01003131H   LINE      ---      ---       #821
+      01003134H   LINE      ---      ---       #822
+      01003144H   LINE      ---      ---       #823
+      01003144H   LINE      ---      ---       #824
+      0100315CH   LINE      ---      ---       #825
+      01003162H   LINE      ---      ---       #826
+      01003164H   LINE      ---      ---       #828
+      01003164H   LINE      ---      ---       #829
+      0100316AH   LINE      ---      ---       #830
+      0100316AH   LINE      ---      ---       #831
+      0100316AH   LINE      ---      ---       #832
+      0100316EH   LINE      ---      ---       #833
+      01003174H   LINE      ---      ---       #835
+      01003179H   LINE      ---      ---       #836
+      0100317BH   LINE      ---      ---       #837
+      0100317BH   LINE      ---      ---       #838
+      01003181H   LINE      ---      ---       #839
+      01003183H   LINE      ---      ---       #840
+      01003183H   LINE      ---      ---       #841
+      01003189H   LINE      ---      ---       #842
+      0100318BH   LINE      ---      ---       #843
+      0100318BH   LINE      ---      ---       #844
+      01003191H   LINE      ---      ---       #845
+      01003193H   LINE      ---      ---       #846
+      01003193H   LINE      ---      ---       #847
+      01003199H   LINE      ---      ---       #848
+      0100319BH   LINE      ---      ---       #849
+      0100319BH   LINE      ---      ---       #850
+      010031A1H   LINE      ---      ---       #851
+      010031A3H   LINE      ---      ---       #852
+      010031A3H   LINE      ---      ---       #853
+      010031A9H   LINE      ---      ---       #854
+      010031ABH   LINE      ---      ---       #855
+      010031ABH   LINE      ---      ---       #856
+      010031B1H   LINE      ---      ---       #857
+      010031B3H   LINE      ---      ---       #858
+      010031B3H   LINE      ---      ---       #859
+      010031B9H   LINE      ---      ---       #860
+      010031BBH   LINE      ---      ---       #861
+      010031BBH   LINE      ---      ---       #862
+      010031C1H   LINE      ---      ---       #863
+      010031C3H   LINE      ---      ---       #864
+      010031C3H   LINE      ---      ---       #865
+      010031C9H   LINE      ---      ---       #866
+      010031CBH   LINE      ---      ---       #867
+      010031CBH   LINE      ---      ---       #868
+      010031D1H   LINE      ---      ---       #869
+      010031D3H   LINE      ---      ---       #870
+      010031D3H   LINE      ---      ---       #871
+      010031D9H   LINE      ---      ---       #872
+      010031D9H   LINE      ---      ---       #873
+      010031D9H   LINE      ---      ---       #874
+      010031D9H   LINE      ---      ---       #875
+      010031D9H   LINE      ---      ---       #876
+      010031D9H   LINE      ---      ---       #878
+      010031DEH   LINE      ---      ---       #879
       02004F09H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01002585H   BLOCK     CODE     ---       LVL=0
-      01002585H   LINE      ---      ---       #882
-      01002590H   LINE      ---      ---       #883
-      01002590H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002585H   LINE      ---      ---       #883
       01002590H   LINE      ---      ---       #884
-      01002593H   LINE      ---      ---       #886
-      010025A1H   LINE      ---      ---       #887
+      01002590H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002590H   LINE      ---      ---       #885
+      01002593H   LINE      ---      ---       #887
       010025A1H   LINE      ---      ---       #888
-      010025CDH   LINE      ---      ---       #890
-      010025CDH   LINE      ---      ---       #892
-      010025D4H   LINE      ---      ---       #893
+      010025A1H   LINE      ---      ---       #889
+      010025CDH   LINE      ---      ---       #891
+      010025CDH   LINE      ---      ---       #893
       010025D4H   LINE      ---      ---       #894
-      010025DAH   LINE      ---      ---       #895
-      010025DDH   LINE      ---      ---       #897
-      010025E1H   LINE      ---      ---       #898
+      010025D4H   LINE      ---      ---       #895
+      010025DAH   LINE      ---      ---       #896
+      010025DDH   LINE      ---      ---       #898
       010025E1H   LINE      ---      ---       #899
-      010025E7H   LINE      ---      ---       #900
-      010025EAH   LINE      ---      ---       #901
-      0100260AH   LINE      ---      ---       #902
+      010025E1H   LINE      ---      ---       #900
+      010025E7H   LINE      ---      ---       #901
+      010025EAH   LINE      ---      ---       #902
       0100260AH   LINE      ---      ---       #903
-      0100260EH   LINE      ---      ---       #904
-      01002611H   LINE      ---      ---       #905
-      01002615H   LINE      ---      ---       #906
+      0100260AH   LINE      ---      ---       #904
+      0100260EH   LINE      ---      ---       #905
+      01002611H   LINE      ---      ---       #906
       01002615H   LINE      ---      ---       #907
-      0100261BH   LINE      ---      ---       #908
-      0100261EH   LINE      ---      ---       #909
-      0100263EH   LINE      ---      ---       #910
+      01002615H   LINE      ---      ---       #908
+      0100261BH   LINE      ---      ---       #909
+      0100261EH   LINE      ---      ---       #910
       0100263EH   LINE      ---      ---       #911
-      01002642H   LINE      ---      ---       #912
-      01002645H   LINE      ---      ---       #913
-      01002649H   LINE      ---      ---       #914
+      0100263EH   LINE      ---      ---       #912
+      01002642H   LINE      ---      ---       #913
+      01002645H   LINE      ---      ---       #914
       01002649H   LINE      ---      ---       #915
-      0100264FH   LINE      ---      ---       #916
-      01002652H   LINE      ---      ---       #917
-      01002672H   LINE      ---      ---       #918
+      01002649H   LINE      ---      ---       #916
+      0100264FH   LINE      ---      ---       #917
+      01002652H   LINE      ---      ---       #918
       01002672H   LINE      ---      ---       #919
-      01002676H   LINE      ---      ---       #920
-      01002679H   LINE      ---      ---       #921
-      0100267DH   LINE      ---      ---       #922
+      01002672H   LINE      ---      ---       #920
+      01002676H   LINE      ---      ---       #921
+      01002679H   LINE      ---      ---       #922
       0100267DH   LINE      ---      ---       #923
-      01002683H   LINE      ---      ---       #924
-      01002686H   LINE      ---      ---       #925
-      010026A6H   LINE      ---      ---       #926
+      0100267DH   LINE      ---      ---       #924
+      01002683H   LINE      ---      ---       #925
+      01002686H   LINE      ---      ---       #926
       010026A6H   LINE      ---      ---       #927
-      010026ABH   LINE      ---      ---       #928
-      010026AEH   LINE      ---      ---       #929
-      010026B2H   LINE      ---      ---       #930
+      010026A6H   LINE      ---      ---       #928
+      010026ABH   LINE      ---      ---       #929
+      010026AEH   LINE      ---      ---       #930
       010026B2H   LINE      ---      ---       #931
-      010026B8H   LINE      ---      ---       #932
-      010026BBH   LINE      ---      ---       #933
-      010026DBH   LINE      ---      ---       #934
+      010026B2H   LINE      ---      ---       #932
+      010026B8H   LINE      ---      ---       #933
+      010026BBH   LINE      ---      ---       #934
       010026DBH   LINE      ---      ---       #935
-      010026E0H   LINE      ---      ---       #936
-      010026E3H   LINE      ---      ---       #937
-      010026E7H   LINE      ---      ---       #938
+      010026DBH   LINE      ---      ---       #936
+      010026E0H   LINE      ---      ---       #937
+      010026E3H   LINE      ---      ---       #938
       010026E7H   LINE      ---      ---       #939
-      010026EDH   LINE      ---      ---       #940
-      010026F0H   LINE      ---      ---       #941
-      01002710H   LINE      ---      ---       #942
+      010026E7H   LINE      ---      ---       #940
+      010026EDH   LINE      ---      ---       #941
+      010026F0H   LINE      ---      ---       #942
       01002710H   LINE      ---      ---       #943
-      01002716H   LINE      ---      ---       #944
-      01002719H   LINE      ---      ---       #945
-      0100271DH   LINE      ---      ---       #946
+      01002710H   LINE      ---      ---       #944
+      01002716H   LINE      ---      ---       #945
+      01002719H   LINE      ---      ---       #946
       0100271DH   LINE      ---      ---       #947
-      01002723H   LINE      ---      ---       #948
-      01002726H   LINE      ---      ---       #949
-      01002746H   LINE      ---      ---       #950
+      0100271DH   LINE      ---      ---       #948
+      01002723H   LINE      ---      ---       #949
+      01002726H   LINE      ---      ---       #950
       01002746H   LINE      ---      ---       #951
-      0100274CH   LINE      ---      ---       #952
-      0100274FH   LINE      ---      ---       #953
-      01002753H   LINE      ---      ---       #954
+      01002746H   LINE      ---      ---       #952
+      0100274CH   LINE      ---      ---       #953
+      0100274FH   LINE      ---      ---       #954
       01002753H   LINE      ---      ---       #955
-      01002759H   LINE      ---      ---       #956
-      0100275CH   LINE      ---      ---       #957
-      0100277CH   LINE      ---      ---       #958
+      01002753H   LINE      ---      ---       #956
+      01002759H   LINE      ---      ---       #957
+      0100275CH   LINE      ---      ---       #958
       0100277CH   LINE      ---      ---       #959
-      01002782H   LINE      ---      ---       #960
-      01002785H   LINE      ---      ---       #961
-      01002789H   LINE      ---      ---       #962
+      0100277CH   LINE      ---      ---       #960
+      01002782H   LINE      ---      ---       #961
+      01002785H   LINE      ---      ---       #962
       01002789H   LINE      ---      ---       #963
-      0100278FH   LINE      ---      ---       #964
-      01002792H   LINE      ---      ---       #965
-      010027B2H   LINE      ---      ---       #966
+      01002789H   LINE      ---      ---       #964
+      0100278FH   LINE      ---      ---       #965
+      01002792H   LINE      ---      ---       #966
       010027B2H   LINE      ---      ---       #967
-      010027B6H   LINE      ---      ---       #968
-      010027B9H   LINE      ---      ---       #969
-      010027BDH   LINE      ---      ---       #970
+      010027B2H   LINE      ---      ---       #968
+      010027B6H   LINE      ---      ---       #969
+      010027B9H   LINE      ---      ---       #970
       010027BDH   LINE      ---      ---       #971
-      010027C3H   LINE      ---      ---       #972
-      010027C6H   LINE      ---      ---       #973
-      010027E6H   LINE      ---      ---       #974
+      010027BDH   LINE      ---      ---       #972
+      010027C3H   LINE      ---      ---       #973
+      010027C6H   LINE      ---      ---       #974
       010027E6H   LINE      ---      ---       #975
-      010027EAH   LINE      ---      ---       #976
-      010027ECH   LINE      ---      ---       #977
-      010027F0H   LINE      ---      ---       #978
+      010027E6H   LINE      ---      ---       #976
+      010027EAH   LINE      ---      ---       #977
+      010027ECH   LINE      ---      ---       #978
       010027F0H   LINE      ---      ---       #979
-      010027F6H   LINE      ---      ---       #980
-      010027F8H   LINE      ---      ---       #981
-      01002818H   LINE      ---      ---       #982
+      010027F0H   LINE      ---      ---       #980
+      010027F6H   LINE      ---      ---       #981
+      010027F8H   LINE      ---      ---       #982
       01002818H   LINE      ---      ---       #983
-      0100281FH   LINE      ---      ---       #984
-      01002821H   LINE      ---      ---       #985
-      01002825H   LINE      ---      ---       #986
+      01002818H   LINE      ---      ---       #984
+      0100281FH   LINE      ---      ---       #985
+      01002821H   LINE      ---      ---       #986
       01002825H   LINE      ---      ---       #987
-      0100282CH   LINE      ---      ---       #988
-      0100282EH   LINE      ---      ---       #989
-      0100284EH   LINE      ---      ---       #990
+      01002825H   LINE      ---      ---       #988
+      0100282CH   LINE      ---      ---       #989
+      0100282EH   LINE      ---      ---       #990
       0100284EH   LINE      ---      ---       #991
-      01002852H   LINE      ---      ---       #992
-      01002854H   LINE      ---      ---       #993
-      01002858H   LINE      ---      ---       #994
+      0100284EH   LINE      ---      ---       #992
+      01002852H   LINE      ---      ---       #993
+      01002854H   LINE      ---      ---       #994
       01002858H   LINE      ---      ---       #995
-      0100285CH   LINE      ---      ---       #996
-      0100285EH   LINE      ---      ---       #997
-      01002864H   LINE      ---      ---       #998
+      01002858H   LINE      ---      ---       #996
+      0100285CH   LINE      ---      ---       #997
+      0100285EH   LINE      ---      ---       #998
       01002864H   LINE      ---      ---       #999
-      01002868H   LINE      ---      ---       #1000
-      01002868H   LINE      ---      ---       #1002
-      0100286FH   LINE      ---      ---       #1003
+      01002864H   LINE      ---      ---       #1000
+      01002868H   LINE      ---      ---       #1001
+      01002868H   LINE      ---      ---       #1003
       0100286FH   LINE      ---      ---       #1004
-      0100288FH   LINE      ---      ---       #1005
-      01002893H   LINE      ---      ---       #1006
+      0100286FH   LINE      ---      ---       #1005
+      0100288FH   LINE      ---      ---       #1006
       01002893H   LINE      ---      ---       #1007
       01002893H   LINE      ---      ---       #1008
-      0100289CH   LINE      ---      ---       #1009
+      01002893H   LINE      ---      ---       #1009
+      0100289CH   LINE      ---      ---       #1010
       02004EE1H   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1756,18 +1668,18 @@
       01002D6CH   PUBLIC    CODE     ---       _array_is_empty
       01002B98H   PUBLIC    CODE     ---       KS_ScanMatrix
       01001C00H   PUBLIC    CODE     ---       KS_Unistall
-      0100344EH   PUBLIC    CODE     ---       KS_Initialize
+      010032D1H   PUBLIC    CODE     ---       KS_Initialize
       01002D4AH   PUBLIC    CODE     ---       _YC_DelayNOP1
-      0100335CH   PUBLIC    CODE     ---       _GPIO_SetInput_no_pupd
+      010031DFH   PUBLIC    CODE     ---       _GPIO_SetInput_no_pupd
 
-      0100335CH   BLOCK     CODE     ---       LVL=0
-      0100335CH   LINE      ---      ---       #7
-      01003361H   LINE      ---      ---       #8
-      01003361H   LINE      ---      ---       #9
-      01003364H   LINE      ---      ---       #11
-      0100336DH   LINE      ---      ---       #12
-      01003376H   LINE      ---      ---       #13
-      0100337FH   LINE      ---      ---       #14
+      010031DFH   BLOCK     CODE     ---       LVL=0
+      010031DFH   LINE      ---      ---       #7
+      010031E4H   LINE      ---      ---       #8
+      010031E4H   LINE      ---      ---       #9
+      010031E7H   LINE      ---      ---       #11
+      010031F0H   LINE      ---      ---       #12
+      010031F9H   LINE      ---      ---       #13
+      01003202H   LINE      ---      ---       #14
       ---         BLOCKEND  ---      ---       LVL=0
 
       01002D4AH   BLOCK     CODE     ---       LVL=0
@@ -1859,40 +1771,40 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003462H   BLOCK     CODE     ---       LVL=0
-      01003462H   LINE      ---      ---       #203
-      01003462H   LINE      ---      ---       #204
-      01003462H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003462H   LINE      ---      ---       #205
-      01003467H   LINE      ---      ---       #207
-      01003472H   LINE      ---      ---       #208
-      01003476H   LINE      ---      ---       #209
-      0100347EH   LINE      ---      ---       #210
+      010032E5H   BLOCK     CODE     ---       LVL=0
+      010032E5H   LINE      ---      ---       #203
+      010032E5H   LINE      ---      ---       #204
+      010032E5H   BLOCK     CODE     NEAR LAB  LVL=1
+      010032E5H   LINE      ---      ---       #205
+      010032EAH   LINE      ---      ---       #207
+      010032F5H   LINE      ---      ---       #208
+      010032F9H   LINE      ---      ---       #209
+      01003301H   LINE      ---      ---       #210
       02004F0BH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01003432H   BLOCK     CODE     ---       LVL=0
-      01003432H   LINE      ---      ---       #212
-      01003432H   LINE      ---      ---       #213
-      01003432H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003432H   LINE      ---      ---       #214
-      01003437H   LINE      ---      ---       #215
-      01003443H   LINE      ---      ---       #216
-      01003445H   LINE      ---      ---       #217
-      0100344DH   LINE      ---      ---       #218
+      010032B5H   BLOCK     CODE     ---       LVL=0
+      010032B5H   LINE      ---      ---       #212
+      010032B5H   LINE      ---      ---       #213
+      010032B5H   BLOCK     CODE     NEAR LAB  LVL=1
+      010032B5H   LINE      ---      ---       #214
+      010032BAH   LINE      ---      ---       #215
+      010032C6H   LINE      ---      ---       #216
+      010032C8H   LINE      ---      ---       #217
+      010032D0H   LINE      ---      ---       #218
       02004F0CH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100344EH   BLOCK     CODE     ---       LVL=0
-      0100344EH   LINE      ---      ---       #220
-      0100344EH   LINE      ---      ---       #221
-      0100344EH   LINE      ---      ---       #222
-      01003453H   LINE      ---      ---       #223
-      01003455H   LINE      ---      ---       #224
-      01003457H   LINE      ---      ---       #225
-      01003459H   LINE      ---      ---       #226
+      010032D1H   BLOCK     CODE     ---       LVL=0
+      010032D1H   LINE      ---      ---       #220
+      010032D1H   LINE      ---      ---       #221
+      010032D1H   LINE      ---      ---       #222
+      010032D6H   LINE      ---      ---       #223
+      010032D8H   LINE      ---      ---       #224
+      010032DAH   LINE      ---      ---       #225
+      010032DCH   LINE      ---      ---       #226
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001C00H   BLOCK     CODE     ---       LVL=0
@@ -2100,7 +2012,7 @@
       ---         MODULE    ---      ---       LED
       010010F7H   PUBLIC    CODE     ---       LED_handle
       010017C9H   PUBLIC    CODE     ---       LED_device_poweroff
-      01003492H   PUBLIC    CODE     ---       LED_device_poweron
+      01003315H   PUBLIC    CODE     ---       LED_device_poweron
       01001A1EH   PUBLIC    CODE     ---       LED_all_shutdown
 
       01001A1EH   BLOCK     CODE     ---       LVL=0
@@ -2114,14 +2026,14 @@
       01001A3CH   LINE      ---      ---       #11
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003492H   BLOCK     CODE     ---       LVL=0
-      01003492H   LINE      ---      ---       #15
-      01003492H   LINE      ---      ---       #16
-      01003492H   LINE      ---      ---       #17
-      01003499H   LINE      ---      ---       #18
-      010034A0H   LINE      ---      ---       #19
-      010034A7H   LINE      ---      ---       #20
-      010034AEH   LINE      ---      ---       #22
+      01003315H   BLOCK     CODE     ---       LVL=0
+      01003315H   LINE      ---      ---       #15
+      01003315H   LINE      ---      ---       #16
+      01003315H   LINE      ---      ---       #17
+      0100331CH   LINE      ---      ---       #18
+      01003323H   LINE      ---      ---       #19
+      0100332AH   LINE      ---      ---       #20
+      01003331H   LINE      ---      ---       #22
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017C9H   BLOCK     CODE     ---       LVL=0
@@ -2212,7 +2124,7 @@
       01001D38H   PUBLIC    CODE     ---       System_Reset_Connect
       01000FABH   PUBLIC    CODE     ---       System_G24_long_lpm
       010017C0H   PUBLIC    CODE     ---       System_long_sleep
-      010035FAH   PUBLIC    CODE     ---       System_Software_init
+      0100347DH   PUBLIC    CODE     ---       System_Software_init
 
       01000D65H   BLOCK     CODE     ---       LVL=0
       01000D65H   LINE      ---      ---       #11
@@ -2245,39 +2157,39 @@
       01000DFDH   LINE      ---      ---       #41
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100347FH   BLOCK     CODE     ---       LVL=0
-      0100347FH   LINE      ---      ---       #43
-      0100347FH   LINE      ---      ---       #44
-      0100347FH   LINE      ---      ---       #45
-      01003485H   LINE      ---      ---       #46
-      01003488H   LINE      ---      ---       #47
-      0100348AH   LINE      ---      ---       #48
-      0100348CH   LINE      ---      ---       #49
-      0100348EH   LINE      ---      ---       #50
-      01003491H   LINE      ---      ---       #51
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      0100345BH   BLOCK     CODE     ---       LVL=0
-      0100345BH   LINE      ---      ---       #53
-      0100345BH   LINE      ---      ---       #54
-      0100345BH   LINE      ---      ---       #55
-      0100345DH   LINE      ---      ---       #56
-      0100345FH   LINE      ---      ---       #57
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010035FAH   BLOCK     CODE     ---       LVL=0
-      010035FAH   LINE      ---      ---       #61
-      010035FAH   LINE      ---      ---       #62
-      010035FAH   LINE      ---      ---       #63
-      010035FDH   LINE      ---      ---       #64
-      010035FFH   LINE      ---      ---       #65
-      01003605H   LINE      ---      ---       #66
-      0100360BH   LINE      ---      ---       #67
-      01003610H   LINE      ---      ---       #68
-      01003616H   LINE      ---      ---       #69
-      0100361EH   LINE      ---      ---       #70
-      01003626H   LINE      ---      ---       #71
-      0100362EH   LINE      ---      ---       #72
+      01003302H   BLOCK     CODE     ---       LVL=0
+      01003302H   LINE      ---      ---       #43
+      01003302H   LINE      ---      ---       #44
+      01003302H   LINE      ---      ---       #45
+      01003308H   LINE      ---      ---       #46
+      0100330BH   LINE      ---      ---       #47
+      0100330DH   LINE      ---      ---       #48
+      0100330FH   LINE      ---      ---       #49
+      01003311H   LINE      ---      ---       #50
+      01003314H   LINE      ---      ---       #51
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010032DEH   BLOCK     CODE     ---       LVL=0
+      010032DEH   LINE      ---      ---       #53
+      010032DEH   LINE      ---      ---       #54
+      010032DEH   LINE      ---      ---       #55
+      010032E0H   LINE      ---      ---       #56
+      010032E2H   LINE      ---      ---       #57
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      0100347DH   BLOCK     CODE     ---       LVL=0
+      0100347DH   LINE      ---      ---       #61
+      0100347DH   LINE      ---      ---       #62
+      0100347DH   LINE      ---      ---       #63
+      01003480H   LINE      ---      ---       #64
+      01003482H   LINE      ---      ---       #65
+      01003488H   LINE      ---      ---       #66
+      0100348EH   LINE      ---      ---       #67
+      01003493H   LINE      ---      ---       #68
+      01003499H   LINE      ---      ---       #69
+      010034A1H   LINE      ---      ---       #70
+      010034A9H   LINE      ---      ---       #71
+      010034B1H   LINE      ---      ---       #72
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001D38H   BLOCK     CODE     ---       LVL=0
@@ -2312,13 +2224,13 @@
       01001D38H   BLOCK     CODE     ---       LVL=0
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010036FBH   BLOCK     CODE     ---       LVL=0
-      010036FBH   LINE      ---      ---       #111
-      01003700H   BLOCK     CODE     NEAR LAB  LVL=1
-      01003700H   LINE      ---      ---       #113
-      0100370AH   LINE      ---      ---       #115
-      0100370AH   LINE      ---      ---       #117
-      0100370AH   LINE      ---      ---       #118
+      0100357EH   BLOCK     CODE     ---       LVL=0
+      0100357EH   LINE      ---      ---       #111
+      01003583H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003583H   LINE      ---      ---       #113
+      0100358DH   LINE      ---      ---       #115
+      0100358DH   LINE      ---      ---       #117
+      0100358DH   LINE      ---      ---       #118
       02004F02H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2756,114 +2668,114 @@
       01002232H   LINE      ---      ---       #618
       ---         BLOCKEND  ---      ---       LVL=0
 
-      010034B5H   BLOCK     CODE     ---       LVL=0
-      010034B5H   LINE      ---      ---       #631
-      010034B5H   LINE      ---      ---       #632
-      010034B5H   LINE      ---      ---       #634
-      010034BBH   LINE      ---      ---       #635
-      010034BBH   LINE      ---      ---       #636
-      010034BDH   LINE      ---      ---       #637
-      010034BDH   LINE      ---      ---       #639
-      010034C3H   LINE      ---      ---       #640
-      010034C5H   LINE      ---      ---       #642
-      010034CBH   LINE      ---      ---       #643
-      010034CBH   LINE      ---      ---       #644
-      010034CDH   LINE      ---      ---       #645
-      010034D0H   LINE      ---      ---       #646
-      010034D6H   LINE      ---      ---       #647
-      010034D6H   LINE      ---      ---       #649
-      010034DCH   LINE      ---      ---       #650
-      010034DCH   LINE      ---      ---       #651
-      010034E8H   LINE      ---      ---       #652
-      010034E8H   LINE      ---      ---       #653
-      010034EEH   LINE      ---      ---       #655
-      010034EEH   LINE      ---      ---       #657
-      010034F4H   LINE      ---      ---       #658
-      010034F6H   LINE      ---      ---       #659
-      010034FCH   LINE      ---      ---       #660
-      010034FCH   LINE      ---      ---       #661
-      010034FFH   LINE      ---      ---       #662
-      010034FFH   LINE      ---      ---       #663
-      01003501H   LINE      ---      ---       #664
-      0100350DH   LINE      ---      ---       #665
-      0100350DH   LINE      ---      ---       #666
-      01003513H   LINE      ---      ---       #667
-      01003513H   LINE      ---      ---       #668
-      01003522H   LINE      ---      ---       #669
-      01003522H   LINE      ---      ---       #670
-      01003528H   LINE      ---      ---       #671
-      0100352FH   LINE      ---      ---       #672
-      0100352FH   LINE      ---      ---       #673
-      01003533H   LINE      ---      ---       #674
-      01003533H   LINE      ---      ---       #675
-      0100353AH   LINE      ---      ---       #676
-      0100353CH   LINE      ---      ---       #678
-      0100353CH   LINE      ---      ---       #679
-      01003543H   LINE      ---      ---       #680
-      01003543H   LINE      ---      ---       #681
-      01003545H   LINE      ---      ---       #683
-      0100354CH   LINE      ---      ---       #684
-      01003552H   LINE      ---      ---       #685
-      01003555H   LINE      ---      ---       #686
-      01003557H   LINE      ---      ---       #688
-      01003557H   LINE      ---      ---       #689
-      0100355DH   LINE      ---      ---       #690
-      01003564H   LINE      ---      ---       #691
-      01003564H   LINE      ---      ---       #692
-      01003564H   LINE      ---      ---       #693
-      01003564H   LINE      ---      ---       #696
-      0100356AH   LINE      ---      ---       #697
-      0100356AH   LINE      ---      ---       #698
-      01003572H   LINE      ---      ---       #699
-      01003572H   LINE      ---      ---       #700
-      01003578H   LINE      ---      ---       #701
-      0100357CH   LINE      ---      ---       #703
-      01003582H   LINE      ---      ---       #704
-      01003582H   LINE      ---      ---       #705
-      0100358DH   LINE      ---      ---       #706
-      0100358FH   LINE      ---      ---       #707
-      01003595H   LINE      ---      ---       #708
-      01003595H   LINE      ---      ---       #710
-      010035A0H   LINE      ---      ---       #711
-      010035A0H   LINE      ---      ---       #712
-      010035A0H   LINE      ---      ---       #713
-      010035A0H   LINE      ---      ---       #715
-      010035B0H   LINE      ---      ---       #716
-      010035B0H   LINE      ---      ---       #717
-      010035B6H   LINE      ---      ---       #718
-      010035BAH   LINE      ---      ---       #719
-      010035BAH   LINE      ---      ---       #720
-      010035BCH   LINE      ---      ---       #721
-      010035BEH   LINE      ---      ---       #723
-      010035BEH   LINE      ---      ---       #724
-      010035C1H   LINE      ---      ---       #725
-      010035C1H   LINE      ---      ---       #726
-      010035C1H   LINE      ---      ---       #729
-      010035C7H   LINE      ---      ---       #730
-      010035C7H   LINE      ---      ---       #731
-      010035CAH   LINE      ---      ---       #732
-      010035CDH   LINE      ---      ---       #733
-      010035CDH   LINE      ---      ---       #734
-      010035D3H   LINE      ---      ---       #735
-      010035D3H   LINE      ---      ---       #736
-      010035D8H   LINE      ---      ---       #737
-      010035D8H   LINE      ---      ---       #738
-      010035D8H   LINE      ---      ---       #739
-      010035D8H   LINE      ---      ---       #741
-      010035DEH   LINE      ---      ---       #742
-      010035E1H   LINE      ---      ---       #743
-      010035E4H   LINE      ---      ---       #744
-      010035E4H   LINE      ---      ---       #745
-      010035EAH   LINE      ---      ---       #746
-      010035EAH   LINE      ---      ---       #747
-      010035ECH   LINE      ---      ---       #748
-      010035ECH   LINE      ---      ---       #750
-      010035F3H   LINE      ---      ---       #751
-      010035F3H   LINE      ---      ---       #752
-      010035F9H   LINE      ---      ---       #753
-      010035F9H   LINE      ---      ---       #754
-      010035F9H   LINE      ---      ---       #755
-      010035F9H   LINE      ---      ---       #756
+      01003338H   BLOCK     CODE     ---       LVL=0
+      01003338H   LINE      ---      ---       #631
+      01003338H   LINE      ---      ---       #632
+      01003338H   LINE      ---      ---       #634
+      0100333EH   LINE      ---      ---       #635
+      0100333EH   LINE      ---      ---       #636
+      01003340H   LINE      ---      ---       #637
+      01003340H   LINE      ---      ---       #639
+      01003346H   LINE      ---      ---       #640
+      01003348H   LINE      ---      ---       #642
+      0100334EH   LINE      ---      ---       #643
+      0100334EH   LINE      ---      ---       #644
+      01003350H   LINE      ---      ---       #645
+      01003353H   LINE      ---      ---       #646
+      01003359H   LINE      ---      ---       #647
+      01003359H   LINE      ---      ---       #649
+      0100335FH   LINE      ---      ---       #650
+      0100335FH   LINE      ---      ---       #651
+      0100336BH   LINE      ---      ---       #652
+      0100336BH   LINE      ---      ---       #653
+      01003371H   LINE      ---      ---       #655
+      01003371H   LINE      ---      ---       #657
+      01003377H   LINE      ---      ---       #658
+      01003379H   LINE      ---      ---       #659
+      0100337FH   LINE      ---      ---       #660
+      0100337FH   LINE      ---      ---       #661
+      01003382H   LINE      ---      ---       #662
+      01003382H   LINE      ---      ---       #663
+      01003384H   LINE      ---      ---       #664
+      01003390H   LINE      ---      ---       #665
+      01003390H   LINE      ---      ---       #666
+      01003396H   LINE      ---      ---       #667
+      01003396H   LINE      ---      ---       #668
+      010033A5H   LINE      ---      ---       #669
+      010033A5H   LINE      ---      ---       #670
+      010033ABH   LINE      ---      ---       #671
+      010033B2H   LINE      ---      ---       #672
+      010033B2H   LINE      ---      ---       #673
+      010033B6H   LINE      ---      ---       #674
+      010033B6H   LINE      ---      ---       #675
+      010033BDH   LINE      ---      ---       #676
+      010033BFH   LINE      ---      ---       #678
+      010033BFH   LINE      ---      ---       #679
+      010033C6H   LINE      ---      ---       #680
+      010033C6H   LINE      ---      ---       #681
+      010033C8H   LINE      ---      ---       #683
+      010033CFH   LINE      ---      ---       #684
+      010033D5H   LINE      ---      ---       #685
+      010033D8H   LINE      ---      ---       #686
+      010033DAH   LINE      ---      ---       #688
+      010033DAH   LINE      ---      ---       #689
+      010033E0H   LINE      ---      ---       #690
+      010033E7H   LINE      ---      ---       #691
+      010033E7H   LINE      ---      ---       #692
+      010033E7H   LINE      ---      ---       #693
+      010033E7H   LINE      ---      ---       #696
+      010033EDH   LINE      ---      ---       #697
+      010033EDH   LINE      ---      ---       #698
+      010033F5H   LINE      ---      ---       #699
+      010033F5H   LINE      ---      ---       #700
+      010033FBH   LINE      ---      ---       #701
+      010033FFH   LINE      ---      ---       #703
+      01003405H   LINE      ---      ---       #704
+      01003405H   LINE      ---      ---       #705
+      01003410H   LINE      ---      ---       #706
+      01003412H   LINE      ---      ---       #707
+      01003418H   LINE      ---      ---       #708
+      01003418H   LINE      ---      ---       #710
+      01003423H   LINE      ---      ---       #711
+      01003423H   LINE      ---      ---       #712
+      01003423H   LINE      ---      ---       #713
+      01003423H   LINE      ---      ---       #715
+      01003433H   LINE      ---      ---       #716
+      01003433H   LINE      ---      ---       #717
+      01003439H   LINE      ---      ---       #718
+      0100343DH   LINE      ---      ---       #719
+      0100343DH   LINE      ---      ---       #720
+      0100343FH   LINE      ---      ---       #721
+      01003441H   LINE      ---      ---       #723
+      01003441H   LINE      ---      ---       #724
+      01003444H   LINE      ---      ---       #725
+      01003444H   LINE      ---      ---       #726
+      01003444H   LINE      ---      ---       #729
+      0100344AH   LINE      ---      ---       #730
+      0100344AH   LINE      ---      ---       #731
+      0100344DH   LINE      ---      ---       #732
+      01003450H   LINE      ---      ---       #733
+      01003450H   LINE      ---      ---       #734
+      01003456H   LINE      ---      ---       #735
+      01003456H   LINE      ---      ---       #736
+      0100345BH   LINE      ---      ---       #737
+      0100345BH   LINE      ---      ---       #738
+      0100345BH   LINE      ---      ---       #739
+      0100345BH   LINE      ---      ---       #741
+      01003461H   LINE      ---      ---       #742
+      01003464H   LINE      ---      ---       #743
+      01003467H   LINE      ---      ---       #744
+      01003467H   LINE      ---      ---       #745
+      0100346DH   LINE      ---      ---       #746
+      0100346DH   LINE      ---      ---       #747
+      0100346FH   LINE      ---      ---       #748
+      0100346FH   LINE      ---      ---       #750
+      01003476H   LINE      ---      ---       #751
+      01003476H   LINE      ---      ---       #752
+      0100347CH   LINE      ---      ---       #753
+      0100347CH   LINE      ---      ---       #754
+      0100347CH   LINE      ---      ---       #755
+      0100347CH   LINE      ---      ---       #756
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001FA8H   BLOCK     CODE     ---       LVL=0
@@ -2912,22 +2824,22 @@
       ---         MODULE    ---      ---       ADC
       010022E0H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
       01002335H   PUBLIC    CODE     ---       YC_adc_check
-      0100362FH   PUBLIC    CODE     ---       YC_adc_init
+      010034B2H   PUBLIC    CODE     ---       YC_adc_init
 
-      0100362FH   BLOCK     CODE     ---       LVL=0
-      0100362FH   LINE      ---      ---       #3
-      0100362FH   LINE      ---      ---       #4
-      0100362FH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100362FH   LINE      ---      ---       #8
-      01003635H   LINE      ---      ---       #9
-      01003638H   LINE      ---      ---       #21
-      01003639H   LINE      ---      ---       #22
-      01003639H   LINE      ---      ---       #23
-      0100364AH   LINE      ---      ---       #24
-      0100364FH   LINE      ---      ---       #25
-      0100365EH   LINE      ---      ---       #26
-      010036ACH   LINE      ---      ---       #27
-      010036FAH   LINE      ---      ---       #42
+      010034B2H   BLOCK     CODE     ---       LVL=0
+      010034B2H   LINE      ---      ---       #3
+      010034B2H   LINE      ---      ---       #4
+      010034B2H   BLOCK     CODE     NEAR LAB  LVL=1
+      010034B2H   LINE      ---      ---       #8
+      010034B8H   LINE      ---      ---       #9
+      010034BBH   LINE      ---      ---       #21
+      010034BCH   LINE      ---      ---       #22
+      010034BCH   LINE      ---      ---       #23
+      010034CDH   LINE      ---      ---       #24
+      010034D2H   LINE      ---      ---       #25
+      010034E1H   LINE      ---      ---       #26
+      0100352FH   LINE      ---      ---       #27
+      0100357DH   LINE      ---      ---       #42
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3015,12 +2927,12 @@
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       RAM
-      0100370BH   PUBLIC    CODE     ---       main
+      0100358EH   PUBLIC    CODE     ---       main
 
-      0100370BH   BLOCK     CODE     ---       LVL=0
-      0100370BH   LINE      ---      ---       #5
-      0100370BH   LINE      ---      ---       #6
-      0100370BH   LINE      ---      ---       #7
+      0100358EH   BLOCK     CODE     ---       LVL=0
+      0100358EH   LINE      ---      ---       #5
+      0100358EH   LINE      ---      ---       #6
+      0100358EH   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       IPC
@@ -3036,14 +2948,14 @@
       02000B7EH   PUBLIC    XDATA    BYTE      current_task
       01001D4FH   PUBLIC    CODE     ---       IPC_DealSingleStep
       01002D54H   PUBLIC    CODE     ---       IPC_IsTxBuffEmpty
-      0100373CH   PUBLIC    CODE     ---       IPC_AbandonLpm
+      010035BFH   PUBLIC    CODE     ---       IPC_AbandonLpm
       01001D41H   PUBLIC    CODE     ---       IPC_WaitLpm
       01001FAEH   PUBLIC    CODE     ---       _IPC_Initialize
-      01003736H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
-      0100372DH   PUBLIC    CODE     ---       _IPC_TxBleData
-      01003724H   PUBLIC    CODE     ---       _IPC_TxSppData
-      0100371BH   PUBLIC    CODE     ---       _IPC_Tx24GData
-      0100370EH   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
+      010035B9H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
+      010035B0H   PUBLIC    CODE     ---       _IPC_TxBleData
+      010035A7H   PUBLIC    CODE     ---       _IPC_TxSppData
+      0100359EH   PUBLIC    CODE     ---       _IPC_Tx24GData
+      01003591H   PUBLIC    CODE     ---       _IPC_TxBREDRHidData
       01000FD1H   PUBLIC    CODE     ---       _IPC_TxData
       01001413H   PUBLIC    CODE     ---       _IPC_TxControlCmd
 
@@ -3108,41 +3020,41 @@
       01000FE7H   LINE      ---      ---       #87
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100370EH   BLOCK     CODE     ---       LVL=0
-      0100370EH   LINE      ---      ---       #90
-      0100370EH   LINE      ---      ---       #91
-      0100370EH   LINE      ---      ---       #92
-      01003714H   LINE      ---      ---       #93
-      01003717H   LINE      ---      ---       #94
-      0100371AH   LINE      ---      ---       #95
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      0100371BH   BLOCK     CODE     ---       LVL=0
-      0100371BH   LINE      ---      ---       #97
-      0100371BH   LINE      ---      ---       #98
-      0100371BH   LINE      ---      ---       #99
-      01003721H   LINE      ---      ---       #100
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003724H   BLOCK     CODE     ---       LVL=0
-      01003724H   LINE      ---      ---       #103
-      01003724H   LINE      ---      ---       #104
-      01003724H   LINE      ---      ---       #105
-      0100372AH   LINE      ---      ---       #106
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      0100372DH   BLOCK     CODE     ---       LVL=0
-      0100372DH   LINE      ---      ---       #109
-      0100372DH   LINE      ---      ---       #110
-      0100372DH   LINE      ---      ---       #111
-      01003733H   LINE      ---      ---       #112
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003736H   BLOCK     CODE     ---       LVL=0
-      01003736H   LINE      ---      ---       #115
-      01003736H   LINE      ---      ---       #116
-      01003736H   LINE      ---      ---       #117
-      0100373BH   LINE      ---      ---       #118
+      01003591H   BLOCK     CODE     ---       LVL=0
+      01003591H   LINE      ---      ---       #90
+      01003591H   LINE      ---      ---       #91
+      01003591H   LINE      ---      ---       #92
+      01003597H   LINE      ---      ---       #93
+      0100359AH   LINE      ---      ---       #94
+      0100359DH   LINE      ---      ---       #95
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      0100359EH   BLOCK     CODE     ---       LVL=0
+      0100359EH   LINE      ---      ---       #97
+      0100359EH   LINE      ---      ---       #98
+      0100359EH   LINE      ---      ---       #99
+      010035A4H   LINE      ---      ---       #100
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035A7H   BLOCK     CODE     ---       LVL=0
+      010035A7H   LINE      ---      ---       #103
+      010035A7H   LINE      ---      ---       #104
+      010035A7H   LINE      ---      ---       #105
+      010035ADH   LINE      ---      ---       #106
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035B0H   BLOCK     CODE     ---       LVL=0
+      010035B0H   LINE      ---      ---       #109
+      010035B0H   LINE      ---      ---       #110
+      010035B0H   LINE      ---      ---       #111
+      010035B6H   LINE      ---      ---       #112
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010035B9H   BLOCK     CODE     ---       LVL=0
+      010035B9H   LINE      ---      ---       #115
+      010035B9H   LINE      ---      ---       #116
+      010035B9H   LINE      ---      ---       #117
+      010035BEH   LINE      ---      ---       #118
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001FAEH   BLOCK     CODE     ---       LVL=0
@@ -3159,12 +3071,12 @@
       01001D4AH   LINE      ---      ---       #129
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100373CH   BLOCK     CODE     ---       LVL=0
-      0100373CH   LINE      ---      ---       #132
-      0100373CH   LINE      ---      ---       #133
-      0100373CH   LINE      ---      ---       #134
-      01003742H   LINE      ---      ---       #135
-      01003747H   LINE      ---      ---       #136
+      010035BFH   BLOCK     CODE     ---       LVL=0
+      010035BFH   LINE      ---      ---       #132
+      010035BFH   LINE      ---      ---       #133
+      010035BFH   LINE      ---      ---       #134
+      010035C5H   LINE      ---      ---       #135
+      010035CAH   LINE      ---      ---       #136
       ---         BLOCKEND  ---      ---       LVL=0
 
       01002D54H   BLOCK     CODE     ---       LVL=0
@@ -3233,13 +3145,13 @@
       010022F1H   PUBLIC    CODE     ---       _dmemcpy
       02004EC5H   PUBLIC    XDATA    BYTE      ?_xmemcpy?BYTE
       0100087DH   PUBLIC    CODE     ---       _xmemcpy
-      01003748H   PUBLIC    CODE     ---       YC_Ice_break
+      010035CBH   PUBLIC    CODE     ---       YC_Ice_break
 
-      01003748H   BLOCK     CODE     ---       LVL=0
-      01003748H   LINE      ---      ---       #3
-      01003748H   LINE      ---      ---       #4
-      01003748H   LINE      ---      ---       #5
-      0100374EH   LINE      ---      ---       #7
+      010035CBH   BLOCK     CODE     ---       LVL=0
+      010035CBH   LINE      ---      ---       #3
+      010035CBH   LINE      ---      ---       #4
+      010035CBH   LINE      ---      ---       #5
+      010035D1H   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       0100087DH   BLOCK     CODE     ---       LVL=0
@@ -3303,39 +3215,39 @@
       ---         MODULE    ---      ---       GPIO
       020000A3H   PUBLIC    XDATA    ---       YC_GPIOWakeupL
       020000A7H   PUBLIC    XDATA    ---       YC_GPIOWakeupH
-      0100378EH   PUBLIC    CODE     ---       GPIO_fillpd
+      01003611H   PUBLIC    CODE     ---       GPIO_fillpd
       010022C3H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
       01001C99H   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
-      0100374FH   PUBLIC    CODE     ---       _GPIO_ClearWakeup
+      010035D2H   PUBLIC    CODE     ---       _GPIO_ClearWakeup
       00000020H.7 PUBLIC    BIT      BIT       ?_GPIO_SetWakeup?BIT
       01001CACH   PUBLIC    CODE     ---       _GPIO_SetWakeup
       00000020H.6 PUBLIC    BIT      BIT       ?_GPIO_SetOutput?BIT
       01001A40H   PUBLIC    CODE     ---       _GPIO_SetOutput
       00000020H.5 PUBLIC    BIT      BIT       ?_GPIO_SetInput?BIT
-      010033A2H   PUBLIC    CODE     ---       _GPIO_SetInput
+      01003225H   PUBLIC    CODE     ---       _GPIO_SetInput
       00000020H.4 PUBLIC    BIT      BIT       ?_GPIO_Setoe?BIT
-      010033C0H   PUBLIC    CODE     ---       _GPIO_Setoe
+      01003243H   PUBLIC    CODE     ---       _GPIO_Setoe
       00000020H.3 PUBLIC    BIT      BIT       ?_GPIO_SetPd?BIT
-      01003391H   PUBLIC    CODE     ---       _GPIO_SetPd
+      01003214H   PUBLIC    CODE     ---       _GPIO_SetPd
       00000020H.2 PUBLIC    BIT      BIT       ?_GPIO_SetPu?BIT
-      01003380H   PUBLIC    CODE     ---       _GPIO_SetPu
+      01003203H   PUBLIC    CODE     ---       _GPIO_SetPu
       00000020H.1 PUBLIC    BIT      BIT       ?_GPIO_Setout?BIT
       0100122CH   PUBLIC    CODE     ---       _GPIO_Setout
       01001FBBH   PUBLIC    CODE     ---       _GPIO_GetInputStatus
 
-      010033D1H   BLOCK     CODE     ---       LVL=0
-      010033D1H   LINE      ---      ---       #9
-      010033DCH   LINE      ---      ---       #10
-      010033DCH   BLOCK     CODE     NEAR LAB  LVL=1
-      010033DCH   LINE      ---      ---       #11
-      010033DEH   LINE      ---      ---       #12
-      010033DFH   LINE      ---      ---       #14
-      010033E3H   LINE      ---      ---       #15
-      010033EAH   LINE      ---      ---       #17
-      010033EDH   LINE      ---      ---       #18
-      0100340FH   LINE      ---      ---       #19
-      0100340FH   LINE      ---      ---       #21
-      0100340FH   LINE      ---      ---       #22
+      01003254H   BLOCK     CODE     ---       LVL=0
+      01003254H   LINE      ---      ---       #9
+      0100325FH   LINE      ---      ---       #10
+      0100325FH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100325FH   LINE      ---      ---       #11
+      01003261H   LINE      ---      ---       #12
+      01003262H   LINE      ---      ---       #14
+      01003266H   LINE      ---      ---       #15
+      0100326DH   LINE      ---      ---       #17
+      01003270H   LINE      ---      ---       #18
+      01003292H   LINE      ---      ---       #19
+      01003292H   LINE      ---      ---       #21
+      01003292H   LINE      ---      ---       #22
       00000006H   SYMBOL    DATA     VOID      queue
       00000005H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -3370,38 +3282,38 @@
       0100123DH   LINE      ---      ---       #47
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01003380H   BLOCK     CODE     ---       LVL=0
-      01003380H   LINE      ---      ---       #49
-      01003380H   LINE      ---      ---       #50
-      01003380H   LINE      ---      ---       #51
-      01003384H   LINE      ---      ---       #53
-      01003390H   LINE      ---      ---       #54
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01003391H   BLOCK     CODE     ---       LVL=0
-      01003391H   LINE      ---      ---       #56
-      01003391H   LINE      ---      ---       #57
-      01003391H   LINE      ---      ---       #58
-      01003395H   LINE      ---      ---       #60
-      010033A1H   LINE      ---      ---       #61
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010033C0H   BLOCK     CODE     ---       LVL=0
-      010033C0H   LINE      ---      ---       #63
-      010033C0H   LINE      ---      ---       #64
-      010033C0H   LINE      ---      ---       #65
-      010033C4H   LINE      ---      ---       #67
-      010033D0H   LINE      ---      ---       #68
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010033A2H   BLOCK     CODE     ---       LVL=0
-      010033A2H   LINE      ---      ---       #70
-      010033A4H   LINE      ---      ---       #71
-      010033A4H   LINE      ---      ---       #72
-      010033A8H   LINE      ---      ---       #74
-      010033B0H   LINE      ---      ---       #75
-      010033B9H   LINE      ---      ---       #76
-      010033BFH   LINE      ---      ---       #77
+      01003203H   BLOCK     CODE     ---       LVL=0
+      01003203H   LINE      ---      ---       #49
+      01003203H   LINE      ---      ---       #50
+      01003203H   LINE      ---      ---       #51
+      01003207H   LINE      ---      ---       #53
+      01003213H   LINE      ---      ---       #54
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003214H   BLOCK     CODE     ---       LVL=0
+      01003214H   LINE      ---      ---       #56
+      01003214H   LINE      ---      ---       #57
+      01003214H   LINE      ---      ---       #58
+      01003218H   LINE      ---      ---       #60
+      01003224H   LINE      ---      ---       #61
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003243H   BLOCK     CODE     ---       LVL=0
+      01003243H   LINE      ---      ---       #63
+      01003243H   LINE      ---      ---       #64
+      01003243H   LINE      ---      ---       #65
+      01003247H   LINE      ---      ---       #67
+      01003253H   LINE      ---      ---       #68
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01003225H   BLOCK     CODE     ---       LVL=0
+      01003225H   LINE      ---      ---       #70
+      01003227H   LINE      ---      ---       #71
+      01003227H   LINE      ---      ---       #72
+      0100322BH   LINE      ---      ---       #74
+      01003233H   LINE      ---      ---       #75
+      0100323CH   LINE      ---      ---       #76
+      01003242H   LINE      ---      ---       #77
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001A40H   BLOCK     CODE     ---       LVL=0
@@ -3435,16 +3347,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100374FH   BLOCK     CODE     ---       LVL=0
-      0100374FH   LINE      ---      ---       #107
-      0100374FH   LINE      ---      ---       #108
-      0100374FH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100374FH   LINE      ---      ---       #111
-      01003753H   LINE      ---      ---       #113
-      01003757H   LINE      ---      ---       #114
-      0100375EH   LINE      ---      ---       #115
-      01003780H   LINE      ---      ---       #116
-      0100378DH   LINE      ---      ---       #117
+      010035D2H   BLOCK     CODE     ---       LVL=0
+      010035D2H   LINE      ---      ---       #107
+      010035D2H   LINE      ---      ---       #108
+      010035D2H   BLOCK     CODE     NEAR LAB  LVL=1
+      010035D2H   LINE      ---      ---       #111
+      010035D6H   LINE      ---      ---       #113
+      010035DAH   LINE      ---      ---       #114
+      010035E1H   LINE      ---      ---       #115
+      01003603H   LINE      ---      ---       #116
+      01003610H   LINE      ---      ---       #117
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -3470,13 +3382,13 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100378EH   BLOCK     CODE     ---       LVL=0
-      0100378EH   LINE      ---      ---       #131
-      0100378EH   LINE      ---      ---       #132
-      0100378EH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100378EH   LINE      ---      ---       #134
-      01003790H   LINE      ---      ---       #135
-      010037C1H   LINE      ---      ---       #136
+      01003611H   BLOCK     CODE     ---       LVL=0
+      01003611H   LINE      ---      ---       #131
+      01003611H   LINE      ---      ---       #132
+      01003611H   BLOCK     CODE     NEAR LAB  LVL=1
+      01003611H   LINE      ---      ---       #134
+      01003613H   LINE      ---      ---       #135
+      01003644H   LINE      ---      ---       #136
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -3622,5 +3534,5 @@
       ---         MODULE    ---      ---       ?C_INIT
       01000626H   PUBLIC    CODE     ---       ?C_START
 
-Program Size: data=10.2 xdata=909 const=182 code=14092
+Program Size: data=10.2 xdata=909 const=182 code=13711
 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
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/output/eeprom.dat	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/c51/output/eeprom.dat	(working copy)
@@ -6604,8 +6604,8 @@
 01
 aa
 55
-c4
-37
+47
+36
 02
 05
 df
@@ -8122,8 +8122,8 @@
 06
 26
 02
-37
-0b
+35
+8e
 e4
 93
 a3
@@ -8262,14 +8262,14 @@
 22
 1a
 ff
-34
-b5
+33
+38
 00
 00
 00
 ff
-36
-fb
+35
+7e
 00
 1a
 08
@@ -9881,8 +9881,8 @@
 e0
 fd
 12
-37
-2d
+35
+b0
 90
 4c
 c5
@@ -9988,8 +9988,8 @@
 e0
 fd
 12
-37
-1b
+35
+9e
 22
 90
 4e
@@ -11273,8 +11273,8 @@
 92
 00
 12
-33
-d1
+32
+54
 22
 90
 4f
@@ -11843,11 +11843,11 @@
 17
 a7
 12
-34
-5b
+32
+de
 12
-35
-fa
+34
+7d
 7b
 01
 7a
@@ -11972,8 +11972,8 @@
 c3
 f0
 12
-34
-92
+33
+15
 7f
 0a
 f1
@@ -12111,11 +12111,11 @@
 20
 17
 12
-34
-7f
+33
 02
-34
-4e
+02
+32
+d1
 90
 4c
 c3
@@ -13337,8 +13337,8 @@
 d2
 04
 12
-33
-c0
+32
+43
 af
 04
 a2
@@ -13353,8 +13353,8 @@
 c2
 02
 12
-33
-80
+32
+03
 22
 90
 4c
@@ -13753,8 +13753,8 @@
 60
 05
 12
-37
-3c
+35
+bf
 80
 ab
 91
@@ -13863,8 +13863,8 @@
 80
 b0
 12
-37
-8e
+36
+11
 90
 81
 1c
@@ -18909,16 +18909,12 @@
 04
 f0
 22
-ae
-07
-ac
-05
 e4
 90
 4f
 09
 f0
-ee
+ef
 30
 e0
 05
@@ -18930,253 +18926,271 @@
 90
 4f
 09
-ec
+ed
 f0
-ff
-bf
+fe
+be
 35
-12
+0f
 90
 4c
 c1
 e0
-64
-02
-60
+b4
 02
-21
-c6
+1c
 90
 4f
 09
 74
 64
 f0
-21
-c6
+80
+14
 90
 4f
 09
 e0
-ff
 b4
 64
-12
+0d
 90
 4c
 c1
 e0
-64
-02
-60
+b4
 02
-21
-c6
+06
 90
 4f
 09
 74
 35
 f0
-21
-c6
-ef
-b4
-0f
-20
 90
-4c
-c1
+4d
+e5
 e0
 64
-02
-70
+01
+60
 02
 21
-c6
-90
-4d
-d3
-e0
-70
+d9
+ed
+12
+05
+b3
+31
+29
 08
+30
+88
+14
+30
+da
+1a
+31
+7b
+3a
+31
+83
+3b
+31
+8b
+3c
+31
+93
+3d
+31
+9b
+3e
+31
+a3
+3f
+31
+ab
+40
+31
+b3
+41
+31
+bb
+42
+31
+c3
+43
+31
+cb
+44
+31
+d3
+45
+00
+00
+31
+d9
 90
-4d
-d4
+4c
+c1
 e0
-70
-02
-21
-c6
-90
-4f
-09
+64
+01
+60
+39
 74
-14
+01
 f0
-21
-c6
 90
-4f
-09
+4c
+c3
 e0
-ff
-b4
-24
+fe
+d3
+94
+03
+50
+26
+ee
+c3
+94
+01
+40
 20
 90
 4c
 c1
 e0
-64
-02
-60
-02
-21
-c6
+fe
 90
-4d
-d3
+4c
+c3
 e0
-70
-08
-90
+75
+f0
+1f
+a4
+24
+f2
+f5
+82
+e4
+34
 4d
-d4
-e0
-70
-02
-21
-c6
-90
-4f
-09
-74
-25
+f5
+83
+ee
 f0
-21
-c6
-ef
-b4
-25
-20
 90
 4c
-c1
-e0
-64
-02
-60
-02
-21
-c6
+bf
+74
+03
+f0
+80
+06
 90
-4d
-d3
+4c
+bf
+74
+02
+f0
+ef
+30
 e0
-70
-08
+06
 90
-4d
-d4
-e0
-70
-02
-21
-c6
+4c
+e8
+74
+0c
+f0
+e4
 90
 4f
 09
-74
-22
 f0
 21
-c6
+d9
 90
-4f
-09
+4c
+c1
 e0
-ff
-b4
+60
+38
+e4
+f0
+90
+4c
+c3
+e0
+fe
+d3
+94
+03
+50
 26
+ee
+c3
+94
+01
+40
 20
 90
 4c
 c1
 e0
-64
-02
-60
-02
-21
-c6
+fe
 90
-4d
-d3
+4c
+c3
 e0
-70
-08
-90
+75
+f0
+1f
+a4
+24
+f2
+f5
+82
+e4
+34
 4d
-d4
-e0
-70
-02
-21
-c6
+f5
+83
+ee
+f0
 90
-4f
-09
+4c
+bf
 74
-23
+03
 f0
-21
-c6
-ef
-b4
-27
-20
+80
+06
 90
 4c
-c1
-e0
-64
-02
-60
+bf
+74
 02
-21
-c6
-90
-4d
-d3
-e0
-70
-08
-90
-4d
-d4
+f0
+ef
+30
 e0
-70
-02
-21
-c6
+06
 90
-4f
-09
+4c
+e8
 74
-26
+0c
 f0
-21
-c6
+e4
 90
 4f
 09
-e0
-fa
-64
-2d
-70
-56
+f0
+21
+d9
 90
 4c
 c1
@@ -19184,524 +19198,129 @@
 64
 02
 60
+39
+74
 02
-21
-c6
-90
-4d
-d3
-e0
-70
-08
+f0
 90
-4d
-d4
+4c
+c3
 e0
-70
-02
-21
-c6
-90
-4d
+fe
 d3
+94
+03
+50
+26
+ee
+c3
+94
+01
+40
+20
+90
+4c
+c1
 e0
-60
-1c
+fe
 90
-4d
-f1
+4c
+c3
 e0
-60
-0b
-af
-06
-7b
-24
-7d
+75
+f0
+1f
+a4
 24
-12
-2f
-ea
+f2
+f5
+82
+e4
+34
+4d
+f5
+83
+ee
+f0
+90
+4c
+bf
+74
+03
+f0
 80
-7c
-af
-06
-7b
-24
-7d
 06
-12
-2f
-ea
-80
-71
 90
-4d
-ee
+4c
+bf
+74
+02
+f0
+ef
+30
 e0
-60
-0b
-af
 06
-7b
-24
-7d
-42
-12
-2f
-ea
-80
-60
-af
-06
-7b
-24
-7d
-60
-12
-2f
-ea
-80
-55
-ea
-64
-30
-70
-50
 90
 4c
-c1
-e0
-64
-02
-70
-48
-90
-4d
-d3
-e0
-70
-06
-90
-4d
-d4
-e0
-60
-3c
-90
-4d
-d3
-e0
-60
-1c
+e8
+74
+0c
+f0
+e4
 90
-4d
-f1
-e0
-60
-0b
-af
-06
-7b
-25
-7d
-24
-12
-2f
-ea
-80
-25
-af
-06
-7b
-25
-7d
-06
-12
-2f
-ea
+4f
+09
+f0
 80
-1a
+5e
 90
-4d
-ee
-e0
-60
-0b
-af
-06
-7b
-25
-7d
-42
-12
-2f
-ea
-80
+4f
 09
-af
-06
-7b
-25
-7d
-60
-12
-2f
-ea
-90
-4d
-e5
-e0
-64
-01
-60
-02
-61
-56
-ec
-12
-05
-b3
-32
-a6
-08
-32
-05
-14
-32
-57
-1a
-32
-f8
-3a
-33
-00
-3b
-33
-08
-3c
-33
-10
-3d
-33
-18
-3e
-33
-20
-3f
-33
-28
-40
-33
-30
-41
-33
-38
-42
-33
-40
-43
-33
-48
-44
-33
-50
-45
-00
-00
-33
+74
+f1
+f0
+80
 56
 90
-4c
-c1
-e0
-64
-01
-60
-39
+4f
+09
 74
-01
+f6
 f0
+80
+4e
 90
-4c
-c3
-e0
-ff
-d3
-94
-03
-50
-26
-ef
-c3
-94
-01
-40
-20
-90
-4c
-c1
-e0
-ff
-90
-4c
-c3
-e0
-75
-f0
-1f
-a4
-24
-f2
-f5
-82
-e4
-34
-4d
-f5
-83
-ef
+4f
+09
+74
+f7
 f0
+80
+46
 90
-4c
-bf
+4f
+09
 74
-03
+f8
 f0
 80
-06
+3e
 90
-4c
-bf
+4f
+09
 74
-02
+f4
 f0
-ee
-30
-e0
-06
+80
+36
 90
-4c
-e8
+4f
+09
 74
-0c
+f5
 f0
-e4
-90
-4f
-09
-f0
-61
-56
-90
-4c
-c1
-e0
-60
-38
-e4
-f0
-90
-4c
-c3
-e0
-ff
-d3
-94
-03
-50
-26
-ef
-c3
-94
-01
-40
-20
-90
-4c
-c1
-e0
-ff
-90
-4c
-c3
-e0
-75
-f0
-1f
-a4
-24
-f2
-f5
-82
-e4
-34
-4d
-f5
-83
-ef
-f0
-90
-4c
-bf
-74
-03
-f0
-80
-06
-90
-4c
-bf
-74
-02
-f0
-ee
-30
-e0
-06
-90
-4c
-e8
-74
-0c
-f0
-e4
-90
-4f
-09
-f0
-61
-56
-90
-4c
-c1
-e0
-64
-02
-60
-39
-74
-02
-f0
-90
-4c
-c3
-e0
-ff
-d3
-94
-03
-50
-26
-ef
-c3
-94
-01
-40
-20
-90
-4c
-c1
-e0
-ff
-90
-4c
-c3
-e0
-75
-f0
-1f
-a4
-24
-f2
-f5
-82
-e4
-34
-4d
-f5
-83
-ef
-f0
-90
-4c
-bf
-74
-03
-f0
-80
-06
-90
-4c
-bf
-74
-02
-f0
-ee
-30
-e0
-06
-90
-4c
-e8
-74
-0c
-f0
-e4
-90
-4f
-09
-f0
-80
-5e
-90
-4f
-09
-74
-f1
-f0
-80
-56
-90
-4f
-09
-74
-f6
-f0
-80
-4e
-90
-4f
-09
-74
-f7
-f0
-80
-46
-90
-4f
-09
-74
-f8
-f0
-80
-3e
-90
-4f
-09
-74
-f4
-f0
-80
-36
-90
-4f
-09
-74
-f5
-f0
-80
-2e
+80
+2e
 90
 4f
 09
@@ -19769,8 +19388,8 @@
 ff
 c2
 03
-71
-91
+51
+14
 90
 4f
 0a
@@ -19778,8 +19397,8 @@
 ff
 c2
 02
-71
-80
+51
+03
 90
 4f
 0a
@@ -19787,8 +19406,8 @@
 ff
 c2
 04
-71
-c0
+51
+43
 22
 ef
 f4
@@ -19804,8 +19423,8 @@
 02
 92
 00
-71
-d1
+51
+54
 22
 ef
 f4
@@ -19821,8 +19440,8 @@
 03
 92
 00
-71
-d1
+51
+54
 22
 ac
 07
@@ -19836,8 +19455,8 @@
 05
 92
 03
-71
-91
+51
+14
 af
 04
 a2
@@ -19845,14 +19464,14 @@
 b3
 92
 02
-71
-80
+51
+03
 af
 04
 c2
 04
-71
-c0
+51
+43
 22
 ef
 f4
@@ -19868,8 +19487,8 @@
 04
 92
 00
-71
-d1
+51
+54
 22
 90
 4e
@@ -19985,8 +19604,8 @@
 ff
 60
 0a
-71
-5c
+31
+df
 90
 4f
 0c
@@ -20005,14 +19624,14 @@
 f0
 a3
 f0
-91
-62
+51
+e5
 80
 d7
-91
-7f
-91
-4e
+71
+02
+51
+d1
 02
 1a
 1e
@@ -20034,8 +19653,8 @@
 0c
 c2
 05
-71
-a2
+51
+25
 90
 4f
 0b
@@ -20162,8 +19781,8 @@
 e0
 14
 f0
-91
-92
+71
+15
 90
 4c
 e5
@@ -20360,8 +19979,8 @@
 30
 e1
 04
-91
-92
+71
+15
 80
 03
 12
@@ -20427,8 +20046,8 @@
 12
 0d
 65
-d1
-2f
+91
+b2
 90
 4c
 eb
@@ -20880,8 +20499,8 @@
 04
 cf
 22
-d2
-d6
+04
+63
 aa
 55
 40
@@ -22088,173 +21707,467 @@
 4f
 07
 ff
-0a
-fb
-0b
+0a
+fb
+0b
+ff
+1a
+fb
+1b
+fb
+1c
+fb
+1d
+f6
+1e
+f2
+1f
+ee
+20
+ea
+21
+e6
+22
+e2
+23
+de
+24
+da
+25
+d6
+26
+d2
+27
+ce
+28
+ca
+29
+c6
+2a
+c2
+2b
+bd
+2c
+b9
+2d
+b5
+2e
+b1
+2f
+ad
+30
+a9
+31
+80
+32
+80
+33
+80
+34
+c0
+35
+c1
+36
+c2
+37
+c3
+38
+c4
+39
+c5
+3a
+c6
+3b
+c7
+3c
+06
+3d
+07
+3e
+46
+3f
+85
+40
+86
+41
+87
+42
+c6
+43
+c7
+44
+d6
+45
+d7
+46
+e6
+47
+f5
+48
+00
+49
+f8
+4a
+7f
+4e
+ec
+4f
+5e
+55
+d0
+56
+c0
+57
+4c
+58
+6c
+59
+50
+68
+e4
+69
+00
+6a
+00
+6b
+30
+ff
+aa
+55
+02
+00
+63
+41
+70
+4f
+aa
+55
+0a
+00
+91
+4a
+55
+d0
+56
+c0
+57
+4c
+58
+6c
+59
+50
+aa
+55
+0a
+00
+87
+4a
+55
+d0
+56
+c0
+57
+4c
+58
+6c
+59
+50
+68
+75
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
 ff
-1a
-fb
-1b
-fb
-1c
-fb
-1d
-f6
-1e
-f2
-1f
-ee
-20
-ea
-21
-e6
-22
-e2
-23
-de
-24
-da
-25
-d6
-26
-d2
-27
-ce
-28
-ca
-29
-c6
-2a
-c2
-2b
-bd
-2c
-b9
-2d
-b5
-2e
-b1
-2f
-ad
-30
-a9
-31
-80
-32
-80
-33
-80
-34
-c0
-35
-c1
-36
-c2
-37
-c3
-38
-c4
-39
-c5
-3a
-c6
-3b
-c7
-3c
-06
-3d
-07
-3e
-46
-3f
-85
-40
-86
-41
-87
-42
-c6
-43
-c7
-44
-d6
-45
-d7
-46
-e6
-47
-f5
-48
-00
-49
-f8
-4a
-7f
-4e
-ec
-4f
-5e
-55
-d0
-56
-c0
-57
-4c
-58
-6c
-59
-50
-68
-e4
-69
-00
-6a
-00
-6b
-30
 ff
-aa
-55
-02
-00
-63
-41
-70
-4f
-aa
-55
-0a
-00
-91
-4a
-55
-d0
-56
-c0
-57
-4c
-58
-6c
-59
-50
-aa
-55
-0a
-00
-87
-4a
-55
-d0
-56
-c0
-57
-4c
-58
-6c
-59
-50
-d3
-67
 ff
 ff
 ff
@@ -32764,5 +32677,92 @@
 ff
 ff
 ff
-0b
-23
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+31
+b5
Index: c51/output/fw.hex
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/output/fw.hex	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/c51/output/fw.hex	(working copy)
@@ -92,7 +92,7 @@
 :1005B00082C822D083D082F8E493701274019370C1
 :1005C0000DA3A393F8740193F5828883E4737402F6
 :1005D000936860EFA3A3A380DF8A838982E47378A2
-:1005E0007FE4F6D8FD7581CF02062602370BE4932F
+:1005E0007FE4F6D8FD7581CF02062602358EE493AE
 :1005F000A3F8E493A34003F68001F208DFF4802916
 :10060000E493A3F85407240CC8C333C4540F442004
 :10061000C8834004F456800146F6DFE4800B0102F3
@@ -101,7 +101,7 @@
 :1006400054C025E060A840B8E493A3FAE493A3F86B
 :10065000E493A3C8C582C8CAC583CAF0A3C8C5822B
 :10066000C8CAC583CADFE9DEE780BE524E5CFF140C
-:100670003E000000FF221AFF34B5000000FF36FBE9
+:100670003E000000FF221AFF3338000000FF357EE5
 :10068000001A08090A0B0D0E0F151917141813126A
 :1006900011101B0000004C000000E400E03E142B91
 :1006A00004291DEF351E1A3916641B8A3A1F083CAF
@@ -202,14 +202,14 @@
 :100C900080D3121820EF7002A138904CEBE0600274
 :100CA000A138904CC7E0FF6404600AEFB4031E90C3
 :100CB0004DD5E06018904E84E0B406037403F07BD9
-:100CC000017A4E7984904E83E0FD12372D904CC509
+:100CC000017A4E7984904E83E0FD1235B0904CC588
 :100CD000E064037063904E84E0640170237404F058
 :100CE000A3E07014904E87E0700EA3E0700AA3E0BA
 :100CF0007006904DE0F08032904DE07401F0802A53
 :100D0000904E84E0B402197405F0A3E0700AA3E0E9
 :100D10007006904DE0F08012904DE07401F0800A72
 :100D2000904E84E0B403037407F07B017A4E79841B
-:100D3000904E83E0FD12371B22904EF6EBF0A3EAB3
+:100D3000904E83E0FD12359E22904EF6EBF0A3EA32
 :100D4000F0A3E9F0ED1DAE0470011C4E6016904E4C
 :100D5000F6E0FBA3E475F001120424A9F0FAE41212
 :100D600003FC80E0227B017A4C79BF7D497C00B195
@@ -289,7 +289,7 @@
 :10120000904CE5E0700C904CE8E07006C2017F1D48
 :10121000512C904CC3E0B4010C904CE5E0700C9064
 :101220004CE8E07006C2017F1E512C22EFF4600DE5
-:101230007B017A807974A20192001233D122904FFF
+:101230007B017A807974A201920012325422904F7D
 :1012400008EFF014B40D004002810D90125975F0B2
 :1012500003A4C58325F0C5837302128002128002A5
 :10126000128002140D0212C302130502130E0213A0
@@ -325,7 +325,7 @@
 :101440000EEFF01205B316941417631515862717BF
 :101450002A2914742F15803015D631163E32147493
 :101460003317053417443515CE3715863915D63C54
-:10147000000017A712345B1235FA7B017A4C79FC15
+:10147000000017A71232DE12347D7B017A4C79FC12
 :101480007D017C007FC07E7F122089904CFCE0644F
 :1014900001703E904C91E0FEA3E0FFC3904C96E0BB
 :1014A0009F904C95E09E5005121D4180E6904CE0C7
@@ -333,7 +333,7 @@
 :1014C000500F904CD57402F0E4904CE5F07F1981F8
 :1014D000137B017A4C79C07D017C007FBD7E7F1239
 :1014E0002089904CC0E0D394034002E4F0904CC0BB
-:1014F000E0904CC3F01234927F0AF1A87B017A4C41
+:1014F000E0904CC3F01233157F0AF1A87B017A4CBF
 :1015000079F27D027C007FBE7E7F122089904CF2B2
 :10151000E0B4FF19A3E0B4FF14904C93E0A3E09073
 :101520004CF2F0904C91E0A3E0904CF3F0904DEF32
@@ -342,7 +342,7 @@
 :101550007C007F527E7F1220897F0AF1A87B017A6E
 :101560004C79C17D017C007F577E7F1220897F0AE4
 :10157000F1A8904CC1E0D394024002E4F00220179D
-:1015800012347F02344E904CC3E0D394005002E1F9
+:101580001233020232D1904CC3E0D394005002E1F6
 :10159000A7E094044002E1A7E075F01FA424D5F968
 :1015A000744D35F0FA7B017D1F7C00F1F37FC8F1AB
 :1015B000A8C2017F1F512C7B017A4D79F47D5D7C9F
@@ -418,8 +418,8 @@
 :101A100001F011B2515EB138E4904CD2F022C2060E
 :101A20007F1D5140C2067F1E5140C2067F1E51409D
 :101A3000C2067F0C5140C2067F0C5140C2067F1D7A
-:101A4000AC07ECF46017AF04D2041233C0AF04A2A9
-:101A500006920112122CAF04C20212338022904C63
+:101A4000AC07ECF46017AF04D204123243AF04A227
+:101A500006920112122CAF04C20212320322904CE1
 :101A6000BFE0FF700241E8640160057FC81217A85B
 :101A7000C2017F1F12122C904CBFE0B402227B01E6
 :101A80007A4C79007D047C007F527E7F51E97B0196
@@ -444,14 +444,14 @@
 :101BB000E014600C24FE70E29100511EB14180FEE1
 :101BC000904CEAE07024904CECE0701E904CE5E004
 :101BD0007018904DDBE07012904CE8E0700C904D66
-:101BE000E5E07006904CF8E0600512373C80AB9160
+:101BE000E5E07006904CF8E060051235BF80AB91DF
 :101BF00000904CFEE06002511EB141809D809B220E
 :101C0000E4FF904F0DF0FEFDEF900681936049EFE9
 :101C100093FD131313541FFEED5407FD7401A80523
 :101C2000088002C333D8FCFDEE2478FBE434808BBB
 :101C300082F583E0FCEDF4FBEC5BF0EE2470F582C2
 :101C4000E43480F583E04DF0EE2474F582E43480D2
-:101C5000F583E05BF00F80B012378E90811CE0902E
+:101C5000F583E05BF00F80B012361190811CE090AC
 :101C60004F0DF0904DDFE06020E4FF91997F0191EE
 :101C7000997F0291997F0391997F0491997F0591B2
 :101C8000997F0691997F078010904F0DE0FF90009B
@@ -766,129 +766,105 @@
 :102FD000F07F0122904CCEE054E7F0E105904CCE1A
 :102FE000E054E7F054DFF07F0022904CF5EDF0A3C1
 :102FF000EBF0EF30E012904CF4E0B403047402F014
-:1030000022904CF47401F022904CF47404F022AE3F
-:1030100007AC05E4904F09F0EE30E005E4904CF881
-:10302000F0904F09ECF0FFBF3512904CC1E0640204
-:10303000600221C6904F097464F021C6904F09E0E8
-:10304000FFB46412904CC1E06402600221C6904F4C
-:10305000097435F021C6EFB40F20904CC1E0640232
-:10306000700221C6904DD3E07008904DD4E07002FC
-:1030700021C6904F097414F021C6904F09E0FFB4A7
-:103080002420904CC1E06402600221C6904DD3E040
-:103090007008904DD4E0700221C6904F097425F05D
-:1030A00021C6EFB42520904CC1E06402600221C625
-:1030B000904DD3E07008904DD4E0700221C6904F3F
-:1030C000097422F021C6904F09E0FFB42620904CED
-:1030D000C1E06402600221C6904DD3E07008904DBB
-:1030E000D4E0700221C6904F097423F021C6EFB4DA
-:1030F0002720904CC1E06402600221C6904DD3E0CD
-:103100007008904DD4E0700221C6904F097426F0EB
-:1031100021C6904F09E0FA642D7056904CC1E064CE
-:1031200002600221C6904DD3E07008904DD4E0704B
-:103130000221C6904DD3E0601C904DF1E0600BAFD2
-:10314000067B247D24122FEA807CAF067B247D063B
-:10315000122FEA8071904DEEE0600BAF067B247D6C
-:1031600042122FEA8060AF067B247D60122FEA8036
-:1031700055EA64307050904CC1E064027048904D44
-:10318000D3E07006904DD4E0603C904DD3E0601CDD
-:10319000904DF1E0600BAF067B257D24122FEA8075
-:1031A00025AF067B257D06122FEA801A904DEEE0B2
-:1031B000600BAF067B257D42122FEA8009AF067BAC
-:1031C000257D60122FEA904DE5E0640160026156B2
-:1031D000EC1205B332A60832051432571A32F83A07
-:1031E00033003B33083C33103D33183E33203F332C
-:1031F000284033304133384233404333484433501E
-:103200004500003356904CC1E0640160397401F010
-:10321000904CC3E0FFD394035026EFC394014020A9
-:10322000904CC1E0FF904CC3E075F01FA424F2F570
-:1032300082E4344DF583EFF0904CBF7403F08006C8
-:10324000904CBF7402F0EE30E006904CE8740CF045
-:10325000E4904F09F06156904CC1E06038E4F09082
-:103260004CC3E0FFD394035026EFC3940140209059
-:103270004CC1E0FF904CC3E075F01FA424F2F5822E
-:10328000E4344DF583EFF0904CBF7403F08006906A
-:103290004CBF7402F0EE30E006904CE8740CF0E4A1
-:1032A000904F09F06156904CC1E06402603974029D
-:1032B000F0904CC3E0FFD394035026EFC394014039
-:1032C00020904CC1E0FF904CC3E075F01FA424F2A5
-:1032D000F582E4344DF583EFF0904CBF7403F08039
-:1032E00006904CBF7402F0EE30E006904CE8740C8F
-:1032F000F0E4904F09F0805E904F0974F1F0805631
-:10330000904F0974F6F0804E904F0974F7F08046A4
-:10331000904F0974F8F0803E904F0974F4F08036B5
-:10332000904F0974F5F0802E904F0974F2F08026CA
-:10333000904F0974F3F0801E904F0974D6F08016F8
-:10334000904F0974FAF0800E904F0974F9F08006DE
-:10335000904F0974D5F0904F09E0FF22904F0AEF8B
-:10336000F0F4601B904F0AE0FFC2037191904F0A86
-:10337000E0FFC2027180904F0AE0FFC20471C022D8
-:10338000EFF4600C7B017A807978A202920071D10F
-:1033900022EFF4600C7B017A80797CA203920071A9
-:1033A000D122AC07ECF46017AF04A205920371912F
-:1033B000AF04A205B392027180AF04C20471C022AF
-:1033C000EFF4600C7B017A807970A204920071D1D5
-:1033D00022904EFCEBF0A3EAF0A3E9F0E4FEFDEF4F
-:1033E0005407FEEF1313135403FD300022904EFCDC
-:1033F000E0FBA3E0FAA3E02DF9E43AFA1203B6FFEA
-:103400007401A806088002C333D8FC4F0203FC9065
-:103410004EFCE0FBA3E0FAA3E02DF9E43AFA120334
-:10342000B6FF7401A806088002C333D8FCF45F021B
-:1034300003FCE4904F0CF0F0904F0CE09006819369
-:10344000FF600A715C904F0CE004F080EB229080EA
-:1034500080E4F0A3F0A3F0916280D7917F914E02B7
-:103460001A1EE4904F0BF0F0904F0BE0FFC394084E
-:10347000500CC20571A2904F0BE004F080EA22903C
-:103480008091740DF0A304F0A3F0A3F0A3F0A314B3
-:10349000F022904CC3E0B40107D2017F1E02122C2F
-:1034A000904CC3E0B40207D2017F0C02122CD2016F
-:1034B0007F1D02122C904CEAE0600214F0904CEF59
-:1034C000E0600214F0904CF8E0600B14F0E070063D
-:1034D000904CF47406F0904CE5E06025904CEEE0E2
-:1034E0007006904CE9E06006E4904CE5F022904CC8
-:1034F000E5E014F09192904CE5E070681217C980F5
-:1035000063904CE9E0705D904CEEE07057904CE2B7
-:10351000E06051C3904CE4E0943C904CE3E09400B4
-:103520005035904CE2E014F0E0FFC394045016EFE5
-:1035300030E109D2017F0C12122C8010C2017F0CE5
-:1035400012122C8007C2017F0C12122C904CE2E068
-:103550007012741CF0800D904CE2741CF0C2017F5C
-:103560000C12122C904DDFE07036904DE0E06401BB
-:10357000702E904CE3F0A3F0904DE0F0904E52E0AE
-:10358000600D7B017A4E79527D03120C55801190AB
-:103590004800E0600B7B017A4879007D09120C55E8
-:1035A000904CE8E0601BA3E07017904CEEE07011C7
-:1035B000904CE8E014F0E030E1049192800312179F
-:1035C000C9904DD6E06011E014F0E0700B904D3DD5
-:1035D000E070057F1B121413904DE9E0601BE014AE
-:1035E000F0E07015904D46E06002E4F0904CC7E0CA
-:1035F000B40406904213740CF022120D65D12F9082
-:103600004CEB7401F0904CE5741EF0E4904CF0F03B
-:10361000904D0774FFF09044FCE0904DD0F0904442
-:10362000FDE0904DD1F09044FEE0904DD2F022901C
-:103630004CD37405F0E4A3F0FFEF25E024D6F58227
-:10364000E4344CF5837451F0A3F00FEFB404EA9026
-:103650004C93E0FFA3E0904CFACFF0A3EFF0904C36
-:1036600091E0FEA3E0FFC3904C94E09FFD904C934B
-:10367000E09EFCE41202067BA47A70793D783F124A
-:1036800000FBC004C005C006C007904C91E0FCA33D
-:10369000E0FDE4120206D003D002D001D0001200F7
-:1036A0000A12023F904CDEEEF0A3EFF0904C91E056
-:1036B000FEA3E0FFC3904C94E09FFD904C93E09EEE
-:1036C000FCE41202067BD77AA37930783F1200FB24
-:1036D000C004C005C006C007904C91E0FCA3E0FD0B
-:1036E000E4120206D003D002D001D00012000A1268
-:1036F000023F904CE0EEF0A3EFF022904F01EDF08E
-:103700009000011203CF904F02F022021B98900B01
-:10371000E77403F0ED6003120FD122900BE77406FB
-:10372000F0020FD1900BE77404F0020FD1900BE779
-:103730007405F0020FD1900446E0FF22900B7F74D5
-:1037400001F0E4900B7EF0229082807401F022EF71
-:10375000F4603AEF5407FEEF1313135403FF24A34E
-:10376000F582E43400F583C083C082E0FD7401A8D3
-:1037700006088002C333D8FCF4FC5DD082D083F00D
-:1037800074A72FF582E43400F583E05CF022E4FFB7
-:10379000EFFD7C002478FBEC34808B82F583E0FE27
-:1037A000ED2470FDEC34808D82F583E04EF4FEEF65
-:1037B000247CFDEC34808D82F583EEF00FEFB404B1
-:0237C000CF2216
+:1030000022904CF47401F022904CF47404F022E409
+:10301000904F09F0EF30E005E4904CF8F0904F0944
+:10302000EDF0FEBE350F904CC1E0B4021C904F098C
+:103030007464F08014904F09E0B4640D904CC1E0CA
+:10304000B40206904F097435F0904DE5E0640160DC
+:103050000221D9ED1205B331290830881430DA1A6B
+:10306000317B3A31833B318B3C31933D319B3E3157
+:10307000A33F31AB4031B34131BB4231C34331CBCC
+:103080004431D345000031D9904CC1E0640160392E
+:103090007401F0904CC3E0FED394035026EEC39429
+:1030A000014020904CC1E0FE904CC3E075F01FA49D
+:1030B00024F2F582E4344DF583EEF0904CBF7403B6
+:1030C000F08006904CBF7402F0EF30E006904CE8C0
+:1030D000740CF0E4904F09F021D9904CC1E06038B5
+:1030E000E4F0904CC3E0FED394035026EEC3940169
+:1030F0004020904CC1E0FE904CC3E075F01FA4242A
+:10310000F2F582E4344DF583EEF0904CBF7403F099
+:103110008006904CBF7402F0EF30E006904CE874EB
+:103120000CF0E4904F09F021D9904CC1E0640260AA
+:10313000397402F0904CC3E0FED394035026EEC3E2
+:1031400094014020904CC1E0FE904CC3E075F01F0C
+:10315000A424F2F582E4344DF583EEF0904CBF7474
+:1031600003F08006904CBF7402F0EF30E006904C04
+:10317000E8740CF0E4904F09F0805E904F0974F110
+:10318000F08056904F0974F6F0804E904F0974F716
+:10319000F08046904F0974F8F0803E904F0974F427
+:1031A000F08036904F0974F5F0802E904F0974F23C
+:1031B000F08026904F0974F3F0801E904F0974D66A
+:1031C000F08016904F0974FAF0800E904F0974F950
+:1031D000F08006904F0974D5F0904F09E0FF2290DF
+:1031E0004F0AEFF0F4601B904F0AE0FFC203511446
+:1031F000904F0AE0FFC2025103904F0AE0FFC20461
+:10320000514322EFF4600C7B017A807978A202921C
+:1032100000515422EFF4600C7B017A80797CA20388
+:103220009200515422AC07ECF46017AF04A205924F
+:10323000035114AF04A205B392025103AF04C204B8
+:10324000514322EFF4600C7B017A807970A20492E2
+:1032500000515422904EFCEBF0A3EAF0A3E9F0E415
+:10326000FEFDEF5407FEEF1313135403FD3000224D
+:10327000904EFCE0FBA3E0FAA3E02DF9E43AFA1249
+:1032800003B6FF7401A806088002C333D8FC4F02BE
+:1032900003FC904EFCE0FBA3E0FAA3E02DF9E43A36
+:1032A000FA1203B6FF7401A806088002C333D8FCE3
+:1032B000F45F0203FCE4904F0CF0F0904F0CE090B0
+:1032C000068193FF600A31DF904F0CE004F080EB41
+:1032D00022908080E4F0A3F0A3F051E580D7710242
+:1032E00051D1021A1EE4904F0BF0F0904F0BE0FF0B
+:1032F000C39408500CC2055125904F0BE004F08098
+:10330000EA22908091740DF0A304F0A3F0A3F0A33F
+:10331000F0A314F022904CC3E0B40107D2017F1E49
+:1033200002122C904CC3E0B40207D2017F0C0212AF
+:103330002CD2017F1D02122C904CEAE0600214F0A6
+:10334000904CEFE0600214F0904CF8E0600B14F049
+:10335000E07006904CF47406F0904CE5E060259027
+:103360004CEEE07006904CE9E06006E4904CE5F02D
+:1033700022904CE5E014F07115904CE5E070681275
+:1033800017C98063904CE9E0705D904CEEE0705797
+:10339000904CE2E06051C3904CE4E0943C904CE3EC
+:1033A000E094005035904CE2E014F0E0FFC3940448
+:1033B0005016EF30E109D2017F0C12122C8010C29E
+:1033C000017F0C12122C8007C2017F0C12122C906C
+:1033D0004CE2E07012741CF0800D904CE2741CF012
+:1033E000C2017F0C12122C904DDFE07036904DE040
+:1033F000E06401702E904CE3F0A3F0904DE0F0906B
+:103400004E52E0600D7B017A4E79527D03120C55CD
+:103410008011904800E0600B7B017A4879007D09BB
+:10342000120C55904CE8E0601BA3E07017904CEE36
+:10343000E07011904CE8E014F0E030E10471158088
+:10344000031217C9904DD6E06011E014F0E0700B44
+:10345000904D3DE070057F1B121413904DE9E06024
+:103460001BE014F0E07015904D46E06002E4F0902F
+:103470004CC7E0B40406904213740CF022120D65A0
+:1034800091B2904CEB7401F0904CE5741EF0E49016
+:103490004CF0F0904D0774FFF09044FCE0904DD05C
+:1034A000F09044FDE0904DD1F09044FEE0904DD27C
+:1034B000F022904CD37405F0E4A3F0FFEF25E02454
+:1034C000D6F582E4344CF5837451F0A3F00FEFB4D9
+:1034D00004EA904C93E0FFA3E0904CFACFF0A3EF06
+:1034E000F0904C91E0FEA3E0FFC3904C94E09FFD70
+:1034F000904C93E09EFCE41202067BA47A70793D26
+:10350000783F1200FBC004C005C006C007904C9174
+:10351000E0FCA3E0FDE4120206D003D002D001D00B
+:103520000012000A12023F904CDEEEF0A3EFF09082
+:103530004C91E0FEA3E0FFC3904C94E09FFD904CC3
+:1035400093E09EFCE41202067BD77AA37930783FA1
+:103550001200FBC004C005C006C007904C91E0FCFF
+:10356000A3E0FDE4120206D003D002D001D0001285
+:10357000000A12023F904CE0EEF0A3EFF022904FD1
+:1035800001EDF09000011203CF904F02F022021BD8
+:1035900098900BE77403F0ED6003120FD122900BAB
+:1035A000E77406F0020FD1900BE77404F0020FD11C
+:1035B000900BE77405F0020FD1900446E0FF2290D3
+:1035C0000B7F7401F0E4900B7EF0229082807401F6
+:1035D000F022EFF4603AEF5407FEEF131313540395
+:1035E000FF24A3F582E43400F583C083C082E0FDAC
+:1035F0007401A806088002C333D8FCF4FC5DD082B5
+:10360000D083F074A72FF582E43400F583E05CF0FA
+:1036100022E4FFEFFD7C002478FBEC34808B82F504
+:1036200083E0FEED2470FDEC34808D82F583E04E66
+:10363000F4FEEF247CFDEC34808D82F583EEF00FF8
+:05364000EFB404CF22ED
 :00000001FF
Index: c51/output/fwram.rom
===================================================================
--- /XZR_Project/XZR_1086_AK8100/c51/output/fwram.rom	(revision 779)
+++ /XZR_Project/XZR_1086_AK8100/c51/output/fwram.rom	(working copy)
@@ -1514,8 +1514,8 @@
 06
 26
 02
-37
-0b
+35
+8e
 e4
 93
 a3
@@ -1654,14 +1654,14 @@
 22
 1a
 ff
-34
-b5
+33
+38
 00
 00
 00
 ff
-36
-fb
+35
+7e
 00
 1a
 08
@@ -3273,8 +3273,8 @@
 e0
 fd
 12
-37
-2d
+35
+b0
 90
 4c
 c5
@@ -3380,8 +3380,8 @@
 e0
 fd
 12
-37
-1b
+35
+9e
 22
 90
 4e
@@ -4665,8 +4665,8 @@
 92
 00
 12
-33
-d1
+32
+54
 22
 90
 4f
@@ -5235,11 +5235,11 @@
 17
 a7
 12
-34
-5b
+32
+de
 12
-35
-fa
+34
+7d
 7b
 01
 7a
@@ -5364,8 +5364,8 @@
 c3
 f0
 12
-34
-92
+33
+15
 7f
 0a
 f1
@@ -5503,11 +5503,11 @@
 20
 17
 12
-34
-7f
+33
 02
-34
-4e
+02
+32
+d1
 90
 4c
 c3
@@ -6729,8 +6729,8 @@
 d2
 04
 12
-33
-c0
+32
+43
 af
 04
 a2
@@ -6745,8 +6745,8 @@
 c2
 02
 12
-33
-80
+32
+03
 22
 90
 4c
@@ -7145,8 +7145,8 @@
 60
 05
 12
-37
-3c
+35
+bf
 80
 ab
 91
@@ -7255,8 +7255,8 @@
 80
 b0
 12
-37
-8e
+36
+11
 90
 81
 1c
@@ -12301,16 +12301,12 @@
 04
 f0
 22
-ae
-07
-ac
-05
 e4
 90
 4f
 09
 f0
-ee
+ef
 30
 e0
 05
@@ -12322,553 +12318,176 @@
 90
 4f
 09
-ec
+ed
 f0
-ff
-bf
+fe
+be
 35
-12
+0f
 90
 4c
 c1
 e0
-64
-02
-60
+b4
 02
-21
-c6
+1c
 90
 4f
 09
 74
 64
 f0
-21
-c6
+80
+14
 90
 4f
 09
 e0
-ff
 b4
 64
-12
+0d
 90
 4c
 c1
 e0
-64
-02
-60
+b4
 02
-21
-c6
+06
 90
 4f
 09
 74
 35
 f0
-21
-c6
-ef
-b4
-0f
-20
 90
-4c
-c1
+4d
+e5
 e0
 64
-02
-70
+01
+60
 02
 21
-c6
-90
-4d
-d3
-e0
-70
+d9
+ed
+12
+05
+b3
+31
+29
 08
+30
+88
+14
+30
+da
+1a
+31
+7b
+3a
+31
+83
+3b
+31
+8b
+3c
+31
+93
+3d
+31
+9b
+3e
+31
+a3
+3f
+31
+ab
+40
+31
+b3
+41
+31
+bb
+42
+31
+c3
+43
+31
+cb
+44
+31
+d3
+45
+00
+00
+31
+d9
 90
-4d
-d4
+4c
+c1
 e0
-70
-02
-21
-c6
-90
-4f
-09
+64
+01
+60
+39
 74
-14
+01
 f0
-21
-c6
 90
-4f
-09
+4c
+c3
 e0
-ff
-b4
-24
+fe
+d3
+94
+03
+50
+26
+ee
+c3
+94
+01
+40
 20
 90
 4c
 c1
 e0
-64
-02
-60
-02
-21
-c6
+fe
 90
-4d
-d3
+4c
+c3
 e0
-70
-08
-90
+75
+f0
+1f
+a4
+24
+f2
+f5
+82
+e4
+34
 4d
-d4
-e0
-70
-02
-21
-c6
+f5
+83
+ee
+f0
 90
-4f
-09
+4c
+bf
 74
-25
+03
 f0
-21
-c6
-ef
-b4
-25
-20
-90
-4c
-c1
-e0
-64
-02
-60
-02
-21
-c6
-90
-4d
-d3
-e0
-70
-08
-90
-4d
-d4
-e0
-70
-02
-21
-c6
-90
-4f
-09
-74
-22
-f0
-21
-c6
-90
-4f
-09
-e0
-ff
-b4
-26
-20
-90
-4c
-c1
-e0
-64
-02
-60
-02
-21
-c6
-90
-4d
-d3
-e0
-70
-08
-90
-4d
-d4
-e0
-70
-02
-21
-c6
-90
-4f
-09
-74
-23
-f0
-21
-c6
-ef
-b4
-27
-20
-90
-4c
-c1
-e0
-64
-02
-60
-02
-21
-c6
-90
-4d
-d3
-e0
-70
-08
-90
-4d
-d4
-e0
-70
-02
-21
-c6
-90
-4f
-09
-74
-26
-f0
-21
-c6
-90
-4f
-09
-e0
-fa
-64
-2d
-70
-56
-90
-4c
-c1
-e0
-64
-02
-60
-02
-21
-c6
-90
-4d
-d3
-e0
-70
-08
-90
-4d
-d4
-e0
-70
-02
-21
-c6
-90
-4d
-d3
-e0
-60
-1c
-90
-4d
-f1
-e0
-60
-0b
-af
-06
-7b
-24
-7d
-24
-12
-2f
-ea
-80
-7c
-af
-06
-7b
-24
-7d
-06
-12
-2f
-ea
-80
-71
-90
-4d
-ee
-e0
-60
-0b
-af
-06
-7b
-24
-7d
-42
-12
-2f
-ea
-80
-60
-af
-06
-7b
-24
-7d
-60
-12
-2f
-ea
-80
-55
-ea
-64
-30
-70
-50
-90
-4c
-c1
-e0
-64
-02
-70
-48
-90
-4d
-d3
-e0
-70
-06
-90
-4d
-d4
-e0
-60
-3c
-90
-4d
-d3
-e0
-60
-1c
-90
-4d
-f1
-e0
-60
-0b
-af
-06
-7b
-25
-7d
-24
-12
-2f
-ea
-80
-25
-af
-06
-7b
-25
-7d
-06
-12
-2f
-ea
-80
-1a
-90
-4d
-ee
-e0
-60
-0b
-af
-06
-7b
-25
-7d
-42
-12
-2f
-ea
-80
-09
-af
-06
-7b
-25
-7d
-60
-12
-2f
-ea
-90
-4d
-e5
-e0
-64
-01
-60
-02
-61
-56
-ec
-12
-05
-b3
-32
-a6
-08
-32
-05
-14
-32
-57
-1a
-32
-f8
-3a
-33
-00
-3b
-33
-08
-3c
-33
-10
-3d
-33
-18
-3e
-33
-20
-3f
-33
-28
-40
-33
-30
-41
-33
-38
-42
-33
-40
-43
-33
-48
-44
-33
-50
-45
-00
-00
-33
-56
-90
-4c
-c1
-e0
-64
-01
-60
-39
-74
-01
-f0
-90
-4c
-c3
-e0
-ff
-d3
-94
-03
-50
-26
-ef
-c3
-94
-01
-40
-20
-90
-4c
-c1
-e0
-ff
-90
-4c
-c3
-e0
-75
-f0
-1f
-a4
-24
-f2
-f5
-82
-e4
-34
-4d
-f5
-83
-ef
-f0
-90
-4c
-bf
-74
-03
-f0
-80
-06
+80
+06
 90
 4c
 bf
 74
 02
 f0
-ee
+ef
 30
 e0
 06
@@ -12883,8 +12502,8 @@
 4f
 09
 f0
-61
-56
+21
+d9
 90
 4c
 c1
@@ -12897,13 +12516,13 @@
 4c
 c3
 e0
-ff
+fe
 d3
 94
 03
 50
 26
-ef
+ee
 c3
 94
 01
@@ -12913,7 +12532,7 @@
 4c
 c1
 e0
-ff
+fe
 90
 4c
 c3
@@ -12931,7 +12550,7 @@
 4d
 f5
 83
-ef
+ee
 f0
 90
 4c
@@ -12947,7 +12566,7 @@
 74
 02
 f0
-ee
+ef
 30
 e0
 06
@@ -12962,8 +12581,8 @@
 4f
 09
 f0
-61
-56
+21
+d9
 90
 4c
 c1
@@ -12979,13 +12598,13 @@
 4c
 c3
 e0
-ff
+fe
 d3
 94
 03
 50
 26
-ef
+ee
 c3
 94
 01
@@ -12995,7 +12614,7 @@
 4c
 c1
 e0
-ff
+fe
 90
 4c
 c3
@@ -13013,7 +12632,7 @@
 4d
 f5
 83
-ef
+ee
 f0
 90
 4c
@@ -13029,7 +12648,7 @@
 74
 02
 f0
-ee
+ef
 30
 e0
 06
@@ -13161,8 +12780,8 @@
 ff
 c2
 03
-71
-91
+51
+14
 90
 4f
 0a
@@ -13170,8 +12789,8 @@
 ff
 c2
 02
-71
-80
+51
+03
 90
 4f
 0a
@@ -13179,8 +12798,8 @@
 ff
 c2
 04
-71
-c0
+51
+43
 22
 ef
 f4
@@ -13196,8 +12815,8 @@
 02
 92
 00
-71
-d1
+51
+54
 22
 ef
 f4
@@ -13213,8 +12832,8 @@
 03
 92
 00
-71
-d1
+51
+54
 22
 ac
 07
@@ -13228,8 +12847,8 @@
 05
 92
 03
-71
-91
+51
+14
 af
 04
 a2
@@ -13237,14 +12856,14 @@
 b3
 92
 02
-71
-80
+51
+03
 af
 04
 c2
 04
-71
-c0
+51
+43
 22
 ef
 f4
@@ -13260,8 +12879,8 @@
 04
 92
 00
-71
-d1
+51
+54
 22
 90
 4e
@@ -13377,8 +12996,8 @@
 ff
 60
 0a
-71
-5c
+31
+df
 90
 4f
 0c
@@ -13397,14 +13016,14 @@
 f0
 a3
 f0
-91
-62
+51
+e5
 80
 d7
-91
-7f
-91
-4e
+71
+02
+51
+d1
 02
 1a
 1e
@@ -13426,8 +13045,8 @@
 0c
 c2
 05
-71
-a2
+51
+25
 90
 4f
 0b
@@ -13554,8 +13173,8 @@
 e0
 14
 f0
-91
-92
+71
+15
 90
 4c
 e5
@@ -13752,8 +13371,8 @@
 30
 e1
 04
-91
-92
+71
+15
 80
 03
 12
@@ -13819,8 +13438,8 @@
 12
 0d
 65
-d1
-2f
+91
+b2
 90
 4c
 eb
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
