Index: output/eeprom.dat
===================================================================
--- /branch/mouse/mouse_project/YJX_Project/Only2.4G/1306AB_XL-136_Only2.4G_LRpair/output/eeprom.dat	(revision 392)
+++ /branch/mouse/mouse_project/YJX_Project/Only2.4G/1306AB_XL-136_Only2.4G_LRpair/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-4e
+c2
 1b
 c2
 84
@@ -75,7 +75,7 @@
 c0
 66
 06
-cf
+ec
 c0
 68
 84
@@ -86,20 +86,20 @@
 58
 c0
 6a
-04
-f0
+05
+0a
 c0
 6b
 05
-3f
+59
 c0
 6b
 84
 b0
 c0
 6c
-05
-f4
+06
+11
 c0
 6d
 04
@@ -111,7 +111,7 @@
 c0
 71
 05
-4e
+68
 20
 20
 13
@@ -131,23 +131,23 @@
 c0
 70
 85
-79
+96
 c0
 71
 05
-d6
+f3
 c0
 75
 06
-64
+81
 c0
 75
 86
-54
+71
 c0
 76
 86
-a0
+bd
 20
 20
 13
@@ -2479,7 +2479,7 @@
 20
 40
 06
-3a
+57
 6f
 e0
 c8
@@ -2507,7 +2507,7 @@
 20
 40
 06
-99
+b6
 20
 40
 48
@@ -3115,7 +3115,7 @@
 20
 20
 06
-3a
+57
 6f
 e0
 c8
@@ -3150,8 +3150,8 @@
 82
 20
 20
-05
-f6
+06
+13
 6f
 e0
 c8
@@ -3179,7 +3179,7 @@
 c0
 00
 06
-2f
+4c
 20
 20
 43
@@ -3199,7 +3199,7 @@
 20
 40
 06
-43
+60
 20
 40
 03
@@ -4247,7 +4247,7 @@
 20
 40
 06
-3d
+5a
 58
 4e
 00
@@ -4719,7 +4719,7 @@
 20
 40
 06
-3a
+57
 20
 20
 30
@@ -4811,31 +4811,31 @@
 24
 5a
 04
-bb
+c3
 da
 20
 00
 00
 20
 40
-41
-40
+04
+bb
 20
 40
-41
-4c
+04
+bf
 20
 40
-41
-46
+04
+c1
 20
 40
 04
-be
+c6
 20
 40
 04
-d7
+e1
 20
 40
 41
@@ -4848,6 +4848,38 @@
 60
 00
 00
+20
+40
+05
+04
+20
+40
+41
+40
+68
+48
+c8
+e9
+20
+20
+04
+ad
+20
+40
+04
+fc
+20
+20
+41
+4c
+20
+40
+05
+00
+20
+20
+41
+46
 58
 03
 03
@@ -4891,7 +4923,7 @@
 c0
 7f
 84
-d3
+db
 20
 40
 60
@@ -4899,7 +4931,7 @@
 20
 20
 84
-cf
+d7
 68
 48
 c8
@@ -4943,11 +4975,19 @@
 20
 20
 04
-cd
+d5
 20
 40
-05
+04
+fe
 68
+48
+c8
+e7
+20
+40
+05
+85
 67
 e0
 cb
@@ -4991,7 +5031,7 @@
 c0
 7f
 84
-ec
+f6
 20
 40
 60
@@ -4999,7 +5039,7 @@
 20
 20
 84
-e8
+f2
 68
 48
 c8
@@ -5043,11 +5083,19 @@
 20
 20
 04
-e6
+f0
 20
 40
 05
+02
 68
+48
+c8
+e8
+20
+40
+05
+85
 67
 e0
 cb
@@ -5060,6 +5108,62 @@
 20
 04
 ad
+6f
+e0
+c8
+e7
+20
+20
+05
+05
+6f
+e0
+c8
+e7
+20
+20
+05
+08
+6f
+e0
+c8
+e8
+20
+20
+05
+05
+6f
+e0
+c8
+e8
+20
+20
+05
+08
+6f
+e0
+c8
+e9
+d8
+40
+00
+3f
+20
+20
+60
+e2
+6f
+e0
+c8
+e9
+d8
+40
+00
+3e
+20
+20
+60
+e2
 78
 54
 7c
@@ -5074,8 +5178,8 @@
 b4
 20
 40
-04
-f5
+05
+0f
 20
 20
 3f
@@ -5095,35 +5199,35 @@
 c0
 00
 05
-00
+1a
 c0
 00
 85
-00
+1a
 c0
 01
 05
-00
+1a
 c0
 01
 85
-00
+1a
 c0
 02
 05
-28
+42
 c0
 03
 05
-00
+1a
 c0
 04
 05
-34
+4e
 20
 20
 05
-00
+1a
 20
 40
 42
@@ -5139,7 +5243,7 @@
 c0
 7f
 85
-07
+21
 68
 48
 c8
@@ -5163,7 +5267,7 @@
 c0
 98
 05
-32
+4c
 58
 00
 00
@@ -5211,19 +5315,19 @@
 c0
 00
 05
-1a
+34
 c0
 00
 85
-1c
+36
 c0
 01
 05
-1e
+38
 c0
 01
 85
-20
+3a
 20
 60
 00
@@ -5235,7 +5339,7 @@
 20
 20
 05
-21
+3b
 20
 40
 42
@@ -5243,7 +5347,7 @@
 20
 20
 05
-21
+3b
 20
 40
 42
@@ -5251,7 +5355,7 @@
 20
 20
 05
-21
+3b
 20
 40
 42
@@ -5283,7 +5387,7 @@
 20
 20
 05
-21
+3b
 20
 40
 42
@@ -5295,7 +5399,7 @@
 c0
 7f
 85
-2e
+48
 68
 48
 c8
@@ -5318,8 +5422,8 @@
 f3
 c0
 98
-05
-fd
+06
+1a
 20
 20
 42
@@ -5327,11 +5431,11 @@
 c0
 18
 85
-0a
+24
 20
 20
-05
-fd
+06
+1a
 20
 40
 42
@@ -5363,7 +5467,7 @@
 20
 3a
 05
-0d
+27
 58
 00
 00
@@ -5383,7 +5487,7 @@
 20
 40
 05
-49
+63
 6f
 e0
 c8
@@ -5395,7 +5499,7 @@
 c0
 01
 05
-45
+5f
 20
 20
 40
@@ -5443,7 +5547,7 @@
 20
 40
 05
-51
+6b
 20
 20
 46
@@ -5479,7 +5583,7 @@
 20
 40
 05
-5e
+78
 67
 e0
 cb
@@ -5491,7 +5595,7 @@
 c0
 7f
 85
-65
+82
 20
 40
 04
@@ -5523,11 +5627,23 @@
 c0
 7f
 85
-68
+7f
 20
 20
 40
 50
+20
+40
+05
+07
+68
+48
+c8
+e9
+20
+20
+05
+85
 68
 48
 c8
@@ -5579,7 +5695,7 @@
 20
 40
 05
-73
+90
 20
 20
 41
@@ -5615,7 +5731,7 @@
 c5
 97
 05
-7e
+9b
 78
 3c
 fc
@@ -5663,7 +5779,7 @@
 24
 2c
 05
-ca
+e7
 20
 40
 4c
@@ -5671,7 +5787,7 @@
 c5
 17
 05
-8b
+a8
 78
 46
 fc
@@ -5719,7 +5835,7 @@
 20
 40
 85
-bf
+dc
 20
 38
 ab
@@ -5735,7 +5851,7 @@
 c5
 13
 85
-9d
+ba
 6f
 e0
 c7
@@ -5787,7 +5903,7 @@
 20
 22
 85
-a9
+c6
 20
 40
 2a
@@ -5799,11 +5915,11 @@
 c2
 00
 05
-a6
+c3
 c5
 13
 85
-ae
+cb
 18
 a2
 22
@@ -5847,7 +5963,7 @@
 20
 40
 85
-d4
+f1
 20
 23
 2b
@@ -5899,7 +6015,7 @@
 20
 21
 05
-c8
+e5
 1f
 e0
 ff
@@ -5907,11 +6023,11 @@
 c5
 13
 85
-c6
+e3
 20
 3a
 05
-c8
+e5
 1f
 e0
 ff
@@ -5939,7 +6055,7 @@
 20
 40
 85
-cd
+ea
 20
 20
 2b
@@ -5947,7 +6063,7 @@
 20
 40
 05
-d4
+f1
 20
 7a
 00
@@ -6030,8 +6146,8 @@
 00
 c5
 17
-05
-e4
+06
+01
 20
 20
 2b
@@ -6050,8 +6166,8 @@
 08
 c2
 00
-05
-e5
+06
+02
 78
 4e
 fc
@@ -6090,8 +6206,8 @@
 8b
 24
 5a
-05
-f6
+06
+13
 70
 4b
 8b
@@ -6103,7 +6219,7 @@
 20
 40
 06
-27
+44
 20
 75
 80
@@ -6111,7 +6227,7 @@
 20
 40
 06
-22
+3f
 20
 40
 41
@@ -6119,23 +6235,23 @@
 c0
 18
 06
-02
+1f
 c0
 18
 86
-00
+1d
 20
 40
-05
-fd
+06
+1a
 20
 00
 1a
 f4
 20
 20
-05
-f7
+06
+14
 6f
 e0
 cb
@@ -6147,11 +6263,11 @@
 20
 20
 06
-29
+46
 20
 40
 06
-22
+3f
 20
 20
 42
@@ -6163,11 +6279,11 @@
 c0
 2d
 06
-0c
+29
 c0
 6c
 06
-13
+30
 c0
 68
 c1
@@ -6183,11 +6299,11 @@
 c0
 2a
 06
-0a
+27
 20
 20
-05
-f7
+06
+14
 70
 48
 e2
@@ -6238,8 +6354,8 @@
 bd
 24
 22
-85
-f4
+86
+11
 58
 00
 00
@@ -6254,8 +6370,8 @@
 55
 24
 22
-85
-f4
+86
+11
 58
 00
 00
@@ -6270,8 +6386,8 @@
 1d
 24
 22
-85
-f4
+86
+11
 70
 48
 e2
@@ -6287,7 +6403,7 @@
 20
 40
 06
-27
+44
 58
 00
 80
@@ -6307,7 +6423,7 @@
 20
 40
 06
-29
+46
 20
 20
 3f
@@ -6371,7 +6487,7 @@
 20
 40
 06
-3a
+57
 20
 40
 04
@@ -6382,12 +6498,12 @@
 32
 20
 40
-05
-f4
+06
+11
 20
 40
 06
-27
+44
 20
 20
 42
@@ -6499,7 +6615,7 @@
 24
 21
 06
-cc
+e9
 18
 40
 84
@@ -6515,7 +6631,7 @@
 c0
 02
 86
-60
+7d
 6f
 e0
 c8
@@ -6555,11 +6671,11 @@
 24
 34
 06
-73
+90
 20
 40
 06
-87
+a4
 20
 40
 2f
@@ -6571,7 +6687,7 @@
 24
 3a
 06
-6e
+8b
 6f
 e4
 48
@@ -6615,7 +6731,7 @@
 20
 5a
 06
-79
+96
 6f
 e0
 c8
@@ -6687,7 +6803,7 @@
 20
 20
 06
-66
+83
 70
 48
 93
@@ -6715,19 +6831,19 @@
 24
 2c
 06
-92
+af
 24
 37
 86
-92
+af
 20
 40
 2e
 f6
 20
 40
-05
-f0
+06
+0d
 20
 20
 2e
@@ -6751,7 +6867,7 @@
 c2
 82
 06
-2f
+4c
 20
 40
 2f
@@ -6759,7 +6875,7 @@
 20
 20
 06
-88
+a5
 da
 60
 48
@@ -6767,7 +6883,7 @@
 da
 40
 06
-9c
+b9
 20
 20
 30
@@ -6835,7 +6951,7 @@
 24
 21
 06
-c4
+e1
 6f
 e0
 c8
@@ -6847,7 +6963,7 @@
 24
 21
 06
-b2
+cf
 6f
 e0
 c8
@@ -6855,7 +6971,7 @@
 c0
 00
 06
-c5
+e2
 20
 60
 00
@@ -6891,7 +7007,7 @@
 c5
 13
 06
-bb
+d8
 6f
 e0
 cb
@@ -6943,7 +7059,7 @@
 c0
 01
 06
-ca
+e7
 1f
 e0
 fe
@@ -6955,7 +7071,7 @@
 c0
 00
 86
-c2
+df
 70
 41
 eb
@@ -6967,7 +7083,7 @@
 20
 40
 06
-c5
+e2
 20
 40
 2f
@@ -6992,8 +7108,8 @@
 20
 47
 f3
-7b
-5a
+16
+13
 aa
 55
 40
@@ -7463,124 +7579,8 @@
 88
 66
 44
-f1
-ac
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+9e
+4a
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-eb
-44
+5d
+75
Index: output/program.lis
===================================================================
--- /branch/mouse/mouse_project/YJX_Project/Only2.4G/1306AB_XL-136_Only2.4G_LRpair/output/program.lis	(revision 392)
+++ /branch/mouse/mouse_project/YJX_Project/Only2.4G/1306AB_XL-136_Only2.4G_LRpair/output/program.lis	(working copy)
@@ -17,27 +17,27 @@
 000e c0560066 beq patch15_4 ,p_lpm_recover_clk 
 000f c056807a beq patch15_5 ,p_lpm_dispatch 
 0010 c05b80e9 beq patch16_7 ,p_app_init 
-0011 c06606cf beq patch19_4 ,p_mouse_start_work 
+0011 c06606ec beq patch19_4 ,p_mouse_start_work 
 0012 c0688471 beq patch1a_1 ,p_mouse_before_hibernate 
 0013 c0690458 beq patch1a_2 ,p_mouse_lpm_before_common 
-0014 c06a04f0 beq patch1a_4 ,p_mouse_motion 
-0015 c06b053f beq patch1a_6 ,p_mouse_seting_dpi 
+0014 c06a050a beq patch1a_4 ,p_mouse_motion 
+0015 c06b0559 beq patch1a_6 ,p_mouse_seting_dpi 
 0016 c06b84b0 beq patch1a_7 ,p_mouse_check_key_gpio 
-0017 c06c05f4 beq patch1b_0 ,p_mouse_init_sunt 
+0017 c06c0611 beq patch1b_0 ,p_mouse_init_sunt 
 0018 c06d048d beq patch1b_2 ,p_mouse_priority_bb_event 
 0019 c06e826e beq patch1b_5 ,p_mouse_bb_event_timer 
-001a c071054e beq patch1c_2 ,p_mouse_idle 
+001a c0710568 beq patch1c_2 ,p_mouse_idle 
 001b 20201321 branch loop 
 
 pf_patch_ext:
 001c c043003f beq patch30_6 ,p_ui_timer_check 
 001d c059819a beq patch36_3 ,p_match_le_set_txfreq 
 001e c06000b7 beq patch38_0 ,p_le_parse_l2cap 
-001f c0708579 beq patch3c_1 ,p_g24_receive_rxon 
-0020 c07105d6 beq patch3c_2 ,p_g24_transmit 
-0021 c0750664 beq patch3d_2 ,p_g24_transmit_dispatch 
-0022 c0758654 beq patch3d_3 ,p_g24_transmit_hop_process 
-0023 c07686a0 beq patch3d_5 ,p_power_ctrl_start 
+001f c0708596 beq patch3c_1 ,p_g24_receive_rxon 
+0020 c07105f3 beq patch3c_2 ,p_g24_transmit 
+0021 c0750681 beq patch3d_2 ,p_g24_transmit_dispatch 
+0022 c0758671 beq patch3d_3 ,p_g24_transmit_hop_process 
+0023 c07686bd beq patch3d_5 ,p_power_ctrl_start 
 0024 20201321 branch loop 
 
 p_main_loop:
@@ -788,7 +788,7 @@
 0267 20403db2 call mouse_usb_check_enable 
 0268 2040473f call mouse_drawing_optima_init 
 0269 2040027a call p_mouse_cb_fuction 
-026a 2040063a call p_mouse_sensor_powerdown 
+026a 20400657 call p_mouse_sensor_powerdown 
 026b 6fe0c8fd fetch 1 ,mem_usb_addr 
 026c c3838000 rtnbit1 7 
 
@@ -799,7 +799,7 @@
 026e 204047eb call mouse_24g_delay_timer 
 026f 20402bc3 call g24_pair_timeout_timer 
 0270 20402df3 call g24_reconn_timeout_timer 
-0271 20400699 call p_mouse_24g_long_sleep_param_update_timer 
+0271 204006b6 call p_mouse_24g_long_sleep_param_update_timer 
 0272 204048c2 call mouse_device_poweron_timer 
 0273 204048f1 call mouse_dpi_led_blink_delay_timer 
 0274 2040408a call mouse_dpi_key_check_long_press 
@@ -1005,7 +1005,7 @@
 0306 67e0cb49 store 1 ,mem_mouse_search_dongle_action 
 0307 6fe14b9d fetch 2 ,mem_mouse_24g_search_dongle_time_init 
 0308 67e14a55 store 2 ,mem_mouse_no_data_timer 
-0309 2020063a branch p_mouse_sensor_powerdown 
+0309 20200657 branch p_mouse_sensor_powerdown 
 
 p_mouse_24g_search_dongle_success:
 030a 6fe0c894 fetch 1 ,mem_24g_abort_pac 
@@ -1016,7 +1016,7 @@
 030f 793ffe00 set0 g24_disconn_state ,pdata 
 0310 67e0cb49 store 1 ,mem_mouse_search_dongle_action 
 0311 20404582 call mouse_no_data_timer_init 
-0312 202005f6 branch p_mouse_init_sensor_wakeup 
+0312 20200613 branch p_mouse_init_sensor_wakeup 
 
 p_mouse_check_no_data_timeout_timer:
 0313 6fe0c8fd fetch 1 ,mem_usb_addr 
@@ -1027,14 +1027,14 @@
 
 p_mouse_check_no_data_timeout:
 0318 6fe0c90b fetch 1 ,mem_device_flag 
-0319 c000062f beq mode_24g_device ,p_mouse_24g_hibernate_set 
+0319 c000064c beq mode_24g_device ,p_mouse_24g_hibernate_set 
 031a 20204354 branch mouse_disconnect 
 
 p_mouse_setting_config:
 031b 20758000 rtn wake 
 031c 20402ea2 call g24_transmit_init 
 031d 20400368 call p_g24_rx_window_init 
-031e 20400643 call p_g24_chmap_param_init 
+031e 20400660 call p_g24_chmap_param_init 
 031f 2040032e call p_mouse_gpio_init 
 0320 20403d3a call mouse_param_init 
 0321 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
@@ -1316,7 +1316,7 @@
 0421 58000708 setarg 0x0708 
 0422 67e14b9d store 2 ,mem_mouse_24g_search_dongle_time_init 
 0423 20400370 call p_g24_enable_1m 
-0424 2040063d call p_g24_pair_param_init 
+0424 2040065a call p_g24_pair_param_init 
 0425 584e001e setarg 0x4e001e 
 0426 67e1cb8e store 3 ,mem_24g_ch_update_map1 + 1 
 0427 58032303 setarg 0x032303 
@@ -1454,7 +1454,7 @@
 0497 58008006 setarg 0x8006 
 0498 20405af1 call twspi_write 
 0499 20002ee0 nop 12000 
-049a 2040063a call p_mouse_sensor_powerdown 
+049a 20400657 call p_mouse_sensor_powerdown 
 049b 202030d1 branch app_enter_hibernate 
 
 p_mouse_reconn_dongle_attempt_fail:
@@ -1493,730 +1493,783 @@
 
 p_mouse_check_key_gpio:
 04b0 6fe0cb8b fetch 1 ,mem_sensor_shutdown_flag 
-04b1 245a04bb ncall p_mouse_check_key_gpio_once ,blank 
+04b1 245a04c3 ncall p_mouse_check_key_gpio_once ,blank 
 04b2 da200000 arg 0 ,rega 
-04b3 20404140 call mouse_check_lkey_gpio 
-04b4 2040414c call mouse_check_mkey_gpio 
-04b5 20404146 call mouse_check_rkey_gpio 
-04b6 204004be call p_mouse_check_bkkey_gpio 
-04b7 204004d7 call p_mouse_check_fwkey_gpio 
+04b3 204004bb call p_mouse_check_lkey_gpio 
+04b4 204004bf call p_mouse_check_mkey_gpio 
+04b5 204004c1 call p_mouse_check_rkey_gpio 
+04b6 204004c6 call p_mouse_check_bkkey_gpio 
+04b7 204004e1 call p_mouse_check_fwkey_gpio 
 04b8 20404178 call mouse_check_customerkey_gpio 
 04b9 1a227e00 copy rega ,pdata 
 04ba 20600000 rtn 
 
+p_mouse_check_lkey_gpio:
+04bb 20400504 call p_mouse_3io6key_dpi_output_high_set 
+04bc 20404140 call mouse_check_lkey_gpio 
+04bd 6848c8e9 fetcht 1 ,mem_dpi_button_gpio 
+04be 202004ad branch p_mouse_gpio_config_input_pu 
+
+p_mouse_check_mkey_gpio:
+04bf 204004fc call p_mouse_3io6key_bk_output_high_set 
+04c0 2020414c branch mouse_check_mkey_gpio 
+
+p_mouse_check_rkey_gpio:
+04c1 20400500 call p_mouse_3io6key_fw_output_high_set 
+04c2 20204146 branch mouse_check_rkey_gpio 
+
 p_mouse_check_key_gpio_once:
-04bb 58030303 setarg 0x030303 
-04bc 67e1cb33 store 3 ,mem_mouse_lkey_press_status 
-04bd 20600000 rtn 
+04c3 58030303 setarg 0x030303 
+04c4 67e1cb33 store 3 ,mem_mouse_lkey_press_status 
+04c5 20600000 rtn 
 
 p_mouse_check_bkkey_gpio:
-04be 6fe0c8e7 fetch 1 ,mem_bk_button_gpio 
-04bf c17f8000 rtneq gpio_disable 
-04c0 704b3b03 jam mouse_bk_key ,mem_mouse_key_temp 
-04c1 6fe0cb36 fetch 1 ,mem_mouse_bkkey_press_status 
-04c2 1fe22600 copy pdata ,regc 
-04c3 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
-04c4 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
-04c5 c07f84d3 beq gpio_disable ,p_mouse_3io6key_bk_check 
-04c6 204060a8 call gpio_get_bit 
-04c7 202084cf branch p_mouse_check_bk_button_connect_gnd ,true 
-04c8 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
-04c9 204060b8 call gpio_out_active 
-04ca 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
-04cb 6fe0cb36 fetch 1 ,mem_mouse_bkkey_press_status 
-04cc 20404195 call mouse_check_key_connect_gnd 
+04c6 6fe0c8e7 fetch 1 ,mem_bk_button_gpio 
+04c7 c17f8000 rtneq gpio_disable 
+04c8 704b3b03 jam mouse_bk_key ,mem_mouse_key_temp 
+04c9 6fe0cb36 fetch 1 ,mem_mouse_bkkey_press_status 
+04ca 1fe22600 copy pdata ,regc 
+04cb 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
+04cc 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
+04cd c07f84db beq gpio_disable ,p_mouse_3io6key_bk_check 
+04ce 204060a8 call gpio_get_bit 
+04cf 202084d7 branch p_mouse_check_bk_button_connect_gnd ,true 
+04d0 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
+04d1 204060b8 call gpio_out_active 
+04d2 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
+04d3 6fe0cb36 fetch 1 ,mem_mouse_bkkey_press_status 
+04d4 20404195 call mouse_check_key_connect_gnd 
 
 p_mouse_check_bkkey_gpio_end:
-04cd 67e0cb36 store 1 ,mem_mouse_bkkey_press_status 
-04ce 202004ae branch p_mouse_matrix_public_gpio_reset 
+04d5 67e0cb36 store 1 ,mem_mouse_bkkey_press_status 
+04d6 202004ae branch p_mouse_matrix_public_gpio_reset 
 
 p_mouse_check_bk_button_connect_gnd:
-04cf 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
-04d0 6fe0cb36 fetch 1 ,mem_mouse_bkkey_press_status 
-04d1 20404195 call mouse_check_key_connect_gnd 
-04d2 202004cd branch p_mouse_check_bkkey_gpio_end 
+04d7 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
+04d8 6fe0cb36 fetch 1 ,mem_mouse_bkkey_press_status 
+04d9 20404195 call mouse_check_key_connect_gnd 
+04da 202004d5 branch p_mouse_check_bkkey_gpio_end 
 
 p_mouse_3io6key_bk_check:
-04d3 20400568 call p_mouse_3io6key_check 
-04d4 67e0cb36 store 1 ,mem_mouse_bkkey_press_status 
-04d5 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
-04d6 202004ad branch p_mouse_gpio_config_input_pu 
+04db 204004fe call p_mouse_3io6key_bk_output_low_set 
+04dc 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
+04dd 20400585 call p_mouse_3io6key_check 
+04de 67e0cb36 store 1 ,mem_mouse_bkkey_press_status 
+04df 6848c8e7 fetcht 1 ,mem_bk_button_gpio 
+04e0 202004ad branch p_mouse_gpio_config_input_pu 
 
 p_mouse_check_fwkey_gpio:
-04d7 6fe0c8e8 fetch 1 ,mem_fw_button_gpio 
-04d8 c17f8000 rtneq gpio_disable 
-04d9 704b3b04 jam mouse_fw_key ,mem_mouse_key_temp 
-04da 6fe0cb37 fetch 1 ,mem_mouse_fwkey_press_status 
-04db 1fe22600 copy pdata ,regc 
-04dc 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
-04dd 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
-04de c07f84ec beq gpio_disable ,p_mouse_3io6key_fw_check 
-04df 204060a8 call gpio_get_bit 
-04e0 202084e8 branch p_mouse_check_fw_button_connect_gnd ,true 
-04e1 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
-04e2 204060b8 call gpio_out_active 
-04e3 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
+04e1 6fe0c8e8 fetch 1 ,mem_fw_button_gpio 
+04e2 c17f8000 rtneq gpio_disable 
+04e3 704b3b04 jam mouse_fw_key ,mem_mouse_key_temp 
 04e4 6fe0cb37 fetch 1 ,mem_mouse_fwkey_press_status 
-04e5 20404195 call mouse_check_key_connect_gnd 
+04e5 1fe22600 copy pdata ,regc 
+04e6 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
+04e7 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
+04e8 c07f84f6 beq gpio_disable ,p_mouse_3io6key_fw_check 
+04e9 204060a8 call gpio_get_bit 
+04ea 202084f2 branch p_mouse_check_fw_button_connect_gnd ,true 
+04eb 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
+04ec 204060b8 call gpio_out_active 
+04ed 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
+04ee 6fe0cb37 fetch 1 ,mem_mouse_fwkey_press_status 
+04ef 20404195 call mouse_check_key_connect_gnd 
 
 p_mouse_check_fwkey_gpio_end:
-04e6 67e0cb37 store 1 ,mem_mouse_fwkey_press_status 
-04e7 202004ae branch p_mouse_matrix_public_gpio_reset 
+04f0 67e0cb37 store 1 ,mem_mouse_fwkey_press_status 
+04f1 202004ae branch p_mouse_matrix_public_gpio_reset 
 
 p_mouse_check_fw_button_connect_gnd:
-04e8 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
-04e9 6fe0cb37 fetch 1 ,mem_mouse_fwkey_press_status 
-04ea 20404195 call mouse_check_key_connect_gnd 
-04eb 202004e6 branch p_mouse_check_fwkey_gpio_end 
+04f2 6848c8ea fetcht 1 ,mem_matrix_public_gpio 
+04f3 6fe0cb37 fetch 1 ,mem_mouse_fwkey_press_status 
+04f4 20404195 call mouse_check_key_connect_gnd 
+04f5 202004f0 branch p_mouse_check_fwkey_gpio_end 
 
 p_mouse_3io6key_fw_check:
-04ec 20400568 call p_mouse_3io6key_check 
-04ed 67e0cb37 store 1 ,mem_mouse_fwkey_press_status 
-04ee 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
-04ef 202004ad branch p_mouse_gpio_config_input_pu 
+04f6 20400502 call p_mouse_3io6key_fw_output_low_set 
+04f7 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
+04f8 20400585 call p_mouse_3io6key_check 
+04f9 67e0cb37 store 1 ,mem_mouse_fwkey_press_status 
+04fa 6848c8e8 fetcht 1 ,mem_fw_button_gpio 
+04fb 202004ad branch p_mouse_gpio_config_input_pu 
+
+p_mouse_3io6key_bk_output_high_set:
+04fc 6fe0c8e7 fetch 1 ,mem_bk_button_gpio 
+04fd 20200505 branch p_mouse_gpio_config_output_high 
+
+p_mouse_3io6key_bk_output_low_set:
+04fe 6fe0c8e7 fetch 1 ,mem_bk_button_gpio 
+04ff 20200508 branch p_mouse_gpio_config_output_low 
+
+p_mouse_3io6key_fw_output_high_set:
+0500 6fe0c8e8 fetch 1 ,mem_fw_button_gpio 
+0501 20200505 branch p_mouse_gpio_config_output_high 
+
+p_mouse_3io6key_fw_output_low_set:
+0502 6fe0c8e8 fetch 1 ,mem_fw_button_gpio 
+0503 20200508 branch p_mouse_gpio_config_output_low 
+
+p_mouse_3io6key_dpi_output_high_set:
+0504 6fe0c8e9 fetch 1 ,mem_dpi_button_gpio 
+
+p_mouse_gpio_config_output_high:
+0505 d840003f arg gpcfg_output_high ,temp 
+0506 202060e2 branch gpio_config_function_int 
+
+p_mouse_3io6key_dpi_output_low_set:
+0507 6fe0c8e9 fetch 1 ,mem_dpi_button_gpio 
+
+p_mouse_gpio_config_output_low:
+0508 d840003e arg gpcfg_output_low ,temp 
+0509 202060e2 branch gpio_config_function_int 
 
 p_mouse_motion:
-04f0 78547c00 disable user 
-04f1 58000000 setarg 0 
-04f2 67e348b4 store 6 ,mem_mouse_x 
-04f3 204004f5 call p_mouse_check_sensor_data 
-04f4 20203f8c branch mouse_motion2 
+050a 78547c00 disable user 
+050b 58000000 setarg 0 
+050c 67e348b4 store 6 ,mem_mouse_x 
+050d 2040050f call p_mouse_check_sensor_data 
+050e 20203f8c branch mouse_motion2 
 
 p_mouse_check_sensor_data:
-04f5 6fe0c4af fetch 1 ,mem_spi_write_flash_sm 
-04f6 c1800000 rtnne flash_sm_no_buys 
-04f7 6fe0c8e2 fetch 1 ,mem_config_sensor_type 
-04f8 c0000500 beq p3205 ,p_mouse_p32xx_sensor_motion 
-04f9 c0008500 beq p3065 ,p_mouse_p32xx_sensor_motion 
-04fa c0010500 beq ka8 ,p_mouse_p32xx_sensor_motion 
-04fb c0018500 beq p3204 ,p_mouse_p32xx_sensor_motion 
-04fc c0020528 beq p3212 ,p_mouse_p3212_sensor_motion 
-04fd c0030500 beq p3065_xy ,p_mouse_p32xx_sensor_motion 
-04fe c0040534 beq p8009 ,p_mouse_p8009_sensor_motion 
-04ff 20200500 branch p_mouse_p32xx_sensor_motion 
+050f 6fe0c4af fetch 1 ,mem_spi_write_flash_sm 
+0510 c1800000 rtnne flash_sm_no_buys 
+0511 6fe0c8e2 fetch 1 ,mem_config_sensor_type 
+0512 c000051a beq p3205 ,p_mouse_p32xx_sensor_motion 
+0513 c000851a beq p3065 ,p_mouse_p32xx_sensor_motion 
+0514 c001051a beq ka8 ,p_mouse_p32xx_sensor_motion 
+0515 c001851a beq p3204 ,p_mouse_p32xx_sensor_motion 
+0516 c0020542 beq p3212 ,p_mouse_p3212_sensor_motion 
+0517 c003051a beq p3065_xy ,p_mouse_p32xx_sensor_motion 
+0518 c004054e beq p8009 ,p_mouse_p8009_sensor_motion 
+0519 2020051a branch p_mouse_p32xx_sensor_motion 
 
 p_mouse_p32xx_sensor_motion:
-0500 204042f7 call mouse_clear_sensor_data 
-0501 78547c00 disable user 
-0502 6fe0c8f1 fetch 1 ,mem_sensor_motion_gpio 
-0503 c07f8507 beq gpio_disable ,p_mouse_p32xx_sensor_motion_2 
-0504 6848c8f1 fetcht 1 ,mem_sensor_motion_gpio 
-0505 204060a8 call gpio_get_bit 
-0506 24608000 nrtn true 
+051a 204042f7 call mouse_clear_sensor_data 
+051b 78547c00 disable user 
+051c 6fe0c8f1 fetch 1 ,mem_sensor_motion_gpio 
+051d c07f8521 beq gpio_disable ,p_mouse_p32xx_sensor_motion_2 
+051e 6848c8f1 fetcht 1 ,mem_sensor_motion_gpio 
+051f 204060a8 call gpio_get_bit 
+0520 24608000 nrtn true 
 
 p_mouse_p32xx_sensor_motion_2:
-0507 58000000 setarg pan_reg_pid_l 
-0508 20405af3 call twspi_read 
-0509 c0980532 bne p32xx_id1 ,p_mouse_p3065_judge 
+0521 58000000 setarg pan_reg_pid_l 
+0522 20405af3 call twspi_read 
+0523 c098054c bne p32xx_id1 ,p_mouse_p3065_judge 
 
 p_mouse_p32xx_sensor_motion_1:
-050a 58000002 setarg pan_reg_motion_staus 
-050b 20405af3 call twspi_read 
-050c c4038000 rtnbit0 7 
-050d 20404310 call mouse_read_sensor_common 
-050e 6fe0c8b4 fetch 1 ,mem_mouse_x 
-050f 20404308 call mouse_data_extsign 
-0510 67e148b4 store 2 ,mem_mouse_x 
-0511 6fe0c8b6 fetch 1 ,mem_mouse_y 
-0512 20404308 call mouse_data_extsign 
-0513 67e148b6 store 2 ,mem_mouse_y 
-0514 6fe0c8fb fetch 1 ,mem_config_sensor_angle 
-0515 c000051a beq mouse_6clk_angle ,p_mouse_motion32xx_6clk_direction_selection 
-0516 c000851c beq mouse_9clk_angle ,p_mouse_motion32xx_9clk_direction_selection 
-0517 c001051e beq mouse_12clk_angle ,p_mouse_motion32xx_12clk_direction_selection 
-0518 c0018520 beq mouse_3clk_angle ,p_mouse_motion32xx_3clk_direction_selection 
-0519 20600000 rtn 
+0524 58000002 setarg pan_reg_motion_staus 
+0525 20405af3 call twspi_read 
+0526 c4038000 rtnbit0 7 
+0527 20404310 call mouse_read_sensor_common 
+0528 6fe0c8b4 fetch 1 ,mem_mouse_x 
+0529 20404308 call mouse_data_extsign 
+052a 67e148b4 store 2 ,mem_mouse_x 
+052b 6fe0c8b6 fetch 1 ,mem_mouse_y 
+052c 20404308 call mouse_data_extsign 
+052d 67e148b6 store 2 ,mem_mouse_y 
+052e 6fe0c8fb fetch 1 ,mem_config_sensor_angle 
+052f c0000534 beq mouse_6clk_angle ,p_mouse_motion32xx_6clk_direction_selection 
+0530 c0008536 beq mouse_9clk_angle ,p_mouse_motion32xx_9clk_direction_selection 
+0531 c0010538 beq mouse_12clk_angle ,p_mouse_motion32xx_12clk_direction_selection 
+0532 c001853a beq mouse_3clk_angle ,p_mouse_motion32xx_3clk_direction_selection 
+0533 20600000 rtn 
 
 p_mouse_motion32xx_6clk_direction_selection:
-051a 204042e0 call mouse_motion_6clk_direction_dispose 
-051b 20200521 branch p_mouse_sensor_sdio_low 
+0534 204042e0 call mouse_motion_6clk_direction_dispose 
+0535 2020053b branch p_mouse_sensor_sdio_low 
 
 p_mouse_motion32xx_9clk_direction_selection:
-051c 204042e8 call mouse_motion_9clk_direction_dispose 
-051d 20200521 branch p_mouse_sensor_sdio_low 
+0536 204042e8 call mouse_motion_9clk_direction_dispose 
+0537 2020053b branch p_mouse_sensor_sdio_low 
 
 p_mouse_motion32xx_12clk_direction_selection:
-051e 204042e4 call mouse_motion_12clk_direction_dispose 
-051f 20200521 branch p_mouse_sensor_sdio_low 
+0538 204042e4 call mouse_motion_12clk_direction_dispose 
+0539 2020053b branch p_mouse_sensor_sdio_low 
 
 p_mouse_motion32xx_3clk_direction_selection:
-0520 204042f0 call mouse_motion_3clk_direction_dispose 
+053a 204042f0 call mouse_motion_3clk_direction_dispose 
 
 p_mouse_sensor_sdio_low:
-0521 6848cbb0 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0522 204060a8 call gpio_get_bit 
-0523 20608000 rtn true 
-0524 5800000a setarg 0x0a 
-0525 20405af3 call twspi_read 
-0526 200003e8 nop 1000 
-0527 20200521 branch p_mouse_sensor_sdio_low 
+053b 6848cbb0 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+053c 204060a8 call gpio_get_bit 
+053d 20608000 rtn true 
+053e 5800000a setarg 0x0a 
+053f 20405af3 call twspi_read 
+0540 200003e8 nop 1000 
+0541 2020053b branch p_mouse_sensor_sdio_low 
 
 p_mouse_p3212_sensor_motion:
-0528 204042f7 call mouse_clear_sensor_data 
-0529 6fe0c8f1 fetch 1 ,mem_sensor_motion_gpio 
-052a c07f852e beq gpio_disable ,p_mouse_p3212_sensor_motion_1 
-052b 6848c8f1 fetcht 1 ,mem_sensor_motion_gpio 
-052c 204060a8 call gpio_get_bit 
-052d 24608000 nrtn true 
+0542 204042f7 call mouse_clear_sensor_data 
+0543 6fe0c8f1 fetch 1 ,mem_sensor_motion_gpio 
+0544 c07f8548 beq gpio_disable ,p_mouse_p3212_sensor_motion_1 
+0545 6848c8f1 fetcht 1 ,mem_sensor_motion_gpio 
+0546 204060a8 call gpio_get_bit 
+0547 24608000 nrtn true 
 
 p_mouse_p3212_sensor_motion_1:
-052e 58000000 setarg pan_reg_pid_l 
-052f 20405af3 call twspi_read 
-0530 c09805fd bne p32xx_id1 ,p_mouse_twspi_reset 
-0531 2020425b branch mouse_p3212_sensor_motion_2 
+0548 58000000 setarg pan_reg_pid_l 
+0549 20405af3 call twspi_read 
+054a c098061a bne p32xx_id1 ,p_mouse_twspi_reset 
+054b 2020425b branch mouse_p3212_sensor_motion_2 
 
 p_mouse_p3065_judge:
-0532 c018850a beq p3065_id1 ,p_mouse_p32xx_sensor_motion_1 
-0533 202005fd branch p_mouse_twspi_reset 
+054c c0188524 beq p3065_id1 ,p_mouse_p32xx_sensor_motion_1 
+054d 2020061a branch p_mouse_twspi_reset 
 
 p_mouse_p8009_sensor_motion:
-0534 204042f7 call mouse_clear_sensor_data 
-0535 78547c00 disable user 
-0536 58000002 setarg pan_reg_motion_staus 
-0537 20405af3 call twspi_read 
-0538 c4038000 rtnbit0 7 
-0539 58000008 setarg pan_reg_opration_state 
-053a 20405af3 call twspi_read 
-053b 203a050d branch p_mouse_p32xx_sensor_motion_1 + 3 ,blank 
-053c 58000000 setarg 0 
-053d 67e348b4 store 6 ,mem_mouse_x 
-053e 20600000 rtn 
+054e 204042f7 call mouse_clear_sensor_data 
+054f 78547c00 disable user 
+0550 58000002 setarg pan_reg_motion_staus 
+0551 20405af3 call twspi_read 
+0552 c4038000 rtnbit0 7 
+0553 58000008 setarg pan_reg_opration_state 
+0554 20405af3 call twspi_read 
+0555 203a0527 branch p_mouse_p32xx_sensor_motion_1 + 3 ,blank 
+0556 58000000 setarg 0 
+0557 67e348b4 store 6 ,mem_mouse_x 
+0558 20600000 rtn 
 
 p_mouse_seting_dpi:
-053f 2040409d call mouse_setting_dpi_4_level 
-0540 20400549 call p_mouse_dpi_led_blink_delay 
-0541 6fe0c8e2 fetch 1 ,mem_config_sensor_type 
-0542 c00240c8 beq p3212 ,mouse_seting_3212_dpi 
-0543 c0010545 beq ka8 ,p_mouse_seting_ka8_dpi 
-0544 202040a9 branch mouse_seting_dpi_sensor_type 
+0559 2040409d call mouse_setting_dpi_4_level 
+055a 20400563 call p_mouse_dpi_led_blink_delay 
+055b 6fe0c8e2 fetch 1 ,mem_config_sensor_type 
+055c c00240c8 beq p3212 ,mouse_seting_3212_dpi 
+055d c001055f beq ka8 ,p_mouse_seting_ka8_dpi 
+055e 202040a9 branch mouse_seting_dpi_sensor_type 
 
 p_mouse_seting_ka8_dpi:
-0545 6fe0c965 fetch 1 ,mem_mouse_dpi 
-0546 c00040b2 beq mouse_dpi_level1 ,mouse_set_cpi2 
-0547 c00140ae beq mouse_dpi_level3 ,mouse_set_cpi1 
-0548 202040b0 branch mouse_set_cpi0 
+055f 6fe0c965 fetch 1 ,mem_mouse_dpi 
+0560 c00040b2 beq mouse_dpi_level1 ,mouse_set_cpi2 
+0561 c00140ae beq mouse_dpi_level3 ,mouse_set_cpi1 
+0562 202040b0 branch mouse_set_cpi0 
 
 p_mouse_dpi_led_blink_delay:
-0549 6fe0c8f7 fetch 1 ,mem_dpi_led_gpio 
-054a c17f8000 rtneq gpio_disable 
-054b 6fe14875 fetch 2 ,mem_24g_reconn_timeout 
-054c 247a0000 nrtn blank 
-054d 202048e7 branch mouse_dpi_led_blink_delay + 2 
+0563 6fe0c8f7 fetch 1 ,mem_dpi_led_gpio 
+0564 c17f8000 rtneq gpio_disable 
+0565 6fe14875 fetch 2 ,mem_24g_reconn_timeout 
+0566 247a0000 nrtn blank 
+0567 202048e7 branch mouse_dpi_led_blink_delay + 2 
 
 p_mouse_idle:
-054e 20407964 call ui_check_paring_button 
-054f 20400551 call p_mouse_dpi_check 
-0550 2020468f branch mouse_idle + 4 
+0568 20407964 call ui_check_paring_button 
+0569 2040056b call p_mouse_dpi_check 
+056a 2020468f branch mouse_idle + 4 
 
 p_mouse_dpi_check:
-0551 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
-0552 c297404b bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
-0553 6fe0c8e9 fetch 1 ,mem_dpi_button_gpio 
-0554 c17f8000 rtneq gpio_disable 
-0555 da200000 arg 0 ,rega 
-0556 704b3b05 jam mouse_dpi_key ,mem_mouse_key_temp 
-0557 6848c8e9 fetcht 1 ,mem_dpi_button_gpio 
-0558 2040055e call p_mouse_dpi_key_check 
-0559 67e0cb38 store 1 ,mem_mouse_dpikey_press_status 
-055a 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
-055b c07f8565 beq gpio_disable ,p_mouse_3io6key_dpi_check_end 
-055c 204004ae call p_mouse_matrix_public_gpio_reset 
-055d 20204048 branch mouse_dpi_check + 10 
+056b 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
+056c c297404b bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
+056d 6fe0c8e9 fetch 1 ,mem_dpi_button_gpio 
+056e c17f8000 rtneq gpio_disable 
+056f da200000 arg 0 ,rega 
+0570 704b3b05 jam mouse_dpi_key ,mem_mouse_key_temp 
+0571 6848c8e9 fetcht 1 ,mem_dpi_button_gpio 
+0572 20400578 call p_mouse_dpi_key_check 
+0573 67e0cb38 store 1 ,mem_mouse_dpikey_press_status 
+0574 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
+0575 c07f8582 beq gpio_disable ,p_mouse_3io6key_dpi_check_end 
+0576 204004ae call p_mouse_matrix_public_gpio_reset 
+0577 20204048 branch mouse_dpi_check + 10 
 
 p_mouse_dpi_key_check:
-055e 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
-055f c2964056 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-0560 6fe0cb38 fetch 1 ,mem_mouse_dpikey_press_status 
-0561 1fe22600 copy pdata ,regc 
-0562 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
-0563 c07f8568 beq gpio_disable ,p_mouse_3io6key_check 
-0564 20204050 branch mouse_dpi_key_check + 2 
+0578 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
+0579 c2964056 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+057a 6fe0cb38 fetch 1 ,mem_mouse_dpikey_press_status 
+057b 1fe22600 copy pdata ,regc 
+057c 6fe0c8ea fetch 1 ,mem_matrix_public_gpio 
+057d c07f857f beq gpio_disable ,p_mouse_3io6key_dpi_check 
+057e 20204050 branch mouse_dpi_key_check + 2 
+
+p_mouse_3io6key_dpi_check:
+057f 20400507 call p_mouse_3io6key_dpi_output_low_set 
+0580 6848c8e9 fetcht 1 ,mem_dpi_button_gpio 
+0581 20200585 branch p_mouse_3io6key_check 
 
 p_mouse_3io6key_dpi_check_end:
-0565 6848c8e9 fetcht 1 ,mem_dpi_button_gpio 
-0566 204004ad call p_mouse_gpio_config_input_pu 
-0567 20204048 branch mouse_dpi_check + 10 
+0582 6848c8e9 fetcht 1 ,mem_dpi_button_gpio 
+0583 204004ad call p_mouse_gpio_config_input_pu 
+0584 20204048 branch mouse_dpi_check + 10 
 
 p_mouse_3io6key_check:
-0568 1a627e00 copy regc ,pdata 
-0569 67e0cb3c store 1 ,mem_mouse_key_status 
-056a 1fe3fe00 lshift pdata ,pdata 
-056b 1fe22400 copy pdata ,regb 
-056c 18422600 copy temp ,regc 
-056d 204004ac call p_mouse_gpio_config_input_pd 
-056e 1a620400 copy regc ,temp 
-056f 204060a8 call gpio_get_bit 
-0570 7d20a400 nsetflag true ,0 ,regb 
-0571 20400573 call p_mouse_check_press 
-0572 20204199 branch mouse_check_key_connect_gnd + 4 
+0585 1a627e00 copy regc ,pdata 
+0586 67e0cb3c store 1 ,mem_mouse_key_status 
+0587 1fe3fe00 lshift pdata ,pdata 
+0588 1fe22400 copy pdata ,regb 
+0589 18422600 copy temp ,regc 
+058a 204004ac call p_mouse_gpio_config_input_pd 
+058b 1a620400 copy regc ,temp 
+058c 204060a8 call gpio_get_bit 
+058d 7d20a400 nsetflag true ,0 ,regb 
+058e 20400590 call p_mouse_check_press 
+058f 20204199 branch mouse_check_key_connect_gnd + 4 
 
 p_mouse_check_press:
-0573 6848cb3c fetcht 1 ,mem_mouse_key_status 
-0574 18410401 and_into 0x01 ,temp 
-0575 1a417e01 and regb ,0x01 ,pdata 
-0576 98467c00 isub temp ,null 
-0577 2422c368 nbranch mouse_current_mult_update ,zero 
-0578 20600000 rtn 
+0590 6848cb3c fetcht 1 ,mem_mouse_key_status 
+0591 18410401 and_into 0x01 ,temp 
+0592 1a417e01 and regb ,0x01 ,pdata 
+0593 98467c00 isub temp ,null 
+0594 2422c368 nbranch mouse_current_mult_update ,zero 
+0595 20600000 rtn 
 
 p_g24_receive_rxon:
-0579 20402aa4 call g24_prep 
-057a c597057e bmark0 mark_ble_lr ,p_g24_receive_nolr 
-057b 783cfc00 pulse dewhiten_code_calc 
-057c 2000001e nop 30 
-057d 20402aa4 call g24_prep 
+0596 20402aa4 call g24_prep 
+0597 c597059b bmark0 mark_ble_lr ,p_g24_receive_nolr 
+0598 783cfc00 pulse dewhiten_code_calc 
+0599 2000001e nop 30 
+059a 20402aa4 call g24_prep 
 
 p_g24_receive_nolr:
-057e 7857fc00 disable user3 
-057f 7826fc00 enable decode_fec0 
-0580 7830fc00 enable is_rx 
-0581 78507c00 disable is_tx 
-0582 78287c00 enable swfine 
-0583 6fe14837 fetch 2 ,mem_24g_rx_window 
-0584 98003600 iforce stop_watch 
-0585 37c18400 correlate null ,timeout 
-0586 242c05ca nbranch p_g24_sync_timeout ,sync 
-0587 20404c9c call rf_debug_rx_sync_line 
-0588 c517058b bmark1 mark_ble_lr ,p_g24_receive_skip_fec1 
-0589 7846fc00 disable decode_fec0 
-058a 7825fc00 enable decode_fec1 
+059b 7857fc00 disable user3 
+059c 7826fc00 enable decode_fec0 
+059d 7830fc00 enable is_rx 
+059e 78507c00 disable is_tx 
+059f 78287c00 enable swfine 
+05a0 6fe14837 fetch 2 ,mem_24g_rx_window 
+05a1 98003600 iforce stop_watch 
+05a2 37c18400 correlate null ,timeout 
+05a3 242c05e7 nbranch p_g24_sync_timeout ,sync 
+05a4 20404c9c call rf_debug_rx_sync_line 
+05a5 c51705a8 bmark1 mark_ble_lr ,p_g24_receive_skip_fec1 
+05a6 7846fc00 disable decode_fec0 
+05a7 7825fc00 enable decode_fec1 
 
 p_g24_receive_skip_fec1:
-058b 7823fc00 enable enable_white 
-058c 7824fc00 enable enable_crc 
-058d 20402afe call g24_receive_byte 
-058e 67e0c859 store 1 ,mem_24g_get_syncword_crc8 
-058f 6848c858 fetcht 1 ,mem_24g_syncword_crc8 
-0590 98467c00 isub temp ,null 
-0591 2422ab03 nbranch g24_end_of_packet ,zero 
-0592 7858fc00 disable user7 
-0593 280ffe2e isolate1 mark_ble_lr ,mark 
-0594 204085bf call p_g24_lr_receive_pdu_len ,true 
-0595 2038ab03 branch g24_end_of_packet ,user7 
-0596 20402afe call g24_receive_byte 
-0597 67e0c7a3 store 1 ,mem_24g_rxbuf 
-0598 c513859d bmark1 mark_24g_rxmode ,p_g24_receive_skip 
-0599 6fe0c7a3 fetch 1 ,mem_24g_rxbuf 
-059a 6848c835 fetcht 1 ,mem_24g_data_type 
-059b a8400e00 icompare bits_data ,temp 
-059c 2420ab03 nbranch g24_end_of_packet ,true 
+05a8 7823fc00 enable enable_white 
+05a9 7824fc00 enable enable_crc 
+05aa 20402afe call g24_receive_byte 
+05ab 67e0c859 store 1 ,mem_24g_get_syncword_crc8 
+05ac 6848c858 fetcht 1 ,mem_24g_syncword_crc8 
+05ad 98467c00 isub temp ,null 
+05ae 2422ab03 nbranch g24_end_of_packet ,zero 
+05af 7858fc00 disable user7 
+05b0 280ffe2e isolate1 mark_ble_lr ,mark 
+05b1 204085dc call p_g24_lr_receive_pdu_len ,true 
+05b2 2038ab03 branch g24_end_of_packet ,user7 
+05b3 20402afe call g24_receive_byte 
+05b4 67e0c7a3 store 1 ,mem_24g_rxbuf 
+05b5 c51385ba bmark1 mark_24g_rxmode ,p_g24_receive_skip 
+05b6 6fe0c7a3 fetch 1 ,mem_24g_rxbuf 
+05b7 6848c835 fetcht 1 ,mem_24g_data_type 
+05b8 a8400e00 icompare bits_data ,temp 
+05b9 2420ab03 nbranch g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-059d 20402afe call g24_receive_byte 
-059e 280ffe2e isolate1 mark_ble_lr ,mark 
-059f 2040aaf9 call g24_lr_receive_payload_len ,true 
-05a0 e7e08005 istore 1 ,contw 
-05a1 1fe97e00 rshift3 pdata ,pdata 
-05a2 1fe67c1f sub pdata ,0x1f ,null 
-05a3 24212b03 nbranch g24_end_of_packet ,positive 
-05a4 1fe27200 copy pdata ,loopcnt 
-05a5 202285a9 branch p_g24rx_nopayload ,zero 
+05ba 20402afe call g24_receive_byte 
+05bb 280ffe2e isolate1 mark_ble_lr ,mark 
+05bc 2040aaf9 call g24_lr_receive_payload_len ,true 
+05bd e7e08005 istore 1 ,contw 
+05be 1fe97e00 rshift3 pdata ,pdata 
+05bf 1fe67c1f sub pdata ,0x1f ,null 
+05c0 24212b03 nbranch g24_end_of_packet ,positive 
+05c1 1fe27200 copy pdata ,loopcnt 
+05c2 202285c6 branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-05a6 20402afe call g24_receive_byte 
-05a7 e7e08005 istore 1 ,contw 
-05a8 c20005a6 loop p_g24rx_loop 
+05c3 20402afe call g24_receive_byte 
+05c4 e7e08005 istore 1 ,contw 
+05c5 c20005c3 loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-05a9 c51385ae bmark1 mark_24g_rxmode ,p_g24_receive_skip_rssi 
-05aa 18a22200 copy contw ,rega 
-05ab 20402afe call g24_receive_byte 
-05ac 67e0c86c store 1 ,mem_rssi_hex_received 
-05ad 1a220a00 copy rega ,contw 
+05c6 c51385cb bmark1 mark_24g_rxmode ,p_g24_receive_skip_rssi 
+05c7 18a22200 copy contw ,rega 
+05c8 20402afe call g24_receive_byte 
+05c9 67e0c86c store 1 ,mem_rssi_hex_received 
+05ca 1a220a00 copy rega ,contw 
 
 p_g24_receive_skip_rssi:
-05ae 09800018 parse demod ,bucket ,24 
-05af 1fef7e00 rshift32 pdata ,pdata 
-05b0 1ff17e00 rshift16 pdata ,pdata 
-05b1 e7e18005 istore 3 ,contw 
-05b2 7845fc00 disable decode_fec1 
-05b3 280ffe27 isolate1 mark_24g_rxmode ,mark 
-05b4 204085d4 call p_save_rssi_dec ,true 
-05b5 20232b03 branch g24_end_of_packet ,crc_failed 
-05b6 20404c9b call rf_debug_rx_crc_line 
-05b7 7837fc00 enable user3 
-05b8 20401fc0 call le_set_txfreq 
-05b9 c6138000 rtnmark1 mark_24g_rxmode 
-05ba 6fe0c86c fetch 1 ,mem_rssi_hex_received 
-05bb 6848cbaa fetcht 1 ,mem_rssi_hex_received_max_value 
-05bc 98467c00 isub temp ,null 
-05bd 20417e5a call copy_temp2pdata ,positive 
-05be 20202e7d branch rssi_signal 
+05cb 09800018 parse demod ,bucket ,24 
+05cc 1fef7e00 rshift32 pdata ,pdata 
+05cd 1ff17e00 rshift16 pdata ,pdata 
+05ce e7e18005 istore 3 ,contw 
+05cf 7845fc00 disable decode_fec1 
+05d0 280ffe27 isolate1 mark_24g_rxmode ,mark 
+05d1 204085f1 call p_save_rssi_dec ,true 
+05d2 20232b03 branch g24_end_of_packet ,crc_failed 
+05d3 20404c9b call rf_debug_rx_crc_line 
+05d4 7837fc00 enable user3 
+05d5 20401fc0 call le_set_txfreq 
+05d6 c6138000 rtnmark1 mark_24g_rxmode 
+05d7 6fe0c86c fetch 1 ,mem_rssi_hex_received 
+05d8 6848cbaa fetcht 1 ,mem_rssi_hex_received_max_value 
+05d9 98467c00 isub temp ,null 
+05da 20417e5a call copy_temp2pdata ,positive 
+05db 20202e7d branch rssi_signal 
 
 p_g24_lr_receive_pdu_len:
-05bf 20402afe call g24_receive_byte 
-05c0 1fe67c01 sub pdata ,1 ,null 
-05c1 202105c8 branch enable_user7 ,positive 
-05c2 1fe0fffe increase -2 ,pdata 
-05c3 c51385c6 bmark1 mark_24g_rxmode ,p_g24_lr_receive_pdu_norssi 
-05c4 203a05c8 branch enable_user7 ,blank 
-05c5 1fe0ffff increase -1 ,pdata 
+05dc 20402afe call g24_receive_byte 
+05dd 1fe67c01 sub pdata ,1 ,null 
+05de 202105e5 branch enable_user7 ,positive 
+05df 1fe0fffe increase -2 ,pdata 
+05e0 c51385e3 bmark1 mark_24g_rxmode ,p_g24_lr_receive_pdu_norssi 
+05e1 203a05e5 branch enable_user7 ,blank 
+05e2 1fe0ffff increase -1 ,pdata 
 
 p_g24_lr_receive_pdu_norssi:
-05c6 67e08964 store 1 ,mem_temp 
-05c7 20600000 rtn 
+05e3 67e08964 store 1 ,mem_temp 
+05e4 20600000 rtn 
 
 enable_user7:
-05c8 7838fc00 enable user7 
-05c9 20600000 rtn 
+05e5 7838fc00 enable user7 
+05e6 20600000 rtn 
 
 p_g24_sync_timeout:
-05ca 280ffe27 isolate1 mark_24g_rxmode ,mark 
-05cb 204085cd call p_rssi_noise ,true 
-05cc 20202b03 branch g24_end_of_packet 
+05e7 280ffe27 isolate1 mark_24g_rxmode ,mark 
+05e8 204085ea call p_rssi_noise ,true 
+05e9 20202b03 branch g24_end_of_packet 
 
 p_rssi_noise:
-05cd 204005d4 call p_save_rssi_dec 
-05ce 207a0000 rtn blank 
-05cf 6848c884 fetcht 1 ,mem_rssi_noise_index 
-05d0 6a21488b fetchr rega ,2 ,mem_rssi_noise_buffer_ptr 
-05d1 20402e60 call rssi_store 
-05d2 6048c884 storet 1 ,mem_rssi_noise_index 
-05d3 20600000 rtn 
+05ea 204005f1 call p_save_rssi_dec 
+05eb 207a0000 rtn blank 
+05ec 6848c884 fetcht 1 ,mem_rssi_noise_index 
+05ed 6a21488b fetchr rega ,2 ,mem_rssi_noise_buffer_ptr 
+05ee 20402e60 call rssi_store 
+05ef 6048c884 storet 1 ,mem_rssi_noise_index 
+05f0 20600000 rtn 
 
 p_save_rssi_dec:
-05d4 20401238 call save_rssi 
-05d5 2020012f branch p_rssi_hex2dec 
+05f1 20401238 call save_rssi 
+05f2 2020012f branch p_rssi_hex2dec 
 
 p_g24_transmit:
-05d6 6fe0c864 fetch 1 ,mem_24g_tx_phy 
-05d7 20401e9e call le_enable_phy_by_pdata 
-05d8 6fe2483b fetch 4 ,mem_24g_addr 
-05d9 98001200 iforce access 
-05da 20402aa4 call g24_prep 
-05db 20402b07 call g24_set_freq_tx 
-05dc 79202a00 set1 txgfsk ,radio_ctrl 
-05dd 782efc00 enable encode_fec0 
-05de 78307c00 enable is_tx 
-05df 7850fc00 disable is_rx 
-05e0 20404ca2 call rf_debug_tx_on_line 
-05e1 785d7c00 disable lr_s2en 
-05e2 c51705e4 bmark1 mark_ble_lr ,p_g24_transmit_lr 
-05e3 20202b17 branch g24_transmit + 13 
+05f3 6fe0c864 fetch 1 ,mem_24g_tx_phy 
+05f4 20401e9e call le_enable_phy_by_pdata 
+05f5 6fe2483b fetch 4 ,mem_24g_addr 
+05f6 98001200 iforce access 
+05f7 20402aa4 call g24_prep 
+05f8 20402b07 call g24_set_freq_tx 
+05f9 79202a00 set1 txgfsk ,radio_ctrl 
+05fa 782efc00 enable encode_fec0 
+05fb 78307c00 enable is_tx 
+05fc 7850fc00 disable is_rx 
+05fd 20404ca2 call rf_debug_tx_on_line 
+05fe 785d7c00 disable lr_s2en 
+05ff c5170601 bmark1 mark_ble_lr ,p_g24_transmit_lr 
+0600 20202b17 branch g24_transmit + 13 
 
 p_g24_transmit_lr:
-05e4 df20000a arg 10 ,loopcnt 
+0601 df20000a arg 10 ,loopcnt 
 
 p_g24_transmit_lr_preamble_loop:
-05e5 5800003c setarg 0x3c 
-05e6 08008608 inject mod ,8 
-05e7 c20005e5 loop p_g24_transmit_lr_preamble_loop 
-05e8 784efc00 disable encode_fec0 
-05e9 783c7c00 enable encode_fec3 
-05ea 19317e00 rshift16 access ,pdata 
-05eb 1ff17e00 rshift16 pdata ,pdata 
-05ec 1ff1fe00 rshift4 pdata ,pdata 
-05ed 08008620 inject mod ,32 
-05ee c51a2b46 bmark1 mark_ble_lr_s8_fix ,g24_transmit_lr_s8 
-05ef 20202b42 branch g24_transmit_lr_s2 
+0602 5800003c setarg 0x3c 
+0603 08008608 inject mod ,8 
+0604 c2000602 loop p_g24_transmit_lr_preamble_loop 
+0605 784efc00 disable encode_fec0 
+0606 783c7c00 enable encode_fec3 
+0607 19317e00 rshift16 access ,pdata 
+0608 1ff17e00 rshift16 pdata ,pdata 
+0609 1ff1fe00 rshift4 pdata ,pdata 
+060a 08008620 inject mod ,32 
+060b c51a2b46 bmark1 mark_ble_lr_s8_fix ,g24_transmit_lr_s8 
+060c 20202b42 branch g24_transmit_lr_s2 
 
 p_mouse_wakeup_24g:
-05f0 6fe0cb8b fetch 1 ,mem_sensor_shutdown_flag 
-05f1 245a05f6 ncall p_mouse_init_sensor_wakeup ,blank 
-05f2 704b8b00 jam 0 ,mem_sensor_shutdown_flag 
-05f3 20600000 rtn 
+060d 6fe0cb8b fetch 1 ,mem_sensor_shutdown_flag 
+060e 245a0613 ncall p_mouse_init_sensor_wakeup ,blank 
+060f 704b8b00 jam 0 ,mem_sensor_shutdown_flag 
+0610 20600000 rtn 
 
 p_mouse_init_sunt:
-05f4 20400627 call p_mouse_sensor_spi_init 
-05f5 20758000 rtn wake 
+0611 20400644 call p_mouse_sensor_spi_init 
+0612 20758000 rtn wake 
 
 p_mouse_init_sensor_wakeup:
-05f6 20400622 call p_mouse_sensor_poweron 
+0613 2040063f call p_mouse_sensor_poweron 
 
 p_mouse_init_sensor:
-05f7 204041b8 call mouse_read_sensor_id 
-05f8 c0180602 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-05f9 c0188600 beq p3065_id1 ,p_mouse_init_p3065 
-05fa 204005fd call p_mouse_twspi_reset 
-05fb 20001af4 nop 6900 
-05fc 202005f7 branch p_mouse_init_sensor 
+0614 204041b8 call mouse_read_sensor_id 
+0615 c018061f beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+0616 c018861d beq p3065_id1 ,p_mouse_init_p3065 
+0617 2040061a call p_mouse_twspi_reset 
+0618 20001af4 nop 6900 
+0619 20200614 branch p_mouse_init_sensor 
 
 p_mouse_twspi_reset:
-05fd 6fe0cbaf fetch 1 ,mem_mouse_sensor_sclk_gpio 
-05fe 20405ab2 call twspi_reset 
-05ff 20200629 branch p_mouse_spid_init_pin 
+061a 6fe0cbaf fetch 1 ,mem_mouse_sensor_sclk_gpio 
+061b 20405ab2 call twspi_reset 
+061c 20200646 branch p_mouse_spid_init_pin 
 
 p_mouse_init_p3065:
-0600 20400622 call p_mouse_sensor_poweron 
-0601 2020420b branch mouse_init_p3065 + 1 
+061d 2040063f call p_mouse_sensor_poweron 
+061e 2020420b branch mouse_init_p3065 + 1 
 
 p_mouse_init_p32xx_id2_judge:
-0602 6fe0c995 fetch 1 ,mem_sensor_id2 
-0603 c02d060c beq p_mx8650 ,p_mouse_mx8650_init_param 
-0604 c06c0613 beq p8009_id2 ,p_mouse_8009_init_param 
-0605 c068c1f4 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
-0606 c06941fd beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
-0607 c0014204 beq p3212_id2 ,mouse_3212_init_param 
-0608 c02a060a beq pka8_id2 ,p_mouse_ka8_init_param 
-0609 202005f7 branch p_mouse_init_sensor 
+061f 6fe0c995 fetch 1 ,mem_sensor_id2 
+0620 c02d0629 beq p_mx8650 ,p_mouse_mx8650_init_param 
+0621 c06c0630 beq p8009_id2 ,p_mouse_8009_init_param 
+0622 c068c1f4 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+0623 c06941fd beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+0624 c0014204 beq p3212_id2 ,mouse_3212_init_param 
+0625 c02a0627 beq pka8_id2 ,p_mouse_ka8_init_param 
+0626 20200614 branch p_mouse_init_sensor 
 
 p_mouse_ka8_init_param:
-060a 7048e202 jam ka8 ,mem_config_sensor_type 
-060b 20600000 rtn 
+0627 7048e202 jam ka8 ,mem_config_sensor_type 
+0628 20600000 rtn 
 
 p_mouse_mx8650_init_param:
-060c 7048e207 jam mx8650 ,mem_config_sensor_type 
-060d 58008006 setarg 0x8006 
-060e 20405af1 call twspi_write 
-060f 20407d20 call delay_10ms 
-0610 da604bb1 arg mem_sensor_8650_init_new ,regc 
-0611 20404213 call mouse_sensor_wr_seq 
-0612 2020409c branch mouse_dpi_config 
+0629 7048e207 jam mx8650 ,mem_config_sensor_type 
+062a 58008006 setarg 0x8006 
+062b 20405af1 call twspi_write 
+062c 20407d20 call delay_10ms 
+062d da604bb1 arg mem_sensor_8650_init_new ,regc 
+062e 20404213 call mouse_sensor_wr_seq 
+062f 2020409c branch mouse_dpi_config 
 
 p_mouse_8009_init_param:
-0613 58000016 setarg 0x16 
-0614 20405af3 call twspi_read 
-0615 1fe67cbd sub pdata ,0xbd ,null 
-0616 242285f4 nbranch p_mouse_init_sunt ,zero 
-0617 58000019 setarg 0x19 
-0618 20405af3 call twspi_read 
-0619 1fe67c55 sub pdata ,0x55 ,null 
-061a 242285f4 nbranch p_mouse_init_sunt ,zero 
-061b 5800001b setarg 0x1b 
-061c 20405af3 call twspi_read 
-061d 1fe67c1d sub pdata ,0x1d ,null 
-061e 242285f4 nbranch p_mouse_init_sunt ,zero 
-061f 7048e208 jam p8009 ,mem_config_sensor_type 
-0620 da604a34 arg mem_sensor_8009_init ,regc 
-0621 20204213 branch mouse_sensor_wr_seq 
+0630 58000016 setarg 0x16 
+0631 20405af3 call twspi_read 
+0632 1fe67cbd sub pdata ,0xbd ,null 
+0633 24228611 nbranch p_mouse_init_sunt ,zero 
+0634 58000019 setarg 0x19 
+0635 20405af3 call twspi_read 
+0636 1fe67c55 sub pdata ,0x55 ,null 
+0637 24228611 nbranch p_mouse_init_sunt ,zero 
+0638 5800001b setarg 0x1b 
+0639 20405af3 call twspi_read 
+063a 1fe67c1d sub pdata ,0x1d ,null 
+063b 24228611 nbranch p_mouse_init_sunt ,zero 
+063c 7048e208 jam p8009 ,mem_config_sensor_type 
+063d da604a34 arg mem_sensor_8009_init ,regc 
+063e 20204213 branch mouse_sensor_wr_seq 
 
 p_mouse_sensor_poweron:
-0622 20400627 call p_mouse_sensor_spi_init 
-0623 58008006 setarg 0x8006 
-0624 20405af1 call twspi_write 
-0625 20002ee0 nop 12000 
-0626 2020421b branch mouse_sensor_poweron + 1 
+063f 20400644 call p_mouse_sensor_spi_init 
+0640 58008006 setarg 0x8006 
+0641 20405af1 call twspi_write 
+0642 20002ee0 nop 12000 
+0643 2020421b branch mouse_sensor_poweron + 1 
 
 p_mouse_sensor_spi_init:
-0627 20400629 call p_mouse_spid_init_pin 
-0628 20203f73 branch mouse_sensor_spi_init + 1 
+0644 20400646 call p_mouse_spid_init_pin 
+0645 20203f73 branch mouse_sensor_spi_init + 1 
 
 p_mouse_spid_init_pin:
-0629 6fe0cbaf fetch 1 ,mem_mouse_sensor_sclk_gpio 
-062a d8400021 arg gpcfg_spid_sck ,temp 
-062b 204060e2 call gpio_config_function_int 
-062c 6fe0cbb0 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-062d d8400023 arg gpcfg_spid_sdio ,temp 
-062e 202060e2 branch gpio_config_function_int 
+0646 6fe0cbaf fetch 1 ,mem_mouse_sensor_sclk_gpio 
+0647 d8400021 arg gpcfg_spid_sck ,temp 
+0648 204060e2 call gpio_config_function_int 
+0649 6fe0cbb0 fetch 1 ,mem_mouse_sensor_sdio_gpio 
+064a d8400023 arg gpcfg_spid_sdio ,temp 
+064b 202060e2 branch gpio_config_function_int 
 
 p_mouse_24g_hibernate_set:
-062f 20402e34 call g24_txbuf_clear 
-0630 20402ed9 call g24_transmit_next_packet 
-0631 5800ffff setarg 0xffff 
-0632 67e1485b store 2 ,mem_24g_enter_hibernate 
-0633 67e1485d store 2 ,mem_24g_enter_hibernate + 2 
-0634 58000000 setarg 0 
-0635 67e3c8b3 store 7 ,mem_mouse_key 
-0636 704b8b01 jam 1 ,mem_sensor_shutdown_flag 
-0637 2040063a call p_mouse_sensor_powerdown 
-0638 20400485 call p_mouse_setgpio_hibernate 
-0639 20202f32 branch g24_long_sleep 
+064c 20402e34 call g24_txbuf_clear 
+064d 20402ed9 call g24_transmit_next_packet 
+064e 5800ffff setarg 0xffff 
+064f 67e1485b store 2 ,mem_24g_enter_hibernate 
+0650 67e1485d store 2 ,mem_24g_enter_hibernate + 2 
+0651 58000000 setarg 0 
+0652 67e3c8b3 store 7 ,mem_mouse_key 
+0653 704b8b01 jam 1 ,mem_sensor_shutdown_flag 
+0654 20400657 call p_mouse_sensor_powerdown 
+0655 20400485 call p_mouse_setgpio_hibernate 
+0656 20202f32 branch g24_long_sleep 
 
 p_mouse_sensor_powerdown:
-063a 204005f4 call p_mouse_init_sunt 
-063b 20400627 call p_mouse_sensor_spi_init 
-063c 20204220 branch mouse_sensor_powerdown_next 
+0657 20400611 call p_mouse_init_sunt 
+0658 20400644 call p_mouse_sensor_spi_init 
+0659 20204220 branch mouse_sensor_powerdown_next 
 
 p_g24_pair_param_init:
-063d 7048694e jam 0x4e ,mem_24g_pair_ch 
-063e 58101520 setarg 0x101520 
-063f 67e1c865 store 3 ,mem_24g_pair_addr 
-0640 58000005 setarg 0x05 
-0641 e7e08005 istore 1 ,contw 
-0642 20600000 rtn 
+065a 7048694e jam 0x4e ,mem_24g_pair_ch 
+065b 58101520 setarg 0x101520 
+065c 67e1c865 store 3 ,mem_24g_pair_addr 
+065d 58000005 setarg 0x05 
+065e e7e08005 istore 1 ,contw 
+065f 20600000 rtn 
 
 p_g24_chmap_param_init:
-0643 38001300 setsect 0 ,0x1300 
-0644 3805908b setsect 1 ,0x1908b 
-0645 380b6150 setsect 2 ,0x36150 
-0646 380c3d20 setsect 3 ,0x3d20 
-0647 67e4c83f store 9 ,mem_24g_ch_map1 
-0648 38003a1a setsect 0 ,0x3a1a 
-0649 3804c453 setsect 1 ,0xc453 
-064a 3808d312 setsect 2 ,0xd312 
-064b 380c0001 setsect 3 ,0x1 
-064c e7e38005 istore 7 ,contw 
-064d 6fe0c09a fetch 1 ,mem_device_option 
-064e c1840000 rtnne dvc_op_mouse 
-064f 6fe0cb8c fetch 1 ,mem_24g_ch_map_update 
-0650 207a0000 rtn blank 
-0651 d8c04b8d arg mem_24g_ch_update_map1 ,contr 
-0652 d8a0483f arg mem_24g_ch_map1 ,contw 
-0653 20207d1a branch memcpy16 
+0660 38001300 setsect 0 ,0x1300 
+0661 3805908b setsect 1 ,0x1908b 
+0662 380b6150 setsect 2 ,0x36150 
+0663 380c3d20 setsect 3 ,0x3d20 
+0664 67e4c83f store 9 ,mem_24g_ch_map1 
+0665 38003a1a setsect 0 ,0x3a1a 
+0666 3804c453 setsect 1 ,0xc453 
+0667 3808d312 setsect 2 ,0xd312 
+0668 380c0001 setsect 3 ,0x1 
+0669 e7e38005 istore 7 ,contw 
+066a 6fe0c09a fetch 1 ,mem_device_option 
+066b c1840000 rtnne dvc_op_mouse 
+066c 6fe0cb8c fetch 1 ,mem_24g_ch_map_update 
+066d 207a0000 rtn blank 
+066e d8c04b8d arg mem_24g_ch_update_map1 ,contr 
+066f d8a0483f arg mem_24g_ch_map1 ,contw 
+0670 20207d1a branch memcpy16 
 
 p_g24_transmit_hop_process:
-0654 6848c893 fetcht 1 ,mem_24g_retry 
-0655 6fe0cb86 fetch 1 ,mem_24g_fast_hop_count 
-0656 98467c00 isub temp ,null 
-0657 242106cc nbranch p_g24_tx_fast_hop ,positive 
-0658 18408401 increase 1 ,temp 
-0659 6048c893 storet 1 ,mem_24g_retry 
-065a 6fe0cb86 fetch 1 ,mem_24g_fast_hop_count 
-065b c0028660 beq 5 ,p_g24_transmit_hop_process_250hz 
-065c 6fe0c893 fetch 1 ,mem_24g_retry 
-065d c0032f13 beq 6 ,g24_hop_ch_disable 
-065e c0062f13 beq 12 ,g24_hop_ch_disable 
-065f 20600000 rtn 
+0671 6848c893 fetcht 1 ,mem_24g_retry 
+0672 6fe0cb86 fetch 1 ,mem_24g_fast_hop_count 
+0673 98467c00 isub temp ,null 
+0674 242106e9 nbranch p_g24_tx_fast_hop ,positive 
+0675 18408401 increase 1 ,temp 
+0676 6048c893 storet 1 ,mem_24g_retry 
+0677 6fe0cb86 fetch 1 ,mem_24g_fast_hop_count 
+0678 c002867d beq 5 ,p_g24_transmit_hop_process_250hz 
+0679 6fe0c893 fetch 1 ,mem_24g_retry 
+067a c0032f13 beq 6 ,g24_hop_ch_disable 
+067b c0062f13 beq 12 ,g24_hop_ch_disable 
+067c 20600000 rtn 
 
 p_g24_transmit_hop_process_250hz:
-0660 6fe0c893 fetch 1 ,mem_24g_retry 
-0661 c001af13 beq 3 ,g24_hop_ch_disable 
-0662 c0032f13 beq 6 ,g24_hop_ch_disable 
-0663 20600000 rtn 
+067d 6fe0c893 fetch 1 ,mem_24g_retry 
+067e c001af13 beq 3 ,g24_hop_ch_disable 
+067f c0032f13 beq 6 ,g24_hop_ch_disable 
+0680 20600000 rtn 
 
 p_g24_transmit_dispatch:
-0664 20402eb9 call g24_txdata_prep 
-0665 24340673 nbranch p_g24_nodata_transmit ,user 
+0681 20402eb9 call g24_txdata_prep 
+0682 24340690 nbranch p_g24_nodata_transmit ,user 
 
 p_g24_transmit_start:
-0666 20400687 call p_g24_transmit_process 
-0667 20402f6b call power_ctrl_start 
-0668 6fe0cb8b fetch 1 ,mem_sensor_shutdown_flag 
-0669 243a066e nbranch p_g24_short_sleep ,blank 
-066a 6fe4489d fetch 8 ,mem_24g_long_sleep_set 
-066b 67e4485b store 8 ,mem_24g_enter_hibernate 
-066c 6fe148ab fetch 2 ,mem_24g_long_sleep_param_update_timer_init 
-066d 67e148ad store 2 ,mem_24g_long_sleep_param_update_timer 
+0683 204006a4 call p_g24_transmit_process 
+0684 20402f6b call power_ctrl_start 
+0685 6fe0cb8b fetch 1 ,mem_sensor_shutdown_flag 
+0686 243a068b nbranch p_g24_short_sleep ,blank 
+0687 6fe4489d fetch 8 ,mem_24g_long_sleep_set 
+0688 67e4485b store 8 ,mem_24g_enter_hibernate 
+0689 6fe148ab fetch 2 ,mem_24g_long_sleep_param_update_timer_init 
+068a 67e148ad store 2 ,mem_24g_long_sleep_param_update_timer 
 
 p_g24_short_sleep:
-066e 20402f38 call g24_lpm_wait 
-066f 24740000 nrtn user 
-0670 20407ff6 call clear_wake 
-0671 6fe1c89a fetch 3 ,mem_24g_short_sleep_set 
-0672 20202f35 branch g24_long_sleep2 
+068b 20402f38 call g24_lpm_wait 
+068c 24740000 nrtn user 
+068d 20407ff6 call clear_wake 
+068e 6fe1c89a fetch 3 ,mem_24g_short_sleep_set 
+068f 20202f35 branch g24_long_sleep2 
 
 p_g24_nodata_transmit:
-0673 6fe0c894 fetch 1 ,mem_24g_abort_pac 
-0674 205a0679 call p_g24_send_abort_packet ,blank 
-0675 6fe0c8a6 fetch 1 ,mem_24g_transmit_by_interrupt 
-0676 c1008000 rtneq g24_tx_timer_int_enable 
-0677 20402f1c call g24_search_receiver 
-0678 20202f32 branch g24_long_sleep 
+0690 6fe0c894 fetch 1 ,mem_24g_abort_pac 
+0691 205a0696 call p_g24_send_abort_packet ,blank 
+0692 6fe0c8a6 fetch 1 ,mem_24g_transmit_by_interrupt 
+0693 c1008000 rtneq g24_tx_timer_int_enable 
+0694 20402f1c call g24_search_receiver 
+0695 20202f32 branch g24_long_sleep 
 
 p_g24_send_abort_packet:
-0679 70483501 jam type_ms ,mem_24g_data_type 
-067a 70489401 jam 1 ,mem_24g_abort_pac 
-067b 20402eca call g24_transmit_rf_ctrl_clear 
-067c 67e0c7c5 store 1 ,mem_24g_txbuf 
-067d 58000000 setarg 0 
-067e 67e3c7c6 store 7 ,mem_24g_txbuf + 1 
-067f 6fe24896 fetch 4 ,mem_24g_device_addr 
-0680 67e247cd store 4 ,mem_24g_txbuf + 8 
-0681 7048340c jam 12 ,mem_24g_datalen 
-0682 6fe0c835 fetch 1 ,mem_24g_data_type 
-0683 79207e03 set1 bit_abort ,pdata 
-0684 67e0c835 store 1 ,mem_24g_data_type 
-0685 20402b55 call g24_transmit_prep 
-0686 20200666 branch p_g24_transmit_start 
+0696 70483501 jam type_ms ,mem_24g_data_type 
+0697 70489401 jam 1 ,mem_24g_abort_pac 
+0698 20402eca call g24_transmit_rf_ctrl_clear 
+0699 67e0c7c5 store 1 ,mem_24g_txbuf 
+069a 58000000 setarg 0 
+069b 67e3c7c6 store 7 ,mem_24g_txbuf + 1 
+069c 6fe24896 fetch 4 ,mem_24g_device_addr 
+069d 67e247cd store 4 ,mem_24g_txbuf + 8 
+069e 7048340c jam 12 ,mem_24g_datalen 
+069f 6fe0c835 fetch 1 ,mem_24g_data_type 
+06a0 79207e03 set1 bit_abort ,pdata 
+06a1 67e0c835 store 1 ,mem_24g_data_type 
+06a2 20402b55 call g24_transmit_prep 
+06a3 20200683 branch p_g24_transmit_start 
 
 p_g24_transmit_process:
-0687 70489300 jam 0 ,mem_24g_retry 
+06a4 70489300 jam 0 ,mem_24g_retry 
 
 p_g24_transmit_loop:
-0688 6961015f fetchr timeup ,2 ,mem_param_rx_setup 
-0689 34730200 until clkn_rt ,meet 
-068a 20402ee1 call g24_transmit_receive_ack 
-068b 6fe0c82b fetch 1 ,mem_24g_no_ack 
-068c c000aed7 beq no_ack_24g ,g24_transmit_no_ack 
-068d 242c0692 nbranch p_g24_retransmit ,sync 
-068e 24378692 nbranch p_g24_retransmit ,user3 
-068f 20402ef6 call g24_ackpayload_parse 
-0690 204005f0 call p_mouse_wakeup_24g 
-0691 20202ed7 branch g24_transmit_no_ack 
+06a5 6961015f fetchr timeup ,2 ,mem_param_rx_setup 
+06a6 34730200 until clkn_rt ,meet 
+06a7 20402ee1 call g24_transmit_receive_ack 
+06a8 6fe0c82b fetch 1 ,mem_24g_no_ack 
+06a9 c000aed7 beq no_ack_24g ,g24_transmit_no_ack 
+06aa 242c06af nbranch p_g24_retransmit ,sync 
+06ab 243786af nbranch p_g24_retransmit ,user3 
+06ac 20402ef6 call g24_ackpayload_parse 
+06ad 2040060d call p_mouse_wakeup_24g 
+06ae 20202ed7 branch g24_transmit_no_ack 
 
 p_g24_retransmit:
-0692 6fe14891 fetch 2 ,mem_24g_txfail_cnt 
-0693 1fe0fe01 increase 1 ,pdata 
-0694 67e14891 store 2 ,mem_24g_txfail_cnt 
-0695 6fe0c892 fetch 1 ,mem_24g_txfail_cnt + 1 
-0696 c282062f bbit1 4 ,p_mouse_24g_hibernate_set 
-0697 20402f01 call g24_transmit_hop_process 
-0698 20200688 branch p_g24_transmit_loop 
+06af 6fe14891 fetch 2 ,mem_24g_txfail_cnt 
+06b0 1fe0fe01 increase 1 ,pdata 
+06b1 67e14891 store 2 ,mem_24g_txfail_cnt 
+06b2 6fe0c892 fetch 1 ,mem_24g_txfail_cnt + 1 
+06b3 c282064c bbit1 4 ,p_mouse_24g_hibernate_set 
+06b4 20402f01 call g24_transmit_hop_process 
+06b5 202006a5 branch p_g24_transmit_loop 
 
 p_mouse_24g_long_sleep_param_update_timer:
-0699 da6048ad arg mem_24g_long_sleep_param_update_timer ,regc 
-069a da40069c arg p_mouse_24g_long_sleep_normal_param ,regb 
-069b 20203044 branch timer_single_step 
+06b6 da6048ad arg mem_24g_long_sleep_param_update_timer ,regc 
+06b7 da4006b9 arg p_mouse_24g_long_sleep_normal_param ,regb 
+06b8 20203044 branch timer_single_step 
 
 p_mouse_24g_long_sleep_normal_param:
-069c 6fe24b87 fetch 4 ,mem_24g_long_sleep_set1 
-069d 67e2485b store 4 ,mem_24g_enter_hibernate 
-069e 704a5101 jam 1 ,mem_mouse_long_mult_flag 
-069f 20600000 rtn 
+06b9 6fe24b87 fetch 4 ,mem_24g_long_sleep_set1 
+06ba 67e2485b store 4 ,mem_24g_enter_hibernate 
+06bb 704a5101 jam 1 ,mem_mouse_long_mult_flag 
+06bc 20600000 rtn 
 
 p_power_ctrl_start:
-06a0 6fe1478b fetch 2 ,mem_ui_state_map 
-06a1 c3858000 rtnbit1 ui_state_ble_adv 
-06a2 c3838000 rtnbit1 ui_state_bt_reconnect 
-06a3 c3830000 rtnbit1 ui_state_bt_discovery 
-06a4 6a214887 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-06a5 20402e68 call rssi_average 
-06a6 6048c8af storet 1 ,mem_rssi_avg_received 
-06a7 6fe0cba9 fetch 1 ,mem_rssi_dis_max_24g 
-06a8 c5132f76 bmark1 mark_24g ,power_ctrl_start_next 
-06a9 6fe0cbac fetch 1 ,mem_rssi_dis_max_ble 
+06bd 6fe1478b fetch 2 ,mem_ui_state_map 
+06be c3858000 rtnbit1 ui_state_ble_adv 
+06bf c3838000 rtnbit1 ui_state_bt_reconnect 
+06c0 c3830000 rtnbit1 ui_state_bt_discovery 
+06c1 6a214887 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+06c2 20402e68 call rssi_average 
+06c3 6048c8af storet 1 ,mem_rssi_avg_received 
+06c4 6fe0cba9 fetch 1 ,mem_rssi_dis_max_24g 
+06c5 c5132f76 bmark1 mark_24g ,power_ctrl_start_next 
+06c6 6fe0cbac fetch 1 ,mem_rssi_dis_max_ble 
 
 p_power_ctrl_start_next:
-06aa 98467c00 isub temp ,null 
-06ab 242106c4 nbranch p_power_ctrl_txpower_incrs_force ,positive 
-06ac 6fe0c8b1 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06ad 1fe67c02 sub pdata ,2 ,null 
-06ae 242106b2 nbranch p_power_ctrl_txpower_decrs_check ,positive 
-06af 6fe0c8b1 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06b0 c00006c5 beq 0 ,p_power_ctrl_txpower_incrs 
-06b1 20600000 rtn 
+06c7 98467c00 isub temp ,null 
+06c8 242106e1 nbranch p_power_ctrl_txpower_incrs_force ,positive 
+06c9 6fe0c8b1 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06ca 1fe67c02 sub pdata ,2 ,null 
+06cb 242106cf nbranch p_power_ctrl_txpower_decrs_check ,positive 
+06cc 6fe0c8b1 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06cd c00006e2 beq 0 ,p_power_ctrl_txpower_incrs 
+06ce 20600000 rtn 
 
 p_power_ctrl_txpower_decrs_check:
-06b2 6fe0c8b1 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06b3 6848c8b2 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
-06b4 98467c00 isub temp ,null 
-06b5 24628000 nrtn zero 
-06b6 7048b100 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+06cf 6fe0c8b1 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06d0 6848c8b2 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
+06d1 98467c00 isub temp ,null 
+06d2 24628000 nrtn zero 
+06d3 7048b100 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_decrs:
-06b7 6848c8af fetcht 1 ,mem_rssi_avg_received 
-06b8 6fe0cba8 fetch 1 ,mem_rssi_dis_min_24g 
-06b9 c51306bb bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
-06ba 6fe0cbab fetch 1 ,mem_rssi_dis_min_ble 
+06d4 6848c8af fetcht 1 ,mem_rssi_avg_received 
+06d5 6fe0cba8 fetch 1 ,mem_rssi_dis_min_24g 
+06d6 c51306d8 bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
+06d7 6fe0cbab fetch 1 ,mem_rssi_dis_min_ble 
 
 p_power_ctrl_txpower_decrs_next:
-06bb 98467c00 isub temp ,null 
-06bc 24610000 nrtn positive 
-06bd 6fe0c8b0 fetch 1 ,mem_power_ctrl_level 
-06be c0002f98 beq 0 ,power_ctrl_decrs_level0 
-06bf 1fe0ffff increase -1 ,pdata 
-06c0 67e0c8b0 store 1 ,mem_power_ctrl_level 
-06c1 c0002f98 beq 0 ,power_ctrl_decrs_level0 
+06d8 98467c00 isub temp ,null 
+06d9 24610000 nrtn positive 
+06da 6fe0c8b0 fetch 1 ,mem_power_ctrl_level 
+06db c0002f98 beq 0 ,power_ctrl_decrs_level0 
+06dc 1fe0ffff increase -1 ,pdata 
+06dd 67e0c8b0 store 1 ,mem_power_ctrl_level 
+06de c0002f98 beq 0 ,power_ctrl_decrs_level0 
 
 p_power_ctrl_decrs_level1:
 
 p_power_ctrl_incrs_level1:
-06c2 7041eb00 jam tx_power_0db ,mem_tx_power 
-06c3 20600000 rtn 
+06df 7041eb00 jam tx_power_0db ,mem_tx_power 
+06e0 20600000 rtn 
 
 p_power_ctrl_txpower_incrs_force:
-06c4 7048b100 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+06e1 7048b100 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_incrs:
-06c5 6fe0c8b0 fetch 1 ,mem_power_ctrl_level 
-06c6 c00106ca beq 2 ,p_power_ctrl_incrs_level2 
-06c7 1fe0fe01 increase 1 ,pdata 
-06c8 67e0c8b0 store 1 ,mem_power_ctrl_level 
-06c9 c00086c2 beq 1 ,p_power_ctrl_incrs_level1 
+06e2 6fe0c8b0 fetch 1 ,mem_power_ctrl_level 
+06e3 c00106e7 beq 2 ,p_power_ctrl_incrs_level2 
+06e4 1fe0fe01 increase 1 ,pdata 
+06e5 67e0c8b0 store 1 ,mem_power_ctrl_level 
+06e6 c00086df beq 1 ,p_power_ctrl_incrs_level1 
 
 p_power_ctrl_incrs_level2:
-06ca 7041eb05 jam tx_power_6db ,mem_tx_power 
-06cb 20600000 rtn 
+06e7 7041eb05 jam tx_power_6db ,mem_tx_power 
+06e8 20600000 rtn 
 
 p_g24_tx_fast_hop:
-06cc 204006c5 call p_power_ctrl_txpower_incrs 
-06cd 20402fa1 call power_ctrl_pac_succ_decrs 
-06ce 20202b8f branch g24_ch 
+06e9 204006e2 call p_power_ctrl_txpower_incrs 
+06ea 20402fa1 call power_ctrl_pac_succ_decrs 
+06eb 20202b8f branch g24_ch 
 
 p_mouse_start_work:
-06cf 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
-06d0 c297c807 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
-06d1 70490b00 jam mode_24g_device ,mem_device_flag 
-06d2 202047f3 branch mouse_24g_start_mode 
+06ec 6fe44b50 fetch mouse_flag_len ,mem_mouse_flag 
+06ed c297c807 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
+06ee 70490b00 jam mode_24g_device ,mem_device_flag 
+06ef 202047f3 branch mouse_24g_start_mode 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /branch/mouse/mouse_project/YJX_Project/Only2.4G/1306AB_XL-136_Only2.4G_LRpair/program/patch.prog	(revision 392)
+++ /branch/mouse/mouse_project/YJX_Project/Only2.4G/1306AB_XL-136_Only2.4G_LRpair/program/patch.prog	(working copy)
@@ -2143,15 +2143,29 @@
 	fetch 1,mem_sensor_shutdown_flag
 	ncall p_mouse_check_key_gpio_once,blank
 	arg 0,rega
-	call mouse_check_lkey_gpio
-	call mouse_check_mkey_gpio
-	call mouse_check_rkey_gpio	
+	call p_mouse_check_lkey_gpio
+	call p_mouse_check_mkey_gpio
+	call p_mouse_check_rkey_gpio	
 	call p_mouse_check_bkkey_gpio
 	call p_mouse_check_fwkey_gpio
 	call mouse_check_customerkey_gpio
 	copy rega,pdata
 	rtn
 
+p_mouse_check_lkey_gpio:
+	call p_mouse_3io6key_dpi_output_high_set
+	call mouse_check_lkey_gpio
+	fetcht 1,mem_dpi_button_gpio
+	branch p_mouse_gpio_config_input_pu
+
+p_mouse_check_mkey_gpio:
+	call p_mouse_3io6key_bk_output_high_set
+	branch mouse_check_mkey_gpio
+
+p_mouse_check_rkey_gpio:
+	call p_mouse_3io6key_fw_output_high_set
+	branch mouse_check_rkey_gpio
+
 p_mouse_check_key_gpio_once:
 	setarg 0x030303
 	store 3,mem_mouse_lkey_press_status
@@ -2186,6 +2200,8 @@
 
 
 p_mouse_3io6key_bk_check:
+	call p_mouse_3io6key_bk_output_low_set
+	fetcht 1,mem_bk_button_gpio
 	call p_mouse_3io6key_check
 	store 1,mem_mouse_bkkey_press_status
 	fetcht 1,mem_bk_button_gpio
@@ -2219,10 +2235,43 @@
 
 
 p_mouse_3io6key_fw_check:
+	call p_mouse_3io6key_fw_output_low_set
+	fetcht 1,mem_fw_button_gpio
 	call p_mouse_3io6key_check
 	store 1,mem_mouse_fwkey_press_status
 	fetcht 1,mem_fw_button_gpio
 	branch p_mouse_gpio_config_input_pu
+
+p_mouse_3io6key_bk_output_high_set:
+	fetch 1,mem_bk_button_gpio
+	branch p_mouse_gpio_config_output_high
+
+p_mouse_3io6key_bk_output_low_set:
+	fetch 1,mem_bk_button_gpio
+	branch p_mouse_gpio_config_output_low
+
+p_mouse_3io6key_fw_output_high_set:
+	fetch 1,mem_fw_button_gpio
+	branch p_mouse_gpio_config_output_high
+
+p_mouse_3io6key_fw_output_low_set:
+	fetch 1,mem_fw_button_gpio
+	branch p_mouse_gpio_config_output_low
+
+p_mouse_3io6key_dpi_output_high_set:
+	fetch 1,mem_dpi_button_gpio
+//input:pdata gpio number	
+p_mouse_gpio_config_output_high:
+	arg gpcfg_output_high,temp
+	branch gpio_config_function_int
+
+p_mouse_3io6key_dpi_output_low_set:
+	fetch 1,mem_dpi_button_gpio
+//input:pdata gpio number
+p_mouse_gpio_config_output_low:
+	arg gpcfg_output_low,temp
+	branch gpio_config_function_int
+	
 //////////////////////////////////////////////end//////////////////////////////////////////////////////
 
 /////////////////////////////////////start///////////////////////////////////////////
@@ -2379,9 +2428,14 @@
 	fetch 1,mem_mouse_dpikey_press_status
 	copy pdata,regc
 	fetch 1,mem_matrix_public_gpio
-	beq GPIO_DISABLE,p_mouse_3io6key_check
+	beq GPIO_DISABLE,p_mouse_3io6key_dpi_check
 	branch mouse_dpi_key_check+2
 
+p_mouse_3io6key_dpi_check:	
+	call p_mouse_3io6key_dpi_output_low_set
+	fetcht 1,mem_dpi_button_gpio
+	branch p_mouse_3io6key_check
+
 p_mouse_3io6key_dpi_check_end:
 	fetcht 1,mem_dpi_button_gpio
 	call p_mouse_gpio_config_input_pu
