Index: output/eeprom.dat
===================================================================
--- /YC1308AF/branch/mouse/mouse_public_4mode_usb/output/eeprom.dat	(revision 3392)
+++ /YC1308AF/branch/mouse/mouse_public_4mode_usb/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-0a
+2e
 1a
 c2
 84
@@ -55,7 +55,7 @@
 c0
 66
 85
-54
+5d
 c0
 67
 03
@@ -67,7 +67,7 @@
 c0
 68
 05
-7e
+87
 c0
 69
 03
@@ -103,11 +103,11 @@
 c0
 6c
 84
-ec
+f5
 c0
 6d
 04
-f6
+ff
 c0
 6e
 03
@@ -119,7 +119,7 @@
 c0
 73
 85
-04
+0d
 20
 20
 13
@@ -130,24 +130,24 @@
 a7
 c0
 42
-84
-f9
+85
+02
 c0
 47
 05
-c1
+ca
 c0
 49
 85
-d2
+db
 c0
 53
-04
-fd
+05
+06
 c0
 6e
 84
-6d
+76
 c0
 6f
 01
@@ -159,15 +159,15 @@
 c0
 71
 04
-78
+81
 c0
 71
 84
-a0
+a9
 c0
 74
 84
-aa
+b3
 c0
 75
 01
@@ -175,23 +175,23 @@
 c0
 76
 04
-e1
+ea
 c0
 0c
 85
-18
+21
 c0
 4f
 85
-22
+2b
 c0
 50
 85
-2c
+35
 c0
 5f
 05
-2e
+37
 20
 20
 13
@@ -655,7 +655,7 @@
 20
 40
 05
-de
+e7
 20
 40
 47
@@ -3643,7 +3643,7 @@
 20
 40
 05
-ae
+b7
 20
 40
 3e
@@ -3859,11 +3859,11 @@
 20
 40
 06
-20
+29
 20
 40
 06
-51
+5a
 20
 60
 00
@@ -3975,7 +3975,7 @@
 20
 40
 05
-b1
+ba
 68
 48
 c9
@@ -4123,7 +4123,7 @@
 c0
 0a
 04
-66
+69
 c0
 20
 04
@@ -4131,11 +4131,11 @@
 c0
 00
 84
-68
+6b
 c0
 01
 04
-6b
+6e
 c0
 09
 04
@@ -4504,10 +4504,22 @@
 4c
 bd
 00
+70
+4b
+05
+00
+70
+4a
+bd
+00
 20
+40
+1a
+c8
 20
-43
-a6
+20
+04
+6e
 20
 40
 02
@@ -4532,10 +4544,34 @@
 4c
 bd
 00
+70
+4b
+90
+00
+70
+4b
+99
+00
 20
+40
+44
+33
 20
+40
 44
-3e
+49
+6f
+e0
+cc
+af
+24
+7a
+00
+00
+20
+20
+44
+42
 c5
 13
 a3
@@ -4559,7 +4595,7 @@
 24
 34
 04
-6e
+77
 20
 40
 26
@@ -4607,7 +4643,7 @@
 c0
 00
 04
-80
+89
 20
 60
 00
@@ -4623,19 +4659,19 @@
 c0
 00
 84
-87
+90
 c0
 01
 04
-89
+92
 c0
 01
 84
-8f
+98
 c0
 02
 04
-95
+9e
 20
 60
 00
@@ -4647,7 +4683,7 @@
 20
 20
 04
-96
+9f
 6f
 e0
 c8
@@ -4655,7 +4691,7 @@
 20
 3a
 04
-8d
+96
 6f
 e2
 48
@@ -4671,7 +4707,7 @@
 20
 20
 04
-96
+9f
 70
 47
 c9
@@ -4683,7 +4719,7 @@
 20
 3a
 04
-96
+9f
 6f
 e2
 48
@@ -4695,7 +4731,7 @@
 20
 20
 04
-98
+a1
 70
 47
 c9
@@ -4751,7 +4787,7 @@
 c0
 01
 04
-a4
+ad
 20
 20
 23
@@ -4795,7 +4831,7 @@
 20
 3a
 04
-b5
+be
 6f
 e1
 48
@@ -4835,11 +4871,11 @@
 24
 2c
 04
-ce
+d7
 24
 37
 84
-ce
+d7
 20
 40
 26
@@ -4859,7 +4895,7 @@
 20
 22
 84
-b2
+bb
 6f
 e2
 48
@@ -4875,7 +4911,7 @@
 20
 42
 84
-ca
+d3
 6f
 e0
 c8
@@ -4955,11 +4991,11 @@
 c0
 01
 04
-d8
+e1
 c0
 02
 04
-df
+e8
 20
 20
 25
@@ -5123,7 +5159,7 @@
 c2
 80
 85
-01
+0a
 20
 20
 16
@@ -5167,7 +5203,7 @@
 c0
 04
 85
-0c
+15
 20
 20
 4d
@@ -5243,7 +5279,7 @@
 c0
 03
 85
-1f
+28
 20
 20
 57
@@ -5315,7 +5351,7 @@
 c0
 02
 05
-31
+3a
 20
 20
 19
@@ -5331,11 +5367,11 @@
 c0
 05
 05
-36
+3f
 c0
 09
 05
-45
+4e
 20
 20
 1c
@@ -5363,7 +5399,7 @@
 c2
 81
 85
-40
+49
 6f
 e1
 44
@@ -5391,11 +5427,11 @@
 24
 22
 85
-3c
+45
 24
 34
 05
-3c
+45
 20
 20
 1d
@@ -5475,7 +5511,7 @@
 20
 40
 05
-64
+6d
 58
 00
 00
@@ -5499,7 +5535,7 @@
 20
 40
 05
-7b
+84
 6f
 e0
 c8
@@ -5519,7 +5555,7 @@
 20
 40
 05
-74
+7d
 20
 20
 45
@@ -5539,11 +5575,11 @@
 c0
 06
 05
-6a
+73
 c0
 05
 85
-6a
+73
 20
 20
 42
@@ -5559,7 +5595,7 @@
 c0
 7f
 85
-70
+79
 68
 48
 c9
@@ -5603,7 +5639,7 @@
 20
 40
 05
-d8
+e1
 20
 40
 47
@@ -5611,7 +5647,7 @@
 20
 40
 05
-db
+e4
 20
 60
 00
@@ -5619,11 +5655,11 @@
 20
 40
 05
-7e
+87
 20
 40
 05
-b4
+bd
 20
 20
 41
@@ -5643,15 +5679,15 @@
 20
 40
 05
-85
+8e
 20
 40
 05
-94
+9d
 20
 40
 05
-a1
+aa
 20
 20
 41
@@ -5663,7 +5699,7 @@
 20
 40
 05
-ae
+b7
 20
 40
 41
@@ -5683,7 +5719,7 @@
 20
 40
 05
-ae
+b7
 20
 40
 41
@@ -5703,7 +5739,7 @@
 20
 40
 05
-ae
+b7
 20
 40
 41
@@ -5747,7 +5783,7 @@
 c0
 7f
 85
-9d
+a6
 20
 20
 41
@@ -5759,7 +5795,7 @@
 20
 40
 05
-b1
+ba
 68
 48
 c9
@@ -5799,7 +5835,7 @@
 c0
 7f
 85
-aa
+b3
 20
 20
 41
@@ -5811,7 +5847,7 @@
 20
 40
 05
-b1
+ba
 68
 48
 c9
@@ -5863,11 +5899,11 @@
 20
 40
 05
-bb
+c4
 20
 40
 05
-be
+c7
 20
 20
 41
@@ -5911,7 +5947,7 @@
 c0
 00
 05
-c6
+cf
 20
 20
 7a
@@ -5939,7 +5975,7 @@
 c0
 00
 85
-cd
+d6
 20
 20
 7a
@@ -5951,7 +5987,7 @@
 c0
 04
 85
-d0
+d9
 20
 20
 7a
@@ -6031,15 +6067,15 @@
 20
 40
 05
-eb
+f4
 20
 40
 06
-13
+1c
 20
 40
 05
-f0
+f9
 6f
 e0
 cc
@@ -6091,7 +6127,7 @@
 20
 40
 05
-f4
+fd
 6f
 e0
 c9
@@ -6139,7 +6175,7 @@
 24
 41
 06
-08
+11
 1f
 e2
 24
@@ -6227,7 +6263,7 @@
 20
 40
 06
-0b
+14
 6f
 e4
 4b
@@ -6235,15 +6271,15 @@
 c2
 8e
 86
-1a
+23
 c2
 8f
 06
-1c
+25
 c2
 8f
 86
-1e
+27
 70
 49
 2e
@@ -6287,7 +6323,7 @@
 20
 40
 06
-26
+2f
 6f
 e0
 c9
@@ -6311,11 +6347,11 @@
 24
 20
 86
-2a
+33
 20
 20
 06
-3a
+43
 6f
 e0
 c9
@@ -6419,7 +6455,7 @@
 20
 40
 06
-0e
+17
 20
 40
 48
@@ -6439,7 +6475,7 @@
 58
 00
 05
-e2
+eb
 67
 e1
 0b
@@ -6494,8 +6530,8 @@
 00
 20
 40
-05
-f9
+06
+02
 24
 74
 00
@@ -6511,7 +6547,7 @@
 20
 20
 06
-5b
+64
 6f
 f0
 8c
@@ -6527,7 +6563,7 @@
 c3
 0a
 86
-61
+6a
 6f
 e0
 cb
@@ -6535,7 +6571,7 @@
 c0
 00
 86
-67
+70
 20
 40
 37
@@ -6567,7 +6603,7 @@
 20
 3a
 06
-72
+7b
 6f
 e4
 4b
@@ -6583,11 +6619,11 @@
 c0
 01
 86
-74
+7d
 c0
 01
 06
-7b
+84
 20
 40
 37
@@ -6611,7 +6647,7 @@
 20
 20
 06
-6a
+73
 20
 40
 37
@@ -6668,8 +6704,8 @@
 60
 00
 00
-4e
-36
+97
+c3
 aa
 55
 40
@@ -6815,8 +6851,8 @@
 40
 00
 00
-01
-1b
+02
+1f
 aa
 55
 0c
@@ -7914,7 +7950,7 @@
 00
 8e
 44
-01
+00
 aa
 55
 01
@@ -8060,10 +8096,10 @@
 aa
 aa
 55
-f1
-9f
-86
+f5
 9f
+92
+d6
 ff
 ff
 ff
@@ -8152,41 +8188,5 @@
 ff
 ff
 ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-63
+03
 72
Index: output/program.lis
===================================================================
--- /YC1308AF/branch/mouse/mouse_public_4mode_usb/output/program.lis	(revision 3392)
+++ /YC1308AF/branch/mouse/mouse_public_4mode_usb/output/program.lis	(working copy)
@@ -12,10 +12,10 @@
 0009 c0640385 beq patch19_0 ,p_mouse_setgpio_hibernate 
 000a c06483b7 beq patch19_1 ,p_mouse_lpm_before_common 
 000b c065829c beq patch19_3 ,p_mouse_adc_read_start 
-000c c0668554 beq patch19_5 ,p_mouse_motion 
+000c c066855d beq patch19_5 ,p_mouse_motion 
 000d c06703e3 beq patch19_6 ,p_mouse_dpi_process 
 000e c06783ec beq patch19_7 ,p_mouse_seting_dpi 
-000f c068057e beq patch1a_0 ,p_mouse_check_key_gpio 
+000f c0680587 beq patch1a_0 ,p_mouse_check_key_gpio 
 0010 c0690354 beq patch1a_2 ,p_mouse_init_sunt 
 0011 c0698369 beq patch1a_3 ,p_mouse_sensor_poweron 
 0012 c06a83ff beq patch1a_5 ,p_mouse_priority_bb_event 
@@ -24,31 +24,31 @@
 0015 c06f003c beq patch1b_6 ,p_mouse_ready_reconnection_by_button 
 0016 c0700034 beq patch1c_0 ,p_mouse_led_off 
 0017 c0708030 beq patch1c_1 ,p_mouse_led_on 
-0018 c06c84ec beq patch1b_1 ,p_mouse_start_discovery 
-0019 c06d04f6 beq patch1b_2 ,p_mouse_stop_discovery 
+0018 c06c84f5 beq patch1b_1 ,p_mouse_start_discovery 
+0019 c06d04ff beq patch1b_2 ,p_mouse_stop_discovery 
 001a c06e034d beq patch1b_4 ,p_mouse_store_device_info 
 001b c04f808f beq patch13_7 ,p_init_param 
-001c c0738504 beq patch1c_7 ,p_hid_rx_process 
+001c c073850d beq patch1c_7 ,p_hid_rx_process 
 001d 2020137e branch loop 
 
 pf_patch_ext:
 001e c00f80a7 beq patch23_7 ,p_twspi_reset 
-001f c04284f9 beq patch30_5 ,p_ui_timer_check 
-0020 c04705c1 beq patch31_6 ,p_usb_class_type 
-0021 c04985d2 beq patch32_3 ,p_usb_tx 
-0022 c05304fd beq patch34_6 ,p_le_enable_phy_by_pdata 
-0023 c06e846d beq patch3b_5 ,p_g24_dispatch 
+001f c0428502 beq patch30_5 ,p_ui_timer_check 
+0020 c04705ca beq patch31_6 ,p_usb_class_type 
+0021 c04985db beq patch32_3 ,p_usb_tx 
+0022 c0530506 beq patch34_6 ,p_le_enable_phy_by_pdata 
+0023 c06e8476 beq patch3b_5 ,p_g24_dispatch 
 0024 c06f01cc beq patch3b_6 ,p_g24_receive_packet 
 0025 c0708253 beq patch3c_1 ,p_g24_transmit 
-0026 c0710478 beq patch3c_2 ,p_g24_pair_dispatch 
-0027 c07184a0 beq patch3c_3 ,p_g24_pair_sm_common_next 
-0028 c07484aa beq patch3d_1 ,p_g24_reconn_dispatch 
+0026 c0710481 beq patch3c_2 ,p_g24_pair_dispatch 
+0027 c07184a9 beq patch3c_3 ,p_g24_pair_sm_common_next 
+0028 c07484b3 beq patch3d_1 ,p_g24_reconn_dispatch 
 0029 c075011e beq patch3d_2 ,p_g24_transmit_no_interrupt 
-002a c07604e1 beq patch3d_4 ,p_g24_lpm_wait 
-002b c00c8518 beq patch23_1 ,p_send_lmp 
-002c c04f8522 beq patch33_7 ,p_le_slave_match 
-002d c050852c beq patch34_1 ,p_le_slave_unsync 
-002e c05f052e beq patch37_6 ,p_le_parse_l2cap 
+002a c07604ea beq patch3d_4 ,p_g24_lpm_wait 
+002b c00c8521 beq patch23_1 ,p_send_lmp 
+002c c04f852b beq patch33_7 ,p_le_slave_match 
+002d c0508535 beq patch34_1 ,p_le_slave_unsync 
+002e c05f0537 beq patch37_6 ,p_le_parse_l2cap 
 002f 2020137e branch loop 
 
 p_mouse_led_on:
@@ -206,7 +206,7 @@
 009f 204041e7 call mouse_init_sunt 
 00a0 20758000 rtn wake 
 00a1 204003ed call p_mouse_seting_sensor_type 
-00a2 204005de call p_mouse_usb_check_enable 
+00a2 204005e7 call p_mouse_usb_check_enable 
 00a3 20404766 call mouse_drawing_optima_init 
 00a4 204000fd call p_mouse_cb_fuction 
 00a5 20400373 call p_mouse_sensor_powerdown 
@@ -1219,7 +1219,7 @@
 038a 6848c914 fetcht 1 ,mem_matrix_public_gpio 
 038b 204060e6 call gpio_clr_wake 
 038c 6fe0c924 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-038d 204005ae call p_mouse_gpio_config_output_high 
+038d 204005b7 call p_mouse_gpio_config_output_high 
 038e 20403e80 call mouse_lpm_before_common 
 038f 20403e72 call mouse_gpio_pu_idle 
 0390 d8400001 arg 0x01 ,temp 
@@ -1289,8 +1289,8 @@
 03c0 204003c9 call p_mouse_check_select_device_by_switch 
 03c1 20404714 call mouse_bt_button_check 
 03c2 20403fc8 call mouse_wheel_check 
-03c3 20400620 call p_mouse_usb_isr 
-03c4 20400651 call p_mouse_usb_mode 
+03c3 20400629 call p_mouse_usb_isr 
+03c4 2040065a call p_mouse_usb_mode 
 03c5 20600000 rtn 
 
 p_mouse_select_device_check:
@@ -1330,7 +1330,7 @@
 
 p_mouse_3io6key_dpi_check:
 03df 6fe0c913 fetch 1 ,mem_dpi_button_gpio 
-03e0 204005b1 call p_mouse_gpio_config_output_low 
+03e0 204005ba call p_mouse_gpio_config_output_low 
 03e1 6848c913 fetcht 1 ,mem_dpi_button_gpio 
 03e2 202041d5 branch mouse_3io6key_check 
 
@@ -1385,10 +1385,10 @@
 0402 c01d0424 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
 0403 c0190453 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
 0404 c00a845f beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-0405 c00a0466 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0405 c00a0469 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
 0406 c020045a beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-0407 c0008468 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
-0408 c001046b beq bt_evt_bb_disconnected ,p_mouse_bb_disconnected 
+0407 c000846b beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0408 c001046e beq bt_evt_bb_disconnected ,p_mouse_bb_disconnected 
 0409 c009040b beq bt_evt_hid_handshake ,p_mouse_bt_hid_handshake 
 040a 20204376 branch mouse_priority_bb_event + 2 
 
@@ -1509,741 +1509,750 @@
 0462 67e0cc70 store 1 ,mem_mouse_le_send_conn_param_update_timer 
 0463 67e0cad7 store 1 ,mem_mouse_le_bb_connected_flag 
 0464 704cbd00 jam 0 ,mem_mouse_pair_success 
-0465 202043a6 branch mouse_le_bb_disconnected + 7 
+0465 704b0500 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+0466 704abd00 jam 0 ,mem_mouse_clear_sensor_data_flag 
+0467 20401ac8 call le_clr_config_more_data 
+0468 2020046e branch p_mouse_bb_disconnected 
 
 p_mouse_le_bb_event_connected:
-0466 204002fc call p_mouse_device_poweron_led_config 
-0467 20204390 branch mouse_le_bb_event_connected 
+0469 204002fc call p_mouse_device_poweron_led_config 
+046a 20204390 branch mouse_le_bb_event_connected 
 
 p_mouse_bb_event_connected:
-0468 20404584 call mouse_no_data_timer_init 
-0469 204002fc call p_mouse_device_poweron_led_config 
-046a 2020443a branch mouse_bb_event_connected 
+046b 20404584 call mouse_no_data_timer_init 
+046c 204002fc call p_mouse_device_poweron_led_config 
+046d 2020443a branch mouse_bb_event_connected 
 
 p_mouse_bb_disconnected:
-046b 704cbd00 jam 0 ,mem_mouse_pair_success 
-046c 2020443e branch mouse_bb_disconnected 
+046e 704cbd00 jam 0 ,mem_mouse_pair_success 
+046f 704b9000 jam 0 ,mem_mouse_enter_sniff_count 
+0470 704b9900 jam 0 ,mem_mouse_bt_send_first_package_flag 
+0471 20404433 call mouse_bt_sniff_param_interval_setup 
+0472 20404449 call mouse_bb_discon_clear_stack 
+0473 6fe0ccaf fetch 1 ,mem_usb_mode_enable 
+0474 247a0000 nrtn blank 
+0475 20204442 branch mouse_bb_disconnected + 4 
 
 p_g24_dispatch:
-046d c513a3e1 bmark1 mark_24g_rxmode ,g24_receive_dispatch 
+0476 c513a3e1 bmark1 mark_24g_rxmode ,g24_receive_dispatch 
 
 p_g24_transmit_dispatch:
-046e c6930000 rtnmark0 mark_24g 
-046f 6fe0c8a5 fetch 1 ,mem_24g_conn_sm 
-0470 20202624 branch g24_transmit_dispatch + 2 
+0477 c6930000 rtnmark0 mark_24g 
+0478 6fe0c8a5 fetch 1 ,mem_24g_conn_sm 
+0479 20202624 branch g24_transmit_dispatch + 2 
 
 p_g24_transmit_by_interrupt:
-0471 204022a0 call g24_timer_check 
-0472 2434046e nbranch p_g24_transmit_dispatch ,user 
-0473 204026e2 call g24_interval_calibrate 
-0474 6fe148c2 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0475 1fe0fe01 increase 1 ,pdata 
-0476 67e148c2 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0477 20202628 branch g24_transmit_no_interrupt 
+047a 204022a0 call g24_timer_check 
+047b 24340477 nbranch p_g24_transmit_dispatch ,user 
+047c 204026e2 call g24_interval_calibrate 
+047d 6fe148c2 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
+047e 1fe0fe01 increase 1 ,pdata 
+047f 67e148c2 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0480 20202628 branch g24_transmit_no_interrupt 
 
 p_g24_pair_dispatch:
-0478 70488f00 jam default_24g_device ,mem_24g_reconn_type 
-0479 6fe14bfd fetch 2 ,mem_24g_pair_count 
-047a 1fe0fe01 increase 1 ,pdata 
-047b 67e14bfd store 2 ,mem_24g_pair_count 
-047c 6fe0cbfd fetch 1 ,mem_24g_pair_count 
-047d 1fe17eff and pdata ,0xff ,pdata 
-047e c0000480 beq 0 ,p_g24_pair_dispatch2 
-047f 20600000 rtn 
+0481 70488f00 jam default_24g_device ,mem_24g_reconn_type 
+0482 6fe14bfd fetch 2 ,mem_24g_pair_count 
+0483 1fe0fe01 increase 1 ,pdata 
+0484 67e14bfd store 2 ,mem_24g_pair_count 
+0485 6fe0cbfd fetch 1 ,mem_24g_pair_count 
+0486 1fe17eff and pdata ,0xff ,pdata 
+0487 c0000489 beq 0 ,p_g24_pair_dispatch2 
+0488 20600000 rtn 
 
 p_g24_pair_dispatch2:
-0480 6fe0c883 fetch 1 ,mem_24g_pair_sm 
-0481 c07fa344 beq state_24g_pairing_success ,g24_pair_exit 
-0482 c0008487 beq state_24g_pairing_1 ,p_g24_pair_sm_1 
-0483 c0010489 beq state_24g_pairing_2 ,p_g24_pair_sm_2 
-0484 c001848f beq state_24g_pairing_3 ,p_g24_pair_sm_3 
-0485 c0020495 beq state_24g_pairing_4 ,p_g24_pair_sm_4 
-0486 20600000 rtn 
+0489 6fe0c883 fetch 1 ,mem_24g_pair_sm 
+048a c07fa344 beq state_24g_pairing_success ,g24_pair_exit 
+048b c0008490 beq state_24g_pairing_1 ,p_g24_pair_sm_1 
+048c c0010492 beq state_24g_pairing_2 ,p_g24_pair_sm_2 
+048d c0018498 beq state_24g_pairing_3 ,p_g24_pair_sm_3 
+048e c002049e beq state_24g_pairing_4 ,p_g24_pair_sm_4 
+048f 20600000 rtn 
 
 p_g24_pair_sm_1:
-0487 7047c9ff jam datatype_attemp ,mem_24g_txbuf 
-0488 20200496 branch p_g24_pair_sm_prep 
+0490 7047c9ff jam datatype_attemp ,mem_24g_txbuf 
+0491 2020049f branch p_g24_pair_sm_prep 
 
 p_g24_pair_sm_2:
-0489 6fe0c85e fetch 1 ,mem_24g_pair_switch 
-048a 203a048d branch p_g24_pair_sm_2_skip ,blank 
-048b 6fe248ad fetch 4 ,mem_24g_device_addr 
-048c 20402292 call g24_update_addr_and_synccrc8 
+0492 6fe0c85e fetch 1 ,mem_24g_pair_switch 
+0493 203a0496 branch p_g24_pair_sm_2_skip ,blank 
+0494 6fe248ad fetch 4 ,mem_24g_device_addr 
+0495 20402292 call g24_update_addr_and_synccrc8 
 
 p_g24_pair_sm_2_skip:
-048d 7047c9aa jam datatype_bind ,mem_24g_txbuf 
-048e 20200496 branch p_g24_pair_sm_prep 
+0496 7047c9aa jam datatype_bind ,mem_24g_txbuf 
+0497 2020049f branch p_g24_pair_sm_prep 
 
 p_g24_pair_sm_3:
-048f 7047c955 jam datatype_config ,mem_24g_txbuf 
-0490 6fe0c85e fetch 1 ,mem_24g_pair_switch 
-0491 203a0496 branch p_g24_pair_sm_prep ,blank 
-0492 6fe24895 fetch 4 ,mem_24g_receiver_addr 
-0493 67e247cb store 4 ,mem_24g_txbuf + 2 
-0494 20200498 branch p_g24_pair_sm_common 
+0498 7047c955 jam datatype_config ,mem_24g_txbuf 
+0499 6fe0c85e fetch 1 ,mem_24g_pair_switch 
+049a 203a049f branch p_g24_pair_sm_prep ,blank 
+049b 6fe24895 fetch 4 ,mem_24g_receiver_addr 
+049c 67e247cb store 4 ,mem_24g_txbuf + 2 
+049d 202004a1 branch p_g24_pair_sm_common 
 
 p_g24_pair_sm_4:
-0495 7047c922 jam datatype_ok ,mem_24g_txbuf 
+049e 7047c922 jam datatype_ok ,mem_24g_txbuf 
 
 p_g24_pair_sm_prep:
-0496 6fe248ad fetch 4 ,mem_24g_device_addr 
-0497 67e247cb store 4 ,mem_24g_txbuf + 2 
+049f 6fe248ad fetch 4 ,mem_24g_device_addr 
+04a0 67e247cb store 4 ,mem_24g_txbuf + 2 
 
 p_g24_pair_sm_common:
-0498 6fe0c839 fetch 1 ,mem_24g_data_type 
-0499 1fe17e07 and_into bits_data ,pdata 
-049a 67e0c7ca store 1 ,mem_24g_txbuf + 1 
-049b 7047cf00 jam 0 ,mem_24g_txbuf + 6 
-049c 70483807 jam 7 ,mem_24g_datalen 
-049d 20402247 call g24_transmit_prep 
-049e 204001bd call p_g24_transmit_receive_ack 
-049f 20202316 branch g24_pair_sm_common + 7 
+04a1 6fe0c839 fetch 1 ,mem_24g_data_type 
+04a2 1fe17e07 and_into bits_data ,pdata 
+04a3 67e0c7ca store 1 ,mem_24g_txbuf + 1 
+04a4 7047cf00 jam 0 ,mem_24g_txbuf + 6 
+04a5 70483807 jam 7 ,mem_24g_datalen 
+04a6 20402247 call g24_transmit_prep 
+04a7 204001bd call p_g24_transmit_receive_ack 
+04a8 20202316 branch g24_pair_sm_common + 7 
 
 p_g24_pair_sm_common_next:
-04a0 6fe0c883 fetch 1 ,mem_24g_pair_sm 
-04a1 c17f8000 rtneq state_24g_pairing_success 
-04a2 c00104a4 beq state_24g_pairing_2 ,p_g24_pair_sm_2_waiting_ack 
-04a3 2020231d branch g24_pair_sm_common_next + 2 
+04a9 6fe0c883 fetch 1 ,mem_24g_pair_sm 
+04aa c17f8000 rtneq state_24g_pairing_success 
+04ab c00104ad beq state_24g_pairing_2 ,p_g24_pair_sm_2_waiting_ack 
+04ac 2020231d branch g24_pair_sm_common_next + 2 
 
 p_g24_pair_sm_2_waiting_ack:
-04a4 6fe0c85e fetch 1 ,mem_24g_pair_switch 
-04a5 203a232d branch g24_pair_sm_2_waiting_ack_skip ,blank 
-04a6 6fe2480f fetch 4 ,mem_24g_rxpayload + 2 
-04a7 207a0000 rtn blank 
-04a8 67e24895 store 4 ,mem_24g_receiver_addr 
-04a9 2020232d branch g24_pair_sm_2_waiting_ack_skip 
+04ad 6fe0c85e fetch 1 ,mem_24g_pair_switch 
+04ae 203a232d branch g24_pair_sm_2_waiting_ack_skip ,blank 
+04af 6fe2480f fetch 4 ,mem_24g_rxpayload + 2 
+04b0 207a0000 rtn blank 
+04b1 67e24895 store 4 ,mem_24g_receiver_addr 
+04b2 2020232d branch g24_pair_sm_2_waiting_ack_skip 
 
 p_g24_reconn_dispatch:
-04aa 6fe1488d fetch 2 ,mem_24g_reconn_count 
-04ab d84001f8 arg 0x01f8 ,temp 
-04ac 98417e00 iand temp ,pdata 
-04ad 203a04b5 branch p_g24_reconn_dispatch_next ,blank 
-04ae 6fe1488d fetch 2 ,mem_24g_reconn_count 
-04af 1fe0fe01 increase 1 ,pdata 
-04b0 67e1488d store 2 ,mem_24g_reconn_count 
-04b1 20600000 rtn 
+04b3 6fe1488d fetch 2 ,mem_24g_reconn_count 
+04b4 d84001f8 arg 0x01f8 ,temp 
+04b5 98417e00 iand temp ,pdata 
+04b6 203a04be branch p_g24_reconn_dispatch_next ,blank 
+04b7 6fe1488d fetch 2 ,mem_24g_reconn_count 
+04b8 1fe0fe01 increase 1 ,pdata 
+04b9 67e1488d store 2 ,mem_24g_reconn_count 
+04ba 20600000 rtn 
 
 p_g24_reconn_mode_judge:
-04b2 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-04b3 c29822e4 bbit1 mouse_enable_auto_24g_paring ,g24_pair_start 
-04b4 20202577 branch g24_reconn_receiver_addr 
+04bb 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+04bc c29822e4 bbit1 mouse_enable_auto_24g_paring ,g24_pair_start 
+04bd 20202577 branch g24_reconn_receiver_addr 
 
 p_g24_reconn_dispatch_next:
-04b5 204025a3 call g24_reconn_data_prep 
-04b6 204001bd call p_g24_transmit_receive_ack 
-04b7 242c04ce nbranch p_g24_reconn_device_fail ,sync 
-04b8 243784ce nbranch p_g24_reconn_device_fail ,user3 
-04b9 20402679 call g24_ackpayload_parse 
-04ba 6fe2487b fetch 4 ,mem_24g_pair_addr 
-04bb 684a483f fetcht 4 ,mem_24g_addr 
-04bc 98467c00 isub temp ,null 
-04bd 202284b2 branch p_g24_reconn_mode_judge ,zero 
-04be 6fe248ad fetch 4 ,mem_24g_device_addr 
-04bf 684a483f fetcht 4 ,mem_24g_addr 
-04c0 98467c00 isub temp ,null 
-04c1 204284ca call p_g24_store_receiver_addr ,zero 
-04c2 6fe0c8a5 fetch 1 ,mem_24g_conn_sm 
-04c3 793ffe02 set0 state_24g_reconn ,pdata 
-04c4 67e0c8a5 store 1 ,mem_24g_conn_sm 
-04c5 58000000 setarg 0 
-04c6 67e14887 store 2 ,mem_24g_pair_timeout 
-04c7 67e1488d store 2 ,mem_24g_reconn_count 
-04c8 67e1488b store 2 ,mem_24g_reconn_timeout 
-04c9 2020259e branch g24_reconn_attempt_success 
+04be 204025a3 call g24_reconn_data_prep 
+04bf 204001bd call p_g24_transmit_receive_ack 
+04c0 242c04d7 nbranch p_g24_reconn_device_fail ,sync 
+04c1 243784d7 nbranch p_g24_reconn_device_fail ,user3 
+04c2 20402679 call g24_ackpayload_parse 
+04c3 6fe2487b fetch 4 ,mem_24g_pair_addr 
+04c4 684a483f fetcht 4 ,mem_24g_addr 
+04c5 98467c00 isub temp ,null 
+04c6 202284bb branch p_g24_reconn_mode_judge ,zero 
+04c7 6fe248ad fetch 4 ,mem_24g_device_addr 
+04c8 684a483f fetcht 4 ,mem_24g_addr 
+04c9 98467c00 isub temp ,null 
+04ca 204284d3 call p_g24_store_receiver_addr ,zero 
+04cb 6fe0c8a5 fetch 1 ,mem_24g_conn_sm 
+04cc 793ffe02 set0 state_24g_reconn ,pdata 
+04cd 67e0c8a5 store 1 ,mem_24g_conn_sm 
+04ce 58000000 setarg 0 
+04cf 67e14887 store 2 ,mem_24g_pair_timeout 
+04d0 67e1488d store 2 ,mem_24g_reconn_count 
+04d1 67e1488b store 2 ,mem_24g_reconn_timeout 
+04d2 2020259e branch g24_reconn_attempt_success 
 
 p_g24_store_receiver_addr:
-04ca 6fe2480f fetch 4 ,mem_24g_rxpayload + 2 
-04cb 207a0000 rtn blank 
-04cc 67e24895 store 4 ,mem_24g_receiver_addr 
-04cd 20202587 branch g24_ch_syncword_crc8_init 
+04d3 6fe2480f fetch 4 ,mem_24g_rxpayload + 2 
+04d4 207a0000 rtn blank 
+04d5 67e24895 store 4 ,mem_24g_receiver_addr 
+04d6 20202587 branch g24_ch_syncword_crc8_init 
 
 p_g24_reconn_device_fail:
-04ce 6fe0c890 fetch 1 ,mem_24g_fast_conn_enable 
-04cf 203a2281 branch g24_ch ,blank 
-04d0 6fe1488d fetch 2 ,mem_24g_reconn_count 
-04d1 1fe0fe01 increase 1 ,pdata 
-04d2 67e1488d store 2 ,mem_24g_reconn_count 
-04d3 2feffe09 isolate1 9 ,pdata 
-04d4 6fe0c88f fetch 1 ,mem_24g_reconn_type 
-04d5 c00104d8 beq fast_conn_and_3_0_addr ,p_g24_reconn_fast_conn_and_3_0 
-04d6 c00204df beq pair_and_3_0_addr ,p_g24_reconn_pair_and_3_0 
-04d7 202025b1 branch g24_reconn_device_fail + 7 
+04d7 6fe0c890 fetch 1 ,mem_24g_fast_conn_enable 
+04d8 203a2281 branch g24_ch ,blank 
+04d9 6fe1488d fetch 2 ,mem_24g_reconn_count 
+04da 1fe0fe01 increase 1 ,pdata 
+04db 67e1488d store 2 ,mem_24g_reconn_count 
+04dc 2feffe09 isolate1 9 ,pdata 
+04dd 6fe0c88f fetch 1 ,mem_24g_reconn_type 
+04de c00104e1 beq fast_conn_and_3_0_addr ,p_g24_reconn_fast_conn_and_3_0 
+04df c00204e8 beq pair_and_3_0_addr ,p_g24_reconn_pair_and_3_0 
+04e0 202025b1 branch g24_reconn_device_fail + 7 
 
 p_g24_reconn_fast_conn_and_3_0:
-04d8 6fe0cc85 fetch 1 ,mem_24g_reconn_pairing_switch 
-04d9 1fe0fe01 increase 1 ,pdata 
-04da 1fe17e03 and_into 3 ,pdata 
-04db 67e0cc85 store 1 ,mem_24g_reconn_pairing_switch 
-04dc c000257e beq 0 ,g24_reconn_device_3_0_addr 
-04dd c001256f beq 2 ,g24_reconn_fast_conn 
-04de 202022ef branch g24_pair_init_param 
+04e1 6fe0cc85 fetch 1 ,mem_24g_reconn_pairing_switch 
+04e2 1fe0fe01 increase 1 ,pdata 
+04e3 1fe17e03 and_into 3 ,pdata 
+04e4 67e0cc85 store 1 ,mem_24g_reconn_pairing_switch 
+04e5 c000257e beq 0 ,g24_reconn_device_3_0_addr 
+04e6 c001256f beq 2 ,g24_reconn_fast_conn 
+04e7 202022ef branch g24_pair_init_param 
 
 p_g24_reconn_pair_and_3_0:
-04df 2020a57e branch g24_reconn_device_3_0_addr ,true 
-04e0 202022ef branch g24_pair_init_param 
+04e8 2020a57e branch g24_reconn_device_3_0_addr ,true 
+04e9 202022ef branch g24_pair_init_param 
 
 p_g24_lpm_wait:
-04e1 6fe0cbbb fetch 1 ,mem_24g_device_led_status 
-04e2 243a7ec7 nbranch disable_user ,blank 
-04e3 78347c00 enable user 
-04e4 20401436 call lpo_calibration 
-04e5 6fe1c174 fetch 3 ,mem_clks_per_lpo 
-04e6 203a7ec7 branch disable_user ,blank 
-04e7 6fe0c099 fetch 1 ,mem_lpm_mode 
-04e8 203a7ec7 branch disable_user ,blank 
-04e9 6fe0c8c1 fetch 1 ,mem_24g_transmit_by_interrupt 
-04ea c000fec7 beq g24_tx_timer_int_enable ,disable_user 
-04eb 20600000 rtn 
+04ea 6fe0cbbb fetch 1 ,mem_24g_device_led_status 
+04eb 243a7ec7 nbranch disable_user ,blank 
+04ec 78347c00 enable user 
+04ed 20401436 call lpo_calibration 
+04ee 6fe1c174 fetch 3 ,mem_clks_per_lpo 
+04ef 203a7ec7 branch disable_user ,blank 
+04f0 6fe0c099 fetch 1 ,mem_lpm_mode 
+04f1 203a7ec7 branch disable_user ,blank 
+04f2 6fe0c8c1 fetch 1 ,mem_24g_transmit_by_interrupt 
+04f3 c000fec7 beq g24_tx_timer_int_enable ,disable_user 
+04f4 20600000 rtn 
 
 p_mouse_start_discovery:
-04ec 2040030a call p_mouse_device_discovery_led_config 
-04ed 6fe1478f fetch 2 ,mem_ui_state_map 
-04ee 2feffe0b isolate1 ui_state_ble_adv ,pdata 
-04ef 2040c5c1 call mouse_stop_le_adv ,true 
-04f0 6fe1478f fetch 2 ,mem_ui_state_map 
-04f1 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
-04f2 2040c362 call mouse_cancel_reconnect ,true 
-04f3 58000000 setarg 0 
-04f4 67e14b03 store 2 ,mem_le_battery_level_updata_timer 
-04f5 20204594 branch mouse_start_discovery + 1 
+04f5 2040030a call p_mouse_device_discovery_led_config 
+04f6 6fe1478f fetch 2 ,mem_ui_state_map 
+04f7 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+04f8 2040c5c1 call mouse_stop_le_adv ,true 
+04f9 6fe1478f fetch 2 ,mem_ui_state_map 
+04fa 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+04fb 2040c362 call mouse_cancel_reconnect ,true 
+04fc 58000000 setarg 0 
+04fd 67e14b03 store 2 ,mem_le_battery_level_updata_timer 
+04fe 20204594 branch mouse_start_discovery + 1 
 
 p_mouse_stop_discovery:
-04f6 58000000 setarg 0 
-04f7 67e14ad3 store 2 ,mem_mouse_discovery_timer 
-04f8 202045b7 branch mouse_stop_discovery + 1 
+04ff 58000000 setarg 0 
+0500 67e14ad3 store 2 ,mem_mouse_discovery_timer 
+0501 202045b7 branch mouse_stop_discovery + 1 
 
 p_ui_timer_check:
-04f9 6fe0cbf4 fetch 1 ,mem_power_on_flag 
-04fa 245a78cc ncall ui_timer_init ,blank 
-04fb 704bf400 jam 0 ,mem_power_on_flag 
-04fc 202078bc branch ui_timer_check + 1 
+0502 6fe0cbf4 fetch 1 ,mem_power_on_flag 
+0503 245a78cc ncall ui_timer_init ,blank 
+0504 704bf400 jam 0 ,mem_power_on_flag 
+0505 202078bc branch ui_timer_check + 1 
 
 p_le_enable_phy_by_pdata:
-04fd 18427e00 copy temp ,pdata 
-04fe c2801651 bbit1 bit_le_1m_phy ,le_enable 
-04ff c2808501 bbit1 bit_le_2m_phy ,p_le_enable_2m 
-0500 2020163c branch le_enable_phy_by_pdata + 5 
+0506 18427e00 copy temp ,pdata 
+0507 c2801651 bbit1 bit_le_1m_phy ,le_enable 
+0508 c280850a bbit1 bit_le_2m_phy ,p_le_enable_2m 
+0509 2020163c branch le_enable_phy_by_pdata + 5 
 
 p_le_enable_2m:
-0501 20401640 call le_enable_2m 
-0502 708a6d89 jam 0x89 ,core_rx_bq_cfg0 
-0503 20600000 rtn 
+050a 20401640 call le_enable_2m 
+050b 708a6d89 jam 0x89 ,core_rx_bq_cfg0 
+050c 20600000 rtn 
 
 p_hid_rx_process:
-0504 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
-0505 1fe20c00 copy pdata ,contr 
-0506 efe08006 ifetch 1 ,contr 
-0507 67e0c5f8 store 1 ,mem_l2cap_rcv_hidtype 
-0508 1fe1040f and pdata ,0x0f ,temp 
-0509 1ff1fe00 rshift4 pdata ,pdata 
-050a c004850c beq hid_type_set_idle ,p_hid_rx_process_handshake 
-050b 20204df1 branch hid_rx_process + 7 
+050d 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
+050e 1fe20c00 copy pdata ,contr 
+050f efe08006 ifetch 1 ,contr 
+0510 67e0c5f8 store 1 ,mem_l2cap_rcv_hidtype 
+0511 1fe1040f and pdata ,0x0f ,temp 
+0512 1ff1fe00 rshift4 pdata ,pdata 
+0513 c0048515 beq hid_type_set_idle ,p_hid_rx_process_handshake 
+0514 20204df1 branch hid_rx_process + 7 
 
 p_hid_rx_process_handshake:
-050c da200001 arg 1 ,rega 
-050d 20404e1e call hid_malloc_tx_buff 
-050e 6fe144df fetch 2 ,mem_hid_ctrl_remote_cid 
-050f e7e10005 istore 2 ,contw 
-0510 58000000 setarg 0 
-0511 e7e08005 istore 1 ,contw 
-0512 70095001 jam 1 ,mem_ui_data_txbuff_length 
-0513 6fe0c4e5 fetch 1 ,mem_hid_control_state 
-0514 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
-0515 67e0c4e5 store 1 ,mem_hid_control_state 
-0516 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
-0517 202078dc branch ui_ipc_send_event 
+0515 da200001 arg 1 ,rega 
+0516 20404e1e call hid_malloc_tx_buff 
+0517 6fe144df fetch 2 ,mem_hid_ctrl_remote_cid 
+0518 e7e10005 istore 2 ,contw 
+0519 58000000 setarg 0 
+051a e7e08005 istore 1 ,contw 
+051b 70095001 jam 1 ,mem_ui_data_txbuff_length 
+051c 6fe0c4e5 fetch 1 ,mem_hid_control_state 
+051d 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
+051e 67e0c4e5 store 1 ,mem_hid_control_state 
+051f 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
+0520 202078dc branch ui_ipc_send_event 
 
 p_send_lmp:
-0518 78547c00 disable user 
-0519 20405a44 call lmo_fifo_process 
-051a 6fe08048 fetch 1 ,mem_lmp_to_send 
-051b 207a0000 rtn blank 
-051c c283d78e bbit1 7 ,send_lmp_escape 
+0521 78547c00 disable user 
+0522 20405a44 call lmo_fifo_process 
+0523 6fe08048 fetch 1 ,mem_lmp_to_send 
+0524 207a0000 rtn blank 
+0525 c283d78e bbit1 7 ,send_lmp_escape 
 
 p_send_lmp0:
-051d c003851f beq lmp_detach ,p_send_lmp_detach 
-051e 2020575f branch send_lmp0 
+0526 c0038528 beq lmp_detach ,p_send_lmp_detach 
+0527 2020575f branch send_lmp0 
 
 p_send_lmp_detach:
-051f 204058bb call send_lmp_detach 
-0520 70007278 jam 120 ,mem_conn_timer 
-0521 20600000 rtn 
+0528 204058bb call send_lmp_detach 
+0529 70007278 jam 120 ,mem_conn_timer 
+052a 20600000 rtn 
 
 p_le_slave_match:
-0522 6fe0c3dd fetch 1 ,mem_le_md_count 
-0523 1fe0fe01 pincrease 1 
-0524 67e0c3dd store 1 ,mem_le_md_count 
-0525 c0061606 beq le_md_max_count ,le_slave_cont 
-0526 204018c7 call le_acknowledge 
-0527 20401916 call le_prepare_tx 
-0528 6fe082bd fetch 1 ,mem_le_tx_phy 
-0529 20401637 call le_enable_phy_by_pdata 
-052a 204017e4 call le_transmit 
-052b 20201601 branch le_slave_match + 10 
+052b 6fe0c3dd fetch 1 ,mem_le_md_count 
+052c 1fe0fe01 pincrease 1 
+052d 67e0c3dd store 1 ,mem_le_md_count 
+052e c0061606 beq le_md_max_count ,le_slave_cont 
+052f 204018c7 call le_acknowledge 
+0530 20401916 call le_prepare_tx 
+0531 6fe082bd fetch 1 ,mem_le_tx_phy 
+0532 20401637 call le_enable_phy_by_pdata 
+0533 204017e4 call le_transmit 
+0534 20201601 branch le_slave_match + 10 
 
 p_le_slave_unsync:
-052c 20400e7c call end_of_packet 
-052d 2020160d branch le_slave_unsync + 1 
+0535 20400e7c call end_of_packet 
+0536 2020160d branch le_slave_unsync + 1 
 
 p_le_parse_l2cap:
-052e efe10006 ifetch 2 ,contr 
-052f c0020531 beq le_l2cap_cid_att ,p_le_parse_att 
-0530 20201990 branch le_parse_l2cap + 10 
+0537 efe10006 ifetch 2 ,contr 
+0538 c002053a beq le_l2cap_cid_att ,p_le_parse_att 
+0539 20201990 branch le_parse_l2cap + 10 
 
 p_le_parse_att:
-0531 efe18006 ifetch 3 ,contr 
-0532 67e1c436 store 3 ,mem_le_att_opcode 
-0533 c0050536 beq attop_read_request ,p_le_parse_att_read_request 
-0534 c0090545 beq attop_write_request ,p_le_parse_att_write_request 
-0535 20201c7f branch le_parse_att + 2 
+053a efe18006 ifetch 3 ,contr 
+053b 67e1c436 store 3 ,mem_le_att_opcode 
+053c c005053f beq attop_read_request ,p_le_parse_att_read_request 
+053d c009054e beq attop_write_request ,p_le_parse_att_write_request 
+053e 20201c7f branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-0536 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-0537 c31d9d93 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-0538 20401e39 call le_check_encrypt_state 
-0539 68494437 fetcht 2 ,mem_le_att_handle 
-053a 6fe0c3c0 fetch 1 ,mem_le_configuration 
-053b c2818540 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+053f 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+0540 c31d9d93 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+0541 20401e39 call le_check_encrypt_state 
+0542 68494437 fetcht 2 ,mem_le_att_handle 
+0543 6fe0c3c0 fetch 1 ,mem_le_configuration 
+0544 c2818549 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-053c 6fe14437 fetch 2 ,mem_le_att_handle 
-053d c0181e74 beq 0x30 ,le_send_att_error_response_notfound 
-053e 68494437 fetcht 2 ,mem_le_att_handle 
-053f 20201d97 branch le_send_att_read_response 
+0545 6fe14437 fetch 2 ,mem_le_att_handle 
+0546 c0181e74 beq 0x30 ,le_send_att_error_response_notfound 
+0547 68494437 fetcht 2 ,mem_le_att_handle 
+0548 20201d97 branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-0540 6fe143d1 fetch 2 ,mem_le_pairing_handle 
-0541 98467c00 isub temp ,null 
-0542 2422853c nbranch p_le_send_att_read_response ,zero 
-0543 2434053c nbranch p_le_send_att_read_response ,user 
-0544 20201dbc branch le_send_att_read_response_error_insufficient_auth 
+0549 6fe143d1 fetch 2 ,mem_le_pairing_handle 
+054a 98467c00 isub temp ,null 
+054b 24228545 nbranch p_le_send_att_read_response ,zero 
+054c 24340545 nbranch p_le_send_att_read_response ,user 
+054d 20201dbc branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-0545 18c22200 copy contr ,rega 
-0546 6fe143d4 fetch 2 ,mem_le_l2cap_size 
-0547 1fe0a5fd add pdata ,-3 ,regb 
-0548 204019d1 call le_writeatt_cb 
-0549 6fe0cad2 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-054a c07f9e1f beq 0xff ,le_send_att_write_response_check_auth 
-054b 6fe0cad8 fetch 1 ,mem_mouse_le_reconnect_flag 
-054c 203a1e1f branch le_send_att_write_response_check_auth ,blank 
-054d 6fe0cb86 fetch 1 ,mem_le_connect_status_flag 
-054e c2809e1f bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-054f 5800001a setarg 0x001a 
-0550 68494437 fetcht 2 ,mem_le_att_handle 
-0551 98467c00 isub temp ,null 
-0552 24229e1f nbranch le_send_att_write_response_check_auth ,zero 
-0553 20201dbc branch le_send_att_read_response_error_insufficient_auth 
+054e 18c22200 copy contr ,rega 
+054f 6fe143d4 fetch 2 ,mem_le_l2cap_size 
+0550 1fe0a5fd add pdata ,-3 ,regb 
+0551 204019d1 call le_writeatt_cb 
+0552 6fe0cad2 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0553 c07f9e1f beq 0xff ,le_send_att_write_response_check_auth 
+0554 6fe0cad8 fetch 1 ,mem_mouse_le_reconnect_flag 
+0555 203a1e1f branch le_send_att_write_response_check_auth ,blank 
+0556 6fe0cb86 fetch 1 ,mem_le_connect_status_flag 
+0557 c2809e1f bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0558 5800001a setarg 0x001a 
+0559 68494437 fetcht 2 ,mem_le_att_handle 
+055a 98467c00 isub temp ,null 
+055b 24229e1f nbranch le_send_att_write_response_check_auth ,zero 
+055c 20201dbc branch le_send_att_read_response_error_insufficient_auth 
 
 p_mouse_motion:
-0554 78547c00 disable user 
-0555 58000000 setarg 0 
-0556 67e348d5 store 6 ,mem_mouse_x 
-0557 20400564 call p_mouse_check_sensor_data 
-0558 58000089 setarg 0x0089 
-0559 20405d5e call twspi_write 
-055a 204003ed call p_mouse_seting_sensor_type 
-055b 20403fbe call mouse_zwheel 
-055c 20403fc3 call mouse_t_zwheel 
-055d 2040057b call p_mouse_key 
-055e 6fe0c8d4 fetch 1 ,mem_mouse_key 
-055f 1fe17e1f and_into 0x1f ,pdata 
-0560 67e0c8d4 store 1 ,mem_mouse_key 
-0561 24344766 nbranch mouse_drawing_optima_init ,user 
-0562 20400574 call p_mouse_drawing_optima 
-0563 20204584 branch mouse_no_data_timer_init 
+055d 78547c00 disable user 
+055e 58000000 setarg 0 
+055f 67e348d5 store 6 ,mem_mouse_x 
+0560 2040056d call p_mouse_check_sensor_data 
+0561 58000089 setarg 0x0089 
+0562 20405d5e call twspi_write 
+0563 204003ed call p_mouse_seting_sensor_type 
+0564 20403fbe call mouse_zwheel 
+0565 20403fc3 call mouse_t_zwheel 
+0566 20400584 call p_mouse_key 
+0567 6fe0c8d4 fetch 1 ,mem_mouse_key 
+0568 1fe17e1f and_into 0x1f ,pdata 
+0569 67e0c8d4 store 1 ,mem_mouse_key 
+056a 24344766 nbranch mouse_drawing_optima_init ,user 
+056b 2040057d call p_mouse_drawing_optima 
+056c 20204584 branch mouse_no_data_timer_init 
 
 p_mouse_check_sensor_data:
-0564 6fe0c4ae fetch 1 ,mem_spi_write_flash_sm 
-0565 c1800000 rtnne flash_sm_no_buys 
-0566 6fe0c92c fetch 1 ,mem_config_sensor_type 
-0567 c006056a beq ka5857 ,p_mouse_ka5857_sensor_motion 
-0568 c005856a beq ka8g2 ,p_mouse_ka5857_sensor_motion 
-0569 20204283 branch mouse_check_sensor_data + 3 
+056d 6fe0c4ae fetch 1 ,mem_spi_write_flash_sm 
+056e c1800000 rtnne flash_sm_no_buys 
+056f 6fe0c92c fetch 1 ,mem_config_sensor_type 
+0570 c0060573 beq ka5857 ,p_mouse_ka5857_sensor_motion 
+0571 c0058573 beq ka8g2 ,p_mouse_ka5857_sensor_motion 
+0572 20204283 branch mouse_check_sensor_data + 3 
 
 p_mouse_ka5857_sensor_motion:
-056a 20404304 call mouse_clear_sensor_data 
-056b 6fe0c915 fetch 1 ,mem_sensor_motion_gpio 
-056c c07f8570 beq gpio_disable ,p_mouse_ka5857_sensor_motion_1 
-056d 6848c915 fetcht 1 ,mem_sensor_motion_gpio 
-056e 204060fd call gpio_get_bit 
-056f 24608000 nrtn true 
+0573 20404304 call mouse_clear_sensor_data 
+0574 6fe0c915 fetch 1 ,mem_sensor_motion_gpio 
+0575 c07f8579 beq gpio_disable ,p_mouse_ka5857_sensor_motion_1 
+0576 6848c915 fetcht 1 ,mem_sensor_motion_gpio 
+0577 204060fd call gpio_get_bit 
+0578 24608000 nrtn true 
 
 p_mouse_ka5857_sensor_motion_1:
-0570 58000000 setarg pan_reg_pid_l 
-0571 20405d65 call twspi_read 
-0572 c0ac41f2 bne pka8g2_id1 ,mouse_twspi_reset 
-0573 202042b9 branch mouse_p3212_sensor_motion_2 
+0579 58000000 setarg pan_reg_pid_l 
+057a 20405d65 call twspi_read 
+057b c0ac41f2 bne pka8g2_id1 ,mouse_twspi_reset 
+057c 202042b9 branch mouse_p3212_sensor_motion_2 
 
 p_mouse_drawing_optima:
-0574 6fe0c92c fetch 1 ,mem_config_sensor_type 
-0575 c1018000 rtneq p3212 
-0576 c1058000 rtneq ka8g2 
-0577 204005d8 call p_usb_store_mem 
-0578 20404758 call mouse_drawing_optima 
-0579 204005db call p_usb_get_mem 
-057a 20600000 rtn 
+057d 6fe0c92c fetch 1 ,mem_config_sensor_type 
+057e c1018000 rtneq p3212 
+057f c1058000 rtneq ka8g2 
+0580 204005e1 call p_usb_store_mem 
+0581 20404758 call mouse_drawing_optima 
+0582 204005e4 call p_usb_get_mem 
+0583 20600000 rtn 
 
 p_mouse_key:
-057b 2040057e call p_mouse_check_key_gpio 
-057c 204005b4 call p_mouse_ghost_key_check 
-057d 2020411e branch mouse_key + 2 
+0584 20400587 call p_mouse_check_key_gpio 
+0585 204005bd call p_mouse_ghost_key_check 
+0586 2020411e branch mouse_key + 2 
 
 p_mouse_check_key_gpio:
-057e 6fe0cbf2 fetch 1 ,mem_sensor_shutdown_flag 
-057f 245a4161 ncall mouse_check_key_gpio_once ,blank 
-0580 da200000 arg 0 ,rega 
-0581 20400585 call p_mouse_check_lkey_gpio 
-0582 20400594 call p_mouse_check_bkkey_gpio 
-0583 204005a1 call p_mouse_check_fwkey_gpio 
-0584 2020415e branch mouse_check_key_gpio_next 
+0587 6fe0cbf2 fetch 1 ,mem_sensor_shutdown_flag 
+0588 245a4161 ncall mouse_check_key_gpio_once ,blank 
+0589 da200000 arg 0 ,rega 
+058a 2040058e call p_mouse_check_lkey_gpio 
+058b 2040059d call p_mouse_check_bkkey_gpio 
+058c 204005aa call p_mouse_check_fwkey_gpio 
+058d 2020415e branch mouse_check_key_gpio_next 
 
 p_mouse_check_lkey_gpio:
-0585 6fe0c91c fetch 1 ,mem_lbutton_gpio 
-0586 204005ae call p_mouse_gpio_config_output_high 
-0587 20404164 call mouse_check_lkey_gpio 
-0588 6848c91c fetcht 1 ,mem_lbutton_gpio 
-0589 20403f96 call mouse_gpio_config_input_pu 
+058e 6fe0c91c fetch 1 ,mem_lbutton_gpio 
+058f 204005b7 call p_mouse_gpio_config_output_high 
+0590 20404164 call mouse_check_lkey_gpio 
+0591 6848c91c fetcht 1 ,mem_lbutton_gpio 
+0592 20403f96 call mouse_gpio_config_input_pu 
 
 p_mouse_check_rkey_gpio:
-058a 6fe0c91d fetch 1 ,mem_rbutton_gpio 
-058b 204005ae call p_mouse_gpio_config_output_high 
-058c 2040416a call mouse_check_rkey_gpio 
-058d 6848c91d fetcht 1 ,mem_rbutton_gpio 
-058e 20403f96 call mouse_gpio_config_input_pu 
+0593 6fe0c91d fetch 1 ,mem_rbutton_gpio 
+0594 204005b7 call p_mouse_gpio_config_output_high 
+0595 2040416a call mouse_check_rkey_gpio 
+0596 6848c91d fetcht 1 ,mem_rbutton_gpio 
+0597 20403f96 call mouse_gpio_config_input_pu 
 
 p_mouse_check_mkey_gpio:
-058f 6fe0c91e fetch 1 ,mem_mbutton_gpio 
-0590 204005ae call p_mouse_gpio_config_output_high 
-0591 20404170 call mouse_check_mkey_gpio 
-0592 6848c91e fetcht 1 ,mem_mbutton_gpio 
-0593 20203f96 branch mouse_gpio_config_input_pu 
+0598 6fe0c91e fetch 1 ,mem_mbutton_gpio 
+0599 204005b7 call p_mouse_gpio_config_output_high 
+059a 20404170 call mouse_check_mkey_gpio 
+059b 6848c91e fetcht 1 ,mem_mbutton_gpio 
+059c 20203f96 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_bkkey_gpio:
-0594 6fe0c911 fetch 1 ,mem_bk_button_gpio 
-0595 c17f8000 rtneq gpio_disable 
-0596 704ba703 jam mouse_bk_key ,mem_mouse_key_temp 
-0597 6fe0cba2 fetch 1 ,mem_mouse_bkkey_press_status 
-0598 1fe22600 copy pdata ,regc 
-0599 6848c911 fetcht 1 ,mem_bk_button_gpio 
-059a 6fe0c914 fetch 1 ,mem_matrix_public_gpio 
-059b c07f859d beq gpio_disable ,p_mouse_3io6key_bk_check 
-059c 2020417e branch mouse_check_bkkey_gpio_next 
+059d 6fe0c911 fetch 1 ,mem_bk_button_gpio 
+059e c17f8000 rtneq gpio_disable 
+059f 704ba703 jam mouse_bk_key ,mem_mouse_key_temp 
+05a0 6fe0cba2 fetch 1 ,mem_mouse_bkkey_press_status 
+05a1 1fe22600 copy pdata ,regc 
+05a2 6848c911 fetcht 1 ,mem_bk_button_gpio 
+05a3 6fe0c914 fetch 1 ,mem_matrix_public_gpio 
+05a4 c07f85a6 beq gpio_disable ,p_mouse_3io6key_bk_check 
+05a5 2020417e branch mouse_check_bkkey_gpio_next 
 
 p_mouse_3io6key_bk_check:
-059d 6fe0c911 fetch 1 ,mem_bk_button_gpio 
-059e 204005b1 call p_mouse_gpio_config_output_low 
-059f 6848c911 fetcht 1 ,mem_bk_button_gpio 
-05a0 2020418b branch mouse_3io6key_bk_check 
+05a6 6fe0c911 fetch 1 ,mem_bk_button_gpio 
+05a7 204005ba call p_mouse_gpio_config_output_low 
+05a8 6848c911 fetcht 1 ,mem_bk_button_gpio 
+05a9 2020418b branch mouse_3io6key_bk_check 
 
 p_mouse_check_fwkey_gpio:
-05a1 6fe0c912 fetch 1 ,mem_fw_button_gpio 
-05a2 c17f8000 rtneq gpio_disable 
-05a3 704ba704 jam mouse_fw_key ,mem_mouse_key_temp 
-05a4 6fe0cba3 fetch 1 ,mem_mouse_fwkey_press_status 
-05a5 1fe22600 copy pdata ,regc 
-05a6 6848c912 fetcht 1 ,mem_fw_button_gpio 
-05a7 6fe0c914 fetch 1 ,mem_matrix_public_gpio 
-05a8 c07f85aa beq gpio_disable ,p_mouse_3io6key_fw_check 
-05a9 20204197 branch mouse_check_fwkey_gpio_next 
+05aa 6fe0c912 fetch 1 ,mem_fw_button_gpio 
+05ab c17f8000 rtneq gpio_disable 
+05ac 704ba704 jam mouse_fw_key ,mem_mouse_key_temp 
+05ad 6fe0cba3 fetch 1 ,mem_mouse_fwkey_press_status 
+05ae 1fe22600 copy pdata ,regc 
+05af 6848c912 fetcht 1 ,mem_fw_button_gpio 
+05b0 6fe0c914 fetch 1 ,mem_matrix_public_gpio 
+05b1 c07f85b3 beq gpio_disable ,p_mouse_3io6key_fw_check 
+05b2 20204197 branch mouse_check_fwkey_gpio_next 
 
 p_mouse_3io6key_fw_check:
-05aa 6fe0c912 fetch 1 ,mem_fw_button_gpio 
-05ab 204005b1 call p_mouse_gpio_config_output_low 
-05ac 6848c912 fetcht 1 ,mem_fw_button_gpio 
-05ad 202041a4 branch mouse_3io6key_fw_check 
+05b3 6fe0c912 fetch 1 ,mem_fw_button_gpio 
+05b4 204005ba call p_mouse_gpio_config_output_low 
+05b5 6848c912 fetcht 1 ,mem_fw_button_gpio 
+05b6 202041a4 branch mouse_3io6key_fw_check 
 
 p_mouse_gpio_config_output_high:
-05ae c17f8000 rtneq gpio_disable 
-05af d840003f arg gpcfg_output_high ,temp 
-05b0 2020612c branch gpio_config_function_int 
+05b7 c17f8000 rtneq gpio_disable 
+05b8 d840003f arg gpcfg_output_high ,temp 
+05b9 2020612c branch gpio_config_function_int 
 
 p_mouse_gpio_config_output_low:
-05b1 c17f8000 rtneq gpio_disable 
-05b2 d840003e arg gpcfg_output_low ,temp 
-05b3 2020612c branch gpio_config_function_int 
+05ba c17f8000 rtneq gpio_disable 
+05bb d840003e arg gpcfg_output_low ,temp 
+05bc 2020612c branch gpio_config_function_int 
 
 p_mouse_ghost_key_check:
-05b4 704ba900 jam 0 ,mem_mouse_matrix_key_cow_count 
-05b5 704baa00 jam 0 ,mem_mouse_matrix_key_row_count 
-05b6 704bab00 jam 0 ,mem_mouse_ghost_flag 
-05b7 1fe20400 copy pdata ,temp 
-05b8 204005bb call p_mouse_ghost_key_check_l_fw 
-05b9 204005be call p_mouse_ghost_key_check_r_bk 
-05ba 20204133 branch mouse_ghost_key_check + 6 
+05bd 704ba900 jam 0 ,mem_mouse_matrix_key_cow_count 
+05be 704baa00 jam 0 ,mem_mouse_matrix_key_row_count 
+05bf 704bab00 jam 0 ,mem_mouse_ghost_flag 
+05c0 1fe20400 copy pdata ,temp 
+05c1 204005c4 call p_mouse_ghost_key_check_l_fw 
+05c2 204005c7 call p_mouse_ghost_key_check_r_bk 
+05c3 20204133 branch mouse_ghost_key_check + 6 
 
 p_mouse_ghost_key_check_l_fw:
-05bb 18417e11 and temp ,mouse_l_fw_button ,pdata 
-05bc c008c14e beq mouse_l_fw_button ,mouse_matrix_cow_more_than_one_key 
-05bd 20600000 rtn 
+05c4 18417e11 and temp ,mouse_l_fw_button ,pdata 
+05c5 c008c14e beq mouse_l_fw_button ,mouse_matrix_cow_more_than_one_key 
+05c6 20600000 rtn 
 
 p_mouse_ghost_key_check_r_bk:
-05be 18417e0a and temp ,mouse_r_bk_button ,pdata 
-05bf c005414e beq mouse_r_bk_button ,mouse_matrix_cow_more_than_one_key 
-05c0 20600000 rtn 
+05c7 18417e0a and temp ,mouse_r_bk_button ,pdata 
+05c8 c005414e beq mouse_r_bk_button ,mouse_matrix_cow_more_than_one_key 
+05c9 20600000 rtn 
 
 p_usb_class_type:
-05c1 793f8023 set0 mark_isstr ,mark 
-05c2 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
-05c3 1fe17e80 and_into 0x80 ,pdata 
-05c4 c00005c6 beq out_device ,p_usb_out_device 
-05c5 20207aa1 branch usb_class_type + 4 
+05ca 793f8023 set0 mark_isstr ,mark 
+05cb 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
+05cc 1fe17e80 and_into 0x80 ,pdata 
+05cd c00005cf beq out_device ,p_usb_out_device 
+05ce 20207aa1 branch usb_class_type + 4 
 
 p_usb_out_device:
-05c6 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
-05c7 1ff1fe00 rshift4 pdata ,pdata 
-05c8 1fe37e00 rshift pdata ,pdata 
-05c9 1fe17e03 and_into 0x03 ,pdata 
-05ca c0007ac4 beq standard_req ,usb_out_standard_req 
-05cb c00085cd beq class_req ,p_usb_out_class_req 
-05cc 20207ab4 branch usb_out_device + 4 
+05cf 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
+05d0 1ff1fe00 rshift4 pdata ,pdata 
+05d1 1fe37e00 rshift pdata ,pdata 
+05d2 1fe17e03 and_into 0x03 ,pdata 
+05d3 c0007ac4 beq standard_req ,usb_out_standard_req 
+05d4 c00085d6 beq class_req ,p_usb_out_class_req 
+05d5 20207ab4 branch usb_out_device + 4 
 
 p_usb_out_class_req:
-05cd 6fe08b5a fetch 1 ,mem_usb_setup_brequest 
-05ce c00485d0 beq set_report ,p_usb_set_report 
-05cf 20207acd branch usb_out_class_req + 1 
+05d6 6fe08b5a fetch 1 ,mem_usb_setup_brequest 
+05d7 c00485d9 beq set_report ,p_usb_set_report 
+05d8 20207acd branch usb_out_class_req + 1 
 
 p_usb_set_report:
-05d0 20003a98 nop 15000 
-05d1 20207c4a branch usb_set_report 
+05d9 20003a98 nop 15000 
+05da 20207c4a branch usb_set_report 
 
 p_usb_tx:
-05d2 6fe08bf9 fetch 1 ,mem_usb_tx_enable 
-05d3 207a0000 rtn blank 
-05d4 6ff08c24 fetch 1 ,core_usb_txbusy 
-05d5 1fe17e0f and_into 0x0f ,pdata 
-05d6 243a7d17 nbranch usb_inwake_state_tx_dispose ,blank 
-05d7 20207ccc branch usb_tx + 3 
+05db 6fe08bf9 fetch 1 ,mem_usb_tx_enable 
+05dc 207a0000 rtn blank 
+05dd 6ff08c24 fetch 1 ,core_usb_txbusy 
+05de 1fe17e0f and_into 0x0f ,pdata 
+05df 243a7d17 nbranch usb_inwake_state_tx_dispose ,blank 
+05e0 20207ccc branch usb_tx + 3 
 
 p_usb_store_mem:
-05d8 d8c009f6 arg mem_usb_status ,contr 
-05d9 d8a00c4b arg mem_usb_mem_temp ,contw 
-05da 20207d7f branch memcpy16 
+05e1 d8c009f6 arg mem_usb_status ,contr 
+05e2 d8a00c4b arg mem_usb_mem_temp ,contw 
+05e3 20207d7f branch memcpy16 
 
 p_usb_get_mem:
-05db d8a009f6 arg mem_usb_status ,contw 
-05dc d8c00c4b arg mem_usb_mem_temp ,contr 
-05dd 20207d7f branch memcpy16 
+05e4 d8a009f6 arg mem_usb_status ,contw 
+05e5 d8c00c4b arg mem_usb_mem_temp ,contr 
+05e6 20207d7f branch memcpy16 
 
 p_mouse_usb_check_enable:
-05de 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-05df c4068000 rtnbit0 mouse_enable_usb 
-05e0 704930a5 jam mouse_usb_interface_remove ,mem_mouse_usb_vdd_status 
-05e1 20600000 rtn 
+05e7 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+05e8 c4068000 rtnbit0 mouse_enable_usb 
+05e9 704930a5 jam mouse_usb_interface_remove ,mem_mouse_usb_vdd_status 
+05ea 20600000 rtn 
 
 p_mouse_usb_config_param:
-05e2 204005eb call p_mouse_usb_config_kb_check 
-05e3 20400613 call p_mouse_usb_report_rate_set 
-05e4 204005f0 call p_mouse_usb_config_param_setup 
+05eb 204005f4 call p_mouse_usb_config_kb_check 
+05ec 2040061c call p_mouse_usb_report_rate_set 
+05ed 204005f9 call p_mouse_usb_config_param_setup 
 
 p_mouse_usb_device_name_config:
-05e5 6fe0cc91 fetch 1 ,mem_usb_device_name_retention 
-05e6 207a0000 rtn blank 
-05e7 d8c04c91 arg mem_usb_device_name_retention ,contr 
-05e8 d8a00b09 arg mem_string2 ,contw 
-05e9 df20001e arg 30 ,loopcnt 
-05ea 20207dd4 branch memcpy 
+05ee 6fe0cc91 fetch 1 ,mem_usb_device_name_retention 
+05ef 207a0000 rtn blank 
+05f0 d8c04c91 arg mem_usb_device_name_retention ,contr 
+05f1 d8a00b09 arg mem_string2 ,contw 
+05f2 df20001e arg 30 ,loopcnt 
+05f3 20207dd4 branch memcpy 
 
 p_mouse_usb_config_kb_check:
-05eb 70493100 jam dongle_kb_bind_eeprom_offect ,mem_mouse_usb_keyboard_flag 
-05ec 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-05ed c40a8000 rtnbit0 mouse_enable_keyboard 
-05ee 7049315a jam dongle_kb_bind_success ,mem_mouse_usb_keyboard_flag 
-05ef 20600000 rtn 
+05f4 70493100 jam dongle_kb_bind_eeprom_offect ,mem_mouse_usb_keyboard_flag 
+05f5 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+05f6 c40a8000 rtnbit0 mouse_enable_keyboard 
+05f7 7049315a jam dongle_kb_bind_success ,mem_mouse_usb_keyboard_flag 
+05f8 20600000 rtn 
 
 p_mouse_usb_config_param_setup:
-05f0 20407a5b call usb_tx_interval_config 
-05f1 204005f4 call p_mouse_usb_vid_pid_config 
+05f9 20407a5b call usb_tx_interval_config 
+05fa 204005fd call p_mouse_usb_vid_pid_config 
 
 p_mouse_usb_hid_icon_config:
-05f2 6fe0c931 fetch 1 ,mem_mouse_usb_keyboard_flag 
-05f3 202036ee branch dongle_usb_hid_icon_config + 1 
+05fb 6fe0c931 fetch 1 ,mem_mouse_usb_keyboard_flag 
+05fc 202036ee branch dongle_usb_hid_icon_config + 1 
 
 p_mouse_usb_vid_pid_config:
-05f4 6fe08b48 fetch 1 ,mem_usb_vid_pid 
-05f5 207a0000 rtn blank 
-05f6 6fe0c931 fetch 1 ,mem_mouse_usb_keyboard_flag 
-05f7 c02d36eb beq dongle_kb_bind_success ,dongle_usb_vid_pid_for_suit 
-05f8 202036e8 branch dongle_usb_vid_pid_for_mouse_only_auto_pair 
+05fd 6fe08b48 fetch 1 ,mem_usb_vid_pid 
+05fe 207a0000 rtn blank 
+05ff 6fe0c931 fetch 1 ,mem_mouse_usb_keyboard_flag 
+0600 c02d36eb beq dongle_kb_bind_success ,dongle_usb_vid_pid_for_suit 
+0601 202036e8 branch dongle_usb_vid_pid_for_mouse_only_auto_pair 
 
 p_usb_timer_check:
-05f9 20407ec7 call disable_user 
-05fa 684a4ace fetcht 4 ,mem_btclk_sensor 
-05fb 1c427e00 copy clkn_bt ,pdata 
-05fc 98467c00 isub temp ,null 
-05fd 24410608 ncall p_usb_timer_timeout ,positive 
-05fe 1fe22400 copy pdata ,regb 
-05ff 6fe24ace fetch 4 ,mem_btclk_sensor 
-0600 6848c92e fetcht 1 ,mem_wire_usb_interval 
-0601 98408400 iadd temp ,temp 
-0602 1a427e00 copy regb ,pdata 
-0603 98467c00 isub temp ,null 
-0604 24610000 nrtn positive 
-0605 793ffe1c set0 28 ,pdata 
-0606 67e24ace store 4 ,mem_btclk_sensor 
-0607 20207ec5 branch enable_user 
+0602 20407ec7 call disable_user 
+0603 684a4ace fetcht 4 ,mem_btclk_sensor 
+0604 1c427e00 copy clkn_bt ,pdata 
+0605 98467c00 isub temp ,null 
+0606 24410611 ncall p_usb_timer_timeout ,positive 
+0607 1fe22400 copy pdata ,regb 
+0608 6fe24ace fetch 4 ,mem_btclk_sensor 
+0609 6848c92e fetcht 1 ,mem_wire_usb_interval 
+060a 98408400 iadd temp ,temp 
+060b 1a427e00 copy regb ,pdata 
+060c 98467c00 isub temp ,null 
+060d 24610000 nrtn positive 
+060e 793ffe1c set0 28 ,pdata 
+060f 67e24ace store 4 ,mem_btclk_sensor 
+0610 20207ec5 branch enable_user 
 
 p_usb_timer_timeout:
-0608 20628000 rtn zero 
-0609 79207e1c set1 28 ,pdata 
-060a 20600000 rtn 
+0611 20628000 rtn zero 
+0612 79207e1c set1 28 ,pdata 
+0613 20600000 rtn 
 
 p_usb_timer_init:
-060b 58000000 setarg 0 
-060c 67e24ace store 4 ,mem_btclk_sensor 
-060d 20600000 rtn 
+0614 58000000 setarg 0 
+0615 67e24ace store 4 ,mem_btclk_sensor 
+0616 20600000 rtn 
 
 p_select_system_clk_24m_dpll:
-060e 7041f018 jam system_clk_24m ,mem_system_clk 
-060f 70804201 jam clksel_dpll_24m ,core_clksel 
-0610 5800176f setarg 5999 
-0611 67f10040 store 2 ,core_halfslot 
-0612 20206312 branch calc_new_param 
+0617 7041f018 jam system_clk_24m ,mem_system_clk 
+0618 70804201 jam clksel_dpll_24m ,core_clksel 
+0619 5800176f setarg 5999 
+061a 67f10040 store 2 ,core_halfslot 
+061b 20206312 branch calc_new_param 
 
 p_mouse_usb_report_rate_set:
-0613 2040060b call p_usb_timer_init 
-0614 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-0615 c28e861a bbit1 mouse_enable_usb_250 ,p_usb_report_rate_set_250hz 
-0616 c28f061c bbit1 mouse_enable_usb_500 ,p_usb_report_rate_set_500hz 
-0617 c28f861e bbit1 mouse_enable_usb_1000 ,p_usb_report_rate_set_1000hz 
+061c 20400614 call p_usb_timer_init 
+061d 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+061e c28e8623 bbit1 mouse_enable_usb_250 ,p_usb_report_rate_set_250hz 
+061f c28f0625 bbit1 mouse_enable_usb_500 ,p_usb_report_rate_set_500hz 
+0620 c28f8627 bbit1 mouse_enable_usb_1000 ,p_usb_report_rate_set_1000hz 
 
 p_usb_report_rate_set_125hz:
-0618 70492e20 jam 32 ,mem_wire_usb_interval 
-0619 20600000 rtn 
+0621 70492e20 jam 32 ,mem_wire_usb_interval 
+0622 20600000 rtn 
 
 p_usb_report_rate_set_250hz:
-061a 70492e10 jam 16 ,mem_wire_usb_interval 
-061b 20600000 rtn 
+0623 70492e10 jam 16 ,mem_wire_usb_interval 
+0624 20600000 rtn 
 
 p_usb_report_rate_set_500hz:
-061c 70492e08 jam 8 ,mem_wire_usb_interval 
-061d 20600000 rtn 
+0625 70492e08 jam 8 ,mem_wire_usb_interval 
+0626 20600000 rtn 
 
 p_usb_report_rate_set_1000hz:
-061e 70492e04 jam 4 ,mem_wire_usb_interval 
-061f 20600000 rtn 
+0627 70492e04 jam 4 ,mem_wire_usb_interval 
+0628 20600000 rtn 
 
 p_mouse_usb_isr:
-0620 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-0621 c4068000 rtnbit0 mouse_enable_usb 
-0622 20400626 call p_mouse_usb_interface_check 
-0623 6fe0c930 fetch 1 ,mem_mouse_usb_vdd_status 
-0624 c1ad0000 rtnne mouse_usb_interface_insert 
-0625 202079fc branch usb_isr 
+0629 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+062a c4068000 rtnbit0 mouse_enable_usb 
+062b 2040062f call p_mouse_usb_interface_check 
+062c 6fe0c930 fetch 1 ,mem_mouse_usb_vdd_status 
+062d c1ad0000 rtnne mouse_usb_interface_insert 
+062e 202079fc branch usb_isr 
 
 p_mouse_usb_interface_check:
-0626 68488b58 fetcht 1 ,mem_usb_offline_check_gpio 
-0627 204060fd call gpio_get_bit 
-0628 2420862a nbranch p_mouse_usb_gpio_low ,true 
-0629 2020063a branch p_mouse_usb_gpio_high 
+062f 68488b58 fetcht 1 ,mem_usb_offline_check_gpio 
+0630 204060fd call gpio_get_bit 
+0631 24208633 nbranch p_mouse_usb_gpio_low ,true 
+0632 20200643 branch p_mouse_usb_gpio_high 
 
 p_mouse_usb_gpio_low:
-062a 6fe0c930 fetch 1 ,mem_mouse_usb_vdd_status 
-062b c1528000 rtneq mouse_usb_interface_remove 
-062c 704930a5 jam mouse_usb_interface_remove ,mem_mouse_usb_vdd_status 
-062d 704caf00 jam 0 ,mem_usb_mode_enable 
-062e 700bfa00 jam 0 ,mem_usb_device_enumeration_endflag 
-062f 7009f600 jam 0 ,mem_usb_status 
-0630 700bec00 jam 0 ,mem_usb_state 
-0631 6ff10050 fetch 2 ,core_clkoff 
-0632 79207e0a set1 clock_off_usb ,pdata 
-0633 67f10050 store 2 ,core_clkoff 
-0634 70409901 jam 1 ,mem_lpm_mode 
-0635 20406321 call select_system_clk_12m_dpll 
-0636 20404766 call mouse_drawing_optima_init 
-0637 20400373 call p_mouse_sensor_powerdown 
-0638 7855fc00 disable wake 
-0639 20203c7f branch mouse_init_wireless 
+0633 6fe0c930 fetch 1 ,mem_mouse_usb_vdd_status 
+0634 c1528000 rtneq mouse_usb_interface_remove 
+0635 704930a5 jam mouse_usb_interface_remove ,mem_mouse_usb_vdd_status 
+0636 704caf00 jam 0 ,mem_usb_mode_enable 
+0637 700bfa00 jam 0 ,mem_usb_device_enumeration_endflag 
+0638 7009f600 jam 0 ,mem_usb_status 
+0639 700bec00 jam 0 ,mem_usb_state 
+063a 6ff10050 fetch 2 ,core_clkoff 
+063b 79207e0a set1 clock_off_usb ,pdata 
+063c 67f10050 store 2 ,core_clkoff 
+063d 70409901 jam 1 ,mem_lpm_mode 
+063e 20406321 call select_system_clk_12m_dpll 
+063f 20404766 call mouse_drawing_optima_init 
+0640 20400373 call p_mouse_sensor_powerdown 
+0641 7855fc00 disable wake 
+0642 20203c7f branch mouse_init_wireless 
 
 p_mouse_usb_gpio_high:
-063a 6fe0c930 fetch 1 ,mem_mouse_usb_vdd_status 
-063b c12d0000 rtneq mouse_usb_interface_insert 
-063c 7049305a jam mouse_usb_interface_insert ,mem_mouse_usb_vdd_status 
-063d 58000000 setarg 0 
-063e 67e14887 store 2 ,mem_24g_pair_timeout 
-063f 67e1488b store 2 ,mem_24g_reconn_timeout 
-0640 704caf01 jam 1 ,mem_usb_mode_enable 
-0641 204002d9 call p_mouse_multi_led_blink_disable 
-0642 70409900 jam 0 ,mem_lpm_mode 
-0643 2040060e call p_select_system_clk_24m_dpll 
-0644 20404831 call mouse_24g_stop 
-0645 20400046 call p_mouse_stop_bluetooth_mode 
-0646 7855fc00 disable wake 
-0647 2040430a call mouse_init_sensor_reset 
-0648 580005e2 setarg p_mouse_usb_config_param 
-0649 67e10b45 store 2 ,mem_cb_usb_config 
-064a 6fe0cc87 fetch 1 ,mem_usb_tx_interval_retention 
-064b 67e08b47 store 1 ,mem_usb_tx_interval 
-064c d8c04c88 arg mem_usb_vid_pid_retention ,contr 
-064d d8a00b48 arg mem_usb_vid_pid ,contw 
-064e df200009 arg 9 ,loopcnt 
-064f 20407dd4 call memcpy 
-0650 20207a08 branch usb_init 
+0643 6fe0c930 fetch 1 ,mem_mouse_usb_vdd_status 
+0644 c12d0000 rtneq mouse_usb_interface_insert 
+0645 7049305a jam mouse_usb_interface_insert ,mem_mouse_usb_vdd_status 
+0646 58000000 setarg 0 
+0647 67e14887 store 2 ,mem_24g_pair_timeout 
+0648 67e1488b store 2 ,mem_24g_reconn_timeout 
+0649 704caf01 jam 1 ,mem_usb_mode_enable 
+064a 204002d9 call p_mouse_multi_led_blink_disable 
+064b 70409900 jam 0 ,mem_lpm_mode 
+064c 20400617 call p_select_system_clk_24m_dpll 
+064d 20404831 call mouse_24g_stop 
+064e 20400046 call p_mouse_stop_bluetooth_mode 
+064f 7855fc00 disable wake 
+0650 2040430a call mouse_init_sensor_reset 
+0651 580005eb setarg p_mouse_usb_config_param 
+0652 67e10b45 store 2 ,mem_cb_usb_config 
+0653 6fe0cc87 fetch 1 ,mem_usb_tx_interval_retention 
+0654 67e08b47 store 1 ,mem_usb_tx_interval 
+0655 d8c04c88 arg mem_usb_vid_pid_retention ,contr 
+0656 d8a00b48 arg mem_usb_vid_pid ,contw 
+0657 df200009 arg 9 ,loopcnt 
+0658 20407dd4 call memcpy 
+0659 20207a08 branch usb_init 
 
 p_mouse_usb_mode:
-0651 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-0652 c4068000 rtnbit0 mouse_enable_usb 
-0653 6ff08c02 fetch 1 ,core_usb_addr 
-0654 67e0c92f store 1 ,mem_usb_addr 
-0655 c4038000 rtnbit0 7 
-0656 204005f9 call p_usb_timer_check 
-0657 24740000 nrtn user 
-0658 20403fb0 call mouse_motion 
-0659 24740000 nrtn user 
-065a 2020065b branch p_mouse_push_data_to_usb 
+065a 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+065b c4068000 rtnbit0 mouse_enable_usb 
+065c 6ff08c02 fetch 1 ,core_usb_addr 
+065d 67e0c92f store 1 ,mem_usb_addr 
+065e c4038000 rtnbit0 7 
+065f 20400602 call p_usb_timer_check 
+0660 24740000 nrtn user 
+0661 20403fb0 call mouse_motion 
+0662 24740000 nrtn user 
+0663 20200664 branch p_mouse_push_data_to_usb 
 
 p_mouse_push_data_to_usb:
-065b 6ff08c02 fetch 1 ,core_usb_addr 
-065c c4038000 rtnbit0 7 
-065d 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
-065e c30a8661 bbit0 mouse_enable_keyboard ,p_mouse_push_mouse_data_to_usb 
-065f 6fe0cb9c fetch 1 ,mem_customer_key 
-0660 c0008667 beq 1 ,p_mouse_push_keyboard_data_to_usb 
+0664 6ff08c02 fetch 1 ,core_usb_addr 
+0665 c4038000 rtnbit0 7 
+0666 6fe44bbc fetch mouse_flag_len ,mem_mouse_flag 
+0667 c30a866a bbit0 mouse_enable_keyboard ,p_mouse_push_mouse_data_to_usb 
+0668 6fe0cb9c fetch 1 ,mem_customer_key 
+0669 c0008670 beq 1 ,p_mouse_push_keyboard_data_to_usb 
 
 p_mouse_push_mouse_data_to_usb:
-0661 2040370f call dongle_usb_tx_ms_data 
-0662 58000001 setarg ms_report_id 
-0663 67e08bff store 1 ,mem_usb_mouse_data 
-0664 6fe3c8d4 fetch 7 ,mem_mouse_key 
-0665 e7e38005 istore 7 ,contw 
-0666 20600000 rtn 
+066a 2040370f call dongle_usb_tx_ms_data 
+066b 58000001 setarg ms_report_id 
+066c 67e08bff store 1 ,mem_usb_mouse_data 
+066d 6fe3c8d4 fetch 7 ,mem_mouse_key 
+066e e7e38005 istore 7 ,contw 
+066f 20600000 rtn 
 
 p_mouse_push_keyboard_data_to_usb:
-0667 6fe0cb9d fetch 1 ,mem_customer_data_trigger 
-0668 203a0672 branch p_mouse_push_release_keyboard_data_to_usb ,blank 
-0669 6fe44bde fetch 8 ,mem_customer_key_press + 1 
+0670 6fe0cb9d fetch 1 ,mem_customer_data_trigger 
+0671 203a067b branch p_mouse_push_release_keyboard_data_to_usb ,blank 
+0672 6fe44bde fetch 8 ,mem_customer_key_press + 1 
 
 p_mouse_push_keyboard_package_data_to_usb:
-066a 67e4095c store 8 ,mem_pdatatemp 
-066b 6fe0cbdd fetch 1 ,mem_customer_key_press 
-066c c0018674 beq kb_multikey_report_id ,p_mouse_push_multimedia_key_data_to_usb 
-066d c001067b beq kb_system_conctrl_report_id ,p_mouse_push_systemctrl_key_data_to_usb 
-066e 2040371d call dongle_usb_tx_kb_data 
-066f 6fe4095c fetch 8 ,mem_pdatatemp 
-0670 67e40c0f store 8 ,mem_usb_kb_data 
-0671 20600000 rtn 
+0673 67e4095c store 8 ,mem_pdatatemp 
+0674 6fe0cbdd fetch 1 ,mem_customer_key_press 
+0675 c001867d beq kb_multikey_report_id ,p_mouse_push_multimedia_key_data_to_usb 
+0676 c0010684 beq kb_system_conctrl_report_id ,p_mouse_push_systemctrl_key_data_to_usb 
+0677 2040371d call dongle_usb_tx_kb_data 
+0678 6fe4095c fetch 8 ,mem_pdatatemp 
+0679 67e40c0f store 8 ,mem_usb_kb_data 
+067a 20600000 rtn 
 
 p_mouse_push_release_keyboard_data_to_usb:
-0672 6fe44be7 fetch 8 ,mem_customer_key_release + 1 
-0673 2020066a branch p_mouse_push_keyboard_package_data_to_usb 
+067b 6fe44be7 fetch 8 ,mem_customer_key_release + 1 
+067c 20200673 branch p_mouse_push_keyboard_package_data_to_usb 
 
 p_mouse_push_multimedia_key_data_to_usb:
-0674 20403710 call dongle_usb_tx_enable_ep2 
-0675 700bf821 jam usb_ep2_multikey ,mem_usb_ep2_data 
-0676 58000003 setarg kb_multikey_report_id 
-0677 67e08c1f store 1 ,mem_usb_kb_multikey 
-0678 6fe1095c fetch 2 ,mem_pdatatemp 
-0679 e7e10005 istore 2 ,contw 
-067a 20600000 rtn 
+067d 20403710 call dongle_usb_tx_enable_ep2 
+067e 700bf821 jam usb_ep2_multikey ,mem_usb_ep2_data 
+067f 58000003 setarg kb_multikey_report_id 
+0680 67e08c1f store 1 ,mem_usb_kb_multikey 
+0681 6fe1095c fetch 2 ,mem_pdatatemp 
+0682 e7e10005 istore 2 ,contw 
+0683 20600000 rtn 
 
 p_mouse_push_systemctrl_key_data_to_usb:
-067b 20403710 call dongle_usb_tx_enable_ep2 
-067c 700bf822 jam usb_ep2_systemkey ,mem_usb_ep2_data 
-067d 58000002 setarg kb_system_conctrl_report_id 
-067e 67e08c2f store 1 ,mem_usb_kb_system 
-067f 6fe0895c fetch 1 ,mem_pdatatemp 
-0680 e7e08005 istore 1 ,contw 
-0681 20600000 rtn 
+0684 20403710 call dongle_usb_tx_enable_ep2 
+0685 700bf822 jam usb_ep2_systemkey ,mem_usb_ep2_data 
+0686 58000002 setarg kb_system_conctrl_report_id 
+0687 67e08c2f store 1 ,mem_usb_kb_system 
+0688 6fe0895c fetch 1 ,mem_pdatatemp 
+0689 e7e08005 istore 1 ,contw 
+068a 20600000 rtn 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AF/branch/mouse/mouse_public_4mode_usb/program/patch.prog	(revision 3392)
+++ /YC1308AF/branch/mouse/mouse_public_4mode_usb/program/patch.prog	(working copy)
@@ -1822,7 +1822,12 @@
 	store 1,mem_mouse_le_send_conn_param_update_timer
 	store 1,mem_mouse_le_bb_connected_flag
 	jam 0,mem_mouse_pair_success
-	branch mouse_le_bb_disconnected+7
+
+	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
+	jam 0,mem_mouse_clear_sensor_data_flag
+	call le_clr_config_more_data
+	branch p_mouse_bb_disconnected
+
 
 p_mouse_le_bb_event_connected:
 	call p_mouse_device_poweron_led_config
@@ -1838,7 +1843,14 @@
 
 p_mouse_bb_disconnected:
 	jam 0,mem_mouse_pair_success
-	branch mouse_bb_disconnected
+
+	jam 0,mem_mouse_enter_sniff_count	
+	jam 0,mem_mouse_bt_send_first_package_flag
+	call mouse_bt_sniff_param_interval_setup
+	call mouse_bb_discon_clear_stack
+	fetch 1,mem_usb_mode_enable
+	nrtn blank
+	branch mouse_bb_disconnected+4
 endif
 
 ////////////////////////////////////////////////bb event end///////////////////////////////////////////////
Index: sched/mouse.dat
===================================================================
--- /YC1308AF/branch/mouse/mouse_public_4mode_usb/sched/mouse.dat	(revision 3392)
+++ /YC1308AF/branch/mouse/mouse_public_4mode_usb/sched/mouse.dat	(working copy)
@@ -84,7 +84,7 @@
 #bit5 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
 #bit6 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
 #bit7 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY
-01
+02
 
 #mouse flag byte8
 #bit0 MOUSE_ENABLE_SMOOTHER
@@ -93,7 +93,7 @@
 #bit3 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
 #bit4 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
 #bit5 MOUSE_ENABLE_DOUBLE_DPI_KEY
-1b
+1f
 
 
 mem_mouse_discovery_timeout:b0 04	#2min
@@ -485,7 +485,7 @@
 ################USB config begin################
 
 mem_ui_led_struct_ptr:mem_mouse_led_type
-mem_ui_led_struct_num:01
+mem_ui_led_struct_num:00
 mem_ui_button_gpio:ff
 mem_ui_button_timeout:1e
 mem_usb_offline_check_gpio:ff
