Index: format/rom.format
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/format/rom.format	(revision 4518)
+++ /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/format/rom.format	(working copy)
@@ -387,14 +387,14 @@
 8 page_interval_timer
 9 key_scan_timer
 10 smp_pairing_timer
-11  ui_led_blink   //led timer ¿ÉÀ©Õ¹
+11  ui_led_blink   //led timer ï¿½ï¿½ï¿½ï¿½Õ¹
 12  ui_led_blink1
 13 ui_led_blink2
 
-//²»Ê¹ÓÃmeshÓ¦ÓÃ¿ÉÒÔ¸´ÓÃ
-//Tiny Mesh ¹ã²¥APP»Ø¸´
+//ï¿½ï¿½Ê¹ï¿½ï¿½meshÓ¦ï¿½Ã¿ï¿½ï¿½Ô¸ï¿½ï¿½ï¿½
+//Tiny Mesh ï¿½ã²¥APPï¿½Ø¸ï¿½
 13 mesh_ble_adv_app
-//Tiny Mesh¹ã²¥tmall»Ø¸´
+//Tiny Meshï¿½ã²¥tmallï¿½Ø¸ï¿½
 14 mesh_ble_adv_tmall
 //Tiny Mesh relay
 15 mesh_ble_relay_timer
@@ -1597,33 +1597,33 @@
 )
 (//Timer opcode
 0x01A8 VENDOR_MESSAGE_OPCODE_COMPANY_ID
-//Ê±¼ä
+//Ê±ï¿½ï¿½
 0xF01F VENDOR_MESSAGE_ATTR_TYPE_TIME
-//Ê±Çø
+//Ê±ï¿½ï¿½
 0xF01E VENDOR_MESSAGE_ATTR_TYPE_TIME_ZONE
-//¶ÔÊ±
+//ï¿½ï¿½Ê±
 0xF01D VENDOR_MESSAGE_ATTR_TYPE_ON_TIME
-//¶¨Ê±
+//ï¿½ï¿½Ê±
 0xF010 VENDOR_MESSAGE_ATTR_TYPE_TIMING
-//ÖÜÆÚ¶¨Ê±
+//ï¿½ï¿½ï¿½Ú¶ï¿½Ê±
 0xF011 VENDOR_MESSAGE_ATTR_TYPE_CYCLE_TIMING
-//É¾³ý¶¨Ê±
+//É¾ï¿½ï¿½ï¿½ï¿½Ê±
 0xF012 VENDOR_MESSAGE_ATTR_TYPE_DELETE_TIMING
 
-//ÑÕÉ«
+//ï¿½ï¿½É«
 0x0123 VENDOR_MESSAGE_ATTR_TYPE_COLOR
-//Ö÷µÆ
+//ï¿½ï¿½ï¿½ï¿½
 0x0534 VENDOR_MESSAGE_ATTR_TYPE_MAIN_LIGHT
-//±³¹âµÆ
+//ï¿½ï¿½ï¿½ï¿½ï¿½
 0x0533 VENDOR_MESSAGE_ATTR_TYPE_BACKGROUND_LIGHT
 )
-(//ÌìÃ¨eventÊÂ¼þ±í
-//Éè±¸·¢ÉúµÄÊÂ¼þ£¬±ÈÈçÉÏµç»òÕß¶¨Ê±Íê³É
+(//ï¿½ï¿½Ã¨eventï¿½Â¼ï¿½ï¿½ï¿½
+//ï¿½è±¸ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Â¼ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ïµï¿½ï¿½ï¿½ß¶ï¿½Ê±ï¿½ï¿½ï¿½
 0xF009 VENDOR_ATTR_TYPE_EVENT_TRIGGER
 
-//ÌìÃ¨Éè±¸ÉÏµç
+//ï¿½ï¿½Ã¨ï¿½è±¸ï¿½Ïµï¿½
 0x03 VENDOR_MESSAGE_EVENT_DEVICE_POWER_ON
-//ÌìÃ¨¶¨Ê±Íê³É
+//ï¿½ï¿½Ã¨ï¿½ï¿½Ê±ï¿½ï¿½ï¿½
 0x11 VENDOR_MESSAGE_EVENT_FINISH_TIMING
 )
 (
@@ -1649,7 +1649,7 @@
 (//transport mic cache parameter
 10 TRANSPORT_MIC_CACHE_SPACE_NUM
 4 TRANSPORT_MIC_CACHE_SPACE_SIZE
-//×Ü³¤¶ÈÉÙÒ»¸öspace
+//ï¿½Ü³ï¿½ï¿½ï¿½ï¿½ï¿½Ò»ï¿½ï¿½space
 36 TRANSPORT_MIC_CACHE_TOTAL_SIZE
 )
 (
@@ -1676,24 +1676,24 @@
 1 DEVICE_BEACON_ON
 )
 (
-//Î´ÅäÍø¹ã²¥³¬Ê±10min
+//Î´ï¿½ï¿½ï¿½ï¿½ï¿½ã²¥ï¿½ï¿½Ê±10min
 0x1770	ADV_UNPROVISIONED_DEVICE_BEACON_TIMEOUT
-//Î´ÅäÍø¹ã²¥¼ä¸ô500ms
+//Î´ï¿½ï¿½ï¿½ï¿½ï¿½ã²¥ï¿½ï¿½ï¿½500ms
 5		ADV_UNPROVISIONED_DEVICE_BEACON_INTERVAL
-//Î´ÅäÍø¹ã²¥Ê±³¤120ms=20ms*6
+//Î´ï¿½ï¿½ï¿½ï¿½ï¿½ã²¥Ê±ï¿½ï¿½120ms=20ms*6
 6		ADV_UNPROVISIONED_DEVICE_BEACON_DURATION
 
-//¾²Ä¬¹ã²¥³¬Ê±:ÎÞ
+//ï¿½ï¿½Ä¬ï¿½ã²¥ï¿½ï¿½Ê±:ï¿½ï¿½
 0		ADV_SILENCE_DEVICE_BEACON_TIMEOUT
-//¾²Ä¬¹ã²¥¼ä¸ô60s
+//ï¿½ï¿½Ä¬ï¿½ã²¥ï¿½ï¿½ï¿½60s
 600		ADV_SILENCE_DEVICE_BEACON_INTERVAL
-//¾²Ä¬¹ã²¥Ê±³¤120ms=20ms*6
+//ï¿½ï¿½Ä¬ï¿½ã²¥Ê±ï¿½ï¿½120ms=20ms*6
 6		ADV_SILENCE_DEVICE_BEACON_DURATION
 
 
-//ÅäÍøºó¹ã²¥¼ä¸ô
+//ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ã²¥ï¿½ï¿½ï¿½
 0x54		ADV_PAIRING_MESH_MESSAGE_INTERVAL
-//ÅäÍøºó¹ã²¥Ê±³¤
+//ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ã²¥Ê±ï¿½ï¿½
 20		ADV_PAIRING_MESH_MESSAGE_DURATION
 
 10		ADV_RELAY_MESH_MESSAGE_DURATION
@@ -1704,9 +1704,9 @@
 6 BIT_OF_ADV_IN_OFF
 )
 (
-//mesh »Ø¸´APP¹ã²¥¼ä¸ô24*0.625ms = 15ms
+//mesh ï¿½Ø¸ï¿½APPï¿½ã²¥ï¿½ï¿½ï¿½24*0.625ms = 15ms
 0x15 MESH_ADV_APP_MESSAGE_INTERVAL
-//mesh»Ø¸´tmall¹ã²¥¼ä¸ô32*0.625ms = 20ms
+//meshï¿½Ø¸ï¿½tmallï¿½ã²¥ï¿½ï¿½ï¿½32*0.625ms = 20ms
 0x1d MESH_ADV_TMALL_MESSAGE_INTERVAL
 )
 (
@@ -2104,7 +2104,8 @@
 6 power_starting_cb_offset
 8 power_standby_cb_offset
 10 ui_butten_up_cb_offset
-)
+)
+
 (
 0x9000 mem_b_box
 0x9100 mem_e_box
@@ -2320,20 +2321,20 @@
 )
 (
 0xa2 COMMAND_TEST	//BYTE 0
-0x81 COM_TEST_SC		//	½øÈëµ¥ÔØ²¨
-0x82 COM_TEST_CD		// fcc²âÊÔ
-0x83 COM_TEST_DAT		// Êý¾Ý²âÊÔ
-0x84 COM_TEST_LOW_CH  //µÍÆµµã
-0x85 COM_TEST_MID_CH	//ÖÐÆµµã
-0x86 COM_TEST_HIG_CH	//¸ßÆµµã
-0x87 COM_TEST_SW_HIG	//×Ô¶¯ÇÐ»»ÆµµãÎª¸ß 1mhz
-0x88 COIM_TEST_SW_LOW	//×Ô¶¯ÇÐ»»ÆµµãÎªµÍ 1mhz
-0x89 COM_TEST_SW_STOP	//Í£Ö¹×Ô¶¯ÇÐ»»Æµµã
-0x8a COM_TEST_POW_5		//ÉèÖÃÊä³ö¹¦ÂÊ5dbm
+0x81 COM_TEST_SC		//	ï¿½ï¿½ï¿½ëµ¥ï¿½Ø²ï¿½
+0x82 COM_TEST_CD		// fccï¿½ï¿½ï¿½ï¿½
+0x83 COM_TEST_DAT		// ï¿½ï¿½ï¿½Ý²ï¿½ï¿½ï¿½
+0x84 COM_TEST_LOW_CH  //ï¿½ï¿½Æµï¿½ï¿½
+0x85 COM_TEST_MID_CH	//ï¿½ï¿½Æµï¿½ï¿½
+0x86 COM_TEST_HIG_CH	//ï¿½ï¿½Æµï¿½ï¿½
+0x87 COM_TEST_SW_HIG	//ï¿½Ô¶ï¿½ï¿½Ð»ï¿½Æµï¿½ï¿½Îªï¿½ï¿½ 1mhz
+0x88 COIM_TEST_SW_LOW	//ï¿½Ô¶ï¿½ï¿½Ð»ï¿½Æµï¿½ï¿½Îªï¿½ï¿½ 1mhz
+0x89 COM_TEST_SW_STOP	//Í£Ö¹ï¿½Ô¶ï¿½ï¿½Ð»ï¿½Æµï¿½ï¿½
+0x8a COM_TEST_POW_5		//ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½5dbm
 0x8b COM_TEST_POW_0		//0dbm
 0x8c COM_TEST_POW_N5		//-5dbm
 0x8d COM_TEST_POW_N10		//-10dbm
-0x8e COM_TEST_EXIT			//ÍË³ö²âÊÔÄ£Ê½
+0x8e COM_TEST_EXIT			//ï¿½Ë³ï¿½ï¿½ï¿½ï¿½ï¿½Ä£Ê½
 )
 (
 0xa6 COMMAND_CURRENT_PROJECT
@@ -7149,7 +7150,7 @@
 	1 mem_mesh_access_layer_payload_len
 	0 mem_mesh_access_layer_payload
 	50 mem_mesh_access_payload
-	50 mem_mesh_access_payload_padding	//ÎªÁËÍ¸´«Ä£¿éÔ¤Áô
+	50 mem_mesh_access_payload_padding	//Îªï¿½ï¿½Í¸ï¿½ï¿½Ä£ï¿½ï¿½Ô¤ï¿½ï¿½
 )
 memalloc ali_mesh(
 	0 mem_mesh_queue_ele_temp
@@ -7658,7 +7659,7 @@
 
 )
 amemalloc mem_mesh_receive_model_message_payload(
-	//Scene recall Ä£Ê½ÉèÖÃ
+	//Scene recall Ä£Ê½ï¿½ï¿½ï¿½ï¿½
 	1 mem_mesh_module_message_opcode_scene_recall
 	2 mem_mesh_scene_recall_payload_scene_number
 	1 mem_mesh_scene_recall_payload_TID
@@ -8616,12 +8617,12 @@
 )
 xmemalloc ali_mesh(
 	1 mem_mesh_advertising_unprovisioned_device_beacon_switch
-	//Î´ÅäÍø¹ã²¥¼ä¸ô
+	//Î´ï¿½ï¿½ï¿½ï¿½ï¿½ã²¥ï¿½ï¿½ï¿½
 	2 mem_mesh_advertising_unprovisioned_device_beacon_timer
 
-	//¹ã²¥Éú´æÖÜÆÚ
+	//ï¿½ã²¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½
 	1 mem_mesh_advertising_unprovisioned_device_beacon_duration
-	//¹ã²¥ÖÜÆÚÖ®¼äµÄ¼ä¸ô
+	//ï¿½ã²¥ï¿½ï¿½ï¿½ï¿½Ö®ï¿½ï¿½Ä¼ï¿½ï¿½
 	1 mem_mesh_advertising_unprovisioned_device_beacon_interval
 
 )
@@ -8691,10 +8692,10 @@
 )
 xmemalloc ali_mesh(
 
-	// provisioning flag ±êÖ¾ÊÇ·ñÈëÍø
+	// provisioning flag ï¿½ï¿½Ö¾ï¿½Ç·ï¿½ï¿½ï¿½ï¿½ï¿½
 	1 mem_mesh_provisioned_flag
 
-	//ÈëÍøÊ±µÄ×´Ì¬»ú
+	//ï¿½ï¿½ï¿½ï¿½Ê±ï¿½ï¿½×´Ì¬ï¿½ï¿½
 	1 mem_mesh_Provisioning_State_Flag
 	
 	1 mem_mesh_Device_PID
@@ -8717,7 +8718,7 @@
 
 )
 xmemalloc ali_mesh(
-//GATT Ð­Òé
+//GATT Ð­ï¿½ï¿½
 	1 mem_mesh_gatt_receive_msg_timer
 	//fast pairing 
 	//APP control 
@@ -8727,22 +8728,22 @@
 
 )
 xmemalloc ali_mesh(
-	// three tuple °¢ÀïÔÆÆ½Ì¨·ÖÅäµÄÈýÔª×é
+	// three tuple ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Æ½Ì¨ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ôªï¿½ï¿½
 	4 mem_mesh_three_tuple_ProductID
 	6 mem_mesh_three_tuple_MAC
 	16 mem_mesh_three_tuple_secret
 
-	//ble ºËÐÄÐ­ÒéÕ»£¬scanµ½Êý¾ÝµÄ»Øµ÷
+	//ble ï¿½ï¿½ï¿½ï¿½Ð­ï¿½ï¿½Õ»ï¿½ï¿½scanï¿½ï¿½ï¿½ï¿½ï¿½ÝµÄ»Øµï¿½
 	2 mem_mesh_cb_receive_advertising
 
-	//alarm¼Ä´æÆ÷²»ÄÜÐÞ¸Ä
-	//meshºËÐÄ¹æ·¶½ÓÊÕµ½ÈÎºÎTMALLÖ¸Áî
+	//alarmï¿½Ä´ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¸ï¿½
+	//meshï¿½ï¿½ï¿½Ä¹æ·¶ï¿½ï¿½ï¿½Õµï¿½ï¿½Îºï¿½TMALLÖ¸ï¿½ï¿½
 	2 mem_mesh_cb_receive_access_message
 
-	//½ÓÊÕµ½ÅäÖÃapplication keyÖ¸Áî(¿ÉÒÔÈÏÎªÈëÍø³É¹¦)
+	//ï¿½ï¿½ï¿½Õµï¿½ï¿½ï¿½ï¿½ï¿½application keyÖ¸ï¿½ï¿½(ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Îªï¿½ï¿½ï¿½ï¿½ï¿½É¹ï¿½)
 	2 mem_mesh_cb_receive_config_appkey_add
 
-	//¸÷ÖÖÔ­ÒòÅäÍøÊ§°Ü»Øµ÷
+	//ï¿½ï¿½ï¿½ï¿½Ô­ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ê§ï¿½Ü»Øµï¿½
 	2 mem_mesh_cb_pairing_fail
 
 	2 mem_mesh_cb_generic_onoff_get
@@ -8756,18 +8757,18 @@
 	2 mem_mesh_cb_background_onoff_set
 	2 mem_mesh_cb_color_set
 
-	//relay µÄ¹¦ÄÜ»Øµ÷
+	//relay ï¿½Ä¹ï¿½ï¿½Ü»Øµï¿½
 	2 mem_mesh_cb_network_relay
 
-	//Ä£¿é¸´Î»µÄ»Øµ÷£¬ÐèÒª3sÖ®ºó¸´Î»
+	//Ä£ï¿½é¸´Î»ï¿½Ä»Øµï¿½ï¿½ï¿½ï¿½ï¿½Òª3sÖ®ï¿½ï¿½Î»
 	2 mem_mesh_cb_receive_node_reset
 
-	//seq¸Ä±äÊ±µÄ»Øµ÷£¬ÐèÒª´æµ½¶ÔÓ¦µÄ´æ´¢Æ÷ÖÐ
+	//seqï¿½Ä±ï¿½Ê±ï¿½Ä»Øµï¿½ï¿½ï¿½ï¿½ï¿½Òªï¿½æµ½ï¿½ï¿½Ó¦ï¿½Ä´æ´¢ï¿½ï¿½ï¿½ï¿½
 	2 mem_mesh_cb_seq_changed
 
 	2 mem_mesh_cb_subscriptuion_list_changed
 
-	//Timer ¶¨Ê±Æ÷¸Ä±äÊ±£¬ÐèÒª´æµ½¶ÔÓ¦µÄ´æ´¢Æ÷ÖÐ
+	//Timer ï¿½ï¿½Ê±ï¿½ï¿½ï¿½Ä±ï¿½Ê±ï¿½ï¿½ï¿½ï¿½Òªï¿½æµ½ï¿½ï¿½Ó¦ï¿½Ä´æ´¢ï¿½ï¿½ï¿½ï¿½
 	2 mem_mesh_cb_vendor_timing_changed
 	
 
@@ -8805,7 +8806,7 @@
 	1 mem_mesh_element_device_upper_queue_current_num
 	1 mem_mesh_element_device_upper_queue_read_ptr
 	1 mem_mesh_element_device_upper_queue_write_ptr
-	//ÔªËØ³¤¶ÈÎª47
+	//Ôªï¿½Ø³ï¿½ï¿½ï¿½Îª47
 	188 mem_mesh_element_device_upper_queue_ele
 
 )
@@ -9800,6 +9801,8 @@
 2 mem_mouse_x_right_max_count
 1 mem_mouse_y_count
 
+//æ— è§„å¾‹æ‘¸é±¼
+1 mem_24g_matrix_cnt
 )
 
 
Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/output/eeprom.dat	(revision 4518)
+++ /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-22
+ce
 18
 c2
 84
@@ -78,8 +78,8 @@
 20
 c0
 67
-85
-f5
+86
+20
 c0
 68
 03
@@ -87,7 +87,7 @@
 c0
 68
 85
-7f
+aa
 c0
 69
 83
@@ -95,7 +95,7 @@
 c0
 6a
 05
-66
+91
 c0
 6a
 be
@@ -119,7 +119,7 @@
 c0
 6f
 05
-cf
+fa
 c0
 6f
 80
@@ -199,7 +199,7 @@
 c0
 76
 86
-00
+2b
 20
 20
 13
@@ -215,7 +215,7 @@
 70
 47
 8f
-1c
+14
 24
 55
 80
@@ -1211,7 +1211,7 @@
 20
 40
 05
-76
+a1
 20
 20
 3b
@@ -1763,7 +1763,7 @@
 20
 20
 05
-76
+a1
 20
 40
 26
@@ -2067,11 +2067,11 @@
 20
 40
 05
-71
+9c
 20
 40
 05
-76
+a1
 20
 20
 3e
@@ -2119,7 +2119,7 @@
 20
 40
 05
-c9
+f4
 d8
 40
 00
@@ -2307,7 +2307,7 @@
 20
 40
 05
-c9
+f4
 20
 20
 3e
@@ -2815,7 +2815,7 @@
 20
 40
 05
-76
+a1
 20
 20
 02
@@ -4655,7 +4655,7 @@
 20
 40
 05
-7f
+aa
 1f
 e1
 7e
@@ -5287,7 +5287,7 @@
 20
 40
 05
-7d
+a8
 6f
 e0
 c8
@@ -5303,11 +5303,11 @@
 24
 34
 05
-61
+8c
 20
 40
 05
-63
+8e
 20
 20
 45
@@ -5348,46 +5348,118 @@
 20
 7d
 66
-68
-49
-4c
-be
-18
-40
-84
-01
-60
-49
-4c
-be
 6f
-e1
-4c
-c2
-98
+e0
+cc
+c5
+1f
+e0
+fe
+01
+67
+e0
+cc
+c5
+1f
+e6
+7c
+0a
+20
+21
+05
+54
+1f
+e6
+7c
+14
+20
+21
+05
+58
+1f
+e6
+7c
+1e
+20
+21
+05
+5b
+1f
+e6
+7c
+28
+20
+21
+05
+5e
+1f
+e6
+7c
+32
+20
+21
+05
+61
+1f
+e6
+7c
+3c
+20
+21
+05
+65
+1f
+e6
+7c
 46
+20
+21
+05
+6a
+1f
+e6
 7c
-00
+50
 20
 21
 05
-42
 6f
-e1
-4c
-c0
-98
-46
+1f
+e6
 7c
-00
+5a
 20
 21
 05
-4c
+74
+1f
+e6
+7c
+64
 20
-60
-00
-00
+21
+05
+78
+1f
+e6
+7c
+6e
+20
+21
+05
+7d
+1f
+e6
+7c
+7f
+20
+21
+05
+80
+20
+20
+05
+83
 58
 00
 00
@@ -5404,6 +5476,30 @@
 60
 00
 00
+5f
+ff
+ff
+fb
+67
+e1
+48
+d3
+20
+20
+05
+56
+5f
+ff
+ff
+fb
+67
+e1
+48
+d1
+20
+20
+05
+56
 58
 00
 00
@@ -5415,11 +5511,35 @@
 20
 20
 05
-44
+56
+58
+00
+00
+05
+67
+e1
+48
+d1
+67
+e1
+48
+d3
+20
+20
+05
+56
+58
+00
+00
+0a
+67
+e1
+48
+d1
 5f
 ff
 ff
-fb
+f1
 67
 e1
 48
@@ -5427,15 +5547,27 @@
 20
 20
 05
-44
-6f
+56
+58
+00
+00
+03
+67
+e1
+48
+d1
+58
+00
+00
+05
+67
 e1
-4c
-be
-c0
 48
+d3
+20
+20
 05
-51
+56
 5f
 ff
 ff
@@ -5444,74 +5576,114 @@
 e1
 48
 d1
+5f
+ff
+ff
+fb
+67
+e1
+48
+d3
 20
 20
 05
-44
+56
 58
 00
 00
-00
+03
 67
 e1
-4c
-be
-20
-40
-05
-4e
-6f
-e0
-cc
-c4
-1f
-e0
-fe
-01
+48
+d1
 67
-e0
-cc
-c4
-1f
-e6
-7c
-78
+e1
+48
+d3
+20
 20
-21
 05
-46
-1f
-e6
-7c
-f0
+56
+5f
+ff
+ff
+fb
+67
+e1
+48
+d1
+5f
+ff
+ff
+f6
+67
+e1
+48
+d3
+20
 20
-21
 05
-5c
+56
+58
+00
+00
+02
+67
+e1
+48
+d1
 20
-60
+20
+05
+56
+58
 00
 00
+08
+67
+e1
+48
+d3
+20
+20
+05
+56
 6f
 e0
 cc
-c4
+c5
 c0
-78
+40
 05
+88
 5f
+ff
+ff
+f6
+67
+e1
+48
+d1
 20
 20
 05
-49
-70
-4c
-c4
+56
+18
+0a
+7e
 00
+1f
+e1
+7e
+7f
+67
+e0
+cc
+c5
 20
-20
-05
-49
+60
+00
+00
 20
 40
 47
@@ -5543,7 +5715,7 @@
 c0
 05
 85
-6d
+98
 20
 40
 42
@@ -5563,7 +5735,7 @@
 20
 40
 05
-74
+9f
 da
 60
 4b
@@ -5583,7 +5755,7 @@
 c0
 05
 85
-74
+9f
 20
 20
 42
@@ -5611,7 +5783,7 @@
 c0
 05
 85
-7b
+a6
 20
 20
 42
@@ -5627,7 +5799,7 @@
 20
 40
 05
-7f
+aa
 20
 20
 40
@@ -5647,23 +5819,23 @@
 20
 40
 05
-88
+b3
 20
 40
 05
-8d
+b8
 20
 40
 05
-92
+bd
 20
 40
 05
-af
+da
 20
 40
 05
-bc
+e7
 20
 20
 41
@@ -5675,7 +5847,7 @@
 20
 40
 05
-c9
+f4
 20
 40
 41
@@ -5695,7 +5867,7 @@
 20
 40
 05
-c9
+f4
 20
 40
 41
@@ -5739,11 +5911,11 @@
 c0
 7f
 85
-9b
+c6
 20
 20
 05
-a2
+cd
 6f
 e0
 c9
@@ -5751,7 +5923,7 @@
 20
 40
 05
-cc
+f7
 68
 48
 c9
@@ -5779,7 +5951,7 @@
 20
 20
 85
-ab
+d6
 68
 48
 c9
@@ -5823,7 +5995,7 @@
 20
 20
 05
-a9
+d4
 6f
 e0
 c9
@@ -5855,7 +6027,7 @@
 c0
 7f
 85
-b8
+e3
 20
 20
 41
@@ -5867,7 +6039,7 @@
 20
 40
 05
-cc
+f7
 68
 48
 c9
@@ -5907,7 +6079,7 @@
 c0
 7f
 85
-c5
+f0
 20
 20
 41
@@ -5919,7 +6091,7 @@
 20
 40
 05
-cc
+f7
 68
 48
 c9
@@ -5955,19 +6127,19 @@
 20
 40
 05
-d4
+ff
 20
 40
 79
 36
 20
 40
-05
-e1
+06
+0c
 20
 40
-05
-d8
+06
+03
 20
 20
 46
@@ -5994,12 +6166,12 @@
 ab
 c2
 94
-85
-dc
+86
+07
 c2
 9b
-85
-dc
+86
+07
 20
 60
 00
@@ -6010,8 +6182,8 @@
 8c
 c2
 83
-05
-df
+06
+0a
 20
 20
 46
@@ -6054,8 +6226,8 @@
 0f
 20
 40
-05
-ea
+06
+15
 20
 20
 40
@@ -6082,8 +6254,8 @@
 10
 c0
 7f
-85
-f1
+86
+1c
 20
 20
 40
@@ -6095,7 +6267,7 @@
 20
 40
 05
-cc
+f7
 68
 48
 c9
@@ -6180,8 +6352,8 @@
 20
 26
 f6
-a5
-ed
+a2
+57
 aa
 55
 40
@@ -7535,186 +7707,14 @@
 e8
 41
 01
-aa
-55
-05
-00
-f0
-4b
-02
-40
-00
-85
-1d
 55
 aa
 aa
 55
-5a
-9c
-c4
-3e
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+37
+99
+d0
+87
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-5e
-26
+7b
+e4
Index: output/memmap.format
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/output/memmap.format	(revision 4518)
+++ /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/output/memmap.format	(working copy)
@@ -470,7 +470,7 @@
 0x0a0f mem_mesh_access_layer_payload_len
 0x0a10 mem_mesh_access_layer_payload
 0x0a10 mem_mesh_access_payload
-0x0a42 mem_mesh_access_payload_padding//ÎªÁËÍ¸´«Ä£¿éÔ¤Áô
+0x0a42 mem_mesh_access_payload_padding//Îªï¿½ï¿½Í¸ï¿½ï¿½Ä£ï¿½ï¿½Ô¤ï¿½ï¿½
 0x0a74 mem_mesh_queue_ele_temp
 0x0a74 mem_mesh_queue_ele_duration
 0x0a75 mem_mesh_queue_ele_gatt_msg_id
@@ -2305,6 +2305,7 @@
 0x4cc0 mem_mouse_x_left_max_count
 0x4cc2 mem_mouse_x_right_max_count
 0x4cc4 mem_mouse_y_count
+0x4cc5 mem_24g_matrix_cnt
 0x48d0 mem_remote_car_hard_soft_switch
 0x48d1 mem_remote_car_queue_each_size
 0x48d2 mem_remote_car_queue_length
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/output/program.lis	(revision 4518)
+++ /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/output/program.lis	(working copy)
@@ -18,17 +18,17 @@
 000f c0650239 beq patch19_2 ,p_mouse_lpm_before_common 
 0010 c06600b9 beq patch19_4 ,p_mouse_adc_read_start 
 0011 c0670520 beq patch19_6 ,p_mouse_motion 
-0012 c06785f5 beq patch19_7 ,p_mouse_dpi_process 
+0012 c0678620 beq patch19_7 ,p_mouse_dpi_process 
 0013 c0680327 beq patch1a_0 ,p_mouse_seting_dpi 
-0014 c068857f beq patch1a_1 ,p_mouse_check_key_gpio 
+0014 c06885aa beq patch1a_1 ,p_mouse_check_key_gpio 
 0015 c0698340 beq patch1a_3 ,p_mouse_init_sunt 
-0016 c06a0566 beq patch1a_4 ,p_mouse_sensor_poweron 
+0016 c06a0591 beq patch1a_4 ,p_mouse_sensor_poweron 
 0017 c06abe23 beq patch1a_5 ,mouse_app_enter_hibernate + 3 
 0018 c06b025b beq patch1a_6 ,p_mouse_priority_bb_event 
 0019 c06c836a beq patch1b_1 ,p_mouse_bb_event_timer 
 001a c06d04a5 beq patch1b_2 ,p_mouse_start_discovery 
 001b c06d84af beq patch1b_3 ,p_mouse_stop_discovery 
-001c c06f05cf beq patch1b_6 ,p_mouse_idle 
+001c c06f05fa beq patch1b_6 ,p_mouse_idle 
 001d c06f8046 beq patch1b_7 ,p_mouse_ready_reconnection_by_button 
 001e c070803e beq patch1c_1 ,p_mouse_led_off 
 001f c071003a beq patch1c_2 ,p_mouse_led_on 
@@ -50,13 +50,13 @@
 002d c07482c8 beq patch3d_1 ,p_g24_reconn_dispatch 
 002e c07501b8 beq patch3d_2 ,p_g24_transmit_no_interrupt 
 002f c0760513 beq patch3d_4 ,p_g24_lpm_wait 
-0030 c0768600 beq patch3d_5 ,p_power_ctrl_start 
+0030 c076862b beq patch3d_5 ,p_power_ctrl_start 
 0031 2020137c branch loop 
 
 p_soft_reset:
 0032 20800000 clear_stack 
 0033 204030f3 call app_param_init 
-0034 70478f1c jam 28 ,mem_ui_button_timeout 
+0034 70478f14 jam 0x14 ,mem_ui_button_timeout 
 0035 24558042 ncall p_led_num_check ,wake 
 0036 20403bfd call mouse_xtal_init 
 0037 20200804 branch soft_reset + 3 
@@ -391,7 +391,7 @@
 012a 20403d8a call mouse_usb_check_enable 
 012b 20404728 call mouse_drawing_optima_init 
 012c 2040016a call p_mouse_cb_fuction 
-012d 20400576 call p_mouse_sensor_powerdown 
+012d 204005a1 call p_mouse_sensor_powerdown 
 012e 20203bc9 branch mouse_init + 8 
 
 p_mouse_le_name_load:
@@ -567,7 +567,7 @@
 01b4 67e0cba4 store 1 ,mem_mouse_search_dongle_action 
 01b5 6fe14bbc fetch 2 ,mem_mouse_24g_search_dongle_time_init 
 01b6 67e14ab2 store 2 ,mem_mouse_no_data_timer 
-01b7 20200576 branch p_mouse_sensor_powerdown 
+01b7 202005a1 branch p_mouse_sensor_powerdown 
 
 p_g24_transmit_no_interrupt:
 01b8 20402631 call g24_txdata_prep 
@@ -671,8 +671,8 @@
 0200 58000006 setarg pan_reg_config 
 0201 20405b0d call twspi_read 
 0202 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-0203 20400571 call p_mouse_sensor_reset 
-0204 20400576 call p_mouse_sensor_powerdown 
+0203 2040059c call p_mouse_sensor_reset 
+0204 204005a1 call p_mouse_sensor_powerdown 
 0205 20203e23 branch mouse_app_enter_hibernate + 3 
 
 p_mouse_setgpio_hibernate:
@@ -686,7 +686,7 @@
 020d 6848c910 fetcht 1 ,mem_matrix_public_gpio 
 020e 20406042 call gpio_clr_wake 
 020f 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-0210 204005c9 call p_mouse_gpio_config_output_high 
+0210 204005f4 call p_mouse_gpio_config_output_high 
 0211 d8400003 arg 3 ,temp 
 0212 20403f56 call mouse_gpio_config_input_pu 
 0213 20400239 call p_mouse_lpm_before_common 
@@ -751,7 +751,7 @@
 023c 20406050 call gpio_config_input 
 023d 20403f88 call mouse_wheel_check 
 023e 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
-023f 204005c9 call p_mouse_gpio_config_output_high 
+023f 204005f4 call p_mouse_gpio_config_output_high 
 0240 20203e44 branch mouse_lpm_before_common + 4 
 
 p_g24_nodata_transmit:
@@ -918,7 +918,7 @@
 02bb 58000000 setarg 0 
 02bc 67e3c8d0 store 7 ,mem_mouse_key 
 02bd 704be101 jam 1 ,mem_sensor_shutdown_flag 
-02be 20400576 call p_mouse_sensor_powerdown 
+02be 204005a1 call p_mouse_sensor_powerdown 
 02bf 20200246 branch p_g24_long_sleep 
 
 p_g24_pair_dispatch:
@@ -1590,7 +1590,7 @@
 
 p_mouse_commbination_key_start:
 0489 6048cb9d storet 1 ,mem_mouse_commbination_key 
-048a 2040057f call p_mouse_check_key_gpio 
+048a 204005aa call p_mouse_check_key_gpio 
 048b 1fe17e07 and pdata ,0x07 ,pdata 
 048c 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
 048d 98467c00 isub temp ,null 
@@ -1800,12 +1800,12 @@
 0525 20400329 call p_mouse_seting_sensor_type 
 0526 20403f7e call mouse_zwheel 
 0527 20403f83 call mouse_t_zwheel 
-0528 2040057d call p_mouse_key 
+0528 204005a8 call p_mouse_key 
 0529 6fe0c8d0 fetch 1 ,mem_mouse_key 
 052a 1fe17e1f and_into 0x1f ,pdata 
 052b 67e0c8d0 store 1 ,mem_mouse_key 
-052c 24340561 nbranch p_mouse_motion_nodata ,user 
-052d 20400563 call p_mouse_drawing_optima 
+052c 2434058c nbranch p_mouse_motion_nodata ,user 
+052d 2040058e call p_mouse_drawing_optima 
 052e 20204544 branch mouse_no_data_timer_init 
 
 p_mouse_start_lazy_check:
@@ -1814,312 +1814,367 @@
 0531 d8e0000d arg 13 ,queue 
 0532 20407d74 call timer_check 
 0533 247a0000 nrtn blank 
-0534 20400538 call p_mouse_start_lazy_start 
+0534 20400538 call p_mouse_auto_ruling_check 
 
 p_mouse_fake_data_100ms_timer_init:
 0535 d8e0000d arg 13 ,queue 
 0536 58000050 setarg 80 
 0537 20207d66 branch timer_init 
 
-p_mouse_start_lazy_start:
-0538 68494cbe fetcht 2 ,mem_mouse_max_cnt 
-0539 18408401 increase 1 ,temp 
-053a 60494cbe storet 2 ,mem_mouse_max_cnt 
-053b 6fe14cc2 fetch 2 ,mem_mouse_x_right_max_count 
-053c 98467c00 isub temp ,null 
-053d 20210542 branch p_ms_x_right ,positive 
-053e 6fe14cc0 fetch 2 ,mem_mouse_x_left_max_count 
-053f 98467c00 isub temp ,null 
-0540 2021054c branch p_ms_x_left_check ,positive 
-0541 20600000 rtn 
+p_mouse_auto_ruling_check:
+0538 6fe0ccc5 fetch 1 ,mem_24g_matrix_cnt 
+0539 1fe0fe01 increase 1 ,pdata 
+053a 67e0ccc5 store 1 ,mem_24g_matrix_cnt 
+053b 1fe67c0a sub pdata ,10 ,null 
+053c 20210554 branch p_ms_x_right ,positive 
+053d 1fe67c14 sub pdata ,20 ,null 
+053e 20210558 branch p_ms_y_up ,positive 
+053f 1fe67c1e sub pdata ,30 ,null 
+0540 2021055b branch p_ms_x_left ,positive 
+0541 1fe67c28 sub pdata ,40 ,null 
+0542 2021055e branch p_ms_y_down ,positive 
+0543 1fe67c32 sub pdata ,50 ,null 
+0544 20210561 branch p_ruling_step_1 ,positive 
+0545 1fe67c3c sub pdata ,60 ,null 
+0546 20210565 branch p_ruling_step_2 ,positive 
+0547 1fe67c46 sub pdata ,70 ,null 
+0548 2021056a branch p_ruling_step_3 ,positive 
+0549 1fe67c50 sub pdata ,80 ,null 
+054a 2021056f branch p_ruling_step_4 ,positive 
+054b 1fe67c5a sub pdata ,90 ,null 
+054c 20210574 branch p_ruling_step_5 ,positive 
+054d 1fe67c64 sub pdata ,100 ,null 
+054e 20210578 branch p_ruling_step_6 ,positive 
+054f 1fe67c6e sub pdata ,110 ,null 
+0550 2021057d branch p_ruling_step_7 ,positive 
+0551 1fe67c7f sub pdata ,127 ,null 
+0552 20210580 branch p_ruling_step_8 ,positive 
+0553 20200583 branch p_ruling_step_9 
 
 p_ms_x_right:
-0542 58000005 setarg 5 
-0543 67e148d1 store 2 ,mem_mouse_x 
+0554 58000005 setarg 5 
+0555 67e148d1 store 2 ,mem_mouse_x 
 
 p_data:
-0544 78347c00 enable user 
-0545 20600000 rtn 
+0556 78347c00 enable user 
+0557 20600000 rtn 
 
 p_ms_y_up:
-0546 58000005 setarg 5 
-0547 67e148d3 store 2 ,mem_mouse_y 
-0548 20200544 branch p_data 
-
-p_ms_y_down:
-0549 5ffffffb setarg -5 
-054a 67e148d3 store 2 ,mem_mouse_y 
-054b 20200544 branch p_data 
-
-p_ms_x_left_check:
-054c 6fe14cbe fetch 2 ,mem_mouse_max_cnt 
-054d c0480551 beq 400 ,p_mouse_max_cnt_init 
+0558 5ffffffb setarg -5 
+0559 67e148d3 store 2 ,mem_mouse_y 
+055a 20200556 branch p_data 
 
 p_ms_x_left:
-054e 5ffffffb setarg -5 
-054f 67e148d1 store 2 ,mem_mouse_x 
-0550 20200544 branch p_data 
-
-p_mouse_max_cnt_init:
-0551 58000000 setarg 0 
-0552 67e14cbe store 2 ,mem_mouse_max_cnt 
-0553 2040054e call p_ms_x_left 
-0554 6fe0ccc4 fetch 1 ,mem_mouse_y_count 
-0555 1fe0fe01 pincrease 1 
-0556 67e0ccc4 store 1 ,mem_mouse_y_count 
-0557 1fe67c78 sub pdata ,120 ,null 
-0558 20210546 branch p_ms_y_up ,positive 
-0559 1fe67cf0 sub pdata ,240 ,null 
-055a 2021055c branch p_ms_y_down_check ,positive 
-055b 20600000 rtn 
-
-p_ms_y_down_check:
-055c 6fe0ccc4 fetch 1 ,mem_mouse_y_count 
-055d c078055f beq 240 ,p_mouse_y_count_init 
-055e 20200549 branch p_ms_y_down 
-
-p_mouse_y_count_init:
-055f 704cc400 jam 0 ,mem_mouse_y_count 
-0560 20200549 branch p_ms_y_down 
+055b 5ffffffb setarg -5 
+055c 67e148d1 store 2 ,mem_mouse_x 
+055d 20200556 branch p_data 
+
+p_ms_y_down:
+055e 58000005 setarg 5 
+055f 67e148d3 store 2 ,mem_mouse_y 
+0560 20200556 branch p_data 
+
+p_ruling_step_1:
+0561 58000005 setarg 5 
+0562 67e148d1 store 2 ,mem_mouse_x 
+0563 67e148d3 store 2 ,mem_mouse_y 
+0564 20200556 branch p_data 
+
+p_ruling_step_2:
+0565 5800000a setarg 10 
+0566 67e148d1 store 2 ,mem_mouse_x 
+0567 5ffffff1 setarg -15 
+0568 67e148d3 store 2 ,mem_mouse_y 
+0569 20200556 branch p_data 
+
+p_ruling_step_3:
+056a 58000003 setarg 3 
+056b 67e148d1 store 2 ,mem_mouse_x 
+056c 58000005 setarg 5 
+056d 67e148d3 store 2 ,mem_mouse_y 
+056e 20200556 branch p_data 
+
+p_ruling_step_4:
+056f 5ffffffb setarg -5 
+0570 67e148d1 store 2 ,mem_mouse_x 
+0571 5ffffffb setarg -5 
+0572 67e148d3 store 2 ,mem_mouse_y 
+0573 20200556 branch p_data 
+
+p_ruling_step_5:
+0574 58000003 setarg 3 
+0575 67e148d1 store 2 ,mem_mouse_x 
+0576 67e148d3 store 2 ,mem_mouse_y 
+0577 20200556 branch p_data 
+
+p_ruling_step_6:
+0578 5ffffffb setarg -5 
+0579 67e148d1 store 2 ,mem_mouse_x 
+057a 5ffffff6 setarg -10 
+057b 67e148d3 store 2 ,mem_mouse_y 
+057c 20200556 branch p_data 
+
+p_ruling_step_7:
+057d 58000002 setarg 2 
+057e 67e148d1 store 2 ,mem_mouse_x 
+057f 20200556 branch p_data 
+
+p_ruling_step_8:
+0580 58000008 setarg 8 
+0581 67e148d3 store 2 ,mem_mouse_y 
+0582 20200556 branch p_data 
+
+p_ruling_step_9:
+0583 6fe0ccc5 fetch 1 ,mem_24g_matrix_cnt 
+0584 c0400588 beq 128 ,p_mem_usb_data_square_cnt_set0 
+0585 5ffffff6 setarg -10 
+0586 67e148d1 store 2 ,mem_mouse_x 
+0587 20200556 branch p_data 
+
+p_mem_usb_data_square_cnt_set0:
+0588 180a7e00 random pdata 
+0589 1fe17e7f and_into 0x7f ,pdata 
+058a 67e0ccc5 store 1 ,mem_24g_matrix_cnt 
+058b 20600000 rtn 
 
 p_mouse_motion_nodata:
-0561 20404728 call mouse_drawing_optima_init 
-0562 20600000 rtn 
+058c 20404728 call mouse_drawing_optima_init 
+058d 20600000 rtn 
 
 p_mouse_drawing_optima:
-0563 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0564 c1018000 rtneq p3212 
-0565 2020471a branch mouse_drawing_optima 
+058e 6fe0c927 fetch 1 ,mem_config_sensor_type 
+058f c1018000 rtneq p3212 
+0590 2020471a branch mouse_drawing_optima 
 
 p_mouse_sensor_poweron:
-0566 20403f65 call mouse_sensor_spi_init 
-0567 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0568 c005856d beq ka8g2 ,p_mouse_ka8g2_sensor_init 
-0569 20404232 call mouse_sensor_reset 
-056a da604aa3 arg mem_sensor_poweron_init ,regc 
-056b 2040422b call mouse_sensor_wr_seq 
-056c 20200329 branch p_mouse_seting_sensor_type 
+0591 20403f65 call mouse_sensor_spi_init 
+0592 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0593 c0058598 beq ka8g2 ,p_mouse_ka8g2_sensor_init 
+0594 20404232 call mouse_sensor_reset 
+0595 da604aa3 arg mem_sensor_poweron_init ,regc 
+0596 2040422b call mouse_sensor_wr_seq 
+0597 20200329 branch p_mouse_seting_sensor_type 
 
 p_mouse_ka8g2_sensor_init:
-056d 20400574 call p_mouse_ka8g2_sensor_reset 
-056e da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
-056f 2040422b call mouse_sensor_wr_seq 
-0570 2020408e branch mouse_dpi_config 
+0598 2040059f call p_mouse_ka8g2_sensor_reset 
+0599 da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
+059a 2040422b call mouse_sensor_wr_seq 
+059b 2020408e branch mouse_dpi_config 
 
 p_mouse_sensor_reset:
-0571 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0572 c0058574 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
-0573 20204232 branch mouse_sensor_reset 
+059c 6fe0c927 fetch 1 ,mem_config_sensor_type 
+059d c005859f beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
+059e 20204232 branch mouse_sensor_reset 
 
 p_mouse_ka8g2_sensor_reset:
-0574 58009706 setarg 0x9706 
-0575 20204233 branch mouse_sensor_reset_end 
+059f 58009706 setarg 0x9706 
+05a0 20204233 branch mouse_sensor_reset_end 
 
 p_mouse_sensor_powerdown:
-0576 204041a7 call mouse_init_sunt 
-0577 20403f65 call mouse_sensor_spi_init 
-0578 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0579 c005857b beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
-057a 2020423e branch mouse_sensor_powerdown_end 
+05a1 204041a7 call mouse_init_sunt 
+05a2 20403f65 call mouse_sensor_spi_init 
+05a3 6fe0c927 fetch 1 ,mem_config_sensor_type 
+05a4 c00585a6 beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
+05a5 2020423e branch mouse_sensor_powerdown_end 
 
 p_mouse_ka8g2_sensor_powerdown:
-057b 58001f06 setarg 0x1f06 
-057c 20205b0c branch twspi_write 
+05a6 58001f06 setarg 0x1f06 
+05a7 20205b0c branch twspi_write 
 
 p_mouse_key:
-057d 2040057f call p_mouse_check_key_gpio 
-057e 202040dd branch mouse_key + 1 
+05a8 204005aa call p_mouse_check_key_gpio 
+05a9 202040dd branch mouse_key + 1 
 
 p_mouse_check_key_gpio:
-057f 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0580 245a4121 ncall mouse_check_key_gpio_once ,blank 
-0581 da200000 arg 0 ,rega 
-0582 20400588 call p_mouse_check_lkey_gpio 
-0583 2040058d call p_mouse_check_rkey_gpio 
-0584 20400592 call p_mouse_check_mkey_gpio 
-0585 204005af call p_mouse_check_bkkey_gpio 
-0586 204005bc call p_mouse_check_fwkey_gpio 
-0587 2020411e branch mouse_check_key_gpio_next 
+05aa 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+05ab 245a4121 ncall mouse_check_key_gpio_once ,blank 
+05ac da200000 arg 0 ,rega 
+05ad 204005b3 call p_mouse_check_lkey_gpio 
+05ae 204005b8 call p_mouse_check_rkey_gpio 
+05af 204005bd call p_mouse_check_mkey_gpio 
+05b0 204005da call p_mouse_check_bkkey_gpio 
+05b1 204005e7 call p_mouse_check_fwkey_gpio 
+05b2 2020411e branch mouse_check_key_gpio_next 
 
 p_mouse_check_lkey_gpio:
-0588 6fe0c918 fetch 1 ,mem_lbutton_gpio 
-0589 204005c9 call p_mouse_gpio_config_output_high 
-058a 20404124 call mouse_check_lkey_gpio 
-058b 6848c918 fetcht 1 ,mem_lbutton_gpio 
-058c 20203f56 branch mouse_gpio_config_input_pu 
+05b3 6fe0c918 fetch 1 ,mem_lbutton_gpio 
+05b4 204005f4 call p_mouse_gpio_config_output_high 
+05b5 20404124 call mouse_check_lkey_gpio 
+05b6 6848c918 fetcht 1 ,mem_lbutton_gpio 
+05b7 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_rkey_gpio:
-058d 6fe0c919 fetch 1 ,mem_rbutton_gpio 
-058e 204005c9 call p_mouse_gpio_config_output_high 
-058f 2040412a call mouse_check_rkey_gpio 
-0590 6848c919 fetcht 1 ,mem_rbutton_gpio 
-0591 20203f56 branch mouse_gpio_config_input_pu 
+05b8 6fe0c919 fetch 1 ,mem_rbutton_gpio 
+05b9 204005f4 call p_mouse_gpio_config_output_high 
+05ba 2040412a call mouse_check_rkey_gpio 
+05bb 6848c919 fetcht 1 ,mem_rbutton_gpio 
+05bc 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_mkey_gpio:
-0592 6fe0c91a fetch 1 ,mem_mbutton_gpio 
-0593 c17f8000 rtneq gpio_disable 
-0594 704b9602 jam mouse_m_key ,mem_mouse_key_temp 
-0595 6fe0cb90 fetch 1 ,mem_mouse_mkey_press_status 
-0596 1fe22600 copy pdata ,regc 
-0597 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0598 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-0599 c07f859b beq gpio_disable ,p_mouse_3io6key_m_check 
-059a 202005a2 branch p_mouse_check_key_gpio_next 
+05bd 6fe0c91a fetch 1 ,mem_mbutton_gpio 
+05be c17f8000 rtneq gpio_disable 
+05bf 704b9602 jam mouse_m_key ,mem_mouse_key_temp 
+05c0 6fe0cb90 fetch 1 ,mem_mouse_mkey_press_status 
+05c1 1fe22600 copy pdata ,regc 
+05c2 6848c91a fetcht 1 ,mem_mbutton_gpio 
+05c3 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+05c4 c07f85c6 beq gpio_disable ,p_mouse_3io6key_m_check 
+05c5 202005cd branch p_mouse_check_key_gpio_next 
 
 p_mouse_3io6key_m_check:
-059b 6fe0c91a fetch 1 ,mem_mbutton_gpio 
-059c 204005cc call p_mouse_gpio_config_output_low 
-059d 6848c91a fetcht 1 ,mem_mbutton_gpio 
-059e 20404195 call mouse_3io6key_check 
-059f 67e0cb90 store 1 ,mem_mouse_mkey_press_status 
-05a0 6848c91a fetcht 1 ,mem_mbutton_gpio 
-05a1 20203f56 branch mouse_gpio_config_input_pu 
+05c6 6fe0c91a fetch 1 ,mem_mbutton_gpio 
+05c7 204005f7 call p_mouse_gpio_config_output_low 
+05c8 6848c91a fetcht 1 ,mem_mbutton_gpio 
+05c9 20404195 call mouse_3io6key_check 
+05ca 67e0cb90 store 1 ,mem_mouse_mkey_press_status 
+05cb 6848c91a fetcht 1 ,mem_mbutton_gpio 
+05cc 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_key_gpio_next:
-05a2 20406059 call gpio_get_bit 
-05a3 202085ab branch p_mouse_check_m_button_connect_gnd ,true 
-05a4 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-05a5 20406069 call gpio_out_active 
-05a6 6848c91a fetcht 1 ,mem_mbutton_gpio 
-05a7 6fe0cb90 fetch 1 ,mem_mouse_mkey_press_status 
-05a8 20404187 call mouse_check_key_connect_gnd 
+05cd 20406059 call gpio_get_bit 
+05ce 202085d6 branch p_mouse_check_m_button_connect_gnd ,true 
+05cf 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+05d0 20406069 call gpio_out_active 
+05d1 6848c91a fetcht 1 ,mem_mbutton_gpio 
+05d2 6fe0cb90 fetch 1 ,mem_mouse_mkey_press_status 
+05d3 20404187 call mouse_check_key_connect_gnd 
 
 p_mouse_check_mkey_gpio_end:
-05a9 67e0cb90 store 1 ,mem_mouse_mkey_press_status 
-05aa 20204168 branch mouse_matrix_public_gpio_reset 
+05d4 67e0cb90 store 1 ,mem_mouse_mkey_press_status 
+05d5 20204168 branch mouse_matrix_public_gpio_reset 
 
 p_mouse_check_m_button_connect_gnd:
-05ab 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-05ac 6fe0cb90 fetch 1 ,mem_mouse_mkey_press_status 
-05ad 20404187 call mouse_check_key_connect_gnd 
-05ae 202005a9 branch p_mouse_check_mkey_gpio_end 
+05d6 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+05d7 6fe0cb90 fetch 1 ,mem_mouse_mkey_press_status 
+05d8 20404187 call mouse_check_key_connect_gnd 
+05d9 202005d4 branch p_mouse_check_mkey_gpio_end 
 
 p_mouse_check_bkkey_gpio:
-05af 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-05b0 c17f8000 rtneq gpio_disable 
-05b1 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
-05b2 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
-05b3 1fe22600 copy pdata ,regc 
-05b4 6848c90d fetcht 1 ,mem_bk_button_gpio 
-05b5 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05b6 c07f85b8 beq gpio_disable ,p_mouse_3io6key_bk_check 
-05b7 2020413e branch mouse_check_bkkey_gpio_next 
+05da 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+05db c17f8000 rtneq gpio_disable 
+05dc 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
+05dd 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
+05de 1fe22600 copy pdata ,regc 
+05df 6848c90d fetcht 1 ,mem_bk_button_gpio 
+05e0 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+05e1 c07f85e3 beq gpio_disable ,p_mouse_3io6key_bk_check 
+05e2 2020413e branch mouse_check_bkkey_gpio_next 
 
 p_mouse_3io6key_bk_check:
-05b8 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-05b9 204005cc call p_mouse_gpio_config_output_low 
-05ba 6848c90d fetcht 1 ,mem_bk_button_gpio 
-05bb 2020414b branch mouse_3io6key_bk_check 
+05e3 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+05e4 204005f7 call p_mouse_gpio_config_output_low 
+05e5 6848c90d fetcht 1 ,mem_bk_button_gpio 
+05e6 2020414b branch mouse_3io6key_bk_check 
 
 p_mouse_check_fwkey_gpio:
-05bc 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-05bd c17f8000 rtneq gpio_disable 
-05be 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
-05bf 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
-05c0 1fe22600 copy pdata ,regc 
-05c1 6848c90e fetcht 1 ,mem_fw_button_gpio 
-05c2 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05c3 c07f85c5 beq gpio_disable ,p_mouse_3io6key_fw_check 
-05c4 20204157 branch mouse_check_fwkey_gpio_next 
+05e7 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+05e8 c17f8000 rtneq gpio_disable 
+05e9 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
+05ea 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
+05eb 1fe22600 copy pdata ,regc 
+05ec 6848c90e fetcht 1 ,mem_fw_button_gpio 
+05ed 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+05ee c07f85f0 beq gpio_disable ,p_mouse_3io6key_fw_check 
+05ef 20204157 branch mouse_check_fwkey_gpio_next 
 
 p_mouse_3io6key_fw_check:
-05c5 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-05c6 204005cc call p_mouse_gpio_config_output_low 
-05c7 6848c90e fetcht 1 ,mem_fw_button_gpio 
-05c8 20204164 branch mouse_3io6key_fw_check 
+05f0 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+05f1 204005f7 call p_mouse_gpio_config_output_low 
+05f2 6848c90e fetcht 1 ,mem_fw_button_gpio 
+05f3 20204164 branch mouse_3io6key_fw_check 
 
 p_mouse_gpio_config_output_high:
-05c9 c17f8000 rtneq gpio_disable 
-05ca d840003f arg gpcfg_output_high ,temp 
-05cb 20206093 branch gpio_config_function_int 
+05f4 c17f8000 rtneq gpio_disable 
+05f5 d840003f arg gpcfg_output_high ,temp 
+05f6 20206093 branch gpio_config_function_int 
 
 p_mouse_gpio_config_output_low:
-05cc c17f8000 rtneq gpio_disable 
-05cd d840003e arg gpcfg_output_low ,temp 
-05ce 20206093 branch gpio_config_function_int 
+05f7 c17f8000 rtneq gpio_disable 
+05f8 d840003e arg gpcfg_output_low ,temp 
+05f9 20206093 branch gpio_config_function_int 
 
 p_mouse_idle:
-05cf 204005d4 call p_mouse_low_voltage_led_no_enter_lpm 
-05d0 20407936 call ui_check_paring_button 
-05d1 204005e1 call p_mouse_dpi_check 
-05d2 204005d8 call p_mouse_select_device_check 
-05d3 20204650 branch mouse_idle + 5 
+05fa 204005ff call p_mouse_low_voltage_led_no_enter_lpm 
+05fb 20407936 call ui_check_paring_button 
+05fc 2040060c call p_mouse_dpi_check 
+05fd 20400603 call p_mouse_select_device_check 
+05fe 20204650 branch mouse_idle + 5 
 
 p_mouse_low_voltage_led_no_enter_lpm:
-05d4 6fe0cc40 fetch 1 ,mem_mouse_led_new_interface_config 
-05d5 c301c990 bbit0 mouse_enable_low_led ,mouse_low_voltage_led_no_enter_lpm 
+05ff 6fe0cc40 fetch 1 ,mem_mouse_led_new_interface_config 
+0600 c301c990 bbit0 mouse_enable_low_led ,mouse_low_voltage_led_no_enter_lpm 
 
 p_mouse_low_voltage_led_no_enter_lpm_next:
-05d6 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05d7 20204992 branch mouse_low_voltage_led_no_enter_lpm + 2 
+0601 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0602 20204992 branch mouse_low_voltage_led_no_enter_lpm + 2 
 
 p_mouse_select_device_check:
-05d8 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05d9 c29485dc bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
-05da c29b85dc bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
-05db 20600000 rtn 
+0603 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0604 c2948607 bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
+0605 c29b8607 bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
+0606 20600000 rtn 
 
 p_mouse_select_device_by_pb_button_check_judge:
-05dc 6fe1478c fetch 2 ,mem_ui_state_map 
-05dd c28305df bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
-05de 2020465a branch mouse_select_device_by_pb_button 
+0607 6fe1478c fetch 2 ,mem_ui_state_map 
+0608 c283060a bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
+0609 2020465a branch mouse_select_device_by_pb_button 
 
 p_mouse_select_device_by_pb_button_check_once:
-05df 704b9403 jam 0x03 ,mem_mouse_pbkey_press_status 
-05e0 202001e5 branch p_mouse_select_device_by_pb_button 
+060a 704b9403 jam 0x03 ,mem_mouse_pbkey_press_status 
+060b 202001e5 branch p_mouse_select_device_by_pb_button 
 
 p_mouse_dpi_check:
-05e1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05e2 c2974036 bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
-05e3 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-05e4 c17f8000 rtneq gpio_disable 
-05e5 da200000 arg 0 ,rega 
-05e6 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
-05e7 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-05e8 204005ea call p_mouse_dpi_key_check 
-05e9 2020402f branch mouse_dpi_check_next 
+060c 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+060d c2974036 bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
+060e 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+060f c17f8000 rtneq gpio_disable 
+0610 da200000 arg 0 ,rega 
+0611 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
+0612 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+0613 20400615 call p_mouse_dpi_key_check 
+0614 2020402f branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-05ea 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05eb c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-05ec 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
-05ed 1fe22600 copy pdata ,regc 
-05ee 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05ef c07f85f1 beq gpio_disable ,p_mouse_3io6key_dpi_check 
-05f0 2020403f branch mouse_dpi_key_check_next 
+0615 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0616 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+0617 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
+0618 1fe22600 copy pdata ,regc 
+0619 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+061a c07f861c beq gpio_disable ,p_mouse_3io6key_dpi_check 
+061b 2020403f branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-05f1 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-05f2 204005cc call p_mouse_gpio_config_output_low 
-05f3 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-05f4 20204195 branch mouse_3io6key_check 
+061c 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+061d 204005f7 call p_mouse_gpio_config_output_low 
+061e 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+061f 20204195 branch mouse_3io6key_check 
 
 p_mouse_dpi_process:
-05f5 6fe0ccbd fetch 1 ,mem_mouse_lazy_flag 
-05f6 247a0000 nrtn blank 
-05f7 20404072 call mouse_dpi_ghost_check 
-05f8 20740000 rtn user 
+0620 6fe0ccbd fetch 1 ,mem_mouse_lazy_flag 
+0621 247a0000 nrtn blank 
+0622 20404072 call mouse_dpi_ghost_check 
+0623 20740000 rtn user 
 
 p_mouse_dpi_process_next:
-05f9 6fe0c992 fetch 1 ,mem_mouse_dpi 
-05fa 1fe0fe01 increase 1 ,pdata 
-05fb 1fe17e03 and pdata ,0x03 ,pdata 
+0624 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0625 1fe0fe01 increase 1 ,pdata 
+0626 1fe17e03 and pdata ,0x03 ,pdata 
 
 p_mouse_dpi_store:
-05fc 67e0c992 store 1 ,mem_mouse_dpi 
-05fd 20400327 call p_mouse_seting_dpi 
-05fe 704cbb02 jam 2 ,mem_mouse_dpi_store_delay_timer 
-05ff 20600000 rtn 
+0627 67e0c992 store 1 ,mem_mouse_dpi 
+0628 20400327 call p_mouse_seting_dpi 
+0629 704cbb02 jam 2 ,mem_mouse_dpi_store_delay_timer 
+062a 20600000 rtn 
 
 p_power_ctrl_start:
-0600 6fe1478c fetch 2 ,mem_ui_state_map 
-0601 c3858000 rtnbit1 ui_state_ble_adv 
-0602 c3838000 rtnbit1 ui_state_bt_reconnect 
-0603 c3830000 rtnbit1 ui_state_bt_discovery 
-0604 6a214899 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-0605 204025cb call rssi_average 
-0606 6048c8c7 storet 1 ,mem_rssi_avg_received 
-0607 202026f6 branch power_ctrl_rssi_avg_compare 
+062b 6fe1478c fetch 2 ,mem_ui_state_map 
+062c c3858000 rtnbit1 ui_state_ble_adv 
+062d c3838000 rtnbit1 ui_state_bt_reconnect 
+062e c3830000 rtnbit1 ui_state_bt_discovery 
+062f 6a214899 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+0630 204025cb call rssi_average 
+0631 6048c8c7 storet 1 ,mem_rssi_avg_received 
+0632 202026f6 branch power_ctrl_rssi_avg_compare 
               org 0x3bc1
 
 mouse_init:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/program/patch.prog	(revision 4518)
+++ /YC1308AC/branch/mouse_project/YJX_Project/YJX_1059_To_1011-T/mouse_public_sdk_first_no_discovery_branch/SlideSwitch_3mode_2ch_first_no_discovery_LBX _172_Lazy/program/patch.prog	(working copy)
@@ -72,7 +72,7 @@
 p_soft_reset:
 	clear_stack
 	call app_param_init
-	jam 28,mem_ui_button_timeout
+	jam 0x14,mem_ui_button_timeout
 	ncall p_led_num_check,wake
 ifdef RSSI_SORT
 	setarg mem_mouse_rssi_signal_buf_patch
@@ -2183,71 +2183,192 @@
 	arg 13,queue
 	call timer_check
 	nrtn blank
-	call p_mouse_start_lazy_start
+	//call p_mouse_start_lazy_start #é˜¶æ¢¯åž‹æ‘¸é±¼ç®—æ³•
+	call p_mouse_auto_ruling_check
 p_mouse_fake_data_100ms_timer_init:
 	arg 13,queue
 	setarg 80
 	branch timer_init
 
-p_mouse_start_lazy_start:	
-	fetcht 2,mem_mouse_max_cnt
-	increase 1,temp
-	storet 2,mem_mouse_max_cnt
-	fetch 2,mem_mouse_x_right_max_count
-	isub temp,null
+
+p_mouse_auto_ruling_check:
+	fetch 1,mem_24g_matrix_cnt
+	increase 1,pdata
+	store 1,mem_24g_matrix_cnt
+	sub pdata,10,null
 	branch p_ms_x_right,positive
 
-	fetch 2,mem_mouse_x_left_max_count
-	isub temp,null
-	branch p_ms_x_left_check,positive
-	rtn
+	sub pdata,20,null
+	branch p_ms_y_up,positive
+
+	sub pdata,30,null
+	branch p_ms_x_left,positive
+	
+	sub pdata,40,null
+	branch p_ms_y_down,positive
+
+	sub pdata,50,null
+	branch p_ruling_step_1,positive
+	
+	sub pdata,60,null
+	branch p_ruling_step_2,positive
+	
+	sub pdata,70,null
+	branch p_ruling_step_3,positive
+	
+	sub pdata,80,null
+	branch p_ruling_step_4,positive
+
+	sub pdata,90,null
+	branch p_ruling_step_5,positive
+
+	sub pdata,100,null
+	branch p_ruling_step_6,positive
 
+	sub pdata,110,null
+	branch p_ruling_step_7,positive
+
+	sub pdata,127,null
+	branch p_ruling_step_8,positive
+
+	branch p_ruling_step_9
+	
 p_ms_x_right:
 	setarg 5
 	store 2,mem_mouse_x
 p_data:
 	enable user
 	rtn
-
 p_ms_y_up:
-	setarg 5
+	setarg -5
 	store 2,mem_mouse_y
 	branch p_data
 
-p_ms_y_down:
+p_ms_x_left:
 	setarg -5
+	store 2,mem_mouse_x
+	branch p_data
+p_ms_y_down:
+	setarg 5
 	store 2,mem_mouse_y
 	branch p_data
 
-p_ms_x_left_check:
-	fetch 2,mem_mouse_max_cnt
-	beq 400,p_mouse_max_cnt_init
-p_ms_x_left:
+p_ruling_step_1:
+	setarg 5
+	store 2,mem_mouse_x
+	store 2,mem_mouse_y
+	branch p_data
+p_ruling_step_2:
+	setarg 10
+	store 2,mem_mouse_x
+	setarg -15
+	store 2,mem_mouse_y
+	branch p_data
+p_ruling_step_3:
+	setarg 3
+	store 2,mem_mouse_x
+	setarg 5
+	store 2,mem_mouse_y
+	branch p_data
+p_ruling_step_4:
+	setarg -5
+	store 2,mem_mouse_x
+	setarg -5
+	store 2,mem_mouse_y
+	branch p_data	
+p_ruling_step_5:
+	setarg 3
+	store 2,mem_mouse_x
+	store 2,mem_mouse_y
+	branch p_data	
+p_ruling_step_6:
 	setarg -5
 	store 2,mem_mouse_x
+	setarg -10
+	store 2,mem_mouse_y
+	branch p_data
+p_ruling_step_7:
+	setarg 2
+	store 2,mem_mouse_x
+	branch p_data
+p_ruling_step_8:
+	setarg 8
+	store 2,mem_mouse_y
 	branch p_data
 
-p_mouse_max_cnt_init:
-	setarg 0
-	store 2,mem_mouse_max_cnt
-	call p_ms_x_left
-	fetch 1,mem_mouse_y_count
-	pincrease 1
-	store 1,mem_mouse_y_count
-	sub pdata,120,null
-	branch p_ms_y_up,positive
+p_ruling_step_9:
+	fetch 1,mem_24g_matrix_cnt
+	beq 128,p_mem_usb_data_square_cnt_set0
+	setarg -10
+	store 2,mem_mouse_x
+	branch p_data
 
-	sub pdata,240,null
-	branch p_ms_y_down_check,positive
-	rtn
-p_ms_y_down_check:
-	fetch 1,mem_mouse_y_count
-	beq 240,p_mouse_y_count_init
-	branch p_ms_y_down
-
-p_mouse_y_count_init:
-	jam 0,mem_mouse_y_count
-	branch p_ms_y_down
+p_mem_usb_data_square_cnt_set0:
+	random pdata
+	and_into 0x7f,pdata
+	store 1,mem_24g_matrix_cnt
+	rtn
+
+
+// p_mouse_start_lazy_start:	
+// 	fetcht 2,mem_mouse_max_cnt
+// 	increase 1,temp
+// 	storet 2,mem_mouse_max_cnt
+// 	fetch 2,mem_mouse_x_right_max_count
+// 	isub temp,null
+// 	branch p_ms_x_right,positive
+
+// 	fetch 2,mem_mouse_x_left_max_count
+// 	isub temp,null
+// 	branch p_ms_x_left_check,positive
+// 	rtn
+
+// p_ms_x_right:
+// 	setarg 5
+// 	store 2,mem_mouse_x
+// p_data:
+// 	enable user
+// 	rtn
+
+// p_ms_y_up:
+// 	setarg 5
+// 	store 2,mem_mouse_y
+// 	branch p_data
+
+// p_ms_y_down:
+// 	setarg -5
+// 	store 2,mem_mouse_y
+// 	branch p_data
+
+// p_ms_x_left_check:
+// 	fetch 2,mem_mouse_max_cnt
+// 	beq 400,p_mouse_max_cnt_init
+// p_ms_x_left:
+// 	setarg -5
+// 	store 2,mem_mouse_x
+// 	branch p_data
+
+// p_mouse_max_cnt_init:
+// 	setarg 0
+// 	store 2,mem_mouse_max_cnt
+// 	call p_ms_x_left
+// 	fetch 1,mem_mouse_y_count
+// 	pincrease 1
+// 	store 1,mem_mouse_y_count
+// 	sub pdata,120,null
+// 	branch p_ms_y_up,positive
+
+// 	sub pdata,240,null
+// 	branch p_ms_y_down_check,positive
+// 	rtn
+// p_ms_y_down_check:
+// 	fetch 1,mem_mouse_y_count
+// 	beq 240,p_mouse_y_count_init
+// 	branch p_ms_y_down
+
+// p_mouse_y_count_init:
+// 	jam 0,mem_mouse_y_count
+// 	branch p_ms_y_down
 
 
 p_mouse_motion_nodata:	
