Index: c51/keyscan.c
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/keyscan.c	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/c51/keyscan.c	(working copy)
@@ -9,7 +9,9 @@
 	REG_GPIO_OE(g) |= n; \
 	REG_GPIO_OUT(g) &= ~n;	\
 	y = ~ REG_GPIO_IN(0);	\
-	REG_GPIO_OUT(g) |= n
+	REG_GPIO_PUP(g) |= n;	\
+	REG_GPIO_OE(g) &= ~n
+
 
 
 #define GET_RAW_KEY_SEL0(y,x)		GPIO_SetOutput(x, 0); \
@@ -198,7 +200,7 @@
 {
 	byte i = 0;
 	for (i=0; col[i]!=0; i++) {
-		GPIO_SetOutput(col[i], 1);
+		GPIO_SetInput(col[i], 0);
 	}
 }
 
Index: c51/output/FW
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/FW.COD
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/output/FW.COD	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/c51/output/FW.COD	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               01/24/2022  21:25:59  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               02/11/2022  18:27:54  PAGE 1
 
 
 
@@ -591,7 +591,7 @@
 000928 E0                MOVX    A,@DPTR
 000929 FD                MOV     R5,A
 00092A 7B64              MOV     R3,#064H
-00092C 1225E1            LCALL   _bufsize
+00092C 122607            LCALL   _bufsize
 00092F 904E58            MOV     DPTR,#len
 000932 E0                MOVX    A,@DPTR
 000933 FE                MOV     R6,A
@@ -866,9 +866,9 @@
   121: 	case IPC_EVT_RESET:
 000AA7         ?C0014?SYS:
   122: 		System_Hardware_init();
-000AA7 122378            LCALL   System_Hardware_init
+000AA7 12239E            LCALL   System_Hardware_init
   123: 		System_Software_init();
-000AAA 122380            LCALL   System_Software_init
+000AAA 1223A6            LCALL   System_Software_init
   124: 		IIC_Read(EEPROM_BATTERY_SHUTDOWN_FLAG ,1 ,(byte *)&g_variable.battery_shutdown_flag);
 000AAD 7B01              MOV     R3,#01H
 000AAF 7A4C              MOV     R2,#HIGH g_variable+03AH
@@ -964,7 +964,7 @@
   146: 	case IPC_EVT_WAKEUP:
 000B27         ?C0019?SYS:
   147: 		System_IIC_clk_setup();
-000B27 122365            LCALL   System_IIC_clk_setup
+000B27 12238B            LCALL   System_IIC_clk_setup
   148: 		KS_Initialize();
 000B2A F1D6              ACALL   KS_Initialize
   149: 		g_variable.g24_long_sleep_flag = 0;	
@@ -1049,7 +1049,7 @@
   174: 					YC_update_eeprom_data();
 000B8B 121587            LCALL   YC_update_eeprom_data
   175: 					System_Hardware_reset();
-000B8E 022461            LJMP    System_Hardware_reset
+000B8E 022487            LJMP    System_Hardware_reset
   176: 				}
   177: 		}
 000B91         ?C0022?SYS:
@@ -1997,36 +1997,36 @@
 
 ----- FUNCTION KS_Initialize (BEGIN) -----
  FILE: 'keyscan.c'
-  205: void KS_Initialize()
-  206: {
-  207: 	REG_GPIO_SELECT(0) = 0;
-  208: 	REG_GPIO_SELECT(1) = 0;
+  207: void KS_Initialize()
+  208: {
+  209: 	REG_GPIO_SELECT(0) = 0;
+  210: 	REG_GPIO_SELECT(1) = 0;
 000FD6 908080            MOV     DPTR,#08080H
 000FD9 E4                CLR     A
 000FDA F0                MOVX    @DPTR,A
-  209: 	REG_GPIO_SELECT(2) = 0;
+  211: 	REG_GPIO_SELECT(2) = 0;
 000FDB A3                INC     DPTR
 000FDC F0                MOVX    @DPTR,A
-  210: 	ksRawInitialize();
+  212: 	ksRawInitialize();
 000FDD A3                INC     DPTR
 000FDE F0                MOVX    @DPTR,A
-  211: 	ksColInitialize();
+  213: 	ksColInitialize();
 000FDF 122058            LCALL   ksRawInitialize
 ;----                  JMP     ksColInitialize
-  212: }
+  214: }
 ----- FUNCTION KS_Initialize (END) -------
 
 
 ----- FUNCTION ksColInitialize (BEGIN) -----
  FILE: 'keyscan.c'
-  197: static void ksColInitialize()
-  198: {
-  199: 	byte i = 0;
-  200: 	for (i=0; col[i]!=0; i++) {
+  199: static void ksColInitialize()
+  200: {
+  201: 	byte i = 0;
+  202: 	for (i=0; col[i]!=0; i++) {
 000FE2 E4                CLR     A
 000FE3 904E9A            MOV     DPTR,#i
 000FE6 F0                MOVX    @DPTR,A
-  201: 		GPIO_SetOutput(col[i], 1);
+  203: 		GPIO_SetInput(col[i], 0);
 000FE7 F0                MOVX    @DPTR,A
 000FE8         ?C0032?KEYSCAN:
 000FE8 904E9A            MOV     DPTR,#i
@@ -2035,16 +2035,16 @@
 000FEF 93                MOVC    A,@A+DPTR
 000FF0 FF                MOV     R7,A
 000FF1 600D              JZ      ?C0035?KEYSCAN
-  202: 	}
-000FF3 D206              SETB    ?_GPIO_SetOutput?BIT
-000FF5 120783            LCALL   _GPIO_SetOutput
-  203: }
+  204: 	}
+000FF3 C205              CLR     ?_GPIO_SetInput?BIT
+000FF5 122075            LCALL   _GPIO_SetInput
+  205: }
 000FF8 904E9A            MOV     DPTR,#i
 000FFB E0                MOVX    A,@DPTR
 000FFC 04                INC     A
 000FFD F0                MOVX    @DPTR,A
 000FFE 80E8              SJMP    ?C0032?KEYSCAN
-  204: 
+  206: 
 001000         ?C0035?KEYSCAN:
 001000 22                RET     
 ----- FUNCTION ksColInitialize (END) -------
@@ -2745,7 +2745,7 @@
 0012C7         ?C0096?SYS:
   495: 		IPC_DealSingleStep();
   496: 		kb_need_keyscan();
-0012C7 12268B            LCALL   IPC_DealSingleStep
+0012C7 1226B1            LCALL   IPC_DealSingleStep
   497: 		YC_update_eeprom_data();
 0012CA 5142              ACALL   kb_need_keyscan
   498: 		LED_handle();
@@ -2829,29 +2829,29 @@
 
 ----- FUNCTION KS_Unistall (BEGIN) -----
  FILE: 'keyscan.c'
-  214: void KS_Unistall()
-  215: {
-  216: 	byte i = 0;
-  217: 	byte temp = 0;
+  216: void KS_Unistall()
+  217: {
+  218: 	byte i = 0;
+  219: 	byte temp = 0;
 ;---- Variable 'i' assigned to Register 'R7' ----
 001313 E4                CLR     A
 001314 FF                MOV     R7,A
-  218: 	byte tgroup = 0;
+  220: 	byte tgroup = 0;
 001315 904E9B            MOV     DPTR,#temp
 001318 F0                MOVX    @DPTR,A
-  219: 	byte tgpionum = 0;
+  221: 	byte tgpionum = 0;
 ;---- Variable 'tgroup' assigned to Register 'R6' ----
 001319 FE                MOV     R6,A
-  220: 	for (i=0; col[i]!=0; i++) {
+  222: 	for (i=0; col[i]!=0; i++) {
 ;---- Variable 'tgpionum' assigned to Register 'R5' ----
 00131A FD                MOV     R5,A
-  221: 		tgroup = col[i]  >> 3;
+  223: 		tgroup = col[i]  >> 3;
 00131B         ?C0037?KEYSCAN:
 00131B EF                MOV     A,R7
 00131C 90060C            MOV     DPTR,#col
 00131F 93                MOVC    A,@A+DPTR
 001320 6049              JZ      ?C0038?KEYSCAN
-  222: 		tgpionum = 1 << (col[i] & 7);
+  224: 		tgpionum = 1 << (col[i] & 7);
 001322 EF                MOV     A,R7
 001323 93                MOVC    A,@A+DPTR
 001324 FD                MOV     R5,A
@@ -2860,7 +2860,7 @@
 001327 13                RRC     A
 001328 541F              ANL     A,#01FH
 00132A FE                MOV     R6,A
-  223: 		REG_GPIO_PUP (tgroup) &= ~tgpionum;
+  225: 		REG_GPIO_PUP (tgroup) &= ~tgpionum;
 00132B ED                MOV     A,R5
 00132C 5407              ANL     A,#07H
 00132E FD                MOV     R5,A
@@ -2874,7 +2874,7 @@
 001338         ?C0097?KEYSCAN:
 001338 D8FC              DJNZ    R0,?C0096?KEYSCAN
 00133A FD                MOV     R5,A
-  224: 		REG_GPIO_OE(tgroup) |= tgpionum;
+  226: 		REG_GPIO_OE(tgroup) |= tgpionum;
 00133B EE                MOV     A,R6
 00133C 2478              ADD     A,#078H
 00133E FB                MOV     R3,A
@@ -2890,7 +2890,7 @@
 00134B EC                MOV     A,R4
 00134C 5B                ANL     A,R3
 00134D F0                MOVX    @DPTR,A
-  225: 		REG_GPIO_OUT(tgroup) &= ~tgpionum;
+  227: 		REG_GPIO_OUT(tgroup) &= ~tgpionum;
 00134E EE                MOV     A,R6
 00134F 2470              ADD     A,#070H
 001351 F582              MOV     DPL,A
@@ -2900,7 +2900,7 @@
 001358 E0                MOVX    A,@DPTR
 001359 4D                ORL     A,R5
 00135A F0                MOVX    @DPTR,A
-  226: 	}
+  228: 	}
 00135B EE                MOV     A,R6
 00135C 2474              ADD     A,#074H
 00135E F582              MOV     DPL,A
@@ -2910,67 +2910,67 @@
 001365 E0                MOVX    A,@DPTR
 001366 5B                ANL     A,R3
 001367 F0                MOVX    @DPTR,A
-  227: 	
+  229: 	
 001368 0F                INC     R7
 001369 80B0              SJMP    ?C0037?KEYSCAN
 00136B         ?C0038?KEYSCAN:
-  228: 	GPIO_fillpd();
+  230: 	GPIO_fillpd();
 00136B F14F              ACALL   GPIO_fillpd
-  229: 	
-  230: 	temp = REG_GPIO_IN(0);
+  231: 	
+  232: 	temp = REG_GPIO_IN(0);
 00136D 90811C            MOV     DPTR,#0811CH
 001370 E0                MOVX    A,@DPTR
 001371 904E9B            MOV     DPTR,#temp
 001374 F0                MOVX    @DPTR,A
-  231: 
-  232: 	if(long_press_flag)
+  233: 
+  234: 	if(long_press_flag)
 001375 904DD5            MOV     DPTR,#long_press_flag
 001378 E0                MOVX    A,@DPTR
 001379 6020              JZ      ?C0040?KEYSCAN
-  233: 	{
-  234: 		GPIO_SetWakeupByCurrentState(0);
+  235: 	{
+  236: 		GPIO_SetWakeupByCurrentState(0);
 00137B E4                CLR     A
 00137C FF                MOV     R7,A
 00137D 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  235: 		GPIO_SetWakeupByCurrentState(1);
+  237: 		GPIO_SetWakeupByCurrentState(1);
 00137F 7F01              MOV     R7,#01H
 001381 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  236: 		GPIO_SetWakeupByCurrentState(2);
+  238: 		GPIO_SetWakeupByCurrentState(2);
 001383 7F02              MOV     R7,#02H
 001385 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  237: 		GPIO_SetWakeupByCurrentState(3);
+  239: 		GPIO_SetWakeupByCurrentState(3);
 001387 7F03              MOV     R7,#03H
 001389 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  238: 		GPIO_SetWakeupByCurrentState(4);
+  240: 		GPIO_SetWakeupByCurrentState(4);
 00138B 7F04              MOV     R7,#04H
 00138D 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  239: 		GPIO_SetWakeupByCurrentState(5);
+  241: 		GPIO_SetWakeupByCurrentState(5);
 00138F 7F05              MOV     R7,#05H
 001391 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  240: 		GPIO_SetWakeupByCurrentState(6);
+  242: 		GPIO_SetWakeupByCurrentState(6);
 001393 7F06              MOV     R7,#06H
 001395 71AB              ACALL   _GPIO_SetWakeupByCurrentState
-  241: 		GPIO_SetWakeupByCurrentState(7);
+  243: 		GPIO_SetWakeupByCurrentState(7);
 001397 7F07              MOV     R7,#07H
 001399 8010              SJMP    _GPIO_SetWakeupByCurrentState
-  242: 	}
+  244: 	}
 00139B         ?C0040?KEYSCAN:
-  243: 	else
-  244: 	{
-  245: 		YC_GPIOWakeupL[0] = temp;
+  245: 	else
+  246: 	{
+  247: 		YC_GPIOWakeupL[0] = temp;
 00139B 904E9B            MOV     DPTR,#temp
 00139E E0                MOVX    A,@DPTR
 00139F FF                MOV     R7,A
 0013A0 9000A3            MOV     DPTR,#YC_GPIOWakeupL
 0013A3 F0                MOVX    @DPTR,A
-  246: 		YC_GPIOWakeupH[0] = ~temp;
+  248: 		YC_GPIOWakeupH[0] = ~temp;
 0013A4 EF                MOV     A,R7
 0013A5 F4                CPL     A
 0013A6 9000A7            MOV     DPTR,#YC_GPIOWakeupH
 0013A9 F0                MOVX    @DPTR,A
-  247: 	}
-  248: 
-  249: }
+  249: 	}
+  250: 
+  251: }
 0013AA 22                RET     
 ----- FUNCTION KS_Unistall (END) -------
 
@@ -3316,7 +3316,7 @@
 00150F 7405              MOV     A,#05H
 001511 F0                MOVX    @DPTR,A
   114: 			YC_adc_check();
-001512 12247C            LCALL   YC_adc_check
+001512 1224A2            LCALL   YC_adc_check
   115: 		}
   116: 	}
   117: #endif	
@@ -5011,48 +5011,48 @@
 
 ----- FUNCTION KS_GetCurrentEvt (BEGIN) -----
  FILE: 'keyscan.c'
-  291: tKSEVENT *KS_GetCurrentEvt()
-  292: {
-  293: 	//
-  294: 	byte i = 0;
+  293: tKSEVENT *KS_GetCurrentEvt()
+  294: {
+  295: 	//
+  296: 	byte i = 0;
 001C84 E4                CLR     A
 001C85 904E24            MOV     DPTR,#i
 001C88 F0                MOVX    @DPTR,A
-  295: 	byte j = 0;
+  297: 	byte j = 0;
 001C89 A3                INC     DPTR
 001C8A F0                MOVX    @DPTR,A
-  296: 	byte k = 0;
+  298: 	byte k = 0;
 001C8B A3                INC     DPTR
 001C8C F0                MOVX    @DPTR,A
-  297: 	byte temp = 0;
+  299: 	byte temp = 0;
 001C8D A3                INC     DPTR
 001C8E F0                MOVX    @DPTR,A
-  298: 	byte flag = 0;
+  300: 	byte flag = 0;
 001C8F A3                INC     DPTR
 001C90 F0                MOVX    @DPTR,A
-  299: 	byte offset = 0;
+  301: 	byte offset = 0;
 001C91 A3                INC     DPTR
 001C92 F0                MOVX    @DPTR,A
-  300: 	byte state = 0;
+  302: 	byte state = 0;
 001C93 A3                INC     DPTR
 001C94 F0                MOVX    @DPTR,A
-  301: 	byte keyCounttemp = 0;
+  303: 	byte keyCounttemp = 0;
 001C95 A3                INC     DPTR
 001C96 F0                MOVX    @DPTR,A
-  302: 	byte key_value_temp = 0;
+  304: 	byte key_value_temp = 0;
 001C97 A3                INC     DPTR
 001C98 F0                MOVX    @DPTR,A
-  303: 	byte ghost = 0;
+  305: 	byte ghost = 0;
 001C99 A3                INC     DPTR
 001C9A F0                MOVX    @DPTR,A
-  304: 	byte rawCount = 0;
+  306: 	byte rawCount = 0;
 001C9B A3                INC     DPTR
 001C9C F0                MOVX    @DPTR,A
-  305: 	
-  306: 	KS_ScanMatrix();
+  307: 	
+  308: 	KS_ScanMatrix();
 001C9D 122127            LCALL   KS_ScanMatrix
-  307: 
-  308: 	if (compare_str(ksSelMapCurr,ksSelMapCheck,KB_KSCAN_COL_NUM) 
+  309: 
+  310: 	if (compare_str(ksSelMapCurr,ksSelMapCheck,KB_KSCAN_COL_NUM) 
 001CA0 7A4D              MOV     R2,#HIGH ksSelMapCheck
 001CA2 79A8              MOV     R1,#LOW ksSelMapCheck
 001CA4 904E4A            MOV     DPTR,#?_compare_str?BYTE+03H
@@ -5080,31 +5080,31 @@
 001CC9 D1DE              ACALL   _array_is_empty
 001CCB EF                MOV     A,R7
 001CCC 7009              JNZ     ?C0059?KEYSCAN
-  309: 		&& !array_is_empty(ksSelMapCurr,KB_KSCAN_COL_NUM))
-  310: 	{
-  311: 		g_variable.button_flag |= 0x02;
+  311: 		&& !array_is_empty(ksSelMapCurr,KB_KSCAN_COL_NUM))
+  312: 	{
+  313: 		g_variable.button_flag |= 0x02;
 001CCE 904CCE            MOV     DPTR,#g_variable+0FH
 001CD1 E0                MOVX    A,@DPTR
 001CD2 4402              ORL     A,#02H
 001CD4 F0                MOVX    @DPTR,A
-  312: 	}
+  314: 	}
 001CD5 800C              SJMP    ?C0060?KEYSCAN
 001CD7         ?C0059?KEYSCAN:
-  313: 	else
-  314: 	{	
-  315: 		g_variable.button_flag &= 0xFD;
+  315: 	else
+  316: 	{	
+  317: 		g_variable.button_flag &= 0xFD;
 001CD7 904CCE            MOV     DPTR,#g_variable+0FH
 001CDA E0                MOVX    A,@DPTR
 001CDB 54FD              ANL     A,#0FDH
 001CDD F0                MOVX    @DPTR,A
-  316: 		g_variable.button_timer[1] = 0;
+  318: 		g_variable.button_timer[1] = 0;
 001CDE E4                CLR     A
 001CDF 904CD0            MOV     DPTR,#g_variable+011H
 001CE2 F0                MOVX    @DPTR,A
-  317: 	}
+  319: 	}
 001CE3         ?C0060?KEYSCAN:
-  318: 
-  319: 	for (i=0; col[i]!=0; i++) 
+  320: 
+  321: 	for (i=0; col[i]!=0; i++) 
 001CE3 E4                CLR     A
 001CE4 904E24            MOV     DPTR,#i
 001CE7 F0                MOVX    @DPTR,A
@@ -5116,8 +5116,8 @@
 001CF0 93                MOVC    A,@A+DPTR
 001CF1 7002              JNZ     $ + 4H
 001CF3 A1B5              AJMP    ?C0062?KEYSCAN
-  320: 	{
-  321: 		temp = ksSelMapCurr[i];
+  322: 	{
+  323: 		temp = ksSelMapCurr[i];
 001CF5 74BC              MOV     A,#LOW ksSelMapCurr
 001CF7 2F                ADD     A,R7
 001CF8 F582              MOV     DPL,A
@@ -5127,20 +5127,20 @@
 001CFF E0                MOVX    A,@DPTR
 001D00 904E27            MOV     DPTR,#temp
 001D03 F0                MOVX    @DPTR,A
-  322: 		rawCount = bit_count(temp);
+  324: 		rawCount = bit_count(temp);
 001D04 E0                MOVX    A,@DPTR
 001D05 FF                MOV     R7,A
 001D06 D1D0              ACALL   _bit_count
 001D08 904E2E            MOV     DPTR,#rawCount
 001D0B EF                MOV     A,R7
 001D0C F0                MOVX    @DPTR,A
-  323: 		if(rawCount >= 2)		// col[i] has more than two key press
+  325: 		if(rawCount >= 2)		// col[i] has more than two key press
 001D0D C3                CLR     C
 001D0E 9402              SUBB    A,#02H
 001D10 5002              JNC     $ + 4H
 001D12 A19E              AJMP    ?C0064?KEYSCAN
-  324: 		{
-  325: 			for(j=0 ; j<8 ;j++)
+  326: 		{
+  327: 			for(j=0 ; j<8 ;j++)
 001D14 E4                CLR     A
 001D15 904E25            MOV     DPTR,#j
 001D18 F0                MOVX    @DPTR,A
@@ -5151,8 +5151,8 @@
 001D1E C3                CLR     C
 001D1F 9408              SUBB    A,#08H
 001D21 507B              JNC     ?C0064?KEYSCAN
-  326: 			{
-  327: 				if(temp & (1<<j))	// Ci_Rj press
+  328: 			{
+  329: 				if(temp & (1<<j))	// Ci_Rj press
 001D23 7401              MOV     A,#01H
 001D25 7E00              MOV     R6,#00H
 001D27 A807              MOV     R0,AR7
@@ -5174,8 +5174,8 @@
 001D3A EF                MOV     A,R7
 001D3B 5D                ANL     A,R5
 001D3C 6058              JZ      ?C0067?KEYSCAN
-  328: 				{
-  329: 					for(k=0 ; col[k]!=0; k++)
+  330: 				{
+  331: 					for(k=0 ; col[k]!=0; k++)
 001D3E E4                CLR     A
 001D3F 904E26            MOV     DPTR,#k
 001D42 F0                MOVX    @DPTR,A
@@ -5186,16 +5186,16 @@
 001D48 90060C            MOV     DPTR,#col
 001D4B 93                MOVC    A,@A+DPTR
 001D4C 6048              JZ      ?C0067?KEYSCAN
-  330: 					{
-  331: 						if(k!= i)
+  332: 					{
+  333: 						if(k!= i)
 001D4E 904E24            MOV     DPTR,#i
 001D51 E0                MOVX    A,@DPTR
 001D52 FE                MOV     R6,A
 001D53 EF                MOV     A,R7
 001D54 6E                XRL     A,R6
 001D55 6037              JZ      ?C0071?KEYSCAN
-  332: 						{
-  333: 							if(ksSelMapCurr[k] & (1<<j))	// R line has another key press
+  334: 						{
+  335: 							if(ksSelMapCurr[k] & (1<<j))	// R line has another key press
 001D57 904E26            MOV     DPTR,#k
 001D5A E0                MOVX    A,@DPTR
 001D5B 24BC              ADD     A,#LOW ksSelMapCurr
@@ -5230,47 +5230,47 @@
 001D82 5D                ANL     A,R5
 001D83 4E                ORL     A,R6
 001D84 6008              JZ      ?C0071?KEYSCAN
-  334: 							{
-  335: 								ghost = 1;
+  336: 							{
+  337: 								ghost = 1;
 001D86 904E2D            MOV     DPTR,#ghost
 001D89 7401              MOV     A,#01H
 001D8B F0                MOVX    @DPTR,A
-  336: 								break;
+  338: 								break;
 001D8C 8008              SJMP    ?C0067?KEYSCAN
-  337: 							}	
-  338: 						}
-  339: 					}
+  339: 							}	
+  340: 						}
+  341: 					}
 001D8E         ?C0071?KEYSCAN:
 001D8E 904E26            MOV     DPTR,#k
 001D91 E0                MOVX    A,@DPTR
 001D92 04                INC     A
 001D93 F0                MOVX    @DPTR,A
 001D94 80AD              SJMP    ?C0069?KEYSCAN
-  340: 				}
-  341: 			}
+  342: 				}
+  343: 			}
 001D96         ?C0067?KEYSCAN:
 001D96 904E25            MOV     DPTR,#j
 001D99 E0                MOVX    A,@DPTR
 001D9A 04                INC     A
 001D9B F0                MOVX    @DPTR,A
 001D9C A119              AJMP    ?C0065?KEYSCAN
-  342: 		}
+  344: 		}
 001D9E         ?C0064?KEYSCAN:
-  343: 		
-  344: 		if (temp!=0)
+  345: 		
+  346: 		if (temp!=0)
 001D9E 904E27            MOV     DPTR,#temp
 001DA1 E0                MOVX    A,@DPTR
 001DA2 FF                MOV     R7,A
 001DA3 6008              JZ      ?C0063?KEYSCAN
-  345: 		{
-  346: 			keyCounttemp += bit_count(temp);
+  347: 		{
+  348: 			keyCounttemp += bit_count(temp);
 001DA5 D1D0              ACALL   _bit_count
 001DA7 904E2B            MOV     DPTR,#keyCounttemp
 001DAA E0                MOVX    A,@DPTR
 001DAB 2F                ADD     A,R7
 001DAC F0                MOVX    @DPTR,A
-  347: 		}
-  348: 	}
+  349: 		}
+  350: 	}
 001DAD         ?C0063?KEYSCAN:
 001DAD 904E24            MOV     DPTR,#i
 001DB0 E0                MOVX    A,@DPTR
@@ -5278,13 +5278,13 @@
 001DB2 F0                MOVX    @DPTR,A
 001DB3 81E8              AJMP    ?C0061?KEYSCAN
 001DB5         ?C0062?KEYSCAN:
-  349: 	keyCount = keyCounttemp;
+  351: 	keyCount = keyCounttemp;
 001DB5 904E2B            MOV     DPTR,#keyCounttemp
 001DB8 E0                MOVX    A,@DPTR
 001DB9 904DDD            MOV     DPTR,#keyCount
 001DBC F0                MOVX    @DPTR,A
-  350: 	
-  351: 	for (i=0; col[i]!=0; i++)
+  352: 	
+  353: 	for (i=0; col[i]!=0; i++)
 001DBD E4                CLR     A
 001DBE 904E24            MOV     DPTR,#i
 001DC1 F0                MOVX    @DPTR,A
@@ -5296,8 +5296,8 @@
 001DCA 93                MOVC    A,@A+DPTR
 001DCB 7002              JNZ     $ + 4H
 001DCD C1A4              AJMP    ?C0076?KEYSCAN
-  352: 	{
-  353: 		temp = ksSelMapCurr[i] ^ ksSelMapOld[i];
+  354: 	{
+  355: 		temp = ksSelMapCurr[i] ^ ksSelMapOld[i];
 001DCF 7493              MOV     A,#LOW ksSelMapOld
 001DD1 2F                ADD     A,R7
 001DD2 F582              MOV     DPL,A
@@ -5316,7 +5316,7 @@
 001DE6 6E                XRL     A,R6
 001DE7 904E27            MOV     DPTR,#temp
 001DEA F0                MOVX    @DPTR,A
-  354: 		state = ksSelMapCurr[i];
+  356: 		state = ksSelMapCurr[i];
 001DEB 904E24            MOV     DPTR,#i
 001DEE E0                MOVX    A,@DPTR
 001DEF FF                MOV     R7,A
@@ -5328,30 +5328,30 @@
 001DF9 E0                MOVX    A,@DPTR
 001DFA 904E2A            MOV     DPTR,#state
 001DFD F0                MOVX    @DPTR,A
-  355: 		if (temp == 0) 
+  357: 		if (temp == 0) 
 001DFE 904E27            MOV     DPTR,#temp
 001E01 E0                MOVX    A,@DPTR
 001E02 7004              JNZ     ?C0078?KEYSCAN
-  356: 		{
-  357: 			continue;
+  358: 		{
+  359: 			continue;
 001E04 C19C              AJMP    ?C0077?KEYSCAN
-  358: 		}
+  360: 		}
 001E06 C19C              AJMP    ?C0077?KEYSCAN
 001E08         ?C0078?KEYSCAN:
-  359: 		else 
-  360: 		{
-  361: 
-  362: 			if (ghost) 
+  361: 		else 
+  362: 		{
+  363: 
+  364: 			if (ghost) 
 001E08 904E2D            MOV     DPTR,#ghost
 001E0B E0                MOVX    A,@DPTR
 001E0C 6007              JZ      ?C0080?KEYSCAN
-  363: 				return NULL;
+  365: 				return NULL;
 001E0E 7B00              MOV     R3,#00H
 001E10 7A00              MOV     R2,#00H
 001E12 7900              MOV     R1,#00H
 001E14 22                RET     
 001E15         ?C0080?KEYSCAN:
-  364: 			ksSelMapOld[i] = ksSelMapCurr[i];
+  366: 			ksSelMapOld[i] = ksSelMapCurr[i];
 001E15 74BC              MOV     A,#LOW ksSelMapCurr
 001E17 2F                ADD     A,R7
 001E18 F582              MOV     DPL,A
@@ -5368,7 +5368,7 @@
 001E29 F583              MOV     DPH,A
 001E2B EE                MOV     A,R6
 001E2C F0                MOVX    @DPTR,A
-  365: 			for (j = 0 ; j<8 ; j++) 
+  367: 			for (j = 0 ; j<8 ; j++) 
 001E2D E4                CLR     A
 001E2E 904E25            MOV     DPTR,#j
 001E31 F0                MOVX    @DPTR,A
@@ -5379,13 +5379,13 @@
 001E37 C3                CLR     C
 001E38 9408              SUBB    A,#08H
 001E3A 505A              JNC     ?C0083?KEYSCAN
-  366: 			{
-  367: 				if (temp&1)
+  368: 			{
+  369: 				if (temp&1)
 001E3C 904E27            MOV     DPTR,#temp
 001E3F E0                MOVX    A,@DPTR
 001E40 30E03B            JNB     ACC.0,?C0085?KEYSCAN
-  368: 				{
-  369: 					offset = i<<3 |j;
+  370: 				{
+  371: 					offset = i<<3 |j;
 001E43 904E24            MOV     DPTR,#i
 001E46 E0                MOVX    A,@DPTR
 001E47 FE                MOV     R6,A
@@ -5398,7 +5398,7 @@
 001E4F 4E                ORL     A,R6
 001E50 904E29            MOV     DPTR,#offset
 001E53 F0                MOVX    @DPTR,A
-  370: 					key_value_temp = key_fn_function(state,ksMap[offset]);
+  372: 					key_value_temp = key_fn_function(state,ksMap[offset]);
 001E54 A3                INC     DPTR
 001E55 E0                MOVX    A,@DPTR
 001E56 FF                MOV     R7,A
@@ -5411,56 +5411,56 @@
 001E62 904E2C            MOV     DPTR,#key_value_temp
 001E65 EF                MOV     A,R7
 001E66 F0                MOVX    @DPTR,A
-  371: 					if (state & 1)
+  373: 					if (state & 1)
 001E67 904E2A            MOV     DPTR,#state
 001E6A E0                MOVX    A,@DPTR
 001E6B 30E009            JNB     ACC.0,?C0086?KEYSCAN
-  372: 					{
-  373: 						keyIn(key_value_temp);
+  374: 					{
+  375: 						keyIn(key_value_temp);
 001E6E 904E2C            MOV     DPTR,#key_value_temp
 001E71 E0                MOVX    A,@DPTR
 001E72 FF                MOV     R7,A
 001E73 F158              ACALL   _keyIn
-  374: 					}
+  376: 					}
 001E75 8007              SJMP    ?C0085?KEYSCAN
 001E77         ?C0086?KEYSCAN:
-  375: 					else
-  376: 					{
-  377: 						keyOut(key_value_temp);
+  377: 					else
+  378: 					{
+  379: 						keyOut(key_value_temp);
 001E77 904E2C            MOV     DPTR,#key_value_temp
 001E7A E0                MOVX    A,@DPTR
 001E7B FF                MOV     R7,A
 001E7C F1AE              ACALL   _keyOut
-  378: 					}
-  379: 				}
+  380: 					}
+  381: 				}
 001E7E         ?C0085?KEYSCAN:
-  380: 				temp = temp >>1;
+  382: 				temp = temp >>1;
 001E7E 904E27            MOV     DPTR,#temp
 001E81 E0                MOVX    A,@DPTR
 001E82 FF                MOV     R7,A
 001E83 C3                CLR     C
 001E84 13                RRC     A
 001E85 F0                MOVX    @DPTR,A
-  381: 				state = state>>1;
+  383: 				state = state>>1;
 001E86 904E2A            MOV     DPTR,#state
 001E89 E0                MOVX    A,@DPTR
 001E8A FF                MOV     R7,A
 001E8B C3                CLR     C
 001E8C 13                RRC     A
 001E8D F0                MOVX    @DPTR,A
-  382: 			}
+  384: 			}
 001E8E 904E25            MOV     DPTR,#j
 001E91 E0                MOVX    A,@DPTR
 001E92 04                INC     A
 001E93 F0                MOVX    @DPTR,A
 001E94 809C              SJMP    ?C0082?KEYSCAN
 001E96         ?C0083?KEYSCAN:
-  383: 			flag = 1;
+  385: 			flag = 1;
 001E96 904E28            MOV     DPTR,#flag
 001E99 7401              MOV     A,#01H
 001E9B F0                MOVX    @DPTR,A
-  384: 		}
-  385: 	}
+  386: 		}
+  387: 	}
 001E9C         ?C0077?KEYSCAN:
 001E9C 904E24            MOV     DPTR,#i
 001E9F E0                MOVX    A,@DPTR
@@ -5468,23 +5468,23 @@
 001EA1 F0                MOVX    @DPTR,A
 001EA2 A1C2              AJMP    ?C0075?KEYSCAN
 001EA4         ?C0076?KEYSCAN:
-  386: 	
-  387: 	if((mult_key_status == KEY_RELEASE) && (standard_key_release_flag == 1))
+  388: 	
+  389: 	if((mult_key_status == KEY_RELEASE) && (standard_key_release_flag == 1))
 001EA4 904DE7            MOV     DPTR,#mult_key_status
 001EA7 E0                MOVX    A,@DPTR
 001EA8 B4030A            CJNE    A,#03H,?C0088?KEYSCAN
 001EAB 904DD8            MOV     DPTR,#standard_key_release_flag
 001EAE E0                MOVX    A,@DPTR
 001EAF B40103            CJNE    A,#01H,?C0088?KEYSCAN
-  388: 	{
-  389: 		standard_key_release_flag = 2;		//media key and standard key  release the same time
+  390: 	{
+  391: 		standard_key_release_flag = 2;		//media key and standard key  release the same time
 001EB2 7402              MOV     A,#02H
 001EB4 F0                MOVX    @DPTR,A
-  390: 	}
+  392: 	}
 001EB5         ?C0088?KEYSCAN:
-  391: 
-  392: 	
-  393: 	if (flag || standard_key_release_flag == 2) 
+  393: 
+  394: 	
+  395: 	if (flag || standard_key_release_flag == 2) 
 001EB5 904E28            MOV     DPTR,#flag
 001EB8 E0                MOVX    A,@DPTR
 001EB9 7007              JNZ     ?C0090?KEYSCAN
@@ -5492,60 +5492,60 @@
 001EBE E0                MOVX    A,@DPTR
 001EBF B40207            CJNE    A,#02H,?C0089?KEYSCAN
 001EC2         ?C0090?KEYSCAN:
-  394: 	{
-  395: 		return &ksEvtPool;
+  396: 	{
+  397: 		return &ksEvtPool;
 001EC2 7B01              MOV     R3,#01H
 001EC4 7A4E              MOV     R2,#HIGH ksEvtPool
 001EC6 7940              MOV     R1,#LOW ksEvtPool
 001EC8 22                RET     
-  396: 	}
+  398: 	}
 001EC9         ?C0089?KEYSCAN:
-  397: 	else
-  398: 	{
-  399: 		return NULL;
+  399: 	else
+  400: 	{
+  401: 		return NULL;
 001EC9 7B00              MOV     R3,#00H
 001ECB 7A00              MOV     R2,#00H
 001ECD 7900              MOV     R1,#00H
-  400: 	}
-  401: 	
-  402: 
-  403: }
+  402: 	}
+  403: 	
+  404: 
+  405: }
 001ECF 22                RET     
 ----- FUNCTION KS_GetCurrentEvt (END) -------
 
 
 ----- FUNCTION _bit_count (BEGIN) -----
  FILE: 'keyscan.c'
-   23: static byte bit_count(byte v)
-   24: {
+   25: static byte bit_count(byte v)
+   26: {
 ;---- Variable 'v' assigned to Register 'R7' ----
-   25: 	unsigned char c;
-   26: 	for (c = 0; v; c++) {
+   27: 	unsigned char c;
+   28: 	for (c = 0; v; c++) {
 ;---- Variable 'c' assigned to Register 'R6' ----
 001ED0 E4                CLR     A
 001ED1 FE                MOV     R6,A
 001ED2         ?C0001?KEYSCAN:
 001ED2 EF                MOV     A,R7
 001ED3 6006              JZ      ?C0002?KEYSCAN
-   27:     	v &= v - 1;
+   29:     	v &= v - 1;
 001ED5 14                DEC     A
 001ED6 5F                ANL     A,R7
 001ED7 FF                MOV     R7,A
-   28:     }
+   30:     }
 001ED8 0E                INC     R6
 001ED9 80F7              SJMP    ?C0001?KEYSCAN
 001EDB         ?C0002?KEYSCAN:
-   29:     return c;
+   31:     return c;
 001EDB AF06              MOV     R7,AR6
-   30: }
+   32: }
 001EDD 22                RET     
 ----- FUNCTION _bit_count (END) -------
 
 
 ----- FUNCTION _array_is_empty (BEGIN) -----
  FILE: 'keyscan.c'
-  279: byte array_is_empty(byte * str1,byte len)
-  280: {
+  281: byte array_is_empty(byte * str1,byte len)
+  282: {
 001EDE 904E82            MOV     DPTR,#str1
 001EE1 EB                MOV     A,R3
 001EE2 F0                MOVX    @DPTR,A
@@ -5556,8 +5556,8 @@
 001EE7 E9                MOV     A,R1
 001EE8 F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R5' ----
-  281: 	byte i;
-  282: 	for (i=0;i < len;i++)
+  283: 	byte i;
+  284: 	for (i=0;i < len;i++)
 ;---- Variable 'i' assigned to Register 'R7' ----
 001EE9 E4                CLR     A
 001EEA FF                MOV     R7,A
@@ -5566,8 +5566,8 @@
 001EEC C3                CLR     C
 001EED 9D                SUBB    A,R5
 001EEE 501B              JNC     ?C0055?KEYSCAN
-  283: 	{
-  284: 		if (str1[i] != 0)
+  285: 	{
+  286: 		if (str1[i] != 0)
 001EF0 904E82            MOV     DPTR,#str1
 001EF3 E0                MOVX    A,@DPTR
 001EF4 FB                MOV     R3,A
@@ -5581,17 +5581,17 @@
 001EFD 758300            MOV     DPH,#00H
 001F00 1203CF            LCALL   ?C?CLDOPTR
 001F03 6003              JZ      ?C0056?KEYSCAN
-  285: 			return 0x00;
+  287: 			return 0x00;
 001F05 7F00              MOV     R7,#00H
 001F07 22                RET     
-  286: 	}
+  288: 	}
 001F08         ?C0056?KEYSCAN:
 001F08 0F                INC     R7
 001F09 80E0              SJMP    ?C0054?KEYSCAN
 001F0B         ?C0055?KEYSCAN:
-  287: 	return 0x01;
+  289: 	return 0x01;
 001F0B 7F01              MOV     R7,#01H
-  288: }
+  290: }
 001F0D 22                RET     
 ----- FUNCTION _array_is_empty (END) -------
 
@@ -5657,15 +5657,15 @@
 
 ----- FUNCTION _keyIn (BEGIN) -----
  FILE: 'keyscan.c'
-   34: static void keyIn(byte key)
-   35: {
+   36: static void keyIn(byte key)
+   37: {
 ;---- Variable 'key' assigned to Register 'R7' ----
-   36: 	byte i = 0;
-   37: 
+   38: 	byte i = 0;
+   39: 
 ;---- Variable 'i' assigned to Register 'R6' ----
 001F58 E4                CLR     A
 001F59 FE                MOV     R6,A
-   38: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
+   40: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
 001F5A EF                MOV     A,R7
 001F5B C3                CLR     C
 001F5C 94E0              SUBB    A,#0E0H
@@ -5674,8 +5674,8 @@
 001F61 D3                SETB    C
 001F62 94E7              SUBB    A,#0E7H
 001F64 501A              JNC     ?C0005?KEYSCAN
-   39: 	{
-   40: 		ksEvtPool.standardSel  |=  0x01 << (key & 0x07);
+   41: 	{
+   42: 		ksEvtPool.standardSel  |=  0x01 << (key & 0x07);
 001F66 904E40            MOV     DPTR,#ksEvtPool
 001F69 E0                MOVX    A,@DPTR
 001F6A FE                MOV     R6,A
@@ -5695,60 +5695,60 @@
 001F7B 904E40            MOV     DPTR,#ksEvtPool
 001F7E F0                MOVX    @DPTR,A
 001F7F 22                RET     
-   41: 		return;
-   42: 	}
+   43: 		return;
+   44: 	}
 001F80         ?C0005?KEYSCAN:
-   43: /*
-   44: 
-   45: 	if (key == HID_KEY_RIGHT_GUI)
-   46: 	{
-   47: 		ksEvtPool.standardSel |= KS_SEL_RGUI;
-   48: 		return;
-   49: 	}
-   50: 	else if (key ==HID_KEY_RIGHT_ALT) 
-   51: 	{
-   52: 		ksEvtPool.standardSel |= KS_SEL_RALT;
-   53: 		return;
-   54: 	}
-   55: 	else if (key ==HID_KEY_RIGHT_SHIFT) 
-   56: 	{
-   57: 		ksEvtPool.standardSel |= KS_SEL_RSHIFT;
-   58: 		return;
-   59: 	}
-   60: 	else if (key ==HID_KEY_RIGHT_CTL) 
-   61: 	{
-   62: 		ksEvtPool.standardSel |= KS_SEL_RCTRL;
-   63: 		return;
-   64: 	}
-   65: 	else if (key ==HID_KEY_LEFT_GUI) 
-   66: 	{
-   67: 		ksEvtPool.standardSel |= KS_SEL_LGUI;
-   68: 		return;
-   69: 	}
-   70: 	else if (key ==HID_KEY_LEFT_ALT) 
-   71: 	{
-   72: 		ksEvtPool.standardSel |= KS_SEL_LALT;
-   73: 		return;
-   74: 	}
-   75: 	else if (key ==HID_KEY_LEFT_SHIFT)
-   76: 	{
-   77: 		ksEvtPool.standardSel |= KS_SEL_LSHIFT;
-   78: 		return;
-   79: 	}
-   80: 	else if (key ==HID_KEY_LEFT_CTL) 
-   81: 	{
-   82: 		ksEvtPool.standardSel |= KS_SEL_LCTRL;
-   83: 		return;
-   84: 	}
-   85: */	
-   86: 	//special key
-   87: 
-   88: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
+   45: /*
+   46: 
+   47: 	if (key == HID_KEY_RIGHT_GUI)
+   48: 	{
+   49: 		ksEvtPool.standardSel |= KS_SEL_RGUI;
+   50: 		return;
+   51: 	}
+   52: 	else if (key ==HID_KEY_RIGHT_ALT) 
+   53: 	{
+   54: 		ksEvtPool.standardSel |= KS_SEL_RALT;
+   55: 		return;
+   56: 	}
+   57: 	else if (key ==HID_KEY_RIGHT_SHIFT) 
+   58: 	{
+   59: 		ksEvtPool.standardSel |= KS_SEL_RSHIFT;
+   60: 		return;
+   61: 	}
+   62: 	else if (key ==HID_KEY_RIGHT_CTL) 
+   63: 	{
+   64: 		ksEvtPool.standardSel |= KS_SEL_RCTRL;
+   65: 		return;
+   66: 	}
+   67: 	else if (key ==HID_KEY_LEFT_GUI) 
+   68: 	{
+   69: 		ksEvtPool.standardSel |= KS_SEL_LGUI;
+   70: 		return;
+   71: 	}
+   72: 	else if (key ==HID_KEY_LEFT_ALT) 
+   73: 	{
+   74: 		ksEvtPool.standardSel |= KS_SEL_LALT;
+   75: 		return;
+   76: 	}
+   77: 	else if (key ==HID_KEY_LEFT_SHIFT)
+   78: 	{
+   79: 		ksEvtPool.standardSel |= KS_SEL_LSHIFT;
+   80: 		return;
+   81: 	}
+   82: 	else if (key ==HID_KEY_LEFT_CTL) 
+   83: 	{
+   84: 		ksEvtPool.standardSel |= KS_SEL_LCTRL;
+   85: 		return;
+   86: 	}
+   87: */	
+   88: 	//special key
+   89: 
+   90: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
 001F80 E4                CLR     A
 001F81 FE                MOV     R6,A
 001F82         ?C0007?KEYSCAN:
-   89: 	{
-   90: 		if (ksEvtPool.ksPool[i] == key)
+   91: 	{
+   92: 		if (ksEvtPool.ksPool[i] == key)
 001F82 7441              MOV     A,#LOW ksEvtPool+01H
 001F84 2E                ADD     A,R6
 001F85 F582              MOV     DPL,A
@@ -5759,18 +5759,18 @@
 001F8D FD                MOV     R5,A
 001F8E 6F                XRL     A,R7
 001F8F 601C              JZ      ?C0006?KEYSCAN
-   91: 			break;
+   93: 			break;
 001F91         ?C0010?KEYSCAN:
-   92: 		if (ksEvtPool.ksPool[i] == 0) 
+   94: 		if (ksEvtPool.ksPool[i] == 0) 
 001F91 ED                MOV     A,R5
 001F92 7014              JNZ     ?C0009?KEYSCAN
-   93: 		{
-   94: 			if(mult_key_value != key)
+   95: 		{
+   96: 			if(mult_key_value != key)
 001F94 904DE6            MOV     DPTR,#mult_key_value
 001F97 E0                MOVX    A,@DPTR
 001F98 6F                XRL     A,R7
 001F99 6012              JZ      ?C0006?KEYSCAN
-   95: 				ksEvtPool.ksPool[i] = key;
+   97: 				ksEvtPool.ksPool[i] = key;
 001F9B 7441              MOV     A,#LOW ksEvtPool+01H
 001F9D 2E                ADD     A,R6
 001F9E F582              MOV     DPL,A
@@ -5779,15 +5779,15 @@
 001FA3 F583              MOV     DPH,A
 001FA5 EF                MOV     A,R7
 001FA6 F0                MOVX    @DPTR,A
-   96: 			break;
+   98: 			break;
 001FA7 22                RET     
-   97: 		}
-   98: 	}
+   99: 		}
+  100: 	}
 001FA8         ?C0009?KEYSCAN:
 001FA8 0E                INC     R6
 001FA9 EE                MOV     A,R6
 001FAA B406D5            CJNE    A,#06H,?C0007?KEYSCAN
-   99: }
+  101: }
 001FAD         ?C0006?KEYSCAN:
 001FAD 22                RET     
 ----- FUNCTION _keyIn (END) -------
@@ -5795,18 +5795,18 @@
 
 ----- FUNCTION _keyOut (BEGIN) -----
  FILE: 'keyscan.c'
-  101: static void keyOut(byte key)
-  102: {
+  103: static void keyOut(byte key)
+  104: {
 ;---- Variable 'key' assigned to Register 'R7' ----
-  103: 	byte i = 0 ;
-  104: 	byte found = 0;
+  105: 	byte i = 0 ;
+  106: 	byte found = 0;
 ;---- Variable 'i' assigned to Register 'R6' ----
 001FAE E4                CLR     A
 001FAF FE                MOV     R6,A
-  105: 
+  107: 
 ;---- Variable 'found' assigned to Register 'R5' ----
 001FB0 FD                MOV     R5,A
-  106: 	if ((key &0xF0) == 0xf0 || (key &0xD0) == 0xD0)
+  108: 	if ((key &0xF0) == 0xf0 || (key &0xD0) == 0xD0)
 001FB1 EF                MOV     A,R7
 001FB2 54F0              ANL     A,#0F0H
 001FB4 64F0              XRL     A,#0F0H
@@ -5816,27 +5816,27 @@
 001FBB FC                MOV     R4,A
 001FBC BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
 001FBF         ?C0014?KEYSCAN:
-  107: 	{
-  108: 		if(mult_key_status == KEY_WAIT_RELEASE)
+  109: 	{
+  110: 		if(mult_key_status == KEY_WAIT_RELEASE)
 001FBF 904DE7            MOV     DPTR,#mult_key_status
 001FC2 E0                MOVX    A,@DPTR
 001FC3 B4020B            CJNE    A,#02H,?C0016?KEYSCAN
-  109: 		{
-  110: 			mult_key_status = KEY_RELEASE;
+  111: 		{
+  112: 			mult_key_status = KEY_RELEASE;
 001FC6 7403              MOV     A,#03H
 001FC8 F0                MOVX    @DPTR,A
-  111: 		}
-  112: 	}
+  113: 		}
+  114: 	}
 001FC9 8006              SJMP    ?C0016?KEYSCAN
 001FCB         ?C0013?KEYSCAN:
-  113: 	else
-  114: 		standard_key_release_flag = 1;
+  115: 	else
+  116: 		standard_key_release_flag = 1;
 001FCB 904DD8            MOV     DPTR,#standard_key_release_flag
 001FCE 7401              MOV     A,#01H
 001FD0 F0                MOVX    @DPTR,A
 001FD1         ?C0016?KEYSCAN:
-  115: 
-  116: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
+  117: 
+  118: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
 001FD1 EF                MOV     A,R7
 001FD2 C3                CLR     C
 001FD3 94E0              SUBB    A,#0E0H
@@ -5845,8 +5845,8 @@
 001FD8 D3                SETB    C
 001FD9 94E7              SUBB    A,#0E7H
 001FDB 501B              JNC     ?C0017?KEYSCAN
-  117: 	{
-  118: 		ksEvtPool.standardSel  &= ~(0x01 << (key & 0x07));
+  119: 	{
+  120: 		ksEvtPool.standardSel  &= ~(0x01 << (key & 0x07));
 001FDD 904E40            MOV     DPTR,#ksEvtPool
 001FE0 E0                MOVX    A,@DPTR
 001FE1 FE                MOV     R6,A
@@ -5867,63 +5867,63 @@
 001FF3 904E40            MOV     DPTR,#ksEvtPool
 001FF6 F0                MOVX    @DPTR,A
 001FF7 22                RET     
-  119: 		return;
-  120: 	}
+  121: 		return;
+  122: 	}
 001FF8         ?C0017?KEYSCAN:
-  121: 	
-  122: 
-  123: /*
-  124: 	if (key == HID_KEY_RIGHT_GUI ) 
-  125: 	{
-  126: 		ksEvtPool.standardSel &= ~KS_SEL_RGUI;
-  127: 		return;
-  128: 	}
-  129: 	else if (key ==HID_KEY_RIGHT_ALT ) 
-  130: 	{
-  131: 		ksEvtPool.standardSel &= ~KS_SEL_RALT;
-  132: 		return;
-  133: 	}
-  134: 	else if (key ==HID_KEY_RIGHT_SHIFT) 
-  135: 	{
-  136: 		ksEvtPool.standardSel &= ~KS_SEL_RSHIFT;
-  137: 		return;
-  138: 	}
-  139: 	else if (key ==HID_KEY_RIGHT_CTL) 
-  140: 	{
-  141: 		ksEvtPool.standardSel &= ~KS_SEL_RCTRL;
-  142: 		return;
-  143: 	}
-  144: 	else if (key ==HID_KEY_LEFT_GUI)
-  145: 	{
-  146: 		ksEvtPool.standardSel &= ~KS_SEL_LGUI;
-  147: 		return;
-  148: 	}
-  149: 	else if (key ==HID_KEY_LEFT_ALT)
-  150: 	{
-  151: 		ksEvtPool.standardSel &= ~KS_SEL_LALT;
-  152: 		return;
-  153: 	}
-  154: 	else if (key ==HID_KEY_LEFT_SHIFT) 
-  155: 	{
-  156: 		ksEvtPool.standardSel &= ~KS_SEL_LSHIFT;
-  157: 		return;
-  158: 	}
-  159: 	else if (key ==HID_KEY_LEFT_CTL) 
-  160: 	{
-  161: 		ksEvtPool.standardSel &= ~ KS_SEL_LCTRL;
-  162: 		return;
-  163: 	}
-  164: */	
-  165: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
+  123: 	
+  124: 
+  125: /*
+  126: 	if (key == HID_KEY_RIGHT_GUI ) 
+  127: 	{
+  128: 		ksEvtPool.standardSel &= ~KS_SEL_RGUI;
+  129: 		return;
+  130: 	}
+  131: 	else if (key ==HID_KEY_RIGHT_ALT ) 
+  132: 	{
+  133: 		ksEvtPool.standardSel &= ~KS_SEL_RALT;
+  134: 		return;
+  135: 	}
+  136: 	else if (key ==HID_KEY_RIGHT_SHIFT) 
+  137: 	{
+  138: 		ksEvtPool.standardSel &= ~KS_SEL_RSHIFT;
+  139: 		return;
+  140: 	}
+  141: 	else if (key ==HID_KEY_RIGHT_CTL) 
+  142: 	{
+  143: 		ksEvtPool.standardSel &= ~KS_SEL_RCTRL;
+  144: 		return;
+  145: 	}
+  146: 	else if (key ==HID_KEY_LEFT_GUI)
+  147: 	{
+  148: 		ksEvtPool.standardSel &= ~KS_SEL_LGUI;
+  149: 		return;
+  150: 	}
+  151: 	else if (key ==HID_KEY_LEFT_ALT)
+  152: 	{
+  153: 		ksEvtPool.standardSel &= ~KS_SEL_LALT;
+  154: 		return;
+  155: 	}
+  156: 	else if (key ==HID_KEY_LEFT_SHIFT) 
+  157: 	{
+  158: 		ksEvtPool.standardSel &= ~KS_SEL_LSHIFT;
+  159: 		return;
+  160: 	}
+  161: 	else if (key ==HID_KEY_LEFT_CTL) 
+  162: 	{
+  163: 		ksEvtPool.standardSel &= ~ KS_SEL_LCTRL;
+  164: 		return;
+  165: 	}
+  166: */	
+  167: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
 001FF8 E4                CLR     A
 001FF9 FE                MOV     R6,A
 001FFA         ?C0019?KEYSCAN:
-  166: 	{
-  167: 		if (found == 0) 
+  168: 	{
+  169: 		if (found == 0) 
 001FFA ED                MOV     A,R5
 001FFB 7021              JNZ     ?C0022?KEYSCAN
-  168: 		{
-  169: 			if (ksEvtPool.ksPool[i] == key) {
+  170: 		{
+  171: 			if (ksEvtPool.ksPool[i] == key) {
 001FFD 7441              MOV     A,#LOW ksEvtPool+01H
 001FFF 2E                ADD     A,R6
 002000 F582              MOV     DPL,A
@@ -5933,10 +5933,10 @@
 002007 E0                MOVX    A,@DPTR
 002008 6F                XRL     A,R7
 002009 7047              JNZ     ?C0021?KEYSCAN
-  170: 				if (i == KS_BUFF_POLL_LEN-1) {
+  172: 				if (i == KS_BUFF_POLL_LEN-1) {
 00200B EE                MOV     A,R6
 00200C B4050B            CJNE    A,#05H,?C0024?KEYSCAN
-  171: 					ksEvtPool.ksPool[i] = 0;
+  173: 					ksEvtPool.ksPool[i] = 0;
 00200F 2441              ADD     A,#LOW ksEvtPool+01H
 002011 F582              MOV     DPL,A
 002013 E4                CLR     A
@@ -5944,17 +5944,17 @@
 002016 F583              MOV     DPH,A
 002018 E4                CLR     A
 002019 F0                MOVX    @DPTR,A
-  172: 				}
+  174: 				}
 00201A         ?C0024?KEYSCAN:
-  173: 				found = 1;
+  175: 				found = 1;
 00201A 7D01              MOV     R5,#01H
-  174: 			}
-  175: 		}
+  176: 			}
+  177: 		}
 00201C 8034              SJMP    ?C0021?KEYSCAN
 00201E         ?C0022?KEYSCAN:
-  176: 		else 
-  177: 		{
-  178: 			ksEvtPool.ksPool[i-1] = ksEvtPool.ksPool[i];
+  178: 		else 
+  179: 		{
+  180: 			ksEvtPool.ksPool[i-1] = ksEvtPool.ksPool[i];
 00201E 7441              MOV     A,#LOW ksEvtPool+01H
 002020 2E                ADD     A,R6
 002021 F582              MOV     DPL,A
@@ -5971,7 +5971,7 @@
 002032 F583              MOV     DPH,A
 002034 EC                MOV     A,R4
 002035 F0                MOVX    @DPTR,A
-  179: 			if (ksEvtPool.ksPool[i] == 0)
+  181: 			if (ksEvtPool.ksPool[i] == 0)
 002036 7441              MOV     A,#LOW ksEvtPool+01H
 002038 2E                ADD     A,R6
 002039 F582              MOV     DPL,A
@@ -5980,12 +5980,12 @@
 00203E F583              MOV     DPH,A
 002040 E0                MOVX    A,@DPTR
 002041 6014              JZ      ?C0018?KEYSCAN
-  180: 				break;
+  182: 				break;
 002043         ?C0026?KEYSCAN:
-  181: 			if (i == KS_BUFF_POLL_LEN-1) {
+  183: 			if (i == KS_BUFF_POLL_LEN-1) {
 002043 EE                MOV     A,R6
 002044 B4050B            CJNE    A,#05H,?C0021?KEYSCAN
-  182: 				ksEvtPool.ksPool[i] = 0;
+  184: 				ksEvtPool.ksPool[i] = 0;
 002047 2441              ADD     A,#LOW ksEvtPool+01H
 002049 F582              MOV     DPL,A
 00204B E4                CLR     A
@@ -5993,14 +5993,14 @@
 00204E F583              MOV     DPH,A
 002050 E4                CLR     A
 002051 F0                MOVX    @DPTR,A
-  183: 			}
-  184: 		}
-  185: 	}
+  185: 			}
+  186: 		}
+  187: 	}
 002052         ?C0021?KEYSCAN:
 002052 0E                INC     R6
 002053 EE                MOV     A,R6
 002054 B406A3            CJNE    A,#06H,?C0019?KEYSCAN
-  186: }
+  188: }
 002057         ?C0018?KEYSCAN:
 002057 22                RET     
 ----- FUNCTION _keyOut (END) -------
@@ -6008,14 +6008,14 @@
 
 ----- FUNCTION ksRawInitialize (BEGIN) -----
  FILE: 'keyscan.c'
-  188: static void ksRawInitialize()
-  189: {
-  190: 	byte i = 0;
-  191: 	
+  190: static void ksRawInitialize()
+  191: {
+  192: 	byte i = 0;
+  193: 	
 002058 E4                CLR     A
 002059 904E99            MOV     DPTR,#i
 00205C F0                MOVX    @DPTR,A
-  192: 	for (i=0; i<8; i++) {
+  194: 	for (i=0; i<8; i++) {
 00205D F0                MOVX    @DPTR,A
 00205E         ?C0028?KEYSCAN:
 00205E 904E99            MOV     DPTR,#i
@@ -6024,16 +6024,16 @@
 002063 C3                CLR     C
 002064 9408              SUBB    A,#08H
 002066 500C              JNC     ?C0031?KEYSCAN
-  193: 		GPIO_SetInput(i, 0);
+  195: 		GPIO_SetInput(i, 0);
 002068 C205              CLR     ?_GPIO_SetInput?BIT
 00206A 1175              ACALL   _GPIO_SetInput
-  194: 	}
+  196: 	}
 00206C 904E99            MOV     DPTR,#i
 00206F E0                MOVX    A,@DPTR
 002070 04                INC     A
 002071 F0                MOVX    @DPTR,A
 002072 80EA              SJMP    ?C0028?KEYSCAN
-  195: }
+  197: }
 002074         ?C0031?KEYSCAN:
 002074 22                RET     
 ----- FUNCTION ksRawInitialize (END) -------
@@ -6199,35 +6199,35 @@
 
 ----- FUNCTION KS_ScanMatrix (BEGIN) -----
  FILE: 'keyscan.c'
-  252: void KS_ScanMatrix()
-  253: {
-  254: 	byte i = 0;
-  255: 	byte j = 0;
+  254: void KS_ScanMatrix()
+  255: {
+  256: 	byte i = 0;
+  257: 	byte j = 0;
 ;---- Variable 'i' assigned to Register 'R7' ----
 002127 E4                CLR     A
 002128 FF                MOV     R7,A
-  256: 	byte tgroup = 0;
+  258: 	byte tgroup = 0;
 002129 904E7F            MOV     DPTR,#j
 00212C F0                MOVX    @DPTR,A
-  257: 	byte tgpionum = 0;
+  259: 	byte tgpionum = 0;
 ;---- Variable 'tgroup' assigned to Register 'R6' ----
 00212D FE                MOV     R6,A
-  258: 	byte temp = 0;
+  260: 	byte temp = 0;
 ;---- Variable 'tgpionum' assigned to Register 'R5' ----
 00212E FD                MOV     R5,A
-  259: 	byte check = 0;
+  261: 	byte check = 0;
 00212F A3                INC     DPTR
 002130 F0                MOVX    @DPTR,A
-  260: 	for (i=0; col[i]!=0; i++) {
+  262: 	for (i=0; col[i]!=0; i++) {
 002131 A3                INC     DPTR
 002132 F0                MOVX    @DPTR,A
-  261: 		tgroup = col[i]  >> 3;
+  263: 		tgroup = col[i]  >> 3;
 002133         ?C0043?KEYSCAN:
 002133 EF                MOV     A,R7
 002134 90060C            MOV     DPTR,#col
 002137 93                MOVC    A,@A+DPTR
-002138 6069              JZ      ?C0044?KEYSCAN
-  262: 		tgpionum = 1 << (col[i] & 7);
+002138 607C              JZ      ?C0044?KEYSCAN
+  264: 		tgpionum = 1 << (col[i] & 7);
 00213A EF                MOV     A,R7
 00213B 93                MOVC    A,@A+DPTR
 00213C FD                MOV     R5,A
@@ -6236,7 +6236,7 @@
 00213F 13                RRC     A
 002140 541F              ANL     A,#01FH
 002142 FE                MOV     R6,A
-  263: 		GET_RAW_KEY_SEL(ksSelMapCurr[i], tgroup, tgpionum);
+  265: 		GET_RAW_KEY_SEL(ksSelMapCurr[i], tgroup, tgpionum);
 002143 ED                MOV     A,R5
 002144 5407              ANL     A,#07H
 002146 FD                MOV     R5,A
@@ -6250,7 +6250,7 @@
 002150         ?C0099?KEYSCAN:
 002150 D8FC              DJNZ    R0,?C0098?KEYSCAN
 002152 FD                MOV     R5,A
-  264: 	}
+  266: 	}
 002153 EE                MOV     A,R6
 002154 2478              ADD     A,#078H
 002156 FB                MOV     R3,A
@@ -6297,7 +6297,7 @@
 002190 EC                MOV     A,R4
 002191 F0                MOVX    @DPTR,A
 002192 EE                MOV     A,R6
-002193 2474              ADD     A,#074H
+002193 2478              ADD     A,#078H
 002195 FB                MOV     R3,A
 002196 E4                CLR     A
 002197 3480              ADDC    A,#080H
@@ -6306,160 +6306,190 @@
 00219D E0                MOVX    A,@DPTR
 00219E 4D                ORL     A,R5
 00219F F0                MOVX    @DPTR,A
-  265: 
-0021A0 0F                INC     R7
-0021A1 8090              SJMP    ?C0043?KEYSCAN
-0021A3         ?C0044?KEYSCAN:
-  266: 	for (i=0; col[i]!=0; i++) {
-0021A3 E4                CLR     A
-0021A4 FF                MOV     R7,A
-0021A5         ?C0046?KEYSCAN:
-0021A5 EF                MOV     A,R7
-0021A6 90060C            MOV     DPTR,#col
-0021A9 93                MOVC    A,@A+DPTR
-0021AA 6069              JZ      ?C0047?KEYSCAN
-  267: 		tgroup = col[i]  >> 3;
-0021AC EF                MOV     A,R7
-0021AD 93                MOVC    A,@A+DPTR
-0021AE FD                MOV     R5,A
-0021AF 13                RRC     A
-0021B0 13                RRC     A
-0021B1 13                RRC     A
-0021B2 541F              ANL     A,#01FH
-0021B4 FE                MOV     R6,A
-  268: 		tgpionum = 1 << (col[i] & 7);
-0021B5 ED                MOV     A,R5
-0021B6 5407              ANL     A,#07H
-0021B8 FD                MOV     R5,A
-0021B9 7401              MOV     A,#01H
-0021BB A805              MOV     R0,AR5
-0021BD 08                INC     R0
-0021BE 8002              SJMP    ?C0101?KEYSCAN
-0021C0         ?C0100?KEYSCAN:
-0021C0 C3                CLR     C
-0021C1 33                RLC     A
-0021C2         ?C0101?KEYSCAN:
-0021C2 D8FC              DJNZ    R0,?C0100?KEYSCAN
-0021C4 FD                MOV     R5,A
-  269: 		GET_RAW_KEY_SEL(ksSelMapCheck[i], tgroup, tgpionum);
-0021C5 EE                MOV     A,R6
-0021C6 2478              ADD     A,#078H
-0021C8 FB                MOV     R3,A
-0021C9 E4                CLR     A
-0021CA 3480              ADDC    A,#080H
-0021CC 8B82              MOV     DPL,R3
-0021CE F583              MOV     DPH,A
-0021D0 E0                MOVX    A,@DPTR
-0021D1 FC                MOV     R4,A
-0021D2 ED                MOV     A,R5
-0021D3 F4                CPL     A
-0021D4 FB                MOV     R3,A
-0021D5 EC                MOV     A,R4
-0021D6 5B                ANL     A,R3
-0021D7 F0                MOVX    @DPTR,A
+0021A0 EE                MOV     A,R6
+0021A1 2470              ADD     A,#070H
+0021A3 FB                MOV     R3,A
+0021A4 E4                CLR     A
+0021A5 3480              ADDC    A,#080H
+0021A7 8B82              MOV     DPL,R3
+0021A9 F583              MOV     DPH,A
+0021AB E0                MOVX    A,@DPTR
+0021AC FC                MOV     R4,A
+0021AD ED                MOV     A,R5
+0021AE F4                CPL     A
+0021AF FB                MOV     R3,A
+0021B0 EC                MOV     A,R4
+0021B1 5B                ANL     A,R3
+0021B2 F0                MOVX    @DPTR,A
+  267: 
+0021B3 0F                INC     R7
+0021B4 2133              AJMP    ?C0043?KEYSCAN
+0021B6         ?C0044?KEYSCAN:
+  268: 	for (i=0; col[i]!=0; i++) {
+0021B6 E4                CLR     A
+0021B7 FF                MOV     R7,A
+0021B8         ?C0046?KEYSCAN:
+0021B8 EF                MOV     A,R7
+0021B9 90060C            MOV     DPTR,#col
+0021BC 93                MOVC    A,@A+DPTR
+0021BD 607C              JZ      ?C0047?KEYSCAN
+  269: 		tgroup = col[i]  >> 3;
+0021BF EF                MOV     A,R7
+0021C0 93                MOVC    A,@A+DPTR
+0021C1 FD                MOV     R5,A
+0021C2 13                RRC     A
+0021C3 13                RRC     A
+0021C4 13                RRC     A
+0021C5 541F              ANL     A,#01FH
+0021C7 FE                MOV     R6,A
+  270: 		tgpionum = 1 << (col[i] & 7);
+0021C8 ED                MOV     A,R5
+0021C9 5407              ANL     A,#07H
+0021CB FD                MOV     R5,A
+0021CC 7401              MOV     A,#01H
+0021CE A805              MOV     R0,AR5
+0021D0 08                INC     R0
+0021D1 8002              SJMP    ?C0101?KEYSCAN
+0021D3         ?C0100?KEYSCAN:
+0021D3 C3                CLR     C
+0021D4 33                RLC     A
+0021D5         ?C0101?KEYSCAN:
+0021D5 D8FC              DJNZ    R0,?C0100?KEYSCAN
+0021D7 FD                MOV     R5,A
+  271: 		GET_RAW_KEY_SEL(ksSelMapCheck[i], tgroup, tgpionum);
 0021D8 EE                MOV     A,R6
-0021D9 2470              ADD     A,#070H
-0021DB F582              MOV     DPL,A
-0021DD E4                CLR     A
-0021DE 3480              ADDC    A,#080H
-0021E0 F583              MOV     DPH,A
-0021E2 E0                MOVX    A,@DPTR
-0021E3 4D                ORL     A,R5
-0021E4 F0                MOVX    @DPTR,A
-0021E5 EE                MOV     A,R6
-0021E6 2474              ADD     A,#074H
-0021E8 F582              MOV     DPL,A
-0021EA E4                CLR     A
-0021EB 3480              ADDC    A,#080H
-0021ED F583              MOV     DPH,A
-0021EF E0                MOVX    A,@DPTR
-0021F0 5B                ANL     A,R3
-0021F1 F0                MOVX    @DPTR,A
-0021F2 90811C            MOV     DPTR,#0811CH
+0021D9 2478              ADD     A,#078H
+0021DB FB                MOV     R3,A
+0021DC E4                CLR     A
+0021DD 3480              ADDC    A,#080H
+0021DF 8B82              MOV     DPL,R3
+0021E1 F583              MOV     DPH,A
+0021E3 E0                MOVX    A,@DPTR
+0021E4 FC                MOV     R4,A
+0021E5 ED                MOV     A,R5
+0021E6 F4                CPL     A
+0021E7 FB                MOV     R3,A
+0021E8 EC                MOV     A,R4
+0021E9 5B                ANL     A,R3
+0021EA F0                MOVX    @DPTR,A
+0021EB EE                MOV     A,R6
+0021EC 2470              ADD     A,#070H
+0021EE F582              MOV     DPL,A
+0021F0 E4                CLR     A
+0021F1 3480              ADDC    A,#080H
+0021F3 F583              MOV     DPH,A
 0021F5 E0                MOVX    A,@DPTR
-0021F6 F4                CPL     A
-0021F7 FC                MOV     R4,A
-0021F8 74A8              MOV     A,#LOW ksSelMapCheck
-0021FA 2F                ADD     A,R7
+0021F6 4D                ORL     A,R5
+0021F7 F0                MOVX    @DPTR,A
+0021F8 EE                MOV     A,R6
+0021F9 2474              ADD     A,#074H
 0021FB F582              MOV     DPL,A
 0021FD E4                CLR     A
-0021FE 344D              ADDC    A,#HIGH ksSelMapCheck
+0021FE 3480              ADDC    A,#080H
 002200 F583              MOV     DPH,A
-002202 EC                MOV     A,R4
-002203 F0                MOVX    @DPTR,A
-002204 EE                MOV     A,R6
-002205 2474              ADD     A,#074H
-002207 FB                MOV     R3,A
-002208 E4                CLR     A
-002209 3480              ADDC    A,#080H
-00220B 8B82              MOV     DPL,R3
-00220D F583              MOV     DPH,A
-00220F E0                MOVX    A,@DPTR
-002210 4D                ORL     A,R5
-002211 F0                MOVX    @DPTR,A
-  270: 	}
-002212 0F                INC     R7
-002213 8090              SJMP    ?C0046?KEYSCAN
-002215         ?C0047?KEYSCAN:
-  271: 
-  272: 	for (i=0; col[i]!=0; i++) {
-002215 E4                CLR     A
-002216 FF                MOV     R7,A
-002217         ?C0049?KEYSCAN:
-002217 EF                MOV     A,R7
-002218 90060C            MOV     DPTR,#col
-00221B 93                MOVC    A,@A+DPTR
-00221C 6040              JZ      ?C0053?KEYSCAN
-  273: 		if (ksSelMapCheck[i]!=ksSelMapCurr[i]) {
-00221E 74BC              MOV     A,#LOW ksSelMapCurr
-002220 2F                ADD     A,R7
-002221 F582              MOV     DPL,A
-002223 E4                CLR     A
-002224 344D              ADDC    A,#HIGH ksSelMapCurr
-002226 F583              MOV     DPH,A
-002228 E0                MOVX    A,@DPTR
-002229 FE                MOV     R6,A
-00222A 74A8              MOV     A,#LOW ksSelMapCheck
-00222C 2F                ADD     A,R7
-00222D F582              MOV     DPL,A
-00222F E4                CLR     A
-002230 344D              ADDC    A,#HIGH ksSelMapCheck
-002232 F583              MOV     DPH,A
-002234 E0                MOVX    A,@DPTR
-002235 6E                XRL     A,R6
-002236 6023              JZ      ?C0051?KEYSCAN
-  274: 			ksSelMapCurr[i] &= ksSelMapCheck[i];
-002238 74BC              MOV     A,#LOW ksSelMapCurr
-00223A 2F                ADD     A,R7
-00223B F582              MOV     DPL,A
-00223D E4                CLR     A
-00223E 344D              ADDC    A,#HIGH ksSelMapCurr
-002240 F583              MOV     DPH,A
-002242 C083              PUSH    DPH
-002244 C082              PUSH    DPL
-002246 E0                MOVX    A,@DPTR
-002247 FE                MOV     R6,A
-002248 74A8              MOV     A,#LOW ksSelMapCheck
-00224A 2F                ADD     A,R7
-00224B F582              MOV     DPL,A
-00224D E4                CLR     A
-00224E 344D              ADDC    A,#HIGH ksSelMapCheck
-002250 F583              MOV     DPH,A
-002252 E0                MOVX    A,@DPTR
-002253 FD                MOV     R5,A
-002254 EE                MOV     A,R6
-002255 5D                ANL     A,R5
-002256 D082              POP     DPL
-002258 D083              POP     DPH
-00225A F0                MOVX    @DPTR,A
-  275: 		}
-  276: 	}
-00225B         ?C0051?KEYSCAN:
-00225B 0F                INC     R7
-00225C 80B9              SJMP    ?C0049?KEYSCAN
-  277: }
-00225E         ?C0053?KEYSCAN:
-00225E 22                RET     
+002202 E0                MOVX    A,@DPTR
+002203 5B                ANL     A,R3
+002204 F0                MOVX    @DPTR,A
+002205 90811C            MOV     DPTR,#0811CH
+002208 E0                MOVX    A,@DPTR
+002209 F4                CPL     A
+00220A FC                MOV     R4,A
+00220B 74A8              MOV     A,#LOW ksSelMapCheck
+00220D 2F                ADD     A,R7
+00220E F582              MOV     DPL,A
+002210 E4                CLR     A
+002211 344D              ADDC    A,#HIGH ksSelMapCheck
+002213 F583              MOV     DPH,A
+002215 EC                MOV     A,R4
+002216 F0                MOVX    @DPTR,A
+002217 EE                MOV     A,R6
+002218 2478              ADD     A,#078H
+00221A FB                MOV     R3,A
+00221B E4                CLR     A
+00221C 3480              ADDC    A,#080H
+00221E 8B82              MOV     DPL,R3
+002220 F583              MOV     DPH,A
+002222 E0                MOVX    A,@DPTR
+002223 4D                ORL     A,R5
+002224 F0                MOVX    @DPTR,A
+002225 EE                MOV     A,R6
+002226 2470              ADD     A,#070H
+002228 FB                MOV     R3,A
+002229 E4                CLR     A
+00222A 3480              ADDC    A,#080H
+00222C 8B82              MOV     DPL,R3
+00222E F583              MOV     DPH,A
+002230 E0                MOVX    A,@DPTR
+002231 FC                MOV     R4,A
+002232 ED                MOV     A,R5
+002233 F4                CPL     A
+002234 FB                MOV     R3,A
+002235 EC                MOV     A,R4
+002236 5B                ANL     A,R3
+002237 F0                MOVX    @DPTR,A
+  272: 	}
+002238 0F                INC     R7
+002239 21B8              AJMP    ?C0046?KEYSCAN
+00223B         ?C0047?KEYSCAN:
+  273: 
+  274: 	for (i=0; col[i]!=0; i++) {
+00223B E4                CLR     A
+00223C FF                MOV     R7,A
+00223D         ?C0049?KEYSCAN:
+00223D EF                MOV     A,R7
+00223E 90060C            MOV     DPTR,#col
+002241 93                MOVC    A,@A+DPTR
+002242 6040              JZ      ?C0053?KEYSCAN
+  275: 		if (ksSelMapCheck[i]!=ksSelMapCurr[i]) {
+002244 74BC              MOV     A,#LOW ksSelMapCurr
+002246 2F                ADD     A,R7
+002247 F582              MOV     DPL,A
+002249 E4                CLR     A
+00224A 344D              ADDC    A,#HIGH ksSelMapCurr
+00224C F583              MOV     DPH,A
+00224E E0                MOVX    A,@DPTR
+00224F FE                MOV     R6,A
+002250 74A8              MOV     A,#LOW ksSelMapCheck
+002252 2F                ADD     A,R7
+002253 F582              MOV     DPL,A
+002255 E4                CLR     A
+002256 344D              ADDC    A,#HIGH ksSelMapCheck
+002258 F583              MOV     DPH,A
+00225A E0                MOVX    A,@DPTR
+00225B 6E                XRL     A,R6
+00225C 6023              JZ      ?C0051?KEYSCAN
+  276: 			ksSelMapCurr[i] &= ksSelMapCheck[i];
+00225E 74BC              MOV     A,#LOW ksSelMapCurr
+002260 2F                ADD     A,R7
+002261 F582              MOV     DPL,A
+002263 E4                CLR     A
+002264 344D              ADDC    A,#HIGH ksSelMapCurr
+002266 F583              MOV     DPH,A
+002268 C083              PUSH    DPH
+00226A C082              PUSH    DPL
+00226C E0                MOVX    A,@DPTR
+00226D FE                MOV     R6,A
+00226E 74A8              MOV     A,#LOW ksSelMapCheck
+002270 2F                ADD     A,R7
+002271 F582              MOV     DPL,A
+002273 E4                CLR     A
+002274 344D              ADDC    A,#HIGH ksSelMapCheck
+002276 F583              MOV     DPH,A
+002278 E0                MOVX    A,@DPTR
+002279 FD                MOV     R5,A
+00227A EE                MOV     A,R6
+00227B 5D                ANL     A,R5
+00227C D082              POP     DPL
+00227E D083              POP     DPH
+002280 F0                MOVX    @DPTR,A
+  277: 		}
+  278: 	}
+002281         ?C0051?KEYSCAN:
+002281 0F                INC     R7
+002282 80B9              SJMP    ?C0049?KEYSCAN
+  279: }
+002284         ?C0053?KEYSCAN:
+002284 22                RET     
 ----- FUNCTION KS_ScanMatrix (END) -------
 
 
@@ -6469,47 +6499,47 @@
    34: {
    35: 	if(g_variable.current_device_num == 1)
    36: 		GPIO_Setout(BT_LED_GPIO,LED_OFF);
-00225F 904CC3            MOV     DPTR,#g_variable+04H
-002262 E0                MOVX    A,@DPTR
-002263 B40107            CJNE    A,#01H,?C0009?LED
+002285 904CC3            MOV     DPTR,#g_variable+04H
+002288 E0                MOVX    A,@DPTR
+002289 B40107            CJNE    A,#01H,?C0009?LED
    37: 	else if(g_variable.current_device_num == 2)
-002266 D201              SETB    ?_GPIO_Setout?BIT
-002268 7FFF              MOV     R7,#0FFH
-00226A 020755            LJMP    _GPIO_Setout
-00226D         ?C0009?LED:
+00228C D201              SETB    ?_GPIO_Setout?BIT
+00228E 7FFF              MOV     R7,#0FFH
+002290 020755            LJMP    _GPIO_Setout
+002293         ?C0009?LED:
    38: 		GPIO_Setout(BT2_LED_GPIO,LED_OFF);
-00226D 904CC3            MOV     DPTR,#g_variable+04H
-002270 E0                MOVX    A,@DPTR
-002271 B40207            CJNE    A,#02H,?C0011?LED
+002293 904CC3            MOV     DPTR,#g_variable+04H
+002296 E0                MOVX    A,@DPTR
+002297 B40207            CJNE    A,#02H,?C0011?LED
    39: 	else if(g_variable.current_device_num == 3)
-002274 D201              SETB    ?_GPIO_Setout?BIT
-002276 7FFF              MOV     R7,#0FFH
-002278 020755            LJMP    _GPIO_Setout
-00227B         ?C0011?LED:
+00229A D201              SETB    ?_GPIO_Setout?BIT
+00229C 7FFF              MOV     R7,#0FFH
+00229E 020755            LJMP    _GPIO_Setout
+0022A1         ?C0011?LED:
    40: 	{	
-00227B 904CC3            MOV     DPTR,#g_variable+04H
-00227E E0                MOVX    A,@DPTR
-00227F B4030E            CJNE    A,#03H,?C0013?LED
+0022A1 904CC3            MOV     DPTR,#g_variable+04H
+0022A4 E0                MOVX    A,@DPTR
+0022A5 B4030E            CJNE    A,#03H,?C0013?LED
    41: 		GPIO_Setout(BT_LED_GPIO,LED_OFF);
    42: 		GPIO_SetOutput(LOWPOWER_LED_GPIO,LED_OFF);
-002282 D201              SETB    ?_GPIO_Setout?BIT
-002284 7FFF              MOV     R7,#0FFH
-002286 120755            LCALL   _GPIO_Setout
+0022A8 D201              SETB    ?_GPIO_Setout?BIT
+0022AA 7FFF              MOV     R7,#0FFH
+0022AC 120755            LCALL   _GPIO_Setout
    43: 	}
-002289 D206              SETB    ?_GPIO_SetOutput?BIT
-00228B 7F1D              MOV     R7,#01DH
-00228D 020783            LJMP    _GPIO_SetOutput
+0022AF D206              SETB    ?_GPIO_SetOutput?BIT
+0022B1 7F1D              MOV     R7,#01DH
+0022B3 020783            LJMP    _GPIO_SetOutput
    44: 	else
-002290         ?C0013?LED:
+0022B6         ?C0013?LED:
    45: 	{
    46: 		GPIO_Setout(BT2_LED_GPIO,LED_OFF);
-002290 D201              SETB    ?_GPIO_Setout?BIT
-002292 7FFF              MOV     R7,#0FFH
-002294 120755            LCALL   _GPIO_Setout
+0022B6 D201              SETB    ?_GPIO_Setout?BIT
+0022B8 7FFF              MOV     R7,#0FFH
+0022BA 120755            LCALL   _GPIO_Setout
    47: 		GPIO_SetOutput(LOWPOWER_LED_GPIO,LED_OFF);
-002297 D206              SETB    ?_GPIO_SetOutput?BIT
-002299 7F1D              MOV     R7,#01DH
-00229B 020783            LJMP    _GPIO_SetOutput
+0022BD D206              SETB    ?_GPIO_SetOutput?BIT
+0022BF 7F1D              MOV     R7,#01DH
+0022C1 020783            LJMP    _GPIO_SetOutput
    48: 	}
 ----- FUNCTION LED_device_poweroff (END) -------
 
@@ -6520,205 +6550,205 @@
   389: {
   390: 
   391: 	if (g_variable.delay_enter_lpm_timer) 
-00229E 904CEA            MOV     DPTR,#g_variable+02BH
-0022A1 E0                MOVX    A,@DPTR
-0022A2 6002              JZ      ?C0073?SYS
+0022C4 904CEA            MOV     DPTR,#g_variable+02BH
+0022C7 E0                MOVX    A,@DPTR
+0022C8 6002              JZ      ?C0073?SYS
   392: 	{
   393: 		g_variable.delay_enter_lpm_timer --;
-0022A4 14                DEC     A
-0022A5 F0                MOVX    @DPTR,A
+0022CA 14                DEC     A
+0022CB F0                MOVX    @DPTR,A
   394: 	}
-0022A6         ?C0073?SYS:
+0022CC         ?C0073?SYS:
   395: 
   396: 	if(g_variable.recon_delay)
-0022A6 904CEF            MOV     DPTR,#g_variable+030H
-0022A9 E0                MOVX    A,@DPTR
-0022AA 6002              JZ      ?C0074?SYS
+0022CC 904CEF            MOV     DPTR,#g_variable+030H
+0022CF E0                MOVX    A,@DPTR
+0022D0 6002              JZ      ?C0074?SYS
   397: 		g_variable.recon_delay--;
-0022AC 14                DEC     A
-0022AD F0                MOVX    @DPTR,A
-0022AE         ?C0074?SYS:
+0022D2 14                DEC     A
+0022D3 F0                MOVX    @DPTR,A
+0022D4         ?C0074?SYS:
   398: 
   399: 
   400: 	if(g_variable.one_key_press_wait_release_timer)
-0022AE 904CF8            MOV     DPTR,#g_variable+039H
-0022B1 E0                MOVX    A,@DPTR
-0022B2 600B              JZ      ?C0075?SYS
+0022D4 904CF8            MOV     DPTR,#g_variable+039H
+0022D7 E0                MOVX    A,@DPTR
+0022D8 600B              JZ      ?C0075?SYS
   401: 	{
   402: 		g_variable.one_key_press_wait_release_timer--;
-0022B4 14                DEC     A
-0022B5 F0                MOVX    @DPTR,A
+0022DA 14                DEC     A
+0022DB F0                MOVX    @DPTR,A
   403: 		if(!g_variable.one_key_press_wait_release_timer)
-0022B6 E0                MOVX    A,@DPTR
-0022B7 7006              JNZ     ?C0075?SYS
+0022DC E0                MOVX    A,@DPTR
+0022DD 7006              JNZ     ?C0075?SYS
   404: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
-0022B9 904CF4            MOV     DPTR,#g_variable+035H
-0022BC 7406              MOV     A,#06H
-0022BE F0                MOVX    @DPTR,A
+0022DF 904CF4            MOV     DPTR,#g_variable+035H
+0022E2 7406              MOV     A,#06H
+0022E4 F0                MOVX    @DPTR,A
   405: 	}
-0022BF         ?C0075?SYS:
+0022E5         ?C0075?SYS:
   406: 
   407: 	if (g_variable.powerOn_timer != 0)
-0022BF 904CE5            MOV     DPTR,#g_variable+026H
-0022C2 E0                MOVX    A,@DPTR
-0022C3 601F              JZ      ?C0077?SYS
+0022E5 904CE5            MOV     DPTR,#g_variable+026H
+0022E8 E0                MOVX    A,@DPTR
+0022E9 601F              JZ      ?C0077?SYS
   408: 	{	
   409: 		if(g_variable.pairing_g24_timeout)
-0022C5 904CEE            MOV     DPTR,#g_variable+02FH
-0022C8 E0                MOVX    A,@DPTR
-0022C9 6006              JZ      ?C0078?SYS
+0022EB 904CEE            MOV     DPTR,#g_variable+02FH
+0022EE E0                MOVX    A,@DPTR
+0022EF 6006              JZ      ?C0078?SYS
   410: 		{
   411: 			g_variable.powerOn_timer = 0;
-0022CB E4                CLR     A
-0022CC 904CE5            MOV     DPTR,#g_variable+026H
-0022CF F0                MOVX    @DPTR,A
-0022D0 22                RET     
+0022F1 E4                CLR     A
+0022F2 904CE5            MOV     DPTR,#g_variable+026H
+0022F5 F0                MOVX    @DPTR,A
+0022F6 22                RET     
   412: 			return;
   413: 		}
-0022D1         ?C0078?SYS:
+0022F7         ?C0078?SYS:
   414: 			
   415: 		g_variable.powerOn_timer--;
-0022D1 904CE5            MOV     DPTR,#g_variable+026H
-0022D4 E0                MOVX    A,@DPTR
-0022D5 14                DEC     A
-0022D6 F0                MOVX    @DPTR,A
+0022F7 904CE5            MOV     DPTR,#g_variable+026H
+0022FA E0                MOVX    A,@DPTR
+0022FB 14                DEC     A
+0022FC F0                MOVX    @DPTR,A
   416: 		LED_device_poweron();
-0022D7 1207A0            LCALL   LED_device_poweron
+0022FD 1207A0            LCALL   LED_device_poweron
   417: 		if (!g_variable.powerOn_timer)
-0022DA 904CE5            MOV     DPTR,#g_variable+026H
-0022DD E0                MOVX    A,@DPTR
-0022DE 703F              JNZ     ?C0081?SYS
+002300 904CE5            MOV     DPTR,#g_variable+026H
+002303 E0                MOVX    A,@DPTR
+002304 703F              JNZ     ?C0081?SYS
   418: 		{
   419: 			LED_device_poweroff();
-0022E0 515F              ACALL   LED_device_poweroff
+002306 5185              ACALL   LED_device_poweroff
   420: 		}
   421: 	}
-0022E2 803B              SJMP    ?C0081?SYS
-0022E4         ?C0077?SYS:
+002308 803B              SJMP    ?C0081?SYS
+00230A         ?C0077?SYS:
   422: 	else
   423: 	if (g_variable.pairing_g24_timeout == 0) //bt  pairing
-0022E4 904CEE            MOV     DPTR,#g_variable+02FH
-0022E7 E0                MOVX    A,@DPTR
-0022E8 7035              JNZ     ?C0081?SYS
+00230A 904CEE            MOV     DPTR,#g_variable+02FH
+00230D E0                MOVX    A,@DPTR
+00230E 7035              JNZ     ?C0081?SYS
   424: 	{
   425: 		if(g_variable.battery_low_led_flash_interval)
-0022EA 904CE2            MOV     DPTR,#g_variable+023H
-0022ED E0                MOVX    A,@DPTR
-0022EE 602F              JZ      ?C0081?SYS
+002310 904CE2            MOV     DPTR,#g_variable+023H
+002313 E0                MOVX    A,@DPTR
+002314 602F              JZ      ?C0081?SYS
   426: 		{
   427: 			g_variable.battery_low_led_flash_interval--;
-0022F0 14                DEC     A
-0022F1 F0                MOVX    @DPTR,A
+002316 14                DEC     A
+002317 F0                MOVX    @DPTR,A
   428: 			if(g_variable.battery_low_led_flash_interval < 8)
-0022F2 E0                MOVX    A,@DPTR
-0022F3 FF                MOV     R7,A
-0022F4 C3                CLR     C
-0022F5 9408              SUBB    A,#08H
-0022F7 5016              JNC     ?C0084?SYS
+002318 E0                MOVX    A,@DPTR
+002319 FF                MOV     R7,A
+00231A C3                CLR     C
+00231B 9408              SUBB    A,#08H
+00231D 5016              JNC     ?C0084?SYS
   429: 			{
   430: 				if(g_variable.battery_low_led_flash_interval & 0x02)
-0022F9 EF                MOV     A,R7
-0022FA 30E109            JNB     ACC.1,?C0085?SYS
+00231F EF                MOV     A,R7
+002320 30E109            JNB     ACC.1,?C0085?SYS
   431: 				{
   432: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
-0022FD C201              CLR     ?_GPIO_Setout?BIT
-0022FF 7F1D              MOV     R7,#01DH
-002301 120755            LCALL   _GPIO_Setout
+002323 C201              CLR     ?_GPIO_Setout?BIT
+002325 7F1D              MOV     R7,#01DH
+002327 120755            LCALL   _GPIO_Setout
   433: 				}
-002304 8010              SJMP    ?C0087?SYS
-002306         ?C0085?SYS:
+00232A 8010              SJMP    ?C0087?SYS
+00232C         ?C0085?SYS:
   434: 				else
   435: 				{
   436: 					GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
-002306 D201              SETB    ?_GPIO_Setout?BIT
-002308 7F1D              MOV     R7,#01DH
-00230A 120755            LCALL   _GPIO_Setout
+00232C D201              SETB    ?_GPIO_Setout?BIT
+00232E 7F1D              MOV     R7,#01DH
+002330 120755            LCALL   _GPIO_Setout
   437: 				}	
   438: 			}
-00230D 8007              SJMP    ?C0087?SYS
-00230F         ?C0084?SYS:
+002333 8007              SJMP    ?C0087?SYS
+002335         ?C0084?SYS:
   439: 			else
   440: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);
-00230F D201              SETB    ?_GPIO_Setout?BIT
-002311 7F1D              MOV     R7,#01DH
-002313 120755            LCALL   _GPIO_Setout
-002316         ?C0087?SYS:
+002335 D201              SETB    ?_GPIO_Setout?BIT
+002337 7F1D              MOV     R7,#01DH
+002339 120755            LCALL   _GPIO_Setout
+00233C         ?C0087?SYS:
   441: 			if(!g_variable.battery_low_led_flash_interval)
-002316 904CE2            MOV     DPTR,#g_variable+023H
-002319 E0                MOVX    A,@DPTR
-00231A 7003              JNZ     ?C0081?SYS
+00233C 904CE2            MOV     DPTR,#g_variable+023H
+00233F E0                MOVX    A,@DPTR
+002340 7003              JNZ     ?C0081?SYS
   442: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-00231C 7418              MOV     A,#018H
-00231E F0                MOVX    @DPTR,A
+002342 7418              MOV     A,#018H
+002344 F0                MOVX    @DPTR,A
   443: 		}
   444: 	}
-00231F         ?C0081?SYS:
+002345         ?C0081?SYS:
   445: 	
   446: // The dongle must receive data within 200ms, otherwise it will be forced to lift
   447: 	if(!long_press_flag)
-00231F 904DD5            MOV     DPTR,#long_press_flag
-002322 E0                MOVX    A,@DPTR
-002323 7036              JNZ     ?C0089?SYS
+002345 904DD5            MOV     DPTR,#long_press_flag
+002348 E0                MOVX    A,@DPTR
+002349 7036              JNZ     ?C0089?SYS
   448: 	{
   449: 		if (repeat_send_24g == 1)
-002325 904DD6            MOV     DPTR,#repeat_send_24g
-002328 E0                MOVX    A,@DPTR
-002329 6401              XRL     A,#01H
-00232B 702E              JNZ     ?C0089?SYS
+00234B 904DD6            MOV     DPTR,#repeat_send_24g
+00234E E0                MOVX    A,@DPTR
+00234F 6401              XRL     A,#01H
+002351 702E              JNZ     ?C0089?SYS
   450: 		{
   451: 			g_variable.sleepTimer = 0;
-00232D 904CE3            MOV     DPTR,#g_variable+024H
-002330 F0                MOVX    @DPTR,A
-002331 A3                INC     DPTR
-002332 F0                MOVX    @DPTR,A
+002353 904CE3            MOV     DPTR,#g_variable+024H
+002356 F0                MOVX    @DPTR,A
+002357 A3                INC     DPTR
+002358 F0                MOVX    @DPTR,A
   452: 			repeat_send_24g = 0;
-002333 904DD6            MOV     DPTR,#repeat_send_24g
-002336 F0                MOVX    @DPTR,A
+002359 904DD6            MOV     DPTR,#repeat_send_24g
+00235C F0                MOVX    @DPTR,A
   453: 
   454: 			 if (multikey[0] != 0)
-002337 904DE8            MOV     DPTR,#multikey
-00233A E0                MOVX    A,@DPTR
-00233B 600D              JZ      ?C0091?SYS
+00235D 904DE8            MOV     DPTR,#multikey
+002360 E0                MOVX    A,@DPTR
+002361 600D              JZ      ?C0091?SYS
   455: 			{
   456: 				IPC_TxHidData(multikey, 3);
-00233D 7B01              MOV     R3,#01H
-00233F 7A4D              MOV     R2,#HIGH multikey
-002341 79E8              MOV     R1,#LOW multikey
-002343 7D03              MOV     R5,#03H
-002345 121153            LCALL   _IPC_TxHidData
+002363 7B01              MOV     R3,#01H
+002365 7A4D              MOV     R2,#HIGH multikey
+002367 79E8              MOV     R1,#LOW multikey
+002369 7D03              MOV     R5,#03H
+00236B 121153            LCALL   _IPC_TxHidData
   457: 			}
-002348 8011              SJMP    ?C0089?SYS
-00234A         ?C0091?SYS:
+00236E 8011              SJMP    ?C0089?SYS
+002370         ?C0091?SYS:
   458: 			else if (hidBuff[0] != 0)
-00234A 904800            MOV     DPTR,#hidBuff
-00234D E0                MOVX    A,@DPTR
-00234E 600B              JZ      ?C0089?SYS
+002370 904800            MOV     DPTR,#hidBuff
+002373 E0                MOVX    A,@DPTR
+002374 600B              JZ      ?C0089?SYS
   459: 			{
   460: 
   461: 				IPC_TxHidData(hidBuff,9);
-002350 7B01              MOV     R3,#01H
-002352 7A48              MOV     R2,#HIGH hidBuff
-002354 7900              MOV     R1,#LOW hidBuff
-002356 7D09              MOV     R5,#09H
-002358 121153            LCALL   _IPC_TxHidData
+002376 7B01              MOV     R3,#01H
+002378 7A48              MOV     R2,#HIGH hidBuff
+00237A 7900              MOV     R1,#LOW hidBuff
+00237C 7D09              MOV     R5,#09H
+00237E 121153            LCALL   _IPC_TxHidData
   462: 			}
   463: 		}
   464: 	}
-00235B         ?C0089?SYS:
+002381         ?C0089?SYS:
   465: 
   466: 	if (delayChgInvTimer != 0)
-00235B 904DDF            MOV     DPTR,#delayChgInvTimer
-00235E E0                MOVX    A,@DPTR
-00235F 6003              JZ      ?C0079?SYS
+002381 904DDF            MOV     DPTR,#delayChgInvTimer
+002384 E0                MOVX    A,@DPTR
+002385 6003              JZ      ?C0079?SYS
   467: 	{
   468: 		delayChgInvTimer--;
-002361 E0                MOVX    A,@DPTR
-002362 14                DEC     A
-002363 F0                MOVX    @DPTR,A
+002387 E0                MOVX    A,@DPTR
+002388 14                DEC     A
+002389 F0                MOVX    @DPTR,A
   469: 	}
   470: }
-002364         ?C0079?SYS:
-002364 22                RET     
+00238A         ?C0079?SYS:
+00238A 22                RET     
 ----- FUNCTION kb_cb_Timer100ms (END) -------
 
 
@@ -6728,28 +6758,28 @@
    43: {
    44: 	REG_IICD_SCL_LOW  =  0x0d;
    45:    	REG_IICD_SCL_HIGH  =  0x0e;
-002365 908091            MOV     DPTR,#08091H
-002368 740D              MOV     A,#0DH
-00236A F0                MOVX    @DPTR,A
+00238B 908091            MOV     DPTR,#08091H
+00238E 740D              MOV     A,#0DH
+002390 F0                MOVX    @DPTR,A
    46:    	REG_IICD_START_SETUP  = 0x0e;
-00236B A3                INC     DPTR
-00236C 04                INC     A
-00236D F0                MOVX    @DPTR,A
+002391 A3                INC     DPTR
+002392 04                INC     A
+002393 F0                MOVX    @DPTR,A
    47:    	REG_IICD_START_HOLD  = 0x0e;
-00236E A3                INC     DPTR
-00236F F0                MOVX    @DPTR,A
+002394 A3                INC     DPTR
+002395 F0                MOVX    @DPTR,A
    48:   	REG_IICD_STOP_SETUP  = 0x0e;
-002370 A3                INC     DPTR
-002371 F0                MOVX    @DPTR,A
+002396 A3                INC     DPTR
+002397 F0                MOVX    @DPTR,A
    49:    	REG_IICD_DATA_SETUP  = 0x0d;
-002372 A3                INC     DPTR
-002373 F0                MOVX    @DPTR,A
+002398 A3                INC     DPTR
+002399 F0                MOVX    @DPTR,A
    50: }
-002374 A3                INC     DPTR
-002375 14                DEC     A
-002376 F0                MOVX    @DPTR,A
+00239A A3                INC     DPTR
+00239B 14                DEC     A
+00239C F0                MOVX    @DPTR,A
    51: 
-002377 22                RET     
+00239D 22                RET     
 ----- FUNCTION System_IIC_clk_setup (END) -------
 
 
@@ -6759,11 +6789,11 @@
    53: {
    54: 	System_IIC_clk_setup();
    55: 	KS_Initialize();
-002378 7165              ACALL   System_IIC_clk_setup
+00239E 718B              ACALL   System_IIC_clk_setup
    56: 	LED_all_shutdown();
-00237A 120FD6            LCALL   KS_Initialize
+0023A0 120FD6            LCALL   KS_Initialize
    57: }
-00237D 0207D9            LJMP    LED_all_shutdown
+0023A3 0207D9            LJMP    LED_all_shutdown
 ----- FUNCTION System_Hardware_init (END) -------
 
 
@@ -6773,27 +6803,27 @@
    61: {
    62: 	System_clear_mem();
    63: 	YC_adc_init();
-002380 120F10            LCALL   System_clear_mem
+0023A6 120F10            LCALL   System_clear_mem
    64: 	g_variable.release_data =1;
-002383 719D              ACALL   YC_adc_init
+0023A9 71C3              ACALL   YC_adc_init
    65: 	g_variable.powerOn_timer = KB_POWERON_LED_ON_TIMER;
-002385 904CEB            MOV     DPTR,#g_variable+02CH
-002388 7401              MOV     A,#01H
-00238A F0                MOVX    @DPTR,A
+0023AB 904CEB            MOV     DPTR,#g_variable+02CH
+0023AE 7401              MOV     A,#01H
+0023B0 F0                MOVX    @DPTR,A
    66: 	g_variable.recon_count = 0;
-00238B 904CE5            MOV     DPTR,#g_variable+026H
-00238E 741E              MOV     A,#01EH
-002390 F0                MOVX    @DPTR,A
+0023B1 904CE5            MOV     DPTR,#g_variable+026H
+0023B4 741E              MOV     A,#01EH
+0023B6 F0                MOVX    @DPTR,A
    67: 	g_variable.test_buff = 0xff;
-002391 E4                CLR     A
-002392 904CF0            MOV     DPTR,#g_variable+031H
-002395 F0                MOVX    @DPTR,A
+0023B7 E4                CLR     A
+0023B8 904CF0            MOV     DPTR,#g_variable+031H
+0023BB F0                MOVX    @DPTR,A
    68: }
-002396 904D04            MOV     DPTR,#g_variable+045H
-002399 74FF              MOV     A,#0FFH
-00239B F0                MOVX    @DPTR,A
+0023BC 904D04            MOV     DPTR,#g_variable+045H
+0023BF 74FF              MOV     A,#0FFH
+0023C1 F0                MOVX    @DPTR,A
    69: 
-00239C 22                RET     
+0023C2 22                RET     
 ----- FUNCTION System_Software_init (END) -------
 
 
@@ -6805,13 +6835,13 @@
     6: 	byte i;
     7: 	
     8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-00239D 904CD3            MOV     DPTR,#g_variable+014H
-0023A0 7405              MOV     A,#05H
-0023A2 F0                MOVX    @DPTR,A
+0023C3 904CD3            MOV     DPTR,#g_variable+014H
+0023C6 7405              MOV     A,#05H
+0023C8 F0                MOVX    @DPTR,A
     9: 	g_variable.battery_value_index = 0;
-0023A3 E4                CLR     A
-0023A4 A3                INC     DPTR
-0023A5 F0                MOVX    @DPTR,A
+0023C9 E4                CLR     A
+0023CA A3                INC     DPTR
+0023CB F0                MOVX    @DPTR,A
    10: 
    11: #ifdef ADC_TYPE_HVIN 	
    12: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
@@ -6832,130 +6862,130 @@
    27: #endif
    28: #ifdef ADC_TYPE_GPIO
    29: 	m_adc_channel = ADC_CHANNEL;
-0023A6 904C90            MOV     DPTR,#m_adc_channel
-0023A9 7433              MOV     A,#033H
-0023AB F0                MOVX    @DPTR,A
+0023CC 904C90            MOV     DPTR,#m_adc_channel
+0023CF 7433              MOV     A,#033H
+0023D1 F0                MOVX    @DPTR,A
    30: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
 ;---- Variable 'i' assigned to Register 'R7' ----
-0023AC E4                CLR     A
-0023AD FF                MOV     R7,A
-0023AE         ?C0001?ADC:
+0023D2 E4                CLR     A
+0023D3 FF                MOV     R7,A
+0023D4         ?C0001?ADC:
    31: 	{
    32: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE_GPIO;
-0023AE EF                MOV     A,R7
-0023AF 25E0              ADD     A,ACC
-0023B1 24D6              ADD     A,#LOW g_variable+017H
-0023B3 F582              MOV     DPL,A
-0023B5 E4                CLR     A
-0023B6 344C              ADDC    A,#HIGH g_variable+017H
-0023B8 F583              MOV     DPH,A
-0023BA 7462              MOV     A,#062H
-0023BC F0                MOVX    @DPTR,A
-0023BD A3                INC     DPTR
-0023BE F0                MOVX    @DPTR,A
+0023D4 EF                MOV     A,R7
+0023D5 25E0              ADD     A,ACC
+0023D7 24D6              ADD     A,#LOW g_variable+017H
+0023D9 F582              MOV     DPL,A
+0023DB E4                CLR     A
+0023DC 344C              ADDC    A,#HIGH g_variable+017H
+0023DE F583              MOV     DPH,A
+0023E0 7462              MOV     A,#062H
+0023E2 F0                MOVX    @DPTR,A
+0023E3 A3                INC     DPTR
+0023E4 F0                MOVX    @DPTR,A
    33: 	}
-0023BF 0F                INC     R7
-0023C0 EF                MOV     A,R7
-0023C1 B404EA            CJNE    A,#04H,?C0001?ADC
-0023C4         ?C0002?ADC:
+0023E5 0F                INC     R7
+0023E6 EF                MOV     A,R7
+0023E7 B404EA            CJNE    A,#04H,?C0001?ADC
+0023EA         ?C0002?ADC:
    34: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_1V1+m_adc0vBase;
-0023C4 904C91            MOV     DPTR,#m_adc0vBase
-0023C7 E0                MOVX    A,@DPTR
-0023C8 FE                MOV     R6,A
-0023C9 A3                INC     DPTR
-0023CA E0                MOVX    A,@DPTR
-0023CB FF                MOV     R7,A
-0023CC C3                CLR     C
-0023CD 904C94            MOV     DPTR,#m_adc3vValue+01H
-0023D0 E0                MOVX    A,@DPTR
-0023D1 9F                SUBB    A,R7
-0023D2 FD                MOV     R5,A
-0023D3 904C93            MOV     DPTR,#m_adc3vValue
-0023D6 E0                MOVX    A,@DPTR
-0023D7 9E                SUBB    A,R6
-0023D8 FC                MOV     R4,A
-0023D9 E4                CLR     A
-0023DA 120206            LCALL   ?C?FCASTI
-0023DD 7BC3              MOV     R3,#0C3H
-0023DF 7AF5              MOV     R2,#0F5H
-0023E1 79A8              MOV     R1,#0A8H
-0023E3 783E              MOV     R0,#03EH
-0023E5 1200FB            LCALL   ?C?FPMUL
-0023E8 C004              PUSH    AR4
-0023EA C005              PUSH    AR5
-0023EC C006              PUSH    AR6
-0023EE C007              PUSH    AR7
-0023F0 904C91            MOV     DPTR,#m_adc0vBase
-0023F3 E0                MOVX    A,@DPTR
-0023F4 FC                MOV     R4,A
-0023F5 A3                INC     DPTR
+0023EA 904C91            MOV     DPTR,#m_adc0vBase
+0023ED E0                MOVX    A,@DPTR
+0023EE FE                MOV     R6,A
+0023EF A3                INC     DPTR
+0023F0 E0                MOVX    A,@DPTR
+0023F1 FF                MOV     R7,A
+0023F2 C3                CLR     C
+0023F3 904C94            MOV     DPTR,#m_adc3vValue+01H
 0023F6 E0                MOVX    A,@DPTR
-0023F7 FD                MOV     R5,A
-0023F8 E4                CLR     A
-0023F9 120206            LCALL   ?C?FCASTI
-0023FC D003              POP     AR3
-0023FE D002              POP     AR2
-002400 D001              POP     AR1
-002402 D000              POP     AR0
-002404 12000A            LCALL   ?C?FPADD
-002407 12023F            LCALL   ?C?CASTF
-00240A 904CDE            MOV     DPTR,#g_variable+01FH
-00240D EE                MOV     A,R6
-00240E F0                MOVX    @DPTR,A
-00240F A3                INC     DPTR
-002410 EF                MOV     A,R7
-002411 F0                MOVX    @DPTR,A
+0023F7 9F                SUBB    A,R7
+0023F8 FD                MOV     R5,A
+0023F9 904C93            MOV     DPTR,#m_adc3vValue
+0023FC E0                MOVX    A,@DPTR
+0023FD 9E                SUBB    A,R6
+0023FE FC                MOV     R4,A
+0023FF E4                CLR     A
+002400 120206            LCALL   ?C?FCASTI
+002403 7BC3              MOV     R3,#0C3H
+002405 7AF5              MOV     R2,#0F5H
+002407 79A8              MOV     R1,#0A8H
+002409 783E              MOV     R0,#03EH
+00240B 1200FB            LCALL   ?C?FPMUL
+00240E C004              PUSH    AR4
+002410 C005              PUSH    AR5
+002412 C006              PUSH    AR6
+002414 C007              PUSH    AR7
+002416 904C91            MOV     DPTR,#m_adc0vBase
+002419 E0                MOVX    A,@DPTR
+00241A FC                MOV     R4,A
+00241B A3                INC     DPTR
+00241C E0                MOVX    A,@DPTR
+00241D FD                MOV     R5,A
+00241E E4                CLR     A
+00241F 120206            LCALL   ?C?FCASTI
+002422 D003              POP     AR3
+002424 D002              POP     AR2
+002426 D001              POP     AR1
+002428 D000              POP     AR0
+00242A 12000A            LCALL   ?C?FPADD
+00242D 12023F            LCALL   ?C?CASTF
+002430 904CDE            MOV     DPTR,#g_variable+01FH
+002433 EE                MOV     A,R6
+002434 F0                MOVX    @DPTR,A
+002435 A3                INC     DPTR
+002436 EF                MOV     A,R7
+002437 F0                MOVX    @DPTR,A
    35: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_0V9+m_adc0vBase;
-002412 904C91            MOV     DPTR,#m_adc0vBase
-002415 E0                MOVX    A,@DPTR
-002416 FE                MOV     R6,A
-002417 A3                INC     DPTR
-002418 E0                MOVX    A,@DPTR
-002419 FF                MOV     R7,A
-00241A C3                CLR     C
-00241B 904C94            MOV     DPTR,#m_adc3vValue+01H
-00241E E0                MOVX    A,@DPTR
-00241F 9F                SUBB    A,R7
-002420 FD                MOV     R5,A
-002421 904C93            MOV     DPTR,#m_adc3vValue
-002424 E0                MOVX    A,@DPTR
-002425 9E                SUBB    A,R6
-002426 FC                MOV     R4,A
-002427 E4                CLR     A
-002428 120206            LCALL   ?C?FCASTI
-00242B 7B5C              MOV     R3,#05CH
-00242D 7A8F              MOV     R2,#08FH
-00242F 7942              MOV     R1,#042H
-002431 783E              MOV     R0,#03EH
-002433 1200FB            LCALL   ?C?FPMUL
-002436 C004              PUSH    AR4
-002438 C005              PUSH    AR5
-00243A C006              PUSH    AR6
-00243C C007              PUSH    AR7
-00243E 904C91            MOV     DPTR,#m_adc0vBase
-002441 E0                MOVX    A,@DPTR
-002442 FC                MOV     R4,A
-002443 A3                INC     DPTR
+002438 904C91            MOV     DPTR,#m_adc0vBase
+00243B E0                MOVX    A,@DPTR
+00243C FE                MOV     R6,A
+00243D A3                INC     DPTR
+00243E E0                MOVX    A,@DPTR
+00243F FF                MOV     R7,A
+002440 C3                CLR     C
+002441 904C94            MOV     DPTR,#m_adc3vValue+01H
 002444 E0                MOVX    A,@DPTR
-002445 FD                MOV     R5,A
-002446 E4                CLR     A
-002447 120206            LCALL   ?C?FCASTI
-00244A D003              POP     AR3
-00244C D002              POP     AR2
-00244E D001              POP     AR1
-002450 D000              POP     AR0
-002452 12000A            LCALL   ?C?FPADD
-002455 12023F            LCALL   ?C?CASTF
-002458 904CE0            MOV     DPTR,#g_variable+021H
-00245B EE                MOV     A,R6
-00245C F0                MOVX    @DPTR,A
-00245D A3                INC     DPTR
-00245E EF                MOV     A,R7
-00245F F0                MOVX    @DPTR,A
+002445 9F                SUBB    A,R7
+002446 FD                MOV     R5,A
+002447 904C93            MOV     DPTR,#m_adc3vValue
+00244A E0                MOVX    A,@DPTR
+00244B 9E                SUBB    A,R6
+00244C FC                MOV     R4,A
+00244D E4                CLR     A
+00244E 120206            LCALL   ?C?FCASTI
+002451 7B5C              MOV     R3,#05CH
+002453 7A8F              MOV     R2,#08FH
+002455 7942              MOV     R1,#042H
+002457 783E              MOV     R0,#03EH
+002459 1200FB            LCALL   ?C?FPMUL
+00245C C004              PUSH    AR4
+00245E C005              PUSH    AR5
+002460 C006              PUSH    AR6
+002462 C007              PUSH    AR7
+002464 904C91            MOV     DPTR,#m_adc0vBase
+002467 E0                MOVX    A,@DPTR
+002468 FC                MOV     R4,A
+002469 A3                INC     DPTR
+00246A E0                MOVX    A,@DPTR
+00246B FD                MOV     R5,A
+00246C E4                CLR     A
+00246D 120206            LCALL   ?C?FCASTI
+002470 D003              POP     AR3
+002472 D002              POP     AR2
+002474 D001              POP     AR1
+002476 D000              POP     AR0
+002478 12000A            LCALL   ?C?FPADD
+00247B 12023F            LCALL   ?C?CASTF
+00247E 904CE0            MOV     DPTR,#g_variable+021H
+002481 EE                MOV     A,R6
+002482 F0                MOVX    @DPTR,A
+002483 A3                INC     DPTR
+002484 EF                MOV     A,R7
+002485 F0                MOVX    @DPTR,A
    36: #endif	
    37: #endif
    38: }
-002460 22                RET     
+002486 22                RET     
 ----- FUNCTION YC_adc_init (END) -------
 
 
@@ -6965,13 +6995,13 @@
    71: {
    72: 	m_reset_reg = 1;
    73: 	while(1);
-002461 908010            MOV     DPTR,#m_reset_reg
-002464 7401              MOV     A,#01H
-002466 F0                MOVX    @DPTR,A
-002467         ?C0005?SYS:
+002487 908010            MOV     DPTR,#m_reset_reg
+00248A 7401              MOV     A,#01H
+00248C F0                MOVX    @DPTR,A
+00248D         ?C0005?SYS:
    74: }
-002467 80FE              SJMP    ?C0005?SYS
-002469 22                RET     
+00248D 80FE              SJMP    ?C0005?SYS
+00248F 22                RET     
 ----- FUNCTION System_Hardware_reset (END) -------
 
 
@@ -6981,7 +7011,7 @@
    95: {
    96: 	System_Hardware_reset();
    97: }
-00246A 80F5              SJMP    System_Hardware_reset
+002490 80F5              SJMP    System_Hardware_reset
 ----- FUNCTION System_Reset_Connect (END) -------
 
 
@@ -6989,21 +7019,21 @@
  FILE: 'sys.c'
   104: static void kb_cb_Hid(byte *p,byte len) {
   105: 	//p[0] is hid type,always is 1(kb) now
-00246C 904E93            MOV     DPTR,#len
-00246F ED                MOV     A,R5
-002470 F0                MOVX    @DPTR,A
+002492 904E93            MOV     DPTR,#len
+002495 ED                MOV     A,R5
+002496 F0                MOVX    @DPTR,A
 ;---- Variable 'p' assigned to Register 'R1/R2/R3' ----
   106: 	byte temp = p[1];
-002471 900001            MOV     DPTR,#01H
-002474 1203CF            LCALL   ?C?CLDOPTR
-002477 904E94            MOV     DPTR,#temp
-00247A F0                MOVX    @DPTR,A
+002497 900001            MOV     DPTR,#01H
+00249A 1203CF            LCALL   ?C?CLDOPTR
+00249D 904E94            MOV     DPTR,#temp
+0024A0 F0                MOVX    @DPTR,A
   107: 
   108: 	if (len<2) {
   109: 		return;
   110: 	}
   111: }
-00247B 22                RET     
+0024A1 22                RET     
 ----- FUNCTION _kb_cb_Hid (END) -------
 
 
@@ -7014,691 +7044,691 @@
    42: #ifdef  ADC_ENABLE
    43: 	byte i;
    44: 	ulong batValue = 0;
-00247C 904E67            MOV     DPTR,#batValue
-00247F 120533            LCALL   ?C?LSTKXDATA
-002482 00                DB      00H
-002483 00                DB      00H
-002484 00                DB      00H
-002485 00                DB      00H
+0024A2 904E67            MOV     DPTR,#batValue
+0024A5 120533            LCALL   ?C?LSTKXDATA
+0024A8 00                DB      00H
+0024A9 00                DB      00H
+0024AA 00                DB      00H
+0024AB 00                DB      00H
    45: 
    46: 	if(!m_adcCurrentValue)
-002486 904C95            MOV     DPTR,#m_adcCurrentValue
-002489 E0                MOVX    A,@DPTR
-00248A 7002              JNZ     ?C0022?ADC
-00248C A3                INC     DPTR
-00248D E0                MOVX    A,@DPTR
-00248E         ?C0022?ADC:
-00248E 7002              JNZ     $ + 4H
-002490 A1E0              AJMP    ?C0006?ADC
-002492         ?C0005?ADC:
+0024AC 904C95            MOV     DPTR,#m_adcCurrentValue
+0024AF E0                MOVX    A,@DPTR
+0024B0 7002              JNZ     ?C0022?ADC
+0024B2 A3                INC     DPTR
+0024B3 E0                MOVX    A,@DPTR
+0024B4         ?C0022?ADC:
+0024B4 7002              JNZ     $ + 4H
+0024B6 C106              AJMP    ?C0006?ADC
+0024B8         ?C0005?ADC:
    47: 		return;
    48: 
    49: 	g_variable.battery_value[g_variable.battery_value_index++] = m_adcCurrentValue;
-002492 904C95            MOV     DPTR,#m_adcCurrentValue
-002495 E0                MOVX    A,@DPTR
-002496 FE                MOV     R6,A
-002497 A3                INC     DPTR
-002498 E0                MOVX    A,@DPTR
-002499 FF                MOV     R7,A
-00249A 904CD4            MOV     DPTR,#g_variable+015H
-00249D E0                MOVX    A,@DPTR
-00249E FD                MOV     R5,A
-00249F 04                INC     A
-0024A0 F0                MOVX    @DPTR,A
-0024A1 ED                MOV     A,R5
-0024A2 25E0              ADD     A,ACC
-0024A4 24D6              ADD     A,#LOW g_variable+017H
-0024A6 F582              MOV     DPL,A
-0024A8 E4                CLR     A
-0024A9 344C              ADDC    A,#HIGH g_variable+017H
-0024AB F583              MOV     DPH,A
-0024AD EE                MOV     A,R6
-0024AE F0                MOVX    @DPTR,A
-0024AF A3                INC     DPTR
-0024B0 EF                MOV     A,R7
-0024B1 F0                MOVX    @DPTR,A
+0024B8 904C95            MOV     DPTR,#m_adcCurrentValue
+0024BB E0                MOVX    A,@DPTR
+0024BC FE                MOV     R6,A
+0024BD A3                INC     DPTR
+0024BE E0                MOVX    A,@DPTR
+0024BF FF                MOV     R7,A
+0024C0 904CD4            MOV     DPTR,#g_variable+015H
+0024C3 E0                MOVX    A,@DPTR
+0024C4 FD                MOV     R5,A
+0024C5 04                INC     A
+0024C6 F0                MOVX    @DPTR,A
+0024C7 ED                MOV     A,R5
+0024C8 25E0              ADD     A,ACC
+0024CA 24D6              ADD     A,#LOW g_variable+017H
+0024CC F582              MOV     DPL,A
+0024CE E4                CLR     A
+0024CF 344C              ADDC    A,#HIGH g_variable+017H
+0024D1 F583              MOV     DPH,A
+0024D3 EE                MOV     A,R6
+0024D4 F0                MOVX    @DPTR,A
+0024D5 A3                INC     DPTR
+0024D6 EF                MOV     A,R7
+0024D7 F0                MOVX    @DPTR,A
    50: 	if (g_variable.battery_value_index >= BAT_ARRAY_LEN)
-0024B2 904CD4            MOV     DPTR,#g_variable+015H
-0024B5 E0                MOVX    A,@DPTR
-0024B6 C3                CLR     C
-0024B7 9404              SUBB    A,#04H
-0024B9 4002              JC      ?C0007?ADC
+0024D8 904CD4            MOV     DPTR,#g_variable+015H
+0024DB E0                MOVX    A,@DPTR
+0024DC C3                CLR     C
+0024DD 9404              SUBB    A,#04H
+0024DF 4002              JC      ?C0007?ADC
    51: 		g_variable.battery_value_index = 0;
-0024BB E4                CLR     A
-0024BC F0                MOVX    @DPTR,A
-0024BD         ?C0007?ADC:
+0024E1 E4                CLR     A
+0024E2 F0                MOVX    @DPTR,A
+0024E3         ?C0007?ADC:
    52: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
-0024BD E4                CLR     A
-0024BE 904E66            MOV     DPTR,#i
-0024C1 F0                MOVX    @DPTR,A
-0024C2         ?C0008?ADC:
+0024E3 E4                CLR     A
+0024E4 904E66            MOV     DPTR,#i
+0024E7 F0                MOVX    @DPTR,A
+0024E8         ?C0008?ADC:
    53: 	{
    54: 		batValue += g_variable.battery_value[i];
-0024C2 904E67            MOV     DPTR,#batValue
-0024C5 E0                MOVX    A,@DPTR
-0024C6 F8                MOV     R0,A
-0024C7 A3                INC     DPTR
-0024C8 E0                MOVX    A,@DPTR
-0024C9 F9                MOV     R1,A
-0024CA A3                INC     DPTR
-0024CB E0                MOVX    A,@DPTR
-0024CC FA                MOV     R2,A
-0024CD A3                INC     DPTR
-0024CE E0                MOVX    A,@DPTR
-0024CF FB                MOV     R3,A
-0024D0 904E66            MOV     DPTR,#i
-0024D3 E0                MOVX    A,@DPTR
-0024D4 25E0              ADD     A,ACC
-0024D6 24D6              ADD     A,#LOW g_variable+017H
-0024D8 F582              MOV     DPL,A
-0024DA E4                CLR     A
-0024DB 344C              ADDC    A,#HIGH g_variable+017H
-0024DD F583              MOV     DPH,A
-0024DF E0                MOVX    A,@DPTR
-0024E0 FE                MOV     R6,A
-0024E1 A3                INC     DPTR
-0024E2 E0                MOVX    A,@DPTR
-0024E3 FF                MOV     R7,A
-0024E4 E4                CLR     A
-0024E5 FC                MOV     R4,A
-0024E6 FD                MOV     R5,A
-0024E7 EB                MOV     A,R3
-0024E8 2F                ADD     A,R7
-0024E9 FF                MOV     R7,A
-0024EA EA                MOV     A,R2
-0024EB 3E                ADDC    A,R6
-0024EC FE                MOV     R6,A
-0024ED ED                MOV     A,R5
-0024EE 39                ADDC    A,R1
-0024EF FD                MOV     R5,A
-0024F0 EC                MOV     A,R4
-0024F1 38                ADDC    A,R0
-0024F2 FC                MOV     R4,A
-0024F3 904E67            MOV     DPTR,#batValue
-0024F6 120527            LCALL   ?C?LSTXDATA
+0024E8 904E67            MOV     DPTR,#batValue
+0024EB E0                MOVX    A,@DPTR
+0024EC F8                MOV     R0,A
+0024ED A3                INC     DPTR
+0024EE E0                MOVX    A,@DPTR
+0024EF F9                MOV     R1,A
+0024F0 A3                INC     DPTR
+0024F1 E0                MOVX    A,@DPTR
+0024F2 FA                MOV     R2,A
+0024F3 A3                INC     DPTR
+0024F4 E0                MOVX    A,@DPTR
+0024F5 FB                MOV     R3,A
+0024F6 904E66            MOV     DPTR,#i
+0024F9 E0                MOVX    A,@DPTR
+0024FA 25E0              ADD     A,ACC
+0024FC 24D6              ADD     A,#LOW g_variable+017H
+0024FE F582              MOV     DPL,A
+002500 E4                CLR     A
+002501 344C              ADDC    A,#HIGH g_variable+017H
+002503 F583              MOV     DPH,A
+002505 E0                MOVX    A,@DPTR
+002506 FE                MOV     R6,A
+002507 A3                INC     DPTR
+002508 E0                MOVX    A,@DPTR
+002509 FF                MOV     R7,A
+00250A E4                CLR     A
+00250B FC                MOV     R4,A
+00250C FD                MOV     R5,A
+00250D EB                MOV     A,R3
+00250E 2F                ADD     A,R7
+00250F FF                MOV     R7,A
+002510 EA                MOV     A,R2
+002511 3E                ADDC    A,R6
+002512 FE                MOV     R6,A
+002513 ED                MOV     A,R5
+002514 39                ADDC    A,R1
+002515 FD                MOV     R5,A
+002516 EC                MOV     A,R4
+002517 38                ADDC    A,R0
+002518 FC                MOV     R4,A
+002519 904E67            MOV     DPTR,#batValue
+00251C 120527            LCALL   ?C?LSTXDATA
    55: 	}
-0024F9 904E66            MOV     DPTR,#i
-0024FC E0                MOVX    A,@DPTR
-0024FD 04                INC     A
-0024FE F0                MOVX    @DPTR,A
-0024FF E0                MOVX    A,@DPTR
-002500 B404BF            CJNE    A,#04H,?C0008?ADC
-002503         ?C0009?ADC:
+00251F 904E66            MOV     DPTR,#i
+002522 E0                MOVX    A,@DPTR
+002523 04                INC     A
+002524 F0                MOVX    @DPTR,A
+002525 E0                MOVX    A,@DPTR
+002526 B404BF            CJNE    A,#04H,?C0008?ADC
+002529         ?C0009?ADC:
    56: 	batValue = batValue/BAT_ARRAY_LEN;
-002503 904E67            MOV     DPTR,#batValue
-002506 E0                MOVX    A,@DPTR
-002507 FC                MOV     R4,A
-002508 A3                INC     DPTR
-002509 E0                MOVX    A,@DPTR
-00250A FD                MOV     R5,A
-00250B A3                INC     DPTR
-00250C E0                MOVX    A,@DPTR
-00250D FE                MOV     R6,A
-00250E A3                INC     DPTR
-00250F E0                MOVX    A,@DPTR
-002510 FF                MOV     R7,A
-002511 E4                CLR     A
-002512 7B04              MOV     R3,#04H
-002514 FA                MOV     R2,A
-002515 F9                MOV     R1,A
-002516 F8                MOV     R0,A
-002517 120476            LCALL   ?C?ULDIV
-00251A 904E67            MOV     DPTR,#batValue
-00251D 120527            LCALL   ?C?LSTXDATA
+002529 904E67            MOV     DPTR,#batValue
+00252C E0                MOVX    A,@DPTR
+00252D FC                MOV     R4,A
+00252E A3                INC     DPTR
+00252F E0                MOVX    A,@DPTR
+002530 FD                MOV     R5,A
+002531 A3                INC     DPTR
+002532 E0                MOVX    A,@DPTR
+002533 FE                MOV     R6,A
+002534 A3                INC     DPTR
+002535 E0                MOVX    A,@DPTR
+002536 FF                MOV     R7,A
+002537 E4                CLR     A
+002538 7B04              MOV     R3,#04H
+00253A FA                MOV     R2,A
+00253B F9                MOV     R1,A
+00253C F8                MOV     R0,A
+00253D 120476            LCALL   ?C?ULDIV
+002540 904E67            MOV     DPTR,#batValue
+002543 120527            LCALL   ?C?LSTXDATA
    57: 
    58: 	if(batValue < g_variable.battery_level_shutdown)
-002520 904CE0            MOV     DPTR,#g_variable+021H
-002523 E0                MOVX    A,@DPTR
-002524 FE                MOV     R6,A
-002525 A3                INC     DPTR
-002526 E0                MOVX    A,@DPTR
-002527 FF                MOV     R7,A
-002528 E4                CLR     A
-002529 FC                MOV     R4,A
-00252A FD                MOV     R5,A
-00252B 904E67            MOV     DPTR,#batValue
-00252E E0                MOVX    A,@DPTR
-00252F F8                MOV     R0,A
-002530 A3                INC     DPTR
-002531 E0                MOVX    A,@DPTR
-002532 F9                MOV     R1,A
-002533 A3                INC     DPTR
-002534 E0                MOVX    A,@DPTR
-002535 FA                MOV     R2,A
-002536 A3                INC     DPTR
-002537 E0                MOVX    A,@DPTR
-002538 FB                MOV     R3,A
-002539 C3                CLR     C
-00253A 120516            LCALL   ?C?ULCMP
-00253D 5027              JNC     ?C0011?ADC
+002546 904CE0            MOV     DPTR,#g_variable+021H
+002549 E0                MOVX    A,@DPTR
+00254A FE                MOV     R6,A
+00254B A3                INC     DPTR
+00254C E0                MOVX    A,@DPTR
+00254D FF                MOV     R7,A
+00254E E4                CLR     A
+00254F FC                MOV     R4,A
+002550 FD                MOV     R5,A
+002551 904E67            MOV     DPTR,#batValue
+002554 E0                MOVX    A,@DPTR
+002555 F8                MOV     R0,A
+002556 A3                INC     DPTR
+002557 E0                MOVX    A,@DPTR
+002558 F9                MOV     R1,A
+002559 A3                INC     DPTR
+00255A E0                MOVX    A,@DPTR
+00255B FA                MOV     R2,A
+00255C A3                INC     DPTR
+00255D E0                MOVX    A,@DPTR
+00255E FB                MOV     R3,A
+00255F C3                CLR     C
+002560 120516            LCALL   ?C?ULCMP
+002563 5027              JNC     ?C0011?ADC
    59: 	{
    60: 		g_variable.battery_status = BAT_STATUS_SHUT_DOWN;
-00253F 904CD5            MOV     DPTR,#g_variable+016H
-002542 7402              MOV     A,#02H
-002544 F0                MOVX    @DPTR,A
+002565 904CD5            MOV     DPTR,#g_variable+016H
+002568 7402              MOV     A,#02H
+00256A F0                MOVX    @DPTR,A
    61: 		if(g_variable.last_battery_status != BAT_STATUS_SHUT_DOWN)
-002545 904CFA            MOV     DPTR,#g_variable+03BH
-002548 E0                MOVX    A,@DPTR
-002549 6402              XRL     A,#02H
-00254B 7002              JNZ     $ + 4H
-00254D A1D8              AJMP    ?C0013?ADC
+00256B 904CFA            MOV     DPTR,#g_variable+03BH
+00256E E0                MOVX    A,@DPTR
+00256F 6402              XRL     A,#02H
+002571 7002              JNZ     $ + 4H
+002573 A1FE              AJMP    ?C0013?ADC
    62: 		{
    63: 			g_variable.battery_shutdown_flag = 1;
-00254F 904CF9            MOV     DPTR,#g_variable+03AH
-002552 7401              MOV     A,#01H
-002554 F0                MOVX    @DPTR,A
+002575 904CF9            MOV     DPTR,#g_variable+03AH
+002578 7401              MOV     A,#01H
+00257A F0                MOVX    @DPTR,A
    64: 			IIC_WriteBlock(EEPROM_BATTERY_SHUTDOWN_FLAG ,1 ,(byte *)&g_variable.battery_shutdown_flag);
-002555 FB                MOV     R3,A
-002556 7A4C              MOV     R2,#HIGH g_variable+03AH
-002558 79F9              MOV     R1,#LOW g_variable+03AH
-00255A FD                MOV     R5,A
-00255B 7C00              MOV     R4,#00H
-00255D 7FF9              MOV     R7,#0F9H
-00255F 7E3F              MOV     R6,#03FH
-002561 1215DB            LCALL   _IIC_WriteBlock
+00257B FB                MOV     R3,A
+00257C 7A4C              MOV     R2,#HIGH g_variable+03AH
+00257E 79F9              MOV     R1,#LOW g_variable+03AH
+002580 FD                MOV     R5,A
+002581 7C00              MOV     R4,#00H
+002583 7FF9              MOV     R7,#0F9H
+002585 7E3F              MOV     R6,#03FH
+002587 1215DB            LCALL   _IIC_WriteBlock
    65: 		}
    66: 	}
-002564 8072              SJMP    ?C0013?ADC
-002566         ?C0011?ADC:
+00258A 8072              SJMP    ?C0013?ADC
+00258C         ?C0011?ADC:
    67: 	else
    68: 	{
    69: 		if(g_variable.last_battery_status == BAT_STATUS_SHUT_DOWN)
-002566 904CFA            MOV     DPTR,#g_variable+03BH
-002569 E0                MOVX    A,@DPTR
-00256A B40215            CJNE    A,#02H,?C0014?ADC
+00258C 904CFA            MOV     DPTR,#g_variable+03BH
+00258F E0                MOVX    A,@DPTR
+002590 B40215            CJNE    A,#02H,?C0014?ADC
    70: 		{
    71: 			g_variable.battery_shutdown_flag = 0;
-00256D E4                CLR     A
-00256E 904CF9            MOV     DPTR,#g_variable+03AH
-002571 F0                MOVX    @DPTR,A
+002593 E4                CLR     A
+002594 904CF9            MOV     DPTR,#g_variable+03AH
+002597 F0                MOVX    @DPTR,A
    72: 			IIC_WriteBlock(EEPROM_BATTERY_SHUTDOWN_FLAG ,1 ,(byte *)&g_variable.battery_shutdown_flag);
-002572 7B01              MOV     R3,#01H
-002574 7A4C              MOV     R2,#HIGH g_variable+03AH
-002576 79F9              MOV     R1,#LOW g_variable+03AH
-002578 7D01              MOV     R5,#01H
-00257A FC                MOV     R4,A
-00257B 7FF9              MOV     R7,#0F9H
-00257D 7E3F              MOV     R6,#03FH
-00257F 1215DB            LCALL   _IIC_WriteBlock
+002598 7B01              MOV     R3,#01H
+00259A 7A4C              MOV     R2,#HIGH g_variable+03AH
+00259C 79F9              MOV     R1,#LOW g_variable+03AH
+00259E 7D01              MOV     R5,#01H
+0025A0 FC                MOV     R4,A
+0025A1 7FF9              MOV     R7,#0F9H
+0025A3 7E3F              MOV     R6,#03FH
+0025A5 1215DB            LCALL   _IIC_WriteBlock
    73: 		}
-002582         ?C0014?ADC:
+0025A8         ?C0014?ADC:
    74: 		
    75: 		if (batValue < g_variable.battery_level_low)
-002582 904CDE            MOV     DPTR,#g_variable+01FH
-002585 E0                MOVX    A,@DPTR
-002586 FE                MOV     R6,A
-002587 A3                INC     DPTR
-002588 E0                MOVX    A,@DPTR
-002589 FF                MOV     R7,A
-00258A E4                CLR     A
-00258B FC                MOV     R4,A
-00258C FD                MOV     R5,A
-00258D 904E67            MOV     DPTR,#batValue
-002590 E0                MOVX    A,@DPTR
-002591 F8                MOV     R0,A
-002592 A3                INC     DPTR
-002593 E0                MOVX    A,@DPTR
-002594 F9                MOV     R1,A
-002595 A3                INC     DPTR
-002596 E0                MOVX    A,@DPTR
-002597 FA                MOV     R2,A
-002598 A3                INC     DPTR
-002599 E0                MOVX    A,@DPTR
-00259A FB                MOV     R3,A
-00259B C3                CLR     C
-00259C 120516            LCALL   ?C?ULCMP
-00259F 501D              JNC     ?C0015?ADC
+0025A8 904CDE            MOV     DPTR,#g_variable+01FH
+0025AB E0                MOVX    A,@DPTR
+0025AC FE                MOV     R6,A
+0025AD A3                INC     DPTR
+0025AE E0                MOVX    A,@DPTR
+0025AF FF                MOV     R7,A
+0025B0 E4                CLR     A
+0025B1 FC                MOV     R4,A
+0025B2 FD                MOV     R5,A
+0025B3 904E67            MOV     DPTR,#batValue
+0025B6 E0                MOVX    A,@DPTR
+0025B7 F8                MOV     R0,A
+0025B8 A3                INC     DPTR
+0025B9 E0                MOVX    A,@DPTR
+0025BA F9                MOV     R1,A
+0025BB A3                INC     DPTR
+0025BC E0                MOVX    A,@DPTR
+0025BD FA                MOV     R2,A
+0025BE A3                INC     DPTR
+0025BF E0                MOVX    A,@DPTR
+0025C0 FB                MOV     R3,A
+0025C1 C3                CLR     C
+0025C2 120516            LCALL   ?C?ULCMP
+0025C5 501D              JNC     ?C0015?ADC
    76: 		{
    77: 			g_variable.battery_status = BAT_STATUS_LOW;
-0025A1 904CD5            MOV     DPTR,#g_variable+016H
-0025A4 7401              MOV     A,#01H
-0025A6 F0                MOVX    @DPTR,A
+0025C7 904CD5            MOV     DPTR,#g_variable+016H
+0025CA 7401              MOV     A,#01H
+0025CC F0                MOVX    @DPTR,A
    78: 			if(!g_variable.g24_long_sleep_flag)
-0025A7 904CFB            MOV     DPTR,#g_variable+03CH
-0025AA E0                MOVX    A,@DPTR
-0025AB 702B              JNZ     ?C0013?ADC
+0025CD 904CFB            MOV     DPTR,#g_variable+03CH
+0025D0 E0                MOVX    A,@DPTR
+0025D1 702B              JNZ     ?C0013?ADC
    79: 			{
    80: 			m_24g_enter_hibernate[0]	= 0x00;
-0025AD 904D3D            MOV     DPTR,#m_24g_enter_hibernate
-0025B0 F0                MOVX    @DPTR,A
+0025D3 904D3D            MOV     DPTR,#m_24g_enter_hibernate
+0025D6 F0                MOVX    @DPTR,A
    81: 			m_24g_enter_hibernate[1]	= 0x48;
-0025B1 A3                INC     DPTR
-0025B2 7448              MOV     A,#048H
-0025B4 F0                MOVX    @DPTR,A
+0025D7 A3                INC     DPTR
+0025D8 7448              MOV     A,#048H
+0025DA F0                MOVX    @DPTR,A
    82: 			m_24g_enter_hibernate[2]	= 0x12;		// 100ms
-0025B5 A3                INC     DPTR
-0025B6 7412              MOV     A,#012H
-0025B8 F0                MOVX    @DPTR,A
+0025DB A3                INC     DPTR
+0025DC 7412              MOV     A,#012H
+0025DE F0                MOVX    @DPTR,A
    83: 			m_24g_enter_hibernate[3]	= 0x00;
-0025B9 E4                CLR     A
-0025BA A3                INC     DPTR
-0025BB F0                MOVX    @DPTR,A
+0025DF E4                CLR     A
+0025E0 A3                INC     DPTR
+0025E1 F0                MOVX    @DPTR,A
    84: 			}
    85: 		}
-0025BC 801A              SJMP    ?C0013?ADC
-0025BE         ?C0015?ADC:
+0025E2 801A              SJMP    ?C0013?ADC
+0025E4         ?C0015?ADC:
    86: 		else
    87: 		{
    88: 			g_variable.battery_status = BAT_STATUS_NONE;
-0025BE E4                CLR     A
-0025BF 904CD5            MOV     DPTR,#g_variable+016H
-0025C2 F0                MOVX    @DPTR,A
+0025E4 E4                CLR     A
+0025E5 904CD5            MOV     DPTR,#g_variable+016H
+0025E8 F0                MOVX    @DPTR,A
    89: 			if(!g_variable.g24_long_sleep_flag)
-0025C3 904CFB            MOV     DPTR,#g_variable+03CH
-0025C6 E0                MOVX    A,@DPTR
-0025C7 700F              JNZ     ?C0013?ADC
+0025E9 904CFB            MOV     DPTR,#g_variable+03CH
+0025EC E0                MOVX    A,@DPTR
+0025ED 700F              JNZ     ?C0013?ADC
    90: 			{
    91: 			m_24g_enter_hibernate[0]	= 0x00;
-0025C9 904D3D            MOV     DPTR,#m_24g_enter_hibernate
-0025CC F0                MOVX    @DPTR,A
+0025EF 904D3D            MOV     DPTR,#m_24g_enter_hibernate
+0025F2 F0                MOVX    @DPTR,A
    92: 			m_24g_enter_hibernate[1]	= 0x48;
-0025CD A3                INC     DPTR
-0025CE 7448              MOV     A,#048H
-0025D0 F0                MOVX    @DPTR,A
+0025F3 A3                INC     DPTR
+0025F4 7448              MOV     A,#048H
+0025F6 F0                MOVX    @DPTR,A
    93: 			m_24g_enter_hibernate[2]   = 0x5d;		// 510ms
-0025D1 A3                INC     DPTR
-0025D2 745D              MOV     A,#05DH
-0025D4 F0                MOVX    @DPTR,A
+0025F7 A3                INC     DPTR
+0025F8 745D              MOV     A,#05DH
+0025FA F0                MOVX    @DPTR,A
    94: 			m_24g_enter_hibernate[3]	= 0x00;
-0025D5 E4                CLR     A
-0025D6 A3                INC     DPTR
-0025D7 F0                MOVX    @DPTR,A
+0025FB E4                CLR     A
+0025FC A3                INC     DPTR
+0025FD F0                MOVX    @DPTR,A
    95: 			}
    96: 		}
    97: 	}
-0025D8         ?C0013?ADC:
+0025FE         ?C0013?ADC:
    98: 
    99: 	g_variable.last_battery_status = g_variable.battery_status;
-0025D8 904CD5            MOV     DPTR,#g_variable+016H
-0025DB E0                MOVX    A,@DPTR
-0025DC 904CFA            MOV     DPTR,#g_variable+03BH
-0025DF F0                MOVX    @DPTR,A
+0025FE 904CD5            MOV     DPTR,#g_variable+016H
+002601 E0                MOVX    A,@DPTR
+002602 904CFA            MOV     DPTR,#g_variable+03BH
+002605 F0                MOVX    @DPTR,A
   100: #endif	
   101: }
-0025E0         ?C0006?ADC:
-0025E0 22                RET     
+002606         ?C0006?ADC:
+002606 22                RET     
 ----- FUNCTION YC_adc_check (END) -------
 
 
 ----- FUNCTION _bufsize (BEGIN) -----
-0025E1 904E74            MOV     DPTR,#rptr
-0025E4 EE                MOV     A,R6
-0025E5 F0                MOVX    @DPTR,A
-0025E6 A3                INC     DPTR
-0025E7 EF                MOV     A,R7
-0025E8 F0                MOVX    @DPTR,A
-0025E9 904E76            MOV     DPTR,#wptr
-0025EC EC                MOV     A,R4
-0025ED F0                MOVX    @DPTR,A
-0025EE A3                INC     DPTR
-0025EF ED                MOV     A,R5
-0025F0 F0                MOVX    @DPTR,A
+002607 904E74            MOV     DPTR,#rptr
+00260A EE                MOV     A,R6
+00260B F0                MOVX    @DPTR,A
+00260C A3                INC     DPTR
+00260D EF                MOV     A,R7
+00260E F0                MOVX    @DPTR,A
+00260F 904E76            MOV     DPTR,#wptr
+002612 EC                MOV     A,R4
+002613 F0                MOVX    @DPTR,A
+002614 A3                INC     DPTR
+002615 ED                MOV     A,R5
+002616 F0                MOVX    @DPTR,A
 ;---- Variable 'buflen' assigned to Register 'R3' ----
-0025F1 904E76            MOV     DPTR,#wptr
-0025F4 E0                MOVX    A,@DPTR
-0025F5 FE                MOV     R6,A
-0025F6 A3                INC     DPTR
-0025F7 E0                MOVX    A,@DPTR
-0025F8 FF                MOV     R7,A
-0025F9 D3                SETB    C
-0025FA 904E75            MOV     DPTR,#rptr+01H
-0025FD E0                MOVX    A,@DPTR
-0025FE 9F                SUBB    A,R7
-0025FF 904E74            MOV     DPTR,#rptr
-002602 E0                MOVX    A,@DPTR
-002603 9E                SUBB    A,R6
-002604 4016              JC      ?C0001?IPC
-002606 904E76            MOV     DPTR,#wptr
-002609 E0                MOVX    A,@DPTR
-00260A FE                MOV     R6,A
-00260B A3                INC     DPTR
-00260C E0                MOVX    A,@DPTR
-00260D FF                MOV     R7,A
-00260E 904E75            MOV     DPTR,#rptr+01H
-002611 E0                MOVX    A,@DPTR
-002612 9F                SUBB    A,R7
-002613 FF                MOV     R7,A
-002614 904E74            MOV     DPTR,#rptr
-002617 E0                MOVX    A,@DPTR
-002618 9E                SUBB    A,R6
-002619 FE                MOV     R6,A
-00261A 801E              SJMP    ?C0002?IPC
-00261C         ?C0001?IPC:
-00261C 904E74            MOV     DPTR,#rptr
-00261F E0                MOVX    A,@DPTR
-002620 FE                MOV     R6,A
-002621 A3                INC     DPTR
-002622 E0                MOVX    A,@DPTR
-002623 FF                MOV     R7,A
-002624 C3                CLR     C
-002625 904E77            MOV     DPTR,#wptr+01H
+002617 904E76            MOV     DPTR,#wptr
+00261A E0                MOVX    A,@DPTR
+00261B FE                MOV     R6,A
+00261C A3                INC     DPTR
+00261D E0                MOVX    A,@DPTR
+00261E FF                MOV     R7,A
+00261F D3                SETB    C
+002620 904E75            MOV     DPTR,#rptr+01H
+002623 E0                MOVX    A,@DPTR
+002624 9F                SUBB    A,R7
+002625 904E74            MOV     DPTR,#rptr
 002628 E0                MOVX    A,@DPTR
-002629 9F                SUBB    A,R7
-00262A FF                MOV     R7,A
-00262B 904E76            MOV     DPTR,#wptr
-00262E E0                MOVX    A,@DPTR
-00262F 9E                SUBB    A,R6
+002629 9E                SUBB    A,R6
+00262A 4016              JC      ?C0001?IPC
+00262C 904E76            MOV     DPTR,#wptr
+00262F E0                MOVX    A,@DPTR
 002630 FE                MOV     R6,A
-002631 AD03              MOV     R5,AR3
-002633 C3                CLR     C
-002634 EB                MOV     A,R3
-002635 9F                SUBB    A,R7
-002636 FF                MOV     R7,A
-002637 E4                CLR     A
-002638 9E                SUBB    A,R6
-002639 FE                MOV     R6,A
-00263A         ?C0002?IPC:
-00263A 22                RET     
+002631 A3                INC     DPTR
+002632 E0                MOVX    A,@DPTR
+002633 FF                MOV     R7,A
+002634 904E75            MOV     DPTR,#rptr+01H
+002637 E0                MOVX    A,@DPTR
+002638 9F                SUBB    A,R7
+002639 FF                MOV     R7,A
+00263A 904E74            MOV     DPTR,#rptr
+00263D E0                MOVX    A,@DPTR
+00263E 9E                SUBB    A,R6
+00263F FE                MOV     R6,A
+002640 801E              SJMP    ?C0002?IPC
+002642         ?C0001?IPC:
+002642 904E74            MOV     DPTR,#rptr
+002645 E0                MOVX    A,@DPTR
+002646 FE                MOV     R6,A
+002647 A3                INC     DPTR
+002648 E0                MOVX    A,@DPTR
+002649 FF                MOV     R7,A
+00264A C3                CLR     C
+00264B 904E77            MOV     DPTR,#wptr+01H
+00264E E0                MOVX    A,@DPTR
+00264F 9F                SUBB    A,R7
+002650 FF                MOV     R7,A
+002651 904E76            MOV     DPTR,#wptr
+002654 E0                MOVX    A,@DPTR
+002655 9E                SUBB    A,R6
+002656 FE                MOV     R6,A
+002657 AD03              MOV     R5,AR3
+002659 C3                CLR     C
+00265A EB                MOV     A,R3
+00265B 9F                SUBB    A,R7
+00265C FF                MOV     R7,A
+00265D E4                CLR     A
+00265E 9E                SUBB    A,R6
+00265F FE                MOV     R6,A
+002660         ?C0002?IPC:
+002660 22                RET     
 ----- FUNCTION _bufsize (END) -------
 
 
 ----- FUNCTION _ipcRx (BEGIN) -----
-00263B 904E95            MOV     DPTR,#dest
-00263E EE                MOV     A,R6
-00263F F0                MOVX    @DPTR,A
-002640 A3                INC     DPTR
-002641 EF                MOV     A,R7
-002642 F0                MOVX    @DPTR,A
+002661 904E95            MOV     DPTR,#dest
+002664 EE                MOV     A,R6
+002665 F0                MOVX    @DPTR,A
+002666 A3                INC     DPTR
+002667 EF                MOV     A,R7
+002668 F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R1' ----
-002643 A905              MOV     R1,AR5
-002645 904B9E            MOV     DPTR,#ipcRxReadPtr
-002648 E0                MOVX    A,@DPTR
-002649 FE                MOV     R6,A
-00264A A3                INC     DPTR
-00264B E0                MOVX    A,@DPTR
-00264C FF                MOV     R7,A
+002669 A905              MOV     R1,AR5
+00266B 904B9E            MOV     DPTR,#ipcRxReadPtr
+00266E E0                MOVX    A,@DPTR
+00266F FE                MOV     R6,A
+002670 A3                INC     DPTR
+002671 E0                MOVX    A,@DPTR
+002672 FF                MOV     R7,A
 ;---- Variable 'src' assigned to Register 'R6/R7' ----
-00264D         ?C0004?IPC:
-00264D AD01              MOV     R5,AR1
-00264F 19                DEC     R1
-002650 ED                MOV     A,R5
-002651 602F              JZ      ?C0005?IPC
-002653 0F                INC     R7
-002654 EF                MOV     A,R7
-002655 AC06              MOV     R4,AR6
-002657 7001              JNZ     ?C0036?IPC
-002659 0E                INC     R6
-00265A         ?C0036?IPC:
-00265A 14                DEC     A
-00265B F582              MOV     DPL,A
-00265D 8C83              MOV     DPH,R4
-00265F E0                MOVX    A,@DPTR
-002660 FD                MOV     R5,A
-002661 904E95            MOV     DPTR,#dest
-002664 E4                CLR     A
-002665 75F001            MOV     B,#01H
-002668 120424            LCALL   ?C?ILDIX
-00266B 85F082            MOV     DPL,B
-00266E F583              MOV     DPH,A
-002670 ED                MOV     A,R5
-002671 F0                MOVX    @DPTR,A
-002672 AD07              MOV     R5,AR7
-002674 AC06              MOV     R4,AR6
-002676 BC4BD4            CJNE    R4,#04BH,?C0004?IPC
-002679 BD9AD1            CJNE    R5,#09AH,?C0004?IPC
-00267C 7E4B              MOV     R6,#04BH
-00267E 7F36              MOV     R7,#036H
-002680 80CB              SJMP    ?C0004?IPC
-002682         ?C0005?IPC:
-002682 904B9E            MOV     DPTR,#ipcRxReadPtr
-002685 EE                MOV     A,R6
-002686 F0                MOVX    @DPTR,A
-002687 A3                INC     DPTR
-002688 EF                MOV     A,R7
-002689 F0                MOVX    @DPTR,A
-00268A 22                RET     
+002673         ?C0004?IPC:
+002673 AD01              MOV     R5,AR1
+002675 19                DEC     R1
+002676 ED                MOV     A,R5
+002677 602F              JZ      ?C0005?IPC
+002679 0F                INC     R7
+00267A EF                MOV     A,R7
+00267B AC06              MOV     R4,AR6
+00267D 7001              JNZ     ?C0036?IPC
+00267F 0E                INC     R6
+002680         ?C0036?IPC:
+002680 14                DEC     A
+002681 F582              MOV     DPL,A
+002683 8C83              MOV     DPH,R4
+002685 E0                MOVX    A,@DPTR
+002686 FD                MOV     R5,A
+002687 904E95            MOV     DPTR,#dest
+00268A E4                CLR     A
+00268B 75F001            MOV     B,#01H
+00268E 120424            LCALL   ?C?ILDIX
+002691 85F082            MOV     DPL,B
+002694 F583              MOV     DPH,A
+002696 ED                MOV     A,R5
+002697 F0                MOVX    @DPTR,A
+002698 AD07              MOV     R5,AR7
+00269A AC06              MOV     R4,AR6
+00269C BC4BD4            CJNE    R4,#04BH,?C0004?IPC
+00269F BD9AD1            CJNE    R5,#09AH,?C0004?IPC
+0026A2 7E4B              MOV     R6,#04BH
+0026A4 7F36              MOV     R7,#036H
+0026A6 80CB              SJMP    ?C0004?IPC
+0026A8         ?C0005?IPC:
+0026A8 904B9E            MOV     DPTR,#ipcRxReadPtr
+0026AB EE                MOV     A,R6
+0026AC F0                MOVX    @DPTR,A
+0026AD A3                INC     DPTR
+0026AE EF                MOV     A,R7
+0026AF F0                MOVX    @DPTR,A
+0026B0 22                RET     
 ----- FUNCTION _ipcRx (END) -------
 
 
 ----- FUNCTION IPC_DealSingleStep (BEGIN) -----
-00268B 7A0C              MOV     R2,#HIGH ipcReadBuff
-00268D 794B              MOV     R1,#LOW ipcReadBuff
-00268F 904E85            MOV     DPTR,#pbuff
-002692 7401              MOV     A,#01H
-002694 F0                MOVX    @DPTR,A
-002695 A3                INC     DPTR
-002696 740C              MOV     A,#HIGH ipcReadBuff
-002698 F0                MOVX    @DPTR,A
-002699 A3                INC     DPTR
-00269A 744B              MOV     A,#LOW ipcReadBuff
-00269C F0                MOVX    @DPTR,A
-00269D 904BA0            MOV     DPTR,#ipcRxWritePtr
-0026A0 E0                MOVX    A,@DPTR
-0026A1 FE                MOV     R6,A
-0026A2 A3                INC     DPTR
-0026A3 E0                MOVX    A,@DPTR
-0026A4 FF                MOV     R7,A
-0026A5 904B9E            MOV     DPTR,#ipcRxReadPtr
-0026A8 E0                MOVX    A,@DPTR
-0026A9 6E                XRL     A,R6
-0026AA 7003              JNZ     ?C0038?IPC
-0026AC A3                INC     DPTR
-0026AD E0                MOVX    A,@DPTR
-0026AE 6F                XRL     A,R7
-0026AF         ?C0038?IPC:
-0026AF 6046              JZ      ?C0029?IPC
-0026B1         ?C0023?IPC:
-0026B1 7E0C              MOV     R6,#HIGH ipcReadBuff
-0026B3 7F4B              MOV     R7,#LOW ipcReadBuff
-0026B5 7D03              MOV     R5,#03H
-0026B7 D13B              ACALL   _ipcRx
-0026B9 904E85            MOV     DPTR,#pbuff
-0026BC E0                MOVX    A,@DPTR
-0026BD FB                MOV     R3,A
-0026BE A3                INC     DPTR
-0026BF E0                MOVX    A,@DPTR
-0026C0 FA                MOV     R2,A
-0026C1 A3                INC     DPTR
-0026C2 E0                MOVX    A,@DPTR
-0026C3 F9                MOV     R1,A
-0026C4 1203B6            LCALL   ?C?CLDPTR
-0026C7 B4022B            CJNE    A,#02H,?C0027?IPC
-0026CA 904E86            MOV     DPTR,#pbuff+01H
-0026CD E4                CLR     A
-0026CE 75F002            MOV     B,#02H
-0026D1 12040E            LCALL   ?C?IILDX
-0026D4 904E85            MOV     DPTR,#pbuff
-0026D7 E0                MOVX    A,@DPTR
-0026D8 FB                MOV     R3,A
-0026D9 A3                INC     DPTR
-0026DA E0                MOVX    A,@DPTR
-0026DB FA                MOV     R2,A
-0026DC A3                INC     DPTR
-0026DD E0                MOVX    A,@DPTR
-0026DE F9                MOV     R1,A
-0026DF 1203B6            LCALL   ?C?CLDPTR
-0026E2 FF                MOV     R7,A
-0026E3 904E04            MOV     DPTR,#ipcCb
-0026E6 E0                MOVX    A,@DPTR
+0026B1 7A0C              MOV     R2,#HIGH ipcReadBuff
+0026B3 794B              MOV     R1,#LOW ipcReadBuff
+0026B5 904E85            MOV     DPTR,#pbuff
+0026B8 7401              MOV     A,#01H
+0026BA F0                MOVX    @DPTR,A
+0026BB A3                INC     DPTR
+0026BC 740C              MOV     A,#HIGH ipcReadBuff
+0026BE F0                MOVX    @DPTR,A
+0026BF A3                INC     DPTR
+0026C0 744B              MOV     A,#LOW ipcReadBuff
+0026C2 F0                MOVX    @DPTR,A
+0026C3 904BA0            MOV     DPTR,#ipcRxWritePtr
+0026C6 E0                MOVX    A,@DPTR
+0026C7 FE                MOV     R6,A
+0026C8 A3                INC     DPTR
+0026C9 E0                MOVX    A,@DPTR
+0026CA FF                MOV     R7,A
+0026CB 904B9E            MOV     DPTR,#ipcRxReadPtr
+0026CE E0                MOVX    A,@DPTR
+0026CF 6E                XRL     A,R6
+0026D0 7003              JNZ     ?C0038?IPC
+0026D2 A3                INC     DPTR
+0026D3 E0                MOVX    A,@DPTR
+0026D4 6F                XRL     A,R7
+0026D5         ?C0038?IPC:
+0026D5 6046              JZ      ?C0029?IPC
+0026D7         ?C0023?IPC:
+0026D7 7E0C              MOV     R6,#HIGH ipcReadBuff
+0026D9 7F4B              MOV     R7,#LOW ipcReadBuff
+0026DB 7D03              MOV     R5,#03H
+0026DD D161              ACALL   _ipcRx
+0026DF 904E85            MOV     DPTR,#pbuff
+0026E2 E0                MOVX    A,@DPTR
+0026E3 FB                MOV     R3,A
+0026E4 A3                INC     DPTR
+0026E5 E0                MOVX    A,@DPTR
+0026E6 FA                MOV     R2,A
 0026E7 A3                INC     DPTR
 0026E8 E0                MOVX    A,@DPTR
-0026E9 FA                MOV     R2,A
-0026EA A3                INC     DPTR
-0026EB E0                MOVX    A,@DPTR
-0026EC F582              MOV     DPL,A
-0026EE 8A83              MOV     DPH,R2
-0026F0 120568            LCALL   ?C?ICALL2
-0026F3 8002              SJMP    ?C0029?IPC
-0026F5         ?C0027?IPC:
-0026F5 80FE              SJMP    ?C0027?IPC
-0026F7         IPC_TIMER:
-0026F7         ?C0029?IPC:
-0026F7 904BA5            MOV     DPTR,#bttimer
-0026FA E0                MOVX    A,@DPTR
-0026FB FE                MOV     R6,A
-0026FC A3                INC     DPTR
+0026E9 F9                MOV     R1,A
+0026EA 1203B6            LCALL   ?C?CLDPTR
+0026ED B4022B            CJNE    A,#02H,?C0027?IPC
+0026F0 904E86            MOV     DPTR,#pbuff+01H
+0026F3 E4                CLR     A
+0026F4 75F002            MOV     B,#02H
+0026F7 12040E            LCALL   ?C?IILDX
+0026FA 904E85            MOV     DPTR,#pbuff
 0026FD E0                MOVX    A,@DPTR
-0026FE FF                MOV     R7,A
-0026FF 904C5E            MOV     DPTR,#c51timer
-002702 E0                MOVX    A,@DPTR
-002703 6E                XRL     A,R6
-002704 7003              JNZ     ?C0039?IPC
-002706 A3                INC     DPTR
-002707 E0                MOVX    A,@DPTR
-002708 6F                XRL     A,R7
-002709         ?C0039?IPC:
-002709 6022              JZ      ?C0033?IPC
-00270B 904E0A            MOV     DPTR,#ipcCb+06H
+0026FE FB                MOV     R3,A
+0026FF A3                INC     DPTR
+002700 E0                MOVX    A,@DPTR
+002701 FA                MOV     R2,A
+002702 A3                INC     DPTR
+002703 E0                MOVX    A,@DPTR
+002704 F9                MOV     R1,A
+002705 1203B6            LCALL   ?C?CLDPTR
+002708 FF                MOV     R7,A
+002709 904E04            MOV     DPTR,#ipcCb
+00270C E0                MOVX    A,@DPTR
+00270D A3                INC     DPTR
 00270E E0                MOVX    A,@DPTR
-00270F FB                MOV     R3,A
+00270F FA                MOV     R2,A
 002710 A3                INC     DPTR
 002711 E0                MOVX    A,@DPTR
-002712 FA                MOV     R2,A
-002713 A3                INC     DPTR
-002714 E0                MOVX    A,@DPTR
-002715 F9                MOV     R1,A
-002716 4A                ORL     A,R2
-002717 6037              JZ      ?C0032?IPC
-002719         ?C0031?IPC:
-002719 120564            LCALL   ?C?ICALL
-00271C 904BA5            MOV     DPTR,#bttimer
-00271F E0                MOVX    A,@DPTR
-002720 FF                MOV     R7,A
-002721 A3                INC     DPTR
-002722 E0                MOVX    A,@DPTR
-002723 904C5E            MOV     DPTR,#c51timer
-002726 CF                XCH     A,R7
-002727 F0                MOVX    @DPTR,A
-002728 A3                INC     DPTR
-002729 EF                MOV     A,R7
-00272A F0                MOVX    @DPTR,A
-00272B 80CA              SJMP    ?C0029?IPC
-00272D         ?C0033?IPC:
-00272D 904C8D            MOV     DPTR,#btstimer
-002730 E0                MOVX    A,@DPTR
-002731 FF                MOV     R7,A
-002732 A3                INC     DPTR
-002733 E0                MOVX    A,@DPTR
-002734 6F                XRL     A,R7
-002735 6019              JZ      ?C0032?IPC
-002737 904E0D            MOV     DPTR,#ipcCb+09H
+002712 F582              MOV     DPL,A
+002714 8A83              MOV     DPH,R2
+002716 120568            LCALL   ?C?ICALL2
+002719 8002              SJMP    ?C0029?IPC
+00271B         ?C0027?IPC:
+00271B 80FE              SJMP    ?C0027?IPC
+00271D         IPC_TIMER:
+00271D         ?C0029?IPC:
+00271D 904BA5            MOV     DPTR,#bttimer
+002720 E0                MOVX    A,@DPTR
+002721 FE                MOV     R6,A
+002722 A3                INC     DPTR
+002723 E0                MOVX    A,@DPTR
+002724 FF                MOV     R7,A
+002725 904C5E            MOV     DPTR,#c51timer
+002728 E0                MOVX    A,@DPTR
+002729 6E                XRL     A,R6
+00272A 7003              JNZ     ?C0039?IPC
+00272C A3                INC     DPTR
+00272D E0                MOVX    A,@DPTR
+00272E 6F                XRL     A,R7
+00272F         ?C0039?IPC:
+00272F 6022              JZ      ?C0033?IPC
+002731 904E0A            MOV     DPTR,#ipcCb+06H
+002734 E0                MOVX    A,@DPTR
+002735 FB                MOV     R3,A
+002736 A3                INC     DPTR
+002737 E0                MOVX    A,@DPTR
+002738 FA                MOV     R2,A
+002739 A3                INC     DPTR
 00273A E0                MOVX    A,@DPTR
-00273B FB                MOV     R3,A
-00273C A3                INC     DPTR
-00273D E0                MOVX    A,@DPTR
-00273E FA                MOV     R2,A
-00273F A3                INC     DPTR
-002740 E0                MOVX    A,@DPTR
-002741 F9                MOV     R1,A
-002742 4A                ORL     A,R2
-002743 600B              JZ      ?C0032?IPC
-002745         ?C0035?IPC:
-002745 120564            LCALL   ?C?ICALL
-002748 904C8D            MOV     DPTR,#btstimer
-00274B E0                MOVX    A,@DPTR
-00274C A3                INC     DPTR
+00273B F9                MOV     R1,A
+00273C 4A                ORL     A,R2
+00273D 6037              JZ      ?C0032?IPC
+00273F         ?C0031?IPC:
+00273F 120564            LCALL   ?C?ICALL
+002742 904BA5            MOV     DPTR,#bttimer
+002745 E0                MOVX    A,@DPTR
+002746 FF                MOV     R7,A
+002747 A3                INC     DPTR
+002748 E0                MOVX    A,@DPTR
+002749 904C5E            MOV     DPTR,#c51timer
+00274C CF                XCH     A,R7
 00274D F0                MOVX    @DPTR,A
-00274E 80DD              SJMP    ?C0033?IPC
-002750         ?C0032?IPC:
-002750 22                RET     
+00274E A3                INC     DPTR
+00274F EF                MOV     A,R7
+002750 F0                MOVX    @DPTR,A
+002751 80CA              SJMP    ?C0029?IPC
+002753         ?C0033?IPC:
+002753 904C8D            MOV     DPTR,#btstimer
+002756 E0                MOVX    A,@DPTR
+002757 FF                MOV     R7,A
+002758 A3                INC     DPTR
+002759 E0                MOVX    A,@DPTR
+00275A 6F                XRL     A,R7
+00275B 6019              JZ      ?C0032?IPC
+00275D 904E0D            MOV     DPTR,#ipcCb+09H
+002760 E0                MOVX    A,@DPTR
+002761 FB                MOV     R3,A
+002762 A3                INC     DPTR
+002763 E0                MOVX    A,@DPTR
+002764 FA                MOV     R2,A
+002765 A3                INC     DPTR
+002766 E0                MOVX    A,@DPTR
+002767 F9                MOV     R1,A
+002768 4A                ORL     A,R2
+002769 600B              JZ      ?C0032?IPC
+00276B         ?C0035?IPC:
+00276B 120564            LCALL   ?C?ICALL
+00276E 904C8D            MOV     DPTR,#btstimer
+002771 E0                MOVX    A,@DPTR
+002772 A3                INC     DPTR
+002773 F0                MOVX    @DPTR,A
+002774 80DD              SJMP    ?C0033?IPC
+002776         ?C0032?IPC:
+002776 22                RET     
 ----- FUNCTION IPC_DealSingleStep (END) -------
 
 
 ----- FUNCTION IPC_GetBBDIsconnectReason (BEGIN) -----
-002751 900446            MOV     DPTR,#bbDisReason
-002754 E0                MOVX    A,@DPTR
-002755 FF                MOV     R7,A
-002756 22                RET     
+002777 900446            MOV     DPTR,#bbDisReason
+00277A E0                MOVX    A,@DPTR
+00277B FF                MOV     R7,A
+00277C 22                RET     
 ----- FUNCTION IPC_GetBBDIsconnectReason (END) -------
 
 
 ----- FUNCTION YC_Ice_break (BEGIN) -----
-002757 908280            MOV     DPTR,#08280H
-00275A 7401              MOV     A,#01H
-00275C F0                MOVX    @DPTR,A
-00275D 22                RET     
+00277D 908280            MOV     DPTR,#08280H
+002780 7401              MOV     A,#01H
+002782 F0                MOVX    @DPTR,A
+002783 22                RET     
 ----- FUNCTION YC_Ice_break (END) -------
 
 
 ----- FUNCTION _xmemclear_ff (BEGIN) -----
-00275E 904E8B            MOV     DPTR,#dest
-002761 EB                MOV     A,R3
-002762 F0                MOVX    @DPTR,A
-002763 A3                INC     DPTR
-002764 EA                MOV     A,R2
-002765 F0                MOVX    @DPTR,A
-002766 A3                INC     DPTR
-002767 E9                MOV     A,R1
-002768 F0                MOVX    @DPTR,A
+002784 904E8B            MOV     DPTR,#dest
+002787 EB                MOV     A,R3
+002788 F0                MOVX    @DPTR,A
+002789 A3                INC     DPTR
+00278A EA                MOV     A,R2
+00278B F0                MOVX    @DPTR,A
+00278C A3                INC     DPTR
+00278D E9                MOV     A,R1
+00278E F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R4/R5' ----
-002769         ?C0011?UTILITIES:
-002769 ED                MOV     A,R5
-00276A 1D                DEC     R5
-00276B AE04              MOV     R6,AR4
-00276D 7001              JNZ     ?C0027?UTILITIES
-00276F 1C                DEC     R4
-002770         ?C0027?UTILITIES:
-002770 4E                ORL     A,R6
-002771 6017              JZ      ?C0013?UTILITIES
-002773 904E8B            MOV     DPTR,#dest
-002776 E0                MOVX    A,@DPTR
-002777 FB                MOV     R3,A
-002778 A3                INC     DPTR
-002779 E4                CLR     A
-00277A 75F001            MOV     B,#01H
-00277D 120424            LCALL   ?C?ILDIX
-002780 A9F0              MOV     R1,B
-002782 FA                MOV     R2,A
-002783 74FF              MOV     A,#0FFH
-002785 1203FC            LCALL   ?C?CSTPTR
-002788 80DF              SJMP    ?C0011?UTILITIES
-00278A         ?C0013?UTILITIES:
-00278A 22                RET     
+00278F         ?C0011?UTILITIES:
+00278F ED                MOV     A,R5
+002790 1D                DEC     R5
+002791 AE04              MOV     R6,AR4
+002793 7001              JNZ     ?C0027?UTILITIES
+002795 1C                DEC     R4
+002796         ?C0027?UTILITIES:
+002796 4E                ORL     A,R6
+002797 6017              JZ      ?C0013?UTILITIES
+002799 904E8B            MOV     DPTR,#dest
+00279C E0                MOVX    A,@DPTR
+00279D FB                MOV     R3,A
+00279E A3                INC     DPTR
+00279F E4                CLR     A
+0027A0 75F001            MOV     B,#01H
+0027A3 120424            LCALL   ?C?ILDIX
+0027A6 A9F0              MOV     R1,B
+0027A8 FA                MOV     R2,A
+0027A9 74FF              MOV     A,#0FFH
+0027AB 1203FC            LCALL   ?C?CSTPTR
+0027AE 80DF              SJMP    ?C0011?UTILITIES
+0027B0         ?C0013?UTILITIES:
+0027B0 22                RET     
 ----- FUNCTION _xmemclear_ff (END) -------
 
 
 ----- FUNCTION _GPIO_ClearWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-00278B EF                MOV     A,R7
-00278C F4                CPL     A
-00278D 603A              JZ      ?C0023?GPIO
-00278F         ?C0022?GPIO:
-00278F EF                MOV     A,R7
-002790 5407              ANL     A,#07H
-002792 FE                MOV     R6,A
+0027B1 EF                MOV     A,R7
+0027B2 F4                CPL     A
+0027B3 603A              JZ      ?C0023?GPIO
+0027B5         ?C0022?GPIO:
+0027B5 EF                MOV     A,R7
+0027B6 5407              ANL     A,#07H
+0027B8 FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-002793 EF                MOV     A,R7
-002794 13                RRC     A
-002795 13                RRC     A
-002796 13                RRC     A
-002797 5403              ANL     A,#03H
-002799 FF                MOV     R7,A
+0027B9 EF                MOV     A,R7
+0027BA 13                RRC     A
+0027BB 13                RRC     A
+0027BC 13                RRC     A
+0027BD 5403              ANL     A,#03H
+0027BF FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-00279A 24A3              ADD     A,#LOW YC_GPIOWakeupL
-00279C F582              MOV     DPL,A
-00279E E4                CLR     A
-00279F 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-0027A1 F583              MOV     DPH,A
-0027A3 C083              PUSH    DPH
-0027A5 C082              PUSH    DPL
-0027A7 E0                MOVX    A,@DPTR
-0027A8 FD                MOV     R5,A
-0027A9 7401              MOV     A,#01H
-0027AB A806              MOV     R0,AR6
-0027AD 08                INC     R0
-0027AE 8002              SJMP    ?C0043?GPIO
-0027B0         ?C0042?GPIO:
-0027B0 C3                CLR     C
-0027B1 33                RLC     A
-0027B2         ?C0043?GPIO:
-0027B2 D8FC              DJNZ    R0,?C0042?GPIO
-0027B4 F4                CPL     A
-0027B5 FC                MOV     R4,A
-0027B6 5D                ANL     A,R5
-0027B7 D082              POP     DPL
-0027B9 D083              POP     DPH
-0027BB F0                MOVX    @DPTR,A
-0027BC 74A7              MOV     A,#LOW YC_GPIOWakeupH
-0027BE 2F                ADD     A,R7
-0027BF F582              MOV     DPL,A
-0027C1 E4                CLR     A
-0027C2 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-0027C4 F583              MOV     DPH,A
-0027C6 E0                MOVX    A,@DPTR
-0027C7 5C                ANL     A,R4
-0027C8 F0                MOVX    @DPTR,A
-0027C9         ?C0023?GPIO:
-0027C9 22                RET     
+0027C0 24A3              ADD     A,#LOW YC_GPIOWakeupL
+0027C2 F582              MOV     DPL,A
+0027C4 E4                CLR     A
+0027C5 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+0027C7 F583              MOV     DPH,A
+0027C9 C083              PUSH    DPH
+0027CB C082              PUSH    DPL
+0027CD E0                MOVX    A,@DPTR
+0027CE FD                MOV     R5,A
+0027CF 7401              MOV     A,#01H
+0027D1 A806              MOV     R0,AR6
+0027D3 08                INC     R0
+0027D4 8002              SJMP    ?C0043?GPIO
+0027D6         ?C0042?GPIO:
+0027D6 C3                CLR     C
+0027D7 33                RLC     A
+0027D8         ?C0043?GPIO:
+0027D8 D8FC              DJNZ    R0,?C0042?GPIO
+0027DA F4                CPL     A
+0027DB FC                MOV     R4,A
+0027DC 5D                ANL     A,R5
+0027DD D082              POP     DPL
+0027DF D083              POP     DPH
+0027E1 F0                MOVX    @DPTR,A
+0027E2 74A7              MOV     A,#LOW YC_GPIOWakeupH
+0027E4 2F                ADD     A,R7
+0027E5 F582              MOV     DPL,A
+0027E7 E4                CLR     A
+0027E8 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+0027EA F583              MOV     DPH,A
+0027EC E0                MOVX    A,@DPTR
+0027ED 5C                ANL     A,R4
+0027EE F0                MOVX    @DPTR,A
+0027EF         ?C0023?GPIO:
+0027EF 22                RET     
 ----- FUNCTION _GPIO_ClearWakeup (END) -------
 
 
Index: c51/output/FW.HTM
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/output/FW.HTM	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/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>01/24/2022  21:25:59</b><p>
+Creation time: <b>02/11/2022  18:27:54</b><p>
 
 <hr>
 
@@ -43,26 +43,26 @@
 </ul>
 
 <h2><a name="S68"></a>?PR?KSCOLINITIALIZE?KEYSCAN (C:000FE2H - C:001000H)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S173">?PR?_GPIO_SETOUTPUT?GPIO</a>)<p>
+<p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S171">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
-<li><a href="#S173">?PR?_GPIO_SETOUTPUT?GPIO</a></li>
+<li><a href="#S171">?PR?_GPIO_SETINPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S88"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:002461H - C:002469H)</h2>
+<h2><a name="S88"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:002487H - C:00248FH)</h2>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S93">?PR?_KB_CB_EVENT?SYS</a></li>
 <li><a href="#S90">?PR?SYSTEM_RESET_CONNECT?SYS</a></li>
 </ul>
 
-<h2><a name="S90"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:00246AH - C:00246BH)</h2>
+<h2><a name="S90"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:002490H - C:002491H)</h2>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S88">?PR?SYSTEM_HARDWARE_RESET?SYS</a></li>
 </ul>
 
-<h2><a name="S91"></a>?PR?_KB_CB_HID?SYS (C:00246CH - C:00247BH)</h2>
+<h2><a name="S91"></a>?PR?_KB_CB_HID?SYS (C:002492H - C:0024A1H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S196">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -108,7 +108,7 @@
 <li><a href="#S96">?PR?YC_CONNECT_TIMEOUT_500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S100"></a>?PR?KB_CB_TIMER100MS?SYS (C:00229EH - C:002364H)</h2>
+<h2><a name="S100"></a>?PR?KB_CB_TIMER100MS?SYS (C:0022C4H - C:00238AH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=12 Bytes (<a href="#S46">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -173,7 +173,7 @@
 <li><a href="#S196">?C?LIB_CODE</a></li>
 </ul>
 
-<h2><a name="S152"></a>?PR?_XMEMCLEAR_FF?UTILITIES (C:00275EH - C:00278AH)</h2>
+<h2><a name="S152"></a>?PR?_XMEMCLEAR_FF?UTILITIES (C:002784H - C:0027B0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S196">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -435,7 +435,7 @@
 <li><a href="#S102">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S73"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:002127H - C:00225EH)</h2>
+<h2><a name="S73"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:002127H - C:002284H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S77">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -500,7 +500,7 @@
 <li><a href="#S100">?PR?KB_CB_TIMER100MS?SYS</a></li>
 </ul>
 
-<h2><a name="S82"></a>?PR?LED_DEVICE_POWEROFF?LED (C:00225FH - C:00229DH)</h2>
+<h2><a name="S82"></a>?PR?LED_DEVICE_POWEROFF?LED (C:002285H - C:0022C3H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S163">?PR?_GPIO_SETOUT?GPIO</a>) Top=2 Bytes (<a href="#S100">?PR?KB_CB_TIMER100MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -539,7 +539,7 @@
 <li><a href="#S87">?PR?SYSTEM_SOFTWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S85"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:002365H - C:002377H)</h2>
+<h2><a name="S85"></a>?PR?SYSTEM_IIC_CLK_SETUP?SYS (C:00238BH - C:00239DH)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S86">?PR?SYSTEM_HARDWARE_INIT?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
@@ -547,7 +547,7 @@
 <li><a href="#S86">?PR?SYSTEM_HARDWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S86"></a>?PR?SYSTEM_HARDWARE_INIT?SYS (C:002378H - C:00237FH)</h2>
+<h2><a name="S86"></a>?PR?SYSTEM_HARDWARE_INIT?SYS (C:00239EH - C:0023A5H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=12 Bytes (<a href="#S70">?PR?KS_INITIALIZE?KEYSCAN</a>) Top=2 Bytes (<a href="#S93">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -561,7 +561,7 @@
 <li><a href="#S93">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S87"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:002380H - C:00239CH)</h2>
+<h2><a name="S87"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:0023A6H - C:0023C2H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S105">?PR?YC_ADC_INIT?ADC</a>) Top=2 Bytes (<a href="#S93">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -641,7 +641,7 @@
 <li><a href="#S102">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S105"></a>?PR?YC_ADC_INIT?ADC (C:00239DH - C:002460H)</h2>
+<h2><a name="S105"></a>?PR?YC_ADC_INIT?ADC (C:0023C3H - C:002486H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S196">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S87">?PR?SYSTEM_SOFTWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -653,7 +653,7 @@
 <li><a href="#S87">?PR?SYSTEM_SOFTWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S106"></a>?PR?YC_ADC_CHECK?ADC (C:00247CH - C:0025E0H)</h2>
+<h2><a name="S106"></a>?PR?YC_ADC_CHECK?ADC (C:0024A2H - C:002606H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S192">?PR?_IIC_WRITEBLOCK?IIC</a>) Top=4 Bytes (<a href="#S108">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -678,14 +678,14 @@
 <li><a href="#S99">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S110"></a>?PR?_BUFSIZE?IPC (C:0025E1H - C:00263AH)</h2>
+<h2><a name="S110"></a>?PR?_BUFSIZE?IPC (C:002607H - C:002660H)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S114">?PR?_IPCTX?IPC</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S114">?PR?_IPCTX?IPC</a></li>
 </ul>
 
-<h2><a name="S112"></a>?PR?_IPCRX?IPC (C:00263BH - C:00268AH)</h2>
+<h2><a name="S112"></a>?PR?_IPCRX?IPC (C:002661H - C:0026B0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S196">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S126">?PR?IPC_DEALSINGLESTEP?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -745,7 +745,7 @@
 <li><a href="#S53">?PR?KB_MOTION?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S126"></a>?PR?IPC_DEALSINGLESTEP?IPC (C:00268BH - C:002750H)</h2>
+<h2><a name="S126"></a>?PR?IPC_DEALSINGLESTEP?IPC (C:0026B1H - C:002776H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S112">?PR?_IPCRX?IPC</a>) Top=2 Bytes (<a href="#S102">?PR?YC_SYSTEM_MAIN?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -926,6 +926,7 @@
 
 <p><br><b>Called from:</b></p>
 <ul>
+<li><a href="#S68">?PR?KSCOLINITIALIZE?KEYSCAN</a></li>
 <li><a href="#S66">?PR?KSRAWINITIALIZE?KEYSCAN</a></li>
 </ul>
 
@@ -940,7 +941,6 @@
 
 <p><br><b>Called from:</b></p>
 <ul>
-<li><a href="#S68">?PR?KSCOLINITIALIZE?KEYSCAN</a></li>
 <li><a href="#S80">?PR?LED_ALL_SHUTDOWN?LED</a></li>
 <li><a href="#S82">?PR?LED_DEVICE_POWEROFF?LED</a></li>
 <li><a href="#S81">?PR?LED_DEVICE_POWERON?LED</a></li>
Index: c51/output/FW.MAP
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/output/FW.MAP	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/c51/output/FW.MAP	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               01/24/2022  21:25:59  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               02/11/2022  18:27:54  PAGE 1
 
 
 LX51 LINKER/LOCATER V4.41, INVOKED BY:
@@ -82,7 +82,7 @@
 BASE        START       END         USED      MEMORY CLASS
 ==========================================================
 X:000000H   X:004DD0H   X:004F40H   000316H   XDATA
-C:000000H   C:000000H   C:00FFFFH   002714H   CODE
+C:000000H   C:000000H   C:00FFFFH   00273AH   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
@@ -190,24 +190,24 @@
 0020A4H   0020B4H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPD?GPIO
 0020B5H   0020C5H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETOE?GPIO
 0020C6H   002126H   000061H   BYTE   UNIT     CODE           ?PR?_GPIOSETBIT?GPIO
-002127H   00225EH   000138H   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
-00225FH   00229DH   00003FH   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWEROFF?LED
-00229EH   002364H   0000C7H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
-002365H   002377H   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
-002378H   00237FH   000008H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_INIT?SYS
-002380H   00239CH   00001DH   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
-00239DH   002460H   0000C4H   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
-002461H   002469H   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
-00246AH   00246BH   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
-00246CH   00247BH   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
-00247CH   0025E0H   000165H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
-0025E1H   00263AH   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
-00263BH   00268AH   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
-00268BH   002750H   0000C6H   BYTE   UNIT     CODE           ?PR?IPC_DEALSINGLESTEP?IPC
-002751H   002756H   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
-002757H   00275DH   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
-00275EH   00278AH   00002DH   BYTE   UNIT     CODE           ?PR?_XMEMCLEAR_FF?UTILITIES
-00278BH   0027C9H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
+002127H   002284H   00015EH   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
+002285H   0022C3H   00003FH   BYTE   UNIT     CODE           ?PR?LED_DEVICE_POWEROFF?LED
+0022C4H   00238AH   0000C7H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
+00238BH   00239DH   000013H   BYTE   UNIT     CODE           ?PR?SYSTEM_IIC_CLK_SETUP?SYS
+00239EH   0023A5H   000008H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_INIT?SYS
+0023A6H   0023C2H   00001DH   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
+0023C3H   002486H   0000C4H   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
+002487H   00248FH   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
+002490H   002491H   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
+002492H   0024A1H   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
+0024A2H   002606H   000165H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
+002607H   002660H   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
+002661H   0026B0H   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
+0026B1H   002776H   0000C6H   BYTE   UNIT     CODE           ?PR?IPC_DEALSINGLESTEP?IPC
+002777H   00277CH   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
+00277DH   002783H   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
+002784H   0027B0H   00002DH   BYTE   UNIT     CODE           ?PR?_XMEMCLEAR_FF?UTILITIES
+0027B1H   0027EFH   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
 
 * * * * * * * * * * *  X D A T A   M E M O R Y  * * * * * * * * * * * * *
 000040H   000045H   000006H   BYTE   OFFS..   XDATA          ?XD?GLOBAL_VARIABLE?29
@@ -384,7 +384,7 @@
       01001F0EH   CODE     ---       _compare_str
       01000FA1H   CODE     ---       _Delay1ms
       01001783H   CODE     ---       _dmemcpy
-      0100278BH   CODE     ---       _GPIO_ClearWakeup
+      010027B1H   CODE     ---       _GPIO_ClearWakeup
       01000767H   CODE     ---       _GPIO_FlipOutBit
       0100148AH   CODE     ---       _GPIO_GetInputStatus
       01002075H   CODE     ---       _GPIO_SetInput
@@ -411,7 +411,7 @@
       01001B87H   CODE     ---       _kb_set_systemkey
       01001BC7H   CODE     ---       _key_fn_function
       01000EE4H   CODE     ---       _xmemclear
-      0100275EH   CODE     ---       _xmemclear_ff
+      01002784H   CODE     ---       _xmemclear_ff
       01000A40H   CODE     ---       _xmemcpy
       0100082CH   CODE     ---       _YC_key_action_handle
       02004DE5H   XDATA    BYTE      action_timeout
@@ -434,8 +434,8 @@
       02004800H   XDATA    ---       hidBuff
       02004DDAH   XDATA    BYTE      iOS_rec_pinCode
       0100172BH   CODE     ---       IPC_AbandonLpm
-      0100268BH   CODE     ---       IPC_DealSingleStep
-      01002751H   CODE     ---       IPC_GetBBDIsconnectReason
+      010026B1H   CODE     ---       IPC_DealSingleStep
+      01002777H   CODE     ---       IPC_GetBBDIsconnectReason
       01001737H   CODE     ---       IPC_IsTxBuffEmpty
       01000FB9H   CODE     ---       IPC_WaitLpm
       02000550H   XDATA    ---       ipcPin
@@ -460,7 +460,7 @@
       02004D39H   XDATA    DWORD     le_pin_code
       02004DD2H   XDATA    BYTE      le_pin_code_len
       010007D9H   CODE     ---       LED_all_shutdown
-      0100225FH   CODE     ---       LED_device_poweroff
+      01002285H   CODE     ---       LED_device_poweroff
       010007A0H   CODE     ---       LED_device_poweron
       010017C7H   CODE     ---       LED_handle
       010006CFH   CODE     ---       LED_timer500ms
@@ -507,11 +507,11 @@
       02004DD4H   XDATA    BYTE      switch_role_timer
       02004DE2H   XDATA    BYTE      system_key_press
       010010A6H   CODE     ---       System_long_sleep
-      0100246AH   CODE     ---       System_Reset_Connect
-      01002380H   CODE     ---       System_Software_init
-      0100247CH   CODE     ---       YC_adc_check
+      01002490H   CODE     ---       System_Reset_Connect
+      010023A6H   CODE     ---       System_Software_init
+      010024A2H   CODE     ---       YC_adc_check
       01001504H   CODE     ---       YC_adc_check_timer500ms
-      0100239DH   CODE     ---       YC_adc_init
+      010023C3H   CODE     ---       YC_adc_init
       010006C2H   CODE     ---       YC_check_is_connected
       010007F7H   CODE     ---       YC_check_need_reconnected
       01000FC6H   CODE     ---       YC_clear_reconnect_flag
@@ -519,7 +519,7 @@
       01001001H   CODE     ---       YC_disconnect_all_link
       020000A7H   XDATA    ---       YC_GPIOWakeupH
       020000A3H   XDATA    ---       YC_GPIOWakeupL
-      01002757H   CODE     ---       YC_Ice_break
+      0100277DH   CODE     ---       YC_Ice_break
       010014E6H   CODE     ---       YC_pairing_timerout_500ms
       01000FCCH   CODE     ---       YC_start_reconnect
       010012C5H   CODE     ---       YC_System_Main
@@ -1217,155 +1217,155 @@
       01000FD6H   PUBLIC    CODE     ---       KS_Initialize
 
       01001ED0H   BLOCK     CODE     ---       LVL=0
-      01001ED0H   LINE      ---      ---       #23
-      01001ED0H   LINE      ---      ---       #24
-      01001ED0H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001ED0H   LINE      ---      ---       #25
       01001ED0H   LINE      ---      ---       #26
-      01001ED5H   LINE      ---      ---       #27
-      01001ED8H   LINE      ---      ---       #28
-      01001EDBH   LINE      ---      ---       #29
-      01001EDDH   LINE      ---      ---       #30
+      01001ED0H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001ED0H   LINE      ---      ---       #28
+      01001ED5H   LINE      ---      ---       #29
+      01001ED8H   LINE      ---      ---       #30
+      01001EDBH   LINE      ---      ---       #31
+      01001EDDH   LINE      ---      ---       #32
       00000006H   SYMBOL    DATA     VOID      c
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01001F58H   BLOCK     CODE     ---       LVL=0
-      01001F58H   LINE      ---      ---       #34
-      01001F58H   LINE      ---      ---       #35
-      01001F58H   BLOCK     CODE     NEAR LAB  LVL=1
       01001F58H   LINE      ---      ---       #36
-      01001F5AH   LINE      ---      ---       #38
-      01001F66H   LINE      ---      ---       #39
-      01001F66H   LINE      ---      ---       #40
-      01001F80H   LINE      ---      ---       #42
-      01001F80H   LINE      ---      ---       #88
-      01001F82H   LINE      ---      ---       #89
-      01001F82H   LINE      ---      ---       #90
-      01001F91H   LINE      ---      ---       #91
-      01001F91H   LINE      ---      ---       #92
-      01001F94H   LINE      ---      ---       #93
-      01001F94H   LINE      ---      ---       #94
-      01001F9BH   LINE      ---      ---       #95
-      01001FA7H   LINE      ---      ---       #96
-      01001FA8H   LINE      ---      ---       #97
-      01001FA8H   LINE      ---      ---       #98
-      01001FADH   LINE      ---      ---       #99
+      01001F58H   LINE      ---      ---       #37
+      01001F58H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001F58H   LINE      ---      ---       #38
+      01001F5AH   LINE      ---      ---       #40
+      01001F66H   LINE      ---      ---       #41
+      01001F66H   LINE      ---      ---       #42
+      01001F80H   LINE      ---      ---       #44
+      01001F80H   LINE      ---      ---       #90
+      01001F82H   LINE      ---      ---       #91
+      01001F82H   LINE      ---      ---       #92
+      01001F91H   LINE      ---      ---       #93
+      01001F91H   LINE      ---      ---       #94
+      01001F94H   LINE      ---      ---       #95
+      01001F94H   LINE      ---      ---       #96
+      01001F9BH   LINE      ---      ---       #97
+      01001FA7H   LINE      ---      ---       #98
+      01001FA8H   LINE      ---      ---       #99
+      01001FA8H   LINE      ---      ---       #100
+      01001FADH   LINE      ---      ---       #101
       00000006H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01001FAEH   BLOCK     CODE     ---       LVL=0
-      01001FAEH   LINE      ---      ---       #101
-      01001FAEH   LINE      ---      ---       #102
-      01001FAEH   BLOCK     CODE     NEAR LAB  LVL=1
       01001FAEH   LINE      ---      ---       #103
-      01001FB0H   LINE      ---      ---       #104
-      01001FB1H   LINE      ---      ---       #106
-      01001FBFH   LINE      ---      ---       #107
-      01001FBFH   LINE      ---      ---       #108
-      01001FC6H   LINE      ---      ---       #109
-      01001FC6H   LINE      ---      ---       #110
-      01001FC9H   LINE      ---      ---       #111
-      01001FC9H   LINE      ---      ---       #112
-      01001FCBH   LINE      ---      ---       #114
-      01001FD1H   LINE      ---      ---       #116
-      01001FDDH   LINE      ---      ---       #117
-      01001FDDH   LINE      ---      ---       #118
-      01001FF8H   LINE      ---      ---       #120
-      01001FF8H   LINE      ---      ---       #165
-      01001FFAH   LINE      ---      ---       #166
-      01001FFAH   LINE      ---      ---       #167
-      01001FFDH   LINE      ---      ---       #168
-      01001FFDH   LINE      ---      ---       #169
-      0100200BH   LINE      ---      ---       #170
-      0100200FH   LINE      ---      ---       #171
-      0100201AH   LINE      ---      ---       #172
-      0100201AH   LINE      ---      ---       #173
-      0100201CH   LINE      ---      ---       #174
-      0100201CH   LINE      ---      ---       #175
-      0100201EH   LINE      ---      ---       #177
-      0100201EH   LINE      ---      ---       #178
-      01002036H   LINE      ---      ---       #179
-      01002043H   LINE      ---      ---       #180
-      01002043H   LINE      ---      ---       #181
-      01002047H   LINE      ---      ---       #182
-      01002052H   LINE      ---      ---       #183
-      01002052H   LINE      ---      ---       #184
+      01001FAEH   LINE      ---      ---       #104
+      01001FAEH   BLOCK     CODE     NEAR LAB  LVL=1
+      01001FAEH   LINE      ---      ---       #105
+      01001FB0H   LINE      ---      ---       #106
+      01001FB1H   LINE      ---      ---       #108
+      01001FBFH   LINE      ---      ---       #109
+      01001FBFH   LINE      ---      ---       #110
+      01001FC6H   LINE      ---      ---       #111
+      01001FC6H   LINE      ---      ---       #112
+      01001FC9H   LINE      ---      ---       #113
+      01001FC9H   LINE      ---      ---       #114
+      01001FCBH   LINE      ---      ---       #116
+      01001FD1H   LINE      ---      ---       #118
+      01001FDDH   LINE      ---      ---       #119
+      01001FDDH   LINE      ---      ---       #120
+      01001FF8H   LINE      ---      ---       #122
+      01001FF8H   LINE      ---      ---       #167
+      01001FFAH   LINE      ---      ---       #168
+      01001FFAH   LINE      ---      ---       #169
+      01001FFDH   LINE      ---      ---       #170
+      01001FFDH   LINE      ---      ---       #171
+      0100200BH   LINE      ---      ---       #172
+      0100200FH   LINE      ---      ---       #173
+      0100201AH   LINE      ---      ---       #174
+      0100201AH   LINE      ---      ---       #175
+      0100201CH   LINE      ---      ---       #176
+      0100201CH   LINE      ---      ---       #177
+      0100201EH   LINE      ---      ---       #179
+      0100201EH   LINE      ---      ---       #180
+      01002036H   LINE      ---      ---       #181
+      01002043H   LINE      ---      ---       #182
+      01002043H   LINE      ---      ---       #183
+      01002047H   LINE      ---      ---       #184
       01002052H   LINE      ---      ---       #185
-      01002057H   LINE      ---      ---       #186
+      01002052H   LINE      ---      ---       #186
+      01002052H   LINE      ---      ---       #187
+      01002057H   LINE      ---      ---       #188
       00000006H   SYMBOL    DATA     VOID      i
       00000005H   SYMBOL    DATA     VOID      found
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01002058H   BLOCK     CODE     ---       LVL=0
-      01002058H   LINE      ---      ---       #188
-      01002058H   LINE      ---      ---       #189
-      01002058H   BLOCK     CODE     NEAR LAB  LVL=1
       01002058H   LINE      ---      ---       #190
-      0100205DH   LINE      ---      ---       #192
-      01002068H   LINE      ---      ---       #193
-      0100206CH   LINE      ---      ---       #194
-      01002074H   LINE      ---      ---       #195
+      01002058H   LINE      ---      ---       #191
+      01002058H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002058H   LINE      ---      ---       #192
+      0100205DH   LINE      ---      ---       #194
+      01002068H   LINE      ---      ---       #195
+      0100206CH   LINE      ---      ---       #196
+      01002074H   LINE      ---      ---       #197
       02004E99H   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01000FE2H   BLOCK     CODE     ---       LVL=0
-      01000FE2H   LINE      ---      ---       #197
-      01000FE2H   LINE      ---      ---       #198
-      01000FE2H   BLOCK     CODE     NEAR LAB  LVL=1
       01000FE2H   LINE      ---      ---       #199
-      01000FE7H   LINE      ---      ---       #200
-      01000FF3H   LINE      ---      ---       #201
-      01000FF8H   LINE      ---      ---       #202
-      01001000H   LINE      ---      ---       #203
+      01000FE2H   LINE      ---      ---       #200
+      01000FE2H   BLOCK     CODE     NEAR LAB  LVL=1
+      01000FE2H   LINE      ---      ---       #201
+      01000FE7H   LINE      ---      ---       #202
+      01000FF3H   LINE      ---      ---       #203
+      01000FF8H   LINE      ---      ---       #204
+      01001000H   LINE      ---      ---       #205
       02004E9AH   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01000FD6H   BLOCK     CODE     ---       LVL=0
-      01000FD6H   LINE      ---      ---       #205
-      01000FD6H   LINE      ---      ---       #206
       01000FD6H   LINE      ---      ---       #207
-      01000FDBH   LINE      ---      ---       #208
-      01000FDDH   LINE      ---      ---       #209
-      01000FDFH   LINE      ---      ---       #210
+      01000FD6H   LINE      ---      ---       #208
+      01000FD6H   LINE      ---      ---       #209
+      01000FDBH   LINE      ---      ---       #210
+      01000FDDH   LINE      ---      ---       #211
+      01000FDFH   LINE      ---      ---       #212
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001313H   BLOCK     CODE     ---       LVL=0
-      01001313H   LINE      ---      ---       #214
-      01001313H   LINE      ---      ---       #215
-      01001313H   BLOCK     CODE     NEAR LAB  LVL=1
       01001313H   LINE      ---      ---       #216
-      01001315H   LINE      ---      ---       #217
-      01001319H   LINE      ---      ---       #218
-      0100131AH   LINE      ---      ---       #219
-      0100131BH   LINE      ---      ---       #220
-      01001322H   LINE      ---      ---       #221
-      0100132BH   LINE      ---      ---       #222
-      0100133BH   LINE      ---      ---       #223
-      0100134EH   LINE      ---      ---       #224
-      0100135BH   LINE      ---      ---       #225
-      01001368H   LINE      ---      ---       #226
-      0100136BH   LINE      ---      ---       #228
-      0100136DH   LINE      ---      ---       #230
-      01001375H   LINE      ---      ---       #232
-      0100137BH   LINE      ---      ---       #233
-      0100137BH   LINE      ---      ---       #234
-      0100137FH   LINE      ---      ---       #235
-      01001383H   LINE      ---      ---       #236
-      01001387H   LINE      ---      ---       #237
-      0100138BH   LINE      ---      ---       #238
-      0100138FH   LINE      ---      ---       #239
-      01001393H   LINE      ---      ---       #240
-      01001397H   LINE      ---      ---       #241
-      0100139BH   LINE      ---      ---       #242
+      01001313H   LINE      ---      ---       #217
+      01001313H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001313H   LINE      ---      ---       #218
+      01001315H   LINE      ---      ---       #219
+      01001319H   LINE      ---      ---       #220
+      0100131AH   LINE      ---      ---       #221
+      0100131BH   LINE      ---      ---       #222
+      01001322H   LINE      ---      ---       #223
+      0100132BH   LINE      ---      ---       #224
+      0100133BH   LINE      ---      ---       #225
+      0100134EH   LINE      ---      ---       #226
+      0100135BH   LINE      ---      ---       #227
+      01001368H   LINE      ---      ---       #228
+      0100136BH   LINE      ---      ---       #230
+      0100136DH   LINE      ---      ---       #232
+      01001375H   LINE      ---      ---       #234
+      0100137BH   LINE      ---      ---       #235
+      0100137BH   LINE      ---      ---       #236
+      0100137FH   LINE      ---      ---       #237
+      01001383H   LINE      ---      ---       #238
+      01001387H   LINE      ---      ---       #239
+      0100138BH   LINE      ---      ---       #240
+      0100138FH   LINE      ---      ---       #241
+      01001393H   LINE      ---      ---       #242
+      01001397H   LINE      ---      ---       #243
       0100139BH   LINE      ---      ---       #244
-      0100139BH   LINE      ---      ---       #245
-      010013A4H   LINE      ---      ---       #246
-      010013AAH   LINE      ---      ---       #247
+      0100139BH   LINE      ---      ---       #246
+      0100139BH   LINE      ---      ---       #247
+      010013A4H   LINE      ---      ---       #248
       010013AAH   LINE      ---      ---       #249
+      010013AAH   LINE      ---      ---       #251
       00000007H   SYMBOL    DATA     VOID      i
       02004E9BH   SYMBOL    XDATA    VOID      temp
       00000006H   SYMBOL    DATA     VOID      tgroup
@@ -1374,31 +1374,31 @@
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01002127H   BLOCK     CODE     ---       LVL=0
-      01002127H   LINE      ---      ---       #252
-      01002127H   LINE      ---      ---       #253
-      01002127H   BLOCK     CODE     NEAR LAB  LVL=1
       01002127H   LINE      ---      ---       #254
-      01002129H   LINE      ---      ---       #255
-      0100212DH   LINE      ---      ---       #256
-      0100212EH   LINE      ---      ---       #257
-      0100212FH   LINE      ---      ---       #258
-      01002131H   LINE      ---      ---       #259
-      01002133H   LINE      ---      ---       #260
-      0100213AH   LINE      ---      ---       #261
-      01002143H   LINE      ---      ---       #262
-      01002153H   LINE      ---      ---       #263
-      010021A0H   LINE      ---      ---       #264
-      010021A3H   LINE      ---      ---       #266
-      010021ACH   LINE      ---      ---       #267
-      010021B5H   LINE      ---      ---       #268
-      010021C5H   LINE      ---      ---       #269
-      01002212H   LINE      ---      ---       #270
-      01002215H   LINE      ---      ---       #272
-      0100221EH   LINE      ---      ---       #273
-      01002238H   LINE      ---      ---       #274
-      0100225BH   LINE      ---      ---       #275
-      0100225BH   LINE      ---      ---       #276
-      0100225EH   LINE      ---      ---       #277
+      01002127H   LINE      ---      ---       #255
+      01002127H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002127H   LINE      ---      ---       #256
+      01002129H   LINE      ---      ---       #257
+      0100212DH   LINE      ---      ---       #258
+      0100212EH   LINE      ---      ---       #259
+      0100212FH   LINE      ---      ---       #260
+      01002131H   LINE      ---      ---       #261
+      01002133H   LINE      ---      ---       #262
+      0100213AH   LINE      ---      ---       #263
+      01002143H   LINE      ---      ---       #264
+      01002153H   LINE      ---      ---       #265
+      010021B3H   LINE      ---      ---       #266
+      010021B6H   LINE      ---      ---       #268
+      010021BFH   LINE      ---      ---       #269
+      010021C8H   LINE      ---      ---       #270
+      010021D8H   LINE      ---      ---       #271
+      01002238H   LINE      ---      ---       #272
+      0100223BH   LINE      ---      ---       #274
+      01002244H   LINE      ---      ---       #275
+      0100225EH   LINE      ---      ---       #276
+      01002281H   LINE      ---      ---       #277
+      01002281H   LINE      ---      ---       #278
+      01002284H   LINE      ---      ---       #279
       00000007H   SYMBOL    DATA     VOID      i
       02004E7FH   SYMBOL    XDATA    VOID      j
       00000006H   SYMBOL    DATA     VOID      tgroup
@@ -1409,118 +1409,118 @@
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01001EDEH   BLOCK     CODE     ---       LVL=0
-      01001EDEH   LINE      ---      ---       #279
-      01001EE9H   LINE      ---      ---       #280
-      01001EE9H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001EDEH   LINE      ---      ---       #281
       01001EE9H   LINE      ---      ---       #282
-      01001EF0H   LINE      ---      ---       #283
-      01001EF0H   LINE      ---      ---       #284
-      01001F05H   LINE      ---      ---       #285
-      01001F08H   LINE      ---      ---       #286
-      01001F0BH   LINE      ---      ---       #287
-      01001F0DH   LINE      ---      ---       #288
+      01001EE9H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001EE9H   LINE      ---      ---       #284
+      01001EF0H   LINE      ---      ---       #285
+      01001EF0H   LINE      ---      ---       #286
+      01001F05H   LINE      ---      ---       #287
+      01001F08H   LINE      ---      ---       #288
+      01001F0BH   LINE      ---      ---       #289
+      01001F0DH   LINE      ---      ---       #290
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       01001C84H   BLOCK     CODE     ---       LVL=0
-      01001C84H   LINE      ---      ---       #291
-      01001C84H   LINE      ---      ---       #292
-      01001C84H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001C84H   LINE      ---      ---       #293
       01001C84H   LINE      ---      ---       #294
-      01001C89H   LINE      ---      ---       #295
-      01001C8BH   LINE      ---      ---       #296
-      01001C8DH   LINE      ---      ---       #297
-      01001C8FH   LINE      ---      ---       #298
-      01001C91H   LINE      ---      ---       #299
-      01001C93H   LINE      ---      ---       #300
-      01001C95H   LINE      ---      ---       #301
-      01001C97H   LINE      ---      ---       #302
-      01001C99H   LINE      ---      ---       #303
-      01001C9BH   LINE      ---      ---       #304
-      01001C9DH   LINE      ---      ---       #306
-      01001CA0H   LINE      ---      ---       #308
-      01001CCEH   LINE      ---      ---       #310
-      01001CCEH   LINE      ---      ---       #311
-      01001CD5H   LINE      ---      ---       #312
-      01001CD7H   LINE      ---      ---       #314
-      01001CD7H   LINE      ---      ---       #315
-      01001CDEH   LINE      ---      ---       #316
-      01001CE3H   LINE      ---      ---       #317
+      01001C84H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001C84H   LINE      ---      ---       #296
+      01001C89H   LINE      ---      ---       #297
+      01001C8BH   LINE      ---      ---       #298
+      01001C8DH   LINE      ---      ---       #299
+      01001C8FH   LINE      ---      ---       #300
+      01001C91H   LINE      ---      ---       #301
+      01001C93H   LINE      ---      ---       #302
+      01001C95H   LINE      ---      ---       #303
+      01001C97H   LINE      ---      ---       #304
+      01001C99H   LINE      ---      ---       #305
+      01001C9BH   LINE      ---      ---       #306
+      01001C9DH   LINE      ---      ---       #308
+      01001CA0H   LINE      ---      ---       #310
+      01001CCEH   LINE      ---      ---       #312
+      01001CCEH   LINE      ---      ---       #313
+      01001CD5H   LINE      ---      ---       #314
+      01001CD7H   LINE      ---      ---       #316
+      01001CD7H   LINE      ---      ---       #317
+      01001CDEH   LINE      ---      ---       #318
       01001CE3H   LINE      ---      ---       #319
-      01001CF5H   LINE      ---      ---       #320
-      01001CF5H   LINE      ---      ---       #321
-      01001D04H   LINE      ---      ---       #322
-      01001D0DH   LINE      ---      ---       #323
-      01001D14H   LINE      ---      ---       #324
-      01001D14H   LINE      ---      ---       #325
-      01001D23H   LINE      ---      ---       #326
-      01001D23H   LINE      ---      ---       #327
-      01001D3EH   LINE      ---      ---       #328
-      01001D3EH   LINE      ---      ---       #329
-      01001D4EH   LINE      ---      ---       #330
-      01001D4EH   LINE      ---      ---       #331
-      01001D57H   LINE      ---      ---       #332
-      01001D57H   LINE      ---      ---       #333
-      01001D86H   LINE      ---      ---       #334
-      01001D86H   LINE      ---      ---       #335
-      01001D8CH   LINE      ---      ---       #336
-      01001D8EH   LINE      ---      ---       #337
-      01001D8EH   LINE      ---      ---       #338
+      01001CE3H   LINE      ---      ---       #321
+      01001CF5H   LINE      ---      ---       #322
+      01001CF5H   LINE      ---      ---       #323
+      01001D04H   LINE      ---      ---       #324
+      01001D0DH   LINE      ---      ---       #325
+      01001D14H   LINE      ---      ---       #326
+      01001D14H   LINE      ---      ---       #327
+      01001D23H   LINE      ---      ---       #328
+      01001D23H   LINE      ---      ---       #329
+      01001D3EH   LINE      ---      ---       #330
+      01001D3EH   LINE      ---      ---       #331
+      01001D4EH   LINE      ---      ---       #332
+      01001D4EH   LINE      ---      ---       #333
+      01001D57H   LINE      ---      ---       #334
+      01001D57H   LINE      ---      ---       #335
+      01001D86H   LINE      ---      ---       #336
+      01001D86H   LINE      ---      ---       #337
+      01001D8CH   LINE      ---      ---       #338
       01001D8EH   LINE      ---      ---       #339
-      01001D96H   LINE      ---      ---       #340
-      01001D96H   LINE      ---      ---       #341
-      01001D9EH   LINE      ---      ---       #342
+      01001D8EH   LINE      ---      ---       #340
+      01001D8EH   LINE      ---      ---       #341
+      01001D96H   LINE      ---      ---       #342
+      01001D96H   LINE      ---      ---       #343
       01001D9EH   LINE      ---      ---       #344
-      01001DA5H   LINE      ---      ---       #345
-      01001DA5H   LINE      ---      ---       #346
-      01001DADH   LINE      ---      ---       #347
-      01001DADH   LINE      ---      ---       #348
-      01001DB5H   LINE      ---      ---       #349
-      01001DBDH   LINE      ---      ---       #351
-      01001DCFH   LINE      ---      ---       #352
-      01001DCFH   LINE      ---      ---       #353
-      01001DEBH   LINE      ---      ---       #354
-      01001DFEH   LINE      ---      ---       #355
-      01001E04H   LINE      ---      ---       #356
-      01001E04H   LINE      ---      ---       #357
-      01001E06H   LINE      ---      ---       #358
-      01001E08H   LINE      ---      ---       #360
+      01001D9EH   LINE      ---      ---       #346
+      01001DA5H   LINE      ---      ---       #347
+      01001DA5H   LINE      ---      ---       #348
+      01001DADH   LINE      ---      ---       #349
+      01001DADH   LINE      ---      ---       #350
+      01001DB5H   LINE      ---      ---       #351
+      01001DBDH   LINE      ---      ---       #353
+      01001DCFH   LINE      ---      ---       #354
+      01001DCFH   LINE      ---      ---       #355
+      01001DEBH   LINE      ---      ---       #356
+      01001DFEH   LINE      ---      ---       #357
+      01001E04H   LINE      ---      ---       #358
+      01001E04H   LINE      ---      ---       #359
+      01001E06H   LINE      ---      ---       #360
       01001E08H   LINE      ---      ---       #362
-      01001E0EH   LINE      ---      ---       #363
-      01001E15H   LINE      ---      ---       #364
-      01001E2DH   LINE      ---      ---       #365
-      01001E3CH   LINE      ---      ---       #366
-      01001E3CH   LINE      ---      ---       #367
-      01001E43H   LINE      ---      ---       #368
-      01001E43H   LINE      ---      ---       #369
-      01001E54H   LINE      ---      ---       #370
-      01001E67H   LINE      ---      ---       #371
-      01001E6EH   LINE      ---      ---       #372
-      01001E6EH   LINE      ---      ---       #373
-      01001E75H   LINE      ---      ---       #374
-      01001E77H   LINE      ---      ---       #376
-      01001E77H   LINE      ---      ---       #377
-      01001E7EH   LINE      ---      ---       #378
-      01001E7EH   LINE      ---      ---       #379
+      01001E08H   LINE      ---      ---       #364
+      01001E0EH   LINE      ---      ---       #365
+      01001E15H   LINE      ---      ---       #366
+      01001E2DH   LINE      ---      ---       #367
+      01001E3CH   LINE      ---      ---       #368
+      01001E3CH   LINE      ---      ---       #369
+      01001E43H   LINE      ---      ---       #370
+      01001E43H   LINE      ---      ---       #371
+      01001E54H   LINE      ---      ---       #372
+      01001E67H   LINE      ---      ---       #373
+      01001E6EH   LINE      ---      ---       #374
+      01001E6EH   LINE      ---      ---       #375
+      01001E75H   LINE      ---      ---       #376
+      01001E77H   LINE      ---      ---       #378
+      01001E77H   LINE      ---      ---       #379
       01001E7EH   LINE      ---      ---       #380
-      01001E86H   LINE      ---      ---       #381
-      01001E8EH   LINE      ---      ---       #382
-      01001E96H   LINE      ---      ---       #383
-      01001E9CH   LINE      ---      ---       #384
-      01001E9CH   LINE      ---      ---       #385
-      01001EA4H   LINE      ---      ---       #387
-      01001EB2H   LINE      ---      ---       #388
-      01001EB2H   LINE      ---      ---       #389
-      01001EB5H   LINE      ---      ---       #390
-      01001EB5H   LINE      ---      ---       #393
-      01001EC2H   LINE      ---      ---       #394
-      01001EC2H   LINE      ---      ---       #395
-      01001EC9H   LINE      ---      ---       #396
+      01001E7EH   LINE      ---      ---       #381
+      01001E7EH   LINE      ---      ---       #382
+      01001E86H   LINE      ---      ---       #383
+      01001E8EH   LINE      ---      ---       #384
+      01001E96H   LINE      ---      ---       #385
+      01001E9CH   LINE      ---      ---       #386
+      01001E9CH   LINE      ---      ---       #387
+      01001EA4H   LINE      ---      ---       #389
+      01001EB2H   LINE      ---      ---       #390
+      01001EB2H   LINE      ---      ---       #391
+      01001EB5H   LINE      ---      ---       #392
+      01001EB5H   LINE      ---      ---       #395
+      01001EC2H   LINE      ---      ---       #396
+      01001EC2H   LINE      ---      ---       #397
       01001EC9H   LINE      ---      ---       #398
-      01001EC9H   LINE      ---      ---       #399
-      01001ECFH   LINE      ---      ---       #400
-      01001ECFH   LINE      ---      ---       #403
+      01001EC9H   LINE      ---      ---       #400
+      01001EC9H   LINE      ---      ---       #401
+      01001ECFH   LINE      ---      ---       #402
+      01001ECFH   LINE      ---      ---       #405
       02004E24H   SYMBOL    XDATA    VOID      i
       02004E25H   SYMBOL    XDATA    VOID      j
       02004E26H   SYMBOL    XDATA    VOID      k
@@ -1537,7 +1537,7 @@
 
       ---         MODULE    ---      ---       LED
       010017C7H   PUBLIC    CODE     ---       LED_handle
-      0100225FH   PUBLIC    CODE     ---       LED_device_poweroff
+      01002285H   PUBLIC    CODE     ---       LED_device_poweroff
       010007A0H   PUBLIC    CODE     ---       LED_device_poweron
       010007D9H   PUBLIC    CODE     ---       LED_all_shutdown
 
@@ -1568,21 +1568,21 @@
       010007D3H   LINE      ---      ---       #29
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100225FH   BLOCK     CODE     ---       LVL=0
-      0100225FH   LINE      ---      ---       #33
-      0100225FH   LINE      ---      ---       #34
-      0100225FH   LINE      ---      ---       #35
-      01002266H   LINE      ---      ---       #36
-      0100226DH   LINE      ---      ---       #37
-      01002274H   LINE      ---      ---       #38
-      0100227BH   LINE      ---      ---       #39
-      01002282H   LINE      ---      ---       #40
-      01002282H   LINE      ---      ---       #41
-      01002289H   LINE      ---      ---       #42
-      01002290H   LINE      ---      ---       #43
-      01002290H   LINE      ---      ---       #45
-      01002290H   LINE      ---      ---       #46
-      01002297H   LINE      ---      ---       #47
+      01002285H   BLOCK     CODE     ---       LVL=0
+      01002285H   LINE      ---      ---       #33
+      01002285H   LINE      ---      ---       #34
+      01002285H   LINE      ---      ---       #35
+      0100228CH   LINE      ---      ---       #36
+      01002293H   LINE      ---      ---       #37
+      0100229AH   LINE      ---      ---       #38
+      010022A1H   LINE      ---      ---       #39
+      010022A8H   LINE      ---      ---       #40
+      010022A8H   LINE      ---      ---       #41
+      010022AFH   LINE      ---      ---       #42
+      010022B6H   LINE      ---      ---       #43
+      010022B6H   LINE      ---      ---       #45
+      010022B6H   LINE      ---      ---       #46
+      010022BDH   LINE      ---      ---       #47
       ---         BLOCKEND  ---      ---       LVL=0
 
       010017C7H   BLOCK     CODE     ---       LVL=0
@@ -1665,9 +1665,9 @@
       010014E6H   PUBLIC    CODE     ---       YC_pairing_timerout_500ms
       010010D5H   PUBLIC    CODE     ---       YC_connect_timeout_500ms
       010006CFH   PUBLIC    CODE     ---       LED_timer500ms
-      0100246AH   PUBLIC    CODE     ---       System_Reset_Connect
+      01002490H   PUBLIC    CODE     ---       System_Reset_Connect
       010010A6H   PUBLIC    CODE     ---       System_long_sleep
-      01002380H   PUBLIC    CODE     ---       System_Software_init
+      010023A6H   PUBLIC    CODE     ---       System_Software_init
 
       01000F10H   BLOCK     CODE     ---       LVL=0
       01000F10H   LINE      ---      ---       #11
@@ -1698,43 +1698,43 @@
       01000FA0H   LINE      ---      ---       #40
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01002365H   BLOCK     CODE     ---       LVL=0
-      01002365H   LINE      ---      ---       #42
-      01002365H   LINE      ---      ---       #43
-      01002365H   LINE      ---      ---       #44
-      0100236BH   LINE      ---      ---       #45
-      0100236EH   LINE      ---      ---       #46
-      01002370H   LINE      ---      ---       #47
-      01002372H   LINE      ---      ---       #48
-      01002374H   LINE      ---      ---       #49
-      01002377H   LINE      ---      ---       #50
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01002378H   BLOCK     CODE     ---       LVL=0
-      01002378H   LINE      ---      ---       #52
-      01002378H   LINE      ---      ---       #53
-      01002378H   LINE      ---      ---       #54
-      0100237AH   LINE      ---      ---       #55
-      0100237DH   LINE      ---      ---       #56
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01002380H   BLOCK     CODE     ---       LVL=0
-      01002380H   LINE      ---      ---       #60
-      01002380H   LINE      ---      ---       #61
-      01002380H   LINE      ---      ---       #62
-      01002383H   LINE      ---      ---       #63
-      01002385H   LINE      ---      ---       #64
-      0100238BH   LINE      ---      ---       #65
-      01002391H   LINE      ---      ---       #66
-      01002396H   LINE      ---      ---       #67
-      0100239CH   LINE      ---      ---       #68
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01002461H   BLOCK     CODE     ---       LVL=0
-      01002461H   LINE      ---      ---       #70
-      01002461H   LINE      ---      ---       #71
-      01002461H   LINE      ---      ---       #72
-      01002467H   LINE      ---      ---       #73
+      0100238BH   BLOCK     CODE     ---       LVL=0
+      0100238BH   LINE      ---      ---       #42
+      0100238BH   LINE      ---      ---       #43
+      0100238BH   LINE      ---      ---       #44
+      01002391H   LINE      ---      ---       #45
+      01002394H   LINE      ---      ---       #46
+      01002396H   LINE      ---      ---       #47
+      01002398H   LINE      ---      ---       #48
+      0100239AH   LINE      ---      ---       #49
+      0100239DH   LINE      ---      ---       #50
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      0100239EH   BLOCK     CODE     ---       LVL=0
+      0100239EH   LINE      ---      ---       #52
+      0100239EH   LINE      ---      ---       #53
+      0100239EH   LINE      ---      ---       #54
+      010023A0H   LINE      ---      ---       #55
+      010023A3H   LINE      ---      ---       #56
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010023A6H   BLOCK     CODE     ---       LVL=0
+      010023A6H   LINE      ---      ---       #60
+      010023A6H   LINE      ---      ---       #61
+      010023A6H   LINE      ---      ---       #62
+      010023A9H   LINE      ---      ---       #63
+      010023ABH   LINE      ---      ---       #64
+      010023B1H   LINE      ---      ---       #65
+      010023B7H   LINE      ---      ---       #66
+      010023BCH   LINE      ---      ---       #67
+      010023C2H   LINE      ---      ---       #68
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01002487H   BLOCK     CODE     ---       LVL=0
+      01002487H   LINE      ---      ---       #70
+      01002487H   LINE      ---      ---       #71
+      01002487H   LINE      ---      ---       #72
+      0100248DH   LINE      ---      ---       #73
       ---         BLOCKEND  ---      ---       LVL=0
 
       010010A6H   BLOCK     CODE     ---       LVL=0
@@ -1755,19 +1755,19 @@
       010010D4H   LINE      ---      ---       #92
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100246AH   BLOCK     CODE     ---       LVL=0
-      0100246AH   LINE      ---      ---       #94
-      0100246AH   LINE      ---      ---       #95
-      0100246AH   LINE      ---      ---       #96
+      01002490H   BLOCK     CODE     ---       LVL=0
+      01002490H   LINE      ---      ---       #94
+      01002490H   LINE      ---      ---       #95
+      01002490H   LINE      ---      ---       #96
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100246CH   BLOCK     CODE     ---       LVL=0
-      0100246CH   LINE      ---      ---       #104
-      01002471H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002471H   LINE      ---      ---       #106
-      0100247BH   LINE      ---      ---       #108
-      0100247BH   LINE      ---      ---       #110
-      0100247BH   LINE      ---      ---       #111
+      01002492H   BLOCK     CODE     ---       LVL=0
+      01002492H   LINE      ---      ---       #104
+      01002497H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002497H   LINE      ---      ---       #106
+      010024A1H   LINE      ---      ---       #108
+      010024A1H   LINE      ---      ---       #110
+      010024A1H   LINE      ---      ---       #111
       02004E94H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2003,75 +2003,75 @@
       010014E4H   LINE      ---      ---       #381
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100229EH   BLOCK     CODE     ---       LVL=0
-      0100229EH   LINE      ---      ---       #388
-      0100229EH   LINE      ---      ---       #389
-      0100229EH   LINE      ---      ---       #391
-      010022A4H   LINE      ---      ---       #392
-      010022A4H   LINE      ---      ---       #393
-      010022A6H   LINE      ---      ---       #394
-      010022A6H   LINE      ---      ---       #396
-      010022ACH   LINE      ---      ---       #397
-      010022AEH   LINE      ---      ---       #400
-      010022B4H   LINE      ---      ---       #401
-      010022B4H   LINE      ---      ---       #402
-      010022B6H   LINE      ---      ---       #403
-      010022B9H   LINE      ---      ---       #404
-      010022BFH   LINE      ---      ---       #405
-      010022BFH   LINE      ---      ---       #407
-      010022C5H   LINE      ---      ---       #408
-      010022C5H   LINE      ---      ---       #409
-      010022CBH   LINE      ---      ---       #410
-      010022CBH   LINE      ---      ---       #411
-      010022D1H   LINE      ---      ---       #413
-      010022D1H   LINE      ---      ---       #415
-      010022D7H   LINE      ---      ---       #416
-      010022DAH   LINE      ---      ---       #417
-      010022E0H   LINE      ---      ---       #418
-      010022E0H   LINE      ---      ---       #419
-      010022E2H   LINE      ---      ---       #420
-      010022E2H   LINE      ---      ---       #421
-      010022E4H   LINE      ---      ---       #423
-      010022EAH   LINE      ---      ---       #424
-      010022EAH   LINE      ---      ---       #425
-      010022F0H   LINE      ---      ---       #426
-      010022F0H   LINE      ---      ---       #427
-      010022F2H   LINE      ---      ---       #428
-      010022F9H   LINE      ---      ---       #429
-      010022F9H   LINE      ---      ---       #430
-      010022FDH   LINE      ---      ---       #431
-      010022FDH   LINE      ---      ---       #432
-      01002304H   LINE      ---      ---       #433
-      01002306H   LINE      ---      ---       #435
-      01002306H   LINE      ---      ---       #436
-      0100230DH   LINE      ---      ---       #437
-      0100230DH   LINE      ---      ---       #438
-      0100230FH   LINE      ---      ---       #440
-      01002316H   LINE      ---      ---       #441
-      0100231CH   LINE      ---      ---       #442
-      0100231FH   LINE      ---      ---       #443
-      0100231FH   LINE      ---      ---       #444
-      0100231FH   LINE      ---      ---       #447
-      01002325H   LINE      ---      ---       #448
-      01002325H   LINE      ---      ---       #449
-      0100232DH   LINE      ---      ---       #450
-      0100232DH   LINE      ---      ---       #451
-      01002333H   LINE      ---      ---       #452
-      01002337H   LINE      ---      ---       #454
-      0100233DH   LINE      ---      ---       #455
-      0100233DH   LINE      ---      ---       #456
-      01002348H   LINE      ---      ---       #457
-      0100234AH   LINE      ---      ---       #458
-      01002350H   LINE      ---      ---       #459
-      01002350H   LINE      ---      ---       #461
-      0100235BH   LINE      ---      ---       #462
-      0100235BH   LINE      ---      ---       #463
-      0100235BH   LINE      ---      ---       #464
-      0100235BH   LINE      ---      ---       #466
-      01002361H   LINE      ---      ---       #467
-      01002361H   LINE      ---      ---       #468
-      01002364H   LINE      ---      ---       #469
-      01002364H   LINE      ---      ---       #470
+      010022C4H   BLOCK     CODE     ---       LVL=0
+      010022C4H   LINE      ---      ---       #388
+      010022C4H   LINE      ---      ---       #389
+      010022C4H   LINE      ---      ---       #391
+      010022CAH   LINE      ---      ---       #392
+      010022CAH   LINE      ---      ---       #393
+      010022CCH   LINE      ---      ---       #394
+      010022CCH   LINE      ---      ---       #396
+      010022D2H   LINE      ---      ---       #397
+      010022D4H   LINE      ---      ---       #400
+      010022DAH   LINE      ---      ---       #401
+      010022DAH   LINE      ---      ---       #402
+      010022DCH   LINE      ---      ---       #403
+      010022DFH   LINE      ---      ---       #404
+      010022E5H   LINE      ---      ---       #405
+      010022E5H   LINE      ---      ---       #407
+      010022EBH   LINE      ---      ---       #408
+      010022EBH   LINE      ---      ---       #409
+      010022F1H   LINE      ---      ---       #410
+      010022F1H   LINE      ---      ---       #411
+      010022F7H   LINE      ---      ---       #413
+      010022F7H   LINE      ---      ---       #415
+      010022FDH   LINE      ---      ---       #416
+      01002300H   LINE      ---      ---       #417
+      01002306H   LINE      ---      ---       #418
+      01002306H   LINE      ---      ---       #419
+      01002308H   LINE      ---      ---       #420
+      01002308H   LINE      ---      ---       #421
+      0100230AH   LINE      ---      ---       #423
+      01002310H   LINE      ---      ---       #424
+      01002310H   LINE      ---      ---       #425
+      01002316H   LINE      ---      ---       #426
+      01002316H   LINE      ---      ---       #427
+      01002318H   LINE      ---      ---       #428
+      0100231FH   LINE      ---      ---       #429
+      0100231FH   LINE      ---      ---       #430
+      01002323H   LINE      ---      ---       #431
+      01002323H   LINE      ---      ---       #432
+      0100232AH   LINE      ---      ---       #433
+      0100232CH   LINE      ---      ---       #435
+      0100232CH   LINE      ---      ---       #436
+      01002333H   LINE      ---      ---       #437
+      01002333H   LINE      ---      ---       #438
+      01002335H   LINE      ---      ---       #440
+      0100233CH   LINE      ---      ---       #441
+      01002342H   LINE      ---      ---       #442
+      01002345H   LINE      ---      ---       #443
+      01002345H   LINE      ---      ---       #444
+      01002345H   LINE      ---      ---       #447
+      0100234BH   LINE      ---      ---       #448
+      0100234BH   LINE      ---      ---       #449
+      01002353H   LINE      ---      ---       #450
+      01002353H   LINE      ---      ---       #451
+      01002359H   LINE      ---      ---       #452
+      0100235DH   LINE      ---      ---       #454
+      01002363H   LINE      ---      ---       #455
+      01002363H   LINE      ---      ---       #456
+      0100236EH   LINE      ---      ---       #457
+      01002370H   LINE      ---      ---       #458
+      01002376H   LINE      ---      ---       #459
+      01002376H   LINE      ---      ---       #461
+      01002381H   LINE      ---      ---       #462
+      01002381H   LINE      ---      ---       #463
+      01002381H   LINE      ---      ---       #464
+      01002381H   LINE      ---      ---       #466
+      01002387H   LINE      ---      ---       #467
+      01002387H   LINE      ---      ---       #468
+      0100238AH   LINE      ---      ---       #469
+      0100238AH   LINE      ---      ---       #470
       ---         BLOCKEND  ---      ---       LVL=0
 
       0100144AH   BLOCK     CODE     ---       LVL=0
@@ -2117,80 +2117,80 @@
 
       ---         MODULE    ---      ---       ADC
       01001504H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
-      0100247CH   PUBLIC    CODE     ---       YC_adc_check
-      0100239DH   PUBLIC    CODE     ---       YC_adc_init
+      010024A2H   PUBLIC    CODE     ---       YC_adc_check
+      010023C3H   PUBLIC    CODE     ---       YC_adc_init
 
-      0100239DH   BLOCK     CODE     ---       LVL=0
-      0100239DH   LINE      ---      ---       #3
-      0100239DH   LINE      ---      ---       #4
-      0100239DH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100239DH   LINE      ---      ---       #8
-      010023A3H   LINE      ---      ---       #9
-      010023A6H   LINE      ---      ---       #29
-      010023ACH   LINE      ---      ---       #30
-      010023AEH   LINE      ---      ---       #31
-      010023AEH   LINE      ---      ---       #32
-      010023BFH   LINE      ---      ---       #33
-      010023C4H   LINE      ---      ---       #34
-      01002412H   LINE      ---      ---       #35
-      01002460H   LINE      ---      ---       #38
+      010023C3H   BLOCK     CODE     ---       LVL=0
+      010023C3H   LINE      ---      ---       #3
+      010023C3H   LINE      ---      ---       #4
+      010023C3H   BLOCK     CODE     NEAR LAB  LVL=1
+      010023C3H   LINE      ---      ---       #8
+      010023C9H   LINE      ---      ---       #9
+      010023CCH   LINE      ---      ---       #29
+      010023D2H   LINE      ---      ---       #30
+      010023D4H   LINE      ---      ---       #31
+      010023D4H   LINE      ---      ---       #32
+      010023E5H   LINE      ---      ---       #33
+      010023EAH   LINE      ---      ---       #34
+      01002438H   LINE      ---      ---       #35
+      01002486H   LINE      ---      ---       #38
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100247CH   BLOCK     CODE     ---       LVL=0
-      0100247CH   LINE      ---      ---       #40
-      0100247CH   LINE      ---      ---       #41
-      0100247CH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100247CH   LINE      ---      ---       #44
-      01002486H   LINE      ---      ---       #46
-      01002492H   LINE      ---      ---       #49
-      010024B2H   LINE      ---      ---       #50
-      010024BBH   LINE      ---      ---       #51
-      010024BDH   LINE      ---      ---       #52
-      010024C2H   LINE      ---      ---       #53
-      010024C2H   LINE      ---      ---       #54
-      010024F9H   LINE      ---      ---       #55
-      01002503H   LINE      ---      ---       #56
-      01002520H   LINE      ---      ---       #58
-      0100253FH   LINE      ---      ---       #59
-      0100253FH   LINE      ---      ---       #60
-      01002545H   LINE      ---      ---       #61
-      0100254FH   LINE      ---      ---       #62
-      0100254FH   LINE      ---      ---       #63
-      01002555H   LINE      ---      ---       #64
-      01002564H   LINE      ---      ---       #65
-      01002564H   LINE      ---      ---       #66
-      01002566H   LINE      ---      ---       #68
-      01002566H   LINE      ---      ---       #69
-      0100256DH   LINE      ---      ---       #70
-      0100256DH   LINE      ---      ---       #71
-      01002572H   LINE      ---      ---       #72
-      01002582H   LINE      ---      ---       #73
-      01002582H   LINE      ---      ---       #75
-      010025A1H   LINE      ---      ---       #76
-      010025A1H   LINE      ---      ---       #77
-      010025A7H   LINE      ---      ---       #78
-      010025ADH   LINE      ---      ---       #79
-      010025ADH   LINE      ---      ---       #80
-      010025B1H   LINE      ---      ---       #81
-      010025B5H   LINE      ---      ---       #82
-      010025B9H   LINE      ---      ---       #83
-      010025BCH   LINE      ---      ---       #84
-      010025BCH   LINE      ---      ---       #85
-      010025BEH   LINE      ---      ---       #87
-      010025BEH   LINE      ---      ---       #88
-      010025C3H   LINE      ---      ---       #89
-      010025C9H   LINE      ---      ---       #90
-      010025C9H   LINE      ---      ---       #91
-      010025CDH   LINE      ---      ---       #92
-      010025D1H   LINE      ---      ---       #93
-      010025D5H   LINE      ---      ---       #94
-      010025D8H   LINE      ---      ---       #95
-      010025D8H   LINE      ---      ---       #96
-      010025D8H   LINE      ---      ---       #97
-      010025D8H   LINE      ---      ---       #99
-      010025E0H   LINE      ---      ---       #101
+      010024A2H   BLOCK     CODE     ---       LVL=0
+      010024A2H   LINE      ---      ---       #40
+      010024A2H   LINE      ---      ---       #41
+      010024A2H   BLOCK     CODE     NEAR LAB  LVL=1
+      010024A2H   LINE      ---      ---       #44
+      010024ACH   LINE      ---      ---       #46
+      010024B8H   LINE      ---      ---       #49
+      010024D8H   LINE      ---      ---       #50
+      010024E1H   LINE      ---      ---       #51
+      010024E3H   LINE      ---      ---       #52
+      010024E8H   LINE      ---      ---       #53
+      010024E8H   LINE      ---      ---       #54
+      0100251FH   LINE      ---      ---       #55
+      01002529H   LINE      ---      ---       #56
+      01002546H   LINE      ---      ---       #58
+      01002565H   LINE      ---      ---       #59
+      01002565H   LINE      ---      ---       #60
+      0100256BH   LINE      ---      ---       #61
+      01002575H   LINE      ---      ---       #62
+      01002575H   LINE      ---      ---       #63
+      0100257BH   LINE      ---      ---       #64
+      0100258AH   LINE      ---      ---       #65
+      0100258AH   LINE      ---      ---       #66
+      0100258CH   LINE      ---      ---       #68
+      0100258CH   LINE      ---      ---       #69
+      01002593H   LINE      ---      ---       #70
+      01002593H   LINE      ---      ---       #71
+      01002598H   LINE      ---      ---       #72
+      010025A8H   LINE      ---      ---       #73
+      010025A8H   LINE      ---      ---       #75
+      010025C7H   LINE      ---      ---       #76
+      010025C7H   LINE      ---      ---       #77
+      010025CDH   LINE      ---      ---       #78
+      010025D3H   LINE      ---      ---       #79
+      010025D3H   LINE      ---      ---       #80
+      010025D7H   LINE      ---      ---       #81
+      010025DBH   LINE      ---      ---       #82
+      010025DFH   LINE      ---      ---       #83
+      010025E2H   LINE      ---      ---       #84
+      010025E2H   LINE      ---      ---       #85
+      010025E4H   LINE      ---      ---       #87
+      010025E4H   LINE      ---      ---       #88
+      010025E9H   LINE      ---      ---       #89
+      010025EFH   LINE      ---      ---       #90
+      010025EFH   LINE      ---      ---       #91
+      010025F3H   LINE      ---      ---       #92
+      010025F7H   LINE      ---      ---       #93
+      010025FBH   LINE      ---      ---       #94
+      010025FEH   LINE      ---      ---       #95
+      010025FEH   LINE      ---      ---       #96
+      010025FEH   LINE      ---      ---       #97
+      010025FEH   LINE      ---      ---       #99
+      01002606H   LINE      ---      ---       #101
       02004E66H   SYMBOL    XDATA    VOID      i
       02004E67H   SYMBOL    XDATA    VOID      batValue
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -2231,36 +2231,36 @@
       02000C4BH   PUBLIC    XDATA    ---       ipcReadBuff
       0200054FH   PUBLIC    XDATA    BYTE      ipcPinlen
       02000B7EH   PUBLIC    XDATA    BYTE      current_task
-      0100268BH   PUBLIC    CODE     ---       IPC_DealSingleStep
+      010026B1H   PUBLIC    CODE     ---       IPC_DealSingleStep
       01001737H   PUBLIC    CODE     ---       IPC_IsTxBuffEmpty
       0100172BH   PUBLIC    CODE     ---       IPC_AbandonLpm
       01000FB9H   PUBLIC    CODE     ---       IPC_WaitLpm
       01001450H   PUBLIC    CODE     ---       _IPC_Initialize
-      01002751H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
+      01002777H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
       0100145DH   PUBLIC    CODE     ---       _IPC_Tx24GData
       01001463H   PUBLIC    CODE     ---       _IPC_TxData
       010008D5H   PUBLIC    CODE     ---       _IPC_TxControlCmd
 
-      010025E1H   BLOCK     CODE     ---       LVL=0
-      010025E1H   LINE      ---      ---       #44
-      010025F1H   LINE      ---      ---       #45
-      010025F1H   LINE      ---      ---       #46
-      0100263AH   LINE      ---      ---       #47
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      0100263BH   BLOCK     CODE     ---       LVL=0
-      0100263BH   LINE      ---      ---       #49
-      01002645H   LINE      ---      ---       #50
-      01002645H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002645H   LINE      ---      ---       #51
-      0100264DH   LINE      ---      ---       #52
-      01002653H   LINE      ---      ---       #53
-      01002672H   LINE      ---      ---       #54
-      0100267CH   LINE      ---      ---       #55
-      01002680H   LINE      ---      ---       #56
-      01002680H   LINE      ---      ---       #57
-      01002682H   LINE      ---      ---       #58
-      0100268AH   LINE      ---      ---       #59
+      01002607H   BLOCK     CODE     ---       LVL=0
+      01002607H   LINE      ---      ---       #44
+      01002617H   LINE      ---      ---       #45
+      01002617H   LINE      ---      ---       #46
+      01002660H   LINE      ---      ---       #47
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01002661H   BLOCK     CODE     ---       LVL=0
+      01002661H   LINE      ---      ---       #49
+      0100266BH   LINE      ---      ---       #50
+      0100266BH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100266BH   LINE      ---      ---       #51
+      01002673H   LINE      ---      ---       #52
+      01002679H   LINE      ---      ---       #53
+      01002698H   LINE      ---      ---       #54
+      010026A2H   LINE      ---      ---       #55
+      010026A6H   LINE      ---      ---       #56
+      010026A6H   LINE      ---      ---       #57
+      010026A8H   LINE      ---      ---       #58
+      010026B0H   LINE      ---      ---       #59
       00000006H   SYMBOL    DATA     VOID      src
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2308,11 +2308,11 @@
       0100145DH   LINE      ---      ---       #92
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01002751H   BLOCK     CODE     ---       LVL=0
-      01002751H   LINE      ---      ---       #98
-      01002751H   LINE      ---      ---       #99
-      01002751H   LINE      ---      ---       #100
-      01002756H   LINE      ---      ---       #101
+      01002777H   BLOCK     CODE     ---       LVL=0
+      01002777H   LINE      ---      ---       #98
+      01002777H   LINE      ---      ---       #99
+      01002777H   LINE      ---      ---       #100
+      0100277CH   LINE      ---      ---       #101
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001450H   BLOCK     CODE     ---       LVL=0
@@ -2346,34 +2346,34 @@
       0100174EH   LINE      ---      ---       #126
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100268BH   BLOCK     CODE     ---       LVL=0
-      0100268BH   LINE      ---      ---       #129
-      0100268BH   LINE      ---      ---       #130
-      0100268BH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100268BH   LINE      ---      ---       #131
-      0100269DH   LINE      ---      ---       #132
-      010026B1H   LINE      ---      ---       #133
-      010026B1H   LINE      ---      ---       #134
-      010026B9H   LINE      ---      ---       #135
-      010026CAH   LINE      ---      ---       #136
-      010026D4H   LINE      ---      ---       #137
-      010026F3H   LINE      ---      ---       #138
-      010026F5H   LINE      ---      ---       #139
-      010026F5H   LINE      ---      ---       #140
-      010026F7H   LINE      ---      ---       #141
-      010026F7H   LINE      ---      ---       #142
-      010026F7H   LINE      ---      ---       #143
-      0100270BH   LINE      ---      ---       #144
-      01002719H   LINE      ---      ---       #146
-      0100271CH   LINE      ---      ---       #148
-      0100272BH   LINE      ---      ---       #149
-      0100272DH   LINE      ---      ---       #150
-      01002737H   LINE      ---      ---       #151
-      01002745H   LINE      ---      ---       #153
-      01002748H   LINE      ---      ---       #155
-      0100274EH   LINE      ---      ---       #156
-      01002750H   LINE      ---      ---       #158
-      010026F7H   SYMBOL    ---      ---       IPC_TIMERingleStep
+      010026B1H   BLOCK     CODE     ---       LVL=0
+      010026B1H   LINE      ---      ---       #129
+      010026B1H   LINE      ---      ---       #130
+      010026B1H   BLOCK     CODE     NEAR LAB  LVL=1
+      010026B1H   LINE      ---      ---       #131
+      010026C3H   LINE      ---      ---       #132
+      010026D7H   LINE      ---      ---       #133
+      010026D7H   LINE      ---      ---       #134
+      010026DFH   LINE      ---      ---       #135
+      010026F0H   LINE      ---      ---       #136
+      010026FAH   LINE      ---      ---       #137
+      01002719H   LINE      ---      ---       #138
+      0100271BH   LINE      ---      ---       #139
+      0100271BH   LINE      ---      ---       #140
+      0100271DH   LINE      ---      ---       #141
+      0100271DH   LINE      ---      ---       #142
+      0100271DH   LINE      ---      ---       #143
+      01002731H   LINE      ---      ---       #144
+      0100273FH   LINE      ---      ---       #146
+      01002742H   LINE      ---      ---       #148
+      01002751H   LINE      ---      ---       #149
+      01002753H   LINE      ---      ---       #150
+      0100275DH   LINE      ---      ---       #151
+      0100276BH   LINE      ---      ---       #153
+      0100276EH   LINE      ---      ---       #155
+      01002774H   LINE      ---      ---       #156
+      01002776H   LINE      ---      ---       #158
+      0100271DH   SYMBOL    ---      ---       IPC_TIMERingleStep
       02004E85H   SYMBOL    XDATA    VOID      pbuff
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2382,19 +2382,19 @@
       02004E47H   PUBLIC    XDATA    BYTE      ?_compare_str?BYTE
       01001F0EH   PUBLIC    CODE     ---       _compare_str
       01000FA1H   PUBLIC    CODE     ---       _Delay1ms
-      0100275EH   PUBLIC    CODE     ---       _xmemclear_ff
+      01002784H   PUBLIC    CODE     ---       _xmemclear_ff
       01000EE4H   PUBLIC    CODE     ---       _xmemclear
       02004E38H   PUBLIC    XDATA    BYTE      ?_dmemcpy?BYTE
       01001783H   PUBLIC    CODE     ---       _dmemcpy
       02004E5BH   PUBLIC    XDATA    BYTE      ?_xmemcpy?BYTE
       01000A40H   PUBLIC    CODE     ---       _xmemcpy
-      01002757H   PUBLIC    CODE     ---       YC_Ice_break
+      0100277DH   PUBLIC    CODE     ---       YC_Ice_break
 
-      01002757H   BLOCK     CODE     ---       LVL=0
-      01002757H   LINE      ---      ---       #3
-      01002757H   LINE      ---      ---       #4
-      01002757H   LINE      ---      ---       #5
-      0100275DH   LINE      ---      ---       #7
+      0100277DH   BLOCK     CODE     ---       LVL=0
+      0100277DH   LINE      ---      ---       #3
+      0100277DH   LINE      ---      ---       #4
+      0100277DH   LINE      ---      ---       #5
+      01002783H   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000A40H   BLOCK     CODE     ---       LVL=0
@@ -2421,12 +2421,12 @@
       01000F0FH   LINE      ---      ---       #28
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100275EH   BLOCK     CODE     ---       LVL=0
-      0100275EH   LINE      ---      ---       #30
-      01002769H   LINE      ---      ---       #31
-      01002769H   LINE      ---      ---       #32
-      01002773H   LINE      ---      ---       #33
-      0100278AH   LINE      ---      ---       #35
+      01002784H   BLOCK     CODE     ---       LVL=0
+      01002784H   LINE      ---      ---       #30
+      0100278FH   LINE      ---      ---       #31
+      0100278FH   LINE      ---      ---       #32
+      01002799H   LINE      ---      ---       #33
+      010027B0H   LINE      ---      ---       #35
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000FA1H   BLOCK     CODE     ---       LVL=0
@@ -2461,7 +2461,7 @@
       0100174FH   PUBLIC    CODE     ---       GPIO_fillpd
       01000767H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
       010013ABH   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
-      0100278BH   PUBLIC    CODE     ---       _GPIO_ClearWakeup
+      010027B1H   PUBLIC    CODE     ---       _GPIO_ClearWakeup
       00000020H.7 PUBLIC    BIT      BIT       ?_GPIO_SetWakeup?BIT
       010013BEH   PUBLIC    CODE     ---       _GPIO_SetWakeup
       00000020H.6 PUBLIC    BIT      BIT       ?_GPIO_SetOutput?BIT
@@ -2590,16 +2590,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      0100278BH   BLOCK     CODE     ---       LVL=0
-      0100278BH   LINE      ---      ---       #107
-      0100278BH   LINE      ---      ---       #108
-      0100278BH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100278BH   LINE      ---      ---       #111
-      0100278FH   LINE      ---      ---       #113
-      01002793H   LINE      ---      ---       #114
-      0100279AH   LINE      ---      ---       #115
-      010027BCH   LINE      ---      ---       #116
-      010027C9H   LINE      ---      ---       #117
+      010027B1H   BLOCK     CODE     ---       LVL=0
+      010027B1H   LINE      ---      ---       #107
+      010027B1H   LINE      ---      ---       #108
+      010027B1H   BLOCK     CODE     NEAR LAB  LVL=1
+      010027B1H   LINE      ---      ---       #111
+      010027B5H   LINE      ---      ---       #113
+      010027B9H   LINE      ---      ---       #114
+      010027C0H   LINE      ---      ---       #115
+      010027E2H   LINE      ---      ---       #116
+      010027EFH   LINE      ---      ---       #117
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -2770,5 +2770,5 @@
       ---         MODULE    ---      ---       ?C_INIT
       010005B1H   PUBLIC    CODE     ---       ?C_START
 
-Program Size: data=10.2 xdata=790 const=182 code=10004
+Program Size: data=10.2 xdata=790 const=182 code=10042
 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
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/output/eeprom.dat	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/c51/output/eeprom.dat	(working copy)
@@ -3712,7 +3712,7 @@
 14
 aa
 55
-cc
+f2
 27
 02
 05
@@ -5254,13 +5254,13 @@
 cf
 ff
 22
-9e
+c4
 00
 00
 00
 ff
 24
-6c
+92
 00
 1a
 08
@@ -6063,8 +6063,8 @@
 7b
 64
 12
-25
-e1
+26
+07
 90
 4e
 58
@@ -6443,10 +6443,10 @@
 c5
 12
 23
-78
+9e
 12
 23
-80
+a6
 7b
 01
 7a
@@ -6571,7 +6571,7 @@
 cc
 12
 23
-65
+8b
 f1
 d6
 e4
@@ -6674,7 +6674,7 @@
 87
 02
 24
-61
+87
 90
 4c
 e5
@@ -7797,11 +7797,11 @@
 ff
 60
 0d
-d2
-06
+c2
+05
 12
-07
-83
+20
+75
 90
 4e
 9a
@@ -8523,7 +8523,7 @@
 4a
 12
 26
-8b
+b1
 51
 42
 b1
@@ -9110,7 +9110,7 @@
 f0
 12
 24
-7c
+a2
 22
 90
 4e
@@ -12219,7 +12219,7 @@
 0c
 93
 60
-69
+7c
 ef
 93
 fd
@@ -12310,7 +12310,7 @@
 f0
 ee
 24
-74
+78
 fb
 e4
 34
@@ -12322,9 +12322,28 @@
 e0
 4d
 f0
-0f
+ee
+24
+70
+fb
+e4
+34
 80
-90
+8b
+82
+f5
+83
+e0
+fc
+ed
+f4
+fb
+ec
+5b
+f0
+0f
+21
+33
 e4
 ff
 ef
@@ -12333,7 +12352,7 @@
 0c
 93
 60
-69
+7c
 ef
 93
 fd
@@ -12424,7 +12443,7 @@
 f0
 ee
 24
-74
+78
 fb
 e4
 34
@@ -12436,9 +12455,28 @@
 e0
 4d
 f0
-0f
+ee
+24
+70
+fb
+e4
+34
 80
-90
+8b
+82
+f5
+83
+e0
+fc
+ed
+f4
+fb
+ec
+5b
+f0
+0f
+21
+b8
 e4
 ff
 ef
@@ -12643,7 +12681,7 @@
 70
 3f
 51
-5f
+85
 80
 3b
 90
@@ -12795,7 +12833,7 @@
 f0
 22
 71
-65
+8b
 12
 0f
 d6
@@ -12806,7 +12844,7 @@
 0f
 10
 71
-9d
+c3
 90
 4c
 eb
@@ -13074,8 +13112,8 @@
 e0
 70
 02
-a1
-e0
+c1
+06
 90
 4c
 95
@@ -13264,7 +13302,7 @@
 70
 02
 a1
-d8
+fe
 90
 4c
 f9
@@ -13626,7 +13664,7 @@
 7d
 03
 d1
-3b
+61
 90
 4e
 85
@@ -13900,8 +13938,8 @@
 5c
 f0
 22
-1f
-44
+88
+cd
 aa
 55
 40
@@ -15962,46 +16000,8 @@
 6c
 59
 50
-68
-17
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+ed
+05
 ff
 ff
 ff
@@ -16380,5 +16380,5 @@
 ff
 ff
 ff
-fe
-13
+e6
+10
Index: c51/output/fw.hex
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/output/fw.hex	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/c51/output/fw.hex	(working copy)
@@ -94,7 +94,7 @@
 :1005D000A840B8E493A3FAE493A3F8E493A3C8C5AE
 :1005E00082C8CAC583CAF0A3C8C582C8CAC583CA9F
 :1005F000DFE9DEE780BE524DF2FF0A83000000FF14
-:1006000014CFFF229E000000FF246C001A08090A84
+:1006000014CFFF22C4000000FF2492001A08090A38
 :100610000B0C0D0E18191715141311161B1C0000C6
 :100620000048000000E400E03E142B04291DEF35D3
 :100630001E1A3916641B8A3A1F083C073D06883B80
@@ -144,7 +144,7 @@
 :1008F000E0904E7BF07B017A4E79797D03904E55E6
 :10090000EBF0A3EAF0A3E9F0A3EDF0904B9CE0FF3D
 :10091000A3E0904E59CFF0A3EFF0904B9AE0FEA3E6
-:10092000E0FF904B9CE0FCA3E0FD7B641225E1908E
+:10092000E0FF904B9CE0FCA3E0FD7B641226079067
 :100930004E58E0FEEFC39E40E1904E58E0FF14F0A9
 :10094000EF603F904E55E0FBA3E475F001120424E4
 :10095000A9F0FA1203B6FF904E59E475F0011204A3
@@ -168,7 +168,7 @@
 :100A70004E5BE475F00112042485F082F583EFF0FB
 :100A800080CF22904E9CEFF024D07002612714702A
 :100A9000026132147002619814600C24F7700261D4
-:100AA00032240D600261C51223781223807B017A03
+:100AA00032240D600261C512239E1223A67B017AB7
 :100AB0004C79F97D017C007FF97E3F3192904CF9B1
 :100AC000E064017032904C95E07002A3E07004F194
 :100AD000B980F2904CE0E0FEA3E0FFC3904C96E0BA
@@ -176,14 +176,14 @@
 :100AF0004CE5F07F1901D57B017A4C79007D047CAF
 :100B0000007FF27E3F31921207A07F0AF1A1904C44
 :100B1000C1E0F97A007B007D017C007FF87E3F31E7
-:100B2000927F0AF1A1E1CC122365F1D6E4904CFB4F
+:100B2000927F0AF1A1E1CC12238BF1D6E4904CFB29
 :100B3000F022904CC57403F0E4A3F0F1C6E4904CAD
 :100B4000EEF0904CEBF0904CC074FEF0904CC3F083
 :100B5000904D477403F0904DDF740AF0904E9CE086
 :100B60006431702D904DF1F0904CE5741EF0904B77
 :100B7000EBE0B40F10A3E0B40F0BA3E0B40F06A397
 :100B8000E0640F6040904CBF7401F012158702249E
-:100B900061904CE5E0702E22E4904CC5F0A3F090FB
+:100B900087904CE5E0702E22E4904CC5F0A3F090D5
 :100BA0004CE3F0A3F0904CEB04F0904CEDE06009C6
 :100BB000F1C6904CEDE0FF012C904CECE0B4010547
 :100BC000E4F01210A622904E61EBF0A3EAF0A3E944
@@ -253,7 +253,7 @@
 :100FC0007EF07F0180DBE4904CF0F022904DE474E1
 :100FD00002F07F08012C908080E4F0A3F0A3F012CF
 :100FE0002058E4904E9AF0F0904E9AE090060C93C0
-:100FF000FF600DD206120783904E9AE004F080E85D
+:100FF000FF600DC205122075904E9AE004F080E863
 :1010000022904CC5E0FF64036004EFB402087F2225
 :101010001208D57F01227F0022904CCEE030E13DC6
 :10102000904CD0E0C394FA5003E004F0904CD0E030
@@ -298,7 +298,7 @@
 :10129000904CF5F0904CF8E07007904CF47406F028
 :1012A00022904CF47405F022904CF4E0B40615E45E
 :1012B000904CF6F0904CF5F0A3E0FDE4FF5107E40C
-:1012C000904CF4F022914A12268B5142B187F1C71B
+:1012C000904CF4F022914A1226B15142B187F1C7F5
 :1012D000904D76E0600211A6900B7EE014600E2423
 :1012E000FE70E471131207D9120FB980FE904CEA18
 :1012F000E07012904CECE0700C904CE5E0700690C1
@@ -335,7 +335,7 @@
 :1014E000B10411D51119904CEEE06017E4904CE373
 :1014F000F0A3F0904CEEE014F0E070077F0A120FBA
 :10150000A111A622904CD3E0600B14F0E070067499
-:1015100005F012247C22904E7CE4F0A3F0A3F0F1BD
+:1015100005F01224A222904E7CE4F0A3F0A3F0F197
 :10152000375026121C84904E7CEBF0A3EAF0A3E91E
 :10153000F04A7007904CB604F0800F904E7CE0FBB0
 :10154000A3E0FAA3E0F9120BC622904D47E0603603
@@ -529,110 +529,112 @@
 :102100004F0203FC904E8EE0FBA3E0FAA3E02DF912
 :10211000E43AFA1203B6FF7401A806088002C3333A
 :10212000D8FCF45F0203FCE4FF904E7FF0FEFDA3B9
-:10213000F0A3F0EF90060C936069EF93FD13131377
+:10213000F0A3F0EF90060C93607CEF93FD13131364
 :10214000541FFEED5407FD7401A805088002C33337
 :10215000D8FCFDEE2478FBE434808B82F583E0FC30
 :10216000EDF4FBEC5BF0EE2470F582E43480F58353
 :10217000E04DF0EE2474F582E43480F583E05BF00A
 :1021800090811CE0F4FC74BC2FF582E4344DF5839F
-:10219000ECF0EE2474FBE434808B82F583E04DF0A8
-:1021A0000F8090E4FFEF90060C936069EF93FD13AE
-:1021B0001313541FFEED5407FD7401A80508800297
-:1021C000C333D8FCFDEE2478FBE434808B82F583A6
-:1021D000E0FCEDF4FBEC5BF0EE2470F582E434807F
-:1021E000F583E04DF0EE2474F582E43480F583E06D
-:1021F0005BF090811CE0F4FC74A82FF582E4344D70
-:10220000F583ECF0EE2474FBE434808B82F583E0FC
-:102210004DF00F8090E4FFEF90060C93604074BC8B
-:102220002FF582E4344DF583E0FE74A82FF582E4A7
-:10223000344DF583E06E602374BC2FF582E4344D99
-:10224000F583C083C082E0FE74A82FF582E4344D8C
-:10225000F583E0FDEE5DD082D083F00F80B922904F
-:102260004CC3E0B40107D2017FFF020755904CC375
-:10227000E0B40207D2017FFF020755904CC3E0B4DF
-:10228000030ED2017FFF120755D2067F1D0207837E
-:10229000D2017FFF120755D2067F1D020783904CA3
-:1022A000EAE0600214F0904CEFE0600214F0904C11
-:1022B000F8E0600B14F0E07006904CF47406F090B7
-:1022C0004CE5E0601F904CEEE06006E4904CE5F0D9
-:1022D00022904CE5E014F01207A0904CE5E0703F2E
-:1022E000515F803B904CEEE07035904CE2E0602F07
-:1022F00014F0E0FFC394085016EF30E109C2017FEB
-:102300001D1207558010D2017F1D1207558007D27C
-:10231000017F1D120755904CE2E070037418F09095
-:102320004DD5E07036904DD6E06401702E904CE3B0
-:10233000F0A3F0904DD6F0904DE8E0600D7B017A6F
-:102340004D79E87D031211538011904800E0600B35
-:102350007B017A4879007D09121153904DDFE060CE
-:1023600003E014F022908091740DF0A304F0A3F028
-:10237000A3F0A3F0A314F0227165120FD60207D9BF
-:10238000120F10719D904CEB7401F0904CE5741E8F
-:10239000F0E4904CF0F0904D0474FFF022904CD398
-:1023A0007405F0E4A3F0904C907433F0E4FFEF2553
-:1023B000E024D6F582E4344CF5837462F0A3F00F88
-:1023C000EFB404EA904C91E0FEA3E0FFC3904C947C
-:1023D000E09FFD904C93E09EFCE41202067BC37AE2
-:1023E000F579A8783E1200FBC004C005C006C007FE
-:1023F000904C91E0FCA3E0FDE4120206D003D00271
-:10240000D001D00012000A12023F904CDEEEF0A381
-:10241000EFF0904C91E0FEA3E0FFC3904C94E09F5E
-:10242000FD904C93E09EFCE41202067B5C7A8F796F
-:1024300042783E1200FBC004C005C006C007904CA5
-:1024400091E0FCA3E0FDE4120206D003D002D0012B
-:10245000D00012000A12023F904CE0EEF0A3EFF021
-:10246000229080107401F080FE2280F5904E93ED52
-:10247000F09000011203CF904E94F022904E67121C
-:10248000053300000000904C95E07002A3E070025C
-:10249000A1E0904C95E0FEA3E0FF904CD4E0FD0459
-:1024A000F0ED25E024D6F582E4344CF583EEF0A37C
-:1024B000EFF0904CD4E0C394044002E4F0E4904E7A
-:1024C00066F0904E67E0F8A3E0F9A3E0FAA3E0FB22
-:1024D000904E66E025E024D6F582E4344CF583E0A6
-:1024E000FEA3E0FFE4FCFDEB2FFFEA3EFEED39FD2D
-:1024F000EC38FC904E67120527904E66E004F0E041
-:10250000B404BF904E67E0FCA3E0FDA3E0FEA3E0AF
-:10251000FFE47B04FAF9F8120476904E671205275F
-:10252000904CE0E0FEA3E0FFE4FCFD904E67E0F895
-:10253000A3E0F9A3E0FAA3E0FBC31205165027902D
-:102540004CD57402F0904CFAE064027002A1D8906D
-:102550004CF97401F0FB7A4C79F9FD7C007FF97E2F
-:102560003F1215DB8072904CFAE0B40215E4904CF7
-:10257000F9F07B017A4C79F97D01FC7FF97E3F12FD
-:1025800015DB904CDEE0FEA3E0FFE4FCFD904E671F
-:10259000E0F8A3E0F9A3E0FAA3E0FBC312051650AC
-:1025A0001D904CD57401F0904CFBE0702B904D3D8C
-:1025B000F0A37448F0A37412F0E4A3F0801AE4903E
-:1025C0004CD5F0904CFBE0700F904D3DF0A374485B
-:1025D000F0A3745DF0E4A3F0904CD5E0904CFAF0D9
-:1025E00022904E74EEF0A3EFF0904E76ECF0A3ED57
-:1025F000F0904E76E0FEA3E0FFD3904E75E09F9002
-:102600004E74E09E4016904E76E0FEA3E0FF904EA2
-:1026100075E09FFF904E74E09EFE801E904E74E029
-:10262000FEA3E0FFC3904E77E09FFF904E76E09EC2
-:10263000FEAD03C3EB9FFFE49EFE22904E95EEF0AD
-:10264000A3EFF0A905904B9EE0FEA3E0FFAD0119BA
-:10265000ED602F0FEFAC0670010E14F5828C83E055
-:10266000FD904E95E475F00112042485F082F58307
-:10267000EDF0AD07AC06BC4BD4BD9AD17E4B7F3696
-:1026800080CB904B9EEEF0A3EFF0227A0C794B902A
-:102690004E857401F0A3740CF0A3744BF0904BA022
-:1026A000E0FEA3E0FF904B9EE06E7003A3E06F603E
-:1026B000467E0C7F4B7D03D13B904E85E0FBA3E033
-:1026C000FAA3E0F91203B6B4022B904E86E475F03B
-:1026D0000212040E904E85E0FBA3E0FAA3E0F9128B
-:1026E00003B6FF904E04E0A3E0FAA3E0F5828A83EC
-:1026F000120568800280FE904BA5E0FEA3E0FF90EB
-:102700004C5EE06E7003A3E06F6022904E0AE0FB27
-:10271000A3E0FAA3E0F94A6037120564904BA5E004
-:10272000FFA3E0904C5ECFF0A3EFF080CA904C8DF9
-:10273000E0FFA3E06F6019904E0DE0FBA3E0FAA369
-:10274000E0F94A600B120564904C8DE0A3F080DD47
-:1027500022900446E0FF229082807401F022904E85
-:102760008BEBF0A3EAF0A3E9F0ED1DAE0470011CC1
-:102770004E6017904E8BE0FBA3E475F00112042429
-:10278000A9F0FA74FF1203FC80DF22EFF4603AEF45
-:102790005407FEEF1313135403FF24A3F582E4340C
-:1027A00000F583C083C082E0FD7401A806088002A2
-:1027B000C333D8FCF4FC5DD082D083F074A72FF52E
-:0A27C00082E43400F583E05CF022AF
+:10219000ECF0EE2478FBE434808B82F583E04DF0A4
+:1021A000EE2470FBE434808B82F583E0FCEDF4FBDD
+:1021B000EC5BF00F2133E4FFEF90060C93607CEFB3
+:1021C00093FD131313541FFEED5407FD7401A8056E
+:1021D000088002C333D8FCFDEE2478FBE434808B06
+:1021E00082F583E0FCEDF4FBEC5BF0EE2470F5820D
+:1021F000E43480F583E04DF0EE2474F582E434801D
+:10220000F583E05BF090811CE0F4FC74A82FF5826C
+:10221000E4344DF583ECF0EE2478FBE434808B82DB
+:10222000F583E04DF0EE2470FBE434808B82F5837F
+:10223000E0FCEDF4FBEC5BF00F21B8E4FFEF90065F
+:102240000C93604074BC2FF582E4344DF583E0FEBE
+:1022500074A82FF582E4344DF583E06E602374BCDE
+:102260002FF582E4344DF583C083C082E0FE74A86C
+:102270002FF582E4344DF583E0FDEE5DD082D0830E
+:10228000F00F80B922904CC3E0B40107D2017FFF68
+:10229000020755904CC3E0B40207D2017FFF02074A
+:1022A00055904CC3E0B4030ED2017FFF120755D204
+:1022B000067F1D020783D2017FFF120755D2067FDA
+:1022C0001D020783904CEAE0600214F0904CEFE0AE
+:1022D000600214F0904CF8E0600B14F0E07006908F
+:1022E0004CF47406F0904CE5E0601F904CEEE0601A
+:1022F00006E4904CE5F022904CE5E014F01207A0C3
+:10230000904CE5E0703F5185803B904CEEE070359D
+:10231000904CE2E0602F14F0E0FFC394085016EFF9
+:1023200030E109C2017F1D1207558010D2017F1DC7
+:102330001207558007D2017F1D120755904CE2E02D
+:1023400070037418F0904DD5E07036904DD6E0646F
+:1023500001702E904CE3F0A3F0904DD6F0904DE834
+:10236000E0600D7B017A4D79E87D031211538011F5
+:10237000904800E0600B7B017A4879007D091211DA
+:1023800053904DDFE06003E014F022908091740DD3
+:10239000F0A304F0A3F0A3F0A3F0A314F022718B38
+:1023A000120FD60207D9120F1071C3904CEB7401B3
+:1023B000F0904CE5741EF0E4904CF0F0904D0474F5
+:1023C000FFF022904CD37405F0E4A3F0904C90748D
+:1023D00033F0E4FFEF25E024D6F582E4344CF583B6
+:1023E0007462F0A3F00FEFB404EA904C91E0FEA306
+:1023F000E0FFC3904C94E09FFD904C93E09EFCE482
+:102400001202067BC37AF579A8783E1200FBC0045D
+:10241000C005C006C007904C91E0FCA3E0FDE412AB
+:102420000206D003D002D001D00012000A12023FEF
+:10243000904CDEEEF0A3EFF0904C91E0FEA3E0FFB5
+:10244000C3904C94E09FFD904C93E09EFCE41202FC
+:10245000067B5C7A8F7942783E1200FBC004C0058F
+:10246000C006C007904C91E0FCA3E0FDE412020618
+:10247000D003D002D001D00012000A12023F904CCB
+:10248000E0EEF0A3EFF0229080107401F080FE22C5
+:1024900080F5904E93EDF09000011203CF904E9492
+:1024A000F022904E6712053300000000904C95E03A
+:1024B0007002A3E07002C106904C95E0FEA3E0FF1D
+:1024C000904CD4E0FD04F0ED25E024D6F582E43410
+:1024D0004CF583EEF0A3EFF0904CD4E0C3940440AD
+:1024E00002E4F0E4904E66F0904E67E0F8A3E0F965
+:1024F000A3E0FAA3E0FB904E66E025E024D6F58247
+:10250000E4344CF583E0FEA3E0FFE4FCFDEB2FFF99
+:10251000EA3EFEED39FDEC38FC904E67120527903F
+:102520004E66E004F0E0B404BF904E67E0FCA3E028
+:10253000FDA3E0FEA3E0FFE47B04FAF9F8120476C1
+:10254000904E67120527904CE0E0FEA3E0FFE4FC0C
+:10255000FD904E67E0F8A3E0F9A3E0FAA3E0FBC327
+:102560001205165027904CD57402F0904CFAE06496
+:10257000027002A1FE904CF97401F0FB7A4C79F9DB
+:10258000FD7C007FF97E3F1215DB8072904CFAE0F3
+:10259000B40215E4904CF9F07B017A4C79F97D0195
+:1025A000FC7FF97E3F1215DB904CDEE0FEA3E0FFDE
+:1025B000E4FCFD904E67E0F8A3E0F9A3E0FAA3E0A5
+:1025C000FBC3120516501D904CD57401F0904CFBC6
+:1025D000E0702B904D3DF0A37448F0A37412F0E42A
+:1025E000A3F0801AE4904CD5F0904CFBE0700F9073
+:1025F0004D3DF0A37448F0A3745DF0E4A3F0904C5B
+:10260000D5E0904CFAF022904E74EEF0A3EFF090EB
+:102610004E76ECF0A3EDF0904E76E0FEA3E0FFD313
+:10262000904E75E09F904E74E09E4016904E76E07E
+:10263000FEA3E0FF904E75E09FFF904E74E09EFE7B
+:10264000801E904E74E0FEA3E0FFC3904E77E09FA3
+:10265000FF904E76E09EFEAD03C3EB9FFFE49EFE2F
+:1026600022904E95EEF0A3EFF0A905904B9EE0FE70
+:10267000A3E0FFAD0119ED602F0FEFAC0670010E66
+:1026800014F5828C83E0FD904E95E475F001120400
+:102690002485F082F583EDF0AD07AC06BC4BD4BDCC
+:1026A0009AD17E4B7F3680CB904B9EEEF0A3EFF01D
+:1026B000227A0C794B904E857401F0A3740CF0A330
+:1026C000744BF0904BA0E0FEA3E0FF904B9EE06EB9
+:1026D0007003A3E06F60467E0C7F4B7D03D1619059
+:1026E0004E85E0FBA3E0FAA3E0F91203B6B4022B97
+:1026F000904E86E475F00212040E904E85E0FBA326
+:10270000E0FAA3E0F91203B6FF904E04E0A3E0FA6A
+:10271000A3E0F5828A83120568800280FE904BA5B3
+:10272000E0FEA3E0FF904C5EE06E7003A3E06F60FC
+:1027300022904E0AE0FBA3E0FAA3E0F94A603712C8
+:102740000564904BA5E0FFA3E0904C5ECFF0A3EFB3
+:10275000F080CA904C8DE0FFA3E06F6019904E0DA1
+:10276000E0FBA3E0FAA3E0F94A600B120564904C89
+:102770008DE0A3F080DD22900446E0FF229082806D
+:102780007401F022904E8BEBF0A3EAF0A3E9F0ED98
+:102790001DAE0470011C4E6017904E8BE0FBA3E44D
+:1027A00075F001120424A9F0FA74FF1203FC80DF13
+:1027B00022EFF4603AEF5407FEEF1313135403FFB4
+:1027C00024A3F582E43400F583C083C082E0FD7465
+:1027D00001A806088002C333D8FCF4FC5DD082D087
+:1027E00083F074A72FF582E43400F583E05CF022D7
 :00000001FF
Index: c51/output/fwram.rom
===================================================================
--- /YC1026/YC1085_only_24g_SDK/c51/output/fwram.rom	(revision 329)
+++ /YC1026/YC1085_only_24g_SDK/c51/output/fwram.rom	(working copy)
@@ -1538,13 +1538,13 @@
 cf
 ff
 22
-9e
+c4
 00
 00
 00
 ff
 24
-6c
+92
 00
 1a
 08
@@ -2347,8 +2347,8 @@
 7b
 64
 12
-25
-e1
+26
+07
 90
 4e
 58
@@ -2727,10 +2727,10 @@
 c5
 12
 23
-78
+9e
 12
 23
-80
+a6
 7b
 01
 7a
@@ -2855,7 +2855,7 @@
 cc
 12
 23
-65
+8b
 f1
 d6
 e4
@@ -2958,7 +2958,7 @@
 87
 02
 24
-61
+87
 90
 4c
 e5
@@ -4081,11 +4081,11 @@
 ff
 60
 0d
-d2
-06
+c2
+05
 12
-07
-83
+20
+75
 90
 4e
 9a
@@ -4807,7 +4807,7 @@
 4a
 12
 26
-8b
+b1
 51
 42
 b1
@@ -5394,7 +5394,7 @@
 f0
 12
 24
-7c
+a2
 22
 90
 4e
@@ -8503,7 +8503,7 @@
 0c
 93
 60
-69
+7c
 ef
 93
 fd
@@ -8594,7 +8594,7 @@
 f0
 ee
 24
-74
+78
 fb
 e4
 34
@@ -8606,9 +8606,28 @@
 e0
 4d
 f0
-0f
+ee
+24
+70
+fb
+e4
+34
 80
-90
+8b
+82
+f5
+83
+e0
+fc
+ed
+f4
+fb
+ec
+5b
+f0
+0f
+21
+33
 e4
 ff
 ef
@@ -8617,7 +8636,7 @@
 0c
 93
 60
-69
+7c
 ef
 93
 fd
@@ -8708,7 +8727,7 @@
 f0
 ee
 24
-74
+78
 fb
 e4
 34
@@ -8720,9 +8739,28 @@
 e0
 4d
 f0
-0f
+ee
+24
+70
+fb
+e4
+34
 80
-90
+8b
+82
+f5
+83
+e0
+fc
+ed
+f4
+fb
+ec
+5b
+f0
+0f
+21
+b8
 e4
 ff
 ef
@@ -8927,7 +8965,7 @@
 70
 3f
 51
-5f
+85
 80
 3b
 90
@@ -9079,7 +9117,7 @@
 f0
 22
 71
-65
+8b
 12
 0f
 d6
@@ -9090,7 +9128,7 @@
 0f
 10
 71
-9d
+c3
 90
 4c
 eb
@@ -9358,8 +9396,8 @@
 e0
 70
 02
-a1
-e0
+c1
+06
 90
 4c
 95
@@ -9548,7 +9586,7 @@
 70
 02
 a1
-d8
+fe
 90
 4c
 f9
@@ -9910,7 +9948,7 @@
 7d
 03
 d1
-3b
+61
 90
 4e
 85
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
