Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/FD_Project/Only24g_AutoPair_16M/output/eeprom.dat	(revision 621)
+++ /YC1308AC/branch/mouse_project/FD_Project/Only24g_AutoPair_16M/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-06
+32
 0c
 c2
 84
@@ -43,7 +43,7 @@
 c0
 61
 81
-aa
+b0
 c0
 63
 81
@@ -59,35 +59,35 @@
 c0
 66
 02
-cf
+da
 c0
 67
 02
-73
+7e
 c0
 68
 01
-b9
+bf
 c0
 69
 81
-ca
+d0
 c0
 6b
 01
-8d
+93
 c0
 6c
 81
-e3
+e9
 c0
 6d
 02
-30
+3b
 c0
 74
 02
-3b
+46
 20
 20
 13
@@ -103,11 +103,11 @@
 c0
 43
 82
-37
+42
 c0
 50
 82
-4f
+5a
 c0
 54
 80
@@ -127,7 +127,7 @@
 c0
 76
 02
-70
+7b
 20
 20
 13
@@ -1387,7 +1387,7 @@
 24
 5a
 01
-cc
+d2
 70
 4b
 e1
@@ -1540,6 +1540,30 @@
 40
 60
 93
+6f
+e0
+80
+a1
+79
+3f
+fe
+03
+67
+e0
+80
+a1
+6f
+e0
+80
+9f
+79
+3f
+fe
+03
+67
+e0
+80
+9f
 20
 40
 5b
@@ -1599,15 +1623,15 @@
 c0
 1e
 01
-a5
+ab
 c0
 19
 01
-92
+98
 c0
 22
 01
-99
+9f
 20
 20
 43
@@ -1619,7 +1643,7 @@
 c0
 00
 81
-96
+9c
 70
 4b
 76
@@ -1723,7 +1747,7 @@
 c0
 00
 01
-af
+b5
 20
 20
 3d
@@ -1775,7 +1799,7 @@
 20
 40
 01
-bc
+c2
 20
 20
 40
@@ -1827,7 +1851,7 @@
 20
 3a
 02
-06
+11
 67
 e0
 cb
@@ -1855,7 +1879,7 @@
 c0
 18
 01
-d4
+da
 c0
 18
 c2
@@ -1875,7 +1899,7 @@
 20
 20
 01
-cd
+d3
 6f
 e0
 c9
@@ -1883,7 +1907,7 @@
 c0
 2d
 01
-dd
+e3
 c0
 6c
 41
@@ -1911,7 +1935,7 @@
 20
 20
 01
-cd
+d3
 70
 49
 27
@@ -1939,7 +1963,7 @@
 20
 40
 01
-ee
+f4
 20
 40
 3e
@@ -1947,7 +1971,7 @@
 20
 40
 02
-ea
+f5
 20
 40
 23
@@ -1963,7 +1987,7 @@
 20
 40
 02
-03
+0e
 20
 40
 40
@@ -1975,7 +1999,7 @@
 20
 40
 02
-1b
+26
 20
 20
 44
@@ -2007,23 +2031,43 @@
 20
 3a
 01
-f7
+fd
 20
 40
-01
-f9
+02
+04
 20
 20
 49
 20
 20
 40
-01
-f9
+02
+04
+20
+40
+02
+00
 20
 20
 49
 12
+d8
+40
+00
+03
+20
+40
+3f
+56
+d8
+40
+00
+13
+20
+20
+3f
+56
 68
 48
 c9
@@ -2071,7 +2115,7 @@
 da
 40
 02
-06
+11
 20
 20
 31
@@ -2127,11 +2171,11 @@
 20
 41
 02
-15
+20
 24
 41
 02
-19
+24
 20
 20
 48
@@ -2167,7 +2211,7 @@
 c0
 00
 02
-21
+2c
 6f
 e4
 4b
@@ -2183,7 +2227,7 @@
 20
 20
 02
-24
+2f
 6f
 e4
 4b
@@ -2219,7 +2263,7 @@
 20
 22
 82
-2b
+36
 20
 20
 44
@@ -2315,7 +2359,7 @@
 c0
 04
 82
-43
+4e
 20
 20
 4d
@@ -2415,7 +2459,7 @@
 c0
 02
 02
-5c
+67
 20
 20
 19
@@ -2431,7 +2475,7 @@
 c0
 09
 02
-60
+6b
 20
 20
 1c
@@ -2563,7 +2607,7 @@
 20
 40
 02
-81
+8c
 20
 20
 45
@@ -2635,11 +2679,11 @@
 c0
 00
 82
-94
+9f
 20
 40
 02
-95
+a0
 20
 20
 47
@@ -2671,7 +2715,7 @@
 20
 40
 02
-b6
+c1
 67
 e1
 4c
@@ -2691,7 +2735,7 @@
 24
 5a
 02
-b2
+bd
 60
 49
 48
@@ -2727,7 +2771,7 @@
 20
 40
 02
-b6
+c1
 67
 e1
 4c
@@ -2747,7 +2791,7 @@
 24
 5a
 02
-b2
+bd
 60
 49
 48
@@ -2787,11 +2831,11 @@
 20
 3a
 02
-b9
+c4
 20
 20
 02
-be
+c9
 6f
 e0
 cc
@@ -2799,7 +2843,7 @@
 20
 40
 02
-c8
+d3
 67
 e0
 cc
@@ -2823,7 +2867,7 @@
 20
 40
 02
-c8
+d3
 20
 5a
 7e
@@ -2831,11 +2875,11 @@
 20
 40
 02
-c4
+cf
 20
 20
 02
-bc
+c7
 20
 40
 47
@@ -2915,7 +2959,7 @@
 24
 21
 02
-e8
+f3
 6f
 e0
 c4
@@ -2923,7 +2967,7 @@
 c0
 81
 02
-e0
+eb
 68
 49
 48
@@ -3080,8 +3124,8 @@
 60
 00
 00
-2c
-40
+10
+67
 aa
 55
 40
@@ -4319,52 +4363,8 @@
 55
 2b
 7a
-b6
-fb
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+6b
+74
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-1f
-e3
+26
+4a
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/FD_Project/Only24g_AutoPair_16M/output/program.lis	(revision 621)
+++ /YC1308AC/branch/mouse_project/FD_Project/Only24g_AutoPair_16M/output/program.lis	(working copy)
@@ -9,30 +9,30 @@
 0006 c04f8090 beq patch13_7 ,p_init_param 
 0007 c0570092 beq patch15_6 ,p_app_init 
 0008 c0580071 beq patch16_0 ,p_app_evt_100ms_loop 
-0009 c06181aa beq patch18_3 ,p_mouse_start_work 
+0009 c06181b0 beq patch18_3 ,p_mouse_start_work 
 000a c063816d beq patch18_7 ,p_mouse_app_enter_hibernate 
 000b c0648171 beq patch19_1 ,p_mouse_setgpio_hibernate 
 000c c065017c beq patch19_2 ,p_mouse_lpm_before_common 
-000d c06602cf beq patch19_4 ,p_mouse_adc_read_start 
-000e c0670273 beq patch19_6 ,p_mouse_motion 
-000f c06801b9 beq patch1a_0 ,p_mouse_seting_dpi 
-0010 c06981ca beq patch1a_3 ,p_mouse_init_sunt 
-0011 c06b018d beq patch1a_6 ,p_mouse_priority_bb_event 
-0012 c06c81e3 beq patch1b_1 ,p_mouse_bb_event_timer 
-0013 c06d0230 beq patch1b_2 ,p_mouse_start_discovery 
-0014 c074023b beq patch1d_0 ,p_hid_rx_process 
+000d c06602da beq patch19_4 ,p_mouse_adc_read_start 
+000e c067027e beq patch19_6 ,p_mouse_motion 
+000f c06801bf beq patch1a_0 ,p_mouse_seting_dpi 
+0010 c06981d0 beq patch1a_3 ,p_mouse_init_sunt 
+0011 c06b0193 beq patch1a_6 ,p_mouse_priority_bb_event 
+0012 c06c81e9 beq patch1b_1 ,p_mouse_bb_event_timer 
+0013 c06d023b beq patch1b_2 ,p_mouse_start_discovery 
+0014 c0740246 beq patch1d_0 ,p_hid_rx_process 
 0015 2020137c branch loop 
 
 pf_patch_ext:
 0016 c0198051 beq patch26_3 ,p_adc_init_data 
 0017 c01a0056 beq patch26_4 ,p_enable_adc 
-0018 c0438237 beq patch30_7 ,p_ui_timer_check 
-0019 c050824f beq patch34_1 ,p_le_slave_match 
+0018 c0438242 beq patch30_7 ,p_ui_timer_check 
+0019 c050825a beq patch34_1 ,p_le_slave_match 
 001a c054808a beq patch35_1 ,p_le_enable 
 001b c0710109 beq patch3c_2 ,p_g24_pair_dispatch 
 001c c0748110 beq patch3d_1 ,p_g24_reconn_dispatch 
 001d c075012a beq patch3d_2 ,p_g24_transmit_no_interrupt 
-001e c0760270 beq patch3d_4 ,p_g24_lpm_wait 
+001e c076027b beq patch3d_4 ,p_g24_lpm_wait 
 001f 2020137c branch loop 
 
 p_soft_reset:
@@ -421,7 +421,7 @@
 
 p_mouse_wakeup_24g:
 0158 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0159 245a01cc ncall p_mouse_init_sensor_wakeup ,blank 
+0159 245a01d2 ncall p_mouse_init_sensor_wakeup ,blank 
 015a 704be100 jam 0 ,mem_sensor_shutdown_flag 
 015b 20600000 rtn 
 
@@ -472,491 +472,504 @@
 017d 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
 017e d840003f arg gpcfg_output_high ,temp 
 017f 20406093 call gpio_config_function_int 
-0180 20405b04 call twspi_disable 
-0181 6848c918 fetcht 1 ,mem_lbutton_gpio 
-0182 20406036 call gpio_set_wake 
-0183 6848c919 fetcht 1 ,mem_rbutton_gpio 
-0184 20406036 call gpio_set_wake 
-0185 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0186 20406036 call gpio_set_wake 
-0187 6848c90d fetcht 1 ,mem_bk_button_gpio 
+0180 6fe080a1 fetch 1 ,mem_gpio_wakeup_low + 2 
+0181 793ffe03 set0 3 ,pdata 
+0182 67e080a1 store 1 ,mem_gpio_wakeup_low + 2 
+0183 6fe0809f fetch 1 ,mem_gpio_wakeup_low 
+0184 793ffe03 set0 3 ,pdata 
+0185 67e0809f store 1 ,mem_gpio_wakeup_low 
+0186 20405b04 call twspi_disable 
+0187 6848c918 fetcht 1 ,mem_lbutton_gpio 
 0188 20406036 call gpio_set_wake 
-0189 6848c90e fetcht 1 ,mem_fw_button_gpio 
+0189 6848c919 fetcht 1 ,mem_rbutton_gpio 
 018a 20406036 call gpio_set_wake 
-018b 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-018c 20206036 branch gpio_set_wake 
+018b 6848c91a fetcht 1 ,mem_mbutton_gpio 
+018c 20406036 call gpio_set_wake 
+018d 6848c90d fetcht 1 ,mem_bk_button_gpio 
+018e 20406036 call gpio_set_wake 
+018f 6848c90e fetcht 1 ,mem_fw_button_gpio 
+0190 20406036 call gpio_set_wake 
+0191 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+0192 20206036 branch gpio_set_wake 
 
 p_mouse_priority_bb_event:
-018d 1a627e00 copy regc ,pdata 
-018e c01e01a5 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-018f c0190192 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-0190 c0220199 beq bt_evt_le_parse_conn_param_accepted ,p_mouse_le_parse_conn_param_accepted 
-0191 20204336 branch mouse_priority_bb_event + 2 
+0193 1a627e00 copy regc ,pdata 
+0194 c01e01ab beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0195 c0190198 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0196 c022019f beq bt_evt_le_parse_conn_param_accepted ,p_mouse_le_parse_conn_param_accepted 
+0197 20204336 branch mouse_priority_bb_event + 2 
 
 p_mouse_le_ll_start_encryt:
-0192 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-0193 c0008196 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-0194 704b7614 jam 20 ,mem_le_start_encrypt_timer 
-0195 20204373 branch mouse_le_ll_enable_start_enc_flag 
+0198 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0199 c000819c beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+019a 704b7614 jam 20 ,mem_le_start_encrypt_timer 
+019b 20204373 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_ll_reconn_start_encryt:
-0196 2040436c call mouse_updata_le_param 
-0197 704b7605 jam 5 ,mem_le_start_encrypt_timer 
-0198 20204373 branch mouse_le_ll_enable_start_enc_flag 
+019c 2040436c call mouse_updata_le_param 
+019d 704b7605 jam 5 ,mem_le_start_encrypt_timer 
+019e 20204373 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_parse_conn_param_accepted:
-0199 6fe082c1 fetch 1 ,mem_le_new_conninterval 
-019a 1fe67c0c sub pdata ,le_interval_15ms ,null 
-019b 24214384 nbranch mouse_le_conn_param_lpm_disable ,positive 
-019c 67e14372 store 2 ,mem_le_interval_min 
-019d 67e14374 store 2 ,mem_le_interval_min + 2 
-019e 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
-019f 6848cb8a fetcht 1 ,mem_lpm_mult_init 
-01a0 98467c00 isub temp ,null 
-01a1 2021439a branch mouse_le_lpm_mult_reinit ,positive 
-01a2 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
-01a3 67e0cb8a store 1 ,mem_lpm_mult_init 
-01a4 20204386 branch mouse_le_conn_param_lpm_enable 
+019f 6fe082c1 fetch 1 ,mem_le_new_conninterval 
+01a0 1fe67c0c sub pdata ,le_interval_15ms ,null 
+01a1 24214384 nbranch mouse_le_conn_param_lpm_disable ,positive 
+01a2 67e14372 store 2 ,mem_le_interval_min 
+01a3 67e14374 store 2 ,mem_le_interval_min + 2 
+01a4 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
+01a5 6848cb8a fetcht 1 ,mem_lpm_mult_init 
+01a6 98467c00 isub temp ,null 
+01a7 2021439a branch mouse_le_lpm_mult_reinit ,positive 
+01a8 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
+01a9 67e0cb8a store 1 ,mem_lpm_mult_init 
+01aa 20204386 branch mouse_le_conn_param_lpm_enable 
 
 p_mouse_24g_attempt_success:
-01a5 6fe2483c fetch 4 ,mem_24g_addr 
-01a6 67e24891 store 4 ,mem_24g_receiver_addr 
-01a7 67e24993 store 4 ,mem_mouse_24g_addr 
-01a8 204048c6 call mouse_device_poweron_timer_init 
-01a9 2020484e branch mouse_24g_attempt_success 
+01ab 6fe2483c fetch 4 ,mem_24g_addr 
+01ac 67e24891 store 4 ,mem_24g_receiver_addr 
+01ad 67e24993 store 4 ,mem_mouse_24g_addr 
+01ae 204048c6 call mouse_device_poweron_timer_init 
+01af 2020484e branch mouse_24g_attempt_success 
 
 p_mouse_start_work:
-01aa 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-01ab c297c80a bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
-01ac 6fe0c938 fetch 1 ,mem_device_flag 
-01ad c00001af beq mode_24g_device ,p_mouse_24g_start_mode 
-01ae 20203d57 branch mouse_start_work + 5 
+01b0 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01b1 c297c80a bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
+01b2 6fe0c938 fetch 1 ,mem_device_flag 
+01b3 c00001b5 beq mode_24g_device ,p_mouse_24g_start_mode 
+01b4 20203d57 branch mouse_start_work + 5 
 
 p_mouse_24g_start_mode:
-01af 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-01b0 c308c803 bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
-01b1 20403d65 call mouse_wakeup_from_power_check 
-01b2 20344806 branch mouse_24g_reconn_dongle_start ,user 
-01b3 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-01b4 c298480c bbit1 mouse_enable_auto_24g_paring ,mouse_24g_reconn_general_dongle 
-01b5 c318c80c bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
-01b6 20404110 call mouse_key_check_once 
-01b7 1a217e07 and rega ,0x07 ,pdata 
-01b8 202047ff branch mouse_24g_start_mode + 9 
+01b5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01b6 c308c803 bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+01b7 20403d65 call mouse_wakeup_from_power_check 
+01b8 20344806 branch mouse_24g_reconn_dongle_start ,user 
+01b9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01ba c298480c bbit1 mouse_enable_auto_24g_paring ,mouse_24g_reconn_general_dongle 
+01bb c318c80c bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
+01bc 20404110 call mouse_key_check_once 
+01bd 1a217e07 and rega ,0x07 ,pdata 
+01be 202047ff branch mouse_24g_start_mode + 9 
 
 p_mouse_seting_dpi:
-01b9 2040408f call mouse_setting_dpi_4_level 
-01ba 204001bc call p_mouse_dpi_led_blink_delay 
-01bb 20204098 branch mouse_seting_sensor_type 
+01bf 2040408f call mouse_setting_dpi_4_level 
+01c0 204001c2 call p_mouse_dpi_led_blink_delay 
+01c1 20204098 branch mouse_seting_sensor_type 
 
 p_mouse_dpi_led_blink_delay:
-01bc 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-01bd c17f8000 rtneq gpio_disable 
-01be 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
-01bf 247a0000 nrtn blank 
-01c0 6fe14883 fetch 2 ,mem_24g_pair_timeout 
-01c1 247a0000 nrtn blank 
-01c2 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
-01c3 247a0000 nrtn blank 
-01c4 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+01c2 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+01c3 c17f8000 rtneq gpio_disable 
+01c4 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
 01c5 247a0000 nrtn blank 
-01c6 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
-01c7 203a0206 branch p_mouse_dpi_led_blink_init ,blank 
-01c8 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
-01c9 20600000 rtn 
+01c6 6fe14883 fetch 2 ,mem_24g_pair_timeout 
+01c7 247a0000 nrtn blank 
+01c8 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
+01c9 247a0000 nrtn blank 
+01ca 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+01cb 247a0000 nrtn blank 
+01cc 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
+01cd 203a0211 branch p_mouse_dpi_led_blink_init ,blank 
+01ce 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
+01cf 20600000 rtn 
 
 p_mouse_init_sunt:
-01ca 20403f65 call mouse_sensor_spi_init 
-01cb 20758000 rtn wake 
+01d0 20403f65 call mouse_sensor_spi_init 
+01d1 20758000 rtn wake 
 
 p_mouse_init_sensor_wakeup:
-01cc 20404236 call mouse_sensor_poweron 
+01d2 20404236 call mouse_sensor_poweron 
 
 p_mouse_init_sensor:
-01cd 204041b5 call mouse_read_sensor_id 
-01ce c01801d4 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-01cf c018c217 beq p3065_id1 ,mouse_init_p3065 
-01d0 c02c4220 beq pka8g2_id1 ,mouse_ka8g2_id2_judge 
-01d1 204041b2 call mouse_twspi_reset 
-01d2 20001af4 nop 6900 
-01d3 202001cd branch p_mouse_init_sensor 
+01d3 204041b5 call mouse_read_sensor_id 
+01d4 c01801da beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+01d5 c018c217 beq p3065_id1 ,mouse_init_p3065 
+01d6 c02c4220 beq pka8g2_id1 ,mouse_ka8g2_id2_judge 
+01d7 204041b2 call mouse_twspi_reset 
+01d8 20001af4 nop 6900 
+01d9 202001d3 branch p_mouse_init_sensor 
 
 p_mouse_init_p32xx_id2_judge:
-01d4 6fe0c9c2 fetch 1 ,mem_sensor_id2 
-01d5 c02d01dd beq p_mx8650 ,p_mouse_mx8650_init_param 
-01d6 c06c41cb beq p8009_id2 ,mouse_8009_init_param 
-01d7 c068c1da beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
-01d8 c06941e3 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
-01d9 c00141ea beq p3212_id2 ,mouse_3212_init_param 
-01da c02a41ed beq pka8_id2 ,mouse_ka8_init_param_check 
-01db c0284214 beq p6520a_id2 ,mouse_p6520_init_param 
-01dc 202001cd branch p_mouse_init_sensor 
+01da 6fe0c9c2 fetch 1 ,mem_sensor_id2 
+01db c02d01e3 beq p_mx8650 ,p_mouse_mx8650_init_param 
+01dc c06c41cb beq p8009_id2 ,mouse_8009_init_param 
+01dd c068c1da beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+01de c06941e3 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+01df c00141ea beq p3212_id2 ,mouse_3212_init_param 
+01e0 c02a41ed beq pka8_id2 ,mouse_ka8_init_param_check 
+01e1 c0284214 beq p6520a_id2 ,mouse_p6520_init_param 
+01e2 202001d3 branch p_mouse_init_sensor 
 
 p_mouse_mx8650_init_param:
-01dd 70492705 jam mx8650 ,mem_config_sensor_type 
-01de 20404232 call mouse_sensor_reset 
-01df 20407d12 call delay_10ms 
-01e0 da604be6 arg mem_sensor_8650_init_new ,regc 
-01e1 2040422b call mouse_sensor_wr_seq 
-01e2 2020408e branch mouse_dpi_config 
+01e3 70492705 jam mx8650 ,mem_config_sensor_type 
+01e4 20404232 call mouse_sensor_reset 
+01e5 20407d12 call delay_10ms 
+01e6 da604be6 arg mem_sensor_8650_init_new ,regc 
+01e7 2040422b call mouse_sensor_wr_seq 
+01e8 2020408e branch mouse_dpi_config 
 
 p_mouse_bb_event_timer:
-01e3 204001ee call p_mouse_device_poweron_timer 
-01e4 20403e9b call mouse_adc_read 
-01e5 204002ea call p_mouse_low_voltage_led_timer 
-01e6 2040232b call g24_pair_timeout_timer 
-01e7 20402556 call g24_reconn_timeout_timer 
-01e8 204047cd call mouse_24g_long_sleep_param_update_timer 
-01e9 20400203 call p_mouse_dpi_led_blink_delay_timer 
-01ea 2040407c call mouse_dpi_key_check_long_press 
-01eb 204044cc call mouse_bt_discovery_check 
-01ec 2040021b call p_mouse_commbination_key_process 
-01ed 202044c0 branch mouse_bb_event_timer + 11 
+01e9 204001f4 call p_mouse_device_poweron_timer 
+01ea 20403e9b call mouse_adc_read 
+01eb 204002f5 call p_mouse_low_voltage_led_timer 
+01ec 2040232b call g24_pair_timeout_timer 
+01ed 20402556 call g24_reconn_timeout_timer 
+01ee 204047cd call mouse_24g_long_sleep_param_update_timer 
+01ef 2040020e call p_mouse_dpi_led_blink_delay_timer 
+01f0 2040407c call mouse_dpi_key_check_long_press 
+01f1 204044cc call mouse_bt_discovery_check 
+01f2 20400226 call p_mouse_commbination_key_process 
+01f3 202044c0 branch mouse_bb_event_timer + 11 
 
 p_mouse_device_poweron_timer:
-01ee 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-01ef c4100000 rtnbit0 mouse_enable_power_on_led 
-01f0 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
-01f1 207a0000 rtn blank 
-01f2 1fe0ffff increase -1 ,pdata 
-01f3 67e0cba7 store 1 ,mem_mouse_device_poweron_timer_count 
-01f4 203a01f7 branch p_mouse_device_led_off ,blank 
+01f4 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01f5 c4100000 rtnbit0 mouse_enable_power_on_led 
+01f6 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+01f7 207a0000 rtn blank 
+01f8 1fe0ffff increase -1 ,pdata 
+01f9 67e0cba7 store 1 ,mem_mouse_device_poweron_timer_count 
+01fa 203a01fd branch p_mouse_device_led_off ,blank 
 
 p_mouse_device_led_on:
-01f5 204001f9 call p_mouse_led_config_ouput 
-01f6 20204920 branch mouse_device_led_on 
+01fb 20400204 call p_mouse_led_config_ouput 
+01fc 20204920 branch mouse_device_led_on 
 
 p_mouse_device_led_off:
-01f7 204001f9 call p_mouse_led_config_ouput 
-01f8 20204912 branch mouse_device_led_off 
+01fd 20400204 call p_mouse_led_config_ouput 
+01fe 20400200 call p_mouse_reuse_ice_gpio_config_input 
+01ff 20204912 branch mouse_device_led_off 
+
+p_mouse_reuse_ice_gpio_config_input:
+0200 d8400003 arg 0x03 ,temp 
+0201 20403f56 call mouse_gpio_config_input_pu 
+0202 d8400013 arg 0x13 ,temp 
+0203 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_led_config_ouput:
-01f9 6848c921 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
-01fa 20406069 call gpio_config_output 
-01fb 6848c915 fetcht 1 ,mem_config_device_24g_led_gpio 
-01fc 20406069 call gpio_config_output 
-01fd 6848c916 fetcht 1 ,mem_config_device_bt1_led_gpio 
-01fe 20406069 call gpio_config_output 
-01ff 6848c922 fetcht 1 ,mem_config_device_bt2_led_gpio 
-0200 20406069 call gpio_config_output 
-0201 6848c923 fetcht 1 ,mem_dpi_led_gpio 
-0202 20206069 branch gpio_config_output 
+0204 6848c921 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
+0205 20406069 call gpio_config_output 
+0206 6848c915 fetcht 1 ,mem_config_device_24g_led_gpio 
+0207 20406069 call gpio_config_output 
+0208 6848c916 fetcht 1 ,mem_config_device_bt1_led_gpio 
+0209 20406069 call gpio_config_output 
+020a 6848c922 fetcht 1 ,mem_config_device_bt2_led_gpio 
+020b 20406069 call gpio_config_output 
+020c 6848c923 fetcht 1 ,mem_dpi_led_gpio 
+020d 20206069 branch gpio_config_output 
 
 p_mouse_dpi_led_blink_delay_timer:
-0203 da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
-0204 da400206 arg p_mouse_dpi_led_blink_init ,regb 
-0205 2020318a branch timer_single_step 
+020e da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
+020f da400211 arg p_mouse_dpi_led_blink_init ,regb 
+0210 2020318a branch timer_single_step 
 
 p_mouse_dpi_led_blink_init:
-0206 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0207 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
-0208 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
-0209 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-020a 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
-020b 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
-020c 67e14930 store 2 ,mem_mouse_on_time 
-020d 67e14932 store 2 ,mem_mouse_off_time 
-020e da200000 arg 0 ,rega 
-020f 6848c992 fetcht 1 ,mem_mouse_dpi 
-0210 18408402 increase 2 ,temp 
-0211 18467c03 sub temp ,3 ,null 
-0212 20410215 call p_mouse_dpi_led_blink_init_level_4 ,positive 
-0213 24410219 ncall p_mouse_dpi_led_blink_count_clean ,positive 
-0214 202048ff branch mouse_dpi_led_blink_init_end 
+0211 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0212 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
+0213 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
+0214 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+0215 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
+0216 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
+0217 67e14930 store 2 ,mem_mouse_on_time 
+0218 67e14932 store 2 ,mem_mouse_off_time 
+0219 da200000 arg 0 ,rega 
+021a 6848c992 fetcht 1 ,mem_mouse_dpi 
+021b 18408402 increase 2 ,temp 
+021c 18467c03 sub temp ,3 ,null 
+021d 20410220 call p_mouse_dpi_led_blink_init_level_4 ,positive 
+021e 24410224 ncall p_mouse_dpi_led_blink_count_clean ,positive 
+021f 202048ff branch mouse_dpi_led_blink_init_end 
 
 p_mouse_dpi_led_blink_init_level_4:
-0215 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0216 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
-0217 18408401 increase 1 ,temp 
-0218 20600000 rtn 
+0220 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0221 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
+0222 18408401 increase 1 ,temp 
+0223 20600000 rtn 
 
 p_mouse_dpi_led_blink_count_clean:
-0219 184085fd increase -3 ,temp 
-021a 20600000 rtn 
+0224 184085fd increase -3 ,temp 
+0225 20600000 rtn 
 
 p_mouse_commbination_key_process:
-021b 6fe0c938 fetch 1 ,mem_device_flag 
-021c c0000221 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
-021d 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-021e c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
-021f 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
-0220 20200224 branch p_mouse_commbination_key_start 
+0226 6fe0c938 fetch 1 ,mem_device_flag 
+0227 c000022c beq mode_24g_device ,p_mouse_24g_commbination_key_process 
+0228 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0229 c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
+022a 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
+022b 2020022f branch p_mouse_commbination_key_start 
 
 p_mouse_24g_commbination_key_process:
-0221 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0222 c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
-0223 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
+022c 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+022d c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
+022e 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
 
 p_mouse_commbination_key_start:
-0224 6048cb9d storet 1 ,mem_mouse_commbination_key 
-0225 20404115 call mouse_check_key_gpio 
-0226 1fe17e07 and pdata ,0x07 ,pdata 
-0227 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
-0228 98467c00 isub temp ,null 
-0229 2022822b branch p_mouse_commbination_key_down ,zero 
-022a 202044eb branch mouse_commbination_key_up 
+022f 6048cb9d storet 1 ,mem_mouse_commbination_key 
+0230 20404115 call mouse_check_key_gpio 
+0231 1fe17e07 and pdata ,0x07 ,pdata 
+0232 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
+0233 98467c00 isub temp ,null 
+0234 20228236 branch p_mouse_commbination_key_down ,zero 
+0235 202044eb branch mouse_commbination_key_up 
 
 p_mouse_commbination_key_down:
-022b 204044f6 call mouse_combination_ui_timer 
-022c 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
-022d c1008000 rtneq commbination_key_state_down 
-022e 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
-022f 20600000 rtn 
+0236 204044f6 call mouse_combination_ui_timer 
+0237 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
+0238 c1008000 rtneq commbination_key_state_down 
+0239 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
+023a 20600000 rtn 
 
 p_mouse_start_discovery:
-0230 6fe1478c fetch 2 ,mem_ui_state_map 
-0231 2feffe0b isolate1 ui_state_ble_adv ,pdata 
-0232 2040c581 call mouse_stop_le_adv ,true 
-0233 6fe1478c fetch 2 ,mem_ui_state_map 
-0234 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
-0235 2040c322 call mouse_cancel_reconnect ,true 
-0236 20204554 branch mouse_start_discovery + 1 
+023b 6fe1478c fetch 2 ,mem_ui_state_map 
+023c 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+023d 2040c581 call mouse_stop_le_adv ,true 
+023e 6fe1478c fetch 2 ,mem_ui_state_map 
+023f 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+0240 2040c322 call mouse_cancel_reconnect ,true 
+0241 20204554 branch mouse_start_discovery + 1 
 
 p_ui_timer_check:
-0237 6fe0cbe2 fetch 1 ,mem_power_on_flag 
-0238 245a7861 ncall ui_timer_init ,blank 
-0239 704be200 jam 0 ,mem_power_on_flag 
-023a 20207851 branch ui_timer_check + 1 
+0242 6fe0cbe2 fetch 1 ,mem_power_on_flag 
+0243 245a7861 ncall ui_timer_init ,blank 
+0244 704be200 jam 0 ,mem_power_on_flag 
+0245 20207851 branch ui_timer_check + 1 
 
 p_hid_rx_process:
-023b 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
-023c 1fe20c00 copy pdata ,contr 
-023d efe08006 ifetch 1 ,contr 
-023e 67e0c5f5 store 1 ,mem_l2cap_rcv_hidtype 
-023f 1fe1040f and pdata ,0x0f ,temp 
-0240 1ff1fe00 rshift4 pdata ,pdata 
-0241 c0048243 beq hid_type_set_idle ,p_hid_rx_process_handshake 
-0242 20204d93 branch hid_rx_process + 7 
+0246 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
+0247 1fe20c00 copy pdata ,contr 
+0248 efe08006 ifetch 1 ,contr 
+0249 67e0c5f5 store 1 ,mem_l2cap_rcv_hidtype 
+024a 1fe1040f and pdata ,0x0f ,temp 
+024b 1ff1fe00 rshift4 pdata ,pdata 
+024c c004824e beq hid_type_set_idle ,p_hid_rx_process_handshake 
+024d 20204d93 branch hid_rx_process + 7 
 
 p_hid_rx_process_handshake:
-0243 da200001 arg 1 ,rega 
-0244 20404dc0 call hid_malloc_tx_buff 
-0245 6fe144dc fetch 2 ,mem_hid_ctrl_remote_cid 
-0246 e7e10005 istore 2 ,contw 
-0247 58000000 setarg 0 
-0248 e7e08005 istore 1 ,contw 
-0249 70095001 jam 1 ,mem_ui_data_txbuff_length 
-024a 6fe0c4e2 fetch 1 ,mem_hid_control_state 
-024b 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
-024c 67e0c4e2 store 1 ,mem_hid_control_state 
-024d 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
-024e 20207871 branch ui_ipc_send_event 
+024e da200001 arg 1 ,rega 
+024f 20404dc0 call hid_malloc_tx_buff 
+0250 6fe144dc fetch 2 ,mem_hid_ctrl_remote_cid 
+0251 e7e10005 istore 2 ,contw 
+0252 58000000 setarg 0 
+0253 e7e08005 istore 1 ,contw 
+0254 70095001 jam 1 ,mem_ui_data_txbuff_length 
+0255 6fe0c4e2 fetch 1 ,mem_hid_control_state 
+0256 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
+0257 67e0c4e2 store 1 ,mem_hid_control_state 
+0258 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
+0259 20207871 branch ui_ipc_send_event 
 
 p_le_slave_match:
-024f 6fe0c3dd fetch 1 ,mem_le_md_count 
-0250 1fe0fe01 pincrease 1 
-0251 67e0c3dd store 1 ,mem_le_md_count 
-0252 c006165a beq le_md_max_count ,le_slave_cont 
-0253 2040191b call le_acknowledge 
-0254 2040196a call le_prepare_tx 
-0255 6fe082bd fetch 1 ,mem_le_tx_phy 
-0256 2040168b call le_enable_phy_by_pdata 
-0257 20401838 call le_transmit 
-0258 20201655 branch le_slave_match + 10 
+025a 6fe0c3dd fetch 1 ,mem_le_md_count 
+025b 1fe0fe01 pincrease 1 
+025c 67e0c3dd store 1 ,mem_le_md_count 
+025d c006165a beq le_md_max_count ,le_slave_cont 
+025e 2040191b call le_acknowledge 
+025f 2040196a call le_prepare_tx 
+0260 6fe082bd fetch 1 ,mem_le_tx_phy 
+0261 2040168b call le_enable_phy_by_pdata 
+0262 20401838 call le_transmit 
+0263 20201655 branch le_slave_match + 10 
 
 p_le_parse_l2cap:
-0259 efe10006 ifetch 2 ,contr 
-025a c002025c beq le_l2cap_cid_att ,p_le_parse_att 
-025b 202019e4 branch le_parse_l2cap + 10 
+0264 efe10006 ifetch 2 ,contr 
+0265 c0020267 beq le_l2cap_cid_att ,p_le_parse_att 
+0266 202019e4 branch le_parse_l2cap + 10 
 
 p_le_parse_att:
-025c efe18006 ifetch 3 ,contr 
-025d 67e1c436 store 3 ,mem_le_att_opcode 
-025e c0090260 beq attop_write_request ,p_le_parse_att_write_request 
-025f 20201cd3 branch le_parse_att + 2 
+0267 efe18006 ifetch 3 ,contr 
+0268 67e1c436 store 3 ,mem_le_att_opcode 
+0269 c009026b beq attop_write_request ,p_le_parse_att_write_request 
+026a 20201cd3 branch le_parse_att + 2 
 
 p_le_parse_att_write_request:
-0260 18c22200 copy contr ,rega 
-0261 6fe143d4 fetch 2 ,mem_le_l2cap_size 
-0262 1fe0a5fd add pdata ,-3 ,regb 
-0263 20401a25 call le_writeatt_cb 
-0264 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-0265 c07f9e73 beq 0xff ,le_send_att_write_response_check_auth 
-0266 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-0267 203a1e73 branch le_send_att_write_response_check_auth ,blank 
-0268 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
-0269 c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-026a 5800001a setarg 0x001a 
-026b 68494437 fetcht 2 ,mem_le_att_handle 
-026c 98467c00 isub temp ,null 
-026d 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
-026e 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
-026f 20201ec9 branch le_send_att_error_response 
+026b 18c22200 copy contr ,rega 
+026c 6fe143d4 fetch 2 ,mem_le_l2cap_size 
+026d 1fe0a5fd add pdata ,-3 ,regb 
+026e 20401a25 call le_writeatt_cb 
+026f 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0270 c07f9e73 beq 0xff ,le_send_att_write_response_check_auth 
+0271 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0272 203a1e73 branch le_send_att_write_response_check_auth ,blank 
+0273 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
+0274 c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0275 5800001a setarg 0x001a 
+0276 68494437 fetcht 2 ,mem_le_att_handle 
+0277 98467c00 isub temp ,null 
+0278 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
+0279 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
+027a 20201ec9 branch le_send_att_error_response 
 
 p_g24_lpm_wait:
-0270 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
-0271 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
-0272 202026bc branch g24_lpm_wait + 1 
+027b 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
+027c 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
+027d 202026bc branch g24_lpm_wait + 1 
 
 p_mouse_motion:
-0273 78547c00 disable user 
-0274 58000000 setarg 0 
-0275 67e348d1 store 6 ,mem_mouse_x 
-0276 20404240 call mouse_check_sensor_data 
-0277 2040408e call mouse_dpi_config 
-0278 20403f7e call mouse_zwheel 
-0279 20403f83 call mouse_t_zwheel 
-027a 204040dc call mouse_key 
-027b 6fe0c8d0 fetch 1 ,mem_mouse_key 
-027c 1fe17e1f and_into 0x1f ,pdata 
-027d 67e0c8d0 store 1 ,mem_mouse_key 
-027e 24344728 nbranch mouse_drawing_optima_init ,user 
-027f 20400281 call p_mouse_drawing_optima 
-0280 20204544 branch mouse_no_data_timer_init 
+027e 78547c00 disable user 
+027f 58000000 setarg 0 
+0280 67e348d1 store 6 ,mem_mouse_x 
+0281 20404240 call mouse_check_sensor_data 
+0282 2040408e call mouse_dpi_config 
+0283 20403f7e call mouse_zwheel 
+0284 20403f83 call mouse_t_zwheel 
+0285 204040dc call mouse_key 
+0286 6fe0c8d0 fetch 1 ,mem_mouse_key 
+0287 1fe17e1f and_into 0x1f ,pdata 
+0288 67e0c8d0 store 1 ,mem_mouse_key 
+0289 24344728 nbranch mouse_drawing_optima_init ,user 
+028a 2040028c call p_mouse_drawing_optima 
+028b 20204544 branch mouse_no_data_timer_init 
 
 p_mouse_drawing_optima:
-0281 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0282 c41c0000 rtnbit0 mouse_enable_smoother 
-0283 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0284 c1018000 rtneq p3212 
-0285 c1000000 rtneq p3205 
-0286 6fe248d1 fetch 4 ,mem_mouse_x 
-0287 207a0000 rtn blank 
-0288 204047bd call mouse_data_abs_check 
-0289 58000003 setarg 0x03 
-028a 204047b3 call mouse_pdata_greater_than_check 
-028b 205a47af call mouse_disable_asm ,blank 
-028c 245a47b1 ncall mouse_enable_asm ,blank 
-028d 58000002 setarg 0x02 
-028e 204047b8 call mouse_data_less_than_check 
-028f 205a47af call mouse_disable_asm ,blank 
-0290 6fe0c9c9 fetch 1 ,mem_mouse_asm_flag 
-0291 c0008294 beq 1 ,p_mouse_drawing_optima_modify 
-0292 20400295 call p_mouse_drawing_optima_modify + 1 
-0293 20204728 branch mouse_drawing_optima_init 
+028c 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+028d c41c0000 rtnbit0 mouse_enable_smoother 
+028e 6fe0c927 fetch 1 ,mem_config_sensor_type 
+028f c1018000 rtneq p3212 
+0290 c1000000 rtneq p3205 
+0291 6fe248d1 fetch 4 ,mem_mouse_x 
+0292 207a0000 rtn blank 
+0293 204047bd call mouse_data_abs_check 
+0294 58000003 setarg 0x03 
+0295 204047b3 call mouse_pdata_greater_than_check 
+0296 205a47af call mouse_disable_asm ,blank 
+0297 245a47b1 ncall mouse_enable_asm ,blank 
+0298 58000002 setarg 0x02 
+0299 204047b8 call mouse_data_less_than_check 
+029a 205a47af call mouse_disable_asm ,blank 
+029b 6fe0c9c9 fetch 1 ,mem_mouse_asm_flag 
+029c c000829f beq 1 ,p_mouse_drawing_optima_modify 
+029d 204002a0 call p_mouse_drawing_optima_modify + 1 
+029e 20204728 branch mouse_drawing_optima_init 
 
 p_mouse_drawing_optima_modify:
-0294 2040472d call mouse_drawing_optima_modify 
-0295 6fe148d1 fetch 2 ,mem_mouse_x 
-0296 68494c0e fetcht 2 ,mem_mouse_data_x_value 
-0297 98408400 iadd temp ,temp 
-0298 60494c0e storet 2 ,mem_mouse_data_x_value 
-0299 60494c12 storet 2 ,mem_mouse_data_xy_value 
-029a 204002b6 call p_mouse_xy_data_judge 
-029b 67e14c12 store 2 ,mem_mouse_data_xy_value 
-029c 68494c0e fetcht 2 ,mem_mouse_data_x_value 
-029d 98467e00 isub temp ,pdata 
-029e 684948d1 fetcht 2 ,mem_mouse_x 
-029f 245a02b2 ncall p_mouse_xy_data_judge_compensate ,blank 
-02a0 604948d1 storet 2 ,mem_mouse_x 
-02a1 6fe14c12 fetch 2 ,mem_mouse_data_xy_value 
-02a2 67e14c0e store 2 ,mem_mouse_data_x_value 
-02a3 6fe148d3 fetch 2 ,mem_mouse_y 
-02a4 68494c10 fetcht 2 ,mem_mouse_data_y_value 
-02a5 98408400 iadd temp ,temp 
-02a6 60494c10 storet 2 ,mem_mouse_data_y_value 
-02a7 60494c12 storet 2 ,mem_mouse_data_xy_value 
-02a8 204002b6 call p_mouse_xy_data_judge 
-02a9 67e14c12 store 2 ,mem_mouse_data_xy_value 
-02aa 68494c10 fetcht 2 ,mem_mouse_data_y_value 
-02ab 98467e00 isub temp ,pdata 
-02ac 684948d3 fetcht 2 ,mem_mouse_y 
-02ad 245a02b2 ncall p_mouse_xy_data_judge_compensate ,blank 
-02ae 604948d3 storet 2 ,mem_mouse_y 
-02af 6fe14c12 fetch 2 ,mem_mouse_data_xy_value 
-02b0 67e14c10 store 2 ,mem_mouse_data_y_value 
-02b1 20600000 rtn 
+029f 2040472d call mouse_drawing_optima_modify 
+02a0 6fe148d1 fetch 2 ,mem_mouse_x 
+02a1 68494c0e fetcht 2 ,mem_mouse_data_x_value 
+02a2 98408400 iadd temp ,temp 
+02a3 60494c0e storet 2 ,mem_mouse_data_x_value 
+02a4 60494c12 storet 2 ,mem_mouse_data_xy_value 
+02a5 204002c1 call p_mouse_xy_data_judge 
+02a6 67e14c12 store 2 ,mem_mouse_data_xy_value 
+02a7 68494c0e fetcht 2 ,mem_mouse_data_x_value 
+02a8 98467e00 isub temp ,pdata 
+02a9 684948d1 fetcht 2 ,mem_mouse_x 
+02aa 245a02bd ncall p_mouse_xy_data_judge_compensate ,blank 
+02ab 604948d1 storet 2 ,mem_mouse_x 
+02ac 6fe14c12 fetch 2 ,mem_mouse_data_xy_value 
+02ad 67e14c0e store 2 ,mem_mouse_data_x_value 
+02ae 6fe148d3 fetch 2 ,mem_mouse_y 
+02af 68494c10 fetcht 2 ,mem_mouse_data_y_value 
+02b0 98408400 iadd temp ,temp 
+02b1 60494c10 storet 2 ,mem_mouse_data_y_value 
+02b2 60494c12 storet 2 ,mem_mouse_data_xy_value 
+02b3 204002c1 call p_mouse_xy_data_judge 
+02b4 67e14c12 store 2 ,mem_mouse_data_xy_value 
+02b5 68494c10 fetcht 2 ,mem_mouse_data_y_value 
+02b6 98467e00 isub temp ,pdata 
+02b7 684948d3 fetcht 2 ,mem_mouse_y 
+02b8 245a02bd ncall p_mouse_xy_data_judge_compensate ,blank 
+02b9 604948d3 storet 2 ,mem_mouse_y 
+02ba 6fe14c12 fetch 2 ,mem_mouse_data_xy_value 
+02bb 67e14c10 store 2 ,mem_mouse_data_y_value 
+02bc 20600000 rtn 
 
 p_mouse_xy_data_judge_compensate:
-02b2 98408400 iadd temp ,temp 
-02b3 58000000 setarg 0x00 
-02b4 67e14c12 store 2 ,mem_mouse_data_xy_value 
-02b5 20600000 rtn 
+02bd 98408400 iadd temp ,temp 
+02be 58000000 setarg 0x00 
+02bf 67e14c12 store 2 ,mem_mouse_data_xy_value 
+02c0 20600000 rtn 
 
 p_mouse_xy_data_judge:
-02b6 6fe0cc13 fetch 1 ,mem_mouse_data_xy_value + 1 
-02b7 203a02b9 branch p_mouse_current_xy_pdata_offset ,blank 
-02b8 202002be branch p_mouse_current_xy_ndata_offset 
+02c1 6fe0cc13 fetch 1 ,mem_mouse_data_xy_value + 1 
+02c2 203a02c4 branch p_mouse_current_xy_pdata_offset ,blank 
+02c3 202002c9 branch p_mouse_current_xy_ndata_offset 
 
 p_mouse_current_xy_pdata_offset:
-02b9 6fe0cc12 fetch 1 ,mem_mouse_data_xy_value 
-02ba 204002c8 call p_mouse_current_xy_get_1_25_times 
-02bb 67e0cc12 store 1 ,mem_mouse_data_xy_value 
+02c4 6fe0cc12 fetch 1 ,mem_mouse_data_xy_value 
+02c5 204002d3 call p_mouse_current_xy_get_1_25_times 
+02c6 67e0cc12 store 1 ,mem_mouse_data_xy_value 
 
 p_mouse_xy_data_offset_new:
-02bc 6fe14c12 fetch 2 ,mem_mouse_data_xy_value 
-02bd 20600000 rtn 
+02c7 6fe14c12 fetch 2 ,mem_mouse_data_xy_value 
+02c8 20600000 rtn 
 
 p_mouse_current_xy_ndata_offset:
-02be 6fe0cc12 fetch 1 ,mem_mouse_data_xy_value 
-02bf 204047ab call mouse_pdata_invert 
-02c0 204002c8 call p_mouse_current_xy_get_1_25_times 
-02c1 205a7e5e call disable_blank ,blank 
-02c2 204002c4 call p_mouse_pdata_get_new_value 
-02c3 202002bc branch p_mouse_xy_data_offset_new 
+02c9 6fe0cc12 fetch 1 ,mem_mouse_data_xy_value 
+02ca 204047ab call mouse_pdata_invert 
+02cb 204002d3 call p_mouse_current_xy_get_1_25_times 
+02cc 205a7e5e call disable_blank ,blank 
+02cd 204002cf call p_mouse_pdata_get_new_value 
+02ce 202002c7 branch p_mouse_xy_data_offset_new 
 
 p_mouse_pdata_get_new_value:
-02c4 204047ac call mouse_rega_in_out 
-02c5 1fe67e00 sub pdata ,0 ,pdata 
-02c6 67e0cc12 store 1 ,mem_mouse_data_xy_value 
-02c7 20600000 rtn 
+02cf 204047ac call mouse_rega_in_out 
+02d0 1fe67e00 sub pdata ,0 ,pdata 
+02d1 67e0cc12 store 1 ,mem_mouse_data_xy_value 
+02d2 20600000 rtn 
 
 p_mouse_current_xy_get_1_25_times:
-02c8 1fe67c03 sub pdata ,3 ,null 
-02c9 20610000 rtn positive 
-02ca 1feffe05 mul32 pdata ,5 ,pdata 
-02cb 1fe6fc04 div pdata ,4 
-02cc 20407def call wait_div_end 
-02cd 1807fe00 quotient pdata 
-02ce 20600000 rtn 
+02d3 1fe67c03 sub pdata ,3 ,null 
+02d4 20610000 rtn positive 
+02d5 1feffe05 mul32 pdata ,5 ,pdata 
+02d6 1fe6fc04 div pdata ,4 
+02d7 20407def call wait_div_end 
+02d8 1807fe00 quotient pdata 
+02d9 20600000 rtn 
 
 p_mouse_adc_read_start:
-02cf 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
-02d0 247a0000 nrtn blank 
-02d1 20400056 call p_enable_adc 
-02d2 7048f600 jam 0 ,mem_adc_read_timer 
-02d3 20406125 call vdd_calculate_by_mode 
-02d4 67e148e9 store 2 ,mem_mouse_vdd_now_vol 
-02d5 d8400012 arg 0x0012 ,temp 
-02d6 98467c00 isub temp ,null 
-02d7 242102e8 nbranch p_mouse_adc_gpio_connect_gnd ,positive 
-02d8 6fe0c4a0 fetch 1 ,mem_adc_config_flag 
-02d9 c08102e0 bne adc_config_gpio ,p_mouse_adc_data_process 
-02da 684948e9 fetcht 2 ,mem_mouse_vdd_now_vol 
-02db 184ffe08 mul32 temp ,8 ,pdata 
-02dc 1fe6fc0a div pdata ,10 
-02dd 20407dec call get_div_result 
-02de 9840fe00 iadd temp ,pdata 
+02da 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
+02db 247a0000 nrtn blank 
+02dc 20400056 call p_enable_adc 
+02dd 7048f600 jam 0 ,mem_adc_read_timer 
+02de 20406125 call vdd_calculate_by_mode 
 02df 67e148e9 store 2 ,mem_mouse_vdd_now_vol 
+02e0 d8400012 arg 0x0012 ,temp 
+02e1 98467c00 isub temp ,null 
+02e2 242102f3 nbranch p_mouse_adc_gpio_connect_gnd ,positive 
+02e3 6fe0c4a0 fetch 1 ,mem_adc_config_flag 
+02e4 c08102eb bne adc_config_gpio ,p_mouse_adc_data_process 
+02e5 684948e9 fetcht 2 ,mem_mouse_vdd_now_vol 
+02e6 184ffe08 mul32 temp ,8 ,pdata 
+02e7 1fe6fc0a div pdata ,10 
+02e8 20407dec call get_div_result 
+02e9 9840fe00 iadd temp ,pdata 
+02ea 67e148e9 store 2 ,mem_mouse_vdd_now_vol 
 
 p_mouse_adc_data_process:
-02e0 da2048e3 arg mem_mouse_vdd_calculate_set ,rega 
-02e1 20403ed8 call mouse_adc_bat_percent_lowpower_out 
-02e2 6fe0c4a4 fetch 1 ,mem_adc_power_flag 
-02e3 c2813f1a bbit1 2 ,mouse_adc_button_press 
-02e4 c280bf1c bbit1 1 ,mouse_power_down 
-02e5 c3003ed0 bbit0 0 ,mouse_adc_no_low_voltage 
-02e6 7048fa01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
-02e7 20203ece branch mouse_adc_low_voltage 
+02eb da2048e3 arg mem_mouse_vdd_calculate_set ,rega 
+02ec 20403ed8 call mouse_adc_bat_percent_lowpower_out 
+02ed 6fe0c4a4 fetch 1 ,mem_adc_power_flag 
+02ee c2813f1a bbit1 2 ,mouse_adc_button_press 
+02ef c280bf1c bbit1 1 ,mouse_power_down 
+02f0 c3003ed0 bbit0 0 ,mouse_adc_no_low_voltage 
+02f1 7048fa01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+02f2 20203ece branch mouse_adc_low_voltage 
 
 p_mouse_adc_gpio_connect_gnd:
-02e8 6848c8fc fetcht 1 ,mem_adc_channel_gpio 
-02e9 20403f54 call mouse_gpio_config_input_pd 
+02f3 6848c8fc fetcht 1 ,mem_adc_channel_gpio 
+02f4 20403f54 call mouse_gpio_config_input_pd 
 
 p_mouse_low_voltage_led_timer:
-02ea 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
-02eb 247a0000 nrtn blank 
-02ec 6fe14883 fetch 2 ,mem_24g_pair_timeout 
-02ed 247a0000 nrtn blank 
-02ee 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
-02ef 247a0000 nrtn blank 
-02f0 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
-02f1 247a0000 nrtn blank 
-02f2 20404904 call mouse_check_dpi_blink 
-02f3 20740000 rtn user 
-02f4 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-02f5 c4108000 rtnbit0 mouse_enable_low_voltage_led 
-02f6 c4020000 rtnbit0 mouse_low_voltage_flag 
-02f7 c291c97c bbit1 mouse_enable_low_voltage_led_blink_n_second ,mouse_low_voltage_led_blink_new_data 
-02f8 6fe0c8f8 fetch 1 ,mem_adc_low_volatage_led_timer_count 
-02f9 1fe0fe01 increase 1 ,pdata 
-02fa 67e0c8f8 store 1 ,mem_adc_low_volatage_led_timer_count 
-02fb 1fe67c08 sub pdata ,8 ,null 
-02fc 2441496e ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
-02fd c001c970 beq 3 ,mouse_low_voltage_led_on 
-02fe c002c976 beq 5 ,mouse_low_voltage_led_off 
-02ff c003c970 beq 7 ,mouse_low_voltage_led_on 
-0300 20600000 rtn 
+02f5 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
+02f6 247a0000 nrtn blank 
+02f7 6fe14883 fetch 2 ,mem_24g_pair_timeout 
+02f8 247a0000 nrtn blank 
+02f9 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
+02fa 247a0000 nrtn blank 
+02fb 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+02fc 247a0000 nrtn blank 
+02fd 20404904 call mouse_check_dpi_blink 
+02fe 20740000 rtn user 
+02ff 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0300 c4108000 rtnbit0 mouse_enable_low_voltage_led 
+0301 c4020000 rtnbit0 mouse_low_voltage_flag 
+0302 c291c97c bbit1 mouse_enable_low_voltage_led_blink_n_second ,mouse_low_voltage_led_blink_new_data 
+0303 6fe0c8f8 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0304 1fe0fe01 increase 1 ,pdata 
+0305 67e0c8f8 store 1 ,mem_adc_low_volatage_led_timer_count 
+0306 1fe67c08 sub pdata ,8 ,null 
+0307 2441496e ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0308 c001c970 beq 3 ,mouse_low_voltage_led_on 
+0309 c002c976 beq 5 ,mouse_low_voltage_led_off 
+030a c003c970 beq 7 ,mouse_low_voltage_led_on 
+030b 20600000 rtn 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/FD_Project/Only24g_AutoPair_16M/program/patch.prog	(revision 621)
+++ /YC1308AC/branch/mouse_project/FD_Project/Only24g_AutoPair_16M/program/patch.prog	(working copy)
@@ -525,6 +525,14 @@
 	arg gpcfg_output_high,temp
  	call gpio_config_function_int
 
+	fetch 1,mem_gpio_wakeup_low+2	//clear gpio19 wakeup
+	set0 3,pdata
+	store 1,mem_gpio_wakeup_low+2
+
+ 	fetch 1,mem_gpio_wakeup_low		//clear gpio3 wakeup
+	set0 3,pdata
+	store 1,mem_gpio_wakeup_low
+
 	call twspi_disable
 	
 	fetcht 1,mem_lbutton_gpio
@@ -707,8 +715,15 @@
 
 p_mouse_device_led_off:
 	call p_mouse_led_config_ouput
+	call p_mouse_reuse_ice_gpio_config_input
 	branch mouse_device_led_off
 
+p_mouse_reuse_ice_gpio_config_input:	//ice gpio config led
+	arg 0x03,temp
+	call mouse_gpio_config_input_pu
+	arg 0x13,temp
+	branch mouse_gpio_config_input_pu
+
 p_mouse_led_config_ouput:
 	fetcht 1,mem_config_low_voltage_alarm_gpio
 	call gpio_config_output
