Index: c51/kb_process.c
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/kb_process.c	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/kb_process.c	(working copy)
@@ -30,7 +30,7 @@
 			IPC_TxControlCmd(IPC_CMD_PAIR_24G);
 			g_variable.g24_currentState = CHANGE_TO_24G_PAIRING;
 			g_variable.g24_currentSubState = CHANGE_TO_24G_SUB_NONE;
-			g_variable.pairing_g24_timeout = BT_PAIRING_TIME_OUT_2MIN;
+			g_variable.pairing_g24_timeout = G24_PAIRING_TIME_OUT_20S;
 			g_variable.pairing_timeout = 0;
 		}
 		g_variable.key_action = KEY_NONE;
@@ -389,13 +389,12 @@
 				temp = HID_KEY_PRINT_SCREEN;
 				break;
 			case HID_KEY_Z:
-				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_GREAT_THAN);
+				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_K45);	// spanish >
 				temp = HID_KEY_NULL;
 				break;	
 			case HID_KEY_X:
-				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_LESS_THAN);
-				temp = HID_KEY_NULL;
-				break;
+				temp = HID_KEY_K45;		// spanish <
+				break;	
 			case HID_KEY_UP_ARROW:
 				temp = HID_KEY_PAGE_UP;
 				break;	
Index: c51/led.c
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/led.c	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/led.c	(working copy)
@@ -44,7 +44,7 @@
 		//capslock  numlock  scrolllock LED process
 		if (YC_check_is_connected())
 		{
-			if (g_variable.sleepTimer < G24_PAIRING_TIME_OUT_20S)
+			if (g_variable.sleepTimer < RECONNECT_TIMER_20S)
 			{
 				if(m_caps_num_lock & KB_PC_KEYSEL_NUMLOCK)
 				{
Index: c51/output/FW
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: c51/output/FW.COD
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/output/FW.COD	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/output/FW.COD	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               02/28/2022  19:01:17  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               03/09/2022  16:40:10  PAGE 1
 
 
 
@@ -112,7 +112,7 @@
 00074A EF                MOV     A,R7
 00074B 6043              JZ      ?C0011?LED
    46: 		{
-   47: 			if (g_variable.sleepTimer < G24_PAIRING_TIME_OUT_20S)
+   47: 			if (g_variable.sleepTimer < RECONNECT_TIMER_20S)
 00074D C3                CLR     C
 00074E 904CE4            MOV     DPTR,#g_variable+025H
 000751 E0                MOVX    A,@DPTR
@@ -216,7 +216,7 @@
 0007AB 7974              MOV     R1,#074H
 0007AD A201              MOV     C,bit_val
 0007AF 9200              MOV     ?_gpioSetBit?BIT,C
-0007B1 121DA5            LCALL   _gpioSetBit
+0007B1 121D9A            LCALL   _gpioSetBit
 0007B4         ?C0007?GPIO:
 0007B4 22                RET     
 ----- FUNCTION _GPIO_Setout (END) -------
@@ -281,14 +281,14 @@
 0007E1         ?C0016?GPIO:
 0007E1 AF04              MOV     R7,AR4
 0007E3 D204              SETB    ?_GPIO_Setoe?BIT
-0007E5 121D94            LCALL   _GPIO_Setoe
+0007E5 121D89            LCALL   _GPIO_Setoe
 0007E8 AF04              MOV     R7,AR4
 0007EA A206              MOV     C,st
 0007EC 9201              MOV     ?_GPIO_Setout?BIT,C
 0007EE F1A3              ACALL   _GPIO_Setout
 0007F0 AF04              MOV     R7,AR4
 0007F2 C202              CLR     ?_GPIO_SetPu?BIT
-0007F4 121D72            LCALL   _GPIO_SetPu
+0007F4 121D67            LCALL   _GPIO_SetPu
 0007F7         ?C0017?GPIO:
 0007F7 22                RET     
 ----- FUNCTION _GPIO_SetOutput (END) -------
@@ -463,9 +463,9 @@
 00089C E4                CLR     A
 00089D A3                INC     DPTR
 00089E F0                MOVX    @DPTR,A
-   33: 			g_variable.pairing_g24_timeout = BT_PAIRING_TIME_OUT_2MIN;
+   33: 			g_variable.pairing_g24_timeout = G24_PAIRING_TIME_OUT_20S;
 00089F 904CF1            MOV     DPTR,#g_variable+032H
-0008A2 74F0              MOV     A,#0F0H
+0008A2 74C8              MOV     A,#0C8H
 0008A4 F0                MOVX    @DPTR,A
    34: 			g_variable.pairing_timeout = 0;
 0008A5 E4                CLR     A
@@ -556,7 +556,7 @@
 000909 E0                MOVX    A,@DPTR
 00090A FD                MOV     R5,A
 00090B 7B64              MOV     R3,#064H
-00090D 122395            LCALL   _bufsize
+00090D 1223A6            LCALL   _bufsize
 000910 904E57            MOV     DPTR,#len
 000913 E0                MOVX    A,@DPTR
 000914 FE                MOV     R6,A
@@ -655,7 +655,7 @@
   102: 		System_Hardware_init();
 000991 F1ED              ACALL   System_Hardware_init
   103: 		System_Software_init();
-000993 121F94            LCALL   System_Software_init
+000993 121F89            LCALL   System_Software_init
   104: 		IIC_Read(EEPROM_RECON_INFO_BASE_6+2,4 , (byte *)m_24g_addr);
 000996 7B01              MOV     R3,#01H
 000998 7A4C              MOV     R2,#HIGH m_24g_addr
@@ -2016,7 +2016,7 @@
 000FC9 A3                INC     DPTR
 000FCA F0                MOVX    @DPTR,A
   212: 	ksColInitialize();
-000FCB 121D37            LCALL   ksRawInitialize
+000FCB 121D2C            LCALL   ksRawInitialize
 ;----                  JMP     ksColInitialize
   213: }
 ----- FUNCTION KS_Initialize (END) -------
@@ -2042,7 +2042,7 @@
 000FDD 600D              JZ      ?C0035?KEYSCAN
   203: 	}
 000FDF C205              CLR     ?_GPIO_SetInput?BIT
-000FE1 121D54            LCALL   _GPIO_SetInput
+000FE1 121D49            LCALL   _GPIO_SetInput
   204: }
 000FE4 904E98            MOV     DPTR,#i
 000FE7 E0                MOVX    A,@DPTR
@@ -2305,98 +2305,98 @@
 
 ----- FUNCTION YC_System_Main (BEGIN) -----
  FILE: 'sys.c'
-  411: void YC_System_Main(void)
-  412: {
-  413: 	kb_cb_init();
-  414: 	while(1) {
+  413: void YC_System_Main(void)
+  414: {
+  415: 	kb_cb_init();
+  416: 	while(1) {
 00110C 716E              ACALL   kb_cb_init
-00110E         ?C0080?SYS:
-  415: 		IPC_DealSingleStep();
-  416: 		kb_need_keyscan();
+00110E         ?C0079?SYS:
+  417: 		IPC_DealSingleStep();
+  418: 		kb_need_keyscan();
 00110E 919B              ACALL   IPC_DealSingleStep
-  417: 		YC_update_eeprom_data();
+  419: 		YC_update_eeprom_data();
 001110 51AF              ACALL   kb_need_keyscan
-  418: 		LED_handle();
+  420: 		LED_handle();
 001112 110A              ACALL   YC_update_eeprom_data
-  419: 		
+  421: 		
 001114 1206F5            LCALL   LED_handle
-  420: 		switch (current_task) {
+  422: 		switch (current_task) {
 001117 900B7E            MOV     DPTR,#current_task
 00111A E0                MOVX    A,@DPTR
 00111B 14                DEC     A
-00111C 600D              JZ      ?C0086?SYS
+00111C 600D              JZ      ?C0085?SYS
 00111E 24FE              ADD     A,#0FEH
-001120 70EC              JNZ     ?C0080?SYS
-  421: 		case FIX_ENTER_HIBERNATE:
-001122         ?C0083?SYS:
-  422: 			KS_Unistall();
+001120 70EC              JNZ     ?C0079?SYS
+  423: 		case FIX_ENTER_HIBERNATE:
+001122         ?C0082?SYS:
+  424: 			KS_Unistall();
 001122 3169              ACALL   KS_Unistall
-  423: 			//GPIO_SetWakeupByCurrentState(BT_BUTTON_GPIO);
-  424: 			LED_all_shutdown();
+  425: 			//GPIO_SetWakeupByCurrentState(BT_BUTTON_GPIO);
+  426: 			LED_all_shutdown();
 001124 1207C5            LCALL   LED_all_shutdown
-  425: 			IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
+  427: 			IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
 001127 51A1              ACALL   IPC_WaitLpm
-001129         ?C0084?SYS:
-  426: 			while(1);
-001129 80FE              SJMP    ?C0084?SYS
-  427: 			break;
-  428: 			
-  429: 		case FIX_ENTER_LPM:
-00112B         ?C0086?SYS:
-  430: 			if (g_variable.delay_enter_lpm_timer ||g_variable.lockLpm ||g_variable.powerOn_timer ||g_variable.one_key_pres
+001129         ?C0083?SYS:
+  428: 			while(1);
+001129 80FE              SJMP    ?C0083?SYS
+  429: 			break;
+  430: 			
+  431: 		case FIX_ENTER_LPM:
+00112B         ?C0085?SYS:
+  432: 			if (g_variable.delay_enter_lpm_timer ||g_variable.lockLpm ||g_variable.powerOn_timer ||g_variable.one_key_pres
 >> s_wait_release_timer
 00112B 904CED            MOV     DPTR,#g_variable+02EH
 00112E E0                MOVX    A,@DPTR
-00112F 7012              JNZ     ?C0088?SYS
+00112F 7012              JNZ     ?C0087?SYS
 001131 904CEF            MOV     DPTR,#g_variable+030H
 001134 E0                MOVX    A,@DPTR
-001135 700C              JNZ     ?C0088?SYS
+001135 700C              JNZ     ?C0087?SYS
 001137 904CE5            MOV     DPTR,#g_variable+026H
 00113A E0                MOVX    A,@DPTR
-00113B 7006              JNZ     ?C0088?SYS
+00113B 7006              JNZ     ?C0087?SYS
 00113D 904CFB            MOV     DPTR,#g_variable+03CH
 001140 E0                MOVX    A,@DPTR
-001141 6004              JZ      ?C0087?SYS
-001143         ?C0088?SYS:
-  431: 			) 
-  432: 			{
-  433: 				IPC_AbandonLpm();
+001141 6004              JZ      ?C0086?SYS
+001143         ?C0087?SYS:
+  433: 			) 
+  434: 			{
+  435: 				IPC_AbandonLpm();
 001143 F1C3              ACALL   IPC_AbandonLpm
-  434: 				break;
-001145 80C7              SJMP    ?C0080?SYS
-  435: 			}
-001147         ?C0087?SYS:
-  436: 			else
-  437: 			{
-  438: 				KS_Unistall();
+  436: 				break;
+001145 80C7              SJMP    ?C0079?SYS
+  437: 			}
+001147         ?C0086?SYS:
+  438: 			else
+  439: 			{
+  440: 				KS_Unistall();
 001147 3169              ACALL   KS_Unistall
-  439: 				if(m_24g_enter_hibernate[0] == 0xff && m_24g_enter_hibernate[1] == 0xff && m_24g_enter_hibernate[2] == 0xff &
+  441: 				if(m_24g_enter_hibernate[0] == 0xff && m_24g_enter_hibernate[1] == 0xff && m_24g_enter_hibernate[2] == 0xff &
 >> & m_24g_enter_hibernate[3] == 0xff)
 001149 904D3D            MOV     DPTR,#m_24g_enter_hibernate
 00114C E0                MOVX    A,@DPTR
-00114D B4FF12            CJNE    A,#0FFH,?C0090?SYS
+00114D B4FF12            CJNE    A,#0FFH,?C0089?SYS
 001150 A3                INC     DPTR
 001151 E0                MOVX    A,@DPTR
-001152 B4FF0D            CJNE    A,#0FFH,?C0090?SYS
+001152 B4FF0D            CJNE    A,#0FFH,?C0089?SYS
 001155 A3                INC     DPTR
 001156 E0                MOVX    A,@DPTR
-001157 B4FF08            CJNE    A,#0FFH,?C0090?SYS
+001157 B4FF08            CJNE    A,#0FFH,?C0089?SYS
 00115A A3                INC     DPTR
 00115B E0                MOVX    A,@DPTR
-00115C B4FF03            CJNE    A,#0FFH,?C0090?SYS
-  440: 				{
-  441: 					LED_all_shutdown();
+00115C B4FF03            CJNE    A,#0FFH,?C0089?SYS
+  442: 				{
+  443: 					LED_all_shutdown();
 00115F 1207C5            LCALL   LED_all_shutdown
-  442: 				}	
-001162         ?C0090?SYS:
-  443: 				IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
+  444: 				}	
+001162         ?C0089?SYS:
+  445: 				IPC_WaitLpm();	/*<wait enter lpm,do nothing*/
 001162 51A1              ACALL   IPC_WaitLpm
-  444: 				break;
-001164 80A8              SJMP    ?C0080?SYS
-  445: 			}
-  446: 		}
-  447: 	}
-001166 80A6              SJMP    ?C0080?SYS
+  446: 				break;
+001164 80A8              SJMP    ?C0079?SYS
+  447: 			}
+  448: 		}
+  449: 	}
+001166 80A6              SJMP    ?C0079?SYS
 001168 22                RET     
 ----- FUNCTION YC_System_Main (END) -------
 
@@ -2489,7 +2489,7 @@
 0011BF 80B0              SJMP    ?C0037?KEYSCAN
 0011C1         ?C0038?KEYSCAN:
   229: 	GPIO_fillpd();
-0011C1 122563            LCALL   GPIO_fillpd
+0011C1 122557            LCALL   GPIO_fillpd
   230: 	
   231: 	temp = REG_GPIO_IN(0);
 0011C4 90811C            MOV     DPTR,#0811CH
@@ -2871,10 +2871,10 @@
 
 ----- FUNCTION kb_cb_init (BEGIN) -----
  FILE: 'sys.c'
-  404: static void kb_cb_init()
-  405: {
-  406: 	IPC_Initialize(&cb);
-  407: }
+  406: static void kb_cb_init()
+  407: {
+  408: 	IPC_Initialize(&cb);
+  409: }
 00136E 7B01              MOV     R3,#01H
 001370 7A4D              MOV     R2,#HIGH cb
 001372 79F1              MOV     R1,#LOW cb
@@ -3063,7 +3063,7 @@
 00142E 7B01              MOV     R3,#01H
 001430 7A0B              MOV     R2,#HIGH IIC_TempBuff+03H
 001432 7986              MOV     R1,#LOW IIC_TempBuff+03H
-001434 12244C            LCALL   _dmemcpy
+001434 12245D            LCALL   _dmemcpy
 001437 900B83            MOV     DPTR,#IIC_TempBuff
 00143A 74A0              MOV     A,#0A0H
 00143C F0                MOVX    @DPTR,A
@@ -3172,7 +3172,7 @@
 0014C1 7E0C              MOV     R6,#HIGH ipcReadBuff
 0014C3 7F4B              MOV     R7,#LOW ipcReadBuff
 0014C5 7D03              MOV     R5,#03H
-0014C7 1223EF            LCALL   _ipcRx
+0014C7 122400            LCALL   _ipcRx
 0014CA 904E84            MOV     DPTR,#pbuff
 0014CD E0                MOVX    A,@DPTR
 0014CE FB                MOV     R3,A
@@ -3326,7 +3326,7 @@
 00157A F0                MOVX    @DPTR,A
   313: 	
   314: 	KS_ScanMatrix();
-00157B 121E06            LCALL   KS_ScanMatrix
+00157B 121DFB            LCALL   KS_ScanMatrix
   315: 
   316: 	if (compare_str(ksSelMapCurr,ksSelMapCheck,KB_KSCAN_COL_NUM) 
 00157E 7A4D              MOV     R2,#HIGH ksSelMapCheck
@@ -3346,14 +3346,14 @@
 001594 7B01              MOV     R3,#01H
 001596 7A4D              MOV     R2,#HIGH ksSelMapCurr
 001598 79BC              MOV     R1,#LOW ksSelMapCurr
-00159A 1224BD            LCALL   _compare_str
+00159A 1224CE            LCALL   _compare_str
 00159D EF                MOV     A,R7
 00159E 6017              JZ      ?C0059?KEYSCAN
 0015A0 7B01              MOV     R3,#01H
 0015A2 7A4D              MOV     R2,#HIGH ksSelMapCurr
 0015A4 79BC              MOV     R1,#LOW ksSelMapCurr
 0015A6 7D14              MOV     R5,#014H
-0015A8 121F64            LCALL   _array_is_empty
+0015A8 121F59            LCALL   _array_is_empty
 0015AB EF                MOV     A,R7
 0015AC 7009              JNZ     ?C0059?KEYSCAN
   317: 		&& !array_is_empty(ksSelMapCurr,KB_KSCAN_COL_NUM))
@@ -3696,7 +3696,7 @@
 00174F 904E2B            MOV     DPTR,#key_value_temp
 001752 E0                MOVX    A,@DPTR
 001753 FF                MOV     R7,A
-001754 121C37            LCALL   _keyIn
+001754 121C2C            LCALL   _keyIn
   382: 					}
 001757 8008              SJMP    ?C0085?KEYSCAN
 001759         ?C0086?KEYSCAN:
@@ -3706,7 +3706,7 @@
 001759 904E2B            MOV     DPTR,#key_value_temp
 00175C E0                MOVX    A,@DPTR
 00175D FF                MOV     R7,A
-00175E 121C8D            LCALL   _keyOut
+00175E 121C82            LCALL   _keyOut
   386: 					}
   387: 				}
 001761         ?C0085?KEYSCAN:
@@ -3932,8 +3932,8 @@
 
 ----- FUNCTION _kb_multikey_setup (BEGIN) -----
  FILE: 'kb_process.c'
-  458: void kb_multikey_setup(tKSEVENT *pEvt)
-  459: {
+  457: void kb_multikey_setup(tKSEVENT *pEvt)
+  458: {
 00181D 904E6F            MOV     DPTR,#pEvt
 001820 EB                MOV     A,R3
 001821 F0                MOVX    @DPTR,A
@@ -3943,12 +3943,12 @@
 001825 A3                INC     DPTR
 001826 E9                MOV     A,R1
 001827 F0                MOVX    @DPTR,A
-  460: 	byte i = 0;
-  461: 	
+  459: 	byte i = 0;
+  460: 	
 001828 E4                CLR     A
 001829 A3                INC     DPTR
 00182A F0                MOVX    @DPTR,A
-  462: 	for (i = 0;i < 6;i++)
+  461: 	for (i = 0;i < 6;i++)
 00182B F0                MOVX    @DPTR,A
 00182C         ?C0115?KB_PROCESS:
 00182C 904E72            MOV     DPTR,#i
@@ -3958,8 +3958,8 @@
 001832 9406              SUBB    A,#06H
 001834 4002              JC      $ + 4H
 001836 41C9              AJMP    ?C0166?KB_PROCESS
-  463: 	{		
-  464: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
+  462: 	{		
+  463: 		if ((pEvt->ksPool[i] &0xF0) == 0xf0 
 001838 904E6F            MOV     DPTR,#pEvt
 00183B E0                MOVX    A,@DPTR
 00183C FB                MOV     R3,A
@@ -3991,32 +3991,32 @@
 00185F 6002              JZ      $ + 4H
 001861 41C1              AJMP    ?C0117?KB_PROCESS
 001863         ?C0119?KB_PROCESS:
-  465: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
-  466: 		{
-  467: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
+  464: 			|| (pEvt->ksPool[i] &0xD0) == 0xD0)
+  465: 		{
+  466: 			if (pEvt->ksPool[i] ==  HID_MULTIKEY_MEDIA) //media select
 001863 1203B6            LCALL   ?C?CLDPTR
 001866 FB                MOV     R3,A
 001867 B4F109            CJNE    A,#0F1H,?C0120?KB_PROCESS
-  468: 			{
-  469: 				kb_set_multikey(0x0183); 
+  467: 			{
+  468: 				kb_set_multikey(0x0183); 
 00186A 7F83              MOV     R7,#083H
 00186C 7E01              MOV     R6,#01H
 00186E 1217E7            LCALL   _kb_set_multikey
-  470: 			}
+  469: 			}
 001871 4196              AJMP    ?C0121?KB_PROCESS
 001873         ?C0120?KB_PROCESS:
-  471: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
+  470: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PALY) //play / pause
 001873 EB                MOV     A,R3
 001874 B4F209            CJNE    A,#0F2H,?C0122?KB_PROCESS
-  472: 			{ 
-  473: 				kb_set_multikey(0x00cd);
+  471: 			{ 
+  472: 				kb_set_multikey(0x00cd);
 001877 7FCD              MOV     R7,#0CDH
 001879 7E00              MOV     R6,#00H
 00187B 1217E7            LCALL   _kb_set_multikey
-  474: 			}
+  473: 			}
 00187E 4196              AJMP    ?C0121?KB_PROCESS
 001880         ?C0122?KB_PROCESS:
-  475: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
+  474: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_STOP)  //stop
 001880 904E6F            MOV     DPTR,#pEvt
 001883 E0                MOVX    A,@DPTR
 001884 FB                MOV     R3,A
@@ -4041,25 +4041,25 @@
 001899 1203B6            LCALL   ?C?CLDPTR
 00189C FB                MOV     R3,A
 00189D B4F307            CJNE    A,#0F3H,?C0124?KB_PROCESS
-  476: 			{
-  477: 				kb_set_multikey(0x00b7);
+  475: 			{
+  476: 				kb_set_multikey(0x00b7);
 0018A0 7FB7              MOV     R7,#0B7H
 0018A2 1217E7            LCALL   _kb_set_multikey
-  478: 			}
+  477: 			}
 0018A5 4196              AJMP    ?C0121?KB_PROCESS
 0018A7         ?C0124?KB_PROCESS:
-  479: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
+  478: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_PRE_TRACK) //pre Track
 0018A7 EB                MOV     A,R3
 0018A8 B4F409            CJNE    A,#0F4H,?C0126?KB_PROCESS
-  480: 			{
-  481: 				kb_set_multikey(0x00b6);
+  479: 			{
+  480: 				kb_set_multikey(0x00b6);
 0018AB 7FB6              MOV     R7,#0B6H
 0018AD 7E00              MOV     R6,#00H
 0018AF 1217E7            LCALL   _kb_set_multikey
-  482: 			}
+  481: 			}
 0018B2 4196              AJMP    ?C0121?KB_PROCESS
 0018B4         ?C0126?KB_PROCESS:
-  483: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
+  482: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_NEXT_TRACK) //next Track
 0018B4 904E6F            MOV     DPTR,#pEvt
 0018B7 E0                MOVX    A,@DPTR
 0018B8 FB                MOV     R3,A
@@ -4084,25 +4084,25 @@
 0018CD 1203B6            LCALL   ?C?CLDPTR
 0018D0 FB                MOV     R3,A
 0018D1 B4F507            CJNE    A,#0F5H,?C0128?KB_PROCESS
-  484: 			{
-  485: 				kb_set_multikey(0x00b5);
+  483: 			{
+  484: 				kb_set_multikey(0x00b5);
 0018D4 7FB5              MOV     R7,#0B5H
 0018D6 1217E7            LCALL   _kb_set_multikey
-  486: 			}
+  485: 			}
 0018D9 4196              AJMP    ?C0121?KB_PROCESS
 0018DB         ?C0128?KB_PROCESS:
-  487: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
+  486: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_DOWN) //vol-
 0018DB EB                MOV     A,R3
 0018DC B4F609            CJNE    A,#0F6H,?C0130?KB_PROCESS
-  488: 			{
-  489: 				kb_set_multikey(0x00ea);
+  487: 			{
+  488: 				kb_set_multikey(0x00ea);
 0018DF 7FEA              MOV     R7,#0EAH
 0018E1 7E00              MOV     R6,#00H
 0018E3 1217E7            LCALL   _kb_set_multikey
-  490: 			}
+  489: 			}
 0018E6 4196              AJMP    ?C0121?KB_PROCESS
 0018E8         ?C0130?KB_PROCESS:
-  491: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
+  490: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_VOL_UP) //vol+
 0018E8 904E6F            MOV     DPTR,#pEvt
 0018EB E0                MOVX    A,@DPTR
 0018EC FB                MOV     R3,A
@@ -4127,25 +4127,25 @@
 001901 1203B6            LCALL   ?C?CLDPTR
 001904 FB                MOV     R3,A
 001905 B4F707            CJNE    A,#0F7H,?C0132?KB_PROCESS
-  492: 			{
-  493: 				kb_set_multikey(0x00e9);
+  491: 			{
+  492: 				kb_set_multikey(0x00e9);
 001908 7FE9              MOV     R7,#0E9H
 00190A 1217E7            LCALL   _kb_set_multikey
-  494: 			}
+  493: 			}
 00190D 4196              AJMP    ?C0121?KB_PROCESS
 00190F         ?C0132?KB_PROCESS:
-  495: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
+  494: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MUTE) //mute
 00190F EB                MOV     A,R3
 001910 B4F809            CJNE    A,#0F8H,?C0134?KB_PROCESS
-  496: 			{
-  497: 				kb_set_multikey(0x00e2);
+  495: 			{
+  496: 				kb_set_multikey(0x00e2);
 001913 7FE2              MOV     R7,#0E2H
 001915 7E00              MOV     R6,#00H
 001917 1217E7            LCALL   _kb_set_multikey
-  498: 			}
+  497: 			}
 00191A 4196              AJMP    ?C0121?KB_PROCESS
 00191C         ?C0134?KB_PROCESS:
-  499: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
+  498: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_MY_COMPUTER) 
 00191C 904E6F            MOV     DPTR,#pEvt
 00191F E0                MOVX    A,@DPTR
 001920 FB                MOV     R3,A
@@ -4170,26 +4170,26 @@
 001935 1203B6            LCALL   ?C?CLDPTR
 001938 FB                MOV     R3,A
 001939 B4F908            CJNE    A,#0F9H,?C0136?KB_PROCESS
-  500: 			{
-  501: 				kb_set_multikey(0x0194);
+  499: 			{
+  500: 				kb_set_multikey(0x0194);
 00193C 7F94              MOV     R7,#094H
 00193E 0E                INC     R6
 00193F 1217E7            LCALL   _kb_set_multikey
-  502: 			}
+  501: 			}
 001942 4196              AJMP    ?C0121?KB_PROCESS
 001944         ?C0136?KB_PROCESS:
-  503: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
+  502: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_MAIL)  //mail
 001944 EB                MOV     A,R3
 001945 B4FA09            CJNE    A,#0FAH,?C0138?KB_PROCESS
-  504: 			{
-  505: 				kb_set_multikey(0x018a);//mail
+  503: 			{
+  504: 				kb_set_multikey(0x018a);//mail
 001948 7F8A              MOV     R7,#08AH
 00194A 7E01              MOV     R6,#01H
 00194C 1217E7            LCALL   _kb_set_multikey
-  506: 			}
+  505: 			}
 00194F 4196              AJMP    ?C0121?KB_PROCESS
 001951         ?C0138?KB_PROCESS:
-  507: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
+  506: 			else	if (pEvt->ksPool[i] ==  HID_MULTIKEY_CALCULATOR) //calculator
 001951 904E6F            MOV     DPTR,#pEvt
 001954 E0                MOVX    A,@DPTR
 001955 FB                MOV     R3,A
@@ -4214,26 +4214,26 @@
 00196A 1203B6            LCALL   ?C?CLDPTR
 00196D FB                MOV     R3,A
 00196E B4FB08            CJNE    A,#0FBH,?C0140?KB_PROCESS
-  508: 			{
-  509: 				kb_set_multikey(0x0192);
+  507: 			{
+  508: 				kb_set_multikey(0x0192);
 001971 7F92              MOV     R7,#092H
 001973 0E                INC     R6
 001974 1217E7            LCALL   _kb_set_multikey
-  510: 			}
+  509: 			}
 001977 4196              AJMP    ?C0121?KB_PROCESS
 001979         ?C0140?KB_PROCESS:
-  511: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
+  510: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FAVORITES) 
 001979 EB                MOV     A,R3
 00197A B4D009            CJNE    A,#0D0H,?C0142?KB_PROCESS
-  512: 			{
-  513: 				kb_set_multikey(0x022a);//www Favorites
+  511: 			{
+  512: 				kb_set_multikey(0x022a);//www Favorites
 00197D 7F2A              MOV     R7,#02AH
 00197F 7E02              MOV     R6,#02H
 001981 1217E7            LCALL   _kb_set_multikey
-  514: 			}
+  513: 			}
 001984 4196              AJMP    ?C0121?KB_PROCESS
 001986         ?C0142?KB_PROCESS:
-  515: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
+  514: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_FORWARD)  
 001986 904E6F            MOV     DPTR,#pEvt
 001989 E0                MOVX    A,@DPTR
 00198A FB                MOV     R3,A
@@ -4258,26 +4258,26 @@
 00199F 1203B6            LCALL   ?C?CLDPTR
 0019A2 FB                MOV     R3,A
 0019A3 B4D109            CJNE    A,#0D1H,?C0144?KB_PROCESS
-  516: 			{
-  517: 				kb_set_multikey(0x0225);
+  515: 			{
+  516: 				kb_set_multikey(0x0225);
 0019A6 7F25              MOV     R7,#025H
 0019A8 7E02              MOV     R6,#02H
 0019AA 1217E7            LCALL   _kb_set_multikey
-  518: 			}
+  517: 			}
 0019AD 4196              AJMP    ?C0121?KB_PROCESS
 0019AF         ?C0144?KB_PROCESS:
-  519: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
+  518: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_STOP)  //www Stop
 0019AF EB                MOV     A,R3
 0019B0 B4D309            CJNE    A,#0D3H,?C0146?KB_PROCESS
-  520: 			{
-  521: 				kb_set_multikey(0x0226);
+  519: 			{
+  520: 				kb_set_multikey(0x0226);
 0019B3 7F26              MOV     R7,#026H
 0019B5 7E02              MOV     R6,#02H
 0019B7 1217E7            LCALL   _kb_set_multikey
-  522: 			}
+  521: 			}
 0019BA 4196              AJMP    ?C0121?KB_PROCESS
 0019BC         ?C0146?KB_PROCESS:
-  523: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
+  522: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_BACK)  
 0019BC 904E6F            MOV     DPTR,#pEvt
 0019BF E0                MOVX    A,@DPTR
 0019C0 FB                MOV     R3,A
@@ -4302,27 +4302,27 @@
 0019D5 1203B6            LCALL   ?C?CLDPTR
 0019D8 FB                MOV     R3,A
 0019D9 B4D209            CJNE    A,#0D2H,?C0148?KB_PROCESS
-  524: 			{
-  525: 				kb_set_multikey(0x0224);
+  523: 			{
+  524: 				kb_set_multikey(0x0224);
 0019DC 7F24              MOV     R7,#024H
 0019DE 7E02              MOV     R6,#02H
 0019E0 1217E7            LCALL   _kb_set_multikey
-  526: 			}
+  525: 			}
 0019E3 4196              AJMP    ?C0121?KB_PROCESS
 0019E5         ?C0148?KB_PROCESS:
-  527: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
+  526: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_REFRESH) //www refresh
 0019E5 EB                MOV     A,R3
 0019E6 B4D409            CJNE    A,#0D4H,?C0150?KB_PROCESS
-  528: 			{
-  529: 				kb_set_multikey(0x0227);
+  527: 			{
+  528: 				kb_set_multikey(0x0227);
 0019E9 7F27              MOV     R7,#027H
 0019EB 7E02              MOV     R6,#02H
 0019ED 1217E7            LCALL   _kb_set_multikey
-  530: 			}
+  529: 			}
 0019F0 4196              AJMP    ?C0121?KB_PROCESS
 0019F2         ?C0150?KB_PROCESS:
-  531: 			
-  532: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
+  530: 			
+  531: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_SEARCH)  //www search
 0019F2 904E6F            MOV     DPTR,#pEvt
 0019F5 E0                MOVX    A,@DPTR
 0019F6 FB                MOV     R3,A
@@ -4347,26 +4347,26 @@
 001A0B 1203B6            LCALL   ?C?CLDPTR
 001A0E FB                MOV     R3,A
 001A0F B4D509            CJNE    A,#0D5H,?C0152?KB_PROCESS
-  533: 			{
-  534: 				kb_set_multikey(0x0221);
+  532: 			{
+  533: 				kb_set_multikey(0x0221);
 001A12 7F21              MOV     R7,#021H
 001A14 7E02              MOV     R6,#02H
 001A16 1217E7            LCALL   _kb_set_multikey
-  535: 			}
+  534: 			}
 001A19 807B              SJMP    ?C0121?KB_PROCESS
 001A1B         ?C0152?KB_PROCESS:
-  536: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
+  535: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_AC_HOME)
 001A1B EB                MOV     A,R3
 001A1C B4D609            CJNE    A,#0D6H,?C0154?KB_PROCESS
-  537: 			{
-  538: 				kb_set_multikey(0x0223);
+  536: 			{
+  537: 				kb_set_multikey(0x0223);
 001A1F 7F23              MOV     R7,#023H
 001A21 7E02              MOV     R6,#02H
 001A23 1217E7            LCALL   _kb_set_multikey
-  539: 			}
+  538: 			}
 001A26 806E              SJMP    ?C0121?KB_PROCESS
 001A28         ?C0154?KB_PROCESS:
-  540: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
+  539: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_DOWN)
 001A28 904E6F            MOV     DPTR,#pEvt
 001A2B E0                MOVX    A,@DPTR
 001A2C FB                MOV     R3,A
@@ -4391,26 +4391,26 @@
 001A41 1203B6            LCALL   ?C?CLDPTR
 001A44 FB                MOV     R3,A
 001A45 B4D707            CJNE    A,#0D7H,?C0156?KB_PROCESS
-  541: 			{
-  542: 				kb_set_multikey(0x0070);
+  540: 			{
+  541: 				kb_set_multikey(0x0070);
 001A48 7F70              MOV     R7,#070H
 001A4A 1217E7            LCALL   _kb_set_multikey
-  543: 			}
+  542: 			}
 001A4D 8047              SJMP    ?C0121?KB_PROCESS
 001A4F         ?C0156?KB_PROCESS:
-  544: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
+  543: 			else if (pEvt->ksPool[i] ==  HID_MULTIKEY_LIGHT_UP)
 001A4F EB                MOV     A,R3
 001A50 B4D809            CJNE    A,#0D8H,?C0158?KB_PROCESS
-  545: 			{
-  546: 				kb_set_multikey(0x006f);
+  544: 			{
+  545: 				kb_set_multikey(0x006f);
 001A53 7F6F              MOV     R7,#06FH
 001A55 7E00              MOV     R6,#00H
 001A57 1217E7            LCALL   _kb_set_multikey
-  547: 			}
+  546: 			}
 001A5A 803A              SJMP    ?C0121?KB_PROCESS
 001A5C         ?C0158?KB_PROCESS:
-  548: 		#ifdef SYSTEM_CONTROL_ENABLE
-  549: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
+  547: 		#ifdef SYSTEM_CONTROL_ENABLE
+  548: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_POWER_DOWN)
 001A5C 904E6F            MOV     DPTR,#pEvt
 001A5F E0                MOVX    A,@DPTR
 001A60 FB                MOV     R3,A
@@ -4435,40 +4435,40 @@
 001A75 1203B6            LCALL   ?C?CLDPTR
 001A78 FE                MOV     R6,A
 001A79 B4DD06            CJNE    A,#0DDH,?C0160?KB_PROCESS
-  550: 		      	{
-  551: 		        	kb_set_systemkey(0x01);
+  549: 		      	{
+  550: 		        	kb_set_systemkey(0x01);
 001A7C 7F01              MOV     R7,#01H
 001A7E 1102              ACALL   _kb_set_systemkey
-  552: 		      	}
+  551: 		      	}
 001A80 8014              SJMP    ?C0121?KB_PROCESS
 001A82         ?C0160?KB_PROCESS:
-  553: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
+  552: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_SLEEP)
 001A82 EE                MOV     A,R6
 001A83 B4DE06            CJNE    A,#0DEH,?C0162?KB_PROCESS
-  554: 		      	{
-  555: 		        	kb_set_systemkey(0x02);
+  553: 		      	{
+  554: 		        	kb_set_systemkey(0x02);
 001A86 7F02              MOV     R7,#02H
 001A88 1102              ACALL   _kb_set_systemkey
-  556: 		      	}
+  555: 		      	}
 001A8A 800A              SJMP    ?C0121?KB_PROCESS
 001A8C         ?C0162?KB_PROCESS:
-  557: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
+  556: 		      	else if (pEvt->ksPool[i] ==  HID_SYSTEM_KEY_WAKE_UP)
 001A8C 1203B6            LCALL   ?C?CLDPTR
 001A8F B4DF04            CJNE    A,#0DFH,?C0121?KB_PROCESS
-  558: 		      	{
-  559: 		        	kb_set_systemkey(0x04);
+  557: 		      	{
+  558: 		        	kb_set_systemkey(0x04);
 001A92 7F04              MOV     R7,#04H
 001A94 1102              ACALL   _kb_set_systemkey
-  560: 		      	}
+  559: 		      	}
 001A96         ?C0121?KB_PROCESS:
-  561: 		#endif
-  562: 			
-  563: 			if(mult_key_status == KEY_WAIT_RELEASE)
+  560: 		#endif
+  561: 			
+  562: 			if(mult_key_status == KEY_WAIT_RELEASE)
 001A96 904DE7            MOV     DPTR,#mult_key_status
 001A99 E0                MOVX    A,@DPTR
 001A9A B40224            CJNE    A,#02H,?C0117?KB_PROCESS
-  564: 			{
-  565: 				mult_key_value = pEvt->ksPool[i];
+  563: 			{
+  564: 				mult_key_value = pEvt->ksPool[i];
 001A9D 904E6F            MOV     DPTR,#pEvt
 001AA0 E0                MOVX    A,@DPTR
 001AA1 FB                MOV     R3,A
@@ -4493,19 +4493,19 @@
 001AB6 1203B6            LCALL   ?C?CLDPTR
 001AB9 904DE6            MOV     DPTR,#mult_key_value
 001ABC F0                MOVX    @DPTR,A
-  566: 				pEvt->ksPool[i] = 0;
+  565: 				pEvt->ksPool[i] = 0;
 001ABD E4                CLR     A
 001ABE 1203FC            LCALL   ?C?CSTPTR
-  567: 			}
-  568: 		}
-  569: 	}
+  566: 			}
+  567: 		}
+  568: 	}
 001AC1         ?C0117?KB_PROCESS:
 001AC1 904E72            MOV     DPTR,#i
 001AC4 E0                MOVX    A,@DPTR
 001AC5 04                INC     A
 001AC6 F0                MOVX    @DPTR,A
 001AC7 012C              AJMP    ?C0115?KB_PROCESS
-  570: }
+  569: }
 001AC9         ?C0166?KB_PROCESS:
 001AC9 22                RET     
 ----- FUNCTION _kb_multikey_setup (END) -------
@@ -4618,253 +4618,246 @@
  FILE: 'kb_process.c'
   375: byte key_fn_function(byte state ,byte key_value)
   376: {
-;---- Variable 'state' assigned to Register 'R6' ----
-001B2D AE07              MOV     R6,AR7
 ;---- Variable 'key_value' assigned to Register 'R5' ----
+;---- Variable 'state' assigned to Register 'R7' ----
   377: 	byte temp = 0;
   378: 
-001B2F E4                CLR     A
-001B30 904E96            MOV     DPTR,#temp
-001B33 F0                MOVX    @DPTR,A
+001B2D E4                CLR     A
+001B2E 904E96            MOV     DPTR,#temp
+001B31 F0                MOVX    @DPTR,A
   379: 	if(state & 1)
-001B34 EE                MOV     A,R6
-001B35 30E005            JNB     ACC.0,?C0091?KB_PROCESS
+001B32 EF                MOV     A,R7
+001B33 30E005            JNB     ACC.0,?C0091?KB_PROCESS
   380: 		g_variable.one_key_press_wait_release_timer = 0;
-001B38 E4                CLR     A
-001B39 904CFB            MOV     DPTR,#g_variable+03CH
-001B3C F0                MOVX    @DPTR,A
-001B3D         ?C0091?KB_PROCESS:
+001B36 E4                CLR     A
+001B37 904CFB            MOV     DPTR,#g_variable+03CH
+001B3A F0                MOVX    @DPTR,A
+001B3B         ?C0091?KB_PROCESS:
   381: 
   382: 	temp = key_value;
-001B3D 904E96            MOV     DPTR,#temp
-001B40 ED                MOV     A,R5
-001B41 F0                MOVX    @DPTR,A
+001B3B 904E96            MOV     DPTR,#temp
+001B3E ED                MOV     A,R5
+001B3F F0                MOVX    @DPTR,A
   383: 	if(fn_flag == 1)			// Fn lock
-001B42 904DDB            MOV     DPTR,#fn_flag
-001B45 E0                MOVX    A,@DPTR
-001B46 6401              XRL     A,#01H
-001B48 6002              JZ      $ + 4H
-001B4A 8131              AJMP    ?C0092?KB_PROCESS
+001B40 904DDB            MOV     DPTR,#fn_flag
+001B43 E0                MOVX    A,@DPTR
+001B44 6401              XRL     A,#01H
+001B46 6002              JZ      $ + 4H
+001B48 8126              AJMP    ?C0092?KB_PROCESS
   384: 	{
   385: 		
   386: 		switch (key_value)
-001B4C ED                MOV     A,R5
-001B4D 120564            LCALL   ?C?CCASE
-001B50 1B8D              DW      ?C0094?KB_PROCESS
-001B52 13                DB      013H
-001B53 1BA4              DW      ?C0096?KB_PROCESS
-001B55 1B                DB      01BH
-001B56 1B95              DW      ?C0095?KB_PROCESS
-001B58 1D                DB      01DH
-001B59 1BD3              DW      ?C0101?KB_PROCESS
-001B5B 3A                DB      03AH
-001B5C 1BDB              DW      ?C0102?KB_PROCESS
-001B5E 3B                DB      03BH
-001B5F 1BE3              DW      ?C0103?KB_PROCESS
-001B61 3C                DB      03CH
-001B62 1BEB              DW      ?C0104?KB_PROCESS
-001B64 3D                DB      03DH
-001B65 1BF3              DW      ?C0105?KB_PROCESS
-001B67 3E                DB      03EH
-001B68 1BFB              DW      ?C0106?KB_PROCESS
-001B6A 3F                DB      03FH
-001B6B 1C03              DW      ?C0107?KB_PROCESS
-001B6D 40                DB      040H
-001B6E 1C0B              DW      ?C0108?KB_PROCESS
-001B70 41                DB      041H
-001B71 1C13              DW      ?C0109?KB_PROCESS
-001B73 42                DB      042H
-001B74 1C1B              DW      ?C0110?KB_PROCESS
-001B76 43                DB      043H
-001B77 1C23              DW      ?C0111?KB_PROCESS
-001B79 44                DB      044H
-001B7A 1C2B              DW      ?C0112?KB_PROCESS
-001B7C 45                DB      045H
-001B7D 1BCB              DW      ?C0100?KB_PROCESS
-001B7F 4F                DB      04FH
-001B80 1BC3              DW      ?C0099?KB_PROCESS
-001B82 50                DB      050H
-001B83 1BBB              DW      ?C0098?KB_PROCESS
-001B85 51                DB      051H
-001B86 1BB3              DW      ?C0097?KB_PROCESS
-001B88 52                DB      052H
-001B89 0000              DW      00H
-001B8B 1C31              DW      ?C0092?KB_PROCESS
+001B4A ED                MOV     A,R5
+001B4B 120564            LCALL   ?C?CCASE
+001B4E 1B8B              DW      ?C0094?KB_PROCESS
+001B50 13                DB      013H
+001B51 1BA0              DW      ?C0096?KB_PROCESS
+001B53 1B                DB      01BH
+001B54 1B93              DW      ?C0095?KB_PROCESS
+001B56 1D                DB      01DH
+001B57 1BC8              DW      ?C0101?KB_PROCESS
+001B59 3A                DB      03AH
+001B5A 1BD0              DW      ?C0102?KB_PROCESS
+001B5C 3B                DB      03BH
+001B5D 1BD8              DW      ?C0103?KB_PROCESS
+001B5F 3C                DB      03CH
+001B60 1BE0              DW      ?C0104?KB_PROCESS
+001B62 3D                DB      03DH
+001B63 1BE8              DW      ?C0105?KB_PROCESS
+001B65 3E                DB      03EH
+001B66 1BF0              DW      ?C0106?KB_PROCESS
+001B68 3F                DB      03FH
+001B69 1BF8              DW      ?C0107?KB_PROCESS
+001B6B 40                DB      040H
+001B6C 1C00              DW      ?C0108?KB_PROCESS
+001B6E 41                DB      041H
+001B6F 1C08              DW      ?C0109?KB_PROCESS
+001B71 42                DB      042H
+001B72 1C10              DW      ?C0110?KB_PROCESS
+001B74 43                DB      043H
+001B75 1C18              DW      ?C0111?KB_PROCESS
+001B77 44                DB      044H
+001B78 1C20              DW      ?C0112?KB_PROCESS
+001B7A 45                DB      045H
+001B7B 1BC0              DW      ?C0100?KB_PROCESS
+001B7D 4F                DB      04FH
+001B7E 1BB8              DW      ?C0099?KB_PROCESS
+001B80 50                DB      050H
+001B81 1BB0              DW      ?C0098?KB_PROCESS
+001B83 51                DB      051H
+001B84 1BA8              DW      ?C0097?KB_PROCESS
+001B86 52                DB      052H
+001B87 0000              DW      00H
+001B89 1C26              DW      ?C0092?KB_PROCESS
   387: 		{ 
   388: 			case HID_KEY_P:
-001B8D         ?C0094?KB_PROCESS:
+001B8B         ?C0094?KB_PROCESS:
   389: 				temp = HID_KEY_PRINT_SCREEN;
-001B8D 904E96            MOV     DPTR,#temp
-001B90 7446              MOV     A,#046H
-001B92 F0                MOVX    @DPTR,A
+001B8B 904E96            MOV     DPTR,#temp
+001B8E 7446              MOV     A,#046H
+001B90 F0                MOVX    @DPTR,A
   390: 				break;
-001B93 8131              AJMP    ?C0092?KB_PROCESS
+001B91 8126              AJMP    ?C0092?KB_PROCESS
   391: 			case HID_KEY_Z:
-001B95         ?C0095?KB_PROCESS:
-  392: 				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_GREAT_THAN);
-001B95 AF06              MOV     R7,AR6
-001B97 7B37              MOV     R3,#037H
-001B99 7D02              MOV     R5,#02H
-001B9B 7108              ACALL   _kb_combination_key_press
+001B93         ?C0095?KB_PROCESS:
+  392: 				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_K45);	// spanish >
+001B93 7B64              MOV     R3,#064H
+001B95 7D02              MOV     R5,#02H
+001B97 7108              ACALL   _kb_combination_key_press
   393: 				temp = HID_KEY_NULL;
-001B9D E4                CLR     A
-001B9E 904E96            MOV     DPTR,#temp
-001BA1 F0                MOVX    @DPTR,A
-  394: 				break;	
-001BA2 8131              AJMP    ?C0092?KB_PROCESS
+001B99 E4                CLR     A
+001B9A 904E96            MOV     DPTR,#temp
+001B9D F0                MOVX    @DPTR,A
+  394: 				break;				
+001B9E 8126              AJMP    ?C0092?KB_PROCESS
   395: 			case HID_KEY_X:
-001BA4         ?C0096?KB_PROCESS:
-  396: 				kb_combination_key_press(state,KS_SEL_LSHIFT,HID_KEY_LESS_THAN);
-001BA4 AF06              MOV     R7,AR6
-001BA6 7B36              MOV     R3,#036H
-001BA8 7D02              MOV     R5,#02H
-001BAA 7108              ACALL   _kb_combination_key_press
-  397: 				temp = HID_KEY_NULL;
-001BAC E4                CLR     A
-001BAD 904E96            MOV     DPTR,#temp
-001BB0 F0                MOVX    @DPTR,A
-  398: 				break;
-001BB1 807E              SJMP    ?C0092?KB_PROCESS
-  399: 			case HID_KEY_UP_ARROW:
-001BB3         ?C0097?KB_PROCESS:
-  400: 				temp = HID_KEY_PAGE_UP;
-001BB3 904E96            MOV     DPTR,#temp
-001BB6 744B              MOV     A,#04BH
-001BB8 F0                MOVX    @DPTR,A
-  401: 				break;	
-001BB9 8076              SJMP    ?C0092?KB_PROCESS
-  402: 			case HID_KEY_DOWN_ARROW:
-001BBB         ?C0098?KB_PROCESS:
-  403: 				temp = HID_KEY_PAGE_DOWN;
-001BBB 904E96            MOV     DPTR,#temp
-001BBE 744E              MOV     A,#04EH
-001BC0 F0                MOVX    @DPTR,A
-  404: 				break;
-001BC1 806E              SJMP    ?C0092?KB_PROCESS
-  405: 			case HID_KEY_LEFT_ARROW:
-001BC3         ?C0099?KB_PROCESS:
-  406: 				temp = HID_KEY_HOME;
-001BC3 904E96            MOV     DPTR,#temp
-001BC6 744A              MOV     A,#04AH
-001BC8 F0                MOVX    @DPTR,A
-  407: 				break;	
-001BC9 8066              SJMP    ?C0092?KB_PROCESS
-  408: 			case HID_KEY_RIGHT_ARROW:
-001BCB         ?C0100?KB_PROCESS:
-  409: 				temp = HID_KEY_END;
-001BCB 904E96            MOV     DPTR,#temp
-001BCE 744D              MOV     A,#04DH
-001BD0 F0                MOVX    @DPTR,A
-  410: 				break;	
-001BD1 805E              SJMP    ?C0092?KB_PROCESS
-  411: 				
-  412: 			case HID_KEY_F1:
-001BD3         ?C0101?KB_PROCESS:
-  413: 				temp = HID_MULTIKEY_MEDIA;
-001BD3 904E96            MOV     DPTR,#temp
-001BD6 74F1              MOV     A,#0F1H
-001BD8 F0                MOVX    @DPTR,A
-  414: 				break;
-001BD9 8056              SJMP    ?C0092?KB_PROCESS
-  415: 			case HID_KEY_F2:
-001BDB         ?C0102?KB_PROCESS:
-  416: 				temp = HID_MULTIKEY_VOL_DOWN;
-001BDB 904E96            MOV     DPTR,#temp
-001BDE 74F6              MOV     A,#0F6H
-001BE0 F0                MOVX    @DPTR,A
-  417: 				break;
-001BE1 804E              SJMP    ?C0092?KB_PROCESS
-  418: 			case HID_KEY_F3:
-001BE3         ?C0103?KB_PROCESS:
-  419: 				temp = HID_MULTIKEY_VOL_UP;
-001BE3 904E96            MOV     DPTR,#temp
-001BE6 74F7              MOV     A,#0F7H
-001BE8 F0                MOVX    @DPTR,A
-  420: 				break;
-001BE9 8046              SJMP    ?C0092?KB_PROCESS
-  421: 			case HID_KEY_F4:
-001BEB         ?C0104?KB_PROCESS:
-  422: 				temp = HID_MULTIKEY_MUTE;
-001BEB 904E96            MOV     DPTR,#temp
-001BEE 74F8              MOV     A,#0F8H
-001BF0 F0                MOVX    @DPTR,A
-  423: 				break;
-001BF1 803E              SJMP    ?C0092?KB_PROCESS
-  424: 			case HID_KEY_F5:
-001BF3         ?C0105?KB_PROCESS:
-  425: 				temp = HID_MULTIKEY_PRE_TRACK;
-001BF3 904E96            MOV     DPTR,#temp
-001BF6 74F4              MOV     A,#0F4H
-001BF8 F0                MOVX    @DPTR,A
-  426: 				break;
-001BF9 8036              SJMP    ?C0092?KB_PROCESS
-  427: 			case HID_KEY_F6:
-001BFB         ?C0106?KB_PROCESS:
-  428: 				temp = HID_MULTIKEY_NEXT_TRACK;
-001BFB 904E96            MOV     DPTR,#temp
-001BFE 74F5              MOV     A,#0F5H
-001C00 F0                MOVX    @DPTR,A
-  429: 				break;
-001C01 802E              SJMP    ?C0092?KB_PROCESS
-  430: 			case HID_KEY_F7:
-001C03         ?C0107?KB_PROCESS:
-  431: 				temp = HID_MULTIKEY_PALY;
-001C03 904E96            MOV     DPTR,#temp
-001C06 74F2              MOV     A,#0F2H
-001C08 F0                MOVX    @DPTR,A
-  432: 				break;
-001C09 8026              SJMP    ?C0092?KB_PROCESS
-  433: 			case HID_KEY_F8:
-001C0B         ?C0108?KB_PROCESS:
-  434: 				temp = HID_MULTIKEY_STOP;
-001C0B 904E96            MOV     DPTR,#temp
-001C0E 74F3              MOV     A,#0F3H
-001C10 F0                MOVX    @DPTR,A
-  435: 				break;
-001C11 801E              SJMP    ?C0092?KB_PROCESS
-  436: 			case HID_KEY_F9:
-001C13         ?C0109?KB_PROCESS:
-  437: 				temp = HID_MULTIKEY_AC_HOME;
-001C13 904E96            MOV     DPTR,#temp
-001C16 74D6              MOV     A,#0D6H
-001C18 F0                MOVX    @DPTR,A
-  438: 				break;
-001C19 8016              SJMP    ?C0092?KB_PROCESS
-  439: 			case HID_KEY_F10:
-001C1B         ?C0110?KB_PROCESS:
-  440: 				temp = HID_MULTIKEY_MAIL;
-001C1B 904E96            MOV     DPTR,#temp
-001C1E 74FA              MOV     A,#0FAH
-001C20 F0                MOVX    @DPTR,A
-  441: 				break;
-001C21 800E              SJMP    ?C0092?KB_PROCESS
-  442: 			case HID_KEY_F11:
-001C23         ?C0111?KB_PROCESS:
-  443: 				temp = HID_MULTIKEY_MY_COMPUTER;
-001C23 904E96            MOV     DPTR,#temp
-001C26 74F9              MOV     A,#0F9H
-001C28 F0                MOVX    @DPTR,A
-  444: 				break;
-001C29 8006              SJMP    ?C0092?KB_PROCESS
-  445: 			case HID_KEY_F12:
-001C2B         ?C0112?KB_PROCESS:
-  446: 				temp = HID_MULTIKEY_AC_FAVORITES;
-001C2B 904E96            MOV     DPTR,#temp
-001C2E 74D0              MOV     A,#0D0H
-001C30 F0                MOVX    @DPTR,A
-  447: 				break;
-  448: 			default :
-  449: 				break;
-  450: 		}
-  451: 	}
-001C31         ?C0092?KB_PROCESS:
-  452: 
-  453: 	return temp;
-001C31 904E96            MOV     DPTR,#temp
-001C34 E0                MOVX    A,@DPTR
-001C35 FF                MOV     R7,A
-  454: }
-001C36 22                RET     
+001BA0         ?C0096?KB_PROCESS:
+  396: 				temp = HID_KEY_K45;		// spanish <
+001BA0 904E96            MOV     DPTR,#temp
+001BA3 7464              MOV     A,#064H
+001BA5 F0                MOVX    @DPTR,A
+  397: 				break;	
+001BA6 807E              SJMP    ?C0092?KB_PROCESS
+  398: 			case HID_KEY_UP_ARROW:
+001BA8         ?C0097?KB_PROCESS:
+  399: 				temp = HID_KEY_PAGE_UP;
+001BA8 904E96            MOV     DPTR,#temp
+001BAB 744B              MOV     A,#04BH
+001BAD F0                MOVX    @DPTR,A
+  400: 				break;	
+001BAE 8076              SJMP    ?C0092?KB_PROCESS
+  401: 			case HID_KEY_DOWN_ARROW:
+001BB0         ?C0098?KB_PROCESS:
+  402: 				temp = HID_KEY_PAGE_DOWN;
+001BB0 904E96            MOV     DPTR,#temp
+001BB3 744E              MOV     A,#04EH
+001BB5 F0                MOVX    @DPTR,A
+  403: 				break;
+001BB6 806E              SJMP    ?C0092?KB_PROCESS
+  404: 			case HID_KEY_LEFT_ARROW:
+001BB8         ?C0099?KB_PROCESS:
+  405: 				temp = HID_KEY_HOME;
+001BB8 904E96            MOV     DPTR,#temp
+001BBB 744A              MOV     A,#04AH
+001BBD F0                MOVX    @DPTR,A
+  406: 				break;	
+001BBE 8066              SJMP    ?C0092?KB_PROCESS
+  407: 			case HID_KEY_RIGHT_ARROW:
+001BC0         ?C0100?KB_PROCESS:
+  408: 				temp = HID_KEY_END;
+001BC0 904E96            MOV     DPTR,#temp
+001BC3 744D              MOV     A,#04DH
+001BC5 F0                MOVX    @DPTR,A
+  409: 				break;	
+001BC6 805E              SJMP    ?C0092?KB_PROCESS
+  410: 				
+  411: 			case HID_KEY_F1:
+001BC8         ?C0101?KB_PROCESS:
+  412: 				temp = HID_MULTIKEY_MEDIA;
+001BC8 904E96            MOV     DPTR,#temp
+001BCB 74F1              MOV     A,#0F1H
+001BCD F0                MOVX    @DPTR,A
+  413: 				break;
+001BCE 8056              SJMP    ?C0092?KB_PROCESS
+  414: 			case HID_KEY_F2:
+001BD0         ?C0102?KB_PROCESS:
+  415: 				temp = HID_MULTIKEY_VOL_DOWN;
+001BD0 904E96            MOV     DPTR,#temp
+001BD3 74F6              MOV     A,#0F6H
+001BD5 F0                MOVX    @DPTR,A
+  416: 				break;
+001BD6 804E              SJMP    ?C0092?KB_PROCESS
+  417: 			case HID_KEY_F3:
+001BD8         ?C0103?KB_PROCESS:
+  418: 				temp = HID_MULTIKEY_VOL_UP;
+001BD8 904E96            MOV     DPTR,#temp
+001BDB 74F7              MOV     A,#0F7H
+001BDD F0                MOVX    @DPTR,A
+  419: 				break;
+001BDE 8046              SJMP    ?C0092?KB_PROCESS
+  420: 			case HID_KEY_F4:
+001BE0         ?C0104?KB_PROCESS:
+  421: 				temp = HID_MULTIKEY_MUTE;
+001BE0 904E96            MOV     DPTR,#temp
+001BE3 74F8              MOV     A,#0F8H
+001BE5 F0                MOVX    @DPTR,A
+  422: 				break;
+001BE6 803E              SJMP    ?C0092?KB_PROCESS
+  423: 			case HID_KEY_F5:
+001BE8         ?C0105?KB_PROCESS:
+  424: 				temp = HID_MULTIKEY_PRE_TRACK;
+001BE8 904E96            MOV     DPTR,#temp
+001BEB 74F4              MOV     A,#0F4H
+001BED F0                MOVX    @DPTR,A
+  425: 				break;
+001BEE 8036              SJMP    ?C0092?KB_PROCESS
+  426: 			case HID_KEY_F6:
+001BF0         ?C0106?KB_PROCESS:
+  427: 				temp = HID_MULTIKEY_NEXT_TRACK;
+001BF0 904E96            MOV     DPTR,#temp
+001BF3 74F5              MOV     A,#0F5H
+001BF5 F0                MOVX    @DPTR,A
+  428: 				break;
+001BF6 802E              SJMP    ?C0092?KB_PROCESS
+  429: 			case HID_KEY_F7:
+001BF8         ?C0107?KB_PROCESS:
+  430: 				temp = HID_MULTIKEY_PALY;
+001BF8 904E96            MOV     DPTR,#temp
+001BFB 74F2              MOV     A,#0F2H
+001BFD F0                MOVX    @DPTR,A
+  431: 				break;
+001BFE 8026              SJMP    ?C0092?KB_PROCESS
+  432: 			case HID_KEY_F8:
+001C00         ?C0108?KB_PROCESS:
+  433: 				temp = HID_MULTIKEY_STOP;
+001C00 904E96            MOV     DPTR,#temp
+001C03 74F3              MOV     A,#0F3H
+001C05 F0                MOVX    @DPTR,A
+  434: 				break;
+001C06 801E              SJMP    ?C0092?KB_PROCESS
+  435: 			case HID_KEY_F9:
+001C08         ?C0109?KB_PROCESS:
+  436: 				temp = HID_MULTIKEY_AC_HOME;
+001C08 904E96            MOV     DPTR,#temp
+001C0B 74D6              MOV     A,#0D6H
+001C0D F0                MOVX    @DPTR,A
+  437: 				break;
+001C0E 8016              SJMP    ?C0092?KB_PROCESS
+  438: 			case HID_KEY_F10:
+001C10         ?C0110?KB_PROCESS:
+  439: 				temp = HID_MULTIKEY_MAIL;
+001C10 904E96            MOV     DPTR,#temp
+001C13 74FA              MOV     A,#0FAH
+001C15 F0                MOVX    @DPTR,A
+  440: 				break;
+001C16 800E              SJMP    ?C0092?KB_PROCESS
+  441: 			case HID_KEY_F11:
+001C18         ?C0111?KB_PROCESS:
+  442: 				temp = HID_MULTIKEY_MY_COMPUTER;
+001C18 904E96            MOV     DPTR,#temp
+001C1B 74F9              MOV     A,#0F9H
+001C1D F0                MOVX    @DPTR,A
+  443: 				break;
+001C1E 8006              SJMP    ?C0092?KB_PROCESS
+  444: 			case HID_KEY_F12:
+001C20         ?C0112?KB_PROCESS:
+  445: 				temp = HID_MULTIKEY_AC_FAVORITES;
+001C20 904E96            MOV     DPTR,#temp
+001C23 74D0              MOV     A,#0D0H
+001C25 F0                MOVX    @DPTR,A
+  446: 				break;
+  447: 			default :
+  448: 				break;
+  449: 		}
+  450: 	}
+001C26         ?C0092?KB_PROCESS:
+  451: 
+  452: 	return temp;
+001C26 904E96            MOV     DPTR,#temp
+001C29 E0                MOVX    A,@DPTR
+001C2A FF                MOV     R7,A
+  453: }
+001C2B 22                RET     
 ----- FUNCTION _key_fn_function (END) -------
 
 
@@ -4876,41 +4869,41 @@
    37: 	byte i = 0;
    38: 
 ;---- Variable 'i' assigned to Register 'R6' ----
-001C37 E4                CLR     A
-001C38 FE                MOV     R6,A
+001C2C E4                CLR     A
+001C2D FE                MOV     R6,A
    39: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
-001C39 EF                MOV     A,R7
-001C3A C3                CLR     C
-001C3B 94E0              SUBB    A,#0E0H
-001C3D 4020              JC      ?C0005?KEYSCAN
-001C3F EF                MOV     A,R7
-001C40 D3                SETB    C
-001C41 94E7              SUBB    A,#0E7H
-001C43 501A              JNC     ?C0005?KEYSCAN
+001C2E EF                MOV     A,R7
+001C2F C3                CLR     C
+001C30 94E0              SUBB    A,#0E0H
+001C32 4020              JC      ?C0005?KEYSCAN
+001C34 EF                MOV     A,R7
+001C35 D3                SETB    C
+001C36 94E7              SUBB    A,#0E7H
+001C38 501A              JNC     ?C0005?KEYSCAN
    40: 	{
    41: 		ksEvtPool.standardSel  |=  0x01 << (key & 0x07);
-001C45 904E3F            MOV     DPTR,#ksEvtPool
-001C48 E0                MOVX    A,@DPTR
-001C49 FE                MOV     R6,A
-001C4A EF                MOV     A,R7
-001C4B 5407              ANL     A,#07H
-001C4D FF                MOV     R7,A
-001C4E 7401              MOV     A,#01H
-001C50 A807              MOV     R0,AR7
-001C52 08                INC     R0
-001C53 8002              SJMP    ?C0093?KEYSCAN
-001C55         ?C0092?KEYSCAN:
-001C55 C3                CLR     C
-001C56 33                RLC     A
-001C57         ?C0093?KEYSCAN:
-001C57 D8FC              DJNZ    R0,?C0092?KEYSCAN
-001C59 4E                ORL     A,R6
-001C5A 904E3F            MOV     DPTR,#ksEvtPool
-001C5D F0                MOVX    @DPTR,A
-001C5E 22                RET     
+001C3A 904E3F            MOV     DPTR,#ksEvtPool
+001C3D E0                MOVX    A,@DPTR
+001C3E FE                MOV     R6,A
+001C3F EF                MOV     A,R7
+001C40 5407              ANL     A,#07H
+001C42 FF                MOV     R7,A
+001C43 7401              MOV     A,#01H
+001C45 A807              MOV     R0,AR7
+001C47 08                INC     R0
+001C48 8002              SJMP    ?C0093?KEYSCAN
+001C4A         ?C0092?KEYSCAN:
+001C4A C3                CLR     C
+001C4B 33                RLC     A
+001C4C         ?C0093?KEYSCAN:
+001C4C D8FC              DJNZ    R0,?C0092?KEYSCAN
+001C4E 4E                ORL     A,R6
+001C4F 904E3F            MOV     DPTR,#ksEvtPool
+001C52 F0                MOVX    @DPTR,A
+001C53 22                RET     
    42: 		return;
    43: 	}
-001C5F         ?C0005?KEYSCAN:
+001C54         ?C0005?KEYSCAN:
    44: 
    45: /*
    46: 
@@ -4958,52 +4951,52 @@
    88: 	//special key
    89: 
    90: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
-001C5F E4                CLR     A
-001C60 FE                MOV     R6,A
-001C61         ?C0007?KEYSCAN:
+001C54 E4                CLR     A
+001C55 FE                MOV     R6,A
+001C56         ?C0007?KEYSCAN:
    91: 	{
    92: 		if (ksEvtPool.ksPool[i] == key)
-001C61 7440              MOV     A,#LOW ksEvtPool+01H
-001C63 2E                ADD     A,R6
-001C64 F582              MOV     DPL,A
-001C66 E4                CLR     A
-001C67 344E              ADDC    A,#HIGH ksEvtPool+01H
-001C69 F583              MOV     DPH,A
-001C6B E0                MOVX    A,@DPTR
-001C6C FD                MOV     R5,A
-001C6D 6F                XRL     A,R7
-001C6E 601C              JZ      ?C0006?KEYSCAN
+001C56 7440              MOV     A,#LOW ksEvtPool+01H
+001C58 2E                ADD     A,R6
+001C59 F582              MOV     DPL,A
+001C5B E4                CLR     A
+001C5C 344E              ADDC    A,#HIGH ksEvtPool+01H
+001C5E F583              MOV     DPH,A
+001C60 E0                MOVX    A,@DPTR
+001C61 FD                MOV     R5,A
+001C62 6F                XRL     A,R7
+001C63 601C              JZ      ?C0006?KEYSCAN
    93: 			break;
-001C70         ?C0010?KEYSCAN:
+001C65         ?C0010?KEYSCAN:
    94: 		if (ksEvtPool.ksPool[i] == 0) 
-001C70 ED                MOV     A,R5
-001C71 7014              JNZ     ?C0009?KEYSCAN
+001C65 ED                MOV     A,R5
+001C66 7014              JNZ     ?C0009?KEYSCAN
    95: 		{
    96: 			if(mult_key_value != key)
-001C73 904DE6            MOV     DPTR,#mult_key_value
-001C76 E0                MOVX    A,@DPTR
-001C77 6F                XRL     A,R7
-001C78 6012              JZ      ?C0006?KEYSCAN
+001C68 904DE6            MOV     DPTR,#mult_key_value
+001C6B E0                MOVX    A,@DPTR
+001C6C 6F                XRL     A,R7
+001C6D 6012              JZ      ?C0006?KEYSCAN
    97: 				ksEvtPool.ksPool[i] = key;
-001C7A 7440              MOV     A,#LOW ksEvtPool+01H
-001C7C 2E                ADD     A,R6
-001C7D F582              MOV     DPL,A
-001C7F E4                CLR     A
-001C80 344E              ADDC    A,#HIGH ksEvtPool+01H
-001C82 F583              MOV     DPH,A
-001C84 EF                MOV     A,R7
-001C85 F0                MOVX    @DPTR,A
+001C6F 7440              MOV     A,#LOW ksEvtPool+01H
+001C71 2E                ADD     A,R6
+001C72 F582              MOV     DPL,A
+001C74 E4                CLR     A
+001C75 344E              ADDC    A,#HIGH ksEvtPool+01H
+001C77 F583              MOV     DPH,A
+001C79 EF                MOV     A,R7
+001C7A F0                MOVX    @DPTR,A
    98: 			break;
-001C86 22                RET     
+001C7B 22                RET     
    99: 		}
   100: 	}
-001C87         ?C0009?KEYSCAN:
-001C87 0E                INC     R6
-001C88 EE                MOV     A,R6
-001C89 B406D5            CJNE    A,#06H,?C0007?KEYSCAN
+001C7C         ?C0009?KEYSCAN:
+001C7C 0E                INC     R6
+001C7D EE                MOV     A,R6
+001C7E B406D5            CJNE    A,#06H,?C0007?KEYSCAN
   101: }
-001C8C         ?C0006?KEYSCAN:
-001C8C 22                RET     
+001C81         ?C0006?KEYSCAN:
+001C81 22                RET     
 ----- FUNCTION _keyIn (END) -------
 
 
@@ -5015,75 +5008,75 @@
   105: 	byte i = 0 ;
   106: 	byte found = 0;
 ;---- Variable 'i' assigned to Register 'R6' ----
-001C8D E4                CLR     A
-001C8E FE                MOV     R6,A
+001C82 E4                CLR     A
+001C83 FE                MOV     R6,A
   107: 
 ;---- Variable 'found' assigned to Register 'R5' ----
-001C8F FD                MOV     R5,A
+001C84 FD                MOV     R5,A
   108: 	if ((key &0xF0) == 0xf0 || (key &0xD0) == 0xD0)
-001C90 EF                MOV     A,R7
-001C91 54F0              ANL     A,#0F0H
-001C93 64F0              XRL     A,#0F0H
-001C95 6007              JZ      ?C0014?KEYSCAN
-001C97 EF                MOV     A,R7
-001C98 54D0              ANL     A,#0D0H
-001C9A FC                MOV     R4,A
-001C9B BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
-001C9E         ?C0014?KEYSCAN:
+001C85 EF                MOV     A,R7
+001C86 54F0              ANL     A,#0F0H
+001C88 64F0              XRL     A,#0F0H
+001C8A 6007              JZ      ?C0014?KEYSCAN
+001C8C EF                MOV     A,R7
+001C8D 54D0              ANL     A,#0D0H
+001C8F FC                MOV     R4,A
+001C90 BCD00C            CJNE    R4,#0D0H,?C0013?KEYSCAN
+001C93         ?C0014?KEYSCAN:
   109: 	{
   110: 		if(mult_key_status == KEY_WAIT_RELEASE)
-001C9E 904DE7            MOV     DPTR,#mult_key_status
-001CA1 E0                MOVX    A,@DPTR
-001CA2 B4020B            CJNE    A,#02H,?C0016?KEYSCAN
+001C93 904DE7            MOV     DPTR,#mult_key_status
+001C96 E0                MOVX    A,@DPTR
+001C97 B4020B            CJNE    A,#02H,?C0016?KEYSCAN
   111: 		{
   112: 			mult_key_status = KEY_RELEASE;
-001CA5 7403              MOV     A,#03H
-001CA7 F0                MOVX    @DPTR,A
+001C9A 7403              MOV     A,#03H
+001C9C F0                MOVX    @DPTR,A
   113: 		}
   114: 	}
-001CA8 8006              SJMP    ?C0016?KEYSCAN
-001CAA         ?C0013?KEYSCAN:
+001C9D 8006              SJMP    ?C0016?KEYSCAN
+001C9F         ?C0013?KEYSCAN:
   115: 	else
   116: 		standard_key_release_flag = 1;
-001CAA 904DD8            MOV     DPTR,#standard_key_release_flag
-001CAD 7401              MOV     A,#01H
-001CAF F0                MOVX    @DPTR,A
-001CB0         ?C0016?KEYSCAN:
+001C9F 904DD8            MOV     DPTR,#standard_key_release_flag
+001CA2 7401              MOV     A,#01H
+001CA4 F0                MOVX    @DPTR,A
+001CA5         ?C0016?KEYSCAN:
   117: 
   118: 	if(key >= HID_KEY_LEFT_CTL && key <= HID_KEY_RIGHT_GUI)
-001CB0 EF                MOV     A,R7
-001CB1 C3                CLR     C
-001CB2 94E0              SUBB    A,#0E0H
-001CB4 4021              JC      ?C0017?KEYSCAN
-001CB6 EF                MOV     A,R7
-001CB7 D3                SETB    C
-001CB8 94E7              SUBB    A,#0E7H
-001CBA 501B              JNC     ?C0017?KEYSCAN
+001CA5 EF                MOV     A,R7
+001CA6 C3                CLR     C
+001CA7 94E0              SUBB    A,#0E0H
+001CA9 4021              JC      ?C0017?KEYSCAN
+001CAB EF                MOV     A,R7
+001CAC D3                SETB    C
+001CAD 94E7              SUBB    A,#0E7H
+001CAF 501B              JNC     ?C0017?KEYSCAN
   119: 	{
   120: 		ksEvtPool.standardSel  &= ~(0x01 << (key & 0x07));
-001CBC 904E3F            MOV     DPTR,#ksEvtPool
-001CBF E0                MOVX    A,@DPTR
-001CC0 FE                MOV     R6,A
-001CC1 EF                MOV     A,R7
-001CC2 5407              ANL     A,#07H
-001CC4 FF                MOV     R7,A
-001CC5 7401              MOV     A,#01H
-001CC7 A807              MOV     R0,AR7
-001CC9 08                INC     R0
-001CCA 8002              SJMP    ?C0095?KEYSCAN
-001CCC         ?C0094?KEYSCAN:
-001CCC C3                CLR     C
-001CCD 33                RLC     A
-001CCE         ?C0095?KEYSCAN:
-001CCE D8FC              DJNZ    R0,?C0094?KEYSCAN
-001CD0 F4                CPL     A
-001CD1 5E                ANL     A,R6
-001CD2 904E3F            MOV     DPTR,#ksEvtPool
-001CD5 F0                MOVX    @DPTR,A
-001CD6 22                RET     
+001CB1 904E3F            MOV     DPTR,#ksEvtPool
+001CB4 E0                MOVX    A,@DPTR
+001CB5 FE                MOV     R6,A
+001CB6 EF                MOV     A,R7
+001CB7 5407              ANL     A,#07H
+001CB9 FF                MOV     R7,A
+001CBA 7401              MOV     A,#01H
+001CBC A807              MOV     R0,AR7
+001CBE 08                INC     R0
+001CBF 8002              SJMP    ?C0095?KEYSCAN
+001CC1         ?C0094?KEYSCAN:
+001CC1 C3                CLR     C
+001CC2 33                RLC     A
+001CC3         ?C0095?KEYSCAN:
+001CC3 D8FC              DJNZ    R0,?C0094?KEYSCAN
+001CC5 F4                CPL     A
+001CC6 5E                ANL     A,R6
+001CC7 904E3F            MOV     DPTR,#ksEvtPool
+001CCA F0                MOVX    @DPTR,A
+001CCB 22                RET     
   121: 		return;
   122: 	}
-001CD7         ?C0017?KEYSCAN:
+001CCC         ?C0017?KEYSCAN:
   123: 
   124: /*
   125: 	if (key == HID_KEY_RIGHT_GUI ) 
@@ -5128,94 +5121,94 @@
   164: 	}
   165: */	
   166: 	for (i=0 ; i<KS_BUFF_POLL_LEN ; i++) 
-001CD7 E4                CLR     A
-001CD8 FE                MOV     R6,A
-001CD9         ?C0019?KEYSCAN:
+001CCC E4                CLR     A
+001CCD FE                MOV     R6,A
+001CCE         ?C0019?KEYSCAN:
   167: 	{
   168: 		if (found == 0) 
-001CD9 ED                MOV     A,R5
-001CDA 7021              JNZ     ?C0022?KEYSCAN
+001CCE ED                MOV     A,R5
+001CCF 7021              JNZ     ?C0022?KEYSCAN
   169: 		{
   170: 			if (ksEvtPool.ksPool[i] == key) {
-001CDC 7440              MOV     A,#LOW ksEvtPool+01H
-001CDE 2E                ADD     A,R6
-001CDF F582              MOV     DPL,A
-001CE1 E4                CLR     A
-001CE2 344E              ADDC    A,#HIGH ksEvtPool+01H
-001CE4 F583              MOV     DPH,A
-001CE6 E0                MOVX    A,@DPTR
-001CE7 6F                XRL     A,R7
-001CE8 7047              JNZ     ?C0021?KEYSCAN
+001CD1 7440              MOV     A,#LOW ksEvtPool+01H
+001CD3 2E                ADD     A,R6
+001CD4 F582              MOV     DPL,A
+001CD6 E4                CLR     A
+001CD7 344E              ADDC    A,#HIGH ksEvtPool+01H
+001CD9 F583              MOV     DPH,A
+001CDB E0                MOVX    A,@DPTR
+001CDC 6F                XRL     A,R7
+001CDD 7047              JNZ     ?C0021?KEYSCAN
   171: 				if (i == KS_BUFF_POLL_LEN-1) {
-001CEA EE                MOV     A,R6
-001CEB B4050B            CJNE    A,#05H,?C0024?KEYSCAN
+001CDF EE                MOV     A,R6
+001CE0 B4050B            CJNE    A,#05H,?C0024?KEYSCAN
   172: 					ksEvtPool.ksPool[i] = 0;
-001CEE 2440              ADD     A,#LOW ksEvtPool+01H
-001CF0 F582              MOV     DPL,A
-001CF2 E4                CLR     A
-001CF3 344E              ADDC    A,#HIGH ksEvtPool+01H
-001CF5 F583              MOV     DPH,A
-001CF7 E4                CLR     A
-001CF8 F0                MOVX    @DPTR,A
+001CE3 2440              ADD     A,#LOW ksEvtPool+01H
+001CE5 F582              MOV     DPL,A
+001CE7 E4                CLR     A
+001CE8 344E              ADDC    A,#HIGH ksEvtPool+01H
+001CEA F583              MOV     DPH,A
+001CEC E4                CLR     A
+001CED F0                MOVX    @DPTR,A
   173: 				}
-001CF9         ?C0024?KEYSCAN:
+001CEE         ?C0024?KEYSCAN:
   174: 				found = 1;
-001CF9 7D01              MOV     R5,#01H
+001CEE 7D01              MOV     R5,#01H
   175: 			}
   176: 		}
-001CFB 8034              SJMP    ?C0021?KEYSCAN
-001CFD         ?C0022?KEYSCAN:
+001CF0 8034              SJMP    ?C0021?KEYSCAN
+001CF2         ?C0022?KEYSCAN:
   177: 		else 
   178: 		{
   179: 			ksEvtPool.ksPool[i-1] = ksEvtPool.ksPool[i];
-001CFD 7440              MOV     A,#LOW ksEvtPool+01H
-001CFF 2E                ADD     A,R6
-001D00 F582              MOV     DPL,A
-001D02 E4                CLR     A
-001D03 344E              ADDC    A,#HIGH ksEvtPool+01H
-001D05 F583              MOV     DPH,A
-001D07 E0                MOVX    A,@DPTR
-001D08 FC                MOV     R4,A
-001D09 743F              MOV     A,#LOW ksEvtPool
-001D0B 2E                ADD     A,R6
-001D0C F582              MOV     DPL,A
-001D0E E4                CLR     A
-001D0F 344E              ADDC    A,#HIGH ksEvtPool
-001D11 F583              MOV     DPH,A
-001D13 EC                MOV     A,R4
-001D14 F0                MOVX    @DPTR,A
+001CF2 7440              MOV     A,#LOW ksEvtPool+01H
+001CF4 2E                ADD     A,R6
+001CF5 F582              MOV     DPL,A
+001CF7 E4                CLR     A
+001CF8 344E              ADDC    A,#HIGH ksEvtPool+01H
+001CFA F583              MOV     DPH,A
+001CFC E0                MOVX    A,@DPTR
+001CFD FC                MOV     R4,A
+001CFE 743F              MOV     A,#LOW ksEvtPool
+001D00 2E                ADD     A,R6
+001D01 F582              MOV     DPL,A
+001D03 E4                CLR     A
+001D04 344E              ADDC    A,#HIGH ksEvtPool
+001D06 F583              MOV     DPH,A
+001D08 EC                MOV     A,R4
+001D09 F0                MOVX    @DPTR,A
   180: 			if (ksEvtPool.ksPool[i] == 0)
-001D15 7440              MOV     A,#LOW ksEvtPool+01H
-001D17 2E                ADD     A,R6
-001D18 F582              MOV     DPL,A
-001D1A E4                CLR     A
-001D1B 344E              ADDC    A,#HIGH ksEvtPool+01H
-001D1D F583              MOV     DPH,A
-001D1F E0                MOVX    A,@DPTR
-001D20 6014              JZ      ?C0018?KEYSCAN
+001D0A 7440              MOV     A,#LOW ksEvtPool+01H
+001D0C 2E                ADD     A,R6
+001D0D F582              MOV     DPL,A
+001D0F E4                CLR     A
+001D10 344E              ADDC    A,#HIGH ksEvtPool+01H
+001D12 F583              MOV     DPH,A
+001D14 E0                MOVX    A,@DPTR
+001D15 6014              JZ      ?C0018?KEYSCAN
   181: 				break;
-001D22         ?C0026?KEYSCAN:
+001D17         ?C0026?KEYSCAN:
   182: 			if (i == KS_BUFF_POLL_LEN-1) {
-001D22 EE                MOV     A,R6
-001D23 B4050B            CJNE    A,#05H,?C0021?KEYSCAN
+001D17 EE                MOV     A,R6
+001D18 B4050B            CJNE    A,#05H,?C0021?KEYSCAN
   183: 				ksEvtPool.ksPool[i] = 0;
-001D26 2440              ADD     A,#LOW ksEvtPool+01H
-001D28 F582              MOV     DPL,A
-001D2A E4                CLR     A
-001D2B 344E              ADDC    A,#HIGH ksEvtPool+01H
-001D2D F583              MOV     DPH,A
-001D2F E4                CLR     A
-001D30 F0                MOVX    @DPTR,A
+001D1B 2440              ADD     A,#LOW ksEvtPool+01H
+001D1D F582              MOV     DPL,A
+001D1F E4                CLR     A
+001D20 344E              ADDC    A,#HIGH ksEvtPool+01H
+001D22 F583              MOV     DPH,A
+001D24 E4                CLR     A
+001D25 F0                MOVX    @DPTR,A
   184: 			}
   185: 		}
   186: 	}
-001D31         ?C0021?KEYSCAN:
-001D31 0E                INC     R6
-001D32 EE                MOV     A,R6
-001D33 B406A3            CJNE    A,#06H,?C0019?KEYSCAN
+001D26         ?C0021?KEYSCAN:
+001D26 0E                INC     R6
+001D27 EE                MOV     A,R6
+001D28 B406A3            CJNE    A,#06H,?C0019?KEYSCAN
   187: }
-001D36         ?C0018?KEYSCAN:
-001D36 22                RET     
+001D2B         ?C0018?KEYSCAN:
+001D2B 22                RET     
 ----- FUNCTION _keyOut (END) -------
 
 
@@ -5225,188 +5218,188 @@
   190: {
   191: 	byte i = 0;
   192: 	
-001D37 E4                CLR     A
-001D38 904E97            MOV     DPTR,#i
-001D3B F0                MOVX    @DPTR,A
+001D2C E4                CLR     A
+001D2D 904E97            MOV     DPTR,#i
+001D30 F0                MOVX    @DPTR,A
   193: 	for (i=0; i<8; i++) {
-001D3C F0                MOVX    @DPTR,A
-001D3D         ?C0028?KEYSCAN:
-001D3D 904E97            MOV     DPTR,#i
-001D40 E0                MOVX    A,@DPTR
-001D41 FF                MOV     R7,A
-001D42 C3                CLR     C
-001D43 9408              SUBB    A,#08H
-001D45 500C              JNC     ?C0031?KEYSCAN
+001D31 F0                MOVX    @DPTR,A
+001D32         ?C0028?KEYSCAN:
+001D32 904E97            MOV     DPTR,#i
+001D35 E0                MOVX    A,@DPTR
+001D36 FF                MOV     R7,A
+001D37 C3                CLR     C
+001D38 9408              SUBB    A,#08H
+001D3A 500C              JNC     ?C0031?KEYSCAN
   194: 		GPIO_SetInput(i, 0);
-001D47 C205              CLR     ?_GPIO_SetInput?BIT
-001D49 B154              ACALL   _GPIO_SetInput
+001D3C C205              CLR     ?_GPIO_SetInput?BIT
+001D3E B149              ACALL   _GPIO_SetInput
   195: 	}
-001D4B 904E97            MOV     DPTR,#i
-001D4E E0                MOVX    A,@DPTR
-001D4F 04                INC     A
-001D50 F0                MOVX    @DPTR,A
-001D51 80EA              SJMP    ?C0028?KEYSCAN
+001D40 904E97            MOV     DPTR,#i
+001D43 E0                MOVX    A,@DPTR
+001D44 04                INC     A
+001D45 F0                MOVX    @DPTR,A
+001D46 80EA              SJMP    ?C0028?KEYSCAN
   196: }
-001D53         ?C0031?KEYSCAN:
-001D53 22                RET     
+001D48         ?C0031?KEYSCAN:
+001D48 22                RET     
 ----- FUNCTION ksRawInitialize (END) -------
 
 
 ----- FUNCTION _GPIO_SetInput (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R4' ----
-001D54 AC07              MOV     R4,AR7
-001D56 EC                MOV     A,R4
-001D57 F4                CPL     A
-001D58 6017              JZ      ?C0015?GPIO
-001D5A         ?C0014?GPIO:
-001D5A AF04              MOV     R7,AR4
-001D5C A205              MOV     C,st
-001D5E 9203              MOV     ?_GPIO_SetPd?BIT,C
-001D60 B183              ACALL   _GPIO_SetPd
-001D62 AF04              MOV     R7,AR4
-001D64 A205              MOV     C,st
-001D66 B3                CPL     C
-001D67 9202              MOV     ?_GPIO_SetPu?BIT,C
-001D69 B172              ACALL   _GPIO_SetPu
-001D6B AF04              MOV     R7,AR4
-001D6D C204              CLR     ?_GPIO_Setoe?BIT
-001D6F B194              ACALL   _GPIO_Setoe
-001D71         ?C0015?GPIO:
-001D71 22                RET     
+001D49 AC07              MOV     R4,AR7
+001D4B EC                MOV     A,R4
+001D4C F4                CPL     A
+001D4D 6017              JZ      ?C0015?GPIO
+001D4F         ?C0014?GPIO:
+001D4F AF04              MOV     R7,AR4
+001D51 A205              MOV     C,st
+001D53 9203              MOV     ?_GPIO_SetPd?BIT,C
+001D55 B178              ACALL   _GPIO_SetPd
+001D57 AF04              MOV     R7,AR4
+001D59 A205              MOV     C,st
+001D5B B3                CPL     C
+001D5C 9202              MOV     ?_GPIO_SetPu?BIT,C
+001D5E B167              ACALL   _GPIO_SetPu
+001D60 AF04              MOV     R7,AR4
+001D62 C204              CLR     ?_GPIO_Setoe?BIT
+001D64 B189              ACALL   _GPIO_Setoe
+001D66         ?C0015?GPIO:
+001D66 22                RET     
 ----- FUNCTION _GPIO_SetInput (END) -------
 
 
 ----- FUNCTION _GPIO_SetPu (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-001D72 EF                MOV     A,R7
-001D73 F4                CPL     A
-001D74 600C              JZ      ?C0009?GPIO
-001D76         ?C0008?GPIO:
-001D76 7B01              MOV     R3,#01H
-001D78 7A80              MOV     R2,#080H
-001D7A 7978              MOV     R1,#078H
-001D7C A202              MOV     C,bit_val
-001D7E 9200              MOV     ?_gpioSetBit?BIT,C
-001D80 B1A5              ACALL   _gpioSetBit
-001D82         ?C0009?GPIO:
-001D82 22                RET     
+001D67 EF                MOV     A,R7
+001D68 F4                CPL     A
+001D69 600C              JZ      ?C0009?GPIO
+001D6B         ?C0008?GPIO:
+001D6B 7B01              MOV     R3,#01H
+001D6D 7A80              MOV     R2,#080H
+001D6F 7978              MOV     R1,#078H
+001D71 A202              MOV     C,bit_val
+001D73 9200              MOV     ?_gpioSetBit?BIT,C
+001D75 B19A              ACALL   _gpioSetBit
+001D77         ?C0009?GPIO:
+001D77 22                RET     
 ----- FUNCTION _GPIO_SetPu (END) -------
 
 
 ----- FUNCTION _GPIO_SetPd (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-001D83 EF                MOV     A,R7
-001D84 F4                CPL     A
-001D85 600C              JZ      ?C0011?GPIO
-001D87         ?C0010?GPIO:
-001D87 7B01              MOV     R3,#01H
-001D89 7A80              MOV     R2,#080H
-001D8B 797C              MOV     R1,#07CH
-001D8D A203              MOV     C,bit_val
-001D8F 9200              MOV     ?_gpioSetBit?BIT,C
-001D91 B1A5              ACALL   _gpioSetBit
-001D93         ?C0011?GPIO:
-001D93 22                RET     
+001D78 EF                MOV     A,R7
+001D79 F4                CPL     A
+001D7A 600C              JZ      ?C0011?GPIO
+001D7C         ?C0010?GPIO:
+001D7C 7B01              MOV     R3,#01H
+001D7E 7A80              MOV     R2,#080H
+001D80 797C              MOV     R1,#07CH
+001D82 A203              MOV     C,bit_val
+001D84 9200              MOV     ?_gpioSetBit?BIT,C
+001D86 B19A              ACALL   _gpioSetBit
+001D88         ?C0011?GPIO:
+001D88 22                RET     
 ----- FUNCTION _GPIO_SetPd (END) -------
 
 
 ----- FUNCTION _GPIO_Setoe (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-001D94 EF                MOV     A,R7
-001D95 F4                CPL     A
-001D96 600C              JZ      ?C0013?GPIO
-001D98         ?C0012?GPIO:
-001D98 7B01              MOV     R3,#01H
-001D9A 7A80              MOV     R2,#080H
-001D9C 7970              MOV     R1,#070H
-001D9E A204              MOV     C,bit_val
-001DA0 9200              MOV     ?_gpioSetBit?BIT,C
-001DA2 B1A5              ACALL   _gpioSetBit
-001DA4         ?C0013?GPIO:
-001DA4 22                RET     
+001D89 EF                MOV     A,R7
+001D8A F4                CPL     A
+001D8B 600C              JZ      ?C0013?GPIO
+001D8D         ?C0012?GPIO:
+001D8D 7B01              MOV     R3,#01H
+001D8F 7A80              MOV     R2,#080H
+001D91 7970              MOV     R1,#070H
+001D93 A204              MOV     C,bit_val
+001D95 9200              MOV     ?_gpioSetBit?BIT,C
+001D97 B19A              ACALL   _gpioSetBit
+001D99         ?C0013?GPIO:
+001D99 22                RET     
 ----- FUNCTION _GPIO_Setoe (END) -------
 
 
 ----- FUNCTION _gpioSetBit (BEGIN) -----
-001DA5 904E8D            MOV     DPTR,#reg_base
-001DA8 EB                MOV     A,R3
-001DA9 F0                MOVX    @DPTR,A
-001DAA A3                INC     DPTR
-001DAB EA                MOV     A,R2
-001DAC F0                MOVX    @DPTR,A
-001DAD A3                INC     DPTR
-001DAE E9                MOV     A,R1
-001DAF F0                MOVX    @DPTR,A
+001D9A 904E8D            MOV     DPTR,#reg_base
+001D9D EB                MOV     A,R3
+001D9E F0                MOVX    @DPTR,A
+001D9F A3                INC     DPTR
+001DA0 EA                MOV     A,R2
+001DA1 F0                MOVX    @DPTR,A
+001DA2 A3                INC     DPTR
+001DA3 E9                MOV     A,R1
+001DA4 F0                MOVX    @DPTR,A
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
 ;---- Variable 'queue' assigned to Register 'R6' ----
-001DB0 E4                CLR     A
-001DB1 FE                MOV     R6,A
+001DA5 E4                CLR     A
+001DA6 FE                MOV     R6,A
 ;---- Variable 'group' assigned to Register 'R5' ----
+001DA7 FD                MOV     R5,A
+001DA8 EF                MOV     A,R7
+001DA9 5407              ANL     A,#07H
+001DAB FE                MOV     R6,A
+001DAC EF                MOV     A,R7
+001DAD 13                RRC     A
+001DAE 13                RRC     A
+001DAF 13                RRC     A
+001DB0 5403              ANL     A,#03H
 001DB2 FD                MOV     R5,A
-001DB3 EF                MOV     A,R7
-001DB4 5407              ANL     A,#07H
-001DB6 FE                MOV     R6,A
-001DB7 EF                MOV     A,R7
-001DB8 13                RRC     A
-001DB9 13                RRC     A
-001DBA 13                RRC     A
-001DBB 5403              ANL     A,#03H
-001DBD FD                MOV     R5,A
-001DBE 300022            JNB     bit_val,?C0001?GPIO
-001DC1 904E8D            MOV     DPTR,#reg_base
-001DC4 E0                MOVX    A,@DPTR
-001DC5 FB                MOV     R3,A
-001DC6 A3                INC     DPTR
-001DC7 E0                MOVX    A,@DPTR
-001DC8 FA                MOV     R2,A
-001DC9 A3                INC     DPTR
-001DCA E0                MOVX    A,@DPTR
-001DCB 2D                ADD     A,R5
-001DCC F9                MOV     R1,A
-001DCD E4                CLR     A
-001DCE 3A                ADDC    A,R2
-001DCF FA                MOV     R2,A
-001DD0 1203B6            LCALL   ?C?CLDPTR
-001DD3 FF                MOV     R7,A
-001DD4 7401              MOV     A,#01H
-001DD6 A806              MOV     R0,AR6
-001DD8 08                INC     R0
-001DD9 8002              SJMP    ?C0031?GPIO
-001DDB         ?C0030?GPIO:
-001DDB C3                CLR     C
-001DDC 33                RLC     A
-001DDD         ?C0031?GPIO:
-001DDD D8FC              DJNZ    R0,?C0030?GPIO
-001DDF 4F                ORL     A,R7
-001DE0 0203FC            LJMP    ?C?CSTPTR
-001DE3         ?C0001?GPIO:
-001DE3 904E8D            MOV     DPTR,#reg_base
-001DE6 E0                MOVX    A,@DPTR
-001DE7 FB                MOV     R3,A
-001DE8 A3                INC     DPTR
-001DE9 E0                MOVX    A,@DPTR
-001DEA FA                MOV     R2,A
-001DEB A3                INC     DPTR
-001DEC E0                MOVX    A,@DPTR
-001DED 2D                ADD     A,R5
-001DEE F9                MOV     R1,A
-001DEF E4                CLR     A
-001DF0 3A                ADDC    A,R2
-001DF1 FA                MOV     R2,A
-001DF2 1203B6            LCALL   ?C?CLDPTR
-001DF5 FF                MOV     R7,A
-001DF6 7401              MOV     A,#01H
-001DF8 A806              MOV     R0,AR6
-001DFA 08                INC     R0
-001DFB 8002              SJMP    ?C0033?GPIO
-001DFD         ?C0032?GPIO:
-001DFD C3                CLR     C
-001DFE 33                RLC     A
-001DFF         ?C0033?GPIO:
-001DFF D8FC              DJNZ    R0,?C0032?GPIO
-001E01 F4                CPL     A
-001E02 5F                ANL     A,R7
-001E03 0203FC            LJMP    ?C?CSTPTR
+001DB3 300022            JNB     bit_val,?C0001?GPIO
+001DB6 904E8D            MOV     DPTR,#reg_base
+001DB9 E0                MOVX    A,@DPTR
+001DBA FB                MOV     R3,A
+001DBB A3                INC     DPTR
+001DBC E0                MOVX    A,@DPTR
+001DBD FA                MOV     R2,A
+001DBE A3                INC     DPTR
+001DBF E0                MOVX    A,@DPTR
+001DC0 2D                ADD     A,R5
+001DC1 F9                MOV     R1,A
+001DC2 E4                CLR     A
+001DC3 3A                ADDC    A,R2
+001DC4 FA                MOV     R2,A
+001DC5 1203B6            LCALL   ?C?CLDPTR
+001DC8 FF                MOV     R7,A
+001DC9 7401              MOV     A,#01H
+001DCB A806              MOV     R0,AR6
+001DCD 08                INC     R0
+001DCE 8002              SJMP    ?C0031?GPIO
+001DD0         ?C0030?GPIO:
+001DD0 C3                CLR     C
+001DD1 33                RLC     A
+001DD2         ?C0031?GPIO:
+001DD2 D8FC              DJNZ    R0,?C0030?GPIO
+001DD4 4F                ORL     A,R7
+001DD5 0203FC            LJMP    ?C?CSTPTR
+001DD8         ?C0001?GPIO:
+001DD8 904E8D            MOV     DPTR,#reg_base
+001DDB E0                MOVX    A,@DPTR
+001DDC FB                MOV     R3,A
+001DDD A3                INC     DPTR
+001DDE E0                MOVX    A,@DPTR
+001DDF FA                MOV     R2,A
+001DE0 A3                INC     DPTR
+001DE1 E0                MOVX    A,@DPTR
+001DE2 2D                ADD     A,R5
+001DE3 F9                MOV     R1,A
+001DE4 E4                CLR     A
+001DE5 3A                ADDC    A,R2
+001DE6 FA                MOV     R2,A
+001DE7 1203B6            LCALL   ?C?CLDPTR
+001DEA FF                MOV     R7,A
+001DEB 7401              MOV     A,#01H
+001DED A806              MOV     R0,AR6
+001DEF 08                INC     R0
+001DF0 8002              SJMP    ?C0033?GPIO
+001DF2         ?C0032?GPIO:
+001DF2 C3                CLR     C
+001DF3 33                RLC     A
+001DF4         ?C0033?GPIO:
+001DF4 D8FC              DJNZ    R0,?C0032?GPIO
+001DF6 F4                CPL     A
+001DF7 5F                ANL     A,R7
+001DF8 0203FC            LJMP    ?C?CSTPTR
 ----- FUNCTION _gpioSetBit (END) -------
 
 
@@ -5417,292 +5410,292 @@
   262: 	byte i = 0;
   263: 	byte j = 0;
 ;---- Variable 'i' assigned to Register 'R7' ----
-001E06 E4                CLR     A
-001E07 FF                MOV     R7,A
+001DFB E4                CLR     A
+001DFC FF                MOV     R7,A
   264: 	byte tgroup = 0;
-001E08 904E7E            MOV     DPTR,#j
-001E0B F0                MOVX    @DPTR,A
+001DFD 904E7E            MOV     DPTR,#j
+001E00 F0                MOVX    @DPTR,A
   265: 	byte tgpionum = 0;
 ;---- Variable 'tgroup' assigned to Register 'R6' ----
-001E0C FE                MOV     R6,A
+001E01 FE                MOV     R6,A
   266: 	byte temp = 0;
 ;---- Variable 'tgpionum' assigned to Register 'R5' ----
-001E0D FD                MOV     R5,A
+001E02 FD                MOV     R5,A
   267: 	byte check = 0;
-001E0E A3                INC     DPTR
-001E0F F0                MOVX    @DPTR,A
+001E03 A3                INC     DPTR
+001E04 F0                MOVX    @DPTR,A
   268: 	for (i=0; col[i]!=0; i++) {
-001E10 A3                INC     DPTR
-001E11 F0                MOVX    @DPTR,A
+001E05 A3                INC     DPTR
+001E06 F0                MOVX    @DPTR,A
   269: 		tgroup = col[i]  >> 3;
-001E12         ?C0043?KEYSCAN:
-001E12 EF                MOV     A,R7
-001E13 900632            MOV     DPTR,#col
-001E16 93                MOVC    A,@A+DPTR
-001E17 607C              JZ      ?C0044?KEYSCAN
+001E07         ?C0043?KEYSCAN:
+001E07 EF                MOV     A,R7
+001E08 900632            MOV     DPTR,#col
+001E0B 93                MOVC    A,@A+DPTR
+001E0C 607C              JZ      ?C0044?KEYSCAN
   270: 		tgpionum = 1 << (col[i] & 7);
-001E19 EF                MOV     A,R7
-001E1A 93                MOVC    A,@A+DPTR
-001E1B FD                MOV     R5,A
-001E1C 13                RRC     A
-001E1D 13                RRC     A
-001E1E 13                RRC     A
-001E1F 541F              ANL     A,#01FH
-001E21 FE                MOV     R6,A
+001E0E EF                MOV     A,R7
+001E0F 93                MOVC    A,@A+DPTR
+001E10 FD                MOV     R5,A
+001E11 13                RRC     A
+001E12 13                RRC     A
+001E13 13                RRC     A
+001E14 541F              ANL     A,#01FH
+001E16 FE                MOV     R6,A
   271: 		GET_RAW_KEY_SEL(ksSelMapCurr[i], tgroup, tgpionum);
-001E22 ED                MOV     A,R5
-001E23 5407              ANL     A,#07H
-001E25 FD                MOV     R5,A
-001E26 7401              MOV     A,#01H
-001E28 A805              MOV     R0,AR5
-001E2A 08                INC     R0
-001E2B 8002              SJMP    ?C0099?KEYSCAN
-001E2D         ?C0098?KEYSCAN:
-001E2D C3                CLR     C
-001E2E 33                RLC     A
-001E2F         ?C0099?KEYSCAN:
-001E2F D8FC              DJNZ    R0,?C0098?KEYSCAN
-001E31 FD                MOV     R5,A
+001E17 ED                MOV     A,R5
+001E18 5407              ANL     A,#07H
+001E1A FD                MOV     R5,A
+001E1B 7401              MOV     A,#01H
+001E1D A805              MOV     R0,AR5
+001E1F 08                INC     R0
+001E20 8002              SJMP    ?C0099?KEYSCAN
+001E22         ?C0098?KEYSCAN:
+001E22 C3                CLR     C
+001E23 33                RLC     A
+001E24         ?C0099?KEYSCAN:
+001E24 D8FC              DJNZ    R0,?C0098?KEYSCAN
+001E26 FD                MOV     R5,A
   272: 	}
-001E32 EE                MOV     A,R6
-001E33 2478              ADD     A,#078H
-001E35 FB                MOV     R3,A
-001E36 E4                CLR     A
-001E37 3480              ADDC    A,#080H
-001E39 8B82              MOV     DPL,R3
-001E3B F583              MOV     DPH,A
-001E3D E0                MOVX    A,@DPTR
-001E3E FC                MOV     R4,A
-001E3F ED                MOV     A,R5
-001E40 F4                CPL     A
-001E41 FB                MOV     R3,A
-001E42 EC                MOV     A,R4
-001E43 5B                ANL     A,R3
-001E44 F0                MOVX    @DPTR,A
-001E45 EE                MOV     A,R6
-001E46 2470              ADD     A,#070H
-001E48 F582              MOV     DPL,A
-001E4A E4                CLR     A
-001E4B 3480              ADDC    A,#080H
-001E4D F583              MOV     DPH,A
-001E4F E0                MOVX    A,@DPTR
-001E50 4D                ORL     A,R5
-001E51 F0                MOVX    @DPTR,A
-001E52 EE                MOV     A,R6
-001E53 2474              ADD     A,#074H
-001E55 F582              MOV     DPL,A
-001E57 E4                CLR     A
-001E58 3480              ADDC    A,#080H
-001E5A F583              MOV     DPH,A
-001E5C E0                MOVX    A,@DPTR
-001E5D 5B                ANL     A,R3
-001E5E F0                MOVX    @DPTR,A
-001E5F 90811C            MOV     DPTR,#0811CH
-001E62 E0                MOVX    A,@DPTR
-001E63 F4                CPL     A
-001E64 FC                MOV     R4,A
-001E65 74BC              MOV     A,#LOW ksSelMapCurr
-001E67 2F                ADD     A,R7
-001E68 F582              MOV     DPL,A
+001E27 EE                MOV     A,R6
+001E28 2478              ADD     A,#078H
+001E2A FB                MOV     R3,A
+001E2B E4                CLR     A
+001E2C 3480              ADDC    A,#080H
+001E2E 8B82              MOV     DPL,R3
+001E30 F583              MOV     DPH,A
+001E32 E0                MOVX    A,@DPTR
+001E33 FC                MOV     R4,A
+001E34 ED                MOV     A,R5
+001E35 F4                CPL     A
+001E36 FB                MOV     R3,A
+001E37 EC                MOV     A,R4
+001E38 5B                ANL     A,R3
+001E39 F0                MOVX    @DPTR,A
+001E3A EE                MOV     A,R6
+001E3B 2470              ADD     A,#070H
+001E3D F582              MOV     DPL,A
+001E3F E4                CLR     A
+001E40 3480              ADDC    A,#080H
+001E42 F583              MOV     DPH,A
+001E44 E0                MOVX    A,@DPTR
+001E45 4D                ORL     A,R5
+001E46 F0                MOVX    @DPTR,A
+001E47 EE                MOV     A,R6
+001E48 2474              ADD     A,#074H
+001E4A F582              MOV     DPL,A
+001E4C E4                CLR     A
+001E4D 3480              ADDC    A,#080H
+001E4F F583              MOV     DPH,A
+001E51 E0                MOVX    A,@DPTR
+001E52 5B                ANL     A,R3
+001E53 F0                MOVX    @DPTR,A
+001E54 90811C            MOV     DPTR,#0811CH
+001E57 E0                MOVX    A,@DPTR
+001E58 F4                CPL     A
+001E59 FC                MOV     R4,A
+001E5A 74BC              MOV     A,#LOW ksSelMapCurr
+001E5C 2F                ADD     A,R7
+001E5D F582              MOV     DPL,A
+001E5F E4                CLR     A
+001E60 344D              ADDC    A,#HIGH ksSelMapCurr
+001E62 F583              MOV     DPH,A
+001E64 EC                MOV     A,R4
+001E65 F0                MOVX    @DPTR,A
+001E66 EE                MOV     A,R6
+001E67 2478              ADD     A,#078H
+001E69 FB                MOV     R3,A
 001E6A E4                CLR     A
-001E6B 344D              ADDC    A,#HIGH ksSelMapCurr
-001E6D F583              MOV     DPH,A
-001E6F EC                MOV     A,R4
-001E70 F0                MOVX    @DPTR,A
-001E71 EE                MOV     A,R6
-001E72 2478              ADD     A,#078H
-001E74 FB                MOV     R3,A
-001E75 E4                CLR     A
-001E76 3480              ADDC    A,#080H
-001E78 8B82              MOV     DPL,R3
-001E7A F583              MOV     DPH,A
-001E7C E0                MOVX    A,@DPTR
-001E7D 4D                ORL     A,R5
-001E7E F0                MOVX    @DPTR,A
-001E7F EE                MOV     A,R6
-001E80 2470              ADD     A,#070H
-001E82 FB                MOV     R3,A
-001E83 E4                CLR     A
-001E84 3480              ADDC    A,#080H
-001E86 8B82              MOV     DPL,R3
-001E88 F583              MOV     DPH,A
-001E8A E0                MOVX    A,@DPTR
-001E8B FC                MOV     R4,A
-001E8C ED                MOV     A,R5
-001E8D F4                CPL     A
-001E8E FB                MOV     R3,A
-001E8F EC                MOV     A,R4
-001E90 5B                ANL     A,R3
-001E91 F0                MOVX    @DPTR,A
+001E6B 3480              ADDC    A,#080H
+001E6D 8B82              MOV     DPL,R3
+001E6F F583              MOV     DPH,A
+001E71 E0                MOVX    A,@DPTR
+001E72 4D                ORL     A,R5
+001E73 F0                MOVX    @DPTR,A
+001E74 EE                MOV     A,R6
+001E75 2470              ADD     A,#070H
+001E77 FB                MOV     R3,A
+001E78 E4                CLR     A
+001E79 3480              ADDC    A,#080H
+001E7B 8B82              MOV     DPL,R3
+001E7D F583              MOV     DPH,A
+001E7F E0                MOVX    A,@DPTR
+001E80 FC                MOV     R4,A
+001E81 ED                MOV     A,R5
+001E82 F4                CPL     A
+001E83 FB                MOV     R3,A
+001E84 EC                MOV     A,R4
+001E85 5B                ANL     A,R3
+001E86 F0                MOVX    @DPTR,A
   273: 
-001E92 0F                INC     R7
-001E93 C112              AJMP    ?C0043?KEYSCAN
-001E95         ?C0044?KEYSCAN:
+001E87 0F                INC     R7
+001E88 C107              AJMP    ?C0043?KEYSCAN
+001E8A         ?C0044?KEYSCAN:
   274: 	for (i=0; col[i]!=0; i++) {
-001E95 E4                CLR     A
-001E96 FF                MOV     R7,A
-001E97         ?C0046?KEYSCAN:
-001E97 EF                MOV     A,R7
-001E98 900632            MOV     DPTR,#col
-001E9B 93                MOVC    A,@A+DPTR
-001E9C 607C              JZ      ?C0047?KEYSCAN
+001E8A E4                CLR     A
+001E8B FF                MOV     R7,A
+001E8C         ?C0046?KEYSCAN:
+001E8C EF                MOV     A,R7
+001E8D 900632            MOV     DPTR,#col
+001E90 93                MOVC    A,@A+DPTR
+001E91 607C              JZ      ?C0047?KEYSCAN
   275: 		tgroup = col[i]  >> 3;
-001E9E EF                MOV     A,R7
-001E9F 93                MOVC    A,@A+DPTR
-001EA0 FD                MOV     R5,A
-001EA1 13                RRC     A
-001EA2 13                RRC     A
-001EA3 13                RRC     A
-001EA4 541F              ANL     A,#01FH
-001EA6 FE                MOV     R6,A
+001E93 EF                MOV     A,R7
+001E94 93                MOVC    A,@A+DPTR
+001E95 FD                MOV     R5,A
+001E96 13                RRC     A
+001E97 13                RRC     A
+001E98 13                RRC     A
+001E99 541F              ANL     A,#01FH
+001E9B FE                MOV     R6,A
   276: 		tgpionum = 1 << (col[i] & 7);
-001EA7 ED                MOV     A,R5
-001EA8 5407              ANL     A,#07H
-001EAA FD                MOV     R5,A
-001EAB 7401              MOV     A,#01H
-001EAD A805              MOV     R0,AR5
-001EAF 08                INC     R0
-001EB0 8002              SJMP    ?C0101?KEYSCAN
-001EB2         ?C0100?KEYSCAN:
-001EB2 C3                CLR     C
-001EB3 33                RLC     A
-001EB4         ?C0101?KEYSCAN:
-001EB4 D8FC              DJNZ    R0,?C0100?KEYSCAN
-001EB6 FD                MOV     R5,A
+001E9C ED                MOV     A,R5
+001E9D 5407              ANL     A,#07H
+001E9F FD                MOV     R5,A
+001EA0 7401              MOV     A,#01H
+001EA2 A805              MOV     R0,AR5
+001EA4 08                INC     R0
+001EA5 8002              SJMP    ?C0101?KEYSCAN
+001EA7         ?C0100?KEYSCAN:
+001EA7 C3                CLR     C
+001EA8 33                RLC     A
+001EA9         ?C0101?KEYSCAN:
+001EA9 D8FC              DJNZ    R0,?C0100?KEYSCAN
+001EAB FD                MOV     R5,A
   277: 		GET_RAW_KEY_SEL(ksSelMapCheck[i], tgroup, tgpionum);
-001EB7 EE                MOV     A,R6
-001EB8 2478              ADD     A,#078H
-001EBA FB                MOV     R3,A
-001EBB E4                CLR     A
-001EBC 3480              ADDC    A,#080H
-001EBE 8B82              MOV     DPL,R3
-001EC0 F583              MOV     DPH,A
-001EC2 E0                MOVX    A,@DPTR
-001EC3 FC                MOV     R4,A
-001EC4 ED                MOV     A,R5
-001EC5 F4                CPL     A
-001EC6 FB                MOV     R3,A
-001EC7 EC                MOV     A,R4
-001EC8 5B                ANL     A,R3
-001EC9 F0                MOVX    @DPTR,A
-001ECA EE                MOV     A,R6
-001ECB 2470              ADD     A,#070H
-001ECD F582              MOV     DPL,A
-001ECF E4                CLR     A
-001ED0 3480              ADDC    A,#080H
-001ED2 F583              MOV     DPH,A
-001ED4 E0                MOVX    A,@DPTR
-001ED5 4D                ORL     A,R5
-001ED6 F0                MOVX    @DPTR,A
-001ED7 EE                MOV     A,R6
-001ED8 2474              ADD     A,#074H
-001EDA F582              MOV     DPL,A
-001EDC E4                CLR     A
-001EDD 3480              ADDC    A,#080H
-001EDF F583              MOV     DPH,A
-001EE1 E0                MOVX    A,@DPTR
-001EE2 5B                ANL     A,R3
-001EE3 F0                MOVX    @DPTR,A
-001EE4 90811C            MOV     DPTR,#0811CH
-001EE7 E0                MOVX    A,@DPTR
-001EE8 F4                CPL     A
-001EE9 FC                MOV     R4,A
-001EEA 74A8              MOV     A,#LOW ksSelMapCheck
-001EEC 2F                ADD     A,R7
-001EED F582              MOV     DPL,A
+001EAC EE                MOV     A,R6
+001EAD 2478              ADD     A,#078H
+001EAF FB                MOV     R3,A
+001EB0 E4                CLR     A
+001EB1 3480              ADDC    A,#080H
+001EB3 8B82              MOV     DPL,R3
+001EB5 F583              MOV     DPH,A
+001EB7 E0                MOVX    A,@DPTR
+001EB8 FC                MOV     R4,A
+001EB9 ED                MOV     A,R5
+001EBA F4                CPL     A
+001EBB FB                MOV     R3,A
+001EBC EC                MOV     A,R4
+001EBD 5B                ANL     A,R3
+001EBE F0                MOVX    @DPTR,A
+001EBF EE                MOV     A,R6
+001EC0 2470              ADD     A,#070H
+001EC2 F582              MOV     DPL,A
+001EC4 E4                CLR     A
+001EC5 3480              ADDC    A,#080H
+001EC7 F583              MOV     DPH,A
+001EC9 E0                MOVX    A,@DPTR
+001ECA 4D                ORL     A,R5
+001ECB F0                MOVX    @DPTR,A
+001ECC EE                MOV     A,R6
+001ECD 2474              ADD     A,#074H
+001ECF F582              MOV     DPL,A
+001ED1 E4                CLR     A
+001ED2 3480              ADDC    A,#080H
+001ED4 F583              MOV     DPH,A
+001ED6 E0                MOVX    A,@DPTR
+001ED7 5B                ANL     A,R3
+001ED8 F0                MOVX    @DPTR,A
+001ED9 90811C            MOV     DPTR,#0811CH
+001EDC E0                MOVX    A,@DPTR
+001EDD F4                CPL     A
+001EDE FC                MOV     R4,A
+001EDF 74A8              MOV     A,#LOW ksSelMapCheck
+001EE1 2F                ADD     A,R7
+001EE2 F582              MOV     DPL,A
+001EE4 E4                CLR     A
+001EE5 344D              ADDC    A,#HIGH ksSelMapCheck
+001EE7 F583              MOV     DPH,A
+001EE9 EC                MOV     A,R4
+001EEA F0                MOVX    @DPTR,A
+001EEB EE                MOV     A,R6
+001EEC 2478              ADD     A,#078H
+001EEE FB                MOV     R3,A
 001EEF E4                CLR     A
-001EF0 344D              ADDC    A,#HIGH ksSelMapCheck
-001EF2 F583              MOV     DPH,A
-001EF4 EC                MOV     A,R4
-001EF5 F0                MOVX    @DPTR,A
-001EF6 EE                MOV     A,R6
-001EF7 2478              ADD     A,#078H
-001EF9 FB                MOV     R3,A
-001EFA E4                CLR     A
-001EFB 3480              ADDC    A,#080H
-001EFD 8B82              MOV     DPL,R3
-001EFF F583              MOV     DPH,A
-001F01 E0                MOVX    A,@DPTR
-001F02 4D                ORL     A,R5
-001F03 F0                MOVX    @DPTR,A
-001F04 EE                MOV     A,R6
-001F05 2470              ADD     A,#070H
-001F07 FB                MOV     R3,A
-001F08 E4                CLR     A
-001F09 3480              ADDC    A,#080H
-001F0B 8B82              MOV     DPL,R3
-001F0D F583              MOV     DPH,A
-001F0F E0                MOVX    A,@DPTR
-001F10 FC                MOV     R4,A
-001F11 ED                MOV     A,R5
-001F12 F4                CPL     A
-001F13 FB                MOV     R3,A
-001F14 EC                MOV     A,R4
-001F15 5B                ANL     A,R3
-001F16 F0                MOVX    @DPTR,A
+001EF0 3480              ADDC    A,#080H
+001EF2 8B82              MOV     DPL,R3
+001EF4 F583              MOV     DPH,A
+001EF6 E0                MOVX    A,@DPTR
+001EF7 4D                ORL     A,R5
+001EF8 F0                MOVX    @DPTR,A
+001EF9 EE                MOV     A,R6
+001EFA 2470              ADD     A,#070H
+001EFC FB                MOV     R3,A
+001EFD E4                CLR     A
+001EFE 3480              ADDC    A,#080H
+001F00 8B82              MOV     DPL,R3
+001F02 F583              MOV     DPH,A
+001F04 E0                MOVX    A,@DPTR
+001F05 FC                MOV     R4,A
+001F06 ED                MOV     A,R5
+001F07 F4                CPL     A
+001F08 FB                MOV     R3,A
+001F09 EC                MOV     A,R4
+001F0A 5B                ANL     A,R3
+001F0B F0                MOVX    @DPTR,A
   278: 	}
-001F17 0F                INC     R7
-001F18 C197              AJMP    ?C0046?KEYSCAN
-001F1A         ?C0047?KEYSCAN:
+001F0C 0F                INC     R7
+001F0D C18C              AJMP    ?C0046?KEYSCAN
+001F0F         ?C0047?KEYSCAN:
   279: 
   280: 	for (i=0; col[i]!=0; i++) {
-001F1A E4                CLR     A
-001F1B FF                MOV     R7,A
-001F1C         ?C0049?KEYSCAN:
-001F1C EF                MOV     A,R7
-001F1D 900632            MOV     DPTR,#col
-001F20 93                MOVC    A,@A+DPTR
-001F21 6040              JZ      ?C0053?KEYSCAN
+001F0F E4                CLR     A
+001F10 FF                MOV     R7,A
+001F11         ?C0049?KEYSCAN:
+001F11 EF                MOV     A,R7
+001F12 900632            MOV     DPTR,#col
+001F15 93                MOVC    A,@A+DPTR
+001F16 6040              JZ      ?C0053?KEYSCAN
   281: 		if (ksSelMapCheck[i]!=ksSelMapCurr[i]) {
-001F23 74BC              MOV     A,#LOW ksSelMapCurr
-001F25 2F                ADD     A,R7
-001F26 F582              MOV     DPL,A
-001F28 E4                CLR     A
-001F29 344D              ADDC    A,#HIGH ksSelMapCurr
-001F2B F583              MOV     DPH,A
-001F2D E0                MOVX    A,@DPTR
-001F2E FE                MOV     R6,A
-001F2F 74A8              MOV     A,#LOW ksSelMapCheck
-001F31 2F                ADD     A,R7
-001F32 F582              MOV     DPL,A
-001F34 E4                CLR     A
-001F35 344D              ADDC    A,#HIGH ksSelMapCheck
-001F37 F583              MOV     DPH,A
-001F39 E0                MOVX    A,@DPTR
-001F3A 6E                XRL     A,R6
-001F3B 6023              JZ      ?C0051?KEYSCAN
+001F18 74BC              MOV     A,#LOW ksSelMapCurr
+001F1A 2F                ADD     A,R7
+001F1B F582              MOV     DPL,A
+001F1D E4                CLR     A
+001F1E 344D              ADDC    A,#HIGH ksSelMapCurr
+001F20 F583              MOV     DPH,A
+001F22 E0                MOVX    A,@DPTR
+001F23 FE                MOV     R6,A
+001F24 74A8              MOV     A,#LOW ksSelMapCheck
+001F26 2F                ADD     A,R7
+001F27 F582              MOV     DPL,A
+001F29 E4                CLR     A
+001F2A 344D              ADDC    A,#HIGH ksSelMapCheck
+001F2C F583              MOV     DPH,A
+001F2E E0                MOVX    A,@DPTR
+001F2F 6E                XRL     A,R6
+001F30 6023              JZ      ?C0051?KEYSCAN
   282: 			ksSelMapCurr[i] &= ksSelMapCheck[i];
-001F3D 74BC              MOV     A,#LOW ksSelMapCurr
-001F3F 2F                ADD     A,R7
-001F40 F582              MOV     DPL,A
-001F42 E4                CLR     A
-001F43 344D              ADDC    A,#HIGH ksSelMapCurr
-001F45 F583              MOV     DPH,A
-001F47 C083              PUSH    DPH
-001F49 C082              PUSH    DPL
-001F4B E0                MOVX    A,@DPTR
-001F4C FE                MOV     R6,A
-001F4D 74A8              MOV     A,#LOW ksSelMapCheck
-001F4F 2F                ADD     A,R7
-001F50 F582              MOV     DPL,A
-001F52 E4                CLR     A
-001F53 344D              ADDC    A,#HIGH ksSelMapCheck
-001F55 F583              MOV     DPH,A
-001F57 E0                MOVX    A,@DPTR
-001F58 FD                MOV     R5,A
-001F59 EE                MOV     A,R6
-001F5A 5D                ANL     A,R5
-001F5B D082              POP     DPL
-001F5D D083              POP     DPH
-001F5F F0                MOVX    @DPTR,A
+001F32 74BC              MOV     A,#LOW ksSelMapCurr
+001F34 2F                ADD     A,R7
+001F35 F582              MOV     DPL,A
+001F37 E4                CLR     A
+001F38 344D              ADDC    A,#HIGH ksSelMapCurr
+001F3A F583              MOV     DPH,A
+001F3C C083              PUSH    DPH
+001F3E C082              PUSH    DPL
+001F40 E0                MOVX    A,@DPTR
+001F41 FE                MOV     R6,A
+001F42 74A8              MOV     A,#LOW ksSelMapCheck
+001F44 2F                ADD     A,R7
+001F45 F582              MOV     DPL,A
+001F47 E4                CLR     A
+001F48 344D              ADDC    A,#HIGH ksSelMapCheck
+001F4A F583              MOV     DPH,A
+001F4C E0                MOVX    A,@DPTR
+001F4D FD                MOV     R5,A
+001F4E EE                MOV     A,R6
+001F4F 5D                ANL     A,R5
+001F50 D082              POP     DPL
+001F52 D083              POP     DPH
+001F54 F0                MOVX    @DPTR,A
   283: 		}
   284: 	}
-001F60         ?C0051?KEYSCAN:
-001F60 0F                INC     R7
-001F61 80B9              SJMP    ?C0049?KEYSCAN
+001F55         ?C0051?KEYSCAN:
+001F55 0F                INC     R7
+001F56 80B9              SJMP    ?C0049?KEYSCAN
   285: }
-001F63         ?C0053?KEYSCAN:
-001F63 22                RET     
+001F58         ?C0053?KEYSCAN:
+001F58 22                RET     
 ----- FUNCTION KS_ScanMatrix (END) -------
 
 
@@ -5710,53 +5703,53 @@
  FILE: 'keyscan.c'
   287: byte array_is_empty(byte * str1,byte len)
   288: {
-001F64 904E81            MOV     DPTR,#str1
-001F67 EB                MOV     A,R3
-001F68 F0                MOVX    @DPTR,A
-001F69 A3                INC     DPTR
-001F6A EA                MOV     A,R2
-001F6B F0                MOVX    @DPTR,A
-001F6C A3                INC     DPTR
-001F6D E9                MOV     A,R1
-001F6E F0                MOVX    @DPTR,A
+001F59 904E81            MOV     DPTR,#str1
+001F5C EB                MOV     A,R3
+001F5D F0                MOVX    @DPTR,A
+001F5E A3                INC     DPTR
+001F5F EA                MOV     A,R2
+001F60 F0                MOVX    @DPTR,A
+001F61 A3                INC     DPTR
+001F62 E9                MOV     A,R1
+001F63 F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R5' ----
   289: 	byte i;
   290: 	for (i=0;i < len;i++)
 ;---- Variable 'i' assigned to Register 'R7' ----
-001F6F E4                CLR     A
-001F70 FF                MOV     R7,A
-001F71         ?C0054?KEYSCAN:
-001F71 EF                MOV     A,R7
-001F72 C3                CLR     C
-001F73 9D                SUBB    A,R5
-001F74 501B              JNC     ?C0055?KEYSCAN
+001F64 E4                CLR     A
+001F65 FF                MOV     R7,A
+001F66         ?C0054?KEYSCAN:
+001F66 EF                MOV     A,R7
+001F67 C3                CLR     C
+001F68 9D                SUBB    A,R5
+001F69 501B              JNC     ?C0055?KEYSCAN
   291: 	{
   292: 		if (str1[i] != 0)
-001F76 904E81            MOV     DPTR,#str1
-001F79 E0                MOVX    A,@DPTR
-001F7A FB                MOV     R3,A
-001F7B A3                INC     DPTR
-001F7C E0                MOVX    A,@DPTR
-001F7D FA                MOV     R2,A
-001F7E A3                INC     DPTR
-001F7F E0                MOVX    A,@DPTR
-001F80 F9                MOV     R1,A
-001F81 8F82              MOV     DPL,R7
-001F83 758300            MOV     DPH,#00H
-001F86 1203CF            LCALL   ?C?CLDOPTR
-001F89 6003              JZ      ?C0056?KEYSCAN
+001F6B 904E81            MOV     DPTR,#str1
+001F6E E0                MOVX    A,@DPTR
+001F6F FB                MOV     R3,A
+001F70 A3                INC     DPTR
+001F71 E0                MOVX    A,@DPTR
+001F72 FA                MOV     R2,A
+001F73 A3                INC     DPTR
+001F74 E0                MOVX    A,@DPTR
+001F75 F9                MOV     R1,A
+001F76 8F82              MOV     DPL,R7
+001F78 758300            MOV     DPH,#00H
+001F7B 1203CF            LCALL   ?C?CLDOPTR
+001F7E 6003              JZ      ?C0056?KEYSCAN
   293: 			return 0x00;
-001F8B 7F00              MOV     R7,#00H
-001F8D 22                RET     
+001F80 7F00              MOV     R7,#00H
+001F82 22                RET     
   294: 	}
-001F8E         ?C0056?KEYSCAN:
-001F8E 0F                INC     R7
-001F8F 80E0              SJMP    ?C0054?KEYSCAN
-001F91         ?C0055?KEYSCAN:
+001F83         ?C0056?KEYSCAN:
+001F83 0F                INC     R7
+001F84 80E0              SJMP    ?C0054?KEYSCAN
+001F86         ?C0055?KEYSCAN:
   295: 	return 0x01;
-001F91 7F01              MOV     R7,#01H
+001F86 7F01              MOV     R7,#01H
   296: }
-001F93 22                RET     
+001F88 22                RET     
 ----- FUNCTION _array_is_empty (END) -------
 
 
@@ -5766,27 +5759,27 @@
    49: {
    50: 	System_clear_mem();
    51: 	YC_adc_init();
-001F94 120E49            LCALL   System_clear_mem
+001F89 120E49            LCALL   System_clear_mem
    52: 	g_variable.release_data =1;
-001F97 1222D6            LCALL   YC_adc_init
+001F8C 1221CD            LCALL   YC_adc_init
    53: 	g_variable.powerOn_timer = KB_POWERON_LED_ON_TIMER;
-001F9A 904CEE            MOV     DPTR,#g_variable+02FH
-001F9D 7401              MOV     A,#01H
-001F9F F0                MOVX    @DPTR,A
+001F8F 904CEE            MOV     DPTR,#g_variable+02FH
+001F92 7401              MOV     A,#01H
+001F94 F0                MOVX    @DPTR,A
    54: 	g_variable.recon_count = 0;
-001FA0 904CE5            MOV     DPTR,#g_variable+026H
-001FA3 741E              MOV     A,#01EH
-001FA5 F0                MOVX    @DPTR,A
+001F95 904CE5            MOV     DPTR,#g_variable+026H
+001F98 741E              MOV     A,#01EH
+001F9A F0                MOVX    @DPTR,A
    55: 	g_variable.test_buff = 0xff;
-001FA6 E4                CLR     A
-001FA7 904CF3            MOV     DPTR,#g_variable+034H
-001FAA F0                MOVX    @DPTR,A
+001F9B E4                CLR     A
+001F9C 904CF3            MOV     DPTR,#g_variable+034H
+001F9F F0                MOVX    @DPTR,A
    56: }
-001FAB 904D04            MOV     DPTR,#g_variable+045H
-001FAE 74FF              MOV     A,#0FFH
-001FB0 F0                MOVX    @DPTR,A
+001FA0 904D04            MOV     DPTR,#g_variable+045H
+001FA3 74FF              MOV     A,#0FFH
+001FA5 F0                MOVX    @DPTR,A
    57: 
-001FB1 22                RET     
+001FA6 22                RET     
 ----- FUNCTION System_Software_init (END) -------
 
 
@@ -5796,13 +5789,13 @@
    59: {
    60: 	m_reset_reg = 1;
    61: 	while(1);
-001FB2 908010            MOV     DPTR,#m_reset_reg
-001FB5 7401              MOV     A,#01H
-001FB7 F0                MOVX    @DPTR,A
-001FB8         ?C0004?SYS:
+001FA7 908010            MOV     DPTR,#m_reset_reg
+001FAA 7401              MOV     A,#01H
+001FAC F0                MOVX    @DPTR,A
+001FAD         ?C0004?SYS:
    62: }
-001FB8 80FE              SJMP    ?C0004?SYS
-001FBA 22                RET     
+001FAD 80FE              SJMP    ?C0004?SYS
+001FAF 22                RET     
 ----- FUNCTION System_Hardware_reset (END) -------
 
 
@@ -5812,7 +5805,7 @@
    75: {
    76: 	System_Hardware_reset();
    77: }
-001FBB 80F5              SJMP    System_Hardware_reset
+001FB0 80F5              SJMP    System_Hardware_reset
 ----- FUNCTION System_Reset_Connect (END) -------
 
 
@@ -5820,21 +5813,21 @@
  FILE: 'sys.c'
    84: static void kb_cb_Hid(byte *p,byte len) {
    85: 	//p[0] is hid type,always is 1(kb) now
-001FBD 904E92            MOV     DPTR,#len
-001FC0 ED                MOV     A,R5
-001FC1 F0                MOVX    @DPTR,A
+001FB2 904E92            MOV     DPTR,#len
+001FB5 ED                MOV     A,R5
+001FB6 F0                MOVX    @DPTR,A
 ;---- Variable 'p' assigned to Register 'R1/R2/R3' ----
    86: 	byte temp = p[1];
-001FC2 900001            MOV     DPTR,#01H
-001FC5 1203CF            LCALL   ?C?CLDOPTR
-001FC8 904E93            MOV     DPTR,#temp
-001FCB F0                MOVX    @DPTR,A
+001FB7 900001            MOV     DPTR,#01H
+001FBA 1203CF            LCALL   ?C?CLDOPTR
+001FBD 904E93            MOV     DPTR,#temp
+001FC0 F0                MOVX    @DPTR,A
    87: 
    88: 	if (len<2) {
    89: 		return;
    90: 	}
    91: }
-001FCC 22                RET     
+001FC1 22                RET     
 ----- FUNCTION _kb_cb_Hid (END) -------
 
 
@@ -5842,350 +5835,705 @@
  FILE: 'sys.c'
   177: void LED_timer500ms()
   178: {
-  179: 	if (power_on_flag != 2)
-  180: 		return;
-001FCD 904DE4            MOV     DPTR,#power_on_flag
-001FD0 E0                MOVX    A,@DPTR
-001FD1 B4020B            CJNE    A,#02H,?C0029?SYS
-001FD4         ?C0028?SYS:
-  181:  	if (g_variable.pairing_g24_timeout != 0)
-001FD4 904CF1            MOV     DPTR,#g_variable+032H
-001FD7 E0                MOVX    A,@DPTR
-001FD8 6005              JZ      ?C0029?SYS
-  182: 	{
-  183: 		GPIO_FlipOutBit(G24_LED_GPIO);
-001FDA 7F1D              MOV     R7,#01DH
-001FDC 122546            LCALL   _GPIO_FlipOutBit
-  184: 	}
-  185: 	else
-  186: 	{
-  187: 		
-  188: 	}
-  189: }
-001FDF         ?C0029?SYS:
-001FDF 22                RET     
+  179: 
+  180: }
+001FC2 22                RET     
 ----- FUNCTION LED_timer500ms (END) -------
 
 
------ FUNCTION YC_connect_timeout_500ms (BEGIN) -----
+----- FUNCTION kb_cb_Timer500ms (BEGIN) -----
  FILE: 'sys.c'
-  191: void YC_connect_timeout_500ms()
-  192: {
-  193: 	
-  194: //system long sleep timer
-  195: 	if(g_variable.g24_currentState == CHANGE_TO_24G_CONNECTED)
-001FE0 904CC5            MOV     DPTR,#g_variable+06H
+  295: static void kb_cb_Timer500ms()
+  296: {
+  297: 	LED_timer500ms();	
+  298: 
+001FC3 F1C2              ACALL   LED_timer500ms
+  299: 	g_variable.sleepTimer++;
+001FC5 904CE4            MOV     DPTR,#g_variable+025H
+001FC8 E0                MOVX    A,@DPTR
+001FC9 04                INC     A
+001FCA F0                MOVX    @DPTR,A
+001FCB 7006              JNZ     ?C0093?SYS
+001FCD 904CE3            MOV     DPTR,#g_variable+024H
+001FD0 E0                MOVX    A,@DPTR
+001FD1 04                INC     A
+001FD2 F0                MOVX    @DPTR,A
+001FD3         ?C0093?SYS:
+  300: 
+  301: 	YC_adc_check_timer500ms();
+001FD3 122395            LCALL   YC_adc_check_timer500ms
+  302: 	YC_connect_timeout_500ms();
+001FD6 122068            LCALL   YC_connect_timeout_500ms
+;----                  JMP     kb_button_press_timer500ms
+  303: 	kb_button_press_timer500ms();
+  304: 	
+  305: 	
+  306: 	return;
+----- FUNCTION kb_cb_Timer500ms (END) -------
+
+
+----- FUNCTION kb_button_press_timer500ms (BEGIN) -----
+ FILE: 'sys.c'
+  243: void kb_button_press_timer500ms()
+  244: {
+  245: 	
+  246: //key status 
+  247: 	if (g_variable.button_flag & KEY_FLAG_SAME_KEY_PRESS)
+001FD9 904CCE            MOV     DPTR,#g_variable+0FH
+001FDC E0                MOVX    A,@DPTR
+001FDD 30E13E            JNB     ACC.1,?C0042?SYS
+  248: 	{
+  249: 		if (g_variable.button_timer[1] < 250)
+001FE0 904CD0            MOV     DPTR,#g_variable+011H
 001FE3 E0                MOVX    A,@DPTR
-001FE4 B40312            CJNE    A,#03H,?C0032?SYS
-  196: 	{
-  197: 		if (g_variable.sleepTimer >= RECONNECT_TIMER_10S)
-001FE7 C3                CLR     C
-001FE8 904CE4            MOV     DPTR,#g_variable+025H
-001FEB E0                MOVX    A,@DPTR
-001FEC 9414              SUBB    A,#014H
-001FEE 904CE3            MOV     DPTR,#g_variable+024H
-001FF1 E0                MOVX    A,@DPTR
-001FF2 9400              SUBB    A,#00H
-001FF4 402D              JC      ?C0039?SYS
-  198: 			System_long_sleep();
-001FF6 0207B5            LJMP    System_long_sleep
-  199: 	//	else
-  200: 	//	{
-  201: 	//		if((g_variable.sleepTimer & 0x10) && (!keyCount))
-  202: 	//		{
-  203: 	//			xmemclear(hidBuff,9);
-  204: 	//			hidBuff[0] = HID_REPORTID_1;		// standard key send
-  205: 	//			IPC_TxHidData(hidBuff, 9);
-  206: 	//		}
-  207: 	//	}
-  208: 	}
-001FF9         ?C0032?SYS:
-  209: 	else if(g_variable.g24_currentState == CHANGE_TO_24G_PAIRING)
-001FF9 904CC5            MOV     DPTR,#g_variable+06H
-001FFC E0                MOVX    A,@DPTR
-001FFD B40114            CJNE    A,#01H,?C0035?SYS
-  210: 	{
-  211: 		if (g_variable.sleepTimer == G24_PAIRING_TIME_OUT_20S)
-002000 904CE3            MOV     DPTR,#g_variable+024H
-002003 E0                MOVX    A,@DPTR
-002004 7004              JNZ     ?C0092?SYS
-002006 A3                INC     DPTR
-002007 E0                MOVX    A,@DPTR
-002008 6428              XRL     A,#028H
-00200A         ?C0092?SYS:
-00200A 7017              JNZ     ?C0039?SYS
-  212: 		{
-  213: 			IPC_TxControlCmd(IPC_CMD_STOP_24G);
-00200C 7F22              MOV     R7,#022H
-00200E 1208B6            LCALL   _IPC_TxControlCmd
-  214: 			System_long_sleep();
-002011 0207B5            LJMP    System_long_sleep
-  215: 		}
-  216: 	}
-002014         ?C0035?SYS:
-  217: 	else
-  218: 	{
-  219: 		if (g_variable.sleepTimer == RECONNECT_TIMER_10S)
-002014 904CE3            MOV     DPTR,#g_variable+024H
-002017 E0                MOVX    A,@DPTR
-002018 7004              JNZ     ?C0093?SYS
-00201A A3                INC     DPTR
-00201B E0                MOVX    A,@DPTR
-00201C 6414              XRL     A,#014H
-00201E         ?C0093?SYS:
-00201E 7003              JNZ     ?C0039?SYS
-  220: 		{
-  221: 			System_long_sleep();
-002020 1207B5            LCALL   System_long_sleep
-  222: 		}
-  223: 	}
-  224: }
-002023         ?C0039?SYS:
-002023 22                RET     
------ FUNCTION YC_connect_timeout_500ms (END) -------
+001FE4 C3                CLR     C
+001FE5 94FA              SUBB    A,#0FAH
+001FE7 5003              JNC     ?C0043?SYS
+  250: 			g_variable.button_timer[1]++;
+001FE9 E0                MOVX    A,@DPTR
+001FEA 04                INC     A
+001FEB F0                MOVX    @DPTR,A
+001FEC         ?C0043?SYS:
+  251: 		if (g_variable.button_timer[1] == 180)			// 500ms*180*3 = 4min30s
+001FEC 904CD0            MOV     DPTR,#g_variable+011H
+001FEF E0                MOVX    A,@DPTR
+001FF0 64B4              XRL     A,#0B4H
+001FF2 7037              JNZ     ?C0048?SYS
+  252: 		{
+  253: 			press_long_time_flag++;
+001FF4 904DDC            MOV     DPTR,#press_long_time_flag
+001FF7 E0                MOVX    A,@DPTR
+001FF8 04                INC     A
+001FF9 F0                MOVX    @DPTR,A
+  254: 			if(press_long_time_flag <= 2)
+001FFA E0                MOVX    A,@DPTR
+001FFB D3                SETB    C
+001FFC 9402              SUBB    A,#02H
+001FFE 5007              JNC     ?C0045?SYS
+  255: 			{
+  256: 				g_variable.button_timer[1] = 0;
+002000 E4                CLR     A
+002001 904CD0            MOV     DPTR,#g_variable+011H
+002004 F0                MOVX    @DPTR,A
+  257: 			}
+002005 8024              SJMP    ?C0048?SYS
+002007         ?C0045?SYS:
+  258: 			else if(press_long_time_flag == 3)
+002007 904DDC            MOV     DPTR,#press_long_time_flag
+00200A E0                MOVX    A,@DPTR
+00200B B4031D            CJNE    A,#03H,?C0048?SYS
+  259: 			{
+  260: 				long_press_flag = 1;
+00200E 904DD5            MOV     DPTR,#long_press_flag
+002011 7401              MOV     A,#01H
+002013 F0                MOVX    @DPTR,A
+  261: 				g_variable.button_timer[1] = 0;
+002014 E4                CLR     A
+002015 904CD0            MOV     DPTR,#g_variable+011H
+002018 F0                MOVX    @DPTR,A
+  262: 				System_long_sleep();
+002019 1207B5            LCALL   System_long_sleep
+  263: 			}
+  264: 		}
+  265: 	}
+00201C 800D              SJMP    ?C0048?SYS
+00201E         ?C0042?SYS:
+  266: 	else
+  267: 	{
+  268: 		press_long_time_flag = 0;
+00201E E4                CLR     A
+00201F 904DDC            MOV     DPTR,#press_long_time_flag
+002022 F0                MOVX    @DPTR,A
+  269: 		long_press_flag = 0;
+002023 904DD5            MOV     DPTR,#long_press_flag
+002026 F0                MOVX    @DPTR,A
+  270: 		g_variable.button_timer[1] = 0;
+002027 904CD0            MOV     DPTR,#g_variable+011H
+00202A F0                MOVX    @DPTR,A
+  271: 	}
+00202B         ?C0048?SYS:
+  272: 		
+  273: 	if (g_variable.button_flag & KEY_FLAG_FN_24G_DEVICE_BUTTON)		// G24 pairing
+00202B 904CCE            MOV     DPTR,#g_variable+0FH
+00202E E0                MOVX    A,@DPTR
+00202F 30E430            JNB     ACC.4,?C0049?SYS
+  274: 	{
+  275: 		g_variable.delay_enter_lpm_timer = 10;
+002032 904CED            MOV     DPTR,#g_variable+02EH
+002035 740A              MOV     A,#0AH
+002037 F0                MOVX    @DPTR,A
+  276: 		if (g_variable.button_timer[2] < 250)
+002038 904CD1            MOV     DPTR,#g_variable+012H
+00203B E0                MOVX    A,@DPTR
+00203C C3                CLR     C
+00203D 94FA              SUBB    A,#0FAH
+00203F 5003              JNC     ?C0050?SYS
+  277: 			g_variable.button_timer[2]++;
+002041 E0                MOVX    A,@DPTR
+002042 04                INC     A
+002043 F0                MOVX    @DPTR,A
+002044         ?C0050?SYS:
+  278: 		if (g_variable.button_timer[2] == 6)
+002044 904CD1            MOV     DPTR,#g_variable+012H
+002047 E0                MOVX    A,@DPTR
+002048 B4061C            CJNE    A,#06H,?C0055?SYS
+  279: 		{
+  280: 			if( !g_variable.current_device_num || (g_variable.current_device_num == 0xfe))
+00204B 904CC3            MOV     DPTR,#g_variable+04H
+00204E E0                MOVX    A,@DPTR
+00204F FF                MOV     R7,A
+002050 6003              JZ      ?C0053?SYS
+002052 B4FE12            CJNE    A,#0FEH,?C0055?SYS
+002055         ?C0053?SYS:
+  281: 			{
+  282: 				YC_disconnect_all_link();
+002055 120FF2            LCALL   YC_disconnect_all_link
+  283: 				Delay1ms(10);
+002058 7F0A              MOV     R7,#0AH
+00205A 120A7A            LCALL   _Delay1ms
+  284: 				YC_key_action_handle(KEY_PAIRING_24G);
+00205D 7F0A              MOV     R7,#0AH
+00205F 02082D            LJMP    _YC_key_action_handle
+  285: 			}
+  286: 		}
+  287: 	}
+002062         ?C0049?SYS:
+  288: 	else
+  289: 		g_variable.button_timer[2] = 0;
+002062 E4                CLR     A
+002063 904CD1            MOV     DPTR,#g_variable+012H
+002066 F0                MOVX    @DPTR,A
+  290: 	
+  291: }
+002067         ?C0055?SYS:
+002067 22                RET     
+----- FUNCTION kb_button_press_timer500ms (END) -------
 
 
------ FUNCTION YC_pairing_timerout_500ms (BEGIN) -----
+----- FUNCTION YC_connect_timeout_500ms (BEGIN) -----
  FILE: 'sys.c'
-  228: void YC_pairing_timerout_500ms()
-  229: {
-  230: //pairing timer
-  231: 	if (g_variable.pairing_g24_timeout != 0)
-002024 904CF1            MOV     DPTR,#g_variable+032H
-002027 E0                MOVX    A,@DPTR
-002028 601D              JZ      ?C0042?SYS
-  232: 	{
-  233: 		g_variable.sleepTimer = 0;
-00202A E4                CLR     A
-00202B 904CE3            MOV     DPTR,#g_variable+024H
-00202E F0                MOVX    @DPTR,A
-00202F A3                INC     DPTR
-002030 F0                MOVX    @DPTR,A
-  234: 		g_variable.pairing_g24_timeout--;
-002031 904CF1            MOV     DPTR,#g_variable+032H
-002034 E0                MOVX    A,@DPTR
-002035 14                DEC     A
-002036 F0                MOVX    @DPTR,A
-  235: 		if (g_variable.pairing_g24_timeout == 0)
-002037 E0                MOVX    A,@DPTR
-002038 700D              JNZ     ?C0042?SYS
-  236: 		{
-  237: 			IPC_TxControlCmd(IPC_CMD_STOP_24G);
-00203A 7F22              MOV     R7,#022H
-00203C 1208B6            LCALL   _IPC_TxControlCmd
-  238: 			Delay1ms(10);
-00203F 7F0A              MOV     R7,#0AH
-002041 120A7A            LCALL   _Delay1ms
-  239: 			System_long_sleep();
-002044 1207B5            LCALL   System_long_sleep
-  240: 		}
-  241: 	}
-  242: }
-002047         ?C0042?SYS:
-002047 22                RET     
------ FUNCTION YC_pairing_timerout_500ms (END) -------
+  182: void YC_connect_timeout_500ms()
+  183: {
+  184: 	
+  185: //system long sleep timer
+  186: 	if(g_variable.g24_currentState == CHANGE_TO_24G_CONNECTED)
+002068 904CC5            MOV     DPTR,#g_variable+06H
+00206B E0                MOVX    A,@DPTR
+00206C B40312            CJNE    A,#03H,?C0029?SYS
+  187: 	{
+  188: 		if (g_variable.sleepTimer >= RECONNECT_TIMER_10S)
+00206F C3                CLR     C
+002070 904CE4            MOV     DPTR,#g_variable+025H
+002073 E0                MOVX    A,@DPTR
+002074 9414              SUBB    A,#014H
+002076 904CE3            MOV     DPTR,#g_variable+024H
+002079 E0                MOVX    A,@DPTR
+00207A 9400              SUBB    A,#00H
+00207C 402D              JC      ?C0036?SYS
+  189: 			System_long_sleep();
+00207E 0207B5            LJMP    System_long_sleep
+  190: 	//	else
+  191: 	//	{
+  192: 	//		if((g_variable.sleepTimer & 0x10) && (!keyCount))
+  193: 	//		{
+  194: 	//			xmemclear(hidBuff,9);
+  195: 	//			hidBuff[0] = HID_REPORTID_1;		// standard key send
+  196: 	//			IPC_TxHidData(hidBuff, 9);
+  197: 	//		}
+  198: 	//	}
+  199: 	}
+002081         ?C0029?SYS:
+  200: 	else if(g_variable.g24_currentState == CHANGE_TO_24G_PAIRING)
+002081 904CC5            MOV     DPTR,#g_variable+06H
+002084 E0                MOVX    A,@DPTR
+002085 B40114            CJNE    A,#01H,?C0032?SYS
+  201: 	{
+  202: 		if (g_variable.sleepTimer == RECONNECT_TIMER_20S)
+002088 904CE3            MOV     DPTR,#g_variable+024H
+00208B E0                MOVX    A,@DPTR
+00208C 7004              JNZ     ?C0091?SYS
+00208E A3                INC     DPTR
+00208F E0                MOVX    A,@DPTR
+002090 6428              XRL     A,#028H
+002092         ?C0091?SYS:
+002092 7017              JNZ     ?C0036?SYS
+  203: 		{
+  204: 			IPC_TxControlCmd(IPC_CMD_STOP_24G);
+002094 7F22              MOV     R7,#022H
+002096 1208B6            LCALL   _IPC_TxControlCmd
+  205: 			System_long_sleep();
+002099 0207B5            LJMP    System_long_sleep
+  206: 		}
+  207: 	}
+00209C         ?C0032?SYS:
+  208: 	else
+  209: 	{
+  210: 		if (g_variable.sleepTimer == RECONNECT_TIMER_10S)
+00209C 904CE3            MOV     DPTR,#g_variable+024H
+00209F E0                MOVX    A,@DPTR
+0020A0 7004              JNZ     ?C0092?SYS
+0020A2 A3                INC     DPTR
+0020A3 E0                MOVX    A,@DPTR
+0020A4 6414              XRL     A,#014H
+0020A6         ?C0092?SYS:
+0020A6 7003              JNZ     ?C0036?SYS
+  211: 		{
+  212: 			System_long_sleep();
+0020A8 1207B5            LCALL   System_long_sleep
+  213: 		}
+  214: 	}
+  215: }
+0020AB         ?C0036?SYS:
+0020AB 22                RET     
+----- FUNCTION YC_connect_timeout_500ms (END) -------
 
 
------ FUNCTION kb_cb_Timer500ms (BEGIN) -----
+----- FUNCTION YC_pairing_timerout_100ms (BEGIN) -----
  FILE: 'sys.c'
-  296: static void kb_cb_Timer500ms()
-  297: {
-  298: 	LED_timer500ms();	
-  299: 
-002048 121FCD            LCALL   LED_timer500ms
-  300: 	g_variable.sleepTimer++;
-00204B 904CE4            MOV     DPTR,#g_variable+025H
-00204E E0                MOVX    A,@DPTR
-00204F 04                INC     A
-002050 F0                MOVX    @DPTR,A
-002051 7006              JNZ     ?C0094?SYS
-002053 904CE3            MOV     DPTR,#g_variable+024H
-002056 E0                MOVX    A,@DPTR
-002057 04                INC     A
-002058 F0                MOVX    @DPTR,A
-002059         ?C0094?SYS:
-  301: 
-  302: 	YC_adc_check_timer500ms();
-002059 1162              ACALL   YC_adc_check_timer500ms
-  303: 	YC_connect_timeout_500ms();
-00205B 121FE0            LCALL   YC_connect_timeout_500ms
-  304: 	kb_button_press_timer500ms();
-00205E 1173              ACALL   kb_button_press_timer500ms
-  305: 	YC_pairing_timerout_500ms();
-002060 80C2              SJMP    YC_pairing_timerout_500ms
-  306: 	
-  307: 	return;
------ FUNCTION kb_cb_Timer500ms (END) -------
+  219: void YC_pairing_timerout_100ms()
+  220: {
+  221: //pairing timer
+  222: 	if (power_on_flag != 2)
+0020AC 904DE4            MOV     DPTR,#power_on_flag
+0020AF E0                MOVX    A,@DPTR
+0020B0 6402              XRL     A,#02H
+0020B2 702E              JNZ     ?C0038?SYS
+0020B4         ?C0037?SYS:
+  223: 		return;
+  224: 		
+  225: 	if(g_variable.pairing_g24_timeout != 0)
+0020B4 904CF1            MOV     DPTR,#g_variable+032H
+0020B7 E0                MOVX    A,@DPTR
+0020B8 6028              JZ      ?C0038?SYS
+  226: 	{
+  227: 		g_variable.sleepTimer = 0;
+0020BA E4                CLR     A
+0020BB 904CE3            MOV     DPTR,#g_variable+024H
+0020BE F0                MOVX    @DPTR,A
+0020BF A3                INC     DPTR
+0020C0 F0                MOVX    @DPTR,A
+  228: 		g_variable.pairing_g24_timeout--;
+0020C1 904CF1            MOV     DPTR,#g_variable+032H
+0020C4 E0                MOVX    A,@DPTR
+0020C5 14                DEC     A
+0020C6 F0                MOVX    @DPTR,A
+  229: 
+  230: 		if (g_variable.pairing_g24_timeout & 0x02)
+0020C7 E0                MOVX    A,@DPTR
+0020C8 30E104            JNB     ACC.1,?C0040?SYS
+  231: 		{
+  232: 			GPIO_FlipOutBit(G24_LED_GPIO);
+0020CB 7F1D              MOV     R7,#01DH
+0020CD 11E3              ACALL   _GPIO_FlipOutBit
+  233: 		}
+0020CF         ?C0040?SYS:
+  234: 		if (g_variable.pairing_g24_timeout == 0)
+0020CF 904CF1            MOV     DPTR,#g_variable+032H
+0020D2 E0                MOVX    A,@DPTR
+0020D3 700D              JNZ     ?C0038?SYS
+  235: 		{
+  236: 			IPC_TxControlCmd(IPC_CMD_STOP_24G);
+0020D5 7F22              MOV     R7,#022H
+0020D7 1208B6            LCALL   _IPC_TxControlCmd
+  237: 			Delay1ms(10);
+0020DA 7F0A              MOV     R7,#0AH
+0020DC 120A7A            LCALL   _Delay1ms
+  238: 			System_long_sleep();
+0020DF 1207B5            LCALL   System_long_sleep
+  239: 		}
+  240: 	}
+  241: }
+0020E2         ?C0038?SYS:
+0020E2 22                RET     
+----- FUNCTION YC_pairing_timerout_100ms (END) -------
 
 
------ FUNCTION YC_adc_check_timer500ms (BEGIN) -----
- FILE: 'adc.c'
-   82: void YC_adc_check_timer500ms()
-   83: {
-   84: #ifdef  ADC_ENABLE
-   85: 	// adc check timer	
-   86: 	if (g_variable.battery_check_interval)
-002062 904CD3            MOV     DPTR,#g_variable+014H
-002065 E0                MOVX    A,@DPTR
-002066 600A              JZ      ?C0016?ADC
-   87: 	{
-   88: 		g_variable.battery_check_interval--;
-002068 14                DEC     A
-002069 F0                MOVX    @DPTR,A
-   89: 		if (g_variable.battery_check_interval == 0)
-00206A E0                MOVX    A,@DPTR
-00206B 7005              JNZ     ?C0016?ADC
-   90: 		{
-   91: 			g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-00206D 7405              MOV     A,#05H
-00206F F0                MOVX    @DPTR,A
-   92: 			YC_adc_check();
-002070 3102              ACALL   YC_adc_check
-   93: 		}
-   94: 	}
-   95: #endif	
-   96: }
-002072         ?C0016?ADC:
-002072 22                RET     
------ FUNCTION YC_adc_check_timer500ms (END) -------
+----- FUNCTION _GPIO_FlipOutBit (BEGIN) -----
+0020E3 904E9E            MOV     DPTR,#gpio_num
+0020E6 EF                MOV     A,R7
+0020E7 F0                MOVX    @DPTR,A
+0020E8 7B01              MOV     R3,#01H
+0020EA 7A80              MOV     R2,#080H
+0020EC 7974              MOV     R1,#074H
+0020EE 121387            LCALL   _gpioGetBit
+0020F1 9209              MOV     st,C
+0020F3 904E9E            MOV     DPTR,#gpio_num
+0020F6 E0                MOVX    A,@DPTR
+0020F7 FF                MOV     R7,A
+0020F8 A209              MOV     C,st
+0020FA B3                CPL     C
+0020FB 9201              MOV     ?_GPIO_Setout?BIT,C
+0020FD 0207A3            LJMP    _GPIO_Setout
+----- FUNCTION _GPIO_FlipOutBit (END) -------
 
 
------ FUNCTION kb_button_press_timer500ms (BEGIN) -----
+----- FUNCTION kb_cb_Timer100ms (BEGIN) -----
  FILE: 'sys.c'
-  244: void kb_button_press_timer500ms()
-  245: {
-  246: 	
-  247: //key status 
-  248: 	if (g_variable.button_flag & KEY_FLAG_SAME_KEY_PRESS)
-002073 904CCE            MOV     DPTR,#g_variable+0FH
-002076 E0                MOVX    A,@DPTR
-002077 30E13E            JNB     ACC.1,?C0043?SYS
-  249: 	{
-  250: 		if (g_variable.button_timer[1] < 250)
-00207A 904CD0            MOV     DPTR,#g_variable+011H
-00207D E0                MOVX    A,@DPTR
-00207E C3                CLR     C
-00207F 94FA              SUBB    A,#0FAH
-002081 5003              JNC     ?C0044?SYS
-  251: 			g_variable.button_timer[1]++;
-002083 E0                MOVX    A,@DPTR
-002084 04                INC     A
-002085 F0                MOVX    @DPTR,A
-002086         ?C0044?SYS:
-  252: 		if (g_variable.button_timer[1] == 180)			// 500ms*180*3 = 4min30s
-002086 904CD0            MOV     DPTR,#g_variable+011H
-002089 E0                MOVX    A,@DPTR
-00208A 64B4              XRL     A,#0B4H
-00208C 7037              JNZ     ?C0049?SYS
-  253: 		{
-  254: 			press_long_time_flag++;
-00208E 904DDC            MOV     DPTR,#press_long_time_flag
-002091 E0                MOVX    A,@DPTR
-002092 04                INC     A
-002093 F0                MOVX    @DPTR,A
-  255: 			if(press_long_time_flag <= 2)
-002094 E0                MOVX    A,@DPTR
-002095 D3                SETB    C
-002096 9402              SUBB    A,#02H
-002098 5007              JNC     ?C0046?SYS
-  256: 			{
-  257: 				g_variable.button_timer[1] = 0;
-00209A E4                CLR     A
-00209B 904CD0            MOV     DPTR,#g_variable+011H
-00209E F0                MOVX    @DPTR,A
-  258: 			}
-00209F 8024              SJMP    ?C0049?SYS
-0020A1         ?C0046?SYS:
-  259: 			else if(press_long_time_flag == 3)
-0020A1 904DDC            MOV     DPTR,#press_long_time_flag
-0020A4 E0                MOVX    A,@DPTR
-0020A5 B4031D            CJNE    A,#03H,?C0049?SYS
-  260: 			{
-  261: 				long_press_flag = 1;
-0020A8 904DD5            MOV     DPTR,#long_press_flag
-0020AB 7401              MOV     A,#01H
-0020AD F0                MOVX    @DPTR,A
-  262: 				g_variable.button_timer[1] = 0;
-0020AE E4                CLR     A
-0020AF 904CD0            MOV     DPTR,#g_variable+011H
-0020B2 F0                MOVX    @DPTR,A
-  263: 				System_long_sleep();
-0020B3 1207B5            LCALL   System_long_sleep
-  264: 			}
-  265: 		}
-  266: 	}
-0020B6 800D              SJMP    ?C0049?SYS
-0020B8         ?C0043?SYS:
-  267: 	else
-  268: 	{
-  269: 		press_long_time_flag = 0;
-0020B8 E4                CLR     A
-0020B9 904DDC            MOV     DPTR,#press_long_time_flag
-0020BC F0                MOVX    @DPTR,A
-  270: 		long_press_flag = 0;
-0020BD 904DD5            MOV     DPTR,#long_press_flag
-0020C0 F0                MOVX    @DPTR,A
-  271: 		g_variable.button_timer[1] = 0;
-0020C1 904CD0            MOV     DPTR,#g_variable+011H
-0020C4 F0                MOVX    @DPTR,A
-  272: 	}
-0020C5         ?C0049?SYS:
-  273: 		
-  274: 	if (g_variable.button_flag & KEY_FLAG_FN_24G_DEVICE_BUTTON)		// G24 pairing
-0020C5 904CCE            MOV     DPTR,#g_variable+0FH
-0020C8 E0                MOVX    A,@DPTR
-0020C9 30E430            JNB     ACC.4,?C0050?SYS
-  275: 	{
-  276: 		g_variable.delay_enter_lpm_timer = 10;
-0020CC 904CED            MOV     DPTR,#g_variable+02EH
-0020CF 740A              MOV     A,#0AH
-0020D1 F0                MOVX    @DPTR,A
-  277: 		if (g_variable.button_timer[2] < 250)
-0020D2 904CD1            MOV     DPTR,#g_variable+012H
-0020D5 E0                MOVX    A,@DPTR
-0020D6 C3                CLR     C
-0020D7 94FA              SUBB    A,#0FAH
-0020D9 5003              JNC     ?C0051?SYS
-  278: 			g_variable.button_timer[2]++;
-0020DB E0                MOVX    A,@DPTR
-0020DC 04                INC     A
-0020DD F0                MOVX    @DPTR,A
-0020DE         ?C0051?SYS:
-  279: 		if (g_variable.button_timer[2] == 6)
-0020DE 904CD1            MOV     DPTR,#g_variable+012H
-0020E1 E0                MOVX    A,@DPTR
-0020E2 B4061C            CJNE    A,#06H,?C0056?SYS
-  280: 		{
-  281: 			if( !g_variable.current_device_num || (g_variable.current_device_num == 0xfe))
-0020E5 904CC3            MOV     DPTR,#g_variable+04H
-0020E8 E0                MOVX    A,@DPTR
-0020E9 FF                MOV     R7,A
-0020EA 6003              JZ      ?C0054?SYS
-0020EC B4FE12            CJNE    A,#0FEH,?C0056?SYS
-0020EF         ?C0054?SYS:
-  282: 			{
-  283: 				YC_disconnect_all_link();
-0020EF 120FF2            LCALL   YC_disconnect_all_link
-  284: 				Delay1ms(10);
-0020F2 7F0A              MOV     R7,#0AH
-0020F4 120A7A            LCALL   _Delay1ms
-  285: 				YC_key_action_handle(KEY_PAIRING_24G);
-0020F7 7F0A              MOV     R7,#0AH
-0020F9 02082D            LJMP    _YC_key_action_handle
-  286: 			}
-  287: 		}
-  288: 	}
-0020FC         ?C0050?SYS:
-  289: 	else
-  290: 		g_variable.button_timer[2] = 0;
-0020FC E4                CLR     A
-0020FD 904CD1            MOV     DPTR,#g_variable+012H
-002100 F0                MOVX    @DPTR,A
-  291: 	
-  292: }
-002101         ?C0056?SYS:
-002101 22                RET     
------ FUNCTION kb_button_press_timer500ms (END) -------
+  310: static void kb_cb_Timer100ms()
+  311: {
+  312: 
+  313: 	YC_pairing_timerout_100ms();
+002100 11AC              ACALL   YC_pairing_timerout_100ms
+  314: 
+  315: 
+  316: 	if (g_variable.delay_enter_lpm_timer) 
+002102 904CED            MOV     DPTR,#g_variable+02EH
+002105 E0                MOVX    A,@DPTR
+002106 6002              JZ      ?C0057?SYS
+  317: 	{
+  318: 		g_variable.delay_enter_lpm_timer --;
+002108 14                DEC     A
+002109 F0                MOVX    @DPTR,A
+  319: 	}
+00210A         ?C0057?SYS:
+  320: 
+  321: 	if(g_variable.recon_delay)
+00210A 904CF2            MOV     DPTR,#g_variable+033H
+00210D E0                MOVX    A,@DPTR
+00210E 6002              JZ      ?C0058?SYS
+  322: 		g_variable.recon_delay--;
+002110 14                DEC     A
+002111 F0                MOVX    @DPTR,A
+002112         ?C0058?SYS:
+  323: 
+  324: 
+  325: 	if(g_variable.one_key_press_wait_release_timer)
+002112 904CFB            MOV     DPTR,#g_variable+03CH
+002115 E0                MOVX    A,@DPTR
+002116 600B              JZ      ?C0059?SYS
+  326: 	{
+  327: 		g_variable.one_key_press_wait_release_timer--;
+002118 14                DEC     A
+002119 F0                MOVX    @DPTR,A
+  328: 		if(!g_variable.one_key_press_wait_release_timer)
+00211A E0                MOVX    A,@DPTR
+00211B 7006              JNZ     ?C0059?SYS
+  329: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
+00211D 904CF7            MOV     DPTR,#g_variable+038H
+002120 7406              MOV     A,#06H
+002122 F0                MOVX    @DPTR,A
+  330: 	}
+002123         ?C0059?SYS:
+  331: 
+  332: 	if (g_variable.powerOn_timer != 0)
+002123 904CE5            MOV     DPTR,#g_variable+026H
+002126 E0                MOVX    A,@DPTR
+002127 6028              JZ      ?C0061?SYS
+  333: 	{	
+  334: 		if(g_variable.pairing_g24_timeout)
+002129 904CF1            MOV     DPTR,#g_variable+032H
+00212C E0                MOVX    A,@DPTR
+00212D 6006              JZ      ?C0062?SYS
+  335: 		{
+  336: 			g_variable.powerOn_timer = 0;
+00212F E4                CLR     A
+002130 904CE5            MOV     DPTR,#g_variable+026H
+002133 F0                MOVX    @DPTR,A
+002134 22                RET     
+  337: 			return;
+  338: 		}
+002135         ?C0062?SYS:
+  339: 			
+  340: 		g_variable.powerOn_timer--;
+002135 904CE5            MOV     DPTR,#g_variable+026H
+002138 E0                MOVX    A,@DPTR
+002139 14                DEC     A
+00213A F0                MOVX    @DPTR,A
+  341: 		GPIO_Setout(G24_LED_GPIO,LED_ON);
+00213B D201              SETB    ?_GPIO_Setout?BIT
+00213D 7F1D              MOV     R7,#01DH
+00213F 1207A3            LCALL   _GPIO_Setout
+  342: 		if (!g_variable.powerOn_timer)
+002142 904CE5            MOV     DPTR,#g_variable+026H
+002145 E0                MOVX    A,@DPTR
+002146 7034              JNZ     ?C0065?SYS
+  343: 		{
+  344: 			GPIO_Setout(G24_LED_GPIO,LED_OFF);
+002148 C201              CLR     ?_GPIO_Setout?BIT
+00214A 7F1D              MOV     R7,#01DH
+00214C 1207A3            LCALL   _GPIO_Setout
+  345: 		}
+  346: 	}
+00214F 802B              SJMP    ?C0065?SYS
+002151         ?C0061?SYS:
+  347: 	else
+  348: 	if (g_variable.pairing_g24_timeout == 0) //bt  pairing
+002151 904CF1            MOV     DPTR,#g_variable+032H
+002154 E0                MOVX    A,@DPTR
+002155 7025              JNZ     ?C0065?SYS
+  349: 	{
+  350: 		if(g_variable.battery_low_led_flash_interval)
+002157 904CE2            MOV     DPTR,#g_variable+023H
+00215A E0                MOVX    A,@DPTR
+00215B 601F              JZ      ?C0065?SYS
+  351: 		{
+  352: 			g_variable.battery_low_led_flash_interval--;
+00215D 14                DEC     A
+00215E F0                MOVX    @DPTR,A
+  353: 			if(g_variable.battery_low_led_flash_interval & 0x02)
+00215F E0                MOVX    A,@DPTR
+002160 30E109            JNB     ACC.1,?C0068?SYS
+  354: 			{
+  355: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
+002163 D201              SETB    ?_GPIO_Setout?BIT
+002165 7F1D              MOV     R7,#01DH
+002167 1207A3            LCALL   _GPIO_Setout
+  356: 			}
+00216A 8007              SJMP    ?C0069?SYS
+00216C         ?C0068?SYS:
+  357: 			else
+  358: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
+00216C C201              CLR     ?_GPIO_Setout?BIT
+00216E 7F1D              MOV     R7,#01DH
+002170 1207A3            LCALL   _GPIO_Setout
+002173         ?C0069?SYS:
+  359: 			if(!g_variable.battery_low_led_flash_interval)
+002173 904CE2            MOV     DPTR,#g_variable+023H
+002176 E0                MOVX    A,@DPTR
+002177 7003              JNZ     ?C0065?SYS
+  360: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
+002179 7404              MOV     A,#04H
+00217B F0                MOVX    @DPTR,A
+  361: 		}
+  362: 	}
+00217C         ?C0065?SYS:
+  363: 	
+  364: // The dongle must receive data within 200ms, otherwise it will be forced to lift
+  365: 	if(!long_press_flag)
+00217C 904DD5            MOV     DPTR,#long_press_flag
+00217F E0                MOVX    A,@DPTR
+002180 7036              JNZ     ?C0071?SYS
+  366: 	{
+  367: 		if (repeat_send_24g == 1)
+002182 904DD6            MOV     DPTR,#repeat_send_24g
+002185 E0                MOVX    A,@DPTR
+002186 6401              XRL     A,#01H
+002188 702E              JNZ     ?C0071?SYS
+  368: 		{
+  369: 			g_variable.sleepTimer = 0;
+00218A 904CE3            MOV     DPTR,#g_variable+024H
+00218D F0                MOVX    @DPTR,A
+00218E A3                INC     DPTR
+00218F F0                MOVX    @DPTR,A
+  370: 			repeat_send_24g = 0;
+002190 904DD6            MOV     DPTR,#repeat_send_24g
+002193 F0                MOVX    @DPTR,A
+  371: 
+  372: 			 if (multikey[0] != 0)
+002194 904DE8            MOV     DPTR,#multikey
+002197 E0                MOVX    A,@DPTR
+002198 600D              JZ      ?C0073?SYS
+  373: 			{
+  374: 				IPC_TxHidData(multikey, 3);
+00219A 7B01              MOV     R3,#01H
+00219C 7A4D              MOV     R2,#HIGH multikey
+00219E 79E8              MOV     R1,#LOW multikey
+0021A0 7D03              MOV     R5,#03H
+0021A2 120ED3            LCALL   _IPC_TxHidData
+  375: 			}
+0021A5 8011              SJMP    ?C0071?SYS
+0021A7         ?C0073?SYS:
+  376: 			else if (hidBuff[0] != 0)
+0021A7 904800            MOV     DPTR,#hidBuff
+0021AA E0                MOVX    A,@DPTR
+0021AB 600B              JZ      ?C0071?SYS
+  377: 			{
+  378: 
+  379: 				IPC_TxHidData(hidBuff,9);
+0021AD 7B01              MOV     R3,#01H
+0021AF 7A48              MOV     R2,#HIGH hidBuff
+0021B1 7900              MOV     R1,#LOW hidBuff
+0021B3 7D09              MOV     R5,#09H
+0021B5 120ED3            LCALL   _IPC_TxHidData
+  380: 			}
+  381: 		}
+  382: 	}
+0021B8         ?C0071?SYS:
+  383: 
+  384: 	if (delayChgInvTimer != 0)
+0021B8 904DDF            MOV     DPTR,#delayChgInvTimer
+0021BB E0                MOVX    A,@DPTR
+0021BC 600E              JZ      ?C0063?SYS
+  385: 	{
+  386: 		delayChgInvTimer--;
+0021BE E0                MOVX    A,@DPTR
+0021BF 14                DEC     A
+0021C0 F0                MOVX    @DPTR,A
+  387: 		if(!delayChgInvTimer && m_24g_led_flag)
+0021C1 E0                MOVX    A,@DPTR
+0021C2 7008              JNZ     ?C0063?SYS
+0021C4 904D47            MOV     DPTR,#m_24g_led_flag
+0021C7 E0                MOVX    A,@DPTR
+0021C8 6002              JZ      ?C0063?SYS
+  388: 		{
+  389: 			m_24g_led_flag = 0;
+0021CA E4                CLR     A
+0021CB F0                MOVX    @DPTR,A
+  390: 		}
+  391: 	}
+  392: }
+0021CC         ?C0063?SYS:
+0021CC 22                RET     
+----- FUNCTION kb_cb_Timer100ms (END) -------
+
+
+----- FUNCTION YC_adc_init (BEGIN) -----
+ FILE: 'adc.c'
+    3: void YC_adc_init()
+    4: {
+    5: #ifdef  ADC_ENABLE
+    6: 	byte i;
+    7: 	
+    8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
+0021CD 904CD3            MOV     DPTR,#g_variable+014H
+0021D0 7405              MOV     A,#05H
+0021D2 F0                MOVX    @DPTR,A
+    9: 	g_variable.battery_value_index = 0;
+0021D3 E4                CLR     A
+0021D4 A3                INC     DPTR
+0021D5 F0                MOVX    @DPTR,A
+   10: 
+   11: #ifdef ADC_TYPE_HVIN 	
+   12: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
+;---- Variable 'i' assigned to Register 'R7' ----
+0021D6 FF                MOV     R7,A
+0021D7         ?C0001?ADC:
+   13: 	{
+   14: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE;
+0021D7 EF                MOV     A,R7
+0021D8 25E0              ADD     A,ACC
+0021DA 24D6              ADD     A,#LOW g_variable+017H
+0021DC F582              MOV     DPL,A
+0021DE E4                CLR     A
+0021DF 344C              ADDC    A,#HIGH g_variable+017H
+0021E1 F583              MOV     DPH,A
+0021E3 7479              MOV     A,#079H
+0021E5 F0                MOVX    @DPTR,A
+0021E6 A3                INC     DPTR
+0021E7 7490              MOV     A,#090H
+0021E9 F0                MOVX    @DPTR,A
+   15: 	}
+0021EA 0F                INC     R7
+0021EB EF                MOV     A,R7
+0021EC B404E8            CJNE    A,#04H,?C0001?ADC
+0021EF         ?C0002?ADC:
+   16: 
+   17: 	g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V0+m_adc0vBase;
+0021EF 904C91            MOV     DPTR,#m_adc0vBase
+0021F2 E0                MOVX    A,@DPTR
+0021F3 FE                MOV     R6,A
+0021F4 A3                INC     DPTR
+0021F5 E0                MOVX    A,@DPTR
+0021F6 FF                MOV     R7,A
+0021F7 C3                CLR     C
+0021F8 904C94            MOV     DPTR,#m_adc3vValue+01H
+0021FB E0                MOVX    A,@DPTR
+0021FC 9F                SUBB    A,R7
+0021FD FD                MOV     R5,A
+0021FE 904C93            MOV     DPTR,#m_adc3vValue
+002201 E0                MOVX    A,@DPTR
+002202 9E                SUBB    A,R6
+002203 FC                MOV     R4,A
+002204 E4                CLR     A
+002205 120206            LCALL   ?C?FCASTI
+002208 7BAE              MOV     R3,#0AEH
+00220A 7A47              MOV     R2,#047H
+00220C 7981              MOV     R1,#081H
+00220E 783F              MOV     R0,#03FH
+002210 1200FB            LCALL   ?C?FPMUL
+002213 C004              PUSH    AR4
+002215 C005              PUSH    AR5
+002217 C006              PUSH    AR6
+002219 C007              PUSH    AR7
+00221B 904C91            MOV     DPTR,#m_adc0vBase
+00221E E0                MOVX    A,@DPTR
+00221F FC                MOV     R4,A
+002220 A3                INC     DPTR
+002221 E0                MOVX    A,@DPTR
+002222 FD                MOV     R5,A
+002223 E4                CLR     A
+002224 120206            LCALL   ?C?FCASTI
+002227 D003              POP     AR3
+002229 D002              POP     AR2
+00222B D001              POP     AR1
+00222D D000              POP     AR0
+00222F 12000A            LCALL   ?C?FPADD
+002232 12023F            LCALL   ?C?CASTF
+002235 904CDE            MOV     DPTR,#g_variable+01FH
+002238 EE                MOV     A,R6
+002239 F0                MOVX    @DPTR,A
+00223A A3                INC     DPTR
+00223B EF                MOV     A,R7
+00223C F0                MOVX    @DPTR,A
+   18: 	g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V6+m_adc0vBase;
+00223D 904C91            MOV     DPTR,#m_adc0vBase
+002240 E0                MOVX    A,@DPTR
+002241 FE                MOV     R6,A
+002242 A3                INC     DPTR
+002243 E0                MOVX    A,@DPTR
+002244 FF                MOV     R7,A
+002245 C3                CLR     C
+002246 904C94            MOV     DPTR,#m_adc3vValue+01H
+002249 E0                MOVX    A,@DPTR
+00224A 9F                SUBB    A,R7
+00224B FD                MOV     R5,A
+00224C 904C93            MOV     DPTR,#m_adc3vValue
+00224F E0                MOVX    A,@DPTR
+002250 9E                SUBB    A,R6
+002251 FC                MOV     R4,A
+002252 E4                CLR     A
+002253 120206            LCALL   ?C?FCASTI
+002256 7B52              MOV     R3,#052H
+002258 7AB8              MOV     R2,#0B8H
+00225A 795E              MOV     R1,#05EH
+00225C 783F              MOV     R0,#03FH
+00225E 1200FB            LCALL   ?C?FPMUL
+002261 C004              PUSH    AR4
+002263 C005              PUSH    AR5
+002265 C006              PUSH    AR6
+002267 C007              PUSH    AR7
+002269 904C91            MOV     DPTR,#m_adc0vBase
+00226C E0                MOVX    A,@DPTR
+00226D FC                MOV     R4,A
+00226E A3                INC     DPTR
+00226F E0                MOVX    A,@DPTR
+002270 FD                MOV     R5,A
+002271 E4                CLR     A
+002272 120206            LCALL   ?C?FCASTI
+002275 D003              POP     AR3
+002277 D002              POP     AR2
+002279 D001              POP     AR1
+00227B D000              POP     AR0
+00227D 12000A            LCALL   ?C?FPADD
+002280 12023F            LCALL   ?C?CASTF
+002283 904CE0            MOV     DPTR,#g_variable+021H
+002286 EE                MOV     A,R6
+002287 F0                MOVX    @DPTR,A
+002288 A3                INC     DPTR
+002289 EF                MOV     A,R7
+00228A F0                MOVX    @DPTR,A
+   19: #endif
+   20: #ifdef ADC_TYPE_VINLPM
+   21: 		for (i = 0; i < BAT_ARRAY_LEN; i++)
+   22: 		{
+   23: 			g_variable.battery_value[i] = INIT_BATTERY_VALUE_VINLPM;
+   24: 		}
+   25: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V2+m_adc0vBase;
+   26: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V0+m_adc0vBase;
+   27: #endif
+   28: #ifdef ADC_TYPE_GPIO
+   29: 	m_adc_channel = ADC_CHANNEL;
+   30: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
+   31: 	{
+   32: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE_GPIO;
+   33: 	}
+   34: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_1V0+m_adc0vBase;
+   35: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_0V9+m_adc0vBase;
+   36: #endif	
+   37: #endif
+   38: }
+00228B 22                RET     
+----- FUNCTION YC_adc_init (END) -------
 
 
 ----- FUNCTION YC_adc_check (BEGIN) -----
@@ -6195,1005 +6543,653 @@
    42: #ifdef  ADC_ENABLE
    43: 	byte i;
    44: 	ulong batValue = 0;
-002102 904E66            MOV     DPTR,#batValue
-002105 120533            LCALL   ?C?LSTKXDATA
-002108 00                DB      00H
-002109 00                DB      00H
-00210A 00                DB      00H
-00210B 00                DB      00H
+00228C 904E66            MOV     DPTR,#batValue
+00228F 120533            LCALL   ?C?LSTKXDATA
+002292 00                DB      00H
+002293 00                DB      00H
+002294 00                DB      00H
+002295 00                DB      00H
    45: 
    46: 	g_variable.battery_value[g_variable.battery_value_index++] = m_adcCurrentValue;
-00210C 904C95            MOV     DPTR,#m_adcCurrentValue
-00210F E0                MOVX    A,@DPTR
-002110 FE                MOV     R6,A
-002111 A3                INC     DPTR
-002112 E0                MOVX    A,@DPTR
-002113 FF                MOV     R7,A
-002114 904CD4            MOV     DPTR,#g_variable+015H
-002117 E0                MOVX    A,@DPTR
-002118 FD                MOV     R5,A
-002119 04                INC     A
-00211A F0                MOVX    @DPTR,A
-00211B ED                MOV     A,R5
-00211C 25E0              ADD     A,ACC
-00211E 24D6              ADD     A,#LOW g_variable+017H
-002120 F582              MOV     DPL,A
-002122 E4                CLR     A
-002123 344C              ADDC    A,#HIGH g_variable+017H
-002125 F583              MOV     DPH,A
-002127 EE                MOV     A,R6
-002128 F0                MOVX    @DPTR,A
-002129 A3                INC     DPTR
-00212A EF                MOV     A,R7
-00212B F0                MOVX    @DPTR,A
+002296 904C95            MOV     DPTR,#m_adcCurrentValue
+002299 E0                MOVX    A,@DPTR
+00229A FE                MOV     R6,A
+00229B A3                INC     DPTR
+00229C E0                MOVX    A,@DPTR
+00229D FF                MOV     R7,A
+00229E 904CD4            MOV     DPTR,#g_variable+015H
+0022A1 E0                MOVX    A,@DPTR
+0022A2 FD                MOV     R5,A
+0022A3 04                INC     A
+0022A4 F0                MOVX    @DPTR,A
+0022A5 ED                MOV     A,R5
+0022A6 25E0              ADD     A,ACC
+0022A8 24D6              ADD     A,#LOW g_variable+017H
+0022AA F582              MOV     DPL,A
+0022AC E4                CLR     A
+0022AD 344C              ADDC    A,#HIGH g_variable+017H
+0022AF F583              MOV     DPH,A
+0022B1 EE                MOV     A,R6
+0022B2 F0                MOVX    @DPTR,A
+0022B3 A3                INC     DPTR
+0022B4 EF                MOV     A,R7
+0022B5 F0                MOVX    @DPTR,A
    47: 	if (g_variable.battery_value_index >= BAT_ARRAY_LEN)
-00212C 904CD4            MOV     DPTR,#g_variable+015H
-00212F E0                MOVX    A,@DPTR
-002130 C3                CLR     C
-002131 9404              SUBB    A,#04H
-002133 4002              JC      ?C0005?ADC
+0022B6 904CD4            MOV     DPTR,#g_variable+015H
+0022B9 E0                MOVX    A,@DPTR
+0022BA C3                CLR     C
+0022BB 9404              SUBB    A,#04H
+0022BD 4002              JC      ?C0005?ADC
    48: 		g_variable.battery_value_index = 0;
-002135 E4                CLR     A
-002136 F0                MOVX    @DPTR,A
-002137         ?C0005?ADC:
+0022BF E4                CLR     A
+0022C0 F0                MOVX    @DPTR,A
+0022C1         ?C0005?ADC:
    49: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
-002137 E4                CLR     A
-002138 904E65            MOV     DPTR,#i
-00213B F0                MOVX    @DPTR,A
-00213C         ?C0006?ADC:
+0022C1 E4                CLR     A
+0022C2 904E65            MOV     DPTR,#i
+0022C5 F0                MOVX    @DPTR,A
+0022C6         ?C0006?ADC:
    50: 	{
    51: 		batValue += g_variable.battery_value[i];
-00213C 904E66            MOV     DPTR,#batValue
-00213F E0                MOVX    A,@DPTR
-002140 F8                MOV     R0,A
-002141 A3                INC     DPTR
-002142 E0                MOVX    A,@DPTR
-002143 F9                MOV     R1,A
-002144 A3                INC     DPTR
-002145 E0                MOVX    A,@DPTR
-002146 FA                MOV     R2,A
-002147 A3                INC     DPTR
-002148 E0                MOVX    A,@DPTR
-002149 FB                MOV     R3,A
-00214A 904E65            MOV     DPTR,#i
-00214D E0                MOVX    A,@DPTR
-00214E 25E0              ADD     A,ACC
-002150 24D6              ADD     A,#LOW g_variable+017H
-002152 F582              MOV     DPL,A
-002154 E4                CLR     A
-002155 344C              ADDC    A,#HIGH g_variable+017H
-002157 F583              MOV     DPH,A
-002159 E0                MOVX    A,@DPTR
-00215A FE                MOV     R6,A
-00215B A3                INC     DPTR
-00215C E0                MOVX    A,@DPTR
-00215D FF                MOV     R7,A
-00215E E4                CLR     A
-00215F FC                MOV     R4,A
-002160 FD                MOV     R5,A
-002161 EB                MOV     A,R3
-002162 2F                ADD     A,R7
-002163 FF                MOV     R7,A
-002164 EA                MOV     A,R2
-002165 3E                ADDC    A,R6
-002166 FE                MOV     R6,A
-002167 ED                MOV     A,R5
-002168 39                ADDC    A,R1
-002169 FD                MOV     R5,A
-00216A EC                MOV     A,R4
-00216B 38                ADDC    A,R0
-00216C FC                MOV     R4,A
-00216D 904E66            MOV     DPTR,#batValue
-002170 120527            LCALL   ?C?LSTXDATA
+0022C6 904E66            MOV     DPTR,#batValue
+0022C9 E0                MOVX    A,@DPTR
+0022CA F8                MOV     R0,A
+0022CB A3                INC     DPTR
+0022CC E0                MOVX    A,@DPTR
+0022CD F9                MOV     R1,A
+0022CE A3                INC     DPTR
+0022CF E0                MOVX    A,@DPTR
+0022D0 FA                MOV     R2,A
+0022D1 A3                INC     DPTR
+0022D2 E0                MOVX    A,@DPTR
+0022D3 FB                MOV     R3,A
+0022D4 904E65            MOV     DPTR,#i
+0022D7 E0                MOVX    A,@DPTR
+0022D8 25E0              ADD     A,ACC
+0022DA 24D6              ADD     A,#LOW g_variable+017H
+0022DC F582              MOV     DPL,A
+0022DE E4                CLR     A
+0022DF 344C              ADDC    A,#HIGH g_variable+017H
+0022E1 F583              MOV     DPH,A
+0022E3 E0                MOVX    A,@DPTR
+0022E4 FE                MOV     R6,A
+0022E5 A3                INC     DPTR
+0022E6 E0                MOVX    A,@DPTR
+0022E7 FF                MOV     R7,A
+0022E8 E4                CLR     A
+0022E9 FC                MOV     R4,A
+0022EA FD                MOV     R5,A
+0022EB EB                MOV     A,R3
+0022EC 2F                ADD     A,R7
+0022ED FF                MOV     R7,A
+0022EE EA                MOV     A,R2
+0022EF 3E                ADDC    A,R6
+0022F0 FE                MOV     R6,A
+0022F1 ED                MOV     A,R5
+0022F2 39                ADDC    A,R1
+0022F3 FD                MOV     R5,A
+0022F4 EC                MOV     A,R4
+0022F5 38                ADDC    A,R0
+0022F6 FC                MOV     R4,A
+0022F7 904E66            MOV     DPTR,#batValue
+0022FA 120527            LCALL   ?C?LSTXDATA
    52: 	}
-002173 904E65            MOV     DPTR,#i
-002176 E0                MOVX    A,@DPTR
-002177 04                INC     A
-002178 F0                MOVX    @DPTR,A
-002179 E0                MOVX    A,@DPTR
-00217A B404BF            CJNE    A,#04H,?C0006?ADC
-00217D         ?C0007?ADC:
+0022FD 904E65            MOV     DPTR,#i
+002300 E0                MOVX    A,@DPTR
+002301 04                INC     A
+002302 F0                MOVX    @DPTR,A
+002303 E0                MOVX    A,@DPTR
+002304 B404BF            CJNE    A,#04H,?C0006?ADC
+002307         ?C0007?ADC:
    53: 	batValue = batValue/BAT_ARRAY_LEN;
-00217D 904E66            MOV     DPTR,#batValue
-002180 E0                MOVX    A,@DPTR
-002181 FC                MOV     R4,A
-002182 A3                INC     DPTR
-002183 E0                MOVX    A,@DPTR
-002184 FD                MOV     R5,A
-002185 A3                INC     DPTR
-002186 E0                MOVX    A,@DPTR
-002187 FE                MOV     R6,A
-002188 A3                INC     DPTR
-002189 E0                MOVX    A,@DPTR
-00218A FF                MOV     R7,A
-00218B E4                CLR     A
-00218C 7B04              MOV     R3,#04H
-00218E FA                MOV     R2,A
-00218F F9                MOV     R1,A
-002190 F8                MOV     R0,A
-002191 120476            LCALL   ?C?ULDIV
-002194 904E66            MOV     DPTR,#batValue
-002197 120527            LCALL   ?C?LSTXDATA
+002307 904E66            MOV     DPTR,#batValue
+00230A E0                MOVX    A,@DPTR
+00230B FC                MOV     R4,A
+00230C A3                INC     DPTR
+00230D E0                MOVX    A,@DPTR
+00230E FD                MOV     R5,A
+00230F A3                INC     DPTR
+002310 E0                MOVX    A,@DPTR
+002311 FE                MOV     R6,A
+002312 A3                INC     DPTR
+002313 E0                MOVX    A,@DPTR
+002314 FF                MOV     R7,A
+002315 E4                CLR     A
+002316 7B04              MOV     R3,#04H
+002318 FA                MOV     R2,A
+002319 F9                MOV     R1,A
+00231A F8                MOV     R0,A
+00231B 120476            LCALL   ?C?ULDIV
+00231E 904E66            MOV     DPTR,#batValue
+002321 120527            LCALL   ?C?LSTXDATA
    54: 
    55: 	if(batValue < g_variable.battery_level_shutdown)
-00219A 904CE0            MOV     DPTR,#g_variable+021H
-00219D E0                MOVX    A,@DPTR
-00219E FE                MOV     R6,A
-00219F A3                INC     DPTR
-0021A0 E0                MOVX    A,@DPTR
-0021A1 FF                MOV     R7,A
-0021A2 E4                CLR     A
-0021A3 FC                MOV     R4,A
-0021A4 FD                MOV     R5,A
-0021A5 904E66            MOV     DPTR,#batValue
-0021A8 E0                MOVX    A,@DPTR
-0021A9 F8                MOV     R0,A
-0021AA A3                INC     DPTR
-0021AB E0                MOVX    A,@DPTR
-0021AC F9                MOV     R1,A
-0021AD A3                INC     DPTR
-0021AE E0                MOVX    A,@DPTR
-0021AF FA                MOV     R2,A
-0021B0 A3                INC     DPTR
-0021B1 E0                MOVX    A,@DPTR
-0021B2 FB                MOV     R3,A
-0021B3 C3                CLR     C
-0021B4 120516            LCALL   ?C?ULCMP
-0021B7 5007              JNC     ?C0009?ADC
+002324 904CE0            MOV     DPTR,#g_variable+021H
+002327 E0                MOVX    A,@DPTR
+002328 FE                MOV     R6,A
+002329 A3                INC     DPTR
+00232A E0                MOVX    A,@DPTR
+00232B FF                MOV     R7,A
+00232C E4                CLR     A
+00232D FC                MOV     R4,A
+00232E FD                MOV     R5,A
+00232F 904E66            MOV     DPTR,#batValue
+002332 E0                MOVX    A,@DPTR
+002333 F8                MOV     R0,A
+002334 A3                INC     DPTR
+002335 E0                MOVX    A,@DPTR
+002336 F9                MOV     R1,A
+002337 A3                INC     DPTR
+002338 E0                MOVX    A,@DPTR
+002339 FA                MOV     R2,A
+00233A A3                INC     DPTR
+00233B E0                MOVX    A,@DPTR
+00233C FB                MOV     R3,A
+00233D C3                CLR     C
+00233E 120516            LCALL   ?C?ULCMP
+002341 5007              JNC     ?C0009?ADC
    56: 	{
    57: 		g_variable.battery_status = BAT_STATUS_SHUT_DOWN;
-0021B9 904CD5            MOV     DPTR,#g_variable+016H
-0021BC 7402              MOV     A,#02H
-0021BE F0                MOVX    @DPTR,A
+002343 904CD5            MOV     DPTR,#g_variable+016H
+002346 7402              MOV     A,#02H
+002348 F0                MOVX    @DPTR,A
    58: 	}
-0021BF 22                RET     
-0021C0         ?C0009?ADC:
+002349 22                RET     
+00234A         ?C0009?ADC:
    59: 	else
    60: 	{
    61: 		if (batValue < g_variable.battery_level_low)
-0021C0 904CDE            MOV     DPTR,#g_variable+01FH
-0021C3 E0                MOVX    A,@DPTR
-0021C4 FE                MOV     R6,A
-0021C5 A3                INC     DPTR
-0021C6 E0                MOVX    A,@DPTR
-0021C7 FF                MOV     R7,A
-0021C8 E4                CLR     A
-0021C9 FC                MOV     R4,A
-0021CA FD                MOV     R5,A
-0021CB 904E66            MOV     DPTR,#batValue
-0021CE E0                MOVX    A,@DPTR
-0021CF F8                MOV     R0,A
-0021D0 A3                INC     DPTR
-0021D1 E0                MOVX    A,@DPTR
-0021D2 F9                MOV     R1,A
-0021D3 A3                INC     DPTR
-0021D4 E0                MOVX    A,@DPTR
-0021D5 FA                MOV     R2,A
-0021D6 A3                INC     DPTR
-0021D7 E0                MOVX    A,@DPTR
-0021D8 FB                MOV     R3,A
-0021D9 C3                CLR     C
-0021DA 120516            LCALL   ?C?ULCMP
-0021DD 5017              JNC     ?C0011?ADC
+00234A 904CDE            MOV     DPTR,#g_variable+01FH
+00234D E0                MOVX    A,@DPTR
+00234E FE                MOV     R6,A
+00234F A3                INC     DPTR
+002350 E0                MOVX    A,@DPTR
+002351 FF                MOV     R7,A
+002352 E4                CLR     A
+002353 FC                MOV     R4,A
+002354 FD                MOV     R5,A
+002355 904E66            MOV     DPTR,#batValue
+002358 E0                MOVX    A,@DPTR
+002359 F8                MOV     R0,A
+00235A A3                INC     DPTR
+00235B E0                MOVX    A,@DPTR
+00235C F9                MOV     R1,A
+00235D A3                INC     DPTR
+00235E E0                MOVX    A,@DPTR
+00235F FA                MOV     R2,A
+002360 A3                INC     DPTR
+002361 E0                MOVX    A,@DPTR
+002362 FB                MOV     R3,A
+002363 C3                CLR     C
+002364 120516            LCALL   ?C?ULCMP
+002367 5017              JNC     ?C0011?ADC
    62: 		{
    63: 			g_variable.battery_status = BAT_STATUS_LOW;
-0021DF 904CD5            MOV     DPTR,#g_variable+016H
-0021E2 7401              MOV     A,#01H
-0021E4 F0                MOVX    @DPTR,A
+002369 904CD5            MOV     DPTR,#g_variable+016H
+00236C 7401              MOV     A,#01H
+00236E F0                MOVX    @DPTR,A
    64: 			m_24g_enter_hibernate[0]	= 0x00;
-0021E5 E4                CLR     A
-0021E6 904D3D            MOV     DPTR,#m_24g_enter_hibernate
-0021E9 F0                MOVX    @DPTR,A
+00236F E4                CLR     A
+002370 904D3D            MOV     DPTR,#m_24g_enter_hibernate
+002373 F0                MOVX    @DPTR,A
    65: 			m_24g_enter_hibernate[1]	= 0x48;
-0021EA A3                INC     DPTR
-0021EB 7448              MOV     A,#048H
-0021ED F0                MOVX    @DPTR,A
+002374 A3                INC     DPTR
+002375 7448              MOV     A,#048H
+002377 F0                MOVX    @DPTR,A
    66: 			m_24g_enter_hibernate[2]	= 0x12;		// 100ms
-0021EE A3                INC     DPTR
-0021EF 7412              MOV     A,#012H
-0021F1 F0                MOVX    @DPTR,A
+002378 A3                INC     DPTR
+002379 7412              MOV     A,#012H
+00237B F0                MOVX    @DPTR,A
    67: 			m_24g_enter_hibernate[3]	= 0x00;
-0021F2 E4                CLR     A
-0021F3 A3                INC     DPTR
-0021F4 F0                MOVX    @DPTR,A
+00237C E4                CLR     A
+00237D A3                INC     DPTR
+00237E F0                MOVX    @DPTR,A
    68: 		}
-0021F5 22                RET     
-0021F6         ?C0011?ADC:
+00237F 22                RET     
+002380         ?C0011?ADC:
    69: 		else
    70: 		{
    71: 			g_variable.battery_status = BAT_STATUS_NONE;
-0021F6 E4                CLR     A
-0021F7 904CD5            MOV     DPTR,#g_variable+016H
-0021FA F0                MOVX    @DPTR,A
+002380 E4                CLR     A
+002381 904CD5            MOV     DPTR,#g_variable+016H
+002384 F0                MOVX    @DPTR,A
    72: 			m_24g_enter_hibernate[0]	= 0x00;
-0021FB 904D3D            MOV     DPTR,#m_24g_enter_hibernate
-0021FE F0                MOVX    @DPTR,A
+002385 904D3D            MOV     DPTR,#m_24g_enter_hibernate
+002388 F0                MOVX    @DPTR,A
    73: 			m_24g_enter_hibernate[1]	= 0x48;
-0021FF A3                INC     DPTR
-002200 7448              MOV     A,#048H
-002202 F0                MOVX    @DPTR,A
+002389 A3                INC     DPTR
+00238A 7448              MOV     A,#048H
+00238C F0                MOVX    @DPTR,A
    74: 			m_24g_enter_hibernate[2]   = 0x5d;		// 510ms
-002203 A3                INC     DPTR
-002204 745D              MOV     A,#05DH
-002206 F0                MOVX    @DPTR,A
+00238D A3                INC     DPTR
+00238E 745D              MOV     A,#05DH
+002390 F0                MOVX    @DPTR,A
    75: 			m_24g_enter_hibernate[3]	= 0x00;
-002207 E4                CLR     A
-002208 A3                INC     DPTR
-002209 F0                MOVX    @DPTR,A
+002391 E4                CLR     A
+002392 A3                INC     DPTR
+002393 F0                MOVX    @DPTR,A
    76: 		}
    77: 	}
    78: #endif	
    79: }
-00220A 22                RET     
+002394 22                RET     
 ----- FUNCTION YC_adc_check (END) -------
 
 
------ FUNCTION kb_cb_Timer100ms (BEGIN) -----
- FILE: 'sys.c'
-  311: static void kb_cb_Timer100ms()
-  312: {
-  313: 
-  314: 	if (g_variable.delay_enter_lpm_timer) 
-00220B 904CED            MOV     DPTR,#g_variable+02EH
-00220E E0                MOVX    A,@DPTR
-00220F 6002              JZ      ?C0058?SYS
-  315: 	{
-  316: 		g_variable.delay_enter_lpm_timer --;
-002211 14                DEC     A
-002212 F0                MOVX    @DPTR,A
-  317: 	}
-002213         ?C0058?SYS:
-  318: 
-  319: 	if(g_variable.recon_delay)
-002213 904CF2            MOV     DPTR,#g_variable+033H
-002216 E0                MOVX    A,@DPTR
-002217 6002              JZ      ?C0059?SYS
-  320: 		g_variable.recon_delay--;
-002219 14                DEC     A
-00221A F0                MOVX    @DPTR,A
-00221B         ?C0059?SYS:
-  321: 
-  322: 
-  323: 	if(g_variable.one_key_press_wait_release_timer)
-00221B 904CFB            MOV     DPTR,#g_variable+03CH
-00221E E0                MOVX    A,@DPTR
-00221F 600B              JZ      ?C0060?SYS
-  324: 	{
-  325: 		g_variable.one_key_press_wait_release_timer--;
-002221 14                DEC     A
-002222 F0                MOVX    @DPTR,A
-  326: 		if(!g_variable.one_key_press_wait_release_timer)
-002223 E0                MOVX    A,@DPTR
-002224 7006              JNZ     ?C0060?SYS
-  327: 			g_variable.key_combination_step = CAMBINATION_KEY_NULL;
-002226 904CF7            MOV     DPTR,#g_variable+038H
-002229 7406              MOV     A,#06H
-00222B F0                MOVX    @DPTR,A
-  328: 	}
-00222C         ?C0060?SYS:
-  329: 
-  330: 	if (g_variable.powerOn_timer != 0)
-00222C 904CE5            MOV     DPTR,#g_variable+026H
-00222F E0                MOVX    A,@DPTR
-002230 6028              JZ      ?C0062?SYS
-  331: 	{	
-  332: 		if(g_variable.pairing_g24_timeout)
-002232 904CF1            MOV     DPTR,#g_variable+032H
-002235 E0                MOVX    A,@DPTR
-002236 6006              JZ      ?C0063?SYS
-  333: 		{
-  334: 			g_variable.powerOn_timer = 0;
-002238 E4                CLR     A
-002239 904CE5            MOV     DPTR,#g_variable+026H
-00223C F0                MOVX    @DPTR,A
-00223D 22                RET     
-  335: 			return;
-  336: 		}
-00223E         ?C0063?SYS:
-  337: 			
-  338: 		g_variable.powerOn_timer--;
-00223E 904CE5            MOV     DPTR,#g_variable+026H
-002241 E0                MOVX    A,@DPTR
-002242 14                DEC     A
-002243 F0                MOVX    @DPTR,A
-  339: 		GPIO_Setout(G24_LED_GPIO,LED_ON);
-002244 D201              SETB    ?_GPIO_Setout?BIT
-002246 7F1D              MOV     R7,#01DH
-002248 1207A3            LCALL   _GPIO_Setout
-  340: 		if (!g_variable.powerOn_timer)
-00224B 904CE5            MOV     DPTR,#g_variable+026H
-00224E E0                MOVX    A,@DPTR
-00224F 7034              JNZ     ?C0066?SYS
-  341: 		{
-  342: 			GPIO_Setout(G24_LED_GPIO,LED_OFF);
-002251 C201              CLR     ?_GPIO_Setout?BIT
-002253 7F1D              MOV     R7,#01DH
-002255 1207A3            LCALL   _GPIO_Setout
-  343: 		}
-  344: 	}
-002258 802B              SJMP    ?C0066?SYS
-00225A         ?C0062?SYS:
-  345: 	else
-  346: 	if (g_variable.pairing_g24_timeout == 0) //bt  pairing
-00225A 904CF1            MOV     DPTR,#g_variable+032H
-00225D E0                MOVX    A,@DPTR
-00225E 7025              JNZ     ?C0066?SYS
-  347: 	{
-  348: 		if(g_variable.battery_low_led_flash_interval)
-002260 904CE2            MOV     DPTR,#g_variable+023H
-002263 E0                MOVX    A,@DPTR
-002264 601F              JZ      ?C0066?SYS
-  349: 		{
-  350: 			g_variable.battery_low_led_flash_interval--;
-002266 14                DEC     A
-002267 F0                MOVX    @DPTR,A
-  351: 			if(g_variable.battery_low_led_flash_interval & 0x02)
-002268 E0                MOVX    A,@DPTR
-002269 30E109            JNB     ACC.1,?C0069?SYS
-  352: 			{
-  353: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_ON);
-00226C D201              SETB    ?_GPIO_Setout?BIT
-00226E 7F1D              MOV     R7,#01DH
-002270 1207A3            LCALL   _GPIO_Setout
-  354: 			}
-002273 8007              SJMP    ?C0070?SYS
-002275         ?C0069?SYS:
-  355: 			else
-  356: 				GPIO_Setout(LOWPOWER_LED_GPIO, LED_OFF);	
-002275 C201              CLR     ?_GPIO_Setout?BIT
-002277 7F1D              MOV     R7,#01DH
-002279 1207A3            LCALL   _GPIO_Setout
-00227C         ?C0070?SYS:
-  357: 			if(!g_variable.battery_low_led_flash_interval)
-00227C 904CE2            MOV     DPTR,#g_variable+023H
-00227F E0                MOVX    A,@DPTR
-002280 7003              JNZ     ?C0066?SYS
-  358: 				g_variable.battery_low_led_flash_interval = LOW_BATTERY_FLASH_INTERVAL;
-002282 7404              MOV     A,#04H
-002284 F0                MOVX    @DPTR,A
-  359: 		}
-  360: 	}
-002285         ?C0066?SYS:
-  361: 	
-  362: // The dongle must receive data within 200ms, otherwise it will be forced to lift
-  363: 	if(!long_press_flag)
-002285 904DD5            MOV     DPTR,#long_press_flag
-002288 E0                MOVX    A,@DPTR
-002289 7036              JNZ     ?C0072?SYS
-  364: 	{
-  365: 		if (repeat_send_24g == 1)
-00228B 904DD6            MOV     DPTR,#repeat_send_24g
-00228E E0                MOVX    A,@DPTR
-00228F 6401              XRL     A,#01H
-002291 702E              JNZ     ?C0072?SYS
-  366: 		{
-  367: 			g_variable.sleepTimer = 0;
-002293 904CE3            MOV     DPTR,#g_variable+024H
-002296 F0                MOVX    @DPTR,A
-002297 A3                INC     DPTR
-002298 F0                MOVX    @DPTR,A
-  368: 			repeat_send_24g = 0;
-002299 904DD6            MOV     DPTR,#repeat_send_24g
-00229C F0                MOVX    @DPTR,A
-  369: 
-  370: 			 if (multikey[0] != 0)
-00229D 904DE8            MOV     DPTR,#multikey
-0022A0 E0                MOVX    A,@DPTR
-0022A1 600D              JZ      ?C0074?SYS
-  371: 			{
-  372: 				IPC_TxHidData(multikey, 3);
-0022A3 7B01              MOV     R3,#01H
-0022A5 7A4D              MOV     R2,#HIGH multikey
-0022A7 79E8              MOV     R1,#LOW multikey
-0022A9 7D03              MOV     R5,#03H
-0022AB 120ED3            LCALL   _IPC_TxHidData
-  373: 			}
-0022AE 8011              SJMP    ?C0072?SYS
-0022B0         ?C0074?SYS:
-  374: 			else if (hidBuff[0] != 0)
-0022B0 904800            MOV     DPTR,#hidBuff
-0022B3 E0                MOVX    A,@DPTR
-0022B4 600B              JZ      ?C0072?SYS
-  375: 			{
-  376: 
-  377: 				IPC_TxHidData(hidBuff,9);
-0022B6 7B01              MOV     R3,#01H
-0022B8 7A48              MOV     R2,#HIGH hidBuff
-0022BA 7900              MOV     R1,#LOW hidBuff
-0022BC 7D09              MOV     R5,#09H
-0022BE 120ED3            LCALL   _IPC_TxHidData
-  378: 			}
-  379: 		}
-  380: 	}
-0022C1         ?C0072?SYS:
-  381: 
-  382: 	if (delayChgInvTimer != 0)
-0022C1 904DDF            MOV     DPTR,#delayChgInvTimer
-0022C4 E0                MOVX    A,@DPTR
-0022C5 600E              JZ      ?C0064?SYS
-  383: 	{
-  384: 		delayChgInvTimer--;
-0022C7 E0                MOVX    A,@DPTR
-0022C8 14                DEC     A
-0022C9 F0                MOVX    @DPTR,A
-  385: 		if(!delayChgInvTimer && m_24g_led_flag)
-0022CA E0                MOVX    A,@DPTR
-0022CB 7008              JNZ     ?C0064?SYS
-0022CD 904D47            MOV     DPTR,#m_24g_led_flag
-0022D0 E0                MOVX    A,@DPTR
-0022D1 6002              JZ      ?C0064?SYS
-  386: 		{
-  387: 			m_24g_led_flag = 0;
-0022D3 E4                CLR     A
-0022D4 F0                MOVX    @DPTR,A
-  388: 		}
-  389: 	}
-  390: }
-0022D5         ?C0064?SYS:
-0022D5 22                RET     
------ FUNCTION kb_cb_Timer100ms (END) -------
-
-
------ FUNCTION YC_adc_init (BEGIN) -----
+----- FUNCTION YC_adc_check_timer500ms (BEGIN) -----
  FILE: 'adc.c'
-    3: void YC_adc_init()
-    4: {
-    5: #ifdef  ADC_ENABLE
-    6: 	byte i;
-    7: 	
-    8: 	g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
-0022D6 904CD3            MOV     DPTR,#g_variable+014H
-0022D9 7405              MOV     A,#05H
-0022DB F0                MOVX    @DPTR,A
-    9: 	g_variable.battery_value_index = 0;
-0022DC E4                CLR     A
-0022DD A3                INC     DPTR
-0022DE F0                MOVX    @DPTR,A
-   10: 
-   11: #ifdef ADC_TYPE_HVIN 	
-   12: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
-;---- Variable 'i' assigned to Register 'R7' ----
-0022DF FF                MOV     R7,A
-0022E0         ?C0001?ADC:
-   13: 	{
-   14: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE;
-0022E0 EF                MOV     A,R7
-0022E1 25E0              ADD     A,ACC
-0022E3 24D6              ADD     A,#LOW g_variable+017H
-0022E5 F582              MOV     DPL,A
-0022E7 E4                CLR     A
-0022E8 344C              ADDC    A,#HIGH g_variable+017H
-0022EA F583              MOV     DPH,A
-0022EC 7479              MOV     A,#079H
-0022EE F0                MOVX    @DPTR,A
-0022EF A3                INC     DPTR
-0022F0 7490              MOV     A,#090H
-0022F2 F0                MOVX    @DPTR,A
-   15: 	}
-0022F3 0F                INC     R7
-0022F4 EF                MOV     A,R7
-0022F5 B404E8            CJNE    A,#04H,?C0001?ADC
-0022F8         ?C0002?ADC:
-   16: 
-   17: 	g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_3V0+m_adc0vBase;
-0022F8 904C91            MOV     DPTR,#m_adc0vBase
-0022FB E0                MOVX    A,@DPTR
-0022FC FE                MOV     R6,A
-0022FD A3                INC     DPTR
-0022FE E0                MOVX    A,@DPTR
-0022FF FF                MOV     R7,A
-002300 C3                CLR     C
-002301 904C94            MOV     DPTR,#m_adc3vValue+01H
-002304 E0                MOVX    A,@DPTR
-002305 9F                SUBB    A,R7
-002306 FD                MOV     R5,A
-002307 904C93            MOV     DPTR,#m_adc3vValue
-00230A E0                MOVX    A,@DPTR
-00230B 9E                SUBB    A,R6
-00230C FC                MOV     R4,A
-00230D E4                CLR     A
-00230E 120206            LCALL   ?C?FCASTI
-002311 7BAE              MOV     R3,#0AEH
-002313 7A47              MOV     R2,#047H
-002315 7981              MOV     R1,#081H
-002317 783F              MOV     R0,#03FH
-002319 1200FB            LCALL   ?C?FPMUL
-00231C C004              PUSH    AR4
-00231E C005              PUSH    AR5
-002320 C006              PUSH    AR6
-002322 C007              PUSH    AR7
-002324 904C91            MOV     DPTR,#m_adc0vBase
-002327 E0                MOVX    A,@DPTR
-002328 FC                MOV     R4,A
-002329 A3                INC     DPTR
-00232A E0                MOVX    A,@DPTR
-00232B FD                MOV     R5,A
-00232C E4                CLR     A
-00232D 120206            LCALL   ?C?FCASTI
-002330 D003              POP     AR3
-002332 D002              POP     AR2
-002334 D001              POP     AR1
-002336 D000              POP     AR0
-002338 12000A            LCALL   ?C?FPADD
-00233B 12023F            LCALL   ?C?CASTF
-00233E 904CDE            MOV     DPTR,#g_variable+01FH
-002341 EE                MOV     A,R6
-002342 F0                MOVX    @DPTR,A
-002343 A3                INC     DPTR
-002344 EF                MOV     A,R7
-002345 F0                MOVX    @DPTR,A
-   18: 	g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V6+m_adc0vBase;
-002346 904C91            MOV     DPTR,#m_adc0vBase
-002349 E0                MOVX    A,@DPTR
-00234A FE                MOV     R6,A
-00234B A3                INC     DPTR
-00234C E0                MOVX    A,@DPTR
-00234D FF                MOV     R7,A
-00234E C3                CLR     C
-00234F 904C94            MOV     DPTR,#m_adc3vValue+01H
-002352 E0                MOVX    A,@DPTR
-002353 9F                SUBB    A,R7
-002354 FD                MOV     R5,A
-002355 904C93            MOV     DPTR,#m_adc3vValue
-002358 E0                MOVX    A,@DPTR
-002359 9E                SUBB    A,R6
-00235A FC                MOV     R4,A
-00235B E4                CLR     A
-00235C 120206            LCALL   ?C?FCASTI
-00235F 7B52              MOV     R3,#052H
-002361 7AB8              MOV     R2,#0B8H
-002363 795E              MOV     R1,#05EH
-002365 783F              MOV     R0,#03FH
-002367 1200FB            LCALL   ?C?FPMUL
-00236A C004              PUSH    AR4
-00236C C005              PUSH    AR5
-00236E C006              PUSH    AR6
-002370 C007              PUSH    AR7
-002372 904C91            MOV     DPTR,#m_adc0vBase
-002375 E0                MOVX    A,@DPTR
-002376 FC                MOV     R4,A
-002377 A3                INC     DPTR
-002378 E0                MOVX    A,@DPTR
-002379 FD                MOV     R5,A
-00237A E4                CLR     A
-00237B 120206            LCALL   ?C?FCASTI
-00237E D003              POP     AR3
-002380 D002              POP     AR2
-002382 D001              POP     AR1
-002384 D000              POP     AR0
-002386 12000A            LCALL   ?C?FPADD
-002389 12023F            LCALL   ?C?CASTF
-00238C 904CE0            MOV     DPTR,#g_variable+021H
-00238F EE                MOV     A,R6
-002390 F0                MOVX    @DPTR,A
-002391 A3                INC     DPTR
-002392 EF                MOV     A,R7
-002393 F0                MOVX    @DPTR,A
-   19: #endif
-   20: #ifdef ADC_TYPE_VINLPM
-   21: 		for (i = 0; i < BAT_ARRAY_LEN; i++)
-   22: 		{
-   23: 			g_variable.battery_value[i] = INIT_BATTERY_VALUE_VINLPM;
-   24: 		}
-   25: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V2+m_adc0vBase;
-   26: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_2V0+m_adc0vBase;
-   27: #endif
-   28: #ifdef ADC_TYPE_GPIO
-   29: 	m_adc_channel = ADC_CHANNEL;
-   30: 	for (i = 0; i < BAT_ARRAY_LEN; i++)
-   31: 	{
-   32: 		g_variable.battery_value[i] = INIT_BATTERY_VALUE_GPIO;
-   33: 	}
-   34: 		g_variable.battery_level_low = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_1V0+m_adc0vBase;
-   35: 		g_variable.battery_level_shutdown = (m_adc3vValue - m_adc0vBase)*LOW_BATTER_COEFFICIENT_0V9+m_adc0vBase;
-   36: #endif	
-   37: #endif
-   38: }
-002394 22                RET     
------ FUNCTION YC_adc_init (END) -------
+   82: void YC_adc_check_timer500ms()
+   83: {
+   84: #ifdef  ADC_ENABLE
+   85: 	// adc check timer	
+   86: 	if (g_variable.battery_check_interval)
+002395 904CD3            MOV     DPTR,#g_variable+014H
+002398 E0                MOVX    A,@DPTR
+002399 600A              JZ      ?C0016?ADC
+   87: 	{
+   88: 		g_variable.battery_check_interval--;
+00239B 14                DEC     A
+00239C F0                MOVX    @DPTR,A
+   89: 		if (g_variable.battery_check_interval == 0)
+00239D E0                MOVX    A,@DPTR
+00239E 7005              JNZ     ?C0016?ADC
+   90: 		{
+   91: 			g_variable.battery_check_interval = BATTERY_CHECK_INTERVAL;
+0023A0 7405              MOV     A,#05H
+0023A2 F0                MOVX    @DPTR,A
+   92: 			YC_adc_check();
+0023A3 518C              ACALL   YC_adc_check
+   93: 		}
+   94: 	}
+   95: #endif	
+   96: }
+0023A5         ?C0016?ADC:
+0023A5 22                RET     
+----- FUNCTION YC_adc_check_timer500ms (END) -------
 
 
 ----- FUNCTION _bufsize (BEGIN) -----
-002395 904E73            MOV     DPTR,#rptr
-002398 EE                MOV     A,R6
-002399 F0                MOVX    @DPTR,A
-00239A A3                INC     DPTR
-00239B EF                MOV     A,R7
-00239C F0                MOVX    @DPTR,A
-00239D 904E75            MOV     DPTR,#wptr
-0023A0 EC                MOV     A,R4
-0023A1 F0                MOVX    @DPTR,A
-0023A2 A3                INC     DPTR
-0023A3 ED                MOV     A,R5
-0023A4 F0                MOVX    @DPTR,A
+0023A6 904E73            MOV     DPTR,#rptr
+0023A9 EE                MOV     A,R6
+0023AA F0                MOVX    @DPTR,A
+0023AB A3                INC     DPTR
+0023AC EF                MOV     A,R7
+0023AD F0                MOVX    @DPTR,A
+0023AE 904E75            MOV     DPTR,#wptr
+0023B1 EC                MOV     A,R4
+0023B2 F0                MOVX    @DPTR,A
+0023B3 A3                INC     DPTR
+0023B4 ED                MOV     A,R5
+0023B5 F0                MOVX    @DPTR,A
 ;---- Variable 'buflen' assigned to Register 'R3' ----
-0023A5 904E75            MOV     DPTR,#wptr
-0023A8 E0                MOVX    A,@DPTR
-0023A9 FE                MOV     R6,A
-0023AA A3                INC     DPTR
-0023AB E0                MOVX    A,@DPTR
-0023AC FF                MOV     R7,A
-0023AD D3                SETB    C
-0023AE 904E74            MOV     DPTR,#rptr+01H
-0023B1 E0                MOVX    A,@DPTR
-0023B2 9F                SUBB    A,R7
-0023B3 904E73            MOV     DPTR,#rptr
-0023B6 E0                MOVX    A,@DPTR
-0023B7 9E                SUBB    A,R6
-0023B8 4016              JC      ?C0001?IPC
-0023BA 904E75            MOV     DPTR,#wptr
-0023BD E0                MOVX    A,@DPTR
-0023BE FE                MOV     R6,A
-0023BF A3                INC     DPTR
-0023C0 E0                MOVX    A,@DPTR
-0023C1 FF                MOV     R7,A
-0023C2 904E74            MOV     DPTR,#rptr+01H
-0023C5 E0                MOVX    A,@DPTR
-0023C6 9F                SUBB    A,R7
-0023C7 FF                MOV     R7,A
-0023C8 904E73            MOV     DPTR,#rptr
-0023CB E0                MOVX    A,@DPTR
-0023CC 9E                SUBB    A,R6
-0023CD FE                MOV     R6,A
-0023CE 801E              SJMP    ?C0002?IPC
-0023D0         ?C0001?IPC:
-0023D0 904E73            MOV     DPTR,#rptr
-0023D3 E0                MOVX    A,@DPTR
-0023D4 FE                MOV     R6,A
-0023D5 A3                INC     DPTR
+0023B6 904E75            MOV     DPTR,#wptr
+0023B9 E0                MOVX    A,@DPTR
+0023BA FE                MOV     R6,A
+0023BB A3                INC     DPTR
+0023BC E0                MOVX    A,@DPTR
+0023BD FF                MOV     R7,A
+0023BE D3                SETB    C
+0023BF 904E74            MOV     DPTR,#rptr+01H
+0023C2 E0                MOVX    A,@DPTR
+0023C3 9F                SUBB    A,R7
+0023C4 904E73            MOV     DPTR,#rptr
+0023C7 E0                MOVX    A,@DPTR
+0023C8 9E                SUBB    A,R6
+0023C9 4016              JC      ?C0001?IPC
+0023CB 904E75            MOV     DPTR,#wptr
+0023CE E0                MOVX    A,@DPTR
+0023CF FE                MOV     R6,A
+0023D0 A3                INC     DPTR
+0023D1 E0                MOVX    A,@DPTR
+0023D2 FF                MOV     R7,A
+0023D3 904E74            MOV     DPTR,#rptr+01H
 0023D6 E0                MOVX    A,@DPTR
-0023D7 FF                MOV     R7,A
-0023D8 C3                CLR     C
-0023D9 904E76            MOV     DPTR,#wptr+01H
+0023D7 9F                SUBB    A,R7
+0023D8 FF                MOV     R7,A
+0023D9 904E73            MOV     DPTR,#rptr
 0023DC E0                MOVX    A,@DPTR
-0023DD 9F                SUBB    A,R7
-0023DE FF                MOV     R7,A
-0023DF 904E75            MOV     DPTR,#wptr
-0023E2 E0                MOVX    A,@DPTR
-0023E3 9E                SUBB    A,R6
-0023E4 FE                MOV     R6,A
-0023E5 AD03              MOV     R5,AR3
-0023E7 C3                CLR     C
-0023E8 EB                MOV     A,R3
-0023E9 9F                SUBB    A,R7
-0023EA FF                MOV     R7,A
-0023EB E4                CLR     A
-0023EC 9E                SUBB    A,R6
-0023ED FE                MOV     R6,A
-0023EE         ?C0002?IPC:
-0023EE 22                RET     
+0023DD 9E                SUBB    A,R6
+0023DE FE                MOV     R6,A
+0023DF 801E              SJMP    ?C0002?IPC
+0023E1         ?C0001?IPC:
+0023E1 904E73            MOV     DPTR,#rptr
+0023E4 E0                MOVX    A,@DPTR
+0023E5 FE                MOV     R6,A
+0023E6 A3                INC     DPTR
+0023E7 E0                MOVX    A,@DPTR
+0023E8 FF                MOV     R7,A
+0023E9 C3                CLR     C
+0023EA 904E76            MOV     DPTR,#wptr+01H
+0023ED E0                MOVX    A,@DPTR
+0023EE 9F                SUBB    A,R7
+0023EF FF                MOV     R7,A
+0023F0 904E75            MOV     DPTR,#wptr
+0023F3 E0                MOVX    A,@DPTR
+0023F4 9E                SUBB    A,R6
+0023F5 FE                MOV     R6,A
+0023F6 AD03              MOV     R5,AR3
+0023F8 C3                CLR     C
+0023F9 EB                MOV     A,R3
+0023FA 9F                SUBB    A,R7
+0023FB FF                MOV     R7,A
+0023FC E4                CLR     A
+0023FD 9E                SUBB    A,R6
+0023FE FE                MOV     R6,A
+0023FF         ?C0002?IPC:
+0023FF 22                RET     
 ----- FUNCTION _bufsize (END) -------
 
 
 ----- FUNCTION _ipcRx (BEGIN) -----
-0023EF 904E94            MOV     DPTR,#dest
-0023F2 EE                MOV     A,R6
-0023F3 F0                MOVX    @DPTR,A
-0023F4 A3                INC     DPTR
-0023F5 EF                MOV     A,R7
-0023F6 F0                MOVX    @DPTR,A
+002400 904E94            MOV     DPTR,#dest
+002403 EE                MOV     A,R6
+002404 F0                MOVX    @DPTR,A
+002405 A3                INC     DPTR
+002406 EF                MOV     A,R7
+002407 F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R1' ----
-0023F7 A905              MOV     R1,AR5
-0023F9 904B9E            MOV     DPTR,#ipcRxReadPtr
-0023FC E0                MOVX    A,@DPTR
-0023FD FE                MOV     R6,A
-0023FE A3                INC     DPTR
-0023FF E0                MOVX    A,@DPTR
-002400 FF                MOV     R7,A
+002408 A905              MOV     R1,AR5
+00240A 904B9E            MOV     DPTR,#ipcRxReadPtr
+00240D E0                MOVX    A,@DPTR
+00240E FE                MOV     R6,A
+00240F A3                INC     DPTR
+002410 E0                MOVX    A,@DPTR
+002411 FF                MOV     R7,A
 ;---- Variable 'src' assigned to Register 'R6/R7' ----
-002401         ?C0004?IPC:
-002401 AD01              MOV     R5,AR1
-002403 19                DEC     R1
-002404 ED                MOV     A,R5
-002405 602F              JZ      ?C0005?IPC
-002407 0F                INC     R7
-002408 EF                MOV     A,R7
-002409 AC06              MOV     R4,AR6
-00240B 7001              JNZ     ?C0036?IPC
-00240D 0E                INC     R6
-00240E         ?C0036?IPC:
-00240E 14                DEC     A
-00240F F582              MOV     DPL,A
-002411 8C83              MOV     DPH,R4
-002413 E0                MOVX    A,@DPTR
-002414 FD                MOV     R5,A
-002415 904E94            MOV     DPTR,#dest
-002418 E4                CLR     A
-002419 75F001            MOV     B,#01H
-00241C 120424            LCALL   ?C?ILDIX
-00241F 85F082            MOV     DPL,B
-002422 F583              MOV     DPH,A
-002424 ED                MOV     A,R5
-002425 F0                MOVX    @DPTR,A
-002426 AD07              MOV     R5,AR7
-002428 AC06              MOV     R4,AR6
-00242A BC4BD4            CJNE    R4,#04BH,?C0004?IPC
-00242D BD9AD1            CJNE    R5,#09AH,?C0004?IPC
-002430 7E4B              MOV     R6,#04BH
-002432 7F36              MOV     R7,#036H
-002434 80CB              SJMP    ?C0004?IPC
-002436         ?C0005?IPC:
-002436 904B9E            MOV     DPTR,#ipcRxReadPtr
-002439 EE                MOV     A,R6
-00243A F0                MOVX    @DPTR,A
-00243B A3                INC     DPTR
-00243C EF                MOV     A,R7
-00243D F0                MOVX    @DPTR,A
-00243E 22                RET     
+002412         ?C0004?IPC:
+002412 AD01              MOV     R5,AR1
+002414 19                DEC     R1
+002415 ED                MOV     A,R5
+002416 602F              JZ      ?C0005?IPC
+002418 0F                INC     R7
+002419 EF                MOV     A,R7
+00241A AC06              MOV     R4,AR6
+00241C 7001              JNZ     ?C0036?IPC
+00241E 0E                INC     R6
+00241F         ?C0036?IPC:
+00241F 14                DEC     A
+002420 F582              MOV     DPL,A
+002422 8C83              MOV     DPH,R4
+002424 E0                MOVX    A,@DPTR
+002425 FD                MOV     R5,A
+002426 904E94            MOV     DPTR,#dest
+002429 E4                CLR     A
+00242A 75F001            MOV     B,#01H
+00242D 120424            LCALL   ?C?ILDIX
+002430 85F082            MOV     DPL,B
+002433 F583              MOV     DPH,A
+002435 ED                MOV     A,R5
+002436 F0                MOVX    @DPTR,A
+002437 AD07              MOV     R5,AR7
+002439 AC06              MOV     R4,AR6
+00243B BC4BD4            CJNE    R4,#04BH,?C0004?IPC
+00243E BD9AD1            CJNE    R5,#09AH,?C0004?IPC
+002441 7E4B              MOV     R6,#04BH
+002443 7F36              MOV     R7,#036H
+002445 80CB              SJMP    ?C0004?IPC
+002447         ?C0005?IPC:
+002447 904B9E            MOV     DPTR,#ipcRxReadPtr
+00244A EE                MOV     A,R6
+00244B F0                MOVX    @DPTR,A
+00244C A3                INC     DPTR
+00244D EF                MOV     A,R7
+00244E F0                MOVX    @DPTR,A
+00244F 22                RET     
 ----- FUNCTION _ipcRx (END) -------
 
 
 ----- FUNCTION IPC_GetBBDIsconnectReason (BEGIN) -----
-00243F 900446            MOV     DPTR,#bbDisReason
-002442 E0                MOVX    A,@DPTR
-002443 FF                MOV     R7,A
-002444 22                RET     
+002450 900446            MOV     DPTR,#bbDisReason
+002453 E0                MOVX    A,@DPTR
+002454 FF                MOV     R7,A
+002455 22                RET     
 ----- FUNCTION IPC_GetBBDIsconnectReason (END) -------
 
 
 ----- FUNCTION YC_Ice_break (BEGIN) -----
-002445 908280            MOV     DPTR,#08280H
-002448 7401              MOV     A,#01H
-00244A F0                MOVX    @DPTR,A
-00244B 22                RET     
+002456 908280            MOV     DPTR,#08280H
+002459 7401              MOV     A,#01H
+00245B F0                MOVX    @DPTR,A
+00245C 22                RET     
 ----- FUNCTION YC_Ice_break (END) -------
 
 
 ----- FUNCTION _dmemcpy (BEGIN) -----
-00244C 904E37            MOV     DPTR,#dest
-00244F EB                MOV     A,R3
-002450 F0                MOVX    @DPTR,A
-002451 A3                INC     DPTR
-002452 EA                MOV     A,R2
-002453 F0                MOVX    @DPTR,A
-002454 A3                INC     DPTR
-002455 E9                MOV     A,R1
-002456 F0                MOVX    @DPTR,A
-002457         ?C0005?UTILITIES:
-002457 904E3D            MOV     DPTR,#len
-00245A 74FF              MOV     A,#0FFH
-00245C F5F0              MOV     B,A
-00245E 120424            LCALL   ?C?ILDIX
-002461 45F0              ORL     A,B
-002463 602A              JZ      ?C0007?UTILITIES
-002465 904E3A            MOV     DPTR,#src
-002468 E0                MOVX    A,@DPTR
-002469 FB                MOV     R3,A
-00246A A3                INC     DPTR
-00246B E4                CLR     A
-00246C 75F001            MOV     B,#01H
+00245D 904E37            MOV     DPTR,#dest
+002460 EB                MOV     A,R3
+002461 F0                MOVX    @DPTR,A
+002462 A3                INC     DPTR
+002463 EA                MOV     A,R2
+002464 F0                MOVX    @DPTR,A
+002465 A3                INC     DPTR
+002466 E9                MOV     A,R1
+002467 F0                MOVX    @DPTR,A
+002468         ?C0005?UTILITIES:
+002468 904E3D            MOV     DPTR,#len
+00246B 74FF              MOV     A,#0FFH
+00246D F5F0              MOV     B,A
 00246F 120424            LCALL   ?C?ILDIX
-002472 A9F0              MOV     R1,B
-002474 FA                MOV     R2,A
-002475 1203B6            LCALL   ?C?CLDPTR
-002478 FF                MOV     R7,A
-002479 904E37            MOV     DPTR,#dest
-00247C E0                MOVX    A,@DPTR
-00247D FB                MOV     R3,A
-00247E A3                INC     DPTR
-00247F E4                CLR     A
-002480 75F001            MOV     B,#01H
-002483 120424            LCALL   ?C?ILDIX
-002486 A9F0              MOV     R1,B
-002488 FA                MOV     R2,A
-002489 EF                MOV     A,R7
-00248A 1203FC            LCALL   ?C?CSTPTR
-00248D 80C8              SJMP    ?C0005?UTILITIES
-00248F         ?C0007?UTILITIES:
-00248F 22                RET     
+002472 45F0              ORL     A,B
+002474 602A              JZ      ?C0007?UTILITIES
+002476 904E3A            MOV     DPTR,#src
+002479 E0                MOVX    A,@DPTR
+00247A FB                MOV     R3,A
+00247B A3                INC     DPTR
+00247C E4                CLR     A
+00247D 75F001            MOV     B,#01H
+002480 120424            LCALL   ?C?ILDIX
+002483 A9F0              MOV     R1,B
+002485 FA                MOV     R2,A
+002486 1203B6            LCALL   ?C?CLDPTR
+002489 FF                MOV     R7,A
+00248A 904E37            MOV     DPTR,#dest
+00248D E0                MOVX    A,@DPTR
+00248E FB                MOV     R3,A
+00248F A3                INC     DPTR
+002490 E4                CLR     A
+002491 75F001            MOV     B,#01H
+002494 120424            LCALL   ?C?ILDIX
+002497 A9F0              MOV     R1,B
+002499 FA                MOV     R2,A
+00249A EF                MOV     A,R7
+00249B 1203FC            LCALL   ?C?CSTPTR
+00249E 80C8              SJMP    ?C0005?UTILITIES
+0024A0         ?C0007?UTILITIES:
+0024A0 22                RET     
 ----- FUNCTION _dmemcpy (END) -------
 
 
 ----- FUNCTION _xmemclear_ff (BEGIN) -----
-002490 904E8A            MOV     DPTR,#dest
-002493 EB                MOV     A,R3
-002494 F0                MOVX    @DPTR,A
-002495 A3                INC     DPTR
-002496 EA                MOV     A,R2
-002497 F0                MOVX    @DPTR,A
-002498 A3                INC     DPTR
-002499 E9                MOV     A,R1
-00249A F0                MOVX    @DPTR,A
+0024A1 904E8A            MOV     DPTR,#dest
+0024A4 EB                MOV     A,R3
+0024A5 F0                MOVX    @DPTR,A
+0024A6 A3                INC     DPTR
+0024A7 EA                MOV     A,R2
+0024A8 F0                MOVX    @DPTR,A
+0024A9 A3                INC     DPTR
+0024AA E9                MOV     A,R1
+0024AB F0                MOVX    @DPTR,A
 ;---- Variable 'len' assigned to Register 'R4/R5' ----
-00249B         ?C0011?UTILITIES:
-00249B ED                MOV     A,R5
-00249C 1D                DEC     R5
-00249D AE04              MOV     R6,AR4
-00249F 7001              JNZ     ?C0027?UTILITIES
-0024A1 1C                DEC     R4
-0024A2         ?C0027?UTILITIES:
-0024A2 4E                ORL     A,R6
-0024A3 6017              JZ      ?C0013?UTILITIES
-0024A5 904E8A            MOV     DPTR,#dest
-0024A8 E0                MOVX    A,@DPTR
-0024A9 FB                MOV     R3,A
-0024AA A3                INC     DPTR
-0024AB E4                CLR     A
-0024AC 75F001            MOV     B,#01H
-0024AF 120424            LCALL   ?C?ILDIX
-0024B2 A9F0              MOV     R1,B
-0024B4 FA                MOV     R2,A
-0024B5 74FF              MOV     A,#0FFH
-0024B7 1203FC            LCALL   ?C?CSTPTR
-0024BA 80DF              SJMP    ?C0011?UTILITIES
-0024BC         ?C0013?UTILITIES:
-0024BC 22                RET     
+0024AC         ?C0011?UTILITIES:
+0024AC ED                MOV     A,R5
+0024AD 1D                DEC     R5
+0024AE AE04              MOV     R6,AR4
+0024B0 7001              JNZ     ?C0027?UTILITIES
+0024B2 1C                DEC     R4
+0024B3         ?C0027?UTILITIES:
+0024B3 4E                ORL     A,R6
+0024B4 6017              JZ      ?C0013?UTILITIES
+0024B6 904E8A            MOV     DPTR,#dest
+0024B9 E0                MOVX    A,@DPTR
+0024BA FB                MOV     R3,A
+0024BB A3                INC     DPTR
+0024BC E4                CLR     A
+0024BD 75F001            MOV     B,#01H
+0024C0 120424            LCALL   ?C?ILDIX
+0024C3 A9F0              MOV     R1,B
+0024C5 FA                MOV     R2,A
+0024C6 74FF              MOV     A,#0FFH
+0024C8 1203FC            LCALL   ?C?CSTPTR
+0024CB 80DF              SJMP    ?C0011?UTILITIES
+0024CD         ?C0013?UTILITIES:
+0024CD 22                RET     
 ----- FUNCTION _xmemclear_ff (END) -------
 
 
 ----- FUNCTION _compare_str (BEGIN) -----
-0024BD 904E46            MOV     DPTR,#str1
-0024C0 EB                MOV     A,R3
-0024C1 F0                MOVX    @DPTR,A
-0024C2 A3                INC     DPTR
-0024C3 EA                MOV     A,R2
-0024C4 F0                MOVX    @DPTR,A
-0024C5 A3                INC     DPTR
-0024C6 E9                MOV     A,R1
-0024C7 F0                MOVX    @DPTR,A
+0024CE 904E46            MOV     DPTR,#str1
+0024D1 EB                MOV     A,R3
+0024D2 F0                MOVX    @DPTR,A
+0024D3 A3                INC     DPTR
+0024D4 EA                MOV     A,R2
+0024D5 F0                MOVX    @DPTR,A
+0024D6 A3                INC     DPTR
+0024D7 E9                MOV     A,R1
+0024D8 F0                MOVX    @DPTR,A
 ;---- Variable 'i' assigned to Register 'R7' ----
-0024C8 E4                CLR     A
-0024C9 FF                MOV     R7,A
-0024CA         ?C0021?UTILITIES:
-0024CA 904E4C            MOV     DPTR,#len
-0024CD E0                MOVX    A,@DPTR
-0024CE FE                MOV     R6,A
-0024CF EF                MOV     A,R7
-0024D0 C3                CLR     C
-0024D1 9E                SUBB    A,R6
-0024D2 5030              JNC     ?C0022?UTILITIES
-0024D4 904E49            MOV     DPTR,#str2
-0024D7 E0                MOVX    A,@DPTR
-0024D8 FB                MOV     R3,A
-0024D9 A3                INC     DPTR
-0024DA E0                MOVX    A,@DPTR
-0024DB FA                MOV     R2,A
-0024DC A3                INC     DPTR
-0024DD E0                MOVX    A,@DPTR
-0024DE F9                MOV     R1,A
-0024DF 8F82              MOV     DPL,R7
-0024E1 758300            MOV     DPH,#00H
-0024E4 1203CF            LCALL   ?C?CLDOPTR
-0024E7 FE                MOV     R6,A
-0024E8 904E46            MOV     DPTR,#str1
+0024D9 E4                CLR     A
+0024DA FF                MOV     R7,A
+0024DB         ?C0021?UTILITIES:
+0024DB 904E4C            MOV     DPTR,#len
+0024DE E0                MOVX    A,@DPTR
+0024DF FE                MOV     R6,A
+0024E0 EF                MOV     A,R7
+0024E1 C3                CLR     C
+0024E2 9E                SUBB    A,R6
+0024E3 5030              JNC     ?C0022?UTILITIES
+0024E5 904E49            MOV     DPTR,#str2
+0024E8 E0                MOVX    A,@DPTR
+0024E9 FB                MOV     R3,A
+0024EA A3                INC     DPTR
 0024EB E0                MOVX    A,@DPTR
-0024EC FB                MOV     R3,A
+0024EC FA                MOV     R2,A
 0024ED A3                INC     DPTR
 0024EE E0                MOVX    A,@DPTR
-0024EF FA                MOV     R2,A
-0024F0 A3                INC     DPTR
-0024F1 E0                MOVX    A,@DPTR
-0024F2 F9                MOV     R1,A
-0024F3 8F82              MOV     DPL,R7
-0024F5 758300            MOV     DPH,#00H
-0024F8 1203CF            LCALL   ?C?CLDOPTR
-0024FB 6E                XRL     A,R6
-0024FC 6003              JZ      ?C0023?UTILITIES
-0024FE 7F00              MOV     R7,#00H
-002500 22                RET     
-002501         ?C0023?UTILITIES:
-002501 0F                INC     R7
-002502 80C6              SJMP    ?C0021?UTILITIES
-002504         ?C0022?UTILITIES:
-002504 7F01              MOV     R7,#01H
-002506 22                RET     
+0024EF F9                MOV     R1,A
+0024F0 8F82              MOV     DPL,R7
+0024F2 758300            MOV     DPH,#00H
+0024F5 1203CF            LCALL   ?C?CLDOPTR
+0024F8 FE                MOV     R6,A
+0024F9 904E46            MOV     DPTR,#str1
+0024FC E0                MOVX    A,@DPTR
+0024FD FB                MOV     R3,A
+0024FE A3                INC     DPTR
+0024FF E0                MOVX    A,@DPTR
+002500 FA                MOV     R2,A
+002501 A3                INC     DPTR
+002502 E0                MOVX    A,@DPTR
+002503 F9                MOV     R1,A
+002504 8F82              MOV     DPL,R7
+002506 758300            MOV     DPH,#00H
+002509 1203CF            LCALL   ?C?CLDOPTR
+00250C 6E                XRL     A,R6
+00250D 6003              JZ      ?C0023?UTILITIES
+00250F 7F00              MOV     R7,#00H
+002511 22                RET     
+002512         ?C0023?UTILITIES:
+002512 0F                INC     R7
+002513 80C6              SJMP    ?C0021?UTILITIES
+002515         ?C0022?UTILITIES:
+002515 7F01              MOV     R7,#01H
+002517 22                RET     
 ----- FUNCTION _compare_str (END) -------
 
 
 ----- FUNCTION _GPIO_ClearWakeup (BEGIN) -----
 ;---- Variable 'gpio_num' assigned to Register 'R7' ----
-002507 EF                MOV     A,R7
-002508 F4                CPL     A
-002509 603A              JZ      ?C0023?GPIO
-00250B         ?C0022?GPIO:
-00250B EF                MOV     A,R7
-00250C 5407              ANL     A,#07H
-00250E FE                MOV     R6,A
+002518 EF                MOV     A,R7
+002519 F4                CPL     A
+00251A 603A              JZ      ?C0023?GPIO
+00251C         ?C0022?GPIO:
+00251C EF                MOV     A,R7
+00251D 5407              ANL     A,#07H
+00251F FE                MOV     R6,A
 ;---- Variable 'queue' assigned to Register 'R6' ----
-00250F EF                MOV     A,R7
-002510 13                RRC     A
-002511 13                RRC     A
-002512 13                RRC     A
-002513 5403              ANL     A,#03H
-002515 FF                MOV     R7,A
+002520 EF                MOV     A,R7
+002521 13                RRC     A
+002522 13                RRC     A
+002523 13                RRC     A
+002524 5403              ANL     A,#03H
+002526 FF                MOV     R7,A
 ;---- Variable 'group' assigned to Register 'R7' ----
-002516 24A3              ADD     A,#LOW YC_GPIOWakeupL
-002518 F582              MOV     DPL,A
-00251A E4                CLR     A
-00251B 3400              ADDC    A,#HIGH YC_GPIOWakeupL
-00251D F583              MOV     DPH,A
-00251F C083              PUSH    DPH
-002521 C082              PUSH    DPL
-002523 E0                MOVX    A,@DPTR
-002524 FD                MOV     R5,A
-002525 7401              MOV     A,#01H
-002527 A806              MOV     R0,AR6
-002529 08                INC     R0
-00252A 8002              SJMP    ?C0043?GPIO
-00252C         ?C0042?GPIO:
-00252C C3                CLR     C
-00252D 33                RLC     A
-00252E         ?C0043?GPIO:
-00252E D8FC              DJNZ    R0,?C0042?GPIO
-002530 F4                CPL     A
-002531 FC                MOV     R4,A
-002532 5D                ANL     A,R5
-002533 D082              POP     DPL
-002535 D083              POP     DPH
-002537 F0                MOVX    @DPTR,A
-002538 74A7              MOV     A,#LOW YC_GPIOWakeupH
-00253A 2F                ADD     A,R7
-00253B F582              MOV     DPL,A
-00253D E4                CLR     A
-00253E 3400              ADDC    A,#HIGH YC_GPIOWakeupH
-002540 F583              MOV     DPH,A
-002542 E0                MOVX    A,@DPTR
-002543 5C                ANL     A,R4
-002544 F0                MOVX    @DPTR,A
-002545         ?C0023?GPIO:
-002545 22                RET     
+002527 24A3              ADD     A,#LOW YC_GPIOWakeupL
+002529 F582              MOV     DPL,A
+00252B E4                CLR     A
+00252C 3400              ADDC    A,#HIGH YC_GPIOWakeupL
+00252E F583              MOV     DPH,A
+002530 C083              PUSH    DPH
+002532 C082              PUSH    DPL
+002534 E0                MOVX    A,@DPTR
+002535 FD                MOV     R5,A
+002536 7401              MOV     A,#01H
+002538 A806              MOV     R0,AR6
+00253A 08                INC     R0
+00253B 8002              SJMP    ?C0043?GPIO
+00253D         ?C0042?GPIO:
+00253D C3                CLR     C
+00253E 33                RLC     A
+00253F         ?C0043?GPIO:
+00253F D8FC              DJNZ    R0,?C0042?GPIO
+002541 F4                CPL     A
+002542 FC                MOV     R4,A
+002543 5D                ANL     A,R5
+002544 D082              POP     DPL
+002546 D083              POP     DPH
+002548 F0                MOVX    @DPTR,A
+002549 74A7              MOV     A,#LOW YC_GPIOWakeupH
+00254B 2F                ADD     A,R7
+00254C F582              MOV     DPL,A
+00254E E4                CLR     A
+00254F 3400              ADDC    A,#HIGH YC_GPIOWakeupH
+002551 F583              MOV     DPH,A
+002553 E0                MOVX    A,@DPTR
+002554 5C                ANL     A,R4
+002555 F0                MOVX    @DPTR,A
+002556         ?C0023?GPIO:
+002556 22                RET     
 ----- FUNCTION _GPIO_ClearWakeup (END) -------
 
 
------ FUNCTION _GPIO_FlipOutBit (BEGIN) -----
-002546 904E9E            MOV     DPTR,#gpio_num
-002549 EF                MOV     A,R7
-00254A F0                MOVX    @DPTR,A
-00254B 7B01              MOV     R3,#01H
-00254D 7A80              MOV     R2,#080H
-00254F 7974              MOV     R1,#074H
-002551 121387            LCALL   _gpioGetBit
-002554 9209              MOV     st,C
-002556 904E9E            MOV     DPTR,#gpio_num
-002559 E0                MOVX    A,@DPTR
-00255A FF                MOV     R7,A
-00255B A209              MOV     C,st
-00255D B3                CPL     C
-00255E 9201              MOV     ?_GPIO_Setout?BIT,C
-002560 0207A3            LJMP    _GPIO_Setout
------ FUNCTION _GPIO_FlipOutBit (END) -------
-
-
 ----- FUNCTION GPIO_fillpd (BEGIN) -----
 ;---- Variable 'i' assigned to Register 'R7' ----
-002563 E4                CLR     A
-002564 FF                MOV     R7,A
-002565         ?C0026?GPIO:
-002565 EF                MOV     A,R7
-002566 FD                MOV     R5,A
-002567 7C00              MOV     R4,#00H
-002569 2478              ADD     A,#078H
-00256B FB                MOV     R3,A
-00256C EC                MOV     A,R4
-00256D 3480              ADDC    A,#080H
-00256F 8B82              MOV     DPL,R3
-002571 F583              MOV     DPH,A
-002573 E0                MOVX    A,@DPTR
-002574 FE                MOV     R6,A
-002575 ED                MOV     A,R5
-002576 2470              ADD     A,#070H
-002578 FD                MOV     R5,A
-002579 EC                MOV     A,R4
-00257A 3480              ADDC    A,#080H
-00257C 8D82              MOV     DPL,R5
-00257E F583              MOV     DPH,A
-002580 E0                MOVX    A,@DPTR
-002581 4E                ORL     A,R6
-002582 F4                CPL     A
-002583 FE                MOV     R6,A
-002584 EF                MOV     A,R7
-002585 247C              ADD     A,#07CH
-002587 FD                MOV     R5,A
-002588 EC                MOV     A,R4
-002589 3480              ADDC    A,#080H
-00258B 8D82              MOV     DPL,R5
-00258D F583              MOV     DPH,A
-00258F EE                MOV     A,R6
-002590 F0                MOVX    @DPTR,A
-002591 0F                INC     R7
-002592 EF                MOV     A,R7
-002593 B404CF            CJNE    A,#04H,?C0026?GPIO
-002596 22                RET     
+002557 E4                CLR     A
+002558 FF                MOV     R7,A
+002559         ?C0026?GPIO:
+002559 EF                MOV     A,R7
+00255A FD                MOV     R5,A
+00255B 7C00              MOV     R4,#00H
+00255D 2478              ADD     A,#078H
+00255F FB                MOV     R3,A
+002560 EC                MOV     A,R4
+002561 3480              ADDC    A,#080H
+002563 8B82              MOV     DPL,R3
+002565 F583              MOV     DPH,A
+002567 E0                MOVX    A,@DPTR
+002568 FE                MOV     R6,A
+002569 ED                MOV     A,R5
+00256A 2470              ADD     A,#070H
+00256C FD                MOV     R5,A
+00256D EC                MOV     A,R4
+00256E 3480              ADDC    A,#080H
+002570 8D82              MOV     DPL,R5
+002572 F583              MOV     DPH,A
+002574 E0                MOVX    A,@DPTR
+002575 4E                ORL     A,R6
+002576 F4                CPL     A
+002577 FE                MOV     R6,A
+002578 EF                MOV     A,R7
+002579 247C              ADD     A,#07CH
+00257B FD                MOV     R5,A
+00257C EC                MOV     A,R4
+00257D 3480              ADDC    A,#080H
+00257F 8D82              MOV     DPL,R5
+002581 F583              MOV     DPH,A
+002583 EE                MOV     A,R6
+002584 F0                MOVX    @DPTR,A
+002585 0F                INC     R7
+002586 EF                MOV     A,R7
+002587 B404CF            CJNE    A,#04H,?C0026?GPIO
+00258A 22                RET     
 ----- FUNCTION GPIO_fillpd (END) -------
 
 
Index: c51/output/FW.HTM
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/output/FW.HTM	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/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>02/28/2022  19:01:17</b><p>
+Creation time: <b>03/09/2022  16:40:10</b><p>
 
 <hr>
 
@@ -49,19 +49,19 @@
 <li><a href="#S166">?PR?_GPIO_SETINPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S83"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:001FB2H - C:001FBAH)</h2>
+<h2><a name="S83"></a>?PR?SYSTEM_HARDWARE_RESET?SYS (C:001FA7H - C:001FAFH)</h2>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S85">?PR?SYSTEM_RESET_CONNECT?SYS</a></li>
 </ul>
 
-<h2><a name="S85"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:001FBBH - C:001FBCH)</h2>
+<h2><a name="S85"></a>?PR?SYSTEM_RESET_CONNECT?SYS (C:001FB0H - C:001FB1H)</h2>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S83">?PR?SYSTEM_HARDWARE_RESET?SYS</a></li>
 </ul>
 
-<h2><a name="S86"></a>?PR?_KB_CB_HID?SYS (C:001FBDH - C:001FCCH)</h2>
+<h2><a name="S86"></a>?PR?_KB_CB_HID?SYS (C:001FB2H - C:001FC1H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -84,37 +84,32 @@
 <li><a href="#S6">?PR?YC_START_RECONNECT?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S92"></a>?PR?YC_PAIRING_TIMEROUT_500MS?SYS (C:002024H - C:002047H)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S111">?PR?_IPC_TXCONTROLCMD?IPC</a>)<p>
+<h2><a name="S93"></a>?PR?KB_BUTTON_PRESS_TIMER500MS?SYS (C:001FD9H - C:002067H)</h2>
+<p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S5">?PR?YC_DISCONNECT_ALL_LINK?BLUETOOTH</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S149">?PR?_DELAY1MS?UTILITIES</a></li>
-<li><a href="#S111">?PR?_IPC_TXCONTROLCMD?IPC</a></li>
+<li><a href="#S43">?PR?_YC_KEY_ACTION_HANDLE?KB_PROCESS</a></li>
 <li><a href="#S84">?PR?SYSTEM_LONG_SLEEP?SYS</a></li>
+<li><a href="#S5">?PR?YC_DISCONNECT_ALL_LINK?BLUETOOTH</a></li>
 </ul>
 
-<p><br><b>Called from:</b></p>
-<ul>
-<li><a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a></li>
-</ul>
-
-<h2><a name="S94"></a>?PR?KB_CB_TIMER500MS?SYS (C:002048H - C:002061H)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S90">?PR?LED_TIMER500MS?SYS</a>)<p>
+<h2><a name="S94"></a>?PR?KB_CB_TIMER500MS?SYS (C:001FC3H - C:001FD8H)</h2>
+<p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S103">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
-<li><a href="#S93">?PR?KB_BUTTON_PRESS_TIMER500MS?SYS</a></li>
 <li><a href="#S90">?PR?LED_TIMER500MS?SYS</a></li>
 <li><a href="#S103">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a></li>
 <li><a href="#S91">?PR?YC_CONNECT_TIMEOUT_500MS?SYS</a></li>
-<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S95"></a>?PR?KB_CB_TIMER100MS?SYS (C:00220BH - C:0022D5H)</h2>
+<h2><a name="S95"></a>?PR?KB_CB_TIMER100MS?SYS (C:002100H - C:0021CCH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=10 Bytes (<a href="#S44">?PR?_IPC_TXHIDDATA?KB_PROCESS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S158">?PR?_GPIO_SETOUT?GPIO</a></li>
 <li><a href="#S44">?PR?_IPC_TXHIDDATA?KB_PROCESS</a></li>
+<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_100MS?SYS</a></li>
 </ul>
 
 <h2><a name="S97"></a>?PR?YC_SYSTEM_MAIN?SYS (C:00110CH - C:001168H)</h2>
@@ -171,7 +166,7 @@
 <li><a href="#S191">?C?LIB_CODE</a></li>
 </ul>
 
-<h2><a name="S147"></a>?PR?_XMEMCLEAR_FF?UTILITIES (C:002490H - C:0024BCH)</h2>
+<h2><a name="S147"></a>?PR?_XMEMCLEAR_FF?UTILITIES (C:0024A1H - C:0024CDH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -360,7 +355,7 @@
 <li><a href="#S57">?PR?_KEY_FN_FUNCTION?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S57"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:001B2DH - C:001C36H)</h2>
+<h2><a name="S57"></a>?PR?_KEY_FN_FUNCTION?KB_PROCESS (C:001B2DH - C:001C2BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -394,21 +389,21 @@
 <li><a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S62"></a>?PR?_KEYIN?KEYSCAN (C:001C37H - C:001C8CH)</h2>
+<h2><a name="S62"></a>?PR?_KEYIN?KEYSCAN (C:001C2CH - C:001C81H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S63"></a>?PR?_KEYOUT?KEYSCAN (C:001C8DH - C:001D36H)</h2>
+<h2><a name="S63"></a>?PR?_KEYOUT?KEYSCAN (C:001C82H - C:001D2BH)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S64"></a>?PR?KSRAWINITIALIZE?KEYSCAN (C:001D37H - C:001D53H)</h2>
+<h2><a name="S64"></a>?PR?KSRAWINITIALIZE?KEYSCAN (C:001D2CH - C:001D48H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S166">?PR?_GPIO_SETINPUT?GPIO</a>) Top=6 Bytes (<a href="#S68">?PR?KS_INITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -446,14 +441,14 @@
 <li><a href="#S97">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S71"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:001E06H - C:001F63H)</h2>
+<h2><a name="S71"></a>?PR?KS_SCANMATRIX?KEYSCAN (C:001DFBH - C:001F58H)</h2>
 <p><br><b>Maximum Stack:</b> Top=6 Bytes (<a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S73"></a>?PR?_ARRAY_IS_EMPTY?KEYSCAN (C:001F64H - C:001F93H)</h2>
+<h2><a name="S73"></a>?PR?_ARRAY_IS_EMPTY?KEYSCAN (C:001F59H - C:001F88H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -535,7 +530,7 @@
 <li><a href="#S88">?PR?_KB_CB_EVENT?SYS</a></li>
 </ul>
 
-<h2><a name="S82"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:001F94H - C:001FB1H)</h2>
+<h2><a name="S82"></a>?PR?SYSTEM_SOFTWARE_INIT?SYS (C:001F89H - C:001FA6H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=8 Bytes (<a href="#S100">?PR?YC_ADC_INIT?ADC</a>) Top=2 Bytes (<a href="#S88">?PR?_KB_CB_EVENT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -556,22 +551,17 @@
 <li><a href="#S93">?PR?KB_BUTTON_PRESS_TIMER500MS?SYS</a></li>
 <li><a href="#S79">?PR?LED_HANDLE?LED</a></li>
 <li><a href="#S91">?PR?YC_CONNECT_TIMEOUT_500MS?SYS</a></li>
-<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a></li>
-</ul>
-
-<h2><a name="S90"></a>?PR?LED_TIMER500MS?SYS (C:001FCDH - C:001FDFH)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S176">?PR?_GPIO_FLIPOUTBIT?GPIO</a>) Top=2 Bytes (<a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
-<p><br><b>Calls to:</b></p>
-<ul>
-<li><a href="#S176">?PR?_GPIO_FLIPOUTBIT?GPIO</a></li>
+<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_100MS?SYS</a></li>
 </ul>
 
+<h2><a name="S90"></a>?PR?LED_TIMER500MS?SYS (C:001FC2H - C:001FC2H)</h2>
+<p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S91"></a>?PR?YC_CONNECT_TIMEOUT_500MS?SYS (C:001FE0H - C:002023H)</h2>
+<h2><a name="S91"></a>?PR?YC_CONNECT_TIMEOUT_500MS?SYS (C:002068H - C:0020ABH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S111">?PR?_IPC_TXCONTROLCMD?IPC</a>) Top=2 Bytes (<a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -584,19 +574,19 @@
 <li><a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S93"></a>?PR?KB_BUTTON_PRESS_TIMER500MS?SYS (C:002073H - C:002101H)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S5">?PR?YC_DISCONNECT_ALL_LINK?BLUETOOTH</a>) Top=2 Bytes (<a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
+<h2><a name="S92"></a>?PR?YC_PAIRING_TIMEROUT_100MS?SYS (C:0020ACH - C:0020E2H)</h2>
+<p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S176">?PR?_GPIO_FLIPOUTBIT?GPIO</a>) Top=2 Bytes (<a href="#S95">?PR?KB_CB_TIMER100MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S149">?PR?_DELAY1MS?UTILITIES</a></li>
-<li><a href="#S43">?PR?_YC_KEY_ACTION_HANDLE?KB_PROCESS</a></li>
+<li><a href="#S176">?PR?_GPIO_FLIPOUTBIT?GPIO</a></li>
+<li><a href="#S111">?PR?_IPC_TXCONTROLCMD?IPC</a></li>
 <li><a href="#S84">?PR?SYSTEM_LONG_SLEEP?SYS</a></li>
-<li><a href="#S5">?PR?YC_DISCONNECT_ALL_LINK?BLUETOOTH</a></li>
 </ul>
 
 <p><br><b>Called from:</b></p>
 <ul>
-<li><a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a></li>
+<li><a href="#S95">?PR?KB_CB_TIMER100MS?SYS</a></li>
 </ul>
 
 <h2><a name="S96"></a>?PR?KB_CB_INIT?SYS (C:00136EH - C:001373H)</h2>
@@ -606,7 +596,7 @@
 <li><a href="#S97">?PR?YC_SYSTEM_MAIN?SYS</a></li>
 </ul>
 
-<h2><a name="S100"></a>?PR?YC_ADC_INIT?ADC (C:0022D6H - C:002394H)</h2>
+<h2><a name="S100"></a>?PR?YC_ADC_INIT?ADC (C:0021CDH - C:00228BH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S82">?PR?SYSTEM_SOFTWARE_INIT?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -618,7 +608,7 @@
 <li><a href="#S82">?PR?SYSTEM_SOFTWARE_INIT?SYS</a></li>
 </ul>
 
-<h2><a name="S101"></a>?PR?YC_ADC_CHECK?ADC (C:002102H - C:00220AH)</h2>
+<h2><a name="S101"></a>?PR?YC_ADC_CHECK?ADC (C:00228CH - C:002394H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S103">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -630,7 +620,7 @@
 <li><a href="#S103">?PR?YC_ADC_CHECK_TIMER500MS?ADC</a></li>
 </ul>
 
-<h2><a name="S103"></a>?PR?YC_ADC_CHECK_TIMER500MS?ADC (C:002062H - C:002072H)</h2>
+<h2><a name="S103"></a>?PR?YC_ADC_CHECK_TIMER500MS?ADC (C:002395H - C:0023A5H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S101">?PR?YC_ADC_CHECK?ADC</a>) Top=2 Bytes (<a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -642,14 +632,14 @@
 <li><a href="#S94">?PR?KB_CB_TIMER500MS?SYS</a></li>
 </ul>
 
-<h2><a name="S105"></a>?PR?_BUFSIZE?IPC (C:002395H - C:0023EEH)</h2>
+<h2><a name="S105"></a>?PR?_BUFSIZE?IPC (C:0023A6H - C:0023FFH)</h2>
 <p><br><b>Maximum Stack:</b> Top=2 Bytes (<a href="#S109">?PR?_IPCTX?IPC</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
 <li><a href="#S109">?PR?_IPCTX?IPC</a></li>
 </ul>
 
-<h2><a name="S107"></a>?PR?_IPCRX?IPC (C:0023EFH - C:00243EH)</h2>
+<h2><a name="S107"></a>?PR?_IPCRX?IPC (C:002400H - C:00244FH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=4 Bytes (<a href="#S121">?PR?IPC_DEALSINGLESTEP?IPC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -673,7 +663,7 @@
 <li><a href="#S43">?PR?_YC_KEY_ACTION_HANDLE?KB_PROCESS</a></li>
 <li><a href="#S91">?PR?YC_CONNECT_TIMEOUT_500MS?SYS</a></li>
 <li><a href="#S5">?PR?YC_DISCONNECT_ALL_LINK?BLUETOOTH</a></li>
-<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a></li>
+<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_100MS?SYS</a></li>
 </ul>
 
 <h2><a name="S115"></a>?PR?_IPC_TX24GDATA?IPC (C:000F8DH - C:000F92H)</h2>
@@ -735,7 +725,7 @@
 <li><a href="#S54">?PR?_KB_MOTION_KEYSCAN?KB_PROCESS</a></li>
 </ul>
 
-<h2><a name="S143"></a>?PR?_DMEMCPY?UTILITIES (C:00244CH - C:00248FH)</h2>
+<h2><a name="S143"></a>?PR?_DMEMCPY?UTILITIES (C:00245DH - C:0024A0H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=8 Bytes (<a href="#S185">?PR?_IIC_WRITE?IIC</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -772,11 +762,11 @@
 <li><a href="#S43">?PR?_YC_KEY_ACTION_HANDLE?KB_PROCESS</a></li>
 <li><a href="#S118">?PR?IPC_WAITLPM?IPC</a></li>
 <li><a href="#S93">?PR?KB_BUTTON_PRESS_TIMER500MS?SYS</a></li>
-<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_500MS?SYS</a></li>
+<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_100MS?SYS</a></li>
 <li><a href="#S7">?PR?YC_UPDATE_EEPROM_DATA?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S150"></a>?PR?_COMPARE_STR?UTILITIES (C:0024BDH - C:002506H)</h2>
+<h2><a name="S150"></a>?PR?_COMPARE_STR?UTILITIES (C:0024CEH - C:002517H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=6 Bytes (<a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -788,7 +778,7 @@
 <li><a href="#S75">?PR?KS_GETCURRENTEVT?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S152"></a>?PR?_GPIOSETBIT?GPIO (C:001DA5H - C:001E05H)</h2>
+<h2><a name="S152"></a>?PR?_GPIOSETBIT?GPIO (C:001D9AH - C:001DFAH)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=2 Bytes (<a href="#S191">?C?LIB_CODE</a>) Top=12 Bytes (<a href="#S162">?PR?_GPIO_SETPD?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -839,7 +829,7 @@
 <li><a href="#S7">?PR?YC_UPDATE_EEPROM_DATA?BLUETOOTH</a></li>
 </ul>
 
-<h2><a name="S160"></a>?PR?_GPIO_SETPU?GPIO (C:001D72H - C:001D82H)</h2>
+<h2><a name="S160"></a>?PR?_GPIO_SETPU?GPIO (C:001D67H - C:001D77H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S152">?PR?_GPIOSETBIT?GPIO</a>) Top=10 Bytes (<a href="#S166">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -852,7 +842,7 @@
 <li><a href="#S168">?PR?_GPIO_SETOUTPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S162"></a>?PR?_GPIO_SETPD?GPIO (C:001D83H - C:001D93H)</h2>
+<h2><a name="S162"></a>?PR?_GPIO_SETPD?GPIO (C:001D78H - C:001D88H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S152">?PR?_GPIOSETBIT?GPIO</a>) Top=10 Bytes (<a href="#S166">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -864,7 +854,7 @@
 <li><a href="#S166">?PR?_GPIO_SETINPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S164"></a>?PR?_GPIO_SETOE?GPIO (C:001D94H - C:001DA4H)</h2>
+<h2><a name="S164"></a>?PR?_GPIO_SETOE?GPIO (C:001D89H - C:001D99H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S152">?PR?_GPIOSETBIT?GPIO</a>) Top=10 Bytes (<a href="#S166">?PR?_GPIO_SETINPUT?GPIO</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -877,7 +867,7 @@
 <li><a href="#S168">?PR?_GPIO_SETOUTPUT?GPIO</a></li>
 </ul>
 
-<h2><a name="S166"></a>?PR?_GPIO_SETINPUT?GPIO (C:001D54H - C:001D71H)</h2>
+<h2><a name="S166"></a>?PR?_GPIO_SETINPUT?GPIO (C:001D49H - C:001D66H)</h2>
 <p><br><b>Maximum Stack:</b> Bottom=6 Bytes (<a href="#S162">?PR?_GPIO_SETPD?GPIO</a>) Top=8 Bytes (<a href="#S64">?PR?KSRAWINITIALIZE?KEYSCAN</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
@@ -918,8 +908,8 @@
 <li><a href="#S69">?PR?KS_UNISTALL?KEYSCAN</a></li>
 </ul>
 
-<h2><a name="S176"></a>?PR?_GPIO_FLIPOUTBIT?GPIO (C:002546H - C:002562H)</h2>
-<p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S155">?PR?_GPIOGETBIT?GPIO</a>) Top=4 Bytes (<a href="#S90">?PR?LED_TIMER500MS?SYS</a>)<p>
+<h2><a name="S176"></a>?PR?_GPIO_FLIPOUTBIT?GPIO (C:0020E3H - C:0020FFH)</h2>
+<p><br><b>Maximum Stack:</b> Bottom=4 Bytes (<a href="#S155">?PR?_GPIOGETBIT?GPIO</a>) Top=4 Bytes (<a href="#S92">?PR?YC_PAIRING_TIMEROUT_100MS?SYS</a>)<p>
 <p><br><b>Calls to:</b></p>
 <ul>
 <li><a href="#S158">?PR?_GPIO_SETOUT?GPIO</a></li>
@@ -928,10 +918,10 @@
 
 <p><br><b>Called from:</b></p>
 <ul>
-<li><a href="#S90">?PR?LED_TIMER500MS?SYS</a></li>
+<li><a href="#S92">?PR?YC_PAIRING_TIMEROUT_100MS?SYS</a></li>
 </ul>
 
-<h2><a name="S179"></a>?PR?GPIO_FILLPD?GPIO (C:002563H - C:002596H)</h2>
+<h2><a name="S179"></a>?PR?GPIO_FILLPD?GPIO (C:002557H - C:00258AH)</h2>
 <p><br><b>Maximum Stack:</b> Top=4 Bytes (<a href="#S69">?PR?KS_UNISTALL?KEYSCAN</a>)<p>
 <p><br><b>Called from:</b></p>
 <ul>
Index: c51/output/FW.MAP
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/output/FW.MAP	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/output/FW.MAP	(working copy)
@@ -1,4 +1,4 @@
-LX51 LINKER/LOCATER V4.41                                                               02/28/2022  19:01:17  PAGE 1
+LX51 LINKER/LOCATER V4.41                                                               03/09/2022  16:40:10  PAGE 1
 
 
 LX51 LINKER/LOCATER V4.41, INVOKED BY:
@@ -84,7 +84,7 @@
 BASE        START       END         USED      MEMORY CLASS
 ==========================================================
 X:000000H   X:004DD0H   X:004F40H   000313H   XDATA
-C:000000H   C:000000H   C:00FFFFH   0024E1H   CODE
+C:000000H   C:000000H   C:00FFFFH   0024D5H   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
@@ -173,40 +173,40 @@
 00181DH   001AC9H   0002ADH   BYTE   UNIT     CODE           ?PR?_KB_MULTIKEY_SETUP?KB_PROCESS
 001ACAH   001B07H   00003EH   BYTE   UNIT     CODE           ?PR?KB_24G_GET_LED_STATUS?KB_PROCESS
 001B08H   001B2CH   000025H   BYTE   UNIT     CODE           ?PR?_KB_COMBINATION_KEY_PRESS?KB_PROCESS
-001B2DH   001C36H   00010AH   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
-001C37H   001C8CH   000056H   BYTE   UNIT     CODE           ?PR?_KEYIN?KEYSCAN
-001C8DH   001D36H   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
-001D37H   001D53H   00001DH   BYTE   UNIT     CODE           ?PR?KSRAWINITIALIZE?KEYSCAN
-001D54H   001D71H   00001EH   BYTE   UNIT     CODE           ?PR?_GPIO_SETINPUT?GPIO
-001D72H   001D82H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPU?GPIO
-001D83H   001D93H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPD?GPIO
-001D94H   001DA4H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETOE?GPIO
-001DA5H   001E05H   000061H   BYTE   UNIT     CODE           ?PR?_GPIOSETBIT?GPIO
-001E06H   001F63H   00015EH   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
-001F64H   001F93H   000030H   BYTE   UNIT     CODE           ?PR?_ARRAY_IS_EMPTY?KEYSCAN
-001F94H   001FB1H   00001EH   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
-001FB2H   001FBAH   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
-001FBBH   001FBCH   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
-001FBDH   001FCCH   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
-001FCDH   001FDFH   000013H   BYTE   UNIT     CODE           ?PR?LED_TIMER500MS?SYS
-001FE0H   002023H   000044H   BYTE   UNIT     CODE           ?PR?YC_CONNECT_TIMEOUT_500MS?SYS
-002024H   002047H   000024H   BYTE   UNIT     CODE           ?PR?YC_PAIRING_TIMEROUT_500MS?SYS
-002048H   002061H   00001AH   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER500MS?SYS
-002062H   002072H   000011H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK_TIMER500MS?ADC
-002073H   002101H   00008FH   BYTE   UNIT     CODE           ?PR?KB_BUTTON_PRESS_TIMER500MS?SYS
-002102H   00220AH   000109H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
-00220BH   0022D5H   0000CBH   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
-0022D6H   002394H   0000BFH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
-002395H   0023EEH   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
-0023EFH   00243EH   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
-00243FH   002444H   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
-002445H   00244BH   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
-00244CH   00248FH   000044H   BYTE   UNIT     CODE           ?PR?_DMEMCPY?UTILITIES
-002490H   0024BCH   00002DH   BYTE   UNIT     CODE           ?PR?_XMEMCLEAR_FF?UTILITIES
-0024BDH   002506H   00004AH   BYTE   UNIT     CODE           ?PR?_COMPARE_STR?UTILITIES
-002507H   002545H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
-002546H   002562H   00001DH   BYTE   UNIT     CODE           ?PR?_GPIO_FLIPOUTBIT?GPIO
-002563H   002596H   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
+001B2DH   001C2BH   0000FFH   BYTE   UNIT     CODE           ?PR?_KEY_FN_FUNCTION?KB_PROCESS
+001C2CH   001C81H   000056H   BYTE   UNIT     CODE           ?PR?_KEYIN?KEYSCAN
+001C82H   001D2BH   0000AAH   BYTE   UNIT     CODE           ?PR?_KEYOUT?KEYSCAN
+001D2CH   001D48H   00001DH   BYTE   UNIT     CODE           ?PR?KSRAWINITIALIZE?KEYSCAN
+001D49H   001D66H   00001EH   BYTE   UNIT     CODE           ?PR?_GPIO_SETINPUT?GPIO
+001D67H   001D77H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPU?GPIO
+001D78H   001D88H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETPD?GPIO
+001D89H   001D99H   000011H   BYTE   UNIT     CODE           ?PR?_GPIO_SETOE?GPIO
+001D9AH   001DFAH   000061H   BYTE   UNIT     CODE           ?PR?_GPIOSETBIT?GPIO
+001DFBH   001F58H   00015EH   BYTE   UNIT     CODE           ?PR?KS_SCANMATRIX?KEYSCAN
+001F59H   001F88H   000030H   BYTE   UNIT     CODE           ?PR?_ARRAY_IS_EMPTY?KEYSCAN
+001F89H   001FA6H   00001EH   BYTE   UNIT     CODE           ?PR?SYSTEM_SOFTWARE_INIT?SYS
+001FA7H   001FAFH   000009H   BYTE   UNIT     CODE           ?PR?SYSTEM_HARDWARE_RESET?SYS
+001FB0H   001FB1H   000002H   BYTE   UNIT     CODE           ?PR?SYSTEM_RESET_CONNECT?SYS
+001FB2H   001FC1H   000010H   BYTE   UNIT     CODE           ?PR?_KB_CB_HID?SYS
+001FC2H   001FC2H   000001H   BYTE   UNIT     CODE           ?PR?LED_TIMER500MS?SYS
+001FC3H   001FD8H   000016H   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER500MS?SYS
+001FD9H   002067H   00008FH   BYTE   UNIT     CODE           ?PR?KB_BUTTON_PRESS_TIMER500MS?SYS
+002068H   0020ABH   000044H   BYTE   UNIT     CODE           ?PR?YC_CONNECT_TIMEOUT_500MS?SYS
+0020ACH   0020E2H   000037H   BYTE   UNIT     CODE           ?PR?YC_PAIRING_TIMEROUT_100MS?SYS
+0020E3H   0020FFH   00001DH   BYTE   UNIT     CODE           ?PR?_GPIO_FLIPOUTBIT?GPIO
+002100H   0021CCH   0000CDH   BYTE   UNIT     CODE           ?PR?KB_CB_TIMER100MS?SYS
+0021CDH   00228BH   0000BFH   BYTE   UNIT     CODE           ?PR?YC_ADC_INIT?ADC
+00228CH   002394H   000109H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK?ADC
+002395H   0023A5H   000011H   BYTE   UNIT     CODE           ?PR?YC_ADC_CHECK_TIMER500MS?ADC
+0023A6H   0023FFH   00005AH   BYTE   UNIT     CODE           ?PR?_BUFSIZE?IPC
+002400H   00244FH   000050H   BYTE   UNIT     CODE           ?PR?_IPCRX?IPC
+002450H   002455H   000006H   BYTE   UNIT     CODE           ?PR?IPC_GETBBDISCONNECTREASON?IPC
+002456H   00245CH   000007H   BYTE   UNIT     CODE           ?PR?YC_ICE_BREAK?UTILITIES
+00245DH   0024A0H   000044H   BYTE   UNIT     CODE           ?PR?_DMEMCPY?UTILITIES
+0024A1H   0024CDH   00002DH   BYTE   UNIT     CODE           ?PR?_XMEMCLEAR_FF?UTILITIES
+0024CEH   002517H   00004AH   BYTE   UNIT     CODE           ?PR?_COMPARE_STR?UTILITIES
+002518H   002556H   00003FH   BYTE   UNIT     CODE           ?PR?_GPIO_CLEARWAKEUP?GPIO
+002557H   00258AH   000034H   BYTE   UNIT     CODE           ?PR?GPIO_FILLPD?GPIO
 
 * * * * * * * * * * *  X D A T A   M E M O R Y  * * * * * * * * * * * * *
 000040H   000045H   000006H   BYTE   OFFS..   XDATA          ?XD?GLOBAL_VARIABLE?28
@@ -377,19 +377,19 @@
       00000000H   NUMBER   ---       ?C?XDATASEG
       010005D7H   CODE     ---       ?C_START
       01000000H   CODE     ---       ?C_STARTUP
-      01001F64H   CODE     ---       _array_is_empty
-      010024BDH   CODE     ---       _compare_str
+      01001F59H   CODE     ---       _array_is_empty
+      010024CEH   CODE     ---       _compare_str
       01000A7AH   CODE     ---       _Delay1ms
-      0100244CH   CODE     ---       _dmemcpy
-      01002507H   CODE     ---       _GPIO_ClearWakeup
-      01002546H   CODE     ---       _GPIO_FlipOutBit
+      0100245DH   CODE     ---       _dmemcpy
+      01002518H   CODE     ---       _GPIO_ClearWakeup
+      010020E3H   CODE     ---       _GPIO_FlipOutBit
       01001381H   CODE     ---       _GPIO_GetInputStatus
-      01001D54H   CODE     ---       _GPIO_SetInput
-      01001D94H   CODE     ---       _GPIO_Setoe
+      01001D49H   CODE     ---       _GPIO_SetInput
+      01001D89H   CODE     ---       _GPIO_Setoe
       010007A3H   CODE     ---       _GPIO_Setout
       010007DBH   CODE     ---       _GPIO_SetOutput
-      01001D83H   CODE     ---       _GPIO_SetPd
-      01001D72H   CODE     ---       _GPIO_SetPu
+      01001D78H   CODE     ---       _GPIO_SetPd
+      01001D67H   CODE     ---       _GPIO_SetPu
       01001215H   CODE     ---       _GPIO_SetWakeup
       01001202H   CODE     ---       _GPIO_SetWakeupByCurrentState
       01000A92H   CODE     ---       _IIC_Read
@@ -408,7 +408,7 @@
       01001802H   CODE     ---       _kb_set_systemkey
       01001B2DH   CODE     ---       _key_fn_function
       01000E1DH   CODE     ---       _xmemclear
-      01002490H   CODE     ---       _xmemclear_ff
+      010024A1H   CODE     ---       _xmemclear_ff
       01000B40H   CODE     ---       _xmemcpy
       0100082DH   CODE     ---       _YC_key_action_handle
       02004DE5H   XDATA    BYTE      action_timeout
@@ -426,12 +426,12 @@
       02004DD3H   XDATA    BYTE      fn_tx_flag
       02004CBFH   XDATA    ---       g_variable
       02004DD0H   XDATA    BYTE      get_24g_led_send
-      01002563H   CODE     ---       GPIO_fillpd
+      01002557H   CODE     ---       GPIO_fillpd
       02004800H   XDATA    ---       hidBuff
       02004DDAH   XDATA    BYTE      iOS_rec_pinCode
       010017C3H   CODE     ---       IPC_AbandonLpm
       0100149BH   CODE     ---       IPC_DealSingleStep
-      0100243FH   CODE     ---       IPC_GetBBDIsconnectReason
+      01002450H   CODE     ---       IPC_GetBBDIsconnectReason
       010017CFH   CODE     ---       IPC_IsTxBuffEmpty
       010012A1H   CODE     ---       IPC_WaitLpm
       02000550H   XDATA    ---       ipcPin
@@ -439,13 +439,13 @@
       02000C4BH   XDATA    ---       ipcReadBuff
       02000BE7H   XDATA    ---       ipcSendBuff
       01001ACAH   CODE     ---       kb_24g_get_led_status
-      01002073H   CODE     ---       kb_button_press_timer500ms
+      01001FD9H   CODE     ---       kb_button_press_timer500ms
       010012AFH   CODE     ---       kb_need_keyscan
       02004DE1H   XDATA    BYTE      key_value_temp
       02004DDDH   XDATA    BYTE      keyCount
       01001562H   CODE     ---       KS_GetCurrentEvt
       01000FC2H   CODE     ---       KS_Initialize
-      01001E06H   CODE     ---       KS_ScanMatrix
+      01001DFBH   CODE     ---       KS_ScanMatrix
       01001169H   CODE     ---       KS_Unistall
       02004213H   XDATA    BYTE      kscurrmult
       02004E3FH   XDATA    ---       ksEvtPool
@@ -457,7 +457,7 @@
       02004DD2H   XDATA    BYTE      le_pin_code_len
       010007C5H   CODE     ---       LED_all_shutdown
       010006F5H   CODE     ---       LED_handle
-      01001FCDH   CODE     ---       LED_timer500ms
+      01001FC2H   CODE     ---       LED_timer500ms
       02004DD5H   XDATA    BYTE      long_press_flag
       02000B7FH   XDATA    BYTE      lpm_flag
       02004C00H   XDATA    ---       m_24g_addr
@@ -500,20 +500,20 @@
       02004DD4H   XDATA    BYTE      switch_role_timer
       02004DE2H   XDATA    BYTE      system_key_press
       010007B5H   CODE     ---       System_long_sleep
-      01001FBBH   CODE     ---       System_Reset_Connect
-      01001F94H   CODE     ---       System_Software_init
-      01002102H   CODE     ---       YC_adc_check
-      01002062H   CODE     ---       YC_adc_check_timer500ms
-      010022D6H   CODE     ---       YC_adc_init
+      01001FB0H   CODE     ---       System_Reset_Connect
+      01001F89H   CODE     ---       System_Software_init
+      0100228CH   CODE     ---       YC_adc_check
+      01002395H   CODE     ---       YC_adc_check_timer500ms
+      010021CDH   CODE     ---       YC_adc_init
       010006E8H   CODE     ---       YC_check_is_connected
       010007F8H   CODE     ---       YC_check_need_reconnected
       01000F87H   CODE     ---       YC_clear_reconnect_flag
-      01001FE0H   CODE     ---       YC_connect_timeout_500ms
+      01002068H   CODE     ---       YC_connect_timeout_500ms
       01000FF2H   CODE     ---       YC_disconnect_all_link
       020000A7H   XDATA    ---       YC_GPIOWakeupH
       020000A3H   XDATA    ---       YC_GPIOWakeupL
-      01002445H   CODE     ---       YC_Ice_break
-      01002024H   CODE     ---       YC_pairing_timerout_500ms
+      01002456H   CODE     ---       YC_Ice_break
+      010020ACH   CODE     ---       YC_pairing_timerout_100ms
       01000FB8H   CODE     ---       YC_start_reconnect
       0100110CH   CODE     ---       YC_System_Main
       0100100AH   CODE     ---       YC_update_eeprom_data
@@ -1001,194 +1001,193 @@
 
       01001B2DH   BLOCK     CODE     ---       LVL=0
       01001B2DH   LINE      ---      ---       #375
-      01001B2FH   LINE      ---      ---       #376
-      01001B2FH   BLOCK     CODE     NEAR LAB  LVL=1
-      01001B2FH   LINE      ---      ---       #377
-      01001B34H   LINE      ---      ---       #379
-      01001B38H   LINE      ---      ---       #380
-      01001B3DH   LINE      ---      ---       #382
-      01001B42H   LINE      ---      ---       #383
-      01001B4CH   LINE      ---      ---       #384
-      01001B4CH   LINE      ---      ---       #386
-      01001B8DH   LINE      ---      ---       #387
-      01001B8DH   LINE      ---      ---       #388
-      01001B8DH   LINE      ---      ---       #389
-      01001B93H   LINE      ---      ---       #390
-      01001B95H   LINE      ---      ---       #391
-      01001B95H   LINE      ---      ---       #392
-      01001B9DH   LINE      ---      ---       #393
-      01001BA2H   LINE      ---      ---       #394
-      01001BA4H   LINE      ---      ---       #395
-      01001BA4H   LINE      ---      ---       #396
-      01001BACH   LINE      ---      ---       #397
-      01001BB1H   LINE      ---      ---       #398
-      01001BB3H   LINE      ---      ---       #399
-      01001BB3H   LINE      ---      ---       #400
-      01001BB9H   LINE      ---      ---       #401
-      01001BBBH   LINE      ---      ---       #402
-      01001BBBH   LINE      ---      ---       #403
-      01001BC1H   LINE      ---      ---       #404
-      01001BC3H   LINE      ---      ---       #405
-      01001BC3H   LINE      ---      ---       #406
-      01001BC9H   LINE      ---      ---       #407
-      01001BCBH   LINE      ---      ---       #408
-      01001BCBH   LINE      ---      ---       #409
-      01001BD1H   LINE      ---      ---       #410
-      01001BD3H   LINE      ---      ---       #412
-      01001BD3H   LINE      ---      ---       #413
-      01001BD9H   LINE      ---      ---       #414
-      01001BDBH   LINE      ---      ---       #415
-      01001BDBH   LINE      ---      ---       #416
-      01001BE1H   LINE      ---      ---       #417
-      01001BE3H   LINE      ---      ---       #418
-      01001BE3H   LINE      ---      ---       #419
-      01001BE9H   LINE      ---      ---       #420
-      01001BEBH   LINE      ---      ---       #421
-      01001BEBH   LINE      ---      ---       #422
-      01001BF1H   LINE      ---      ---       #423
-      01001BF3H   LINE      ---      ---       #424
-      01001BF3H   LINE      ---      ---       #425
-      01001BF9H   LINE      ---      ---       #426
-      01001BFBH   LINE      ---      ---       #427
-      01001BFBH   LINE      ---      ---       #428
-      01001C01H   LINE      ---      ---       #429
-      01001C03H   LINE      ---      ---       #430
-      01001C03H   LINE      ---      ---       #431
-      01001C09H   LINE      ---      ---       #432
-      01001C0BH   LINE      ---      ---       #433
-      01001C0BH   LINE      ---      ---       #434
-      01001C11H   LINE      ---      ---       #435
-      01001C13H   LINE      ---      ---       #436
-      01001C13H   LINE      ---      ---       #437
-      01001C19H   LINE      ---      ---       #438
-      01001C1BH   LINE      ---      ---       #439
-      01001C1BH   LINE      ---      ---       #440
-      01001C21H   LINE      ---      ---       #441
-      01001C23H   LINE      ---      ---       #442
-      01001C23H   LINE      ---      ---       #443
-      01001C29H   LINE      ---      ---       #444
-      01001C2BH   LINE      ---      ---       #445
-      01001C2BH   LINE      ---      ---       #446
-      01001C31H   LINE      ---      ---       #447
-      01001C31H   LINE      ---      ---       #448
-      01001C31H   LINE      ---      ---       #449
-      01001C31H   LINE      ---      ---       #450
-      01001C31H   LINE      ---      ---       #451
-      01001C31H   LINE      ---      ---       #453
-      01001C36H   LINE      ---      ---       #454
+      01001B2DH   LINE      ---      ---       #376
+      01001B2DH   BLOCK     CODE     NEAR LAB  LVL=1
+      01001B2DH   LINE      ---      ---       #377
+      01001B32H   LINE      ---      ---       #379
+      01001B36H   LINE      ---      ---       #380
+      01001B3BH   LINE      ---      ---       #382
+      01001B40H   LINE      ---      ---       #383
+      01001B4AH   LINE      ---      ---       #384
+      01001B4AH   LINE      ---      ---       #386
+      01001B8BH   LINE      ---      ---       #387
+      01001B8BH   LINE      ---      ---       #388
+      01001B8BH   LINE      ---      ---       #389
+      01001B91H   LINE      ---      ---       #390
+      01001B93H   LINE      ---      ---       #391
+      01001B93H   LINE      ---      ---       #392
+      01001B99H   LINE      ---      ---       #393
+      01001B9EH   LINE      ---      ---       #394
+      01001BA0H   LINE      ---      ---       #395
+      01001BA0H   LINE      ---      ---       #396
+      01001BA6H   LINE      ---      ---       #397
+      01001BA8H   LINE      ---      ---       #398
+      01001BA8H   LINE      ---      ---       #399
+      01001BAEH   LINE      ---      ---       #400
+      01001BB0H   LINE      ---      ---       #401
+      01001BB0H   LINE      ---      ---       #402
+      01001BB6H   LINE      ---      ---       #403
+      01001BB8H   LINE      ---      ---       #404
+      01001BB8H   LINE      ---      ---       #405
+      01001BBEH   LINE      ---      ---       #406
+      01001BC0H   LINE      ---      ---       #407
+      01001BC0H   LINE      ---      ---       #408
+      01001BC6H   LINE      ---      ---       #409
+      01001BC8H   LINE      ---      ---       #411
+      01001BC8H   LINE      ---      ---       #412
+      01001BCEH   LINE      ---      ---       #413
+      01001BD0H   LINE      ---      ---       #414
+      01001BD0H   LINE      ---      ---       #415
+      01001BD6H   LINE      ---      ---       #416
+      01001BD8H   LINE      ---      ---       #417
+      01001BD8H   LINE      ---      ---       #418
+      01001BDEH   LINE      ---      ---       #419
+      01001BE0H   LINE      ---      ---       #420
+      01001BE0H   LINE      ---      ---       #421
+      01001BE6H   LINE      ---      ---       #422
+      01001BE8H   LINE      ---      ---       #423
+      01001BE8H   LINE      ---      ---       #424
+      01001BEEH   LINE      ---      ---       #425
+      01001BF0H   LINE      ---      ---       #426
+      01001BF0H   LINE      ---      ---       #427
+      01001BF6H   LINE      ---      ---       #428
+      01001BF8H   LINE      ---      ---       #429
+      01001BF8H   LINE      ---      ---       #430
+      01001BFEH   LINE      ---      ---       #431
+      01001C00H   LINE      ---      ---       #432
+      01001C00H   LINE      ---      ---       #433
+      01001C06H   LINE      ---      ---       #434
+      01001C08H   LINE      ---      ---       #435
+      01001C08H   LINE      ---      ---       #436
+      01001C0EH   LINE      ---      ---       #437
+      01001C10H   LINE      ---      ---       #438
+      01001C10H   LINE      ---      ---       #439
+      01001C16H   LINE      ---      ---       #440
+      01001C18H   LINE      ---      ---       #441
+      01001C18H   LINE      ---      ---       #442
+      01001C1EH   LINE      ---      ---       #443
+      01001C20H   LINE      ---      ---       #444
+      01001C20H   LINE      ---      ---       #445
+      01001C26H   LINE      ---      ---       #446
+      01001C26H   LINE      ---      ---       #447
+      01001C26H   LINE      ---      ---       #448
+      01001C26H   LINE      ---      ---       #449
+      01001C26H   LINE      ---      ---       #450
+      01001C26H   LINE      ---      ---       #452
+      01001C2BH   LINE      ---      ---       #453
       02004E96H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
       0100181DH   BLOCK     CODE     ---       LVL=0
-      0100181DH   LINE      ---      ---       #458
-      01001828H   LINE      ---      ---       #459
+      0100181DH   LINE      ---      ---       #457
+      01001828H   LINE      ---      ---       #458
       01001828H   BLOCK     CODE     NEAR LAB  LVL=1
-      01001828H   LINE      ---      ---       #460
-      0100182BH   LINE      ---      ---       #462
+      01001828H   LINE      ---      ---       #459
+      0100182BH   LINE      ---      ---       #461
+      01001838H   LINE      ---      ---       #462
       01001838H   LINE      ---      ---       #463
-      01001838H   LINE      ---      ---       #464
+      01001863H   LINE      ---      ---       #465
       01001863H   LINE      ---      ---       #466
-      01001863H   LINE      ---      ---       #467
+      0100186AH   LINE      ---      ---       #467
       0100186AH   LINE      ---      ---       #468
-      0100186AH   LINE      ---      ---       #469
-      01001871H   LINE      ---      ---       #470
-      01001873H   LINE      ---      ---       #471
+      01001871H   LINE      ---      ---       #469
+      01001873H   LINE      ---      ---       #470
+      01001877H   LINE      ---      ---       #471
       01001877H   LINE      ---      ---       #472
-      01001877H   LINE      ---      ---       #473
-      0100187EH   LINE      ---      ---       #474
-      01001880H   LINE      ---      ---       #475
+      0100187EH   LINE      ---      ---       #473
+      01001880H   LINE      ---      ---       #474
+      010018A0H   LINE      ---      ---       #475
       010018A0H   LINE      ---      ---       #476
-      010018A0H   LINE      ---      ---       #477
-      010018A5H   LINE      ---      ---       #478
-      010018A7H   LINE      ---      ---       #479
+      010018A5H   LINE      ---      ---       #477
+      010018A7H   LINE      ---      ---       #478
+      010018ABH   LINE      ---      ---       #479
       010018ABH   LINE      ---      ---       #480
-      010018ABH   LINE      ---      ---       #481
-      010018B2H   LINE      ---      ---       #482
-      010018B4H   LINE      ---      ---       #483
+      010018B2H   LINE      ---      ---       #481
+      010018B4H   LINE      ---      ---       #482
+      010018D4H   LINE      ---      ---       #483
       010018D4H   LINE      ---      ---       #484
-      010018D4H   LINE      ---      ---       #485
-      010018D9H   LINE      ---      ---       #486
-      010018DBH   LINE      ---      ---       #487
+      010018D9H   LINE      ---      ---       #485
+      010018DBH   LINE      ---      ---       #486
+      010018DFH   LINE      ---      ---       #487
       010018DFH   LINE      ---      ---       #488
-      010018DFH   LINE      ---      ---       #489
-      010018E6H   LINE      ---      ---       #490
-      010018E8H   LINE      ---      ---       #491
+      010018E6H   LINE      ---      ---       #489
+      010018E8H   LINE      ---      ---       #490
+      01001908H   LINE      ---      ---       #491
       01001908H   LINE      ---      ---       #492
-      01001908H   LINE      ---      ---       #493
-      0100190DH   LINE      ---      ---       #494
-      0100190FH   LINE      ---      ---       #495
+      0100190DH   LINE      ---      ---       #493
+      0100190FH   LINE      ---      ---       #494
+      01001913H   LINE      ---      ---       #495
       01001913H   LINE      ---      ---       #496
-      01001913H   LINE      ---      ---       #497
-      0100191AH   LINE      ---      ---       #498
-      0100191CH   LINE      ---      ---       #499
+      0100191AH   LINE      ---      ---       #497
+      0100191CH   LINE      ---      ---       #498
+      0100193CH   LINE      ---      ---       #499
       0100193CH   LINE      ---      ---       #500
-      0100193CH   LINE      ---      ---       #501
-      01001942H   LINE      ---      ---       #502
-      01001944H   LINE      ---      ---       #503
+      01001942H   LINE      ---      ---       #501
+      01001944H   LINE      ---      ---       #502
+      01001948H   LINE      ---      ---       #503
       01001948H   LINE      ---      ---       #504
-      01001948H   LINE      ---      ---       #505
-      0100194FH   LINE      ---      ---       #506
-      01001951H   LINE      ---      ---       #507
+      0100194FH   LINE      ---      ---       #505
+      01001951H   LINE      ---      ---       #506
+      01001971H   LINE      ---      ---       #507
       01001971H   LINE      ---      ---       #508
-      01001971H   LINE      ---      ---       #509
-      01001977H   LINE      ---      ---       #510
-      01001979H   LINE      ---      ---       #511
+      01001977H   LINE      ---      ---       #509
+      01001979H   LINE      ---      ---       #510
+      0100197DH   LINE      ---      ---       #511
       0100197DH   LINE      ---      ---       #512
-      0100197DH   LINE      ---      ---       #513
-      01001984H   LINE      ---      ---       #514
-      01001986H   LINE      ---      ---       #515
+      01001984H   LINE      ---      ---       #513
+      01001986H   LINE      ---      ---       #514
+      010019A6H   LINE      ---      ---       #515
       010019A6H   LINE      ---      ---       #516
-      010019A6H   LINE      ---      ---       #517
-      010019ADH   LINE      ---      ---       #518
-      010019AFH   LINE      ---      ---       #519
+      010019ADH   LINE      ---      ---       #517
+      010019AFH   LINE      ---      ---       #518
+      010019B3H   LINE      ---      ---       #519
       010019B3H   LINE      ---      ---       #520
-      010019B3H   LINE      ---      ---       #521
-      010019BAH   LINE      ---      ---       #522
-      010019BCH   LINE      ---      ---       #523
+      010019BAH   LINE      ---      ---       #521
+      010019BCH   LINE      ---      ---       #522
+      010019DCH   LINE      ---      ---       #523
       010019DCH   LINE      ---      ---       #524
-      010019DCH   LINE      ---      ---       #525
-      010019E3H   LINE      ---      ---       #526
-      010019E5H   LINE      ---      ---       #527
+      010019E3H   LINE      ---      ---       #525
+      010019E5H   LINE      ---      ---       #526
+      010019E9H   LINE      ---      ---       #527
       010019E9H   LINE      ---      ---       #528
-      010019E9H   LINE      ---      ---       #529
-      010019F0H   LINE      ---      ---       #530
-      010019F2H   LINE      ---      ---       #532
+      010019F0H   LINE      ---      ---       #529
+      010019F2H   LINE      ---      ---       #531
+      01001A12H   LINE      ---      ---       #532
       01001A12H   LINE      ---      ---       #533
-      01001A12H   LINE      ---      ---       #534
-      01001A19H   LINE      ---      ---       #535
-      01001A1BH   LINE      ---      ---       #536
+      01001A19H   LINE      ---      ---       #534
+      01001A1BH   LINE      ---      ---       #535
+      01001A1FH   LINE      ---      ---       #536
       01001A1FH   LINE      ---      ---       #537
-      01001A1FH   LINE      ---      ---       #538
-      01001A26H   LINE      ---      ---       #539
-      01001A28H   LINE      ---      ---       #540
+      01001A26H   LINE      ---      ---       #538
+      01001A28H   LINE      ---      ---       #539
+      01001A48H   LINE      ---      ---       #540
       01001A48H   LINE      ---      ---       #541
-      01001A48H   LINE      ---      ---       #542
-      01001A4DH   LINE      ---      ---       #543
-      01001A4FH   LINE      ---      ---       #544
+      01001A4DH   LINE      ---      ---       #542
+      01001A4FH   LINE      ---      ---       #543
+      01001A53H   LINE      ---      ---       #544
       01001A53H   LINE      ---      ---       #545
-      01001A53H   LINE      ---      ---       #546
-      01001A5AH   LINE      ---      ---       #547
-      01001A5CH   LINE      ---      ---       #549
+      01001A5AH   LINE      ---      ---       #546
+      01001A5CH   LINE      ---      ---       #548
+      01001A7CH   LINE      ---      ---       #549
       01001A7CH   LINE      ---      ---       #550
-      01001A7CH   LINE      ---      ---       #551
-      01001A80H   LINE      ---      ---       #552
-      01001A82H   LINE      ---      ---       #553
+      01001A80H   LINE      ---      ---       #551
+      01001A82H   LINE      ---      ---       #552
+      01001A86H   LINE      ---      ---       #553
       01001A86H   LINE      ---      ---       #554
-      01001A86H   LINE      ---      ---       #555
-      01001A8AH   LINE      ---      ---       #556
-      01001A8CH   LINE      ---      ---       #557
+      01001A8AH   LINE      ---      ---       #555
+      01001A8CH   LINE      ---      ---       #556
+      01001A92H   LINE      ---      ---       #557
       01001A92H   LINE      ---      ---       #558
-      01001A92H   LINE      ---      ---       #559
-      01001A96H   LINE      ---      ---       #560
-      01001A96H   LINE      ---      ---       #563
+      01001A96H   LINE      ---      ---       #559
+      01001A96H   LINE      ---      ---       #562
+      01001A9DH   LINE      ---      ---       #563
       01001A9DH   LINE      ---      ---       #564
-      01001A9DH   LINE      ---      ---       #565
-      01001ABDH   LINE      ---      ---       #566
+      01001ABDH   LINE      ---      ---       #565
+      01001AC1H   LINE      ---      ---       #566
       01001AC1H   LINE      ---      ---       #567
       01001AC1H   LINE      ---      ---       #568
-      01001AC1H   LINE      ---      ---       #569
-      01001AC9H   LINE      ---      ---       #570
+      01001AC9H   LINE      ---      ---       #569
       02004E72H   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1196,8 +1195,8 @@
       ---         MODULE    ---      ---       KEYSCAN
       02004E3FH   PUBLIC    XDATA    ---       ksEvtPool
       01001562H   PUBLIC    CODE     ---       KS_GetCurrentEvt
-      01001F64H   PUBLIC    CODE     ---       _array_is_empty
-      01001E06H   PUBLIC    CODE     ---       KS_ScanMatrix
+      01001F59H   PUBLIC    CODE     ---       _array_is_empty
+      01001DFBH   PUBLIC    CODE     ---       KS_ScanMatrix
       01001169H   PUBLIC    CODE     ---       KS_Unistall
       01000FC2H   PUBLIC    CODE     ---       KS_Initialize
 
@@ -1214,84 +1213,84 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01001C37H   BLOCK     CODE     ---       LVL=0
-      01001C37H   LINE      ---      ---       #35
-      01001C37H   LINE      ---      ---       #36
-      01001C37H   BLOCK     CODE     NEAR LAB  LVL=1
-      01001C37H   LINE      ---      ---       #37
-      01001C39H   LINE      ---      ---       #39
-      01001C45H   LINE      ---      ---       #40
-      01001C45H   LINE      ---      ---       #41
-      01001C5FH   LINE      ---      ---       #43
-      01001C5FH   LINE      ---      ---       #90
-      01001C61H   LINE      ---      ---       #91
-      01001C61H   LINE      ---      ---       #92
-      01001C70H   LINE      ---      ---       #93
-      01001C70H   LINE      ---      ---       #94
-      01001C73H   LINE      ---      ---       #95
-      01001C73H   LINE      ---      ---       #96
-      01001C7AH   LINE      ---      ---       #97
-      01001C86H   LINE      ---      ---       #98
-      01001C87H   LINE      ---      ---       #99
-      01001C87H   LINE      ---      ---       #100
-      01001C8CH   LINE      ---      ---       #101
+      01001C2CH   BLOCK     CODE     ---       LVL=0
+      01001C2CH   LINE      ---      ---       #35
+      01001C2CH   LINE      ---      ---       #36
+      01001C2CH   BLOCK     CODE     NEAR LAB  LVL=1
+      01001C2CH   LINE      ---      ---       #37
+      01001C2EH   LINE      ---      ---       #39
+      01001C3AH   LINE      ---      ---       #40
+      01001C3AH   LINE      ---      ---       #41
+      01001C54H   LINE      ---      ---       #43
+      01001C54H   LINE      ---      ---       #90
+      01001C56H   LINE      ---      ---       #91
+      01001C56H   LINE      ---      ---       #92
+      01001C65H   LINE      ---      ---       #93
+      01001C65H   LINE      ---      ---       #94
+      01001C68H   LINE      ---      ---       #95
+      01001C68H   LINE      ---      ---       #96
+      01001C6FH   LINE      ---      ---       #97
+      01001C7BH   LINE      ---      ---       #98
+      01001C7CH   LINE      ---      ---       #99
+      01001C7CH   LINE      ---      ---       #100
+      01001C81H   LINE      ---      ---       #101
       00000006H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01001C8DH   BLOCK     CODE     ---       LVL=0
-      01001C8DH   LINE      ---      ---       #103
-      01001C8DH   LINE      ---      ---       #104
-      01001C8DH   BLOCK     CODE     NEAR LAB  LVL=1
-      01001C8DH   LINE      ---      ---       #105
-      01001C8FH   LINE      ---      ---       #106
-      01001C90H   LINE      ---      ---       #108
-      01001C9EH   LINE      ---      ---       #109
-      01001C9EH   LINE      ---      ---       #110
-      01001CA5H   LINE      ---      ---       #111
-      01001CA5H   LINE      ---      ---       #112
-      01001CA8H   LINE      ---      ---       #113
-      01001CA8H   LINE      ---      ---       #114
-      01001CAAH   LINE      ---      ---       #116
-      01001CB0H   LINE      ---      ---       #118
-      01001CBCH   LINE      ---      ---       #119
-      01001CBCH   LINE      ---      ---       #120
-      01001CD7H   LINE      ---      ---       #122
-      01001CD7H   LINE      ---      ---       #166
-      01001CD9H   LINE      ---      ---       #167
-      01001CD9H   LINE      ---      ---       #168
-      01001CDCH   LINE      ---      ---       #169
-      01001CDCH   LINE      ---      ---       #170
-      01001CEAH   LINE      ---      ---       #171
-      01001CEEH   LINE      ---      ---       #172
-      01001CF9H   LINE      ---      ---       #173
-      01001CF9H   LINE      ---      ---       #174
-      01001CFBH   LINE      ---      ---       #175
-      01001CFBH   LINE      ---      ---       #176
-      01001CFDH   LINE      ---      ---       #178
-      01001CFDH   LINE      ---      ---       #179
-      01001D15H   LINE      ---      ---       #180
-      01001D22H   LINE      ---      ---       #181
-      01001D22H   LINE      ---      ---       #182
-      01001D26H   LINE      ---      ---       #183
-      01001D31H   LINE      ---      ---       #184
-      01001D31H   LINE      ---      ---       #185
-      01001D31H   LINE      ---      ---       #186
-      01001D36H   LINE      ---      ---       #187
+      01001C82H   BLOCK     CODE     ---       LVL=0
+      01001C82H   LINE      ---      ---       #103
+      01001C82H   LINE      ---      ---       #104
+      01001C82H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001C82H   LINE      ---      ---       #105
+      01001C84H   LINE      ---      ---       #106
+      01001C85H   LINE      ---      ---       #108
+      01001C93H   LINE      ---      ---       #109
+      01001C93H   LINE      ---      ---       #110
+      01001C9AH   LINE      ---      ---       #111
+      01001C9AH   LINE      ---      ---       #112
+      01001C9DH   LINE      ---      ---       #113
+      01001C9DH   LINE      ---      ---       #114
+      01001C9FH   LINE      ---      ---       #116
+      01001CA5H   LINE      ---      ---       #118
+      01001CB1H   LINE      ---      ---       #119
+      01001CB1H   LINE      ---      ---       #120
+      01001CCCH   LINE      ---      ---       #122
+      01001CCCH   LINE      ---      ---       #166
+      01001CCEH   LINE      ---      ---       #167
+      01001CCEH   LINE      ---      ---       #168
+      01001CD1H   LINE      ---      ---       #169
+      01001CD1H   LINE      ---      ---       #170
+      01001CDFH   LINE      ---      ---       #171
+      01001CE3H   LINE      ---      ---       #172
+      01001CEEH   LINE      ---      ---       #173
+      01001CEEH   LINE      ---      ---       #174
+      01001CF0H   LINE      ---      ---       #175
+      01001CF0H   LINE      ---      ---       #176
+      01001CF2H   LINE      ---      ---       #178
+      01001CF2H   LINE      ---      ---       #179
+      01001D0AH   LINE      ---      ---       #180
+      01001D17H   LINE      ---      ---       #181
+      01001D17H   LINE      ---      ---       #182
+      01001D1BH   LINE      ---      ---       #183
+      01001D26H   LINE      ---      ---       #184
+      01001D26H   LINE      ---      ---       #185
+      01001D26H   LINE      ---      ---       #186
+      01001D2BH   LINE      ---      ---       #187
       00000006H   SYMBOL    DATA     VOID      i
       00000005H   SYMBOL    DATA     VOID      found
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01001D37H   BLOCK     CODE     ---       LVL=0
-      01001D37H   LINE      ---      ---       #189
-      01001D37H   LINE      ---      ---       #190
-      01001D37H   BLOCK     CODE     NEAR LAB  LVL=1
-      01001D37H   LINE      ---      ---       #191
-      01001D3CH   LINE      ---      ---       #193
-      01001D47H   LINE      ---      ---       #194
-      01001D4BH   LINE      ---      ---       #195
-      01001D53H   LINE      ---      ---       #196
+      01001D2CH   BLOCK     CODE     ---       LVL=0
+      01001D2CH   LINE      ---      ---       #189
+      01001D2CH   LINE      ---      ---       #190
+      01001D2CH   BLOCK     CODE     NEAR LAB  LVL=1
+      01001D2CH   LINE      ---      ---       #191
+      01001D31H   LINE      ---      ---       #193
+      01001D3CH   LINE      ---      ---       #194
+      01001D40H   LINE      ---      ---       #195
+      01001D48H   LINE      ---      ---       #196
       02004E97H   SYMBOL    XDATA    VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1360,32 +1359,32 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01001E06H   BLOCK     CODE     ---       LVL=0
-      01001E06H   LINE      ---      ---       #260
-      01001E06H   LINE      ---      ---       #261
-      01001E06H   BLOCK     CODE     NEAR LAB  LVL=1
-      01001E06H   LINE      ---      ---       #262
-      01001E08H   LINE      ---      ---       #263
-      01001E0CH   LINE      ---      ---       #264
-      01001E0DH   LINE      ---      ---       #265
-      01001E0EH   LINE      ---      ---       #266
-      01001E10H   LINE      ---      ---       #267
-      01001E12H   LINE      ---      ---       #268
-      01001E19H   LINE      ---      ---       #269
-      01001E22H   LINE      ---      ---       #270
-      01001E32H   LINE      ---      ---       #271
-      01001E92H   LINE      ---      ---       #272
-      01001E95H   LINE      ---      ---       #274
-      01001E9EH   LINE      ---      ---       #275
-      01001EA7H   LINE      ---      ---       #276
-      01001EB7H   LINE      ---      ---       #277
-      01001F17H   LINE      ---      ---       #278
-      01001F1AH   LINE      ---      ---       #280
-      01001F23H   LINE      ---      ---       #281
-      01001F3DH   LINE      ---      ---       #282
-      01001F60H   LINE      ---      ---       #283
-      01001F60H   LINE      ---      ---       #284
-      01001F63H   LINE      ---      ---       #285
+      01001DFBH   BLOCK     CODE     ---       LVL=0
+      01001DFBH   LINE      ---      ---       #260
+      01001DFBH   LINE      ---      ---       #261
+      01001DFBH   BLOCK     CODE     NEAR LAB  LVL=1
+      01001DFBH   LINE      ---      ---       #262
+      01001DFDH   LINE      ---      ---       #263
+      01001E01H   LINE      ---      ---       #264
+      01001E02H   LINE      ---      ---       #265
+      01001E03H   LINE      ---      ---       #266
+      01001E05H   LINE      ---      ---       #267
+      01001E07H   LINE      ---      ---       #268
+      01001E0EH   LINE      ---      ---       #269
+      01001E17H   LINE      ---      ---       #270
+      01001E27H   LINE      ---      ---       #271
+      01001E87H   LINE      ---      ---       #272
+      01001E8AH   LINE      ---      ---       #274
+      01001E93H   LINE      ---      ---       #275
+      01001E9CH   LINE      ---      ---       #276
+      01001EACH   LINE      ---      ---       #277
+      01001F0CH   LINE      ---      ---       #278
+      01001F0FH   LINE      ---      ---       #280
+      01001F18H   LINE      ---      ---       #281
+      01001F32H   LINE      ---      ---       #282
+      01001F55H   LINE      ---      ---       #283
+      01001F55H   LINE      ---      ---       #284
+      01001F58H   LINE      ---      ---       #285
       00000007H   SYMBOL    DATA     VOID      i
       02004E7EH   SYMBOL    XDATA    VOID      j
       00000006H   SYMBOL    DATA     VOID      tgroup
@@ -1395,17 +1394,17 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01001F64H   BLOCK     CODE     ---       LVL=0
-      01001F64H   LINE      ---      ---       #287
-      01001F6FH   LINE      ---      ---       #288
-      01001F6FH   BLOCK     CODE     NEAR LAB  LVL=1
-      01001F6FH   LINE      ---      ---       #290
-      01001F76H   LINE      ---      ---       #291
-      01001F76H   LINE      ---      ---       #292
-      01001F8BH   LINE      ---      ---       #293
-      01001F8EH   LINE      ---      ---       #294
-      01001F91H   LINE      ---      ---       #295
-      01001F93H   LINE      ---      ---       #296
+      01001F59H   BLOCK     CODE     ---       LVL=0
+      01001F59H   LINE      ---      ---       #287
+      01001F64H   LINE      ---      ---       #288
+      01001F64H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001F64H   LINE      ---      ---       #290
+      01001F6BH   LINE      ---      ---       #291
+      01001F6BH   LINE      ---      ---       #292
+      01001F80H   LINE      ---      ---       #293
+      01001F83H   LINE      ---      ---       #294
+      01001F86H   LINE      ---      ---       #295
+      01001F88H   LINE      ---      ---       #296
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1598,13 +1597,13 @@
 
       ---         MODULE    ---      ---       SYS
       0100110CH   PUBLIC    CODE     ---       YC_System_Main
-      01002073H   PUBLIC    CODE     ---       kb_button_press_timer500ms
-      01002024H   PUBLIC    CODE     ---       YC_pairing_timerout_500ms
-      01001FE0H   PUBLIC    CODE     ---       YC_connect_timeout_500ms
-      01001FCDH   PUBLIC    CODE     ---       LED_timer500ms
-      01001FBBH   PUBLIC    CODE     ---       System_Reset_Connect
+      01001FD9H   PUBLIC    CODE     ---       kb_button_press_timer500ms
+      010020ACH   PUBLIC    CODE     ---       YC_pairing_timerout_100ms
+      01002068H   PUBLIC    CODE     ---       YC_connect_timeout_500ms
+      01001FC2H   PUBLIC    CODE     ---       LED_timer500ms
+      01001FB0H   PUBLIC    CODE     ---       System_Reset_Connect
       010007B5H   PUBLIC    CODE     ---       System_long_sleep
-      01001F94H   PUBLIC    CODE     ---       System_Software_init
+      01001F89H   PUBLIC    CODE     ---       System_Software_init
 
       01000E49H   BLOCK     CODE     ---       LVL=0
       01000E49H   LINE      ---      ---       #11
@@ -1641,23 +1640,23 @@
       01000FEFH   LINE      ---      ---       #44
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01001F94H   BLOCK     CODE     ---       LVL=0
-      01001F94H   LINE      ---      ---       #48
-      01001F94H   LINE      ---      ---       #49
-      01001F94H   LINE      ---      ---       #50
-      01001F97H   LINE      ---      ---       #51
-      01001F9AH   LINE      ---      ---       #52
-      01001FA0H   LINE      ---      ---       #53
-      01001FA6H   LINE      ---      ---       #54
-      01001FABH   LINE      ---      ---       #55
-      01001FB1H   LINE      ---      ---       #56
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01001FB2H   BLOCK     CODE     ---       LVL=0
-      01001FB2H   LINE      ---      ---       #58
-      01001FB2H   LINE      ---      ---       #59
-      01001FB2H   LINE      ---      ---       #60
-      01001FB8H   LINE      ---      ---       #61
+      01001F89H   BLOCK     CODE     ---       LVL=0
+      01001F89H   LINE      ---      ---       #48
+      01001F89H   LINE      ---      ---       #49
+      01001F89H   LINE      ---      ---       #50
+      01001F8CH   LINE      ---      ---       #51
+      01001F8FH   LINE      ---      ---       #52
+      01001F95H   LINE      ---      ---       #53
+      01001F9BH   LINE      ---      ---       #54
+      01001FA0H   LINE      ---      ---       #55
+      01001FA6H   LINE      ---      ---       #56
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01001FA7H   BLOCK     CODE     ---       LVL=0
+      01001FA7H   LINE      ---      ---       #58
+      01001FA7H   LINE      ---      ---       #59
+      01001FA7H   LINE      ---      ---       #60
+      01001FADH   LINE      ---      ---       #61
       ---         BLOCKEND  ---      ---       LVL=0
 
       010007B5H   BLOCK     CODE     ---       LVL=0
@@ -1670,19 +1669,19 @@
       010007C3H   LINE      ---      ---       #70
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01001FBBH   BLOCK     CODE     ---       LVL=0
-      01001FBBH   LINE      ---      ---       #74
-      01001FBBH   LINE      ---      ---       #75
-      01001FBBH   LINE      ---      ---       #76
+      01001FB0H   BLOCK     CODE     ---       LVL=0
+      01001FB0H   LINE      ---      ---       #74
+      01001FB0H   LINE      ---      ---       #75
+      01001FB0H   LINE      ---      ---       #76
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01001FBDH   BLOCK     CODE     ---       LVL=0
-      01001FBDH   LINE      ---      ---       #84
-      01001FC2H   BLOCK     CODE     NEAR LAB  LVL=1
-      01001FC2H   LINE      ---      ---       #86
-      01001FCCH   LINE      ---      ---       #88
-      01001FCCH   LINE      ---      ---       #90
-      01001FCCH   LINE      ---      ---       #91
+      01001FB2H   BLOCK     CODE     ---       LVL=0
+      01001FB2H   LINE      ---      ---       #84
+      01001FB7H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001FB7H   LINE      ---      ---       #86
+      01001FC1H   LINE      ---      ---       #88
+      01001FC1H   LINE      ---      ---       #90
+      01001FC1H   LINE      ---      ---       #91
       02004E93H   SYMBOL    XDATA    VOID      temp
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -1759,303 +1758,300 @@
       01000A79H   LINE      ---      ---       #174
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01001FCDH   BLOCK     CODE     ---       LVL=0
-      01001FCDH   LINE      ---      ---       #177
-      01001FCDH   LINE      ---      ---       #178
-      01001FCDH   LINE      ---      ---       #179
-      01001FD4H   LINE      ---      ---       #181
-      01001FDAH   LINE      ---      ---       #182
-      01001FDAH   LINE      ---      ---       #183
-      01001FDFH   LINE      ---      ---       #184
-      01001FDFH   LINE      ---      ---       #186
-      01001FDFH   LINE      ---      ---       #188
-      01001FDFH   LINE      ---      ---       #189
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01001FE0H   BLOCK     CODE     ---       LVL=0
-      01001FE0H   LINE      ---      ---       #191
-      01001FE0H   LINE      ---      ---       #192
-      01001FE0H   LINE      ---      ---       #195
-      01001FE7H   LINE      ---      ---       #196
-      01001FE7H   LINE      ---      ---       #197
-      01001FF6H   LINE      ---      ---       #198
-      01001FF9H   LINE      ---      ---       #208
-      01001FF9H   LINE      ---      ---       #209
-      01002000H   LINE      ---      ---       #210
-      01002000H   LINE      ---      ---       #211
-      0100200CH   LINE      ---      ---       #212
-      0100200CH   LINE      ---      ---       #213
-      01002011H   LINE      ---      ---       #214
-      01002014H   LINE      ---      ---       #215
-      01002014H   LINE      ---      ---       #216
-      01002014H   LINE      ---      ---       #218
-      01002014H   LINE      ---      ---       #219
-      01002020H   LINE      ---      ---       #220
-      01002020H   LINE      ---      ---       #221
-      01002023H   LINE      ---      ---       #222
-      01002023H   LINE      ---      ---       #223
-      01002023H   LINE      ---      ---       #224
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01002024H   BLOCK     CODE     ---       LVL=0
-      01002024H   LINE      ---      ---       #228
-      01002024H   LINE      ---      ---       #229
-      01002024H   LINE      ---      ---       #231
-      0100202AH   LINE      ---      ---       #232
-      0100202AH   LINE      ---      ---       #233
-      01002031H   LINE      ---      ---       #234
-      01002037H   LINE      ---      ---       #235
-      0100203AH   LINE      ---      ---       #236
-      0100203AH   LINE      ---      ---       #237
-      0100203FH   LINE      ---      ---       #238
-      01002044H   LINE      ---      ---       #239
-      01002047H   LINE      ---      ---       #240
-      01002047H   LINE      ---      ---       #241
-      01002047H   LINE      ---      ---       #242
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01002073H   BLOCK     CODE     ---       LVL=0
-      01002073H   LINE      ---      ---       #244
-      01002073H   LINE      ---      ---       #245
-      01002073H   LINE      ---      ---       #248
-      0100207AH   LINE      ---      ---       #249
-      0100207AH   LINE      ---      ---       #250
-      01002083H   LINE      ---      ---       #251
-      01002086H   LINE      ---      ---       #252
-      0100208EH   LINE      ---      ---       #253
-      0100208EH   LINE      ---      ---       #254
-      01002094H   LINE      ---      ---       #255
-      0100209AH   LINE      ---      ---       #256
-      0100209AH   LINE      ---      ---       #257
-      0100209FH   LINE      ---      ---       #258
-      010020A1H   LINE      ---      ---       #259
-      010020A8H   LINE      ---      ---       #260
-      010020A8H   LINE      ---      ---       #261
-      010020AEH   LINE      ---      ---       #262
-      010020B3H   LINE      ---      ---       #263
-      010020B6H   LINE      ---      ---       #264
-      010020B6H   LINE      ---      ---       #265
-      010020B6H   LINE      ---      ---       #266
-      010020B8H   LINE      ---      ---       #268
-      010020B8H   LINE      ---      ---       #269
-      010020BDH   LINE      ---      ---       #270
-      010020C1H   LINE      ---      ---       #271
-      010020C5H   LINE      ---      ---       #272
-      010020C5H   LINE      ---      ---       #274
-      010020CCH   LINE      ---      ---       #275
-      010020CCH   LINE      ---      ---       #276
-      010020D2H   LINE      ---      ---       #277
-      010020DBH   LINE      ---      ---       #278
-      010020DEH   LINE      ---      ---       #279
-      010020E5H   LINE      ---      ---       #280
-      010020E5H   LINE      ---      ---       #281
-      010020EFH   LINE      ---      ---       #282
-      010020EFH   LINE      ---      ---       #283
-      010020F2H   LINE      ---      ---       #284
-      010020F7H   LINE      ---      ---       #285
-      010020FCH   LINE      ---      ---       #286
-      010020FCH   LINE      ---      ---       #287
-      010020FCH   LINE      ---      ---       #288
-      010020FCH   LINE      ---      ---       #290
-      01002101H   LINE      ---      ---       #292
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01002048H   BLOCK     CODE     ---       LVL=0
-      01002048H   LINE      ---      ---       #296
-      01002048H   LINE      ---      ---       #297
-      01002048H   LINE      ---      ---       #298
-      0100204BH   LINE      ---      ---       #300
-      01002059H   LINE      ---      ---       #302
-      0100205BH   LINE      ---      ---       #303
-      0100205EH   LINE      ---      ---       #304
-      01002060H   LINE      ---      ---       #305
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      0100220BH   BLOCK     CODE     ---       LVL=0
-      0100220BH   LINE      ---      ---       #311
-      0100220BH   LINE      ---      ---       #312
-      0100220BH   LINE      ---      ---       #314
-      01002211H   LINE      ---      ---       #315
-      01002211H   LINE      ---      ---       #316
-      01002213H   LINE      ---      ---       #317
-      01002213H   LINE      ---      ---       #319
-      01002219H   LINE      ---      ---       #320
-      0100221BH   LINE      ---      ---       #323
-      01002221H   LINE      ---      ---       #324
-      01002221H   LINE      ---      ---       #325
-      01002223H   LINE      ---      ---       #326
-      01002226H   LINE      ---      ---       #327
-      0100222CH   LINE      ---      ---       #328
-      0100222CH   LINE      ---      ---       #330
-      01002232H   LINE      ---      ---       #331
-      01002232H   LINE      ---      ---       #332
-      01002238H   LINE      ---      ---       #333
-      01002238H   LINE      ---      ---       #334
-      0100223EH   LINE      ---      ---       #336
-      0100223EH   LINE      ---      ---       #338
-      01002244H   LINE      ---      ---       #339
-      0100224BH   LINE      ---      ---       #340
-      01002251H   LINE      ---      ---       #341
-      01002251H   LINE      ---      ---       #342
-      01002258H   LINE      ---      ---       #343
-      01002258H   LINE      ---      ---       #344
-      0100225AH   LINE      ---      ---       #346
-      01002260H   LINE      ---      ---       #347
-      01002260H   LINE      ---      ---       #348
-      01002266H   LINE      ---      ---       #349
-      01002266H   LINE      ---      ---       #350
-      01002268H   LINE      ---      ---       #351
-      0100226CH   LINE      ---      ---       #352
-      0100226CH   LINE      ---      ---       #353
-      01002273H   LINE      ---      ---       #354
-      01002275H   LINE      ---      ---       #356
-      0100227CH   LINE      ---      ---       #357
-      01002282H   LINE      ---      ---       #358
-      01002285H   LINE      ---      ---       #359
-      01002285H   LINE      ---      ---       #360
-      01002285H   LINE      ---      ---       #363
-      0100228BH   LINE      ---      ---       #364
-      0100228BH   LINE      ---      ---       #365
-      01002293H   LINE      ---      ---       #366
-      01002293H   LINE      ---      ---       #367
-      01002299H   LINE      ---      ---       #368
-      0100229DH   LINE      ---      ---       #370
-      010022A3H   LINE      ---      ---       #371
-      010022A3H   LINE      ---      ---       #372
-      010022AEH   LINE      ---      ---       #373
-      010022B0H   LINE      ---      ---       #374
-      010022B6H   LINE      ---      ---       #375
-      010022B6H   LINE      ---      ---       #377
-      010022C1H   LINE      ---      ---       #378
-      010022C1H   LINE      ---      ---       #379
-      010022C1H   LINE      ---      ---       #380
-      010022C1H   LINE      ---      ---       #382
-      010022C7H   LINE      ---      ---       #383
-      010022C7H   LINE      ---      ---       #384
-      010022CAH   LINE      ---      ---       #385
-      010022D3H   LINE      ---      ---       #386
-      010022D3H   LINE      ---      ---       #387
-      010022D5H   LINE      ---      ---       #388
-      010022D5H   LINE      ---      ---       #389
-      010022D5H   LINE      ---      ---       #390
+      01001FC2H   BLOCK     CODE     ---       LVL=0
+      01001FC2H   LINE      ---      ---       #177
+      01001FC2H   LINE      ---      ---       #178
+      01001FC2H   LINE      ---      ---       #180
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01002068H   BLOCK     CODE     ---       LVL=0
+      01002068H   LINE      ---      ---       #182
+      01002068H   LINE      ---      ---       #183
+      01002068H   LINE      ---      ---       #186
+      0100206FH   LINE      ---      ---       #187
+      0100206FH   LINE      ---      ---       #188
+      0100207EH   LINE      ---      ---       #189
+      01002081H   LINE      ---      ---       #199
+      01002081H   LINE      ---      ---       #200
+      01002088H   LINE      ---      ---       #201
+      01002088H   LINE      ---      ---       #202
+      01002094H   LINE      ---      ---       #203
+      01002094H   LINE      ---      ---       #204
+      01002099H   LINE      ---      ---       #205
+      0100209CH   LINE      ---      ---       #206
+      0100209CH   LINE      ---      ---       #207
+      0100209CH   LINE      ---      ---       #209
+      0100209CH   LINE      ---      ---       #210
+      010020A8H   LINE      ---      ---       #211
+      010020A8H   LINE      ---      ---       #212
+      010020ABH   LINE      ---      ---       #213
+      010020ABH   LINE      ---      ---       #214
+      010020ABH   LINE      ---      ---       #215
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      010020ACH   BLOCK     CODE     ---       LVL=0
+      010020ACH   LINE      ---      ---       #219
+      010020ACH   LINE      ---      ---       #220
+      010020ACH   LINE      ---      ---       #222
+      010020B4H   LINE      ---      ---       #225
+      010020BAH   LINE      ---      ---       #226
+      010020BAH   LINE      ---      ---       #227
+      010020C1H   LINE      ---      ---       #228
+      010020C7H   LINE      ---      ---       #230
+      010020CBH   LINE      ---      ---       #231
+      010020CBH   LINE      ---      ---       #232
+      010020CFH   LINE      ---      ---       #233
+      010020CFH   LINE      ---      ---       #234
+      010020D5H   LINE      ---      ---       #235
+      010020D5H   LINE      ---      ---       #236
+      010020DAH   LINE      ---      ---       #237
+      010020DFH   LINE      ---      ---       #238
+      010020E2H   LINE      ---      ---       #239
+      010020E2H   LINE      ---      ---       #240
+      010020E2H   LINE      ---      ---       #241
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01001FD9H   BLOCK     CODE     ---       LVL=0
+      01001FD9H   LINE      ---      ---       #243
+      01001FD9H   LINE      ---      ---       #244
+      01001FD9H   LINE      ---      ---       #247
+      01001FE0H   LINE      ---      ---       #248
+      01001FE0H   LINE      ---      ---       #249
+      01001FE9H   LINE      ---      ---       #250
+      01001FECH   LINE      ---      ---       #251
+      01001FF4H   LINE      ---      ---       #252
+      01001FF4H   LINE      ---      ---       #253
+      01001FFAH   LINE      ---      ---       #254
+      01002000H   LINE      ---      ---       #255
+      01002000H   LINE      ---      ---       #256
+      01002005H   LINE      ---      ---       #257
+      01002007H   LINE      ---      ---       #258
+      0100200EH   LINE      ---      ---       #259
+      0100200EH   LINE      ---      ---       #260
+      01002014H   LINE      ---      ---       #261
+      01002019H   LINE      ---      ---       #262
+      0100201CH   LINE      ---      ---       #263
+      0100201CH   LINE      ---      ---       #264
+      0100201CH   LINE      ---      ---       #265
+      0100201EH   LINE      ---      ---       #267
+      0100201EH   LINE      ---      ---       #268
+      01002023H   LINE      ---      ---       #269
+      01002027H   LINE      ---      ---       #270
+      0100202BH   LINE      ---      ---       #271
+      0100202BH   LINE      ---      ---       #273
+      01002032H   LINE      ---      ---       #274
+      01002032H   LINE      ---      ---       #275
+      01002038H   LINE      ---      ---       #276
+      01002041H   LINE      ---      ---       #277
+      01002044H   LINE      ---      ---       #278
+      0100204BH   LINE      ---      ---       #279
+      0100204BH   LINE      ---      ---       #280
+      01002055H   LINE      ---      ---       #281
+      01002055H   LINE      ---      ---       #282
+      01002058H   LINE      ---      ---       #283
+      0100205DH   LINE      ---      ---       #284
+      01002062H   LINE      ---      ---       #285
+      01002062H   LINE      ---      ---       #286
+      01002062H   LINE      ---      ---       #287
+      01002062H   LINE      ---      ---       #289
+      01002067H   LINE      ---      ---       #291
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01001FC3H   BLOCK     CODE     ---       LVL=0
+      01001FC3H   LINE      ---      ---       #295
+      01001FC3H   LINE      ---      ---       #296
+      01001FC3H   LINE      ---      ---       #297
+      01001FC5H   LINE      ---      ---       #299
+      01001FD3H   LINE      ---      ---       #301
+      01001FD6H   LINE      ---      ---       #302
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01002100H   BLOCK     CODE     ---       LVL=0
+      01002100H   LINE      ---      ---       #310
+      01002100H   LINE      ---      ---       #311
+      01002100H   LINE      ---      ---       #313
+      01002102H   LINE      ---      ---       #316
+      01002108H   LINE      ---      ---       #317
+      01002108H   LINE      ---      ---       #318
+      0100210AH   LINE      ---      ---       #319
+      0100210AH   LINE      ---      ---       #321
+      01002110H   LINE      ---      ---       #322
+      01002112H   LINE      ---      ---       #325
+      01002118H   LINE      ---      ---       #326
+      01002118H   LINE      ---      ---       #327
+      0100211AH   LINE      ---      ---       #328
+      0100211DH   LINE      ---      ---       #329
+      01002123H   LINE      ---      ---       #330
+      01002123H   LINE      ---      ---       #332
+      01002129H   LINE      ---      ---       #333
+      01002129H   LINE      ---      ---       #334
+      0100212FH   LINE      ---      ---       #335
+      0100212FH   LINE      ---      ---       #336
+      01002135H   LINE      ---      ---       #338
+      01002135H   LINE      ---      ---       #340
+      0100213BH   LINE      ---      ---       #341
+      01002142H   LINE      ---      ---       #342
+      01002148H   LINE      ---      ---       #343
+      01002148H   LINE      ---      ---       #344
+      0100214FH   LINE      ---      ---       #345
+      0100214FH   LINE      ---      ---       #346
+      01002151H   LINE      ---      ---       #348
+      01002157H   LINE      ---      ---       #349
+      01002157H   LINE      ---      ---       #350
+      0100215DH   LINE      ---      ---       #351
+      0100215DH   LINE      ---      ---       #352
+      0100215FH   LINE      ---      ---       #353
+      01002163H   LINE      ---      ---       #354
+      01002163H   LINE      ---      ---       #355
+      0100216AH   LINE      ---      ---       #356
+      0100216CH   LINE      ---      ---       #358
+      01002173H   LINE      ---      ---       #359
+      01002179H   LINE      ---      ---       #360
+      0100217CH   LINE      ---      ---       #361
+      0100217CH   LINE      ---      ---       #362
+      0100217CH   LINE      ---      ---       #365
+      01002182H   LINE      ---      ---       #366
+      01002182H   LINE      ---      ---       #367
+      0100218AH   LINE      ---      ---       #368
+      0100218AH   LINE      ---      ---       #369
+      01002190H   LINE      ---      ---       #370
+      01002194H   LINE      ---      ---       #372
+      0100219AH   LINE      ---      ---       #373
+      0100219AH   LINE      ---      ---       #374
+      010021A5H   LINE      ---      ---       #375
+      010021A7H   LINE      ---      ---       #376
+      010021ADH   LINE      ---      ---       #377
+      010021ADH   LINE      ---      ---       #379
+      010021B8H   LINE      ---      ---       #380
+      010021B8H   LINE      ---      ---       #381
+      010021B8H   LINE      ---      ---       #382
+      010021B8H   LINE      ---      ---       #384
+      010021BEH   LINE      ---      ---       #385
+      010021BEH   LINE      ---      ---       #386
+      010021C1H   LINE      ---      ---       #387
+      010021CAH   LINE      ---      ---       #388
+      010021CAH   LINE      ---      ---       #389
+      010021CCH   LINE      ---      ---       #390
+      010021CCH   LINE      ---      ---       #391
+      010021CCH   LINE      ---      ---       #392
       ---         BLOCKEND  ---      ---       LVL=0
 
       0100136EH   BLOCK     CODE     ---       LVL=0
-      0100136EH   LINE      ---      ---       #404
-      0100136EH   LINE      ---      ---       #405
       0100136EH   LINE      ---      ---       #406
+      0100136EH   LINE      ---      ---       #407
+      0100136EH   LINE      ---      ---       #408
       ---         BLOCKEND  ---      ---       LVL=0
 
       0100110CH   BLOCK     CODE     ---       LVL=0
-      0100110CH   LINE      ---      ---       #411
-      0100110CH   LINE      ---      ---       #412
       0100110CH   LINE      ---      ---       #413
-      0100110EH   LINE      ---      ---       #414
-      0100110EH   LINE      ---      ---       #415
-      01001110H   LINE      ---      ---       #416
-      01001112H   LINE      ---      ---       #417
-      01001114H   LINE      ---      ---       #418
-      01001117H   LINE      ---      ---       #420
-      01001122H   LINE      ---      ---       #421
-      01001122H   LINE      ---      ---       #422
-      01001124H   LINE      ---      ---       #424
-      01001127H   LINE      ---      ---       #425
-      01001129H   LINE      ---      ---       #426
-      0100112BH   LINE      ---      ---       #427
+      0100110CH   LINE      ---      ---       #414
+      0100110CH   LINE      ---      ---       #415
+      0100110EH   LINE      ---      ---       #416
+      0100110EH   LINE      ---      ---       #417
+      01001110H   LINE      ---      ---       #418
+      01001112H   LINE      ---      ---       #419
+      01001114H   LINE      ---      ---       #420
+      01001117H   LINE      ---      ---       #422
+      01001122H   LINE      ---      ---       #423
+      01001122H   LINE      ---      ---       #424
+      01001124H   LINE      ---      ---       #426
+      01001127H   LINE      ---      ---       #427
+      01001129H   LINE      ---      ---       #428
       0100112BH   LINE      ---      ---       #429
-      0100112BH   LINE      ---      ---       #430
-      01001143H   LINE      ---      ---       #432
-      01001143H   LINE      ---      ---       #433
-      01001145H   LINE      ---      ---       #434
-      01001147H   LINE      ---      ---       #435
+      0100112BH   LINE      ---      ---       #431
+      0100112BH   LINE      ---      ---       #432
+      01001143H   LINE      ---      ---       #434
+      01001143H   LINE      ---      ---       #435
+      01001145H   LINE      ---      ---       #436
       01001147H   LINE      ---      ---       #437
-      01001147H   LINE      ---      ---       #438
-      01001149H   LINE      ---      ---       #439
-      0100115FH   LINE      ---      ---       #440
-      0100115FH   LINE      ---      ---       #441
-      01001162H   LINE      ---      ---       #442
-      01001162H   LINE      ---      ---       #443
-      01001164H   LINE      ---      ---       #444
-      01001166H   LINE      ---      ---       #445
-      01001166H   LINE      ---      ---       #446
+      01001147H   LINE      ---      ---       #439
+      01001147H   LINE      ---      ---       #440
+      01001149H   LINE      ---      ---       #441
+      0100115FH   LINE      ---      ---       #442
+      0100115FH   LINE      ---      ---       #443
+      01001162H   LINE      ---      ---       #444
+      01001162H   LINE      ---      ---       #445
+      01001164H   LINE      ---      ---       #446
       01001166H   LINE      ---      ---       #447
+      01001166H   LINE      ---      ---       #448
+      01001166H   LINE      ---      ---       #449
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       ADC
-      01002062H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
-      01002102H   PUBLIC    CODE     ---       YC_adc_check
-      010022D6H   PUBLIC    CODE     ---       YC_adc_init
-
-      010022D6H   BLOCK     CODE     ---       LVL=0
-      010022D6H   LINE      ---      ---       #3
-      010022D6H   LINE      ---      ---       #4
-      010022D6H   BLOCK     CODE     NEAR LAB  LVL=1
-      010022D6H   LINE      ---      ---       #8
-      010022DCH   LINE      ---      ---       #9
-      010022DFH   LINE      ---      ---       #12
-      010022E0H   LINE      ---      ---       #13
-      010022E0H   LINE      ---      ---       #14
-      010022F3H   LINE      ---      ---       #15
-      010022F8H   LINE      ---      ---       #17
-      01002346H   LINE      ---      ---       #18
-      01002394H   LINE      ---      ---       #38
+      01002395H   PUBLIC    CODE     ---       YC_adc_check_timer500ms
+      0100228CH   PUBLIC    CODE     ---       YC_adc_check
+      010021CDH   PUBLIC    CODE     ---       YC_adc_init
+
+      010021CDH   BLOCK     CODE     ---       LVL=0
+      010021CDH   LINE      ---      ---       #3
+      010021CDH   LINE      ---      ---       #4
+      010021CDH   BLOCK     CODE     NEAR LAB  LVL=1
+      010021CDH   LINE      ---      ---       #8
+      010021D3H   LINE      ---      ---       #9
+      010021D6H   LINE      ---      ---       #12
+      010021D7H   LINE      ---      ---       #13
+      010021D7H   LINE      ---      ---       #14
+      010021EAH   LINE      ---      ---       #15
+      010021EFH   LINE      ---      ---       #17
+      0100223DH   LINE      ---      ---       #18
+      0100228BH   LINE      ---      ---       #38
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002102H   BLOCK     CODE     ---       LVL=0
-      01002102H   LINE      ---      ---       #40
-      01002102H   LINE      ---      ---       #41
-      01002102H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002102H   LINE      ---      ---       #44
-      0100210CH   LINE      ---      ---       #46
-      0100212CH   LINE      ---      ---       #47
-      01002135H   LINE      ---      ---       #48
-      01002137H   LINE      ---      ---       #49
-      0100213CH   LINE      ---      ---       #50
-      0100213CH   LINE      ---      ---       #51
-      01002173H   LINE      ---      ---       #52
-      0100217DH   LINE      ---      ---       #53
-      0100219AH   LINE      ---      ---       #55
-      010021B9H   LINE      ---      ---       #56
-      010021B9H   LINE      ---      ---       #57
-      010021BFH   LINE      ---      ---       #58
-      010021C0H   LINE      ---      ---       #60
-      010021C0H   LINE      ---      ---       #61
-      010021DFH   LINE      ---      ---       #62
-      010021DFH   LINE      ---      ---       #63
-      010021E5H   LINE      ---      ---       #64
-      010021EAH   LINE      ---      ---       #65
-      010021EEH   LINE      ---      ---       #66
-      010021F2H   LINE      ---      ---       #67
-      010021F5H   LINE      ---      ---       #68
-      010021F6H   LINE      ---      ---       #70
-      010021F6H   LINE      ---      ---       #71
-      010021FBH   LINE      ---      ---       #72
-      010021FFH   LINE      ---      ---       #73
-      01002203H   LINE      ---      ---       #74
-      01002207H   LINE      ---      ---       #75
-      0100220AH   LINE      ---      ---       #76
-      0100220AH   LINE      ---      ---       #77
-      0100220AH   LINE      ---      ---       #79
+      0100228CH   BLOCK     CODE     ---       LVL=0
+      0100228CH   LINE      ---      ---       #40
+      0100228CH   LINE      ---      ---       #41
+      0100228CH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100228CH   LINE      ---      ---       #44
+      01002296H   LINE      ---      ---       #46
+      010022B6H   LINE      ---      ---       #47
+      010022BFH   LINE      ---      ---       #48
+      010022C1H   LINE      ---      ---       #49
+      010022C6H   LINE      ---      ---       #50
+      010022C6H   LINE      ---      ---       #51
+      010022FDH   LINE      ---      ---       #52
+      01002307H   LINE      ---      ---       #53
+      01002324H   LINE      ---      ---       #55
+      01002343H   LINE      ---      ---       #56
+      01002343H   LINE      ---      ---       #57
+      01002349H   LINE      ---      ---       #58
+      0100234AH   LINE      ---      ---       #60
+      0100234AH   LINE      ---      ---       #61
+      01002369H   LINE      ---      ---       #62
+      01002369H   LINE      ---      ---       #63
+      0100236FH   LINE      ---      ---       #64
+      01002374H   LINE      ---      ---       #65
+      01002378H   LINE      ---      ---       #66
+      0100237CH   LINE      ---      ---       #67
+      0100237FH   LINE      ---      ---       #68
+      01002380H   LINE      ---      ---       #70
+      01002380H   LINE      ---      ---       #71
+      01002385H   LINE      ---      ---       #72
+      01002389H   LINE      ---      ---       #73
+      0100238DH   LINE      ---      ---       #74
+      01002391H   LINE      ---      ---       #75
+      01002394H   LINE      ---      ---       #76
+      01002394H   LINE      ---      ---       #77
+      01002394H   LINE      ---      ---       #79
       02004E65H   SYMBOL    XDATA    VOID      i
       02004E66H   SYMBOL    XDATA    VOID      batValue
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002062H   BLOCK     CODE     ---       LVL=0
-      01002062H   LINE      ---      ---       #82
-      01002062H   LINE      ---      ---       #83
-      01002062H   LINE      ---      ---       #86
-      01002068H   LINE      ---      ---       #87
-      01002068H   LINE      ---      ---       #88
-      0100206AH   LINE      ---      ---       #89
-      0100206DH   LINE      ---      ---       #90
-      0100206DH   LINE      ---      ---       #91
-      01002070H   LINE      ---      ---       #92
-      01002072H   LINE      ---      ---       #93
-      01002072H   LINE      ---      ---       #94
-      01002072H   LINE      ---      ---       #96
+      01002395H   BLOCK     CODE     ---       LVL=0
+      01002395H   LINE      ---      ---       #82
+      01002395H   LINE      ---      ---       #83
+      01002395H   LINE      ---      ---       #86
+      0100239BH   LINE      ---      ---       #87
+      0100239BH   LINE      ---      ---       #88
+      0100239DH   LINE      ---      ---       #89
+      010023A0H   LINE      ---      ---       #90
+      010023A0H   LINE      ---      ---       #91
+      010023A3H   LINE      ---      ---       #92
+      010023A5H   LINE      ---      ---       #93
+      010023A5H   LINE      ---      ---       #94
+      010023A5H   LINE      ---      ---       #96
       ---         BLOCKEND  ---      ---       LVL=0
 
       ---         MODULE    ---      ---       RAM
@@ -2083,31 +2079,31 @@
       010017C3H   PUBLIC    CODE     ---       IPC_AbandonLpm
       010012A1H   PUBLIC    CODE     ---       IPC_WaitLpm
       01001374H   PUBLIC    CODE     ---       _IPC_Initialize
-      0100243FH   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
+      01002450H   PUBLIC    CODE     ---       IPC_GetBBDIsconnectReason
       01000F8DH   PUBLIC    CODE     ---       _IPC_Tx24GData
       01000F93H   PUBLIC    CODE     ---       _IPC_TxData
       010008B6H   PUBLIC    CODE     ---       _IPC_TxControlCmd
 
-      01002395H   BLOCK     CODE     ---       LVL=0
-      01002395H   LINE      ---      ---       #44
-      010023A5H   LINE      ---      ---       #45
-      010023A5H   LINE      ---      ---       #46
-      010023EEH   LINE      ---      ---       #47
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      010023EFH   BLOCK     CODE     ---       LVL=0
-      010023EFH   LINE      ---      ---       #49
-      010023F9H   LINE      ---      ---       #50
-      010023F9H   BLOCK     CODE     NEAR LAB  LVL=1
-      010023F9H   LINE      ---      ---       #51
-      01002401H   LINE      ---      ---       #52
-      01002407H   LINE      ---      ---       #53
-      01002426H   LINE      ---      ---       #54
-      01002430H   LINE      ---      ---       #55
-      01002434H   LINE      ---      ---       #56
-      01002434H   LINE      ---      ---       #57
-      01002436H   LINE      ---      ---       #58
-      0100243EH   LINE      ---      ---       #59
+      010023A6H   BLOCK     CODE     ---       LVL=0
+      010023A6H   LINE      ---      ---       #44
+      010023B6H   LINE      ---      ---       #45
+      010023B6H   LINE      ---      ---       #46
+      010023FFH   LINE      ---      ---       #47
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01002400H   BLOCK     CODE     ---       LVL=0
+      01002400H   LINE      ---      ---       #49
+      0100240AH   LINE      ---      ---       #50
+      0100240AH   BLOCK     CODE     NEAR LAB  LVL=1
+      0100240AH   LINE      ---      ---       #51
+      01002412H   LINE      ---      ---       #52
+      01002418H   LINE      ---      ---       #53
+      01002437H   LINE      ---      ---       #54
+      01002441H   LINE      ---      ---       #55
+      01002445H   LINE      ---      ---       #56
+      01002445H   LINE      ---      ---       #57
+      01002447H   LINE      ---      ---       #58
+      0100244FH   LINE      ---      ---       #59
       00000006H   SYMBOL    DATA     VOID      src
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2155,11 +2151,11 @@
       01000F8DH   LINE      ---      ---       #92
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100243FH   BLOCK     CODE     ---       LVL=0
-      0100243FH   LINE      ---      ---       #98
-      0100243FH   LINE      ---      ---       #99
-      0100243FH   LINE      ---      ---       #100
-      01002444H   LINE      ---      ---       #101
+      01002450H   BLOCK     CODE     ---       LVL=0
+      01002450H   LINE      ---      ---       #98
+      01002450H   LINE      ---      ---       #99
+      01002450H   LINE      ---      ---       #100
+      01002455H   LINE      ---      ---       #101
       ---         BLOCKEND  ---      ---       LVL=0
 
       01001374H   BLOCK     CODE     ---       LVL=0
@@ -2227,21 +2223,21 @@
 
       ---         MODULE    ---      ---       UTILITIES
       02004E46H   PUBLIC    XDATA    BYTE      ?_compare_str?BYTE
-      010024BDH   PUBLIC    CODE     ---       _compare_str
+      010024CEH   PUBLIC    CODE     ---       _compare_str
       01000A7AH   PUBLIC    CODE     ---       _Delay1ms
-      01002490H   PUBLIC    CODE     ---       _xmemclear_ff
+      010024A1H   PUBLIC    CODE     ---       _xmemclear_ff
       01000E1DH   PUBLIC    CODE     ---       _xmemclear
       02004E37H   PUBLIC    XDATA    BYTE      ?_dmemcpy?BYTE
-      0100244CH   PUBLIC    CODE     ---       _dmemcpy
+      0100245DH   PUBLIC    CODE     ---       _dmemcpy
       02004E5AH   PUBLIC    XDATA    BYTE      ?_xmemcpy?BYTE
       01000B40H   PUBLIC    CODE     ---       _xmemcpy
-      01002445H   PUBLIC    CODE     ---       YC_Ice_break
+      01002456H   PUBLIC    CODE     ---       YC_Ice_break
 
-      01002445H   BLOCK     CODE     ---       LVL=0
-      01002445H   LINE      ---      ---       #3
-      01002445H   LINE      ---      ---       #4
-      01002445H   LINE      ---      ---       #5
-      0100244BH   LINE      ---      ---       #7
+      01002456H   BLOCK     CODE     ---       LVL=0
+      01002456H   LINE      ---      ---       #3
+      01002456H   LINE      ---      ---       #4
+      01002456H   LINE      ---      ---       #5
+      0100245CH   LINE      ---      ---       #7
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000B40H   BLOCK     CODE     ---       LVL=0
@@ -2252,12 +2248,12 @@
       01000B82H   LINE      ---      ---       #14
       ---         BLOCKEND  ---      ---       LVL=0
 
-      0100244CH   BLOCK     CODE     ---       LVL=0
-      0100244CH   LINE      ---      ---       #16
-      01002457H   LINE      ---      ---       #17
-      01002457H   LINE      ---      ---       #18
-      01002465H   LINE      ---      ---       #19
-      0100248FH   LINE      ---      ---       #21
+      0100245DH   BLOCK     CODE     ---       LVL=0
+      0100245DH   LINE      ---      ---       #16
+      01002468H   LINE      ---      ---       #17
+      01002468H   LINE      ---      ---       #18
+      01002476H   LINE      ---      ---       #19
+      010024A0H   LINE      ---      ---       #21
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000E1DH   BLOCK     CODE     ---       LVL=0
@@ -2268,12 +2264,12 @@
       01000E48H   LINE      ---      ---       #28
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01002490H   BLOCK     CODE     ---       LVL=0
-      01002490H   LINE      ---      ---       #30
-      0100249BH   LINE      ---      ---       #31
-      0100249BH   LINE      ---      ---       #32
-      010024A5H   LINE      ---      ---       #33
-      010024BCH   LINE      ---      ---       #35
+      010024A1H   BLOCK     CODE     ---       LVL=0
+      010024A1H   LINE      ---      ---       #30
+      010024ACH   LINE      ---      ---       #31
+      010024ACH   LINE      ---      ---       #32
+      010024B6H   LINE      ---      ---       #33
+      010024CDH   LINE      ---      ---       #35
       ---         BLOCKEND  ---      ---       LVL=0
 
       01000A7AH   BLOCK     CODE     ---       LVL=0
@@ -2288,16 +2284,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      010024BDH   BLOCK     CODE     ---       LVL=0
-      010024BDH   LINE      ---      ---       #54
-      010024C8H   LINE      ---      ---       #55
-      010024C8H   BLOCK     CODE     NEAR LAB  LVL=1
-      010024C8H   LINE      ---      ---       #57
-      010024D4H   LINE      ---      ---       #58
-      010024FEH   LINE      ---      ---       #59
-      01002501H   LINE      ---      ---       #60
-      01002504H   LINE      ---      ---       #61
-      01002506H   LINE      ---      ---       #62
+      010024CEH   BLOCK     CODE     ---       LVL=0
+      010024CEH   LINE      ---      ---       #54
+      010024D9H   LINE      ---      ---       #55
+      010024D9H   BLOCK     CODE     NEAR LAB  LVL=1
+      010024D9H   LINE      ---      ---       #57
+      010024E5H   LINE      ---      ---       #58
+      0100250FH   LINE      ---      ---       #59
+      01002512H   LINE      ---      ---       #60
+      01002515H   LINE      ---      ---       #61
+      01002517H   LINE      ---      ---       #62
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2305,39 +2301,39 @@
       ---         MODULE    ---      ---       GPIO
       020000A3H   PUBLIC    XDATA    ---       YC_GPIOWakeupL
       020000A7H   PUBLIC    XDATA    ---       YC_GPIOWakeupH
-      01002563H   PUBLIC    CODE     ---       GPIO_fillpd
-      01002546H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
+      01002557H   PUBLIC    CODE     ---       GPIO_fillpd
+      010020E3H   PUBLIC    CODE     ---       _GPIO_FlipOutBit
       01001202H   PUBLIC    CODE     ---       _GPIO_SetWakeupByCurrentState
-      01002507H   PUBLIC    CODE     ---       _GPIO_ClearWakeup
+      01002518H   PUBLIC    CODE     ---       _GPIO_ClearWakeup
       00000020H.7 PUBLIC    BIT      BIT       ?_GPIO_SetWakeup?BIT
       01001215H   PUBLIC    CODE     ---       _GPIO_SetWakeup
       00000020H.6 PUBLIC    BIT      BIT       ?_GPIO_SetOutput?BIT
       010007DBH   PUBLIC    CODE     ---       _GPIO_SetOutput
       00000020H.5 PUBLIC    BIT      BIT       ?_GPIO_SetInput?BIT
-      01001D54H   PUBLIC    CODE     ---       _GPIO_SetInput
+      01001D49H   PUBLIC    CODE     ---       _GPIO_SetInput
       00000020H.4 PUBLIC    BIT      BIT       ?_GPIO_Setoe?BIT
-      01001D94H   PUBLIC    CODE     ---       _GPIO_Setoe
+      01001D89H   PUBLIC    CODE     ---       _GPIO_Setoe
       00000020H.3 PUBLIC    BIT      BIT       ?_GPIO_SetPd?BIT
-      01001D83H   PUBLIC    CODE     ---       _GPIO_SetPd
+      01001D78H   PUBLIC    CODE     ---       _GPIO_SetPd
       00000020H.2 PUBLIC    BIT      BIT       ?_GPIO_SetPu?BIT
-      01001D72H   PUBLIC    CODE     ---       _GPIO_SetPu
+      01001D67H   PUBLIC    CODE     ---       _GPIO_SetPu
       00000020H.1 PUBLIC    BIT      BIT       ?_GPIO_Setout?BIT
       010007A3H   PUBLIC    CODE     ---       _GPIO_Setout
       01001381H   PUBLIC    CODE     ---       _GPIO_GetInputStatus
 
-      01001DA5H   BLOCK     CODE     ---       LVL=0
-      01001DA5H   LINE      ---      ---       #9
-      01001DB0H   LINE      ---      ---       #10
-      01001DB0H   BLOCK     CODE     NEAR LAB  LVL=1
-      01001DB0H   LINE      ---      ---       #11
-      01001DB2H   LINE      ---      ---       #12
-      01001DB3H   LINE      ---      ---       #14
-      01001DB7H   LINE      ---      ---       #15
-      01001DBEH   LINE      ---      ---       #17
-      01001DC1H   LINE      ---      ---       #18
-      01001DE3H   LINE      ---      ---       #19
-      01001DE3H   LINE      ---      ---       #21
-      01001DE3H   LINE      ---      ---       #22
+      01001D9AH   BLOCK     CODE     ---       LVL=0
+      01001D9AH   LINE      ---      ---       #9
+      01001DA5H   LINE      ---      ---       #10
+      01001DA5H   BLOCK     CODE     NEAR LAB  LVL=1
+      01001DA5H   LINE      ---      ---       #11
+      01001DA7H   LINE      ---      ---       #12
+      01001DA8H   LINE      ---      ---       #14
+      01001DACH   LINE      ---      ---       #15
+      01001DB3H   LINE      ---      ---       #17
+      01001DB6H   LINE      ---      ---       #18
+      01001DD8H   LINE      ---      ---       #19
+      01001DD8H   LINE      ---      ---       #21
+      01001DD8H   LINE      ---      ---       #22
       00000006H   SYMBOL    DATA     VOID      queue
       00000005H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -2372,38 +2368,38 @@
       010007B4H   LINE      ---      ---       #47
       ---         BLOCKEND  ---      ---       LVL=0
 
-      01001D72H   BLOCK     CODE     ---       LVL=0
-      01001D72H   LINE      ---      ---       #49
-      01001D72H   LINE      ---      ---       #50
-      01001D72H   LINE      ---      ---       #51
-      01001D76H   LINE      ---      ---       #53
-      01001D82H   LINE      ---      ---       #54
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01001D83H   BLOCK     CODE     ---       LVL=0
-      01001D83H   LINE      ---      ---       #56
-      01001D83H   LINE      ---      ---       #57
-      01001D83H   LINE      ---      ---       #58
-      01001D87H   LINE      ---      ---       #60
-      01001D93H   LINE      ---      ---       #61
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01001D94H   BLOCK     CODE     ---       LVL=0
-      01001D94H   LINE      ---      ---       #63
-      01001D94H   LINE      ---      ---       #64
-      01001D94H   LINE      ---      ---       #65
-      01001D98H   LINE      ---      ---       #67
-      01001DA4H   LINE      ---      ---       #68
-      ---         BLOCKEND  ---      ---       LVL=0
-
-      01001D54H   BLOCK     CODE     ---       LVL=0
-      01001D54H   LINE      ---      ---       #70
-      01001D56H   LINE      ---      ---       #71
-      01001D56H   LINE      ---      ---       #72
-      01001D5AH   LINE      ---      ---       #74
-      01001D62H   LINE      ---      ---       #75
-      01001D6BH   LINE      ---      ---       #76
-      01001D71H   LINE      ---      ---       #77
+      01001D67H   BLOCK     CODE     ---       LVL=0
+      01001D67H   LINE      ---      ---       #49
+      01001D67H   LINE      ---      ---       #50
+      01001D67H   LINE      ---      ---       #51
+      01001D6BH   LINE      ---      ---       #53
+      01001D77H   LINE      ---      ---       #54
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01001D78H   BLOCK     CODE     ---       LVL=0
+      01001D78H   LINE      ---      ---       #56
+      01001D78H   LINE      ---      ---       #57
+      01001D78H   LINE      ---      ---       #58
+      01001D7CH   LINE      ---      ---       #60
+      01001D88H   LINE      ---      ---       #61
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01001D89H   BLOCK     CODE     ---       LVL=0
+      01001D89H   LINE      ---      ---       #63
+      01001D89H   LINE      ---      ---       #64
+      01001D89H   LINE      ---      ---       #65
+      01001D8DH   LINE      ---      ---       #67
+      01001D99H   LINE      ---      ---       #68
+      ---         BLOCKEND  ---      ---       LVL=0
+
+      01001D49H   BLOCK     CODE     ---       LVL=0
+      01001D49H   LINE      ---      ---       #70
+      01001D4BH   LINE      ---      ---       #71
+      01001D4BH   LINE      ---      ---       #72
+      01001D4FH   LINE      ---      ---       #74
+      01001D57H   LINE      ---      ---       #75
+      01001D60H   LINE      ---      ---       #76
+      01001D66H   LINE      ---      ---       #77
       ---         BLOCKEND  ---      ---       LVL=0
 
       010007DBH   BLOCK     CODE     ---       LVL=0
@@ -2437,16 +2433,16 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002507H   BLOCK     CODE     ---       LVL=0
-      01002507H   LINE      ---      ---       #107
-      01002507H   LINE      ---      ---       #108
-      01002507H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002507H   LINE      ---      ---       #111
-      0100250BH   LINE      ---      ---       #113
-      0100250FH   LINE      ---      ---       #114
-      01002516H   LINE      ---      ---       #115
-      01002538H   LINE      ---      ---       #116
-      01002545H   LINE      ---      ---       #117
+      01002518H   BLOCK     CODE     ---       LVL=0
+      01002518H   LINE      ---      ---       #107
+      01002518H   LINE      ---      ---       #108
+      01002518H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002518H   LINE      ---      ---       #111
+      0100251CH   LINE      ---      ---       #113
+      01002520H   LINE      ---      ---       #114
+      01002527H   LINE      ---      ---       #115
+      01002549H   LINE      ---      ---       #116
+      01002556H   LINE      ---      ---       #117
       00000006H   SYMBOL    DATA     VOID      queue
       00000007H   SYMBOL    DATA     VOID      group
       ---         BLOCKEND  CODE     ---       LVL=1
@@ -2462,23 +2458,23 @@
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002546H   BLOCK     CODE     ---       LVL=0
-      01002546H   LINE      ---      ---       #125
-      0100254BH   LINE      ---      ---       #126
-      0100254BH   BLOCK     CODE     NEAR LAB  LVL=1
-      0100254BH   LINE      ---      ---       #127
-      01002556H   LINE      ---      ---       #128
+      010020E3H   BLOCK     CODE     ---       LVL=0
+      010020E3H   LINE      ---      ---       #125
+      010020E8H   LINE      ---      ---       #126
+      010020E8H   BLOCK     CODE     NEAR LAB  LVL=1
+      010020E8H   LINE      ---      ---       #127
+      010020F3H   LINE      ---      ---       #128
       00000021H.1 SYMBOL    BIT      VOID      st
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
 
-      01002563H   BLOCK     CODE     ---       LVL=0
-      01002563H   LINE      ---      ---       #131
-      01002563H   LINE      ---      ---       #132
-      01002563H   BLOCK     CODE     NEAR LAB  LVL=1
-      01002563H   LINE      ---      ---       #134
-      01002565H   LINE      ---      ---       #135
-      01002596H   LINE      ---      ---       #136
+      01002557H   BLOCK     CODE     ---       LVL=0
+      01002557H   LINE      ---      ---       #131
+      01002557H   LINE      ---      ---       #132
+      01002557H   BLOCK     CODE     NEAR LAB  LVL=1
+      01002557H   LINE      ---      ---       #134
+      01002559H   LINE      ---      ---       #135
+      0100258AH   LINE      ---      ---       #136
       00000007H   SYMBOL    DATA     VOID      i
       ---         BLOCKEND  CODE     ---       LVL=1
       ---         BLOCKEND  CODE     ---       LVL=0
@@ -2620,5 +2616,5 @@
       ---         MODULE    ---      ---       ?C_INIT
       010005D7H   PUBLIC    CODE     ---       ?C_START
 
-Program Size: data=10.2 xdata=787 const=182 code=9441
+Program Size: data=10.2 xdata=787 const=182 code=9429
 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
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/output/eeprom.dat	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/output/eeprom.dat	(working copy)
@@ -3696,7 +3696,7 @@
 4e
 aa
 55
-99
+8d
 25
 02
 05
@@ -5272,17 +5272,17 @@
 00
 00
 ff
-20
-48
+1f
+c3
 ff
-22
-0b
+21
+00
 00
 00
 00
 ff
 1f
-bd
+b2
 00
 16
 08
@@ -5669,7 +5669,7 @@
 00
 12
 1d
-a5
+9a
 22
 90
 4b
@@ -5721,7 +5721,7 @@
 04
 12
 1d
-94
+89
 af
 04
 a2
@@ -5736,7 +5736,7 @@
 02
 12
 1d
-72
+67
 22
 e4
 ff
@@ -5909,7 +5909,7 @@
 4c
 f1
 74
-f0
+c8
 f0
 e4
 90
@@ -6017,7 +6017,7 @@
 64
 12
 23
-95
+a6
 90
 4e
 57
@@ -6151,7 +6151,7 @@
 ed
 12
 1f
-94
+89
 7b
 01
 7a
@@ -7743,7 +7743,7 @@
 f0
 12
 1d
-37
+2c
 e4
 90
 4e
@@ -7765,7 +7765,7 @@
 05
 12
 1d
-54
+49
 90
 4e
 98
@@ -8245,7 +8245,7 @@
 b0
 12
 25
-63
+57
 90
 81
 1c
@@ -8872,7 +8872,7 @@
 86
 12
 24
-4c
+5d
 90
 0b
 83
@@ -9018,8 +9018,8 @@
 7d
 03
 12
-23
-ef
+24
+00
 90
 4e
 84
@@ -9198,8 +9198,8 @@
 a3
 f0
 12
-1e
-06
+1d
+fb
 7a
 4d
 79
@@ -9230,7 +9230,7 @@
 bc
 12
 24
-bd
+ce
 ef
 60
 17
@@ -9244,7 +9244,7 @@
 14
 12
 1f
-64
+59
 ef
 70
 09
@@ -9672,7 +9672,7 @@
 ff
 12
 1c
-37
+2c
 80
 08
 90
@@ -9682,7 +9682,7 @@
 ff
 12
 1c
-8d
+82
 90
 4e
 26
@@ -10655,14 +10655,12 @@
 04
 f0
 22
-ae
-07
 e4
 90
 4e
 96
 f0
-ee
+ef
 30
 e0
 05
@@ -10685,72 +10683,72 @@
 60
 02
 81
-31
+26
 ed
 12
 05
 64
 1b
-8d
+8b
 13
 1b
-a4
+a0
 1b
 1b
-95
+93
 1d
 1b
-d3
+c8
 3a
 1b
-db
+d0
 3b
 1b
-e3
+d8
 3c
 1b
-eb
+e0
 3d
 1b
-f3
+e8
 3e
 1b
-fb
+f0
 3f
-1c
-03
+1b
+f8
 40
 1c
-0b
+00
 41
 1c
-13
+08
 42
 1c
-1b
+10
 43
 1c
-23
+18
 44
 1c
-2b
+20
 45
 1b
-cb
+c0
 4f
 1b
-c3
+b8
 50
 1b
-bb
+b0
 51
 1b
-b3
+a8
 52
 00
 00
 1c
-31
+26
 90
 4e
 96
@@ -10758,11 +10756,9 @@
 46
 f0
 81
-31
-af
-06
+26
 7b
-37
+64
 7d
 02
 71
@@ -10773,19 +10769,12 @@
 96
 f0
 81
-31
-af
-06
-7b
-36
-7d
-02
-71
-08
-e4
+26
 90
 4e
 96
+74
+64
 f0
 80
 7e
@@ -11196,7 +11185,7 @@
 c2
 05
 b1
-54
+49
 90
 4e
 97
@@ -11219,7 +11208,7 @@
 92
 03
 b1
-83
+78
 af
 04
 a2
@@ -11228,13 +11217,13 @@
 92
 02
 b1
-72
+67
 af
 04
 c2
 04
 b1
-94
+89
 22
 ef
 f4
@@ -11251,7 +11240,7 @@
 92
 00
 b1
-a5
+9a
 22
 ef
 f4
@@ -11268,7 +11257,7 @@
 92
 00
 b1
-a5
+9a
 22
 ef
 f4
@@ -11285,7 +11274,7 @@
 92
 00
 b1
-a5
+9a
 22
 90
 4e
@@ -11526,7 +11515,7 @@
 f0
 0f
 c1
-12
+07
 e4
 ff
 ef
@@ -11659,7 +11648,7 @@
 f0
 0f
 c1
-97
+8c
 e4
 ff
 ef
@@ -11786,8 +11775,8 @@
 0e
 49
 12
-22
-d6
+21
+cd
 90
 4c
 ee
@@ -11839,232 +11828,89 @@
 93
 f0
 22
+22
+f1
+c2
 90
-4d
+4c
 e4
 e0
-b4
-02
-0b
+04
+f0
+70
+06
 90
 4c
-f1
+e3
 e0
-60
-05
-7f
-1d
+04
+f0
 12
-25
-46
-22
-90
-4c
-c5
-e0
-b4
-03
+23
+95
 12
-c3
+20
+68
 90
 4c
-e4
+ce
 e0
-94
-14
+30
+e1
+3e
 90
 4c
-e3
+d0
 e0
+c3
 94
-00
-40
-2d
-02
-07
-b5
-90
-4c
-c5
+fa
+50
+03
 e0
-b4
-01
-14
+04
+f0
 90
 4c
-e3
-e0
-70
-04
-a3
+d0
 e0
 64
-28
+b4
 70
-17
-7f
-22
-12
-08
-b6
-02
-07
-b5
+37
 90
-4c
-e3
+4d
+dc
 e0
-70
 04
-a3
+f0
 e0
-64
-14
-70
-03
-12
+d3
+94
+02
+50
 07
-b5
-22
+e4
 90
 4c
-f1
+d0
+f0
+80
+24
+90
+4d
+dc
 e0
-60
+b4
+03
 1d
-e4
 90
-4c
-e3
-f0
-a3
+4d
+d5
+74
+01
 f0
-90
-4c
-f1
-e0
-14
-f0
-e0
-70
-0d
-7f
-22
-12
-08
-b6
-7f
-0a
-12
-0a
-7a
-12
-07
-b5
-22
-12
-1f
-cd
-90
-4c
-e4
-e0
-04
-f0
-70
-06
-90
-4c
-e3
-e0
-04
-f0
-11
-62
-12
-1f
-e0
-11
-73
-80
-c2
-90
-4c
-d3
-e0
-60
-0a
-14
-f0
-e0
-70
-05
-74
-05
-f0
-31
-02
-22
-90
-4c
-ce
-e0
-30
-e1
-3e
-90
-4c
-d0
-e0
-c3
-94
-fa
-50
-03
-e0
-04
-f0
-90
-4c
-d0
-e0
-64
-b4
-70
-37
-90
-4d
-dc
-e0
-04
-f0
-e0
-d3
-94
-02
-50
-07
-e4
-90
-4c
-d0
-f0
-80
-24
-90
-4d
-dc
-e0
-b4
-03
-1d
-90
-4d
-d5
-74
-01
-f0
-e4
+e4
 90
 4c
 d0
@@ -12149,270 +11995,159 @@
 f0
 22
 90
-4e
-66
-12
-05
-33
-00
-00
-00
-00
-90
 4c
-95
-e0
-fe
-a3
+c5
 e0
-ff
+b4
+03
+12
+c3
 90
 4c
-d4
-e0
-fd
-04
-f0
-ed
-25
-e0
-24
-d6
-f5
-82
 e4
-34
-4c
-f5
-83
-ee
-f0
-a3
-ef
-f0
+e0
+94
+14
 90
 4c
-d4
+e3
 e0
-c3
 94
-04
+00
 40
+2d
 02
-e4
-f0
-e4
-90
-4e
-65
-f0
+07
+b5
 90
-4e
-66
-e0
-f8
-a3
-e0
-f9
-a3
-e0
-fa
-a3
+4c
+c5
 e0
-fb
+b4
+01
+14
 90
-4e
-65
-e0
-25
-e0
-24
-d6
-f5
-82
-e4
-34
 4c
-f5
-83
+e3
 e0
-fe
+70
+04
 a3
 e0
-ff
-e4
-fc
-fd
-eb
-2f
-ff
-ea
-3e
-fe
-ed
-39
-fd
-ec
-38
-fc
-90
-4e
-66
+64
+28
+70
+17
+7f
+22
 12
-05
-27
+08
+b6
+02
+07
+b5
 90
-4e
-65
-e0
-04
-f0
+4c
+e3
 e0
-b4
+70
 04
-bf
-90
-4e
-66
-e0
-fc
 a3
 e0
-fd
-a3
-e0
-fe
-a3
-e0
-ff
-e4
-7b
-04
-fa
-f9
-f8
+64
+14
+70
+03
 12
-04
-76
+07
+b5
+22
 90
-4e
-66
-12
-05
-27
+4d
+e4
+e0
+64
+02
+70
+2e
 90
 4c
+f1
 e0
-e0
-fe
-a3
-e0
-ff
+60
+28
 e4
-fc
-fd
-90
-4e
-66
-e0
-f8
-a3
-e0
-f9
-a3
-e0
-fa
-a3
-e0
-fb
-c3
-12
-05
-16
-50
-07
 90
 4c
-d5
-74
-02
+e3
+f0
+a3
 f0
-22
 90
 4c
-de
+f1
 e0
-fe
-a3
+14
+f0
 e0
-ff
-e4
-fc
-fd
+30
+e1
+04
+7f
+1d
+11
+e3
 90
-4e
-66
-e0
-f8
-a3
-e0
-f9
-a3
-e0
-fa
-a3
+4c
+f1
 e0
-fb
-c3
+70
+0d
+7f
+22
 12
-05
-16
-50
-17
-90
-4c
-d5
-74
-01
-f0
-e4
-90
-4d
-3d
-f0
-a3
-74
-48
-f0
-a3
-74
+08
+b6
+7f
+0a
 12
-f0
-e4
-a3
-f0
+0a
+7a
+12
+07
+b5
 22
-e4
-90
-4c
-d5
-f0
 90
-4d
-3d
-f0
-a3
-74
-48
+4e
+9e
+ef
 f0
-a3
+7b
+01
+7a
+80
+79
 74
-5d
-f0
-e4
+12
+13
+87
+92
+09
+90
+4e
+9e
+e0
+ff
+a2
+09
+b3
+92
+01
+02
+07
 a3
-f0
-22
+11
+ac
 90
 4c
 ed
@@ -12695,117 +12430,399 @@
 c0
 07
 90
-4c
-91
+4c
+91
+e0
+fc
+a3
+e0
+fd
+e4
+12
+02
+06
+d0
+03
+d0
+02
+d0
+01
+d0
+00
+12
+00
+0a
+12
+02
+3f
+90
+4c
+de
+ee
+f0
+a3
+ef
+f0
+90
+4c
+91
+e0
+fe
+a3
+e0
+ff
+c3
+90
+4c
+94
+e0
+9f
+fd
+90
+4c
+93
+e0
+9e
+fc
+e4
+12
+02
+06
+7b
+52
+7a
+b8
+79
+5e
+78
+3f
+12
+00
+fb
+c0
+04
+c0
+05
+c0
+06
+c0
+07
+90
+4c
+91
+e0
+fc
+a3
+e0
+fd
+e4
+12
+02
+06
+d0
+03
+d0
+02
+d0
+01
+d0
+00
+12
+00
+0a
+12
+02
+3f
+90
+4c
+e0
+ee
+f0
+a3
+ef
+f0
+22
+90
+4e
+66
+12
+05
+33
+00
+00
+00
+00
+90
+4c
+95
+e0
+fe
+a3
+e0
+ff
+90
+4c
+d4
+e0
+fd
+04
+f0
+ed
+25
+e0
+24
+d6
+f5
+82
+e4
+34
+4c
+f5
+83
+ee
+f0
+a3
+ef
+f0
+90
+4c
+d4
+e0
+c3
+94
+04
+40
+02
+e4
+f0
+e4
+90
+4e
+65
+f0
+90
+4e
+66
+e0
+f8
+a3
+e0
+f9
+a3
+e0
+fa
+a3
+e0
+fb
+90
+4e
+65
+e0
+25
+e0
+24
+d6
+f5
+82
+e4
+34
+4c
+f5
+83
+e0
+fe
+a3
+e0
+ff
+e4
+fc
+fd
+eb
+2f
+ff
+ea
+3e
+fe
+ed
+39
+fd
+ec
+38
+fc
+90
+4e
+66
+12
+05
+27
+90
+4e
+65
+e0
+04
+f0
+e0
+b4
+04
+bf
+90
+4e
+66
 e0
 fc
 a3
 e0
 fd
+a3
+e0
+fe
+a3
+e0
+ff
 e4
+7b
+04
+fa
+f9
+f8
 12
-02
-06
-d0
-03
-d0
-02
-d0
-01
-d0
-00
-12
-00
-0a
-12
-02
-3f
+04
+76
 90
-4c
-de
-ee
-f0
-a3
-ef
-f0
+4e
+66
+12
+05
+27
 90
 4c
-91
+e0
 e0
 fe
 a3
 e0
 ff
-c3
-90
-4c
-94
-e0
-9f
+e4
+fc
 fd
 90
-4c
-93
+4e
+66
+e0
+f8
+a3
+e0
+f9
+a3
+e0
+fa
+a3
 e0
-9e
-fc
-e4
-12
-02
-06
-7b
-52
-7a
-b8
-79
-5e
-78
-3f
-12
-00
 fb
-c0
-04
-c0
+c3
+12
 05
-c0
-06
-c0
+16
+50
 07
 90
 4c
-91
+d5
+74
+02
+f0
+22
+90
+4c
+de
 e0
-fc
+fe
 a3
 e0
-fd
+ff
 e4
+fc
+fd
+90
+4e
+66
+e0
+f8
+a3
+e0
+f9
+a3
+e0
+fa
+a3
+e0
+fb
+c3
 12
-02
-06
-d0
-03
-d0
-02
-d0
+05
+16
+50
+17
+90
+4c
+d5
+74
 01
-d0
-00
-12
-00
-0a
+f0
+e4
+90
+4d
+3d
+f0
+a3
+74
+48
+f0
+a3
+74
 12
-02
-3f
+f0
+e4
+a3
+f0
+22
+e4
 90
 4c
-e0
-ee
+d5
+f0
+90
+4d
+3d
 f0
 a3
-ef
+74
+48
+f0
+a3
+74
+5d
+f0
+e4
+a3
+f0
+22
+90
+4c
+d3
+e0
+60
+0a
+14
+f0
+e0
+70
+05
+74
+05
 f0
+51
+8c
 22
 90
 4e
@@ -13240,35 +13257,6 @@
 5c
 f0
 22
-90
-4e
-9e
-ef
-f0
-7b
-01
-7a
-80
-79
-74
-12
-13
-87
-92
-09
-90
-4e
-9e
-e0
-ff
-a2
-09
-b3
-92
-01
-02
-07
-a3
 e4
 ff
 ef
@@ -13321,8 +13309,8 @@
 04
 cf
 22
-49
-60
+77
+66
 aa
 55
 40
@@ -15373,8 +15361,8 @@
 6c
 59
 50
-9d
-d5
+90
+27
 ff
 ff
 ff
@@ -16380,5 +16368,17 @@
 ff
 ff
 ff
-24
-28
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+a8
+a1
Index: c51/output/fw.hex
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/output/fw.hex	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/output/fw.hex	(working copy)
@@ -96,8 +96,8 @@
 :1005F000CF54C025E060A840B8E493A3FAE493A3E5
 :10060000F8E493A3C8C582C8CAC583CAF0A3C8C505
 :1006100082C8CAC583CADFE9DEE780BE524DF1FF5A
-:100620000973000000FF2048FF220B000000FF1F9D
-:10063000BD001608090A0B0C0D0E1415131119181C
+:100620000973000000FF1FC3FF2100000000FF1F2F
+:10063000B2001608090A0B0C0D0E14151311191827
 :100640001A12171B00000048000000E400E03E14EE
 :100650002B04291D8B351E1A3916641B8A3A1F0874
 :100660003C073D06883B201517090A190522211869
@@ -121,11 +121,11 @@
 :100780007F1C801FC2017FFFF1A3C2017F1C801369
 :10079000C2017FFFF1A3C2017F1C8007C2017FFF5E
 :1007A000F1A322EFF4600D7B017A807974A20192AB
-:1007B00000121DA522904BEF74FFF0904D3DF0A369
+:1007B00000121D9A22904BEF74FFF0904D3DF0A374
 :1007C000F0A3F0A3F0C2067FFFF1DBC2067F1CF1AD
 :1007D000DBC2067F1DF1DBC2067F1DAC07ECF460B7
-:1007E00016AF04D204121D94AF04A2069201F1A325
-:1007F000AF04C202121D7222E4FF904CF1E06001CE
+:1007E00016AF04D204121D89AF04A2069201F1A330
+:1007F000AF04C202121D6722E4FF904CF1E06001D9
 :1008000022904CC5E06403601C904CF2E0701D74B3
 :100810000AF0A3E07016904DE4E0B4020F7F0911D6
 :100820002D7F018007E4904CEEF07F0122EF24F74A
@@ -136,13 +136,13 @@
 :10087000F0A3F07F2111B6904CC57402F0E4A3F010
 :10088000904CF0F022E4904CF3F0904CC5E0640101
 :1008900060187F2311B6904CC57401F0E4A3F0906A
-:1008A0004CF174F0F0E4904CECF0E4904CF0F02259
+:1008A0004CF174C8F0E4904CECF0E4904CF0F02281
 :1008B000E4904CF0F022904E77EFF078787C4E7D0B
 :1008C000017BFF7A0679E57E007F03120390904E4C
 :1008D00077E0904E7AF07B017A4E79787D03904EE6
 :1008E00054EBF0A3EAF0A3E9F0A3EDF0904B9CE009
 :1008F000FFA3E0904E58CFF0A3EFF0904B9AE0FEAC
-:10090000A3E0FF904B9CE0FCA3E0FD7B64122395E9
+:10090000A3E0FF904B9CE0FCA3E0FD7B641223A6D8
 :10091000904E57E0FEEFC39E40E1904E57E0FF142B
 :10092000F0EF603F904E54E0FBA3E475F001120439
 :1009300024A9F0FA1203B6FF904E58E475F00112A4
@@ -151,7 +151,7 @@
 :10096000F080B7904E58E0FFA3E0904B9CCFF0A3EF
 :10097000EFF022904E9AEFF024D0604714604614B6
 :100980007002412814600A24F7603A240D60024185
-:1009900079F1ED121F947B017A4C79007D047C0083
+:1009900079F1ED121F897B017A4C79007D047C008E
 :1009A0007FF27E3F51927F0A517A904CC1E0F97AF2
 :1009B000007B007D017C007FF87E3F51927F0A51D1
 :1009C0007AE1B8E1C2904CC57403F0E4A3F0F1877A
@@ -250,9 +250,9 @@
 :100F90007406F0904E9BEDF0E0FD900BE8F07E0BB8
 :100FA0007FE9904E5FEDF071407B017A0B79E7901D
 :100FB0004E9BE02402FD01DE904DE47402F07F08B8
-:100FC000012D908080E4F0A3F0A3F0121D37E4908F
+:100FC000012D908080E4F0A3F0A3F0121D2CE4909A
 :100FD0004E98F0F0904E98E090063293FF600DC26C
-:100FE00005121D54904E98E004F080E822F1C202F0
+:100FE00005121D49904E98E004F080E822F1C202FB
 :100FF00007C5904CC5E0FF64036004EFB402087FAE
 :10100000221208B67F01227F0022904CBFE0604D83
 :10101000904CE0E0FEA3E0FFC3904C96E09F904C24
@@ -282,7 +282,7 @@
 :10119000FDEE2478FBE434808B82F583E0FCEDF4F3
 :1011A000FBEC5BF0EE2470F582E43480F583E04DD7
 :1011B000F0EE2474F582E43480F583E05BF00F8078
-:1011C000B012256390811CE0904E99F0904DD5E0CF
+:1011C000B012255790811CE0904E99F0904DD5E0DB
 :1011D0006020E4FF51027F0151027F0251027F0330
 :1011E00051027F0451027F0551027F0651027F07A1
 :1011F0008010904E99E0FF9000A3F0EFF49000A7CC
@@ -321,7 +321,7 @@
 :10140000EFF0904E51EBF0A3EAF0A3E9F0904E4FCD
 :10141000ECF0A3EDF0A3E0F9A3E0FAA3E0904E3ADC
 :10142000C9F0A3EAF0A3E9F0A3ECF0A3EDF07B018F
-:101430007A0B798612244C900B8374A0F0904E4D59
+:101430007A0B798612245D900B8374A0F0904E4D48
 :10144000E0FFA3E0900B84CFF0A3EFF0904E50E0CC
 :101450002403FD904E4FE03400FCEDFAECFFEAFE71
 :10146000EF908098EEF0A3EFF07A0B79837E0B7FFC
@@ -330,7 +330,7 @@
 :101490004404F090812CE030E5F9227A0C794B90ED
 :1014A0004E847401F0A3740CF0A3744BF0904BA025
 :1014B000E0FEA3E0FF904B9EE06E7003A3E06F6040
-:1014C000477E0C7F4B7D031223EF904E84E0FBA3FD
+:1014C000477E0C7F4B7D03122400904E84E0FBA3EB
 :1014D000E0FAA3E0F91203B6B4022B904E85E4754E
 :1014E000F00212040E904E84E0FBA3E0FAA3E0F9B0
 :1014F0001203B6FF904E03E0A3E0FAA3E0F5828A60
@@ -341,10 +341,10 @@
 :101540008DE0FFA3E06F6019904E0CE0FBA3E0FA82
 :10155000A3E0F94A600B12058A904C8DE0A3F0805D
 :10156000DD22E4904E23F0A3F0A3F0A3F0A3F0A3B8
-:10157000F0A3F0A3F0A3F0A3F0A3F0121E067A4D9F
+:10157000F0A3F0A3F0A3F0A3F0A3F0121DFB7A4DAB
 :1015800079A8904E497401F0A3744DF0A374A8F0AB
-:10159000A37414F07B017A4D79BC1224BDEF60175F
-:1015A0007B017A4D79BC7D14121F64EF7009904C59
+:10159000A37414F07B017A4D79BC1224CEEF60174E
+:1015A0007B017A4D79BC7D14121F59EF7009904C64
 :1015B000CEE04402F0800C904CCEE054FDF0E4907C
 :1015C0004CD0F0E4904E23F0904E23E0FF90063292
 :1015D000937002C19574BC2FF582E4344DF583E01D
@@ -371,8 +371,8 @@
 :1017200030E03E904E23E0FE33333354F8FEEF4E6C
 :10173000904E28F0A3E0FF904E28E090064793FDDE
 :10174000121B2D904E2BEFF0904E29E030E00A90C6
-:101750004E2BE0FF121C378008904E2BE0FF121C2E
-:101760008D904E26E0FFC313F0904E29E0FFC31387
+:101750004E2BE0FF121C2C8008904E2BE0FF121C39
+:1017600082904E26E0FFC313F0904E29E0FFC31392
 :10177000F0904E24E004F08099904E277401F09090
 :101780004E23E004F0C1A2904DE7E0B4030A904D6F
 :10179000D8E0B401037402F0904E27E07007904D3A
@@ -432,172 +432,171 @@
 :101AF000480004F0904D47E0904802F07B017A489E
 :101B000079007D09120ED322904CF8EDF0A3EBF092
 :101B1000EF30E012904CF7E0B403047402F022902E
-:101B20004CF77401F022904CF77404F022AE07E4F5
-:101B3000904E96F0EE30E005E4904CFBF0904E961F
-:101B4000EDF0904DDBE0640160028131ED1205643F
-:101B50001B8D131BA41B1B951D1BD33A1BDB3B1BAF
-:101B6000E33C1BEB3D1BF33E1BFB3F1C03401C0BEC
-:101B7000411C13421C1B431C23441C2B451BCB4FF5
-:101B80001BC3501BBB511BB35200001C31904E961F
-:101B90007446F08131AF067B377D027108E4904EC8
-:101BA00096F08131AF067B367D027108E4904E9647
-:101BB000F0807E904E96744BF08076904E96744EE8
-:101BC000F0806E904E96744AF08066904E96744DFA
-:101BD000F0805E904E9674F1F08056904E9674F6BA
-:101BE000F0804E904E9674F7F08046904E9674F8C2
-:101BF000F0803E904E9674F4F08036904E9674F5D8
-:101C0000F0802E904E9674F2F08026904E9674F3EB
-:101C1000F0801E904E9674D6F08016904E9674FA10
-:101C2000F0800E904E9674F9F08006904E9674D027
-:101C3000F0904E96E0FF22E4FEEFC394E04020EFE8
-:101C4000D394E7501A904E3FE0FEEF5407FF740123
-:101C5000A807088002C333D8FC4E904E3FF022E420
-:101C6000FE74402EF582E4344EF583E0FD6F601C77
-:101C7000ED7014904DE6E06F601274402EF582E432
-:101C8000344EF583EFF0220EEEB406D522E4FEFDCD
-:101C9000EF54F064F06007EF54D0FCBCD00C904DD2
-:101CA000E7E0B4020B7403F08006904DD87401F0A5
-:101CB000EFC394E04021EFD394E7501B904E3FE0F8
-:101CC000FEEF5407FF7401A807088002C333D8FC55
-:101CD000F45E904E3FF022E4FEED702174402EF54C
-:101CE00082E4344EF583E06F7047EEB4050B244078
-:101CF000F582E4344EF583E4F07D01803474402EA7
-:101D0000F582E4344EF583E0FC743F2EF582E43432
-:101D10004EF583ECF074402EF582E4344EF583E00A
-:101D20006014EEB4050B2440F582E4344EF583E4F0
-:101D3000F00EEEB406A322E4904E97F0F0904E978A
-:101D4000E0FFC39408500CC205B154904E97E004D4
-:101D5000F080EA22AC07ECF46017AF04A20592030E
-:101D6000B183AF04A205B39202B172AF04C204B151
-:101D70009422EFF4600C7B017A807978A2029200C1
-:101D8000B1A522EFF4600C7B017A80797CA20392EA
-:101D900000B1A522EFF4600C7B017A807970A20477
-:101DA0009200B1A522904E8DEBF0A3EAF0A3E9F0EA
-:101DB000E4FEFDEF5407FEEF1313135403FD300050
-:101DC00022904E8DE0FBA3E0FAA3E02DF9E43AFA6D
-:101DD0001203B6FF7401A806088002C333D8FC4F73
-:101DE0000203FC904E8DE0FBA3E0FAA3E02DF9E4A2
-:101DF0003AFA1203B6FF7401A806088002C333D86A
-:101E0000FCF45F0203FCE4FF904E7EF0FEFDA3F0C5
-:101E1000A3F0EF90063293607CEF93FD13131354FD
-:101E20001FFEED5407FD7401A805088002C333D8D6
-:101E3000FCFDEE2478FBE434808B82F583E0FCED3E
-:101E4000F4FBEC5BF0EE2470F582E43480F583E083
-:101E50004DF0EE2474F582E43480F583E05BF0907D
-:101E6000811CE0F4FC74BC2FF582E4344DF583EC66
-:101E7000F0EE2478FBE434808B82F583E04DF0EEC5
-:101E80002470FBE434808B82F583E0FCEDF4FBEC02
-:101E90005BF00FC112E4FFEF90063293607CEF938A
-:101EA000FD131313541FFEED5407FD7401A805081C
-:101EB0008002C333D8FCFDEE2478FBE434808B82AF
-:101EC000F583E0FCEDF4FBEC5BF0EE2470F582E4CE
-:101ED0003480F583E04DF0EE2474F582E43480F52F
-:101EE00083E05BF090811CE0F4FC74A82FF582E4A1
-:101EF000344DF583ECF0EE2478FBE434808B82F5EE
-:101F000083E04DF0EE2470FBE434808B82F583E0B7
-:101F1000FCEDF4FBEC5BF00FC197E4FFEF900632B1
-:101F200093604074BC2FF582E4344DF583E0FE7479
-:101F3000A82FF582E4344DF583E06E602374BC2F46
-:101F4000F582E4344DF583C083C082E0FE74A82F8F
-:101F5000F582E4344DF583E0FDEE5DD082D083F070
-:101F60000F80B922904E81EBF0A3EAF0A3E9F0E4F0
-:101F7000FFEFC39D501B904E81E0FBA3E0FAA3E06E
-:101F8000F98F827583001203CF60037F00220F80D8
-:101F9000E07F0122120E491222D6904CEE7401F01D
-:101FA000904CE5741EF0E4904CF3F0904D0474FFF7
-:101FB000F0229080107401F080FE2280F5904E9205
-:101FC000EDF09000011203CF904E93F022904DE47B
-:101FD000E0B4020B904CF1E060057F1D1225462213
-:101FE000904CC5E0B40312C3904CE4E09414904CC0
-:101FF000E3E09400402D0207B5904CC5E0B4011415
-:10200000904CE3E07004A3E0642870177F2212086C
-:10201000B60207B5904CE3E07004A3E064147003CB
-:102020001207B522904CF1E0601DE4904CE3F0A360
-:10203000F0904CF1E014F0E0700D7F221208B67FB2
-:102040000A120A7A1207B522121FCD904CE4E0045E
-:10205000F07006904CE3E004F01162121FE011737F
-:1020600080C2904CD3E0600A14F0E070057405F073
-:10207000310222904CCEE030E13E904CD0E0C3944F
-:10208000FA5003E004F0904CD0E064B47037904D07
-:10209000DCE004F0E0D394025007E4904CD0F080F0
-:1020A00024904DDCE0B4031D904DD57401F0E49014
-:1020B0004CD0F01207B5800DE4904DDCF0904DD57A
-:1020C000F0904CD0F0904CCEE030E430904CED7479
-:1020D0000AF0904CD1E0C394FA5003E004F0904C25
-:1020E000D1E0B4061C904CC3E0FF6003B4FE1212B2
-:1020F0000FF27F0A120A7A7F0A02082DE4904CD16F
-:10210000F022904E6612053300000000904C95E0DE
-:10211000FEA3E0FF904CD4E0FD04F0ED25E024D6D2
-:10212000F582E4344CF583EEF0A3EFF0904CD4E06C
-:10213000C394044002E4F0E4904E65F0904E66E0F3
-:10214000F8A3E0F9A3E0FAA3E0FB904E65E025E0F8
-:1021500024D6F582E4344CF583E0FEA3E0FFE4FCF2
-:10216000FDEB2FFFEA3EFEED39FDEC38FC904E66AC
-:10217000120527904E65E004F0E0B404BF904E666F
-:10218000E0FCA3E0FDA3E0FEA3E0FFE47B04FAF99A
-:10219000F8120476904E66120527904CE0E0FEA3FC
-:1021A000E0FFE4FCFD904E66E0F8A3E0F9A3E0FA5E
-:1021B000A3E0FBC31205165007904CD57402F02221
-:1021C000904CDEE0FEA3E0FFE4FCFD904E66E0F8FC
-:1021D000A3E0F9A3E0FAA3E0FBC3120516501790A1
-:1021E0004CD57401F0E4904D3DF0A37448F0A37415
-:1021F00012F0E4A3F022E4904CD5F0904D3DF0A312
-:102200007448F0A3745DF0E4A3F022904CEDE0601C
-:102210000214F0904CF2E0600214F0904CFBE0608D
-:102220000B14F0E07006904CF77406F0904CE5E06B
-:102230006028904CF1E06006E4904CE5F022904C70
-:10224000E5E014F0D2017F1D1207A3904CE5E07089
-:1022500034C2017F1D1207A3802B904CF1E0702542
-:10226000904CE2E0601F14F0E030E109D2017F1DE4
-:102270001207A38007C2017F1D1207A3904CE2E062
-:1022800070037404F0904DD5E07036904DD6E06444
-:1022900001702E904CE3F0A3F0904DD6F0904DE8F5
-:1022A000E0600D7B017A4D79E87D03120ED3801139
-:1022B000904800E0600B7B017A4879007D09120E9E
-:1022C000D3904DDFE0600EE014F0E07008904D47D1
-:1022D000E06002E4F022904CD37405F0E4A3F0FF38
-:1022E000EF25E024D6F582E4344CF5837479F0A32D
-:1022F0007490F00FEFB404E8904C91E0FEA3E0FF7F
-:10230000C3904C94E09FFD904C93E09EFCE412023D
-:10231000067BAE7A477981783F1200FBC004C00586
-:10232000C006C007904C91E0FCA3E0FDE412020659
-:10233000D003D002D001D00012000A12023F904C0C
-:10234000DEEEF0A3EFF0904C91E0FEA3E0FFC3902F
-:102350004C94E09FFD904C93E09EFCE41202067BBF
-:10236000527AB8795E783F1200FBC004C005C006FF
-:10237000C007904C91E0FCA3E0FDE4120206D003FC
-:10238000D002D001D00012000A12023F904CE0EEC1
-:10239000F0A3EFF022904E73EEF0A3EFF0904E75A5
-:1023A000ECF0A3EDF0904E75E0FEA3E0FFD3904E6D
-:1023B00074E09F904E73E09E4016904E75E0FEA331
-:1023C000E0FF904E74E09FFF904E73E09EFE801EF3
-:1023D000904E73E0FEA3E0FFC3904E76E09FFF9027
-:1023E0004E75E09EFEAD03C3EB9FFFE49EFE229080
-:1023F0004E94EEF0A3EFF0A905904B9EE0FEA3E013
-:10240000FFAD0119ED602F0FEFAC0670010E14F552
-:10241000828C83E0FD904E94E475F00112042485D3
-:10242000F082F583EDF0AD07AC06BC4BD4BD9AD17C
-:102430007E4B7F3680CB904B9EEEF0A3EFF0229048
-:102440000446E0FF229082807401F022904E37EB28
-:10245000F0A3EAF0A3E9F0904E3D74FFF5F012040A
-:102460002445F0602A904E3AE0FBA3E475F0011297
-:102470000424A9F0FA1203B6FF904E37E0FBA3E460
-:1024800075F001120424A9F0FAEF1203FC80C822AF
-:10249000904E8AEBF0A3EAF0A3E9F0ED1DAE0470D4
-:1024A000011C4E6017904E8AE0FBA3E475F0011208
-:1024B0000424A9F0FA74FF1203FC80DF22904E4638
-:1024C000EBF0A3EAF0A3E9F0E4FF904E4CE0FEEF5E
-:1024D000C39E5030904E49E0FBA3E0FAA3E0F98F91
-:1024E000827583001203CFFE904E46E0FBA3E0FA14
-:1024F000A3E0F98F827583001203CF6E60037F0023
-:10250000220F80C67F0122EFF4603AEF5407FEEFFE
-:102510001313135403FF24A3F582E43400F583C09E
-:1025200083C082E0FD7401A806088002C333D8FC92
-:10253000F4FC5DD082D083F074A72FF582E43400E0
-:10254000F583E05CF022904E9EEFF07B017A80797B
-:10255000741213879209904E9EE0FFA209B3920174
-:102560000207A3E4FFEFFD7C002478FBEC34808BB2
-:1025700082F583E0FEED2470FDEC34808D82F583DE
-:10258000E04EF4FEEF247CFDEC34808D82F583EE8A
-:07259000F00FEFB404CF22AD
+:101B20004CF77401F022904CF77404F022E4904ECC
+:101B300096F0EF30E005E4904CFBF0904E96EDF01F
+:101B4000904DDBE0640160028126ED1205641B8B81
+:101B5000131BA01B1B931D1BC83A1BD03B1BD83C5F
+:101B60001BE03D1BE83E1BF03F1BF8401C00411CE6
+:101B700008421C10431C18441C20451BC04F1BB8B6
+:101B8000501BB0511BA85200001C26904E96744664
+:101B9000F081267B647D027108E4904E96F08126E8
+:101BA000904E967464F0807E904E96744BF08076E2
+:101BB000904E96744EF0806E904E96744AF0806609
+:101BC000904E96744DF0805E904E9674F1F0805673
+:101BD000904E9674F6F0804E904E9674F7F08046D4
+:101BE000904E9674F8F0803E904E9674F4F08036E5
+:101BF000904E9674F5F0802E904E9674F2F08026FA
+:101C0000904E9674F3F0801E904E9674D6F0801627
+:101C1000904E9674FAF0800E904E9674F9F080060D
+:101C2000904E9674D0F0904E96E0FF22E4FEEFC303
+:101C300094E04020EFD394E7501A904E3FE0FEEF3F
+:101C40005407FF7401A807088002C333D8FC4E90E4
+:101C50004E3FF022E4FE74402EF582E4344EF583CC
+:101C6000E0FD6F601CED7014904DE6E06F60127443
+:101C7000402EF582E4344EF583EFF0220EEEB406EA
+:101C8000D522E4FEFDEF54F064F06007EF54D0FC81
+:101C9000BCD00C904DE7E0B4020B7403F0800690CA
+:101CA0004DD87401F0EFC394E04021EFD394E75096
+:101CB0001B904E3FE0FEEF5407FF7401A807088019
+:101CC00002C333D8FCF45E904E3FF022E4FEED7088
+:101CD0002174402EF582E4344EF583E06F7047EEB8
+:101CE000B4050B2440F582E4344EF583E4F07D0125
+:101CF000803474402EF582E4344EF583E0FC743F6A
+:101D00002EF582E4344EF583ECF074402EF582E437
+:101D1000344EF583E06014EEB4050B2440F582E404
+:101D2000344EF583E4F00EEEB406A322E4904E9711
+:101D3000F0F0904E97E0FFC39408500CC205B149F3
+:101D4000904E97E004F080EA22AC07ECF46017AF05
+:101D500004A2059203B178AF04A205B39202B16761
+:101D6000AF04C204B18922EFF4600C7B017A807960
+:101D700078A2029200B19A22EFF4600C7B017A8083
+:101D8000797CA2039200B19A22EFF4600C7B017A75
+:101D9000807970A2049200B19A22904E8DEBF0A34C
+:101DA000EAF0A3E9F0E4FEFDEF5407FEEF1313138E
+:101DB0005403FD300022904E8DE0FBA3E0FAA3E037
+:101DC0002DF9E43AFA1203B6FF7401A8060880025E
+:101DD000C333D8FC4F0203FC904E8DE0FBA3E0FA26
+:101DE000A3E02DF9E43AFA1203B6FF7401A806083D
+:101DF0008002C333D8FCF45F0203FCE4FF904E7E04
+:101E0000F0FEFDA3F0A3F0EF90063293607CEF9319
+:101E1000FD131313541FFEED5407FD7401A80508AC
+:101E20008002C333D8FCFDEE2478FBE434808B823F
+:101E3000F583E0FCEDF4FBEC5BF0EE2470F582E45E
+:101E40003480F583E04DF0EE2474F582E43480F5BF
+:101E500083E05BF090811CE0F4FC74BC2FF582E41D
+:101E6000344DF583ECF0EE2478FBE434808B82F57E
+:101E700083E04DF0EE2470FBE434808B82F583E048
+:101E8000FCEDF4FBEC5BF00FC107E4FFEF900632D2
+:101E900093607CEF93FD131313541FFEED5407FD65
+:101EA0007401A805088002C333D8FCFDEE2478FB3A
+:101EB000E434808B82F583E0FCEDF4FBEC5BF0EE28
+:101EC0002470F582E43480F583E04DF0EE2474F55F
+:101ED00082E43480F583E05BF090811CE0F4FC74D4
+:101EE000A82FF582E4344DF583ECF0EE2478FBE482
+:101EF00034808B82F583E04DF0EE2470FBE4348077
+:101F00008B82F583E0FCEDF4FBEC5BF00FC18CE41D
+:101F1000FFEF90063293604074BC2FF582E4344D9D
+:101F2000F583E0FE74A82FF582E4344DF583E06E6E
+:101F3000602374BC2FF582E4344DF583C083C082E6
+:101F4000E0FE74A82FF582E4344DF583E0FDEE5DEC
+:101F5000D082D083F00F80B922904E81EBF0A3EABB
+:101F6000F0A3E9F0E4FFEFC39D501B904E81E0FB2E
+:101F7000A3E0FAA3E0F98F827583001203CF600318
+:101F80007F00220F80E07F0122120E491221CD90A6
+:101F90004CEE7401F0904CE5741EF0E4904CF3F0BC
+:101FA000904D0474FFF0229080107401F080FE22A6
+:101FB00080F5904E92EDF09000011203CF904E9379
+:101FC000F02222F1C2904CE4E004F07006904CE361
+:101FD000E004F0122395122068904CCEE030E13EF0
+:101FE000904CD0E0C394FA5003E004F0904CD0E061
+:101FF00064B47037904DDCE004F0E0D394025007F5
+:10200000E4904CD0F08024904DDCE0B4031D904D62
+:10201000D57401F0E4904CD0F01207B5800DE49037
+:102020004DDCF0904DD5F0904CD0F0904CCEE0309F
+:10203000E430904CED740AF0904CD1E0C394FA5027
+:1020400003E004F0904CD1E0B4061C904CC3E0FFD8
+:102050006003B4FE12120FF27F0A120A7A7F0A029C
+:10206000082DE4904CD1F022904CC5E0B40312C38B
+:10207000904CE4E09414904CE3E09400402D02076F
+:10208000B5904CC5E0B40114904CE3E07004A3E0BB
+:10209000642870177F221208B60207B5904CE3E05F
+:1020A0007004A3E0641470031207B522904DE4E0BD
+:1020B0006402702E904CF1E06028E4904CE3F0A3B1
+:1020C000F0904CF1E014F0E030E1047F1D11E3905A
+:1020D0004CF1E0700D7F221208B67F0A120A7A12C4
+:1020E00007B522904E9EEFF07B017A80797412132F
+:1020F000879209904E9EE0FFA209B392010207A3C6
+:1021000011AC904CEDE0600214F0904CF2E06002F3
+:1021100014F0904CFBE0600B14F0E07006904CF76C
+:102120007406F0904CE5E06028904CF1E06006E425
+:10213000904CE5F022904CE5E014F0D2017F1D12A6
+:1021400007A3904CE5E07034C2017F1D1207A38005
+:102150002B904CF1E07025904CE2E0601F14F0E011
+:1021600030E109D2017F1D1207A38007C2017F1D44
+:102170001207A3904CE2E070037404F0904DD5E098
+:102180007036904DD6E06401702E904CE3F0A3F0D1
+:10219000904DD6F0904DE8E0600D7B017A4D79E8E6
+:1021A0007D03120ED38011904800E0600B7B017A12
+:1021B0004879007D09120ED3904DDFE0600EE014E7
+:1021C000F0E07008904D47E06002E4F022904CD3BC
+:1021D0007405F0E4A3F0FFEF25E024D6F582E434A3
+:1021E0004CF5837479F0A37490F00FEFB404E89089
+:1021F0004C91E0FEA3E0FFC3904C94E09FFD904C17
+:1022000093E09EFCE41202067BAE7A477981783F28
+:102210001200FBC004C005C006C007904C91E0FC52
+:10222000A3E0FDE4120206D003D002D001D00012D8
+:10223000000A12023F904CDEEEF0A3EFF0904C91BA
+:10224000E0FEA3E0FFC3904C94E09FFD904C93E030
+:102250009EFCE41202067B527AB8795E783F120047
+:10226000FBC004C005C006C007904C91E0FCA3E091
+:10227000FDE4120206D003D002D001D00012000A01
+:1022800012023F904CE0EEF0A3EFF022904E661267
+:10229000053300000000904C95E0FEA3E0FF904C59
+:1022A000D4E0FD04F0ED25E024D6F582E4344CF5CD
+:1022B00083EEF0A3EFF0904CD4E0C394044002E42A
+:1022C000F0E4904E65F0904E66E0F8A3E0F9A3E0EC
+:1022D000FAA3E0FB904E65E025E024D6F582E434D5
+:1022E0004CF583E0FEA3E0FFE4FCFDEB2FFFEA3EAC
+:1022F000FEED39FDEC38FC904E66120527904E65D8
+:10230000E004F0E0B404BF904E66E0FCA3E0FDA35F
+:10231000E0FEA3E0FFE47B04FAF9F8120476904EA5
+:1023200066120527904CE0E0FEA3E0FFE4FCFD9080
+:102330004E66E0F8A3E0F9A3E0FAA3E0FBC31205C0
+:10234000165007904CD57402F022904CDEE0FEA3AC
+:10235000E0FFE4FCFD904E66E0F8A3E0F9A3E0FAAC
+:10236000A3E0FBC31205165017904CD57401F0E49E
+:10237000904D3DF0A37448F0A37412F0E4A3F02252
+:10238000E4904CD5F0904D3DF0A37448F0A3745DFB
+:10239000F0E4A3F022904CD3E0600A14F0E0700562
+:1023A0007405F0518C22904E73EEF0A3EFF0904E36
+:1023B00075ECF0A3EDF0904E75E0FEA3E0FFD39036
+:1023C0004E74E09F904E73E09E4016904E75E0FE76
+:1023D000A3E0FF904E74E09FFF904E73E09EFE805E
+:1023E0001E904E73E0FEA3E0FFC3904E76E09FFF89
+:1023F000904E75E09EFEAD03C3EB9FFFE49EFE2270
+:10240000904E94EEF0A3EFF0A905904B9EE0FEA352
+:10241000E0FFAD0119ED602F0FEFAC0670010E1457
+:10242000F5828C83E0FD904E94E475F00112042453
+:1024300085F082F583EDF0AD07AC06BC4BD4BD9AB8
+:10244000D17E4B7F3680CB904B9EEEF0A3EFF022F7
+:10245000900446E0FF229082807401F022904E3773
+:10246000EBF0A3EAF0A3E9F0904E3D74FFF5F01213
+:10247000042445F0602A904E3AE0FBA3E475F00195
+:10248000120424A9F0FA1203B6FF904E37E0FBA322
+:10249000E475F001120424A9F0FAEF1203FC80C8DD
+:1024A00022904E8AEBF0A3EAF0A3E9F0ED1DAE0412
+:1024B00070011C4E6017904E8AE0FBA3E475F0019A
+:1024C000120424A9F0FA74FF1203FC80DF22904E5C
+:1024D00046EBF0A3EAF0A3E9F0E4FF904E4CE0FEF7
+:1024E000EFC39E5030904E49E0FBA3E0FAA3E0F921
+:1024F0008F827583001203CFFE904E46E0FBA3E06F
+:10250000FAA3E0F98F827583001203CF6E60037F18
+:1025100000220F80C67F0122EFF4603AEF5407FEDD
+:10252000EF1313135403FF24A3F582E43400F5835F
+:10253000C083C082E0FD7401A806088002C333D8BE
+:10254000FCF4FC5DD082D083F074A72FF582E434D4
+:1025500000F583E05CF022E4FFEFFD7C002478FBD3
+:10256000EC34808B82F583E0FEED2470FDEC34804A
+:102570008D82F583E04EF4FEEF247CFDEC34808DFB
+:0B25800082F583EEF00FEFB404CF22D1
 :00000001FF
Index: c51/output/fwram.rom
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/output/fwram.rom	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/output/fwram.rom	(working copy)
@@ -1572,17 +1572,17 @@
 00
 00
 ff
-20
-48
+1f
+c3
 ff
-22
-0b
+21
+00
 00
 00
 00
 ff
 1f
-bd
+b2
 00
 16
 08
@@ -1969,7 +1969,7 @@
 00
 12
 1d
-a5
+9a
 22
 90
 4b
@@ -2021,7 +2021,7 @@
 04
 12
 1d
-94
+89
 af
 04
 a2
@@ -2036,7 +2036,7 @@
 02
 12
 1d
-72
+67
 22
 e4
 ff
@@ -2209,7 +2209,7 @@
 4c
 f1
 74
-f0
+c8
 f0
 e4
 90
@@ -2317,7 +2317,7 @@
 64
 12
 23
-95
+a6
 90
 4e
 57
@@ -2451,7 +2451,7 @@
 ed
 12
 1f
-94
+89
 7b
 01
 7a
@@ -4043,7 +4043,7 @@
 f0
 12
 1d
-37
+2c
 e4
 90
 4e
@@ -4065,7 +4065,7 @@
 05
 12
 1d
-54
+49
 90
 4e
 98
@@ -4545,7 +4545,7 @@
 b0
 12
 25
-63
+57
 90
 81
 1c
@@ -5172,7 +5172,7 @@
 86
 12
 24
-4c
+5d
 90
 0b
 83
@@ -5318,8 +5318,8 @@
 7d
 03
 12
-23
-ef
+24
+00
 90
 4e
 84
@@ -5498,8 +5498,8 @@
 a3
 f0
 12
-1e
-06
+1d
+fb
 7a
 4d
 79
@@ -5530,7 +5530,7 @@
 bc
 12
 24
-bd
+ce
 ef
 60
 17
@@ -5544,7 +5544,7 @@
 14
 12
 1f
-64
+59
 ef
 70
 09
@@ -5972,7 +5972,7 @@
 ff
 12
 1c
-37
+2c
 80
 08
 90
@@ -5982,7 +5982,7 @@
 ff
 12
 1c
-8d
+82
 90
 4e
 26
@@ -6955,14 +6955,12 @@
 04
 f0
 22
-ae
-07
 e4
 90
 4e
 96
 f0
-ee
+ef
 30
 e0
 05
@@ -6985,72 +6983,72 @@
 60
 02
 81
-31
+26
 ed
 12
 05
 64
 1b
-8d
+8b
 13
 1b
-a4
+a0
 1b
 1b
-95
+93
 1d
 1b
-d3
+c8
 3a
 1b
-db
+d0
 3b
 1b
-e3
+d8
 3c
 1b
-eb
+e0
 3d
 1b
-f3
+e8
 3e
 1b
-fb
+f0
 3f
-1c
-03
+1b
+f8
 40
 1c
-0b
+00
 41
 1c
-13
+08
 42
 1c
-1b
+10
 43
 1c
-23
+18
 44
 1c
-2b
+20
 45
 1b
-cb
+c0
 4f
 1b
-c3
+b8
 50
 1b
-bb
+b0
 51
 1b
-b3
+a8
 52
 00
 00
 1c
-31
+26
 90
 4e
 96
@@ -7058,11 +7056,9 @@
 46
 f0
 81
-31
-af
-06
+26
 7b
-37
+64
 7d
 02
 71
@@ -7073,19 +7069,12 @@
 96
 f0
 81
-31
-af
-06
-7b
-36
-7d
-02
-71
-08
-e4
+26
 90
 4e
 96
+74
+64
 f0
 80
 7e
@@ -7496,7 +7485,7 @@
 c2
 05
 b1
-54
+49
 90
 4e
 97
@@ -7519,7 +7508,7 @@
 92
 03
 b1
-83
+78
 af
 04
 a2
@@ -7528,13 +7517,13 @@
 92
 02
 b1
-72
+67
 af
 04
 c2
 04
 b1
-94
+89
 22
 ef
 f4
@@ -7551,7 +7540,7 @@
 92
 00
 b1
-a5
+9a
 22
 ef
 f4
@@ -7568,7 +7557,7 @@
 92
 00
 b1
-a5
+9a
 22
 ef
 f4
@@ -7585,7 +7574,7 @@
 92
 00
 b1
-a5
+9a
 22
 90
 4e
@@ -7826,7 +7815,7 @@
 f0
 0f
 c1
-12
+07
 e4
 ff
 ef
@@ -7959,7 +7948,7 @@
 f0
 0f
 c1
-97
+8c
 e4
 ff
 ef
@@ -8086,8 +8075,8 @@
 0e
 49
 12
-22
-d6
+21
+cd
 90
 4c
 ee
@@ -8139,245 +8128,102 @@
 93
 f0
 22
+22
+f1
+c2
 90
-4d
+4c
 e4
 e0
-b4
-02
-0b
+04
+f0
+70
+06
 90
 4c
-f1
+e3
 e0
-60
-05
-7f
-1d
+04
+f0
 12
-25
-46
-22
-90
-4c
-c5
-e0
-b4
-03
+23
+95
 12
-c3
+20
+68
 90
 4c
-e4
+ce
 e0
-94
-14
+30
+e1
+3e
 90
 4c
-e3
+d0
 e0
+c3
 94
-00
-40
-2d
-02
-07
-b5
-90
-4c
-c5
+fa
+50
+03
 e0
-b4
-01
-14
+04
+f0
 90
 4c
-e3
-e0
-70
-04
-a3
+d0
 e0
 64
-28
+b4
 70
-17
-7f
-22
-12
-08
-b6
-02
-07
-b5
+37
 90
-4c
-e3
+4d
+dc
 e0
-70
 04
-a3
+f0
 e0
-64
-14
-70
-03
-12
+d3
+94
+02
+50
 07
-b5
-22
+e4
 90
 4c
-f1
+d0
+f0
+80
+24
+90
+4d
+dc
 e0
-60
+b4
+03
 1d
+90
+4d
+d5
+74
+01
+f0
 e4
 90
 4c
-e3
+d0
 f0
-a3
-f0
-90
-4c
-f1
-e0
-14
-f0
-e0
-70
-0d
-7f
-22
-12
-08
-b6
-7f
-0a
-12
-0a
-7a
-12
-07
-b5
-22
-12
-1f
-cd
-90
-4c
-e4
-e0
-04
-f0
-70
-06
-90
-4c
-e3
-e0
-04
-f0
-11
-62
-12
-1f
-e0
-11
-73
-80
-c2
-90
-4c
-d3
-e0
-60
-0a
-14
-f0
-e0
-70
-05
-74
-05
-f0
-31
-02
-22
-90
-4c
-ce
-e0
-30
-e1
-3e
-90
-4c
-d0
-e0
-c3
-94
-fa
-50
-03
-e0
-04
-f0
-90
-4c
-d0
-e0
-64
-b4
-70
-37
-90
-4d
-dc
-e0
-04
-f0
-e0
-d3
-94
-02
-50
-07
-e4
-90
-4c
-d0
-f0
-80
-24
-90
-4d
-dc
-e0
-b4
-03
-1d
-90
-4d
-d5
-74
-01
-f0
-e4
-90
-4c
-d0
-f0
-12
-07
-b5
-80
-0d
-e4
-90
-4d
-dc
+12
+07
+b5
+80
+0d
+e4
+90
+4d
+dc
 f0
 90
 4d
@@ -8449,270 +8295,159 @@
 f0
 22
 90
-4e
-66
-12
-05
-33
-00
-00
-00
-00
-90
 4c
-95
-e0
-fe
-a3
+c5
 e0
-ff
+b4
+03
+12
+c3
 90
 4c
-d4
-e0
-fd
-04
-f0
-ed
-25
-e0
-24
-d6
-f5
-82
 e4
-34
-4c
-f5
-83
-ee
-f0
-a3
-ef
-f0
+e0
+94
+14
 90
 4c
-d4
+e3
 e0
-c3
 94
-04
+00
 40
+2d
 02
-e4
-f0
-e4
+07
+b5
 90
-4e
-65
-f0
+4c
+c5
+e0
+b4
+01
+14
 90
-4e
-66
+4c
+e3
 e0
-f8
+70
+04
 a3
 e0
-f9
-a3
+64
+28
+70
+17
+7f
+22
+12
+08
+b6
+02
+07
+b5
+90
+4c
+e3
 e0
-fa
+70
+04
 a3
 e0
-fb
+64
+14
+70
+03
+12
+07
+b5
+22
 90
-4e
-65
-e0
-25
-e0
-24
-d6
-f5
-82
+4d
 e4
-34
-4c
-f5
-83
 e0
-fe
-a3
+64
+02
+70
+2e
+90
+4c
+f1
 e0
-ff
+60
+28
 e4
-fc
-fd
-eb
-2f
-ff
-ea
-3e
-fe
-ed
-39
-fd
-ec
-38
-fc
 90
-4e
-66
-12
-05
-27
+4c
+e3
+f0
+a3
+f0
 90
-4e
-65
+4c
+f1
 e0
-04
+14
 f0
 e0
-b4
+30
+e1
 04
-bf
+7f
+1d
+11
+e3
 90
-4e
-66
-e0
-fc
-a3
-e0
-fd
-a3
-e0
-fe
-a3
+4c
+f1
 e0
-ff
-e4
-7b
-04
-fa
-f9
-f8
+70
+0d
+7f
+22
 12
-04
-76
-90
-4e
-66
+08
+b6
+7f
+0a
 12
-05
-27
-90
-4c
-e0
-e0
-fe
-a3
-e0
-ff
-e4
-fc
-fd
-90
-4e
-66
-e0
-f8
-a3
-e0
-f9
-a3
-e0
-fa
-a3
-e0
-fb
-c3
+0a
+7a
 12
-05
-16
-50
 07
-90
-4c
-d5
-74
-02
-f0
+b5
 22
 90
-4c
-de
-e0
-fe
-a3
-e0
-ff
-e4
-fc
-fd
-90
 4e
-66
-e0
-f8
-a3
-e0
-f9
-a3
-e0
-fa
-a3
-e0
-fb
-c3
-12
-05
-16
-50
-17
-90
-4c
-d5
-74
-01
-f0
-e4
-90
-4d
-3d
-f0
-a3
-74
-48
+9e
+ef
 f0
-a3
+7b
+01
+7a
+80
+79
 74
 12
-f0
-e4
-a3
-f0
-22
-e4
-90
-4c
-d5
-f0
+13
+87
+92
+09
 90
-4d
-3d
-f0
-a3
-74
-48
-f0
-a3
-74
-5d
-f0
-e4
+4e
+9e
+e0
+ff
+a2
+09
+b3
+92
+01
+02
+07
 a3
-f0
-22
+11
+ac
 90
 4c
 ed
@@ -8954,158 +8689,440 @@
 4c
 91
 e0
-fe
+fe
+a3
+e0
+ff
+c3
+90
+4c
+94
+e0
+9f
+fd
+90
+4c
+93
+e0
+9e
+fc
+e4
+12
+02
+06
+7b
+ae
+7a
+47
+79
+81
+78
+3f
+12
+00
+fb
+c0
+04
+c0
+05
+c0
+06
+c0
+07
+90
+4c
+91
+e0
+fc
+a3
+e0
+fd
+e4
+12
+02
+06
+d0
+03
+d0
+02
+d0
+01
+d0
+00
+12
+00
+0a
+12
+02
+3f
+90
+4c
+de
+ee
+f0
+a3
+ef
+f0
+90
+4c
+91
+e0
+fe
+a3
+e0
+ff
+c3
+90
+4c
+94
+e0
+9f
+fd
+90
+4c
+93
+e0
+9e
+fc
+e4
+12
+02
+06
+7b
+52
+7a
+b8
+79
+5e
+78
+3f
+12
+00
+fb
+c0
+04
+c0
+05
+c0
+06
+c0
+07
+90
+4c
+91
+e0
+fc
+a3
+e0
+fd
+e4
+12
+02
+06
+d0
+03
+d0
+02
+d0
+01
+d0
+00
+12
+00
+0a
+12
+02
+3f
+90
+4c
+e0
+ee
+f0
+a3
+ef
+f0
+22
+90
+4e
+66
+12
+05
+33
+00
+00
+00
+00
+90
+4c
+95
+e0
+fe
+a3
+e0
+ff
+90
+4c
+d4
+e0
+fd
+04
+f0
+ed
+25
+e0
+24
+d6
+f5
+82
+e4
+34
+4c
+f5
+83
+ee
+f0
+a3
+ef
+f0
+90
+4c
+d4
+e0
+c3
+94
+04
+40
+02
+e4
+f0
+e4
+90
+4e
+65
+f0
+90
+4e
+66
+e0
+f8
+a3
+e0
+f9
+a3
+e0
+fa
+a3
+e0
+fb
+90
+4e
+65
+e0
+25
+e0
+24
+d6
+f5
+82
+e4
+34
+4c
+f5
+83
+e0
+fe
+a3
+e0
+ff
+e4
+fc
+fd
+eb
+2f
+ff
+ea
+3e
+fe
+ed
+39
+fd
+ec
+38
+fc
+90
+4e
+66
+12
+05
+27
+90
+4e
+65
+e0
+04
+f0
+e0
+b4
+04
+bf
+90
+4e
+66
+e0
+fc
 a3
 e0
-ff
-c3
-90
-4c
-94
-e0
-9f
 fd
-90
-4c
-93
+a3
 e0
-9e
-fc
+fe
+a3
+e0
+ff
 e4
-12
-02
-06
 7b
-ae
-7a
-47
-79
-81
-78
-3f
+04
+fa
+f9
+f8
 12
-00
-fb
-c0
 04
-c0
+76
+90
+4e
+66
+12
 05
-c0
-06
-c0
-07
+27
 90
 4c
-91
 e0
-fc
+e0
+fe
 a3
 e0
-fd
+ff
 e4
+fc
+fd
+90
+4e
+66
+e0
+f8
+a3
+e0
+f9
+a3
+e0
+fa
+a3
+e0
+fb
+c3
 12
-02
-06
-d0
-03
-d0
-02
-d0
-01
-d0
-00
-12
-00
-0a
-12
-02
-3f
+05
+16
+50
+07
 90
 4c
-de
-ee
-f0
-a3
-ef
+d5
+74
+02
 f0
+22
 90
 4c
-91
+de
 e0
 fe
 a3
 e0
 ff
-c3
+e4
+fc
+fd
 90
-4c
-94
+4e
+66
 e0
-9f
-fd
+f8
+a3
+e0
+f9
+a3
+e0
+fa
+a3
+e0
+fb
+c3
+12
+05
+16
+50
+17
 90
 4c
-93
-e0
-9e
-fc
+d5
+74
+01
+f0
 e4
+90
+4d
+3d
+f0
+a3
+74
+48
+f0
+a3
+74
 12
-02
-06
-7b
-52
-7a
-b8
-79
-5e
-78
-3f
-12
-00
-fb
-c0
-04
-c0
-05
-c0
-06
-c0
-07
+f0
+e4
+a3
+f0
+22
+e4
 90
 4c
-91
-e0
-fc
+d5
+f0
+90
+4d
+3d
+f0
 a3
-e0
-fd
+74
+48
+f0
+a3
+74
+5d
+f0
 e4
-12
-02
-06
-d0
-03
-d0
-02
-d0
-01
-d0
-00
-12
-00
-0a
-12
-02
-3f
+a3
+f0
+22
 90
 4c
+d3
 e0
-ee
+60
+0a
+14
 f0
-a3
-ef
+e0
+70
+05
+74
+05
 f0
+51
+8c
 22
 90
 4e
@@ -9540,35 +9557,6 @@
 5c
 f0
 22
-90
-4e
-9e
-ef
-f0
-7b
-01
-7a
-80
-79
-74
-12
-13
-87
-92
-09
-90
-4e
-9e
-e0
-ff
-a2
-09
-b3
-92
-01
-02
-07
-a3
 e4
 ff
 ef
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
Index: c51/sys.h
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/sys.h	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/sys.h	(working copy)
@@ -8,10 +8,11 @@
 #define STANDBY_TIMER_10MIN				1200		// 500ms*1200 = 10min
 #define RECONNECT_TIMER_5S				10			// 500ms*10 = 5s
 #define RECONNECT_TIMER_10S			20			// 500ms*20 = 10s
+#define RECONNECT_TIMER_20S			40			// 500ms*20 = 10s
 
 #define BT_PAIRING_TIME_OUT_2MIN		240			// 500ms*240 = 2min
 #define BT_PAIRING_TIME_OUT_1MIN		120			// 500ms*120 = 1min
-#define G24_PAIRING_TIME_OUT_20S		40			// 500ms*40 = 20s
+#define G24_PAIRING_TIME_OUT_20S		200			// 100ms*200 = 20s
 
 #define KB_NUM_CAPS_LED_ON_TIMER    	360			// 500ms*12 = 6s
 
Index: c51/sys.c
===================================================================
--- /YJX_KB_Project/1026_KB/K933/c51/sys.c	(revision 350)
+++ /YJX_KB_Project/1026_KB/K933/c51/sys.c	(working copy)
@@ -176,16 +176,7 @@
 
 void LED_timer500ms()
 {
-	if (power_on_flag != 2)
-		return;
- 	if (g_variable.pairing_g24_timeout != 0)
-	{
-		GPIO_FlipOutBit(G24_LED_GPIO);
-	}
-	else
-	{
-		
-	}
+
 }
 
 void YC_connect_timeout_500ms()
@@ -208,7 +199,7 @@
 	}
 	else if(g_variable.g24_currentState == CHANGE_TO_24G_PAIRING)
 	{
-		if (g_variable.sleepTimer == G24_PAIRING_TIME_OUT_20S)
+		if (g_variable.sleepTimer == RECONNECT_TIMER_20S)
 		{
 			IPC_TxControlCmd(IPC_CMD_STOP_24G);
 			System_long_sleep();
@@ -225,13 +216,21 @@
 
 
 
-void YC_pairing_timerout_500ms()
+void YC_pairing_timerout_100ms()
 {
 //pairing timer
-	if (g_variable.pairing_g24_timeout != 0)
+	if (power_on_flag != 2)
+		return;
+		
+	if(g_variable.pairing_g24_timeout != 0)
 	{
 		g_variable.sleepTimer = 0;
 		g_variable.pairing_g24_timeout--;
+
+		if (g_variable.pairing_g24_timeout & 0x02)
+		{
+			GPIO_FlipOutBit(G24_LED_GPIO);
+		}
 		if (g_variable.pairing_g24_timeout == 0)
 		{
 			IPC_TxControlCmd(IPC_CMD_STOP_24G);
@@ -302,7 +301,7 @@
 	YC_adc_check_timer500ms();
 	YC_connect_timeout_500ms();
 	kb_button_press_timer500ms();
-	YC_pairing_timerout_500ms();
+	
 	
 	return;
 }
@@ -311,6 +310,9 @@
 static void kb_cb_Timer100ms()
 {
 
+	YC_pairing_timerout_100ms();
+
+
 	if (g_variable.delay_enter_lpm_timer) 
 	{
 		g_variable.delay_enter_lpm_timer --;
