Index: output/flash.dat
===================================================================
--- /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/output/flash.dat	(revision 3386)
+++ /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/output/flash.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-26
+42
 1e
 20
 20
@@ -23,7 +23,7 @@
 20
 40
 06
-95
+9c
 68
 00
 c6
@@ -51,7 +51,7 @@
 20
 40
 07
-24
+2b
 20
 40
 00
@@ -83,7 +83,7 @@
 58
 00
 05
-d4
+db
 60
 01
 41
@@ -275,43 +275,43 @@
 c0
 42
 87
-01
+08
 c0
 44
 86
-d2
+d9
 c0
 0d
 85
-ed
+f4
 c0
 13
 05
-ef
+f6
 c0
 24
 06
-0a
+11
 c0
 25
 06
-11
+18
 c0
 28
 86
-1a
+21
 c0
 2c
 86
-08
+0f
 c0
 53
 86
-1f
+26
 c0
 56
 86
-38
+3f
 c0
 65
 b3
@@ -319,7 +319,7 @@
 c0
 74
 86
-49
+50
 c0
 50
 80
@@ -343,15 +343,15 @@
 c0
 75
 05
-1d
+24
 c0
 75
 85
-23
+2a
 c0
 76
 05
-2a
+31
 20
 20
 2a
@@ -359,71 +359,71 @@
 c0
 1c
 85
-33
+3a
 c0
 21
 85
-3b
+42
 c0
 25
 05
-41
+48
 c0
 2b
 85
-44
+4b
 c0
 2c
 85
-46
+4d
 c0
 31
 85
-48
+4f
 c0
 33
 05
-72
+79
 c0
 33
 85
-89
+90
 c0
 35
 05
-bf
+c6
 c0
 3b
 85
-ca
+d1
 c0
 02
 86
-4b
+52
 c0
 40
 06
-4d
+54
 c0
 41
 06
-57
+5e
 c0
 44
 06
-59
+60
 c0
 46
 05
-da
+e1
 c0
 46
 85
-e6
+ed
 c0
 7d
 06
-7d
+84
 20
 20
 2a
@@ -639,7 +639,7 @@
 20
 40
 06
-a6
+ad
 58
 01
 77
@@ -999,7 +999,7 @@
 20
 40
 06
-9c
+a3
 20
 20
 01
@@ -1043,7 +1043,7 @@
 20
 40
 06
-9c
+a3
 70
 4d
 35
@@ -1379,7 +1379,7 @@
 20
 40
 06
-98
+9f
 70
 4b
 58
@@ -1467,7 +1467,7 @@
 20
 40
 06
-95
+9c
 20
 20
 01
@@ -1587,11 +1587,11 @@
 20
 40
 06
-c9
+d0
 20
 40
 06
-9c
+a3
 20
 20
 01
@@ -1671,7 +1671,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -1679,7 +1679,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -1687,7 +1687,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -1695,7 +1695,7 @@
 20
 20
 07
-03
+0a
 70
 11
 9e
@@ -2931,7 +2931,7 @@
 20
 40
 05
-26
+2d
 20
 20
 7d
@@ -2971,7 +2971,7 @@
 20
 20
 07
-03
+0a
 70
 42
 12
@@ -3139,7 +3139,7 @@
 20
 20
 07
-03
+0a
 68
 08
 cb
@@ -4483,7 +4483,7 @@
 20
 20
 07
-03
+0a
 20
 40
 04
@@ -4495,7 +4495,7 @@
 20
 20
 07
-03
+0a
 70
 0a
 99
@@ -4511,7 +4511,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -4519,7 +4519,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -4527,7 +4527,7 @@
 20
 20
 07
-03
+0a
 20
 40
 43
@@ -4543,7 +4543,7 @@
 20
 20
 07
-03
+0a
 70
 48
 09
@@ -4567,7 +4567,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -4575,7 +4575,7 @@
 20
 20
 07
-03
+0a
 20
 40
 02
@@ -4587,7 +4587,7 @@
 20
 20
 07
-03
+0a
 20
 40
 04
@@ -4603,7 +4603,7 @@
 20
 20
 07
-03
+0a
 20
 40
 02
@@ -4623,7 +4623,7 @@
 20
 20
 07
-03
+0a
 68
 00
 cb
@@ -5150,8 +5150,8 @@
 9b
 20
 40
-3f
-b5
+05
+1d
 20
 40
 40
@@ -5167,11 +5167,11 @@
 24
 34
 07
-24
+2b
 20
 40
 07
-27
+2e
 20
 20
 3f
@@ -5240,6 +5240,34 @@
 20
 05
 13
+68
+00
+c6
+e0
+c0
+02
+05
+22
+20
+40
+3f
+c0
+78
+54
+7c
+00
+20
+20
+3f
+e7
+20
+40
+3f
+c0
+20
+20
+3f
+c8
 70
 4b
 52
@@ -5263,7 +5291,7 @@
 20
 20
 07
-03
+0a
 70
 4b
 5e
@@ -5275,7 +5303,7 @@
 20
 20
 07
-03
+0a
 d8
 a0
 43
@@ -5355,7 +5383,7 @@
 20
 40
 06
-a6
+ad
 20
 20
 53
@@ -5403,7 +5431,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -5411,7 +5439,7 @@
 20
 20
 07
-03
+0a
 68
 00
 84
@@ -5419,11 +5447,11 @@
 c2
 82
 85
-5c
+63
 20
 40
 06
-98
+9f
 68
 00
 c7
@@ -5431,7 +5459,7 @@
 24
 3a
 05
-52
+59
 68
 00
 84
@@ -5439,7 +5467,7 @@
 c3
 02
 05
-56
+5d
 68
 00
 82
@@ -5447,7 +5475,7 @@
 20
 3a
 05
-56
+5d
 20
 20
 56
@@ -5475,7 +5503,7 @@
 c0
 82
 85
-59
+60
 70
 47
 8e
@@ -5495,11 +5523,11 @@
 20
 40
 05
-5e
+65
 20
 20
 05
-6a
+71
 68
 00
 c6
@@ -5551,7 +5579,7 @@
 20
 20
 06
-9c
+a3
 68
 00
 c7
@@ -5635,7 +5663,7 @@
 c0
 01
 85
-81
+88
 20
 20
 56
@@ -5647,7 +5675,7 @@
 c0
 00
 85
-84
+8b
 20
 20
 5c
@@ -5679,11 +5707,11 @@
 c0
 02
 05
-8d
+94
 c0
 03
 05
-ba
+c1
 20
 20
 56
@@ -5695,7 +5723,7 @@
 20
 40
 05
-6b
+72
 20
 40
 7e
@@ -5711,7 +5739,7 @@
 c0
 08
 05
-9c
+a3
 1f
 ec
 84
@@ -5723,7 +5751,7 @@
 20
 21
 05
-aa
+b1
 d8
 40
 47
@@ -5807,7 +5835,7 @@
 c0
 05
 05
-ac
+b3
 20
 20
 58
@@ -5823,7 +5851,7 @@
 c2
 81
 85
-b3
+ba
 68
 01
 04
@@ -5851,7 +5879,7 @@
 24
 22
 85
-af
+b6
 20
 40
 5a
@@ -5859,7 +5887,7 @@
 24
 34
 05
-af
+b6
 70
 04
 7a
@@ -5875,7 +5903,7 @@
 c0
 02
 85
-bd
+c4
 20
 20
 5a
@@ -5887,7 +5915,7 @@
 20
 20
 07
-03
+0a
 68
 00
 80
@@ -5899,7 +5927,7 @@
 20
 40
 05
-c5
+cc
 d8
 e0
 00
@@ -5939,7 +5967,7 @@
 20
 37
 05
-cd
+d4
 24
 36
 d8
@@ -6035,7 +6063,7 @@
 20
 40
 05
-e7
+ee
 60
 18
 80
@@ -6079,7 +6107,7 @@
 20
 20
 07
-03
+0a
 20
 40
 21
@@ -6114,8 +6142,8 @@
 e6
 c5
 05
-85
-fc
+86
+03
 20
 40
 24
@@ -6123,11 +6151,11 @@
 24
 3a
 05
-f5
+fc
 c5
 16
 86
-04
+0b
 20
 20
 21
@@ -6163,7 +6191,7 @@
 20
 20
 05
-f5
+fc
 68
 02
 01
@@ -6227,7 +6255,7 @@
 20
 40
 86
-15
+1c
 20
 20
 24
@@ -6243,15 +6271,15 @@
 20
 40
 86
-9c
+a3
 24
 40
 86
-98
+9f
 20
 20
 06
-a6
+ad
 20
 40
 24
@@ -6315,7 +6343,7 @@
 20
 3a
 06
-2c
+33
 68
 00
 c5
@@ -6423,7 +6451,7 @@
 20
 5a
 06
-46
+4d
 20
 20
 2b
@@ -6447,7 +6475,7 @@
 20
 20
 07
-03
+0a
 70
 11
 c5
@@ -6455,7 +6483,7 @@
 20
 20
 07
-03
+0a
 68
 00
 85
@@ -6467,7 +6495,7 @@
 c0
 09
 86
-51
+58
 20
 20
 5d
@@ -6503,7 +6531,7 @@
 20
 20
 07
-03
+0a
 20
 40
 62
@@ -6523,11 +6551,11 @@
 c0
 02
 06
-7b
+82
 c0
 08
 06
-60
+67
 20
 20
 63
@@ -6543,7 +6571,7 @@
 c0
 00
 86
-64
+6b
 20
 20
 63
@@ -6559,7 +6587,7 @@
 c2
 80
 06
-68
+6f
 20
 20
 63
@@ -6627,7 +6655,7 @@
 24
 21
 06
-79
+80
 20
 20
 63
@@ -6667,15 +6695,15 @@
 c0
 0f
 86
-88
+8f
 c0
 10
 06
-8b
+92
 c0
 09
 06
-85
+8c
 20
 20
 7d
@@ -6703,7 +6731,7 @@
 20
 20
 06
-8d
+94
 70
 01
 85
@@ -6783,7 +6811,7 @@
 24
 41
 06
-a4
+ab
 68
 00
 cd
@@ -6847,7 +6875,7 @@
 c5
 13
 06
-b0
+b7
 58
 00
 00
@@ -6859,7 +6887,7 @@
 24
 21
 06
-c8
+cf
 68
 00
 cd
@@ -6871,7 +6899,7 @@
 24
 21
 06
-b8
+bf
 68
 00
 cd
@@ -6879,7 +6907,7 @@
 c0
 00
 06
-c9
+d0
 20
 60
 00
@@ -6907,7 +6935,7 @@
 c5
 13
 06
-bf
+c6
 58
 00
 00
@@ -6927,7 +6955,7 @@
 c0
 00
 06
-d0
+d7
 1f
 e0
 ff
@@ -6939,7 +6967,7 @@
 c0
 00
 06
-d0
+d7
 70
 41
 de
@@ -6959,7 +6987,7 @@
 c0
 01
 06
-ce
+d5
 1f
 e0
 fe
@@ -6971,7 +6999,7 @@
 c0
 00
 86
-c6
+cd
 70
 41
 de
@@ -7055,19 +7083,19 @@
 c0
 01
 06
-ea
+f1
 c0
 02
 06
-ef
+f6
 c0
 10
-06
-fe
+07
+05
 20
 40
 06
-f4
+fb
 70
 89
 55
@@ -7086,8 +7114,8 @@
 4b
 20
 40
-06
-f9
+07
+00
 70
 89
 55
@@ -7107,7 +7135,7 @@
 20
 40
 06
-f4
+fb
 70
 89
 55
@@ -7203,7 +7231,7 @@
 20
 22
 87
-22
+29
 60
 08
 cb
@@ -7279,7 +7307,7 @@
 24
 22
 87
-13
+1a
 20
 40
 02
@@ -7339,7 +7367,7 @@
 20
 40
 07
-78
+7f
 58
 00
 00
@@ -7347,7 +7375,7 @@
 20
 40
 07
-6b
+72
 58
 00
 00
@@ -7355,7 +7383,7 @@
 20
 40
 07
-71
+78
 68
 00
 cb
@@ -7363,11 +7391,11 @@
 c0
 00
 87
-31
+38
 20
 20
 07
-24
+2b
 68
 01
 4b
@@ -7387,7 +7415,7 @@
 20
 40
 07
-44
+4b
 68
 01
 11
@@ -7423,7 +7451,7 @@
 20
 40
 07
-44
+4b
 68
 01
 11
@@ -7467,7 +7495,7 @@
 20
 20
 87
-51
+58
 68
 00
 91
@@ -7475,7 +7503,7 @@
 c0
 7f
 87
-58
+5f
 68
 00
 91
@@ -7503,7 +7531,7 @@
 c0
 00
 07
-55
+5c
 68
 01
 91
@@ -7511,7 +7539,7 @@
 20
 20
 07
-4d
+54
 70
 11
 c4
@@ -7523,7 +7551,7 @@
 20
 20
 07
-4d
+54
 68
 00
 91
@@ -7531,7 +7559,7 @@
 20
 40
 07
-63
+6a
 60
 00
 91
@@ -7543,7 +7571,7 @@
 20
 3a
 07
-61
+68
 58
 00
 00
@@ -7567,7 +7595,7 @@
 20
 20
 07
-5e
+65
 1f
 e6
 7e
@@ -7607,7 +7635,7 @@
 24
 21
 07
-76
+7d
 9a
 46
 7c
@@ -7615,7 +7643,7 @@
 24
 21
 07
-76
+7d
 70
 4b
 0d
@@ -7643,7 +7671,7 @@
 20
 20
 07
-6f
+76
 70
 4b
 0d
@@ -7663,7 +7691,7 @@
 20
 40
 07
-81
+88
 1f
 e2
 22
@@ -7679,7 +7707,7 @@
 20
 40
 07
-81
+88
 1f
 e2
 24
@@ -7695,7 +7723,7 @@
 c0
 7f
 87
-86
+8d
 68
 00
 91
@@ -7719,9 +7747,9 @@
 20
 20
 07
-84
-78
-a7
+8b
+d5
+5b
 aa
 55
 08
@@ -8807,7 +8835,7 @@
 00
 6f
 4b
-72
+8e
 2e
 00
 ff
@@ -9678,7 +9706,7 @@
 20
 40
 05
-21
+28
 20
 20
 03
@@ -10530,7 +10558,7 @@
 20
 40
 05
-26
+2d
 20
 20
 7d
@@ -11887,5 +11915,5 @@
 55
 00
 00
-dd
-14
+fa
+69
Index: output/program.lis
===================================================================
--- /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/output/program.lis	(revision 3386)
+++ /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/output/program.lis	(working copy)
@@ -10,14 +10,14 @@
 0001 204003f5 call p_mouse_data_init 
 0002 6800c1de fetch 1 ,mem_tx_power 
 0003 6000ccb9 store 1 ,mem_tx_power_temp 
-0004 20400695 call power_ctrl_pac_succ_cnt_init 
+0004 2040069c call power_ctrl_pac_succ_cnt_init 
 0005 6800c685 fetch 1 ,mem_ui_button_timeout 
 0006 6000cb46 store 1 ,mem_select_ui_button_count 
 0007 6800cb32 fetch 1 ,mem_bt_ui_button_timeout 
 0008 6000cb33 store 1 ,mem_bt_ui_button_count 
 0009 204043ca call mouse_bt_discovery_button_down_disable 
 000a 204002e6 call p_mouse_spi_init 
-000b 20400724 call p_drawing_optima_init 
+000b 2040072b call p_drawing_optima_init 
 000c 2040000f call p_mouse_cb_fuction 
 000d 20400022 call p_mouse_wakeup_from_power 
 000e 2020030e branch p_mouse_setting_config 
@@ -27,7 +27,7 @@
 0010 60014d33 store 2 ,mem_cb_24g_data 
 0011 580003e2 setarg p_mouse_le 
 0012 600141ef store 2 ,mem_cb_le_process 
-0013 580005d4 setarg p_le_mouse_bb_event_connect_complete 
+0013 580005db setarg p_le_mouse_bb_event_connect_complete 
 0014 600141f9 store 2 ,mem_cb_att_write 
 0015 58000410 setarg p_mouse_bt 
 0016 600141f1 store 2 ,mem_cb_bt_process 
@@ -83,46 +83,46 @@
 0040 c2840058 bbit1 8 ,pf_patch_ext 
 0041 c0008074 beq patch00_1 ,p_soft_reset_1 
 0042 c001007d beq patch00_2 ,p_soft_reset_2 
-0043 c0428701 beq patch10_5 ,p_shutdown_radio 
-0044 c04486d2 beq patch11_1 ,p_set_freq_tx 
-0045 c00d85ed beq patch03_3 ,p_page_wait_fhs_reply_ok 
-0046 c01305ef beq patch04_6 ,p_role_switch_master 
-0047 c024060a beq patch09_0 ,p_quit_connection_cont 
-0048 c0250611 beq patch09_2 ,p_prepare_tx 
-0049 c028861a beq patch0a_1 ,p_slave_conn_recv_packet 
-004a c02c8608 beq patch0b_1 ,p_process_dmh 
-004b c053861f beq patch14_7 ,p_lpm_dispatch 
-004c c0568638 beq patch15_5 ,p_lpm_set_mult 
+0043 c0428708 beq patch10_5 ,p_shutdown_radio 
+0044 c04486d9 beq patch11_1 ,p_set_freq_tx 
+0045 c00d85f4 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0046 c01305f6 beq patch04_6 ,p_role_switch_master 
+0047 c0240611 beq patch09_0 ,p_quit_connection_cont 
+0048 c0250618 beq patch09_2 ,p_prepare_tx 
+0049 c0288621 beq patch0a_1 ,p_slave_conn_recv_packet 
+004a c02c860f beq patch0b_1 ,p_process_dmh 
+004b c0538626 beq patch14_7 ,p_lpm_dispatch 
+004c c056863f beq patch15_5 ,p_lpm_set_mult 
 004d c065b3e4 beq patch19_3 ,app_bt_start_reconnect + 3 
-004e c0748649 beq patch1d_1 ,p_mouse_bb_disconnected 
+004e c0748650 beq patch1d_1 ,p_mouse_bb_disconnected 
 004f c0508086 beq patch14_1 ,p_init_param 
 0050 c058808b beq patch16_1 ,p_lpm_check_wake_lock 
 0051 c0590095 beq patch16_2 ,p_g24_dispatch 
 0052 c06202ad beq patch18_4 ,p_device_init 
 0053 c0730503 beq patch1c_6 ,p_mouse_motion 
-0054 c075051d beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
-0055 c0758523 beq patch1d_3 ,p_mouse_start_discovery 
-0056 c076052a beq patch1d_4 ,p_mouse_stop_discovery 
+0054 c0750524 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0055 c075852a beq patch1d_3 ,p_mouse_start_discovery 
+0056 c0760531 beq patch1d_4 ,p_mouse_stop_discovery 
 0057 20202a8e branch loop 
 
 pf_patch_ext:
-0058 c01c8533 beq patch27_1 ,p_le_slave_match 
-0059 c021853b beq patch28_3 ,p_le_next_adv_channel 
-005a c0250541 beq patch29_2 ,p_le_receive_skip 
-005b c02b8544 beq patch2a_7 ,p_le_update_param 
-005c c02c8546 beq patch2b_1 ,p_le_update_channel_map 
-005d c0318548 beq patch2c_3 ,p_le_prepare_tx 
-005e c0330572 beq patch2c_6 ,p_le_parse 
-005f c0338589 beq patch2c_7 ,p_le_parse_l2cap 
-0060 c03505bf beq patch2d_2 ,p_le_adv_not_match 
-0061 c03b85ca beq patch2e_7 ,p_le_lpm_setmult 
-0062 c002864b beq patch20_5 ,p_hid_rx_process 
-0063 c040064d beq patch30_0 ,p_parse_lmp_accepted 
-0064 c0410657 beq patch30_2 ,p_send_lmp 
-0065 c0440659 beq patch31_0 ,p_process_conn_sm 
-0066 c04605da beq patch31_4 ,p_twspi_reset 
-0067 c04685e6 beq patch31_5 ,p_spid_init 
-0068 c07d067d beq patch3f_2 ,p_check_51cmd_once_continue 
+0058 c01c853a beq patch27_1 ,p_le_slave_match 
+0059 c0218542 beq patch28_3 ,p_le_next_adv_channel 
+005a c0250548 beq patch29_2 ,p_le_receive_skip 
+005b c02b854b beq patch2a_7 ,p_le_update_param 
+005c c02c854d beq patch2b_1 ,p_le_update_channel_map 
+005d c031854f beq patch2c_3 ,p_le_prepare_tx 
+005e c0330579 beq patch2c_6 ,p_le_parse 
+005f c0338590 beq patch2c_7 ,p_le_parse_l2cap 
+0060 c03505c6 beq patch2d_2 ,p_le_adv_not_match 
+0061 c03b85d1 beq patch2e_7 ,p_le_lpm_setmult 
+0062 c0028652 beq patch20_5 ,p_hid_rx_process 
+0063 c0400654 beq patch30_0 ,p_parse_lmp_accepted 
+0064 c041065e beq patch30_2 ,p_send_lmp 
+0065 c0440660 beq patch31_0 ,p_process_conn_sm 
+0066 c04605e1 beq patch31_4 ,p_twspi_reset 
+0067 c04685ed beq patch31_5 ,p_spid_init 
+0068 c07d0684 beq patch3f_2 ,p_check_51cmd_once_continue 
 0069 20202a8e branch loop 
 
 p_rssi_signal:
@@ -194,7 +194,7 @@
 009b 2040014f call p_g24_transmit_packet 
 009c 6800cc12 fetch 1 ,mem_24g_pairing_sm 
 009d c1ff8000 rtnne state_24g_pairing_success 
-009e 204006a6 call power_ctrl_start 
+009e 204006ad call power_ctrl_start 
 009f 58017700 setarg g24_long_sleep_step1 
 00a0 6001cc31 store 3 ,mem_24g_enter_hibernate 
 00a1 704b6c14 jam 20 ,mem_24g_long_sleep_param_update_timer 
@@ -316,7 +316,7 @@
 00f5 793ffe04 set0 bit_hop ,pdata 
 00f6 6000cc03 store 1 ,mem_24g_data_type 
 00f7 6000cbbe store 1 ,mem_24g_txpayload 
-00f8 2040069c call power_ctrl_pac_succ_decrs 
+00f8 204006a3 call power_ctrl_pac_succ_decrs 
 00f9 202001e6 branch p_g24_ch 
 
 p_g24_rf_hop_attemp_again:
@@ -333,7 +333,7 @@
 0102 2020014f branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-0103 2040069c call power_ctrl_pac_succ_decrs 
+0103 204006a3 call power_ctrl_pac_succ_decrs 
 0104 704d3500 jam 0 ,mem_24g_hop_fastly_cnt 
 0105 202000eb branch p_g24_transmit_rf_ctrl_clear 
 
@@ -447,7 +447,7 @@
 0154 2437817a nbranch p_g24_retransmit ,user3 
 0155 20400167 call p_g24_txbuf_clear 
 0156 20400198 call p_g24_ackpayload_parse 
-0157 20400698 call power_ctrl_pac_succ_incrs 
+0157 2040069f call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
 0158 704b5800 jam 0 ,mem_retry_count 
@@ -479,7 +479,7 @@
 016c 20600000 rtn 
 
 p_g24_paring_mode_start:
-016d 20400695 call power_ctrl_pac_succ_cnt_init 
+016d 2040069c call power_ctrl_pac_succ_cnt_init 
 016e 202001a1 branch p_g24_paring_mode 
 
 p_g24_transmit_receive_ack:
@@ -521,8 +521,8 @@
 018a 20207d86 branch ui_ipc_send_event 
 
 p_g24_tx_fast_hop:
-018b 204006c9 call power_ctrl_txpower_incrs 
-018c 2040069c call power_ctrl_pac_succ_decrs 
+018b 204006d0 call power_ctrl_txpower_incrs 
+018c 204006a3 call power_ctrl_pac_succ_decrs 
 018d 202001e6 branch p_g24_ch 
 
 p_g24_tx_hop_ch_process:
@@ -548,19 +548,19 @@
 
 p_g24_pairing_sm:
 019f 7011c590 jam zcode_90 ,mem_zcode_temp_param0 
-01a0 20200703 branch p_zcode_entrance 
+01a0 2020070a branch p_zcode_entrance 
 
 p_g24_paring_mode:
 01a1 7011c591 jam zcode_91 ,mem_zcode_temp_param0 
-01a2 20200703 branch p_zcode_entrance 
+01a2 2020070a branch p_zcode_entrance 
 
 p_g24_start_24g_mode:
 01a3 7011c560 jam zcode_60 ,mem_zcode_temp_param0 
-01a4 20200703 branch p_zcode_entrance 
+01a4 2020070a branch p_zcode_entrance 
 
 p_g24_auto_pair_start:
 01a5 7011c570 jam zcode_70 ,mem_zcode_temp_param0 
-01a6 20200703 branch p_zcode_entrance 
+01a6 2020070a branch p_zcode_entrance 
 
 p_g24_tx_attemp_data_prep:
 01a7 70119eff jam 0xff ,mem_24g_common_temp 
@@ -949,7 +949,7 @@
 02d8 58000004 setarg adv_flag_bredr_not_supported 
 02d9 e0c08000 istore 1 ,contr 
 02da d8c04390 arg mem_le_scan_data ,contr 
-02db 20400526 call p_le_adv_data_update 
+02db 2040052d call p_le_adv_data_update 
 02dc 20207df4 branch check_51cmd_adv 
 
 p_le_check_adv_flag:
@@ -965,7 +965,7 @@
 
 p_mouse_24g_pairing_button:
 02e4 7011c561 jam zcode_61 ,mem_zcode_temp_param0 
-02e5 20200703 branch p_zcode_entrance 
+02e5 2020070a branch p_zcode_entrance 
 
 p_mouse_spi_init:
 02e6 70421276 jam 0x76 ,mem_spi_init_clk 
@@ -1031,7 +1031,7 @@
 
 p_mouse_setting_config:
 030e 7011c580 jam zcode_80 ,mem_zcode_temp_param0 
-030f 20200703 branch p_zcode_entrance 
+030f 2020070a branch p_zcode_entrance 
 
 p_flash_ncs_disable:
 0310 6808cb45 fetcht 1 ,mem_flash_ncs_gpio 
@@ -1481,12 +1481,12 @@
 p_mouse_le_bb_event_connected:
 045d 204002f0 call p_mouse_init_sensor_reset 
 045e 7011c5b0 jam zcode_b0 ,mem_zcode_temp_param0 
-045f 20200703 branch p_zcode_entrance 
+045f 2020070a branch p_zcode_entrance 
 
 p_mouse_le_bb_disconnected:
 0460 20400483 call p_mouse_sensor_powerdown_check 
 0461 7011c5a2 jam zcode_a2 ,mem_zcode_temp_param0 
-0462 20200703 branch p_zcode_entrance 
+0462 2020070a branch p_zcode_entrance 
 
 p_mouse_le_enc_info:
 
@@ -1496,17 +1496,17 @@
 
 p_mouse_le_ll_start_encryt:
 0465 7011c5b3 jam zcode_b3 ,mem_zcode_temp_param0 
-0466 20200703 branch p_zcode_entrance 
+0466 2020070a branch p_zcode_entrance 
 
 p_mouse_le_conn_param_update_rsp_recieved:
 0467 7011c5a1 jam zcode_a1 ,mem_zcode_temp_param0 
-0468 20200703 branch p_zcode_entrance 
+0468 2020070a branch p_zcode_entrance 
 
 p_mouse_bb_event_reconn_timeout:
 
 p_mouse_bb_event_reconn_failed:
 0469 7011c5a3 jam zcode_a3 ,mem_zcode_temp_param0 
-046a 20200703 branch p_zcode_entrance 
+046a 2020070a branch p_zcode_entrance 
 
 p_mouse_irtual_cable_unplug:
 046b 2040438e call mouse_irtual_cable_unplug 
@@ -1514,7 +1514,7 @@
 
 p_mouse_sniff_not_accept:
 046d 7011c5b1 jam zcode_b1 ,mem_zcode_temp_param0 
-046e 20200703 branch p_zcode_entrance 
+046e 2020070a branch p_zcode_entrance 
 
 p_mouse_bb_event_connected:
 046f 70480900 jam 0 ,mem_mouse_send_switch_req_timer 
@@ -1524,22 +1524,22 @@
 p_mouse_bb_event_disconnected:
 0472 20400483 call p_mouse_sensor_powerdown_check 
 0473 7011c5b4 jam zcode_b4 ,mem_zcode_temp_param0 
-0474 20200703 branch p_zcode_entrance 
+0474 2020070a branch p_zcode_entrance 
 
 p_mouse_enter_sniff_check:
 0475 7011c5b2 jam zcode_b2 ,mem_zcode_temp_param0 
-0476 20200703 branch p_zcode_entrance 
+0476 2020070a branch p_zcode_entrance 
 
 p_mouse_24g_pairing_complete:
 0477 204002f0 call p_mouse_init_sensor_reset 
 0478 7011c592 jam zcode_92 ,mem_zcode_temp_param0 
-0479 20200703 branch p_zcode_entrance 
+0479 2020070a branch p_zcode_entrance 
 
 p_mouse_24g_attempt_fail:
 047a 20400483 call p_mouse_sensor_powerdown_check 
 047b 704b5800 jam 0 ,mem_retry_count 
 047c 7011c551 jam zcode_51 ,mem_zcode_temp_param0 
-047d 20200703 branch p_zcode_entrance 
+047d 2020070a branch p_zcode_entrance 
 
 p_mouse_24g_attempt_success:
 047e 204002f0 call p_mouse_init_sensor_reset 
@@ -1550,7 +1550,7 @@
 p_mouse_before_hibernate:
 0480 20400483 call p_mouse_sensor_powerdown_check 
 0481 7011c5a4 jam zcode_a4 ,mem_zcode_temp_param0 
-0482 20200703 branch p_zcode_entrance 
+0482 2020070a branch p_zcode_entrance 
 
 p_mouse_sensor_powerdown_check:
 0483 6800cb00 fetch 1 ,mem_mouse_init_sensor_reset_flag 
@@ -1748,12 +1748,12 @@
 0503 78547c00 disable user 
 0504 58000000 setarg 0 
 0505 6003469b store 6 ,mem_mouse_x 
-0506 20403fb5 call mouse_cheak_sensor_data 
+0506 2040051d call p_mouse_cheak_sensor_data 
 0507 20404079 call mouse_zwheel 
 0508 2040407e call mouse_t_zwheel 
 0509 20404099 call mouse_key 
-050a 24340724 nbranch p_drawing_optima_init ,user 
-050b 20400727 call p_drawing_optima 
+050a 2434072b nbranch p_drawing_optima_init ,user 
+050b 2040072e call p_drawing_optima 
 050c 20203fa0 branch mouse_motion + 9 
 
 p_gpio_set_input_high_impedance:
@@ -1782,863 +1782,876 @@
 051b 793f8407 set0 gpio_active_bit ,temp 
 051c 20200513 branch p_gpio_set_input_pd4 
 
+p_mouse_cheak_sensor_data:
+051d 6800c6e0 fetch 1 ,mem_config_sensor_type 
+051e c0020522 beq p3212 ,p_mouse_p3212_sensor_motion 
+
+p_mouse_p32xx_sensor_motion:
+051f 20403fc0 call mouse_clear_sensor_data 
+0520 78547c00 disable user 
+0521 20203fe7 branch mouse_p32xx_sensor_motion_2 
+
+p_mouse_p3212_sensor_motion:
+0522 20403fc0 call mouse_clear_sensor_data 
+0523 20203fc8 branch mouse_p3212_sensor_motion_1 
+
 p_mouse_bb_event_discovery_btn:
-051d 704b5200 jam 0 ,mem_mouse_poweron_led_timer 
-051e 280ffe26 isolate1 mark_24g ,mark 
-051f 204081b0 call p_g24_check_51cmd_stop_24g ,true 
-0520 2020426d branch mouse_bb_event_discovery_btn + 1 
+0524 704b5200 jam 0 ,mem_mouse_poweron_led_timer 
+0525 280ffe26 isolate1 mark_24g ,mark 
+0526 204081b0 call p_g24_check_51cmd_stop_24g ,true 
+0527 2020426d branch mouse_bb_event_discovery_btn + 1 
 
 p_le_addr_random_config:
-0521 7011c581 jam zcode_81 ,mem_zcode_temp_param0 
-0522 20200703 branch p_zcode_entrance 
+0528 7011c581 jam zcode_81 ,mem_zcode_temp_param0 
+0529 2020070a branch p_zcode_entrance 
 
 p_mouse_start_discovery:
-0523 704b5e00 jam 0 ,mem_mouse_discovery_blink_count 
-0524 7011c550 jam zcode_50 ,mem_zcode_temp_param0 
-0525 20200703 branch p_zcode_entrance 
+052a 704b5e00 jam 0 ,mem_mouse_discovery_blink_count 
+052b 7011c550 jam zcode_50 ,mem_zcode_temp_param0 
+052c 2020070a branch p_zcode_entrance 
 
 p_le_adv_data_update:
-0526 d8a0437b arg mem_le_adv_data + 11 ,contw 
-0527 df200013 arg 19 ,loopcnt 
-0528 20407f01 call memcpy 
-0529 202057b8 branch le_modified_name_adv 
+052d d8a0437b arg mem_le_adv_data + 11 ,contw 
+052e df200013 arg 19 ,loopcnt 
+052f 20407f01 call memcpy 
+0530 202057b8 branch le_modified_name_adv 
 
 p_mouse_stop_discovery:
-052a 58000000 setarg 0 
-052b 600146ac store 2 ,mem_mouse_discovery_timer 
-052c 6000cb5d store 1 ,mem_mouse_dpi_blink_count 
-052d 6000c714 store 1 ,mem_mouse_blink_count 
-052e 6000cb5e store 1 ,mem_mouse_discovery_blink_count 
-052f 704b4905 jam 5 ,mem_mouse_bt_ble_led_timer 
-0530 204003c2 call p_mouse_bt_led_off 
-0531 20400304 call p_mouse_sensor_poweron 
-0532 202042cb branch mouse_stop_discovery + 1 
+0531 58000000 setarg 0 
+0532 600146ac store 2 ,mem_mouse_discovery_timer 
+0533 6000cb5d store 1 ,mem_mouse_dpi_blink_count 
+0534 6000c714 store 1 ,mem_mouse_blink_count 
+0535 6000cb5e store 1 ,mem_mouse_discovery_blink_count 
+0536 704b4905 jam 5 ,mem_mouse_bt_ble_led_timer 
+0537 204003c2 call p_mouse_bt_led_off 
+0538 20400304 call p_mouse_sensor_poweron 
+0539 202042cb branch mouse_stop_discovery + 1 
 
 p_le_slave_match:
-0533 6800c50f fetch 1 ,mem_le_md_count 
-0534 1fe0fe01 pincrease 1 
-0535 6000c50f store 1 ,mem_le_md_count 
-0536 c0065395 beq le_md_max_count ,le_slave_cont 
-0537 204055aa call le_acknowledge 
-0538 2040561e call le_prepare_tx 
-0539 204006a6 call power_ctrl_start 
-053a 2020538f branch le_slave_match + 7 
+053a 6800c50f fetch 1 ,mem_le_md_count 
+053b 1fe0fe01 pincrease 1 
+053c 6000c50f store 1 ,mem_le_md_count 
+053d c0065395 beq le_md_max_count ,le_slave_cont 
+053e 204055aa call le_acknowledge 
+053f 2040561e call le_prepare_tx 
+0540 204006ad call power_ctrl_start 
+0541 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
-053b 68008016 fetch 1 ,mem_le_ch_mapped 
-053c 1fe0fe01 increase 1 ,pdata 
-053d 60008016 store 1 ,mem_le_ch_mapped 
-053e c1940000 rtnne 40 
-053f 70001625 jam 37 ,mem_le_ch_mapped 
-0540 20600000 rtn 
+0542 68008016 fetch 1 ,mem_le_ch_mapped 
+0543 1fe0fe01 increase 1 ,pdata 
+0544 60008016 store 1 ,mem_le_ch_mapped 
+0545 c1940000 rtnne 40 
+0546 70001625 jam 37 ,mem_le_ch_mapped 
+0547 20600000 rtn 
 
 p_le_receive_skip:
-0541 204029bb call save_rssi 
-0542 2040006a call p_rssi_signal 
-0543 202054a3 branch le_receive_skip + 2 
+0548 204029bb call save_rssi 
+0549 2040006a call p_rssi_signal 
+054a 202054a3 branch le_receive_skip + 2 
 
 p_le_update_param:
-0544 7011c540 jam zcode_40 ,mem_zcode_temp_param0 
-0545 20200703 branch p_zcode_entrance 
+054b 7011c540 jam zcode_40 ,mem_zcode_temp_param0 
+054c 2020070a branch p_zcode_entrance 
 
 p_le_update_channel_map:
-0546 7011c541 jam zcode_41 ,mem_zcode_temp_param0 
-0547 20200703 branch p_zcode_entrance 
+054d 7011c541 jam zcode_41 ,mem_zcode_temp_param0 
+054e 2020070a branch p_zcode_entrance 
 
 p_le_prepare_tx:
-0548 68008456 fetch 1 ,mem_le_arq 
-0549 c282855c bbit1 wak ,p_le_prepare_tx_wak 
-054a 20400698 call power_ctrl_pac_succ_incrs 
-054b 6800c78e fetch 1 ,mem_empty_count 
-054c 243a0552 nbranch p_le_send_empyt ,blank 
-054d 6800843f fetch 1 ,mem_le_state 
-054e c3020556 bbit0 lestate_encryption ,p_le_tx_4 
-054f 680082da fetch 1 ,mem_le_rxbuf + 1 
-0550 203a0556 branch p_le_tx_4 ,blank 
-0551 20205664 branch le_send_empty 
+054f 68008456 fetch 1 ,mem_le_arq 
+0550 c2828563 bbit1 wak ,p_le_prepare_tx_wak 
+0551 2040069f call power_ctrl_pac_succ_incrs 
+0552 6800c78e fetch 1 ,mem_empty_count 
+0553 243a0559 nbranch p_le_send_empyt ,blank 
+0554 6800843f fetch 1 ,mem_le_state 
+0555 c302055d bbit0 lestate_encryption ,p_le_tx_4 
+0556 680082da fetch 1 ,mem_le_rxbuf + 1 
+0557 203a055d branch p_le_tx_4 ,blank 
+0558 20205664 branch le_send_empty 
 
 p_le_send_empyt:
-0552 6800c78e fetch 1 ,mem_empty_count 
-0553 1fe0ffff increase -1 ,pdata 
-0554 6000c78e store 1 ,mem_empty_count 
-0555 20205664 branch le_send_empty 
+0559 6800c78e fetch 1 ,mem_empty_count 
+055a 1fe0ffff increase -1 ,pdata 
+055b 6000c78e store 1 ,mem_empty_count 
+055c 20205664 branch le_send_empty 
 
 p_le_tx_4:
-0556 6800c4c4 fetch 1 ,mem_le_pairing_state 
-0557 c0828559 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-0558 70478e03 jam 3 ,mem_empty_count 
+055d 6800c4c4 fetch 1 ,mem_le_pairing_state 
+055e c0828560 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+055f 70478e03 jam 3 ,mem_empty_count 
 
 p_in_le_tx_4:
-0559 20405892 call le_fifo_check_nearly_full 
-055a 205a03fe call p_mouse_data_pull ,blank 
-055b 20205622 branch le_prepare_tx + 4 
+0560 20405892 call le_fifo_check_nearly_full 
+0561 205a03fe call p_mouse_data_pull ,blank 
+0562 20205622 branch le_prepare_tx + 4 
 
 p_le_prepare_tx_wak:
-055c 2040055e call p_le_check_tx_retransmit_setmd 
-055d 2020056a branch p_le_power_ctrl_pac_succ_decrs 
+0563 20400565 call p_le_check_tx_retransmit_setmd 
+0564 20200571 branch p_le_power_ctrl_pac_succ_decrs 
 
 p_le_check_tx_retransmit_setmd:
-055e 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-055f 1fe17e03 and pdata ,0x03 ,pdata 
-0560 c1818000 rtnne 0x03 
-0561 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0562 207a0000 rtn blank 
-0563 6800c3dd fetch 1 ,mem_le_txlen 
-0564 207a0000 rtn blank 
-0565 6800c3dc fetch 1 ,mem_le_txheader 
-0566 79207e04 set1 md ,pdata 
-0567 6000c3dc store 1 ,mem_le_txheader 
-0568 20405650 call le_set_md 
-0569 20600000 rtn 
+0565 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0566 1fe17e03 and pdata ,0x03 ,pdata 
+0567 c1818000 rtnne 0x03 
+0568 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+0569 207a0000 rtn blank 
+056a 6800c3dd fetch 1 ,mem_le_txlen 
+056b 207a0000 rtn blank 
+056c 6800c3dc fetch 1 ,mem_le_txheader 
+056d 79207e04 set1 md ,pdata 
+056e 6000c3dc store 1 ,mem_le_txheader 
+056f 20405650 call le_set_md 
+0570 20600000 rtn 
 
 p_le_power_ctrl_pac_succ_decrs:
-056a 2020069c branch power_ctrl_pac_succ_decrs 
+0571 202006a3 branch power_ctrl_pac_succ_decrs 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
-056b 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-056c 207a0000 rtn blank 
-056d 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-056e 1fe17e03 and pdata ,0x03 ,pdata 
-056f c1018000 rtneq 0x03 
-0570 7046c601 jam 1 ,mem_le_start_encrypt_timer 
-0571 20600000 rtn 
+0572 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+0573 207a0000 rtn blank 
+0574 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0575 1fe17e03 and pdata ,0x03 ,pdata 
+0576 c1018000 rtneq 0x03 
+0577 7046c601 jam 1 ,mem_le_start_encrypt_timer 
+0578 20600000 rtn 
 
 p_le_parse:
-0572 c6078000 rtnmark1 mark_old_packet 
-0573 20405890 call le_fifo_check_full 
-0574 247a0000 nrtn blank 
-0575 680082d9 fetch 1 ,mem_le_rxbuf 
-0576 1fe17e03 and pdata ,0x3 ,pdata 
-0577 6000c50c store 1 ,mem_le_packet_llid 
-0578 e8c08000 ifetch 1 ,contr 
-0579 1fe17e1f and pdata ,0x1f ,pdata 
-057a 6000c50b store 1 ,mem_le_packet_size 
-057b 207a0000 rtn blank 
-057c 18c27e00 copy contr ,pdata 
-057d 6001450d store 2 ,mem_le_payload_ptr 
-057e 6800c50c fetch 1 ,mem_le_packet_llid 
-057f c0018581 beq llid_le_ll ,p_le_parse_ll 
-0580 2020568d branch le_parse_l2cap 
+0579 c6078000 rtnmark1 mark_old_packet 
+057a 20405890 call le_fifo_check_full 
+057b 247a0000 nrtn blank 
+057c 680082d9 fetch 1 ,mem_le_rxbuf 
+057d 1fe17e03 and pdata ,0x3 ,pdata 
+057e 6000c50c store 1 ,mem_le_packet_llid 
+057f e8c08000 ifetch 1 ,contr 
+0580 1fe17e1f and pdata ,0x1f ,pdata 
+0581 6000c50b store 1 ,mem_le_packet_size 
+0582 207a0000 rtn blank 
+0583 18c27e00 copy contr ,pdata 
+0584 6001450d store 2 ,mem_le_payload_ptr 
+0585 6800c50c fetch 1 ,mem_le_packet_llid 
+0586 c0018588 beq llid_le_ll ,p_le_parse_ll 
+0587 2020568d branch le_parse_l2cap 
 
 p_le_parse_ll:
-0581 680082db fetch 1 ,mem_le_rxbuf + 2 
-0582 c0008584 beq ll_channel_map_req ,p_le_parse_channel_map_req 
-0583 20205c65 branch le_parse_ll + 1 
+0588 680082db fetch 1 ,mem_le_rxbuf + 2 
+0589 c000858b beq ll_channel_map_req ,p_le_parse_channel_map_req 
+058a 20205c65 branch le_parse_ll + 1 
 
 p_le_parse_channel_map_req:
-0584 e8c28000 ifetch 5 ,contr 
-0585 6002c3ce store 5 ,mem_le_new_map 
-0586 e8c10000 ifetch 2 ,contr 
-0587 6001045f store 2 ,mem_le_instant 
-0588 20205c8a branch le_parse_channel_map_req + 7 
+058b e8c28000 ifetch 5 ,contr 
+058c 6002c3ce store 5 ,mem_le_new_map 
+058d e8c10000 ifetch 2 ,contr 
+058e 6001045f store 2 ,mem_le_instant 
+058f 20205c8a branch le_parse_channel_map_req + 7 
 
 p_le_parse_l2cap:
-0589 e8c10000 ifetch 2 ,contr 
-058a c002058d beq le_l2cap_cid_att ,p_le_parse_att 
-058b c00305ba beq le_l2cap_cid_smp ,p_le_parse_smp 
-058c 20205698 branch le_parse_l2cap + 11 
+0590 e8c10000 ifetch 2 ,contr 
+0591 c0020594 beq le_l2cap_cid_att ,p_le_parse_att 
+0592 c00305c1 beq le_l2cap_cid_smp ,p_le_parse_smp 
+0593 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
-058d 20407ea5 call store_contr 
-058e 2040056b call p_mouse_le_reconn_write_enable_timer_reinit 
-058f 20407e9f call get_contr 
-0590 e8c18000 ifetch 3 ,contr 
-0591 60018477 store 3 ,mem_le_att_opcode 
-0592 c008059c beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
-0593 1fec8400 rshift8 pdata ,temp 
-0594 18467c24 sub temp ,0x24 ,null 
-0595 202105aa branch p_le_parse_att1 ,positive 
-0596 d84047c6 arg mem_mouse_le_uuid_sup ,temp 
-0597 600944bc storet 2 ,mem_ui_le_uuid_table 
-0598 204058ad call le_parse_att + 2 
-0599 58008e7a setarg 0x8e7a 
-059a 600144bc store 2 ,mem_ui_le_uuid_table 
-059b 20600000 rtn 
+0594 20407ea5 call store_contr 
+0595 20400572 call p_mouse_le_reconn_write_enable_timer_reinit 
+0596 20407e9f call get_contr 
+0597 e8c18000 ifetch 3 ,contr 
+0598 60018477 store 3 ,mem_le_att_opcode 
+0599 c00805a3 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+059a 1fec8400 rshift8 pdata ,temp 
+059b 18467c24 sub temp ,0x24 ,null 
+059c 202105b1 branch p_le_parse_att1 ,positive 
+059d d84047c6 arg mem_mouse_le_uuid_sup ,temp 
+059e 600944bc storet 2 ,mem_ui_le_uuid_table 
+059f 204058ad call le_parse_att + 2 
+05a0 58008e7a setarg 0x8e7a 
+05a1 600144bc store 2 ,mem_ui_le_uuid_table 
+05a2 20600000 rtn 
 
 p_le_parse_att_read_by_group_type_request:
-059c 204059fa call le_parse_att_read_by_group_type_request 
-059d 20405879 call le_fifo_get_last_tx_ptr 
-059e 18c08c07 increase 7 ,contr 
-059f e8c08000 ifetch 1 ,contr 
-05a0 c1888000 rtnne attop_read_by_group_type_response 
-05a1 18c08c05 increase 5 ,contr 
-05a2 e8c10000 ifetch 2 ,contr 
-05a3 d8401812 arg uuid_service_hids ,temp 
-05a4 98467c00 isub temp ,null 
-05a5 24628000 nrtn zero 
-05a6 18c08dfc increase -4 ,contr 
-05a7 5800002b setarg 0x2b 
-05a8 e0c10000 istore 2 ,contr 
-05a9 20600000 rtn 
+05a3 204059fa call le_parse_att_read_by_group_type_request 
+05a4 20405879 call le_fifo_get_last_tx_ptr 
+05a5 18c08c07 increase 7 ,contr 
+05a6 e8c08000 ifetch 1 ,contr 
+05a7 c1888000 rtnne attop_read_by_group_type_response 
+05a8 18c08c05 increase 5 ,contr 
+05a9 e8c10000 ifetch 2 ,contr 
+05aa d8401812 arg uuid_service_hids ,temp 
+05ab 98467c00 isub temp ,null 
+05ac 24628000 nrtn zero 
+05ad 18c08dfc increase -4 ,contr 
+05ae 5800002b setarg 0x2b 
+05af e0c10000 istore 2 ,contr 
+05b0 20600000 rtn 
 
 p_le_parse_att1:
-05aa c00505ac beq attop_read_request ,p_le_parse_att_read_request 
-05ab 202058ad branch le_parse_att + 2 
+05b1 c00505b3 beq attop_read_request ,p_le_parse_att_read_request 
+05b2 202058ad branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-05ac 68090478 fetcht 2 ,mem_le_att_handle 
-05ad 6800c4e9 fetch 1 ,mem_le_configuration 
-05ae c28185b3 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+05b3 68090478 fetcht 2 ,mem_le_att_handle 
+05b4 6800c4e9 fetch 1 ,mem_le_configuration 
+05b5 c28185ba bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-05af 68010478 fetch 2 ,mem_le_att_handle 
-05b0 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
-05b1 68090478 fetcht 2 ,mem_le_att_handle 
-05b2 202059bf branch le_send_att_read_response 
+05b6 68010478 fetch 2 ,mem_le_att_handle 
+05b7 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
+05b8 68090478 fetcht 2 ,mem_le_att_handle 
+05b9 202059bf branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-05b3 680144fa fetch 2 ,mem_le_pairing_handle 
-05b4 98467c00 isub temp ,null 
-05b5 242285af nbranch p_le_send_att_read_response ,zero 
-05b6 20405a42 call le_check_encrypt_state 
-05b7 243405af nbranch p_le_send_att_read_response ,user 
-05b8 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
-05b9 20205a77 branch le_send_att_error_response 
+05ba 680144fa fetch 2 ,mem_le_pairing_handle 
+05bb 98467c00 isub temp ,null 
+05bc 242285b6 nbranch p_le_send_att_read_response ,zero 
+05bd 20405a42 call le_check_encrypt_state 
+05be 243405b6 nbranch p_le_send_att_read_response ,user 
+05bf 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+05c0 20205a77 branch le_send_att_error_response 
 
 p_le_parse_smp:
-05ba e8c08000 ifetch 1 ,contr 
-05bb c00285bd beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-05bc 20205af5 branch le_parse_smp + 1 
+05c1 e8c08000 ifetch 1 ,contr 
+05c2 c00285c4 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+05c3 20205af5 branch le_parse_smp + 1 
 
 p_le_parse_smp_pairing_failed:
-05bd 7011c582 jam zcode_82 ,mem_zcode_temp_param0 
-05be 20200703 branch p_zcode_entrance 
+05c4 7011c582 jam zcode_82 ,mem_zcode_temp_param0 
+05c5 2020070a branch p_zcode_entrance 
 
 p_le_adv_not_match:
-05bf 68008016 fetch 1 ,mem_le_ch_mapped 
-05c0 c093d6f2 bne 39 ,le_adv_loop 
-05c1 204005c5 call p_le_adv_random_delay 
-05c2 d8e00000 arg le_adv_interval_timer ,queue 
-05c3 68014482 fetch 2 ,mem_le_adv_interval 
-05c4 20207f08 branch timer_init 
+05c6 68008016 fetch 1 ,mem_le_ch_mapped 
+05c7 c093d6f2 bne 39 ,le_adv_loop 
+05c8 204005cc call p_le_adv_random_delay 
+05c9 d8e00000 arg le_adv_interval_timer ,queue 
+05ca 68014482 fetch 2 ,mem_le_adv_interval 
+05cb 20207f08 branch timer_init 
 
 p_le_adv_random_delay:
-05c5 180a7e00 random pdata 
-05c6 d84001ff arg 0x1ff ,temp 
-05c7 98417e00 iand temp ,pdata 
-05c8 1fe0fefa add pdata ,250 ,pdata 
-05c9 20203cbe branch delay 
+05cc 180a7e00 random pdata 
+05cd d84001ff arg 0x1ff ,temp 
+05ce 98417e00 iand temp ,pdata 
+05cf 1fe0fefa add pdata ,250 ,pdata 
+05d0 20203cbe branch delay 
 
 p_le_lpm_setmult:
-05ca 7855fc00 disable wake 
-05cb 203705cd branch p_le_lpm_set_mult_attempt ,attempt 
-05cc 2436d806 nbranch le_lpm_lost ,match 
+05d1 7855fc00 disable wake 
+05d2 203705d4 branch p_le_lpm_set_mult_attempt ,attempt 
+05d3 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-05cd 20402bcb call lpm_match 
-05ce 680140c1 fetch 2 ,mem_rx_window_sniff 
-05cf 6001044d store 2 ,mem_le_receive_window 
-05d0 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-05d1 2fe00603 compare 3 ,pdata ,3 
-05d2 2420abde nbranch lpm_mult_short ,true 
-05d3 202057fb branch le_lpm_set_mult_attempt + 3 
+05d4 20402bcb call lpm_match 
+05d5 680140c1 fetch 2 ,mem_rx_window_sniff 
+05d6 6001044d store 2 ,mem_le_receive_window 
+05d7 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+05d8 2fe00603 compare 3 ,pdata ,3 
+05d9 2420abde nbranch lpm_mult_short ,true 
+05da 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-05d4 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-05d5 247a0000 nrtn blank 
-05d6 68008478 fetch 1 ,mem_le_att_handle 
-05d7 1fe67e1a sub pdata ,26 ,pdata 
-05d8 24628000 nrtn zero 
-05d9 20203d60 branch mouse_le_write_enable 
+05db 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+05dc 247a0000 nrtn blank 
+05dd 68008478 fetch 1 ,mem_le_att_handle 
+05de 1fe67e1a sub pdata ,26 ,pdata 
+05df 24628000 nrtn zero 
+05e0 20203d60 branch mouse_le_write_enable 
 
 p_twspi_reset:
-05da 68108077 hfetch 1 ,core_gpio_out3 
-05db 1fe17efd and_into 0xfd ,pdata 
-05dc 60108077 hstore 1 ,core_gpio_out3 
-05dd 68188073 hfetcht 1 ,core_gpio_oe3 
-05de 18418402 or_into 0x2 ,temp 
-05df 60188073 hstoret 1 ,core_gpio_oe3 
-05e0 204063ee call twspi_disable 
-05e1 184104fd and_into 0xfd ,temp 
-05e2 2000000d nop 13 
-05e3 204005e7 call p_twspi_enable 
-05e4 60188073 hstoret 1 ,core_gpio_oe3 
-05e5 20600000 rtn 
+05e1 68108077 hfetch 1 ,core_gpio_out3 
+05e2 1fe17efd and_into 0xfd ,pdata 
+05e3 60108077 hstore 1 ,core_gpio_out3 
+05e4 68188073 hfetcht 1 ,core_gpio_oe3 
+05e5 18418402 or_into 0x2 ,temp 
+05e6 60188073 hstoret 1 ,core_gpio_oe3 
+05e7 204063ee call twspi_disable 
+05e8 184104fd and_into 0xfd ,temp 
+05e9 2000000d nop 13 
+05ea 204005ee call p_twspi_enable 
+05eb 60188073 hstoret 1 ,core_gpio_oe3 
+05ec 20600000 rtn 
 
 p_spid_init:
-05e6 204064dd call spid_init_common 
+05ed 204064dd call spid_init_common 
 
 p_twspi_enable:
-05e7 68108081 hfetch 1 ,core_gpio_sel1 
-05e8 79207e00 set1 0 ,pdata 
-05e9 793ffe01 set0 1 ,pdata 
-05ea 793ffe03 set0 3 ,pdata 
-05eb 60108081 hstore 1 ,core_gpio_sel1 
-05ec 20600000 rtn 
+05ee 68108081 hfetch 1 ,core_gpio_sel1 
+05ef 79207e00 set1 0 ,pdata 
+05f0 793ffe01 set0 1 ,pdata 
+05f1 793ffe03 set0 3 ,pdata 
+05f2 60108081 hstore 1 ,core_gpio_sel1 
+05f3 20600000 rtn 
 
 p_page_wait_fhs_reply_ok:
-05ed 7011c500 jam zcode_00 ,mem_zcode_temp_param0 
-05ee 20200703 branch p_zcode_entrance 
+05f4 7011c500 jam zcode_00 ,mem_zcode_temp_param0 
+05f5 2020070a branch p_zcode_entrance 
 
 p_role_switch_master:
-05ef 204021c9 call role_switch_check 
-05f0 24740000 nrtn user 
+05f6 204021c9 call role_switch_check 
+05f7 24740000 nrtn user 
 
 p_wait_role_switch_anchor:
-05f1 78547c00 disable user 
-05f2 70001120 jam param_newconnto ,mem_newconnto_counter 
-05f3 793f800b set0 mark_fhs_already_good ,mark 
-05f4 793f802d set0 mark_role_switch_receive_fhs ,mark 
+05f8 78547c00 disable user 
+05f9 70001120 jam param_newconnto ,mem_newconnto_counter 
+05fa 793f800b set0 mark_fhs_already_good ,mark 
+05fb 793f802d set0 mark_role_switch_receive_fhs ,mark 
 
 p_roles_waitfhs_loop:
-05f5 20402a4f call rf_setup_time_master_slot 
-05f6 204022e6 call master_recv_packet 
-05f7 c50585fc bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
-05f8 20402455 call new_conn_timeout 
-05f9 243a05f5 nbranch p_roles_waitfhs_loop ,blank 
-05fa c5168604 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
-05fb 202021ec branch role_switch_fail_master 
+05fc 20402a4f call rf_setup_time_master_slot 
+05fd 204022e6 call master_recv_packet 
+05fe c5058603 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+05ff 20402455 call new_conn_timeout 
+0600 243a05fc nbranch p_roles_waitfhs_loop ,blank 
+0601 c516860b bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0602 202021ec branch role_switch_fail_master 
 
 p_roles_replyto_fhs:
-05fc 20402a4d call rf_setup_time_slave_slot 
-05fd d8200010 arg type_id ,type 
-05fe 204022dc call master_send_packet 
-05ff 7920002d set1 mark_role_switch_receive_fhs ,mark 
-0600 793f800b set0 mark_fhs_already_good ,mark 
-0601 18000801 force 1 ,am_addr 
-0602 70001102 jam 2 ,mem_newconnto_counter 
-0603 202005f5 branch p_roles_waitfhs_loop 
+0603 20402a4d call rf_setup_time_slave_slot 
+0604 d8200010 arg type_id ,type 
+0605 204022dc call master_send_packet 
+0606 7920002d set1 mark_role_switch_receive_fhs ,mark 
+0607 793f800b set0 mark_fhs_already_good ,mark 
+0608 18000801 force 1 ,am_addr 
+0609 70001102 jam 2 ,mem_newconnto_counter 
+060a 202005fc branch p_roles_waitfhs_loop 
 
 p_roles_replyto_fhs1:
-0604 68020165 fetch 4 ,mem_clke_bt 
-0605 1fe0fe08 pincrease 8 
-0606 60020165 store 4 ,mem_clke_bt 
-0607 202021f8 branch roles_replyto_fhs + 4 
+060b 68020165 fetch 4 ,mem_clke_bt 
+060c 1fe0fe08 pincrease 8 
+060d 60020165 store 4 ,mem_clke_bt 
+060e 202021f8 branch roles_replyto_fhs + 4 
 
 p_process_dmh:
-0608 c516264d bmark1 mark_first_packet ,end_of_packet 
-0609 2020258f branch process_dmh + 1 
+060f c516264d bmark1 mark_first_packet ,end_of_packet 
+0610 2020258f branch process_dmh + 1 
 
 p_quit_connection_cont:
-060a 204033af call app_disconn_reason_collect_bt 
-060b 204026e9 call sniff_exit 
-060c 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-060d 20407d86 call ui_ipc_send_event 
-060e 20405cf7 call init_lmp_work 
-060f 20404d6b call l2cap_init_work 
-0610 2020246e branch quit_connection_cont + 8 
+0611 204033af call app_disconn_reason_collect_bt 
+0612 204026e9 call sniff_exit 
+0613 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0614 20407d86 call ui_ipc_send_event 
+0615 20405cf7 call init_lmp_work 
+0616 20404d6b call l2cap_init_work 
+0617 2020246e branch quit_connection_cont + 8 
 
 p_prepare_tx:
-0611 68008030 fetch 1 ,mem_state 
-0612 2feffe00 isolate1 state_inconn ,pdata 
-0613 20408615 call p_bt_power_ctrl ,true 
-0614 2020248a branch prepare_tx + 1 
+0618 68008030 fetch 1 ,mem_state 
+0619 2feffe00 isolate1 state_inconn ,pdata 
+061a 2040861c call p_bt_power_ctrl ,true 
+061b 2020248a branch prepare_tx + 1 
 
 p_bt_power_ctrl:
-0615 68008047 fetch 1 ,mem_arq 
-0616 2feffe03 isolate1 wack ,pdata 
-0617 2040869c call power_ctrl_pac_succ_decrs ,true 
-0618 24408698 ncall power_ctrl_pac_succ_incrs ,true 
-0619 202006a6 branch power_ctrl_start 
+061c 68008047 fetch 1 ,mem_arq 
+061d 2feffe03 isolate1 wack ,pdata 
+061e 204086a3 call power_ctrl_pac_succ_decrs ,true 
+061f 2440869f ncall power_ctrl_pac_succ_incrs ,true 
+0620 202006ad branch power_ctrl_start 
 
 p_slave_conn_recv_packet:
-061a 204024f0 call slave_receive_master_slot 
-061b 242c28f9 nbranch shutdown_radio ,sync 
-061c 204029bb call save_rssi 
-061d 2040006a call p_rssi_signal 
-061e 20202518 branch slave_conn_recv_packet + 4 
+0621 204024f0 call slave_receive_master_slot 
+0622 242c28f9 nbranch shutdown_radio ,sync 
+0623 204029bb call save_rssi 
+0624 2040006a call p_rssi_signal 
+0625 20202518 branch slave_conn_recv_packet + 4 
 
 p_lpm_dispatch:
-061f c6130000 rtnmark1 mark_24g 
-0620 20402afa call lpo_calibration 
-0621 6801c16f fetch 3 ,mem_clks_per_lpo 
-0622 207a0000 rtn blank 
-0623 6800c091 fetch 1 ,mem_lpm_mode 
-0624 207a0000 rtn blank 
-0625 6800c6cf fetch 1 ,mem_adc_low_volatage_led_timer_count 
-0626 1fe67c0a sub pdata ,10 ,null 
-0627 20610000 rtn positive 
-0628 6800c65a fetch 1 ,mem_ssp_enable 
-0629 203a062c branch p_lpm_dispatch_next ,blank 
-062a 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+0626 c6130000 rtnmark1 mark_24g 
+0627 20402afa call lpo_calibration 
+0628 6801c16f fetch 3 ,mem_clks_per_lpo 
+0629 207a0000 rtn blank 
+062a 6800c091 fetch 1 ,mem_lpm_mode 
 062b 207a0000 rtn blank 
+062c 6800c6cf fetch 1 ,mem_adc_low_volatage_led_timer_count 
+062d 1fe67c0a sub pdata ,10 ,null 
+062e 20610000 rtn positive 
+062f 6800c65a fetch 1 ,mem_ssp_enable 
+0630 203a0633 branch p_lpm_dispatch_next ,blank 
+0631 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+0632 207a0000 rtn blank 
 
 p_lpm_dispatch_next:
-062c 6800c4c0 fetch 1 ,mem_le_sc_calc 
-062d 247a0000 nrtn blank 
-062e 20402c3a call lpm_check_wake_lock 
-062f 247a0000 nrtn blank 
-0630 6800c040 fetch 1 ,mem_context 
-0631 2fe00e03 compare 3 ,pdata ,0x7 
-0632 2420ab9d nbranch lpm_dispatch_unconn ,true 
-0633 68014042 fetch 2 ,mem_context + coffset_tsniff 
-0634 d840ffff arg 0xffff ,temp 
-0635 98467c00 isub temp ,null 
-0636 20628000 rtn zero 
-0637 20202b7d branch lpm_dispatch_next + 9 
+0633 6800c4c0 fetch 1 ,mem_le_sc_calc 
+0634 247a0000 nrtn blank 
+0635 20402c3a call lpm_check_wake_lock 
+0636 247a0000 nrtn blank 
+0637 6800c040 fetch 1 ,mem_context 
+0638 2fe00e03 compare 3 ,pdata ,0x7 
+0639 2420ab9d nbranch lpm_dispatch_unconn ,true 
+063a 68014042 fetch 2 ,mem_context + coffset_tsniff 
+063b d840ffff arg 0xffff ,temp 
+063c 98467c00 isub temp ,null 
+063d 20628000 rtn zero 
+063e 20202b7d branch lpm_dispatch_next + 9 
 
 p_lpm_set_mult:
-0638 7855fc00 disable wake 
-0639 68008030 fetch 1 ,mem_state 
-063a c4008000 rtnbit0 state_insniff 
-063b 2436abd0 nbranch lpm_not_match ,match 
-063c 20402bcb call lpm_match 
-063d 680140c1 fetch 2 ,mem_rx_window_sniff 
-063e 6001003e store 2 ,mem_rx_window 
-063f 68008047 fetch 1 ,mem_arq 
-0640 c281abde bbit1 wack ,lpm_mult_short 
-0641 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0642 20405274 call l2cap_malloc_is_fifo_empty 
-0643 243a2bde nbranch lpm_mult_short ,blank 
-0644 205a0646 call p_lpm_set_attemp_timeout ,blank 
-0645 20202bbe branch lpm_set_mult + 13 
+063f 7855fc00 disable wake 
+0640 68008030 fetch 1 ,mem_state 
+0641 c4008000 rtnbit0 state_insniff 
+0642 2436abd0 nbranch lpm_not_match ,match 
+0643 20402bcb call lpm_match 
+0644 680140c1 fetch 2 ,mem_rx_window_sniff 
+0645 6001003e store 2 ,mem_rx_window 
+0646 68008047 fetch 1 ,mem_arq 
+0647 c281abde bbit1 wack ,lpm_mult_short 
+0648 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0649 20405274 call l2cap_malloc_is_fifo_empty 
+064a 243a2bde nbranch lpm_mult_short ,blank 
+064b 205a064d call p_lpm_set_attemp_timeout ,blank 
+064c 20202bbe branch lpm_set_mult + 13 
 
 p_lpm_set_attemp_timeout:
-0646 70008a01 jam 1 ,mem_current_sniff_attempt 
-0647 70008b00 jam 0 ,mem_current_sniff_timeout 
-0648 20600000 rtn 
+064d 70008a01 jam 1 ,mem_current_sniff_attempt 
+064e 70008b00 jam 0 ,mem_current_sniff_timeout 
+064f 20600000 rtn 
 
 p_mouse_bb_disconnected:
-0649 7011c510 jam zcode_10 ,mem_zcode_temp_param0 
-064a 20200703 branch p_zcode_entrance 
+0650 7011c510 jam zcode_10 ,mem_zcode_temp_param0 
+0651 2020070a branch p_zcode_entrance 
 
 p_hid_rx_process:
-064b 7011c511 jam zcode_11 ,mem_zcode_temp_param0 
-064c 20200703 branch p_zcode_entrance 
+0652 7011c511 jam zcode_11 ,mem_zcode_temp_param0 
+0653 2020070a branch p_zcode_entrance 
 
 p_parse_lmp_accepted:
-064d 68008552 fetch 1 ,mem_rxbuf + 1 
-064e 600084c9 store 1 ,mem_lmi_accepted_opcode 
-064f c0098651 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
-0650 20205db4 branch parse_lmp_accepted + 3 
+0654 68008552 fetch 1 ,mem_rxbuf + 1 
+0655 600084c9 store 1 ,mem_lmi_accepted_opcode 
+0656 c0098658 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+0657 20205db4 branch parse_lmp_accepted + 3 
 
 p_parse_lmp_accepted_switch:
-0651 20405dcf call parse_lmp_accepted_switch 
-0652 704b0101 jam 1 ,mem_bt_rcvd_switch_req_accept 
-0653 6800cb03 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0654 207a0000 rtn blank 
-0655 704b0302 jam 2 ,mem_bt_send_lmp_setup_complete 
-0656 20600000 rtn 
+0658 20405dcf call parse_lmp_accepted_switch 
+0659 704b0101 jam 1 ,mem_bt_rcvd_switch_req_accept 
+065a 6800cb03 fetch 1 ,mem_bt_send_lmp_setup_complete 
+065b 207a0000 rtn blank 
+065c 704b0302 jam 2 ,mem_bt_send_lmp_setup_complete 
+065d 20600000 rtn 
 
 p_send_lmp:
-0657 7011c520 jam zcode_20 ,mem_zcode_temp_param0 
-0658 20200703 branch p_zcode_entrance 
+065e 7011c520 jam zcode_20 ,mem_zcode_temp_param0 
+065f 2020070a branch p_zcode_entrance 
 
 p_process_conn_sm:
-0659 204062bc call lmo_fifo_check 
-065a 247a0000 nrtn blank 
+0660 204062bc call lmo_fifo_check 
+0661 247a0000 nrtn blank 
 
 p_process_conn_sm_continue:
-065b 68008055 fetch 1 ,mem_conn_sm 
-065c 207a0000 rtn blank 
-065d c002067b beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
-065e c0080660 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
-065f 20206320 branch process_conn_sm_continue + 2 
+0662 68008055 fetch 1 ,mem_conn_sm 
+0663 207a0000 rtn blank 
+0664 c0020682 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+0665 c0080667 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+0666 20206320 branch process_conn_sm_continue + 2 
 
 p_host_creat_conn_wait_switch:
-0660 6800c55b fetch 1 ,mem_switch_flag 
-0661 c1000000 rtneq switch_flag_init 
-0662 c0008664 beq switch_flag_accept ,p_host_create_conn_switch_accept 
-0663 2020635f branch host_creat_conn_wait_switch + 3 
+0667 6800c55b fetch 1 ,mem_switch_flag 
+0668 c1000000 rtneq switch_flag_init 
+0669 c000866b beq switch_flag_accept ,p_host_create_conn_switch_accept 
+066a 2020635f branch host_creat_conn_wait_switch + 3 
 
 p_host_create_conn_switch_accept:
-0664 20748000 rtn master 
+066b 20748000 rtn master 
 
 p_host_create_conn_auth_pair:
-0665 6800816d fetch 1 ,mem_connection_options 
-0666 c2800668 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
-0667 20206399 branch host_create_conn_auth_pair + 1 
+066c 6800816d fetch 1 ,mem_connection_options 
+066d c280066f bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+066e 20206399 branch host_create_conn_auth_pair + 1 
 
 p_host_create_conn_auth_pair_true:
-0668 6800cb03 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0669 c000e39d beq 1 ,host_create_conn_auth_pair_true 
-066a 6800c1bd fetch 1 ,mem_link_key_exists 
-066b 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
-066c 680084d1 fetch 1 ,mem_lmp_conn_state 
-066d c4018000 rtnbit0 sent_setup_complete 
-066e c4010000 rtnbit0 received_setup_complete 
-066f 6800cb02 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0670 207a0000 rtn blank 
-0671 704b0200 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
-0672 680204e9 fetch 4 ,mem_aurand_send_delay_time 
-0673 d8400014 arg 20 ,temp 
-0674 98408400 iadd temp ,temp 
-0675 1c427e00 copy clkn_bt ,pdata 
-0676 98467c00 isub temp ,null 
-0677 24210679 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
-0678 20206349 branch host_create_conn_auth 
+066f 6800cb03 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0670 c000e39d beq 1 ,host_create_conn_auth_pair_true 
+0671 6800c1bd fetch 1 ,mem_link_key_exists 
+0672 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
+0673 680084d1 fetch 1 ,mem_lmp_conn_state 
+0674 c4018000 rtnbit0 sent_setup_complete 
+0675 c4010000 rtnbit0 received_setup_complete 
+0676 6800cb02 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0677 207a0000 rtn blank 
+0678 704b0200 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+0679 680204e9 fetch 4 ,mem_aurand_send_delay_time 
+067a d8400014 arg 20 ,temp 
+067b 98408400 iadd temp ,temp 
+067c 1c427e00 copy clkn_bt ,pdata 
+067d 98467c00 isub temp ,null 
+067e 24210680 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+067f 20206349 branch host_create_conn_auth 
 
 p_bt_send_max_slot_req_accept_after_switch_wait:
-0679 704b0201 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-067a 20600000 rtn 
+0680 704b0201 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0681 20600000 rtn 
 
 p_host_create_conn_send_conn_req:
-067b 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
-067c 2020636f branch host_create_conn_send_conn_req 
+0682 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
+0683 2020636f branch host_create_conn_send_conn_req 
 
 p_check_51cmd_once_continue:
-067d 204062bc call lmo_fifo_check 
-067e 243a7ddb nbranch check_51cmd_restore ,blank 
-067f 68008a99 fetch 1 ,mem_fifo_temp 
-0680 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-0681 c00f8688 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
-0682 c010068b beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
-0683 c0090685 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-0684 20207dca branch check_51cmd_once_continue + 2 
+0684 204062bc call lmo_fifo_check 
+0685 243a7ddb nbranch check_51cmd_restore ,blank 
+0686 68008a99 fetch 1 ,mem_fifo_temp 
+0687 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+0688 c00f868f beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0689 c0100692 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+068a c009068c beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+068b 20207dca branch check_51cmd_once_continue + 2 
 
 p_check_51cmd_ble_update_connect_param:
-0685 20405890 call le_fifo_check_full 
-0686 247a0000 nrtn blank 
-0687 20205abf branch le_l2cap_tx_update_req 
+068c 20405890 call le_fifo_check_full 
+068d 247a0000 nrtn blank 
+068e 20205abf branch le_l2cap_tx_update_req 
 
 p_flash_store_le_reconn_info:
-0688 70018534 jam rec_4_mode ,mem_record_bt_mode 
-0689 6803044f fetch 6 ,mem_le_plap 
-068a 2020068d branch p_flash_store_reconn_info 
+068f 70018534 jam rec_4_mode ,mem_record_bt_mode 
+0690 6803044f fetch 6 ,mem_le_plap 
+0691 20200694 branch p_flash_store_reconn_info 
 
 p_flash_store_bd_reconn_info:
-068b 70018533 jam rec_3_mode ,mem_record_bt_mode 
-068c 68030040 fetch 6 ,mem_plap 
+0692 70018533 jam rec_3_mode ,mem_record_bt_mode 
+0693 68030040 fetch 6 ,mem_plap 
 
 p_flash_store_reconn_info:
-068d 60030186 store 6 ,mem_temp_lap 
+0694 60030186 store 6 ,mem_temp_lap 
 
 p_mouse_store_remote_bdaddr:
-068e 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-068f c4038000 rtnbit0 mouse_store_eeprom_flag 
-0690 d8e00007 arg mouse_store_eeprom_flag ,queue 
-0691 204043d2 call mouse_disable_function_flag 
-0692 204042e8 call mouse_check_device_addr 
+0695 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+0696 c4038000 rtnbit0 mouse_store_eeprom_flag 
+0697 d8e00007 arg mouse_store_eeprom_flag ,queue 
+0698 204043d2 call mouse_disable_function_flag 
+0699 204042e8 call mouse_check_device_addr 
 
 p_mouse_unplug_clean_bdaddr:
-0693 204042fb call mouse_before_store_reconn_info 
-0694 2020032f branch p_mouse_store_flash_device_info 
+069a 204042fb call mouse_before_store_reconn_info 
+069b 2020032f branch p_mouse_store_flash_device_info 
 
 power_ctrl_pac_succ_cnt_init:
-0695 704d3e01 jam 1 ,mem_power_ctrl_level 
-0696 704d3b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0697 20600000 rtn 
+069c 704d3e01 jam 1 ,mem_power_ctrl_level 
+069d 704d3b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+069e 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0698 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0699 1fe0fe01 increase 1 ,pdata 
-069a 6000cd3b store 1 ,mem_power_ctrl_pac_succ_cnt 
-069b 20600000 rtn 
+069f 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06a0 1fe0fe01 increase 1 ,pdata 
+06a1 6000cd3b store 1 ,mem_power_ctrl_pac_succ_cnt 
+06a2 20600000 rtn 
 
 power_ctrl_pac_succ_decrs:
-069c 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-069d 1fe67c02 sub pdata ,2 ,null 
-069e 244106a4 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-069f 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06a0 c1000000 rtneq 0 
-06a1 1fe0ffff increase -1 ,pdata 
-06a2 6000cd3b store 1 ,mem_power_ctrl_pac_succ_cnt 
-06a3 20600000 rtn 
+06a3 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06a4 1fe67c02 sub pdata ,2 ,null 
+06a5 244106ab ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+06a6 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06a7 c1000000 rtneq 0 
+06a8 1fe0ffff increase -1 ,pdata 
+06a9 6000cd3b store 1 ,mem_power_ctrl_pac_succ_cnt 
+06aa 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-06a4 704d3b03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-06a5 20600000 rtn 
+06ab 704d3b03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+06ac 20600000 rtn 
 
 power_ctrl_start:
-06a6 68014682 fetch 2 ,mem_ui_state_map 
-06a7 c3858000 rtnbit1 ui_state_ble_adv 
-06a8 c3838000 rtnbit1 ui_state_bt_reconnect 
-06a9 c3830000 rtnbit1 ui_state_bt_discovery 
-06aa da204cc4 arg mem_rssi_signal_buf ,rega 
-06ab 20400279 call p_rssi_average 
-06ac 6008cd3c storet 1 ,mem_rssi_avg_received 
-06ad 58000082 setarg rssi_dis_max_24g 
-06ae c51306b0 bmark1 mark_24g ,power_ctrl_start_next 
-06af 58000080 setarg rssi_dis_max_ble 
+06ad 68014682 fetch 2 ,mem_ui_state_map 
+06ae c3858000 rtnbit1 ui_state_ble_adv 
+06af c3838000 rtnbit1 ui_state_bt_reconnect 
+06b0 c3830000 rtnbit1 ui_state_bt_discovery 
+06b1 da204cc4 arg mem_rssi_signal_buf ,rega 
+06b2 20400279 call p_rssi_average 
+06b3 6008cd3c storet 1 ,mem_rssi_avg_received 
+06b4 58000082 setarg rssi_dis_max_24g 
+06b5 c51306b7 bmark1 mark_24g ,power_ctrl_start_next 
+06b6 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-06b0 98467c00 isub temp ,null 
-06b1 242106c8 nbranch power_ctrl_txpower_incrs_force ,positive 
-06b2 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06b3 1fe67c02 sub pdata ,2 ,null 
-06b4 242106b8 nbranch power_ctrl_txpower_decrs_check ,positive 
-06b5 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06b6 c00006c9 beq 0 ,power_ctrl_txpower_incrs 
-06b7 20600000 rtn 
+06b7 98467c00 isub temp ,null 
+06b8 242106cf nbranch power_ctrl_txpower_incrs_force ,positive 
+06b9 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06ba 1fe67c02 sub pdata ,2 ,null 
+06bb 242106bf nbranch power_ctrl_txpower_decrs_check ,positive 
+06bc 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06bd c00006d0 beq 0 ,power_ctrl_txpower_incrs 
+06be 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-06b8 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-06b9 c1900000 rtnne 32 
-06ba 704d3b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+06bf 6800cd3b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06c0 c1900000 rtnne 32 
+06c1 704d3b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-06bb 6808cd3c fetcht 1 ,mem_rssi_avg_received 
-06bc 58000077 setarg rssi_dis_min_24g 
-06bd c51306bf bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-06be 58000075 setarg rssi_dis_min_ble 
+06c2 6808cd3c fetcht 1 ,mem_rssi_avg_received 
+06c3 58000077 setarg rssi_dis_min_24g 
+06c4 c51306c6 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+06c5 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-06bf 98467c00 isub temp ,null 
-06c0 24610000 nrtn positive 
-06c1 6800cd3e fetch 1 ,mem_power_ctrl_level 
-06c2 c00006d0 beq 0 ,power_ctrl_decrs_level0 
-06c3 1fe0ffff increase -1 ,pdata 
-06c4 6000cd3e store 1 ,mem_power_ctrl_level 
-06c5 c00006d0 beq 0 ,power_ctrl_decrs_level0 
+06c6 98467c00 isub temp ,null 
+06c7 24610000 nrtn positive 
+06c8 6800cd3e fetch 1 ,mem_power_ctrl_level 
+06c9 c00006d7 beq 0 ,power_ctrl_decrs_level0 
+06ca 1fe0ffff increase -1 ,pdata 
+06cb 6000cd3e store 1 ,mem_power_ctrl_level 
+06cc c00006d7 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-06c6 7041de00 jam tx_power_0db ,mem_tx_power 
-06c7 20600000 rtn 
+06cd 7041de00 jam tx_power_0db ,mem_tx_power 
+06ce 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-06c8 704d3b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+06cf 704d3b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-06c9 6800cd3e fetch 1 ,mem_power_ctrl_level 
-06ca c00106ce beq 2 ,power_ctrl_incrs_level2 
-06cb 1fe0fe01 increase 1 ,pdata 
-06cc 6000cd3e store 1 ,mem_power_ctrl_level 
-06cd c00086c6 beq 1 ,power_ctrl_incrs_level1 
+06d0 6800cd3e fetch 1 ,mem_power_ctrl_level 
+06d1 c00106d5 beq 2 ,power_ctrl_incrs_level2 
+06d2 1fe0fe01 increase 1 ,pdata 
+06d3 6000cd3e store 1 ,mem_power_ctrl_level 
+06d4 c00086cd beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-06ce 7041de02 jam tx_power_5db ,mem_tx_power 
-06cf 20600000 rtn 
+06d5 7041de02 jam tx_power_5db ,mem_tx_power 
+06d6 20600000 rtn 
 
 power_ctrl_decrs_level0:
-06d0 7041de04 jam tx_power_f5db ,mem_tx_power 
-06d1 20600000 rtn 
+06d7 7041de04 jam tx_power_f5db ,mem_tx_power 
+06d8 20600000 rtn 
 
 p_set_freq_tx:
-06d2 60088017 storet 1 ,mem_last_freq 
-06d3 1840a200 add temp ,0 ,rega 
-06d4 20402981 call rf_write_freq 
-06d5 58000500 setarg param_pll_setup 
-06d6 20402a8f call sleep 
+06d9 60088017 storet 1 ,mem_last_freq 
+06da 1840a200 add temp ,0 ,rega 
+06db 20402981 call rf_write_freq 
+06dc 58000500 setarg param_pll_setup 
+06dd 20402a8f call sleep 
 
 p_rf_tx_enable:
-06d7 70890601 jam 0x1 ,rfen_adc 
-06d8 7089003c jam 0x3c ,rfen_rx 
-06d9 708901e0 jam 0xe0 ,rfen_tx 
-06da 2000000a nop 10 
-06db 70890201 jam 0x01 ,rfen_mdm 
-06dc 7089023d jam 0x3d ,rfen_mdm 
-06dd 2000000a nop 10 
-06de 708903b7 jam 0xb7 ,rfen_sn 
-06df 2000000a nop 10 
-06e0 7089027d jam 0x7d ,rfen_mdm 
-06e1 6800c1de fetch 1 ,mem_tx_power 
-06e2 c00106ea beq tx_power_5db ,p_set_tx_power_5db 
-06e3 c00206ef beq tx_power_f5db ,p_set_tx_power_f5db 
-06e4 c01006fe beq tx_power_pair ,p_set_tx_power_pair 
+06de 70890601 jam 0x1 ,rfen_adc 
+06df 7089003c jam 0x3c ,rfen_rx 
+06e0 708901e0 jam 0xe0 ,rfen_tx 
+06e1 2000000a nop 10 
+06e2 70890201 jam 0x01 ,rfen_mdm 
+06e3 7089023d jam 0x3d ,rfen_mdm 
+06e4 2000000a nop 10 
+06e5 708903b7 jam 0xb7 ,rfen_sn 
+06e6 2000000a nop 10 
+06e7 7089027d jam 0x7d ,rfen_mdm 
+06e8 6800c1de fetch 1 ,mem_tx_power 
+06e9 c00106f1 beq tx_power_5db ,p_set_tx_power_5db 
+06ea c00206f6 beq tx_power_f5db ,p_set_tx_power_f5db 
+06eb c0100705 beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-06e5 204006f4 call p_rx_low_sens 
-06e6 708955d0 jam 0xd0 ,0x8955 
-06e7 708956e0 jam 0xe0 ,0x8956 
-06e8 7089586c jam 0x6c ,0x8958 
-06e9 2020294b branch set_tx_power_0db 
+06ec 204006fb call p_rx_low_sens 
+06ed 708955d0 jam 0xd0 ,0x8955 
+06ee 708956e0 jam 0xe0 ,0x8956 
+06ef 7089586c jam 0x6c ,0x8958 
+06f0 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-06ea 204006f9 call p_rx_high_sens 
-06eb 708955d0 jam 0xd0 ,0x8955 
-06ec 708956e0 jam 0xe0 ,0x8956 
-06ed 7089583c jam 0x3c ,0x8958 
-06ee 20202953 branch set_tx_power_5db 
+06f1 20400700 call p_rx_high_sens 
+06f2 708955d0 jam 0xd0 ,0x8955 
+06f3 708956e0 jam 0xe0 ,0x8956 
+06f4 7089583c jam 0x3c ,0x8958 
+06f5 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-06ef 204006f4 call p_rx_low_sens 
-06f0 708955d0 jam 0xd0 ,0x8955 
-06f1 708956c0 jam 0xc0 ,0x8956 
-06f2 7089586c jam 0x6c ,0x8958 
-06f3 2020295b branch set_tx_power_f5db 
+06f6 204006fb call p_rx_low_sens 
+06f7 708955d0 jam 0xd0 ,0x8955 
+06f8 708956c0 jam 0xc0 ,0x8956 
+06f9 7089586c jam 0x6c ,0x8958 
+06fa 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-06f4 70894c5b jam 0x5b ,0x894c 
-06f5 70894d96 jam 0x96 ,0x894d 
-06f6 70894e2c jam 0x2c ,0x894e 
-06f7 70894f46 jam 0x46 ,0x894f 
-06f8 20600000 rtn 
+06fb 70894c5b jam 0x5b ,0x894c 
+06fc 70894d96 jam 0x96 ,0x894d 
+06fd 70894e2c jam 0x2c ,0x894e 
+06fe 70894f46 jam 0x46 ,0x894f 
+06ff 20600000 rtn 
 
 p_rx_high_sens:
-06f9 70894cfb jam 0xfb ,0x894c 
-06fa 70894def jam 0xef ,0x894d 
-06fb 70894eec jam 0xec ,0x894e 
-06fc 70894f5e jam 0x5e ,0x894f 
-06fd 20600000 rtn 
+0700 70894cfb jam 0xfb ,0x894c 
+0701 70894def jam 0xef ,0x894d 
+0702 70894eec jam 0xec ,0x894e 
+0703 70894f5e jam 0x5e ,0x894f 
+0704 20600000 rtn 
 
 p_set_tx_power_pair:
-06fe 708956c2 jam 0xc2 ,0x8956 
-06ff 708955d0 jam 0xd0 ,0x8955 
-0700 20600000 rtn 
+0705 708956c2 jam 0xc2 ,0x8956 
+0706 708955d0 jam 0xd0 ,0x8955 
+0707 20600000 rtn 
 
 p_shutdown_radio:
-0701 18002a08 force 8 ,radio_ctrl 
-0702 202028fa branch shutdown_radio + 1 
+0708 18002a08 force 8 ,radio_ctrl 
+0709 202028fa branch shutdown_radio + 1 
 
 p_zcode_entrance:
-0703 680891c5 fetcht 1 ,mem_zcode_temp_param0 
-0704 18518400 rshift4 temp ,temp 
-0705 6800cb6e fetch 1 ,mem_zcode_current_number 
-0706 98467c00 isub temp ,null 
-0707 20228722 branch p_zcode_run ,zero 
-0708 6008cb6e storet 1 ,mem_zcode_current_number 
-0709 18408401 increase 1 ,temp 
-070a 58000100 setarg zcode_buff_size 
-070b 984f8400 imul32 temp ,temp 
-070c 6801cb6f fetch 3 ,mem_xip_flash_offset 
-070d 98467e00 isub temp ,pdata 
-070e 6809cb72 fetcht 3 ,mem_flash_start_addr 
-070f 9840fe00 iadd temp ,pdata 
-0710 1fe0fffb increase -5 ,pdata 
-0711 6001cb75 store 3 ,mem_flash_address 
-0712 20400381 call p_flash_release_deep_power_down 
+070a 680891c5 fetcht 1 ,mem_zcode_temp_param0 
+070b 18518400 rshift4 temp ,temp 
+070c 6800cb6e fetch 1 ,mem_zcode_current_number 
+070d 98467c00 isub temp ,null 
+070e 20228729 branch p_zcode_run ,zero 
+070f 6008cb6e storet 1 ,mem_zcode_current_number 
+0710 18408401 increase 1 ,temp 
+0711 58000100 setarg zcode_buff_size 
+0712 984f8400 imul32 temp ,temp 
+0713 6801cb6f fetch 3 ,mem_xip_flash_offset 
+0714 98467e00 isub temp ,pdata 
+0715 6809cb72 fetcht 3 ,mem_flash_start_addr 
+0716 9840fe00 iadd temp ,pdata 
+0717 1fe0fffb increase -5 ,pdata 
+0718 6001cb75 store 3 ,mem_flash_address 
+0719 20400381 call p_flash_release_deep_power_down 
 
 p_zcode_read_loop:
-0713 6801cb75 fetch 3 ,mem_flash_address 
-0714 d8400100 arg zcode_buff_size ,temp 
-0715 da201f00 arg mem_zcode_buff ,rega 
-0716 20406562 call spid_read_flash 
-0717 68021f00 fetch 4 ,mem_zcode_buff 
-0718 680a4b78 fetcht 4 ,mem_zcode_head 
-0719 98467c00 isub temp ,null 
-071a 24228713 nbranch p_zcode_read_loop ,zero 
-071b 204002e6 call p_mouse_spi_init 
-071c 58001f00 setarg mem_zcode_buff 
-071d 60014199 store 2 ,mem_patch_ptr 
-071e 70419b40 jam zcode_code_size ,mem_patch_len 
-071f 204064ca call load_ucode 
-0720 58000000 setarg 0 
-0721 60024199 store 4 ,mem_patch_ptr 
+071a 6801cb75 fetch 3 ,mem_flash_address 
+071b d8400100 arg zcode_buff_size ,temp 
+071c da201f00 arg mem_zcode_buff ,rega 
+071d 20406562 call spid_read_flash 
+071e 68021f00 fetch 4 ,mem_zcode_buff 
+071f 680a4b78 fetcht 4 ,mem_zcode_head 
+0720 98467c00 isub temp ,null 
+0721 2422871a nbranch p_zcode_read_loop ,zero 
+0722 204002e6 call p_mouse_spi_init 
+0723 58001f00 setarg mem_zcode_buff 
+0724 60014199 store 2 ,mem_patch_ptr 
+0725 70419b40 jam zcode_code_size ,mem_patch_len 
+0726 204064ca call load_ucode 
+0727 58000000 setarg 0 
+0728 60024199 store 4 ,mem_patch_ptr 
 
 p_zcode_run:
-0722 680091c5 fetch 1 ,mem_zcode_temp_param0 
-0723 20200001 branch p_zcode 
+0729 680091c5 fetch 1 ,mem_zcode_temp_param0 
+072a 20200001 branch p_zcode 
 
 p_drawing_optima_init:
-0724 df200005 arg 5 ,loopcnt 
-0725 d8a04b0d arg mem_mouse_asm_flag ,contw 
-0726 20207ed4 branch clear_mem 
+072b df200005 arg 5 ,loopcnt 
+072c d8a04b0d arg mem_mouse_asm_flag ,contw 
+072d 20207ed4 branch clear_mem 
 
 p_drawing_optima:
-0727 6802469b fetch 4 ,mem_mouse_x 
-0728 207a0000 rtn blank 
-0729 20400778 call p_data_abs_check 
-072a 58000006 setarg 0x06 
-072b 2040076b call p_data_greater_than_check 
-072c 58000003 setarg 0x03 
-072d 20400771 call p_data_less_than_check 
-072e 6800cb0d fetch 1 ,mem_mouse_asm_flag 
-072f c0008731 beq 1 ,p_drawing_optima_modify 
-0730 20200724 branch p_drawing_optima_init 
+072e 6802469b fetch 4 ,mem_mouse_x 
+072f 207a0000 rtn blank 
+0730 2040077f call p_data_abs_check 
+0731 58000006 setarg 0x06 
+0732 20400772 call p_data_greater_than_check 
+0733 58000003 setarg 0x03 
+0734 20400778 call p_data_less_than_check 
+0735 6800cb0d fetch 1 ,mem_mouse_asm_flag 
+0736 c0008738 beq 1 ,p_drawing_optima_modify 
+0737 2020072b branch p_drawing_optima_init 
 
 p_drawing_optima_modify:
-0731 68014b0e fetch 2 ,mem_mouse_x_pre 
-0732 600111be store 2 ,mem_data_pre 
-0733 6801469b fetch 2 ,mem_mouse_x 
-0734 600111c0 store 2 ,mem_data_current 
-0735 20400744 call p_drawing_optima_data 
-0736 680111be fetch 2 ,mem_data_pre 
-0737 60014b0e store 2 ,mem_mouse_x_pre 
-0738 680111c0 fetch 2 ,mem_data_current 
-0739 6001469b store 2 ,mem_mouse_x 
-073a 68014b10 fetch 2 ,mem_mouse_y_pre 
-073b 600111be store 2 ,mem_data_pre 
-073c 6801469d fetch 2 ,mem_mouse_y 
-073d 600111c0 store 2 ,mem_data_current 
-073e 20400744 call p_drawing_optima_data 
-073f 680111be fetch 2 ,mem_data_pre 
-0740 60014b10 store 2 ,mem_mouse_y_pre 
-0741 680111c0 fetch 2 ,mem_data_current 
-0742 6001469d store 2 ,mem_mouse_y 
-0743 20600000 rtn 
+0738 68014b0e fetch 2 ,mem_mouse_x_pre 
+0739 600111be store 2 ,mem_data_pre 
+073a 6801469b fetch 2 ,mem_mouse_x 
+073b 600111c0 store 2 ,mem_data_current 
+073c 2040074b call p_drawing_optima_data 
+073d 680111be fetch 2 ,mem_data_pre 
+073e 60014b0e store 2 ,mem_mouse_x_pre 
+073f 680111c0 fetch 2 ,mem_data_current 
+0740 6001469b store 2 ,mem_mouse_x 
+0741 68014b10 fetch 2 ,mem_mouse_y_pre 
+0742 600111be store 2 ,mem_data_pre 
+0743 6801469d fetch 2 ,mem_mouse_y 
+0744 600111c0 store 2 ,mem_data_current 
+0745 2040074b call p_drawing_optima_data 
+0746 680111be fetch 2 ,mem_data_pre 
+0747 60014b10 store 2 ,mem_mouse_y_pre 
+0748 680111c0 fetch 2 ,mem_data_current 
+0749 6001469d store 2 ,mem_mouse_y 
+074a 20600000 rtn 
 
 p_drawing_optima_data:
-0744 680111be fetch 2 ,mem_data_pre 
-0745 680911c0 fetcht 2 ,mem_data_current 
-0746 9840fe00 iadd temp ,pdata 
-0747 600191c2 store 3 ,mem_data_sum 
-0748 2feffe10 isolate1 16 ,pdata 
-0749 20208751 branch p_data_sum_overflow ,true 
-074a 680091c3 fetch 1 ,mem_data_sum + 1 
-074b c07f8758 beq 0xff ,p_data_sum_n 
-074c 680091c2 fetch 1 ,mem_data_sum 
+074b 680111be fetch 2 ,mem_data_pre 
+074c 680911c0 fetcht 2 ,mem_data_current 
+074d 9840fe00 iadd temp ,pdata 
+074e 600191c2 store 3 ,mem_data_sum 
+074f 2feffe10 isolate1 16 ,pdata 
+0750 20208758 branch p_data_sum_overflow ,true 
+0751 680091c3 fetch 1 ,mem_data_sum + 1 
+0752 c07f875f beq 0xff ,p_data_sum_n 
+0753 680091c2 fetch 1 ,mem_data_sum 
 
 p_data_store_pre:
-074d 1fe37e00 rshift pdata ,pdata 
-074e 600111be store 2 ,mem_data_pre 
-074f 600111c0 store 2 ,mem_data_current 
-0750 20600000 rtn 
+0754 1fe37e00 rshift pdata ,pdata 
+0755 600111be store 2 ,mem_data_pre 
+0756 600111c0 store 2 ,mem_data_current 
+0757 20600000 rtn 
 
 p_data_sum_overflow:
-0751 680091c3 fetch 1 ,mem_data_sum + 1 
-0752 c0000755 beq 0 ,p_data_sum_overflow_p 
-0753 680191c2 fetch 3 ,mem_data_sum 
-0754 2020074d branch p_data_store_pre 
+0758 680091c3 fetch 1 ,mem_data_sum + 1 
+0759 c000075c beq 0 ,p_data_sum_overflow_p 
+075a 680191c2 fetch 3 ,mem_data_sum 
+075b 20200754 branch p_data_store_pre 
 
 p_data_sum_overflow_p:
-0755 7011c400 jam 0 ,mem_data_sum + 2 
-0756 680091c2 fetch 1 ,mem_data_sum 
-0757 2020074d branch p_data_store_pre 
+075c 7011c400 jam 0 ,mem_data_sum + 2 
+075d 680091c2 fetch 1 ,mem_data_sum 
+075e 20200754 branch p_data_store_pre 
 
 p_data_sum_n:
-0758 680091c2 fetch 1 ,mem_data_sum 
-0759 20400763 call p_pdata_get_half 
-075a 600091be store 1 ,mem_data_pre 
-075b 600091c0 store 1 ,mem_data_current 
-075c 203a0761 branch p_data_zero ,blank 
-075d 580000ff setarg 0xff 
+075f 680091c2 fetch 1 ,mem_data_sum 
+0760 2040076a call p_pdata_get_half 
+0761 600091be store 1 ,mem_data_pre 
+0762 600091c0 store 1 ,mem_data_current 
+0763 203a0768 branch p_data_zero ,blank 
+0764 580000ff setarg 0xff 
 
 p_data_set_direction:
-075e 600091bf store 1 ,mem_data_pre + 1 
-075f 600091c1 store 1 ,mem_data_current + 1 
-0760 20600000 rtn 
+0765 600091bf store 1 ,mem_data_pre + 1 
+0766 600091c1 store 1 ,mem_data_current + 1 
+0767 20600000 rtn 
 
 p_data_zero:
-0761 58000000 setarg 0 
-0762 2020075e branch p_data_set_direction 
+0768 58000000 setarg 0 
+0769 20200765 branch p_data_set_direction 
 
 p_pdata_get_half:
-0763 1fe67e00 sub pdata ,0 ,pdata 
-0764 60008aae store 1 ,mem_rega 
-0765 68008aae fetch 1 ,mem_rega 
-0766 1fe37e00 rshift pdata ,pdata 
-0767 60008aae store 1 ,mem_rega 
-0768 68008aae fetch 1 ,mem_rega 
-0769 1fe67e00 sub pdata ,0 ,pdata 
-076a 20600000 rtn 
+076a 1fe67e00 sub pdata ,0 ,pdata 
+076b 60008aae store 1 ,mem_rega 
+076c 68008aae fetch 1 ,mem_rega 
+076d 1fe37e00 rshift pdata ,pdata 
+076e 60008aae store 1 ,mem_rega 
+076f 68008aae fetch 1 ,mem_rega 
+0770 1fe67e00 sub pdata ,0 ,pdata 
+0771 20600000 rtn 
 
 p_data_greater_than_check:
-076b 9a267c00 isub rega ,null 
-076c 24210776 nbranch p_enable_asm ,positive 
-076d 9a467c00 isub regb ,null 
-076e 24210776 nbranch p_enable_asm ,positive 
+0772 9a267c00 isub rega ,null 
+0773 2421077d nbranch p_enable_asm ,positive 
+0774 9a467c00 isub regb ,null 
+0775 2421077d nbranch p_enable_asm ,positive 
 
 p_disable_asm:
-076f 704b0d00 jam 0 ,mem_mouse_asm_flag 
-0770 20600000 rtn 
+0776 704b0d00 jam 0 ,mem_mouse_asm_flag 
+0777 20600000 rtn 
 
 p_data_less_than_check:
-0771 9a267c00 isub rega ,null 
-0772 24610000 nrtn positive 
-0773 9a467c00 isub regb ,null 
-0774 24610000 nrtn positive 
-0775 2020076f branch p_disable_asm 
+0778 9a267c00 isub rega ,null 
+0779 24610000 nrtn positive 
+077a 9a467c00 isub regb ,null 
+077b 24610000 nrtn positive 
+077c 20200776 branch p_disable_asm 
 
 p_enable_asm:
-0776 704b0d01 jam 1 ,mem_mouse_asm_flag 
-0777 20600000 rtn 
+077d 704b0d01 jam 1 ,mem_mouse_asm_flag 
+077e 20600000 rtn 
 
 p_data_abs_check:
-0778 6801469b fetch 2 ,mem_mouse_x 
-0779 600111c0 store 2 ,mem_data_current 
-077a 20400781 call p_data_abs 
-077b 1fe22200 copy pdata ,rega 
-077c 6801469d fetch 2 ,mem_mouse_y 
-077d 600111c0 store 2 ,mem_data_current 
-077e 20400781 call p_data_abs 
-077f 1fe22400 copy pdata ,regb 
-0780 20600000 rtn 
+077f 6801469b fetch 2 ,mem_mouse_x 
+0780 600111c0 store 2 ,mem_data_current 
+0781 20400788 call p_data_abs 
+0782 1fe22200 copy pdata ,rega 
+0783 6801469d fetch 2 ,mem_mouse_y 
+0784 600111c0 store 2 ,mem_data_current 
+0785 20400788 call p_data_abs 
+0786 1fe22400 copy pdata ,regb 
+0787 20600000 rtn 
 
 p_data_abs:
-0781 680091c1 fetch 1 ,mem_data_current + 1 
-0782 c07f8786 beq 0xff ,p_data_reversal 
-0783 680091c0 fetch 1 ,mem_data_current 
+0788 680091c1 fetch 1 ,mem_data_current + 1 
+0789 c07f878d beq 0xff ,p_data_reversal 
+078a 680091c0 fetch 1 ,mem_data_current 
 
 p_data_abs_store:
-0784 1fe17eff and_into 0xff ,pdata 
-0785 20600000 rtn 
+078b 1fe17eff and_into 0xff ,pdata 
+078c 20600000 rtn 
 
 p_data_reversal:
-0786 680111c0 fetch 2 ,mem_data_current 
-0787 1fe67e00 sub pdata ,0 ,pdata 
-0788 20200784 branch p_data_abs_store 
+078d 680111c0 fetch 2 ,mem_data_current 
+078e 1fe67e00 sub pdata ,0 ,pdata 
+078f 2020078b branch p_data_abs_store 
               org 0x2000
 
 start:
@@ -13584,6 +13597,8 @@
 3fc5 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
 3fc6 2040681d call gpio_get_bit 
 3fc7 24608000 nrtn true 
+
+mouse_p3212_sensor_motion_1:
 3fc8 58000000 setarg pan_reg_pid_l 
 3fc9 20406414 call twspi_read 
 3fca c09840d1 bne p32xx_id1 ,mouse_twspi_reset 
@@ -13621,6 +13636,8 @@
 3fe4 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
 3fe5 2040681d call gpio_get_bit 
 3fe6 24608000 nrtn true 
+
+mouse_p32xx_sensor_motion_2:
 3fe7 58000000 setarg pan_reg_pid_l 
 3fe8 20406414 call twspi_read 
 3fe9 c0983fe0 bne p32xx_id1 ,mouse_p3065_judge 
@@ -35559,7 +35576,7 @@
 6002a 58000005 setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable 
 6002b e0c08000 istore 1 ,contr 
 6002c d8c04b12 arg mem_le_adv_swift_pair ,contr 
-6002d 20400526 call p_le_adv_data_update 
+6002d 2040052d call p_le_adv_data_update 
 6002e 20207df4 branch check_51cmd_adv 
 
 z_mouse_24g_attempt_fail:
@@ -35781,7 +35798,7 @@
 90015 20405839 call le_set_justwork 
 90016 2040582c call le_set_fixed_ltk 
 90017 20405818 call le_set_config_read_authentication 
-90018 20400521 call p_le_addr_random_config 
+90018 20400528 call p_le_addr_random_config 
 90019 20200320 branch p_mouse_load_flash_info_check 
 
 z_mouse_bt_sdp_update:
Index: output/romcode.rom
===================================================================
--- /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/output/romcode.rom	(revision 3386)
+++ /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/output/romcode.rom	(working copy)
@@ -24795,7 +24795,7 @@
 58000005
 e0c08000
 d8c04b12
-20400526
+2040052d
 20207df4
 6800cb5f
 247a0000
@@ -24952,7 +24952,7 @@
 20405839
 2040582c
 20405818
-20400521
+20400528
 20200320
 204074b9
 d8c08c00
@@ -25126,4 +25126,4 @@
 704b0300
 704b0c00
 202041d9
-000008f3
+0000e781
Index: program/app_mouse.prog
===================================================================
--- /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/program/app_mouse.prog	(revision 3386)
+++ /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/program/app_mouse.prog	(working copy)
@@ -971,6 +971,7 @@
 	fetcht 1,mem_sensor_data_gpio
 	call gpio_get_bit
 	nrtn true
+mouse_p3212_sensor_motion_1:
 	setarg PAN_REG_PID_L
 	call twspi_read
 	bne P32XX_ID1,mouse_twspi_reset
@@ -1008,6 +1009,7 @@
 	fetcht 1,mem_sensor_data_gpio
 	call gpio_get_bit
 	nrtn true
+mouse_p32xx_sensor_motion_2:
 	setarg PAN_REG_PID_L
 	call twspi_read
 	bne P32XX_ID1,mouse_p3065_judge   
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/program/patch.prog	(revision 3386)
+++ /branch/mouse_project/ZJL_Project/XGD_RF108_24g&ble/program/patch.prog	(working copy)
@@ -2263,7 +2263,7 @@
 	disable user
 	setarg 0
 	store 6,mem_mouse_x
-	call mouse_cheak_sensor_data
+	call p_mouse_cheak_sensor_data
 	call mouse_zwheel
 	call mouse_t_zwheel
 	call mouse_key
@@ -2356,6 +2356,17 @@
 	set0 gpio_active_bit,temp
 	branch p_gpio_set_input_pd4
 
+p_mouse_cheak_sensor_data:
+	fetch 1,mem_config_sensor_type
+	beq P3212,p_mouse_p3212_sensor_motion
+p_mouse_p32xx_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+	branch mouse_p32xx_sensor_motion_2
+p_mouse_p3212_sensor_motion:
+	call mouse_clear_sensor_data
+	branch mouse_p3212_sensor_motion_1
+
 	
 p_mouse_bb_event_discovery_btn:
 	jam 0,mem_mouse_poweron_led_timer
