Index: output/eeprom.dat
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/output/eeprom.dat	(revision 1340)
+++ /branch/mouse_project/YJX_Project/24G&BLE_BD/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-72
+92
 1c
 c2
 84
@@ -11,11 +11,11 @@
 c0
 42
 86
-44
+4c
 c0
 44
 86
-15
+1d
 c0
 00
 00
@@ -271,7 +271,7 @@
 20
 40
 04
-b9
+bb
 24
 34
 00
@@ -279,11 +279,11 @@
 20
 40
 04
-9e
+a0
 20
 40
 04
-e7
+e9
 68
 00
 c9
@@ -295,7 +295,7 @@
 20
 40
 05
-42
+4a
 20
 40
 00
@@ -307,7 +307,7 @@
 c0
 00
 85
-ca
+d2
 20
 40
 00
@@ -355,7 +355,7 @@
 20
 40
 06
-46
+4e
 24
 74
 00
@@ -627,11 +627,11 @@
 20
 40
 06
-74
+7c
 20
 40
 04
-bd
+bf
 20
 20
 00
@@ -803,7 +803,7 @@
 20
 40
 07
-02
+0a
 68
 00
 c1
@@ -815,7 +815,7 @@
 20
 40
 05
-31
+39
 68
 00
 c6
@@ -987,7 +987,7 @@
 20
 20
 05
-a6
+ae
 70
 48
 c1
@@ -1115,7 +1115,7 @@
 20
 40
 05
-6e
+76
 70
 49
 5b
@@ -1255,7 +1255,7 @@
 20
 40
 04
-e3
+e5
 20
 20
 40
@@ -1263,7 +1263,7 @@
 20
 40
 04
-e3
+e5
 68
 00
 c6
@@ -1671,7 +1671,7 @@
 20
 20
 05
-ca
+d2
 20
 40
 58
@@ -1731,7 +1731,7 @@
 20
 40
 04
-dc
+de
 20
 40
 01
@@ -1739,7 +1739,7 @@
 20
 20
 07
-07
+0f
 68
 00
 c6
@@ -1791,7 +1791,7 @@
 20
 20
 04
-e3
+e5
 20
 40
 7e
@@ -1955,7 +1955,7 @@
 20
 40
 07
-02
+0a
 20
 20
 41
@@ -2007,7 +2007,7 @@
 20
 40
 07
-02
+0a
 20
 40
 58
@@ -2122,8 +2122,8 @@
 ea
 20
 40
-05
-ff
+06
+07
 70
 47
 a1
@@ -3274,8 +3274,8 @@
 26
 20
 40
-85
-ff
+86
+07
 20
 20
 42
@@ -3515,7 +3515,7 @@
 20
 40
 05
-42
+4a
 20
 20
 53
@@ -3715,7 +3715,7 @@
 20
 40
 05
-34
+3c
 68
 00
 c7
@@ -3779,7 +3779,7 @@
 20
 5a
 07
-0f
+17
 20
 20
 56
@@ -3843,7 +3843,7 @@
 20
 20
 05
-38
+40
 68
 00
 c7
@@ -4556,14 +4556,22 @@
 00
 c9
 4c
-20
 60
 00
-00
+c9
+07
 20
 40
 05
-38
+40
+20
+20
+06
+8e
+20
+40
+05
+40
 68
 00
 ca
@@ -4571,11 +4579,11 @@
 c0
 00
 84
-78
+7a
 c0
 01
 04
-7c
+7e
 20
 60
 00
@@ -4603,7 +4611,7 @@
 20
 20
 04
-79
+7b
 68
 01
 49
@@ -4619,7 +4627,7 @@
 c2
 85
 05
-26
+21
 68
 00
 ca
@@ -4627,7 +4635,7 @@
 c0
 00
 84
-87
+89
 70
 4a
 80
@@ -4655,11 +4663,11 @@
 c0
 02
 04
-8e
+90
 20
 40
 06
-86
+8e
 70
 49
 90
@@ -4667,11 +4675,11 @@
 20
 20
 04
-e7
+e9
 20
 40
 05
-38
+40
 70
 4a
 7e
@@ -4703,7 +4711,7 @@
 c0
 01
 84
-92
+94
 68
 00
 c9
@@ -4723,11 +4731,11 @@
 c0
 00
 84
-91
+93
 c0
 01
 04
-92
+94
 20
 60
 00
@@ -4743,11 +4751,11 @@
 20
 40
 04
-a3
+a5
 24
 56
 04
-ab
+ad
 20
 60
 00
@@ -4791,7 +4799,7 @@
 20
 3a
 04
-b3
+b5
 1f
 e0
 ff
@@ -4807,7 +4815,7 @@
 20
 40
 06
-86
+8e
 70
 49
 90
@@ -4827,11 +4835,11 @@
 24
 3a
 04
-85
+87
 20
 40
 06
-86
+8e
 70
 49
 90
@@ -4847,15 +4855,15 @@
 c0
 ff
 85
-73
+7b
 20
 40
 04
-bf
+c1
 20
 40
 06
-74
+7c
 70
 49
 50
@@ -4875,7 +4883,7 @@
 20
 34
 04
-c5
+c7
 68
 03
 c8
@@ -4891,7 +4899,7 @@
 20
 40
 04
-dc
+de
 70
 49
 77
@@ -4975,7 +4983,7 @@
 c2
 00
 04
-d5
+d7
 20
 60
 00
@@ -5039,27 +5047,27 @@
 20
 40
 05
-01
+07
 24
 2c
 05
-0e
+14
 24
 37
 85
-0e
+14
 20
 40
 04
-fc
+ff
 20
 40
 05
-2a
+32
 20
 40
 05
-34
+3c
 68
 00
 c9
@@ -5072,18 +5080,22 @@
 00
 c9
 4a
+20
+40
+05
+02
 68
 00
 c9
 5b
 c0
 ff
-84
-ff
+85
+05
 20
 40
 04
-95
+97
 58
 00
 00
@@ -5120,14 +5132,26 @@
 20
 7e
 c6
+68
+00
+c9
+4c
+c2
+82
+04
+6f
+20
+60
+00
+00
 20
 40
 05
-31
+39
 20
 20
 05
-8e
+96
 78
 57
 fc
@@ -5135,7 +5159,7 @@
 20
 40
 06
-e1
+e9
 18
 00
 2a
@@ -5163,11 +5187,11 @@
 20
 40
 06
-a0
+a8
 20
 57
 86
-da
+e2
 20
 60
 00
@@ -5175,23 +5199,39 @@
 20
 40
 06
-da
+e2
 20
 20
 04
-f0
+f2
 68
 00
 c9
-53
+77
+24
+7a
+00
+00
+68
+01
+49
+51
 1f
 e0
 fe
 01
 60
+01
+49
+51
+68
 00
 c9
-53
+52
+c2
+82
+05
+23
 68
 00
 c9
@@ -5199,84 +5239,24 @@
 c0
 ff
 85
-22
-68
-08
-c9
-54
-18
-40
-84
-01
-60
-08
-c9
-54
-68
-00
-c9
-90
-98
-46
-7e
-00
-24
-3a
-04
-e8
-68
-00
-ca
-82
-c0
-01
-84
-7e
-68
-00
-ca
-7f
 1f
-e0
-fe
-01
-60
-00
-ca
-7f
-c0
-01
-04
-73
 20
 40
-04
-6a
-70
-49
-90
-01
+05
+28
 20
 20
 04
-e7
+ea
 68
 00
 c9
-53
+51
 c1
 ff
 80
 00
-70
-49
-53
-00
-20
-20
-05
-28
-58
+58
 00
 00
 00
@@ -5294,8 +5274,60 @@
 86
 20
 40
+05
+6d
+20
+40
+05
+40
+20
+20
 06
-08
+8e
+68
+00
+c9
+54
+1f
+e6
+7c
+0b
+24
+21
+05
+25
+1f
+e0
+fe
+01
+60
+00
+c9
+54
+c0
+01
+04
+6a
+c0
+03
+04
+6f
+c0
+04
+04
+6a
+c0
+06
+04
+6f
+20
+60
+00
+00
+20
+40
+06
+10
 68
 00
 c9
@@ -5359,7 +5391,7 @@
 24
 41
 05
-40
+48
 68
 00
 ca
@@ -5411,7 +5443,7 @@
 20
 40
 06
-55
+5d
 60
 08
 ca
@@ -5423,7 +5455,7 @@
 c5
 13
 05
-4c
+54
 58
 00
 00
@@ -5435,7 +5467,7 @@
 24
 21
 05
-64
+6c
 68
 00
 ca
@@ -5447,7 +5479,7 @@
 24
 21
 05
-54
+5c
 68
 00
 ca
@@ -5455,7 +5487,7 @@
 c0
 00
 05
-65
+6d
 20
 60
 00
@@ -5465,7 +5497,7 @@
 ca
 84
 c1
-90
+99
 00
 00
 70
@@ -5483,7 +5515,7 @@
 c5
 13
 05
-5b
+63
 58
 00
 00
@@ -5503,7 +5535,7 @@
 c0
 00
 05
-6c
+74
 1f
 e0
 ff
@@ -5515,7 +5547,7 @@
 c0
 00
 05
-6c
+74
 70
 41
 de
@@ -5535,7 +5567,7 @@
 c0
 01
 05
-6a
+72
 1f
 e0
 fe
@@ -5547,7 +5579,7 @@
 c0
 00
 85
-62
+6a
 70
 41
 de
@@ -5567,7 +5599,7 @@
 70
 41
 de
-20
+00
 70
 49
 4a
@@ -5583,7 +5615,7 @@
 20
 20
 06
-66
+6e
 68
 00
 c9
@@ -5599,15 +5631,15 @@
 c0
 00
 85
-7a
+82
 c0
 01
 05
-7d
+85
 c0
 01
 85
-80
+88
 20
 20
 2a
@@ -5623,7 +5655,7 @@
 20
 20
 05
-82
+8a
 70
 49
 5b
@@ -5635,7 +5667,7 @@
 20
 20
 05
-82
+8a
 70
 49
 5b
@@ -5679,15 +5711,15 @@
 20
 40
 06
-03
+0b
 20
 40
 06
-74
+7c
 20
 40
 04
-bd
+bf
 20
 20
 7f
@@ -5703,15 +5735,15 @@
 c0
 08
 85
-94
+9c
 c0
 09
 05
-96
+9e
 c0
 09
 85
-98
+a0
 20
 60
 00
@@ -5723,7 +5755,7 @@
 20
 20
 04
-f6
+f9
 70
 49
 5b
@@ -5731,7 +5763,7 @@
 20
 20
 04
-f6
+f9
 70
 49
 5b
@@ -5747,11 +5779,11 @@
 20
 40
 05
-ce
+d6
 20
 20
 04
-f6
+f9
 70
 11
 9e
@@ -5783,11 +5815,11 @@
 20
 40
 06
-03
+0b
 20
 20
 06
-74
+7c
 58
 00
 00
@@ -5803,11 +5835,11 @@
 20
 40
 05
-e6
+ee
 20
 40
 05
-9d
+a5
 58
 00
 00
@@ -5839,7 +5871,7 @@
 20
 40
 05
-da
+e2
 68
 01
 49
@@ -5855,23 +5887,23 @@
 20
 22
 85
-28
+23
 20
 40
 05
-01
+07
 24
 2c
 05
-d0
+d8
 24
 37
 85
-d0
+d8
 20
 40
 05
-2a
+32
 20
 40
 00
@@ -5903,7 +5935,7 @@
 20
 42
 85
-ce
+d6
 79
 20
 00
@@ -5931,7 +5963,7 @@
 20
 40
 04
-fc
+ff
 70
 4a
 8b
@@ -5955,7 +5987,7 @@
 20
 20
 06
-66
+6e
 68
 01
 49
@@ -5986,16 +6018,16 @@
 89
 c0
 00
-05
-f9
+06
+01
 c0
 01
+06
 05
-fd
 20
 20
-05
-fb
+06
+03
 68
 00
 c8
@@ -6031,7 +6063,7 @@
 20
 22
 85
-e4
+ec
 20
 60
 00
@@ -6067,7 +6099,7 @@
 20
 40
 05
-ee
+f6
 60
 08
 91
@@ -6079,11 +6111,11 @@
 20
 40
 06
-67
+6f
 20
 20
 06
-86
+8e
 70
 41
 de
@@ -6111,7 +6143,7 @@
 20
 40
 05
-ee
+f6
 60
 08
 91
@@ -6123,27 +6155,27 @@
 20
 40
 05
-e6
+ee
 20
 20
 05
-b0
+b8
 20
 40
 05
-6e
+76
 20
 20
 05
-b0
+b8
 20
 40
 05
-f0
+f8
 20
 20
 05
-b0
+b8
 79
 3f
 80
@@ -6299,19 +6331,19 @@
 c0
 01
 06
-2d
+35
 c0
 02
 06
-32
+3a
 c0
 10
 06
-41
+49
 20
 40
 06
-37
+3f
 70
 89
 55
@@ -6331,7 +6363,7 @@
 20
 40
 06
-3c
+44
 70
 89
 55
@@ -6351,7 +6383,7 @@
 20
 40
 06
-37
+3f
 70
 89
 55
@@ -6511,7 +6543,7 @@
 c2
 00
 06
-58
+60
 18
 49
 7e
@@ -6583,7 +6615,7 @@
 c2
 00
 06
-6a
+72
 1a
 22
 7e
@@ -6691,7 +6723,7 @@
 20
 40
 06
-8a
+92
 60
 08
 c9
@@ -6703,7 +6735,7 @@
 20
 40
 06
-8e
+96
 18
 40
 84
@@ -6791,7 +6823,7 @@
 20
 40
 06
-97
+9f
 78
 57
 fc
@@ -6827,7 +6859,7 @@
 24
 2c
 06
-da
+e2
 78
 46
 fc
@@ -6847,7 +6879,7 @@
 20
 40
 06
-d7
+df
 60
 00
 c9
@@ -6863,11 +6895,11 @@
 24
 22
 86
-da
+e2
 20
 40
 06
-d7
+df
 60
 00
 c8
@@ -6887,11 +6919,11 @@
 24
 20
 86
-da
+e2
 20
 40
 06
-d7
+df
 e0
 a0
 80
@@ -6907,11 +6939,11 @@
 20
 22
 86
-c1
+c9
 20
 40
 06
-d7
+df
 e0
 a0
 80
@@ -6919,7 +6951,7 @@
 c2
 00
 06
-be
+c6
 18
 a2
 22
@@ -6927,7 +6959,7 @@
 20
 40
 06
-d7
+df
 60
 00
 ca
@@ -6967,7 +6999,7 @@
 20
 23
 06
-da
+e2
 78
 37
 fc
@@ -7063,11 +7095,11 @@
 20
 40
 06
-97
+9f
 20
 40
 06
-de
+e6
 79
 20
 2a
@@ -7147,7 +7179,7 @@
 c2
 00
 06
-f7
+ff
 78
 24
 7c
@@ -7211,7 +7243,7 @@
 20
 54
 07
-0b
+13
 20
 60
 00
@@ -7243,7 +7275,7 @@
 20
 34
 07
-13
+1b
 20
 60
 00
@@ -7284,8 +7316,8 @@
 20
 3f
 90
-5f
-8e
+c5
+07
 aa
 55
 09
@@ -8023,40 +8055,8 @@
 49
 04
 01
-19
-e9
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+3e
+77
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-d0
-01
+97
+ea
Index: output/program.lis
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/output/program.lis	(revision 1340)
+++ /branch/mouse_project/YJX_Project/24G&BLE_BD/output/program.lis	(working copy)
@@ -1,8 +1,8 @@
 include "bt_format "
 org 0x0000
 0000 c2840012 bbit1 8 ,pf_patch_ext 
-0001 c0428644 beq patch10_5 ,p_shutdown_radio 
-0002 c0448615 beq patch11_1 ,p_set_freq_tx 
+0001 c042864c beq patch10_5 ,p_shutdown_radio 
+0002 c044861d beq patch11_1 ,p_set_freq_tx 
 0003 c0000028 beq patch00_0 ,p_soft_reset 
 0004 c000802b beq patch00_1 ,p_soft_reset_1 
 0005 c0010031 beq patch00_2 ,p_soft_reset_2 
@@ -84,18 +84,18 @@
 0041 c0008057 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
 
 p_g24_transmit_process:
-0042 204004b9 call p_g24_txdata_prep 
+0042 204004bb call p_g24_txdata_prep 
 0043 24340072 nbranch p_g24_nodata_transmit ,user 
-0044 2040049e call p_g24_rf_sta_check 
+0044 204004a0 call p_g24_rf_sta_check 
 
 p_g24_transmit_start:
-0045 204004e7 call p_g24_transmit_packet 
+0045 204004e9 call p_g24_transmit_packet 
 0046 6800c95b fetch 1 ,mem_24g_pairing_sm 
 0047 c1ff8000 rtnne state_24g_pairing_success 
-0048 20400542 call power_ctrl_start 
+0048 2040054a call power_ctrl_start 
 0049 20400051 call g24_long_sleep_shorter_param_update 
 004a 6800c8b6 fetch 1 ,mem_mouse_multi_led_state 
-004b c00085ca beq on ,p_g24_transmit_by_interrupt_enable 
+004b c00085d2 beq on ,p_g24_transmit_by_interrupt_enable 
 
 p_g24_short_sleep:
 004c 2040007e call p_g24_lpm_wait 
@@ -113,7 +113,7 @@
 0056 20600000 rtn 
 
 p_g24_transmit_by_interrupt:
-0057 20400646 call p_g24_timer_check 
+0057 2040064e call p_g24_timer_check 
 0058 24740000 nrtn user 
 0059 2040006c call p_g24_interval_calibrate 
 005a 68014a8c fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
@@ -203,8 +203,8 @@
 0098 6800c94c fetch 1 ,mem_24g_data_type 
 0099 79207e03 set1 bit_abort ,pdata 
 009a 6000c94c store 1 ,mem_24g_data_type 
-009b 20400674 call p_g24_transmit_prep 
-009c 204004bd call p_g24_txdata_enable_tx 
+009b 2040067c call p_g24_transmit_prep 
+009c 204004bf call p_g24_txdata_enable_tx 
 009d 20200045 branch p_g24_transmit_start 
 
 p_lpm_check_wake_lock:
@@ -261,10 +261,10 @@
 p_device_init:
 00c5 20403416 call app_lpm_mult_enable 
 00c6 203580d0 branch p_device_init_common ,wake 
-00c7 20400702 call p_mouse_data_init 
+00c7 2040070a call p_mouse_data_init 
 00c8 6800c1de fetch 1 ,mem_tx_power 
 00c9 6000ca02 store 1 ,mem_tx_power_temp 
-00ca 20400531 call power_ctrl_pac_succ_cnt_init 
+00ca 20400539 call power_ctrl_pac_succ_cnt_init 
 00cb 6800c685 fetch 1 ,mem_ui_button_timeout 
 00cc 6000c6da store 1 ,mem_combination_ui_button_count 
 00cd 204043ca call mouse_bt_discovery_button_down_disable 
@@ -325,7 +325,7 @@
 00f2 e0a10000 istore 2 ,contw 
 00f3 2040020b call p_mouse_set_24g_addr_eeprom 
 00f4 204065d1 call iicd_write_protect_eep_data 
-00f5 202005a6 branch p_g24_auto_pair_start 
+00f5 202005ae branch p_g24_auto_pair_start 
 
 p_mouse4_0_check_reconn_target:
 00f6 7048c101 jam 1 ,mem_le_send_security_request_flag 
@@ -365,7 +365,7 @@
 
 p_g24_start_pairing_sm1:
 0114 79200026 set1 mark_24g ,mark 
-0115 2040056e call p_g24_pair_init 
+0115 20400576 call p_g24_pair_init 
 
 p_g24_set_pairing_sm_1:
 0116 70495b01 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
@@ -416,11 +416,11 @@
 0137 20200132 branch p_mouse_init_sensor 
 
 p_mouse_init_p32xx_id2_judge:
-0138 204004e3 call p_mouse_sensor_poweron 
+0138 204004e5 call p_mouse_sensor_poweron 
 0139 202040e0 branch mouse_init_p32xx_id2_judge 
 
 p_mouse_p3065_init_param:
-013a 204004e3 call p_mouse_sensor_poweron 
+013a 204004e5 call p_mouse_sensor_poweron 
 013b 6800c6de fetch 1 ,mem_sensor_id2 
 013c c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
 013d 7046e001 jam p3065 ,mem_config_sensor_type 
@@ -560,7 +560,7 @@
 019d 20404401 call mouse_g24_package_data 
 019e 6801469f fetch 2 ,mem_mouse_z 
 019f 207a0000 rtn blank 
-01a0 202005ca branch p_g24_transmit_by_interrupt_enable 
+01a0 202005d2 branch p_g24_transmit_by_interrupt_enable 
 
 p_mouse_le:
 01a1 20405892 call le_fifo_check_nearly_full 
@@ -579,9 +579,9 @@
 01ac 20403f97 call mouse_motion 
 01ad 24740000 nrtn user 
 01ae 204001b2 call p_mouse_le_current_mult_update 
-01af 204004dc call p_mouse_data_xy_release 
+01af 204004de call p_mouse_data_xy_release 
 01b0 204001b7 call p_mouse_wheel_trigger 
-01b1 20200707 branch p_mouse_data_push 
+01b1 2020070f branch p_mouse_data_push 
 
 p_mouse_le_current_mult_update:
 01b2 6800c6f5 fetch 1 ,mem_config_function_enable 
@@ -600,7 +600,7 @@
 p_mouse_clear_sensor_data:
 01bc 20405814 call le_set_config_more_data 
 01bd 7047a001 jam 1 ,mem_mouse_clear_sensor_data_flag 
-01be 202004e3 branch p_mouse_sensor_poweron 
+01be 202004e5 branch p_mouse_sensor_poweron 
 
 p_mouse_idle:
 01bf 20407e34 call ui_check_paring_button 
@@ -655,7 +655,7 @@
 01e4 7048bf00 jam 0 ,mem_mouse_start_discovery_enable 
 01e5 70480c00 jam 0 ,mem_mouse_long_mult_flag 
 01e6 20400277 call p_mouse_discovey_led_blink_off 
-01e7 20400702 call p_mouse_data_init 
+01e7 2040070a call p_mouse_data_init 
 01e8 202041c3 branch mouse_le_bb_event_connected 
 
 p_mouse_fast_conn_quit:
@@ -672,7 +672,7 @@
 01f1 60014498 store 2 ,mem_le_interval_min + 2 
 01f2 7047c800 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
 01f3 7047a000 jam 0 ,mem_mouse_clear_sensor_data_flag 
-01f4 20400702 call p_mouse_data_init 
+01f4 2040070a call p_mouse_data_init 
 01f5 20405816 call le_clr_config_more_data 
 01f6 204041d9 call mouse_bb_disconnected 
 01f7 6800c8bf fetch 1 ,mem_mouse_start_discovery_enable 
@@ -719,7 +719,7 @@
 p_mouse_24g_attempt_fail:
 020f 704a8b00 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
 0210 204000ea call p_mouse_tx_power_init 
-0211 204005ff call p_g24_check_51cmd_stop_24g 
+0211 20400607 call p_g24_check_51cmd_stop_24g 
 
 p_mouse_null_enter_hibernate_count:
 0212 7047a101 jam 1 ,mem_mouse_null_enter_hibernate_flag 
@@ -1151,7 +1151,7 @@
 032e 7047a100 jam 0 ,mem_mouse_null_enter_hibernate_flag 
 032f 7047a200 jam 0 ,mem_mouse_null_enter_hibernate_timer 
 0330 280ffe26 isolate1 mark_24g ,mark 
-0331 204085ff call p_g24_check_51cmd_stop_24g ,true 
+0331 20408607 call p_g24_check_51cmd_stop_24g ,true 
 0332 2020426d branch mouse_bb_event_discovery_btn + 1 
 
 p_mouse_start_discovery:
@@ -1231,7 +1231,7 @@
 036a c0065395 beq le_md_max_count ,le_slave_cont 
 036b 204055aa call le_acknowledge 
 036c 2040561e call le_prepare_tx 
-036d 20400542 call power_ctrl_start 
+036d 2040054a call power_ctrl_start 
 036e 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
@@ -1301,7 +1301,7 @@
 p_le_prepare_tx:
 039d 68008456 fetch 1 ,mem_le_arq 
 039e c28283b1 bbit1 wak ,p_le_prepare_tx_wak 
-039f 20400534 call power_ctrl_pac_succ_incrs 
+039f 2040053c call power_ctrl_pac_succ_incrs 
 03a0 6800c792 fetch 1 ,mem_empty_count 
 03a1 243a03a7 nbranch p_le_send_empyt ,blank 
 03a2 6800843f fetch 1 ,mem_le_state 
@@ -1323,7 +1323,7 @@
 
 p_in_le_tx_4:
 03ae 20405892 call le_fifo_check_nearly_full 
-03af 205a070f call p_mouse_data_pull ,blank 
+03af 205a0717 call p_mouse_data_pull ,blank 
 03b0 20205622 branch le_prepare_tx + 4 
 
 p_le_prepare_tx_wak:
@@ -1345,7 +1345,7 @@
 03be 20600000 rtn 
 
 p_le_power_ctrl_pac_succ_decrs:
-03bf 20200538 branch power_ctrl_pac_succ_decrs 
+03bf 20200540 branch power_ctrl_pac_succ_decrs 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
 03c0 6800c7a3 fetch 1 ,mem_mouse_le_reconnect_flag 
@@ -1582,922 +1582,936 @@
 046f 6800c94c fetch 1 ,mem_24g_data_type 
 0470 793ffe04 set0 bit_hop ,pdata 
 0471 6000c94c store 1 ,mem_24g_data_type 
-0472 20600000 rtn 
+0472 6000c907 store 1 ,mem_24g_txpayload 
+0473 20400540 call power_ctrl_pac_succ_decrs 
+0474 2020068e branch p_g24_ch 
 
 p_g24_transmit_hop_pac_fail:
-0473 20400538 call power_ctrl_pac_succ_decrs 
-0474 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
-0475 c0008478 beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
-0476 c001047c beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
-0477 20600000 rtn 
+0475 20400540 call power_ctrl_pac_succ_decrs 
+0476 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
+0477 c000847a beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
+0478 c001047e beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
+0479 20600000 rtn 
 
 p_g24_transmit_hop_pac_fail_wo_hop:
-0478 704a8302 jam 2 ,mem_24g_sync_cnt 
+047a 704a8302 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_fail_stage1:
-0479 704a7f00 jam 0 ,mem_24g_hop_pac_retry 
-047a 704a8100 jam 0 ,mem_24g_rf_last_sta 
-047b 20200466 branch p_g24_transmit_rf_ctrl_clear 
+047b 704a7f00 jam 0 ,mem_24g_hop_pac_retry 
+047c 704a8100 jam 0 ,mem_24g_rf_last_sta 
+047d 20200466 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_fail_hop_stage2:
-047c 704a8000 jam 0 ,mem_24g_rf_hop_ch 
-047d 20200479 branch p_g24_transmit_hop_pac_fail_stage1 
+047e 704a8000 jam 0 ,mem_24g_rf_hop_ch 
+047f 2020047b branch p_g24_transmit_hop_pac_fail_stage1 
 
 p_g24_transmit_pac_fail_hop_stage3:
-047e 68014951 fetch 2 ,mem_24g_txfail_cnt 
-047f 1fe0fe01 increase 1 ,pdata 
-0480 60014951 store 2 ,mem_24g_txfail_cnt 
-0481 c2850526 bbit1 10 ,p_g24_tx_attempt_fail 
-0482 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
-0483 c0008487 beq 1 ,p_g24_rf_hop_fastly 
-0484 704a8001 jam 1 ,mem_24g_rf_hop_ch 
+0480 68014951 fetch 2 ,mem_24g_txfail_cnt 
+0481 1fe0fe01 increase 1 ,pdata 
+0482 60014951 store 2 ,mem_24g_txfail_cnt 
+0483 c2850521 bbit1 10 ,p_g24_tx_attempt_fail 
+0484 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
+0485 c0008489 beq 1 ,p_g24_rf_hop_fastly 
+0486 704a8001 jam 1 ,mem_24g_rf_hop_ch 
 
 p_g24_rf_hop_attemp_again:
-0485 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
-0486 c0808466 bne 1 ,p_g24_transmit_rf_ctrl_clear 
+0487 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
+0488 c0808466 bne 1 ,p_g24_transmit_rf_ctrl_clear 
 
 p_g24_rf_hop_fastly:
-0487 6800ca7e fetch 1 ,mem_24g_hop_fastly_cnt 
-0488 1fe0fe01 increase 1 ,pdata 
-0489 6000ca7e store 1 ,mem_24g_hop_fastly_cnt 
-048a c002048e beq 4 ,p_g24_rf_hop_fastly_exit 
-048b 20400686 call p_g24_ch 
-048c 70499002 jam 2 ,mem_24g_max_retry 
-048d 202004e7 branch p_g24_transmit_packet 
+0489 6800ca7e fetch 1 ,mem_24g_hop_fastly_cnt 
+048a 1fe0fe01 increase 1 ,pdata 
+048b 6000ca7e store 1 ,mem_24g_hop_fastly_cnt 
+048c c0020490 beq 4 ,p_g24_rf_hop_fastly_exit 
+048d 2040068e call p_g24_ch 
+048e 70499002 jam 2 ,mem_24g_max_retry 
+048f 202004e9 branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-048e 20400538 call power_ctrl_pac_succ_decrs 
-048f 704a7e00 jam 0 ,mem_24g_hop_fastly_cnt 
-0490 20200466 branch p_g24_transmit_rf_ctrl_clear 
+0490 20400540 call power_ctrl_pac_succ_decrs 
+0491 704a7e00 jam 0 ,mem_24g_hop_fastly_cnt 
+0492 20200466 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_succ_wo_hop:
-0491 704a8302 jam 2 ,mem_24g_sync_cnt 
+0493 704a8302 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_succ:
-0492 704a8101 jam 1 ,mem_24g_rf_last_sta 
-0493 704a8000 jam 0 ,mem_24g_rf_hop_ch 
-0494 20200466 branch p_g24_transmit_rf_ctrl_clear 
+0494 704a8101 jam 1 ,mem_24g_rf_last_sta 
+0495 704a8000 jam 0 ,mem_24g_rf_hop_ch 
+0496 20200466 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_succ_rf_config:
-0495 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
-0496 c0018492 beq 3 ,p_g24_transmit_hop_pac_succ 
-0497 6800c94c fetch 1 ,mem_24g_data_type 
-0498 2fec0004 isolate0 bit_hop ,pdata 
-0499 20208464 branch p_g24_transmit_rf_sta_init ,true 
-049a 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
-049b c0008491 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
-049c c0010492 beq 2 ,p_g24_transmit_hop_pac_succ 
-049d 20600000 rtn 
+0497 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
+0498 c0018494 beq 3 ,p_g24_transmit_hop_pac_succ 
+0499 6800c94c fetch 1 ,mem_24g_data_type 
+049a 2fec0004 isolate0 bit_hop ,pdata 
+049b 20208464 branch p_g24_transmit_rf_sta_init ,true 
+049c 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
+049d c0008493 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+049e c0010494 beq 2 ,p_g24_transmit_hop_pac_succ 
+049f 20600000 rtn 
 
 p_g24_rf_sta_check:
-049e 6800c95b fetch 1 ,mem_24g_pairing_sm 
-049f c1ff8000 rtnne state_24g_pairing_success 
-04a0 204004a3 call p_g24_rf_laststa_synccnt_check 
-04a1 245604ab ncall p_g24_rf_sync_cnt_check ,user2 
-04a2 20600000 rtn 
+04a0 6800c95b fetch 1 ,mem_24g_pairing_sm 
+04a1 c1ff8000 rtnne state_24g_pairing_success 
+04a2 204004a5 call p_g24_rf_laststa_synccnt_check 
+04a3 245604ad ncall p_g24_rf_sync_cnt_check ,user2 
+04a4 20600000 rtn 
 
 p_g24_rf_laststa_synccnt_check:
-04a3 78567c00 disable user2 
-04a4 6800ca81 fetch 1 ,mem_24g_rf_last_sta 
-04a5 c1808000 rtnne 1 
-04a6 6800ca83 fetch 1 ,mem_24g_sync_cnt 
-04a7 c1800000 rtnne 0 
-04a8 704a8201 jam 1 ,mem_24g_rf_work_stage 
-04a9 70499004 jam g24_max_retry ,mem_24g_max_retry 
-04aa 20207feb branch enable_user2 
+04a5 78567c00 disable user2 
+04a6 6800ca81 fetch 1 ,mem_24g_rf_last_sta 
+04a7 c1808000 rtnne 1 
+04a8 6800ca83 fetch 1 ,mem_24g_sync_cnt 
+04a9 c1800000 rtnne 0 
+04aa 704a8201 jam 1 ,mem_24g_rf_work_stage 
+04ab 70499004 jam g24_max_retry ,mem_24g_max_retry 
+04ac 20207feb branch enable_user2 
 
 p_g24_rf_sync_cnt_check:
-04ab 6800ca83 fetch 1 ,mem_24g_sync_cnt 
-04ac 203a04b3 branch p_g24_rf_hop_attemp ,blank 
-04ad 1fe0ffff increase -1 ,pdata 
-04ae 6000ca83 store 1 ,mem_24g_sync_cnt 
-04af 704a8202 jam 2 ,mem_24g_rf_work_stage 
-04b0 20400686 call p_g24_ch 
-04b1 70499004 jam g24_max_retry ,mem_24g_max_retry 
-04b2 20600000 rtn 
+04ad 6800ca83 fetch 1 ,mem_24g_sync_cnt 
+04ae 203a04b5 branch p_g24_rf_hop_attemp ,blank 
+04af 1fe0ffff increase -1 ,pdata 
+04b0 6000ca83 store 1 ,mem_24g_sync_cnt 
+04b1 704a8202 jam 2 ,mem_24g_rf_work_stage 
+04b2 2040068e call p_g24_ch 
+04b3 70499004 jam g24_max_retry ,mem_24g_max_retry 
+04b4 20600000 rtn 
 
 p_g24_rf_hop_attemp:
-04b3 704a8203 jam 3 ,mem_24g_rf_work_stage 
-04b4 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
-04b5 243a0485 nbranch p_g24_rf_hop_attemp_again ,blank 
-04b6 20400686 call p_g24_ch 
-04b7 70499002 jam 2 ,mem_24g_max_retry 
-04b8 20600000 rtn 
+04b5 704a8203 jam 3 ,mem_24g_rf_work_stage 
+04b6 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
+04b7 243a0487 nbranch p_g24_rf_hop_attemp_again ,blank 
+04b8 2040068e call p_g24_ch 
+04b9 70499002 jam 2 ,mem_24g_max_retry 
+04ba 20600000 rtn 
 
 p_g24_txdata_prep:
-04b9 6800c95b fetch 1 ,mem_24g_pairing_sm 
-04ba c0ff8573 bne state_24g_pairing_success ,p_g24_pairing_sm 
+04bb 6800c95b fetch 1 ,mem_24g_pairing_sm 
+04bc c0ff857b bne state_24g_pairing_success ,p_g24_pairing_sm 
 
 p_g24_txdata_prep_packeage_data:
-04bb 204004bf call p_g24_package_data 
-04bc 20400674 call p_g24_transmit_prep 
+04bd 204004c1 call p_g24_package_data 
+04be 2040067c call p_g24_transmit_prep 
 
 p_g24_txdata_enable_tx:
-04bd 70495001 jam ensure_on_24g ,mem_24g_ensure 
-04be 20600000 rtn 
+04bf 70495001 jam ensure_on_24g ,mem_24g_ensure 
+04c0 20600000 rtn 
 
 p_g24_package_data:
-04bf 68014a7c fetch 2 ,mem_cb_24g_data 
-04c0 20407f9c call callback_func 
-04c1 203404c5 branch p_g24_accumulate_mouse_data ,user 
-04c2 6803c8e8 fetch 7 ,mem_24g_txbuf + 1 
-04c3 207a0000 rtn blank 
-04c4 20207fe7 branch enable_user 
+04c1 68014a7c fetch 2 ,mem_cb_24g_data 
+04c2 20407f9c call callback_func 
+04c3 203404c7 branch p_g24_accumulate_mouse_data ,user 
+04c4 6803c8e8 fetch 7 ,mem_24g_txbuf + 1 
+04c5 207a0000 rtn blank 
+04c6 20207fe7 branch enable_user 
 
 p_g24_accumulate_mouse_data:
-04c5 204004dc call p_mouse_data_xy_release 
-04c6 70497700 jam 0 ,mem_24g_abort_pac 
-04c7 1a20fe01 add rega ,1 ,pdata 
-04c8 6000c94b store 1 ,mem_24g_datalen 
-04c9 20400466 call p_g24_transmit_rf_ctrl_clear 
-04ca 6000c8e7 store 1 ,mem_24g_txbuf 
-04cb e8a88000 ifetcht 1 ,contw 
-04cc ea408000 ifetch 1 ,regb 
-04cd 9841fe00 ior temp ,pdata 
-04ce e0a08000 istore 1 ,contw 
-04cf 1a40a401 increase 1 ,regb 
-04d0 ea420000 ifetch 4 ,regb 
-04d1 e0a20000 istore 4 ,contw 
-04d2 1a40a404 increase 4 ,regb 
-04d3 d8a048ed arg mem_24g_txbuf + 6 ,contw 
-04d4 df200002 arg 2 ,loopcnt 
+04c7 204004de call p_mouse_data_xy_release 
+04c8 70497700 jam 0 ,mem_24g_abort_pac 
+04c9 1a20fe01 add rega ,1 ,pdata 
+04ca 6000c94b store 1 ,mem_24g_datalen 
+04cb 20400466 call p_g24_transmit_rf_ctrl_clear 
+04cc 6000c8e7 store 1 ,mem_24g_txbuf 
+04cd e8a88000 ifetcht 1 ,contw 
+04ce ea408000 ifetch 1 ,regb 
+04cf 9841fe00 ior temp ,pdata 
+04d0 e0a08000 istore 1 ,contw 
+04d1 1a40a401 increase 1 ,regb 
+04d2 ea420000 ifetch 4 ,regb 
+04d3 e0a20000 istore 4 ,contw 
+04d4 1a40a404 increase 4 ,regb 
+04d5 d8a048ed arg mem_24g_txbuf + 6 ,contw 
+04d6 df200002 arg 2 ,loopcnt 
 
 p_g24_accumulation_loop2:
-04d5 ea408000 ifetch 1 ,regb 
-04d6 e8a88000 ifetcht 1 ,contw 
-04d7 9840fe00 iadd temp ,pdata 
-04d8 e0a08000 istore 1 ,contw 
-04d9 1a40a401 increase 1 ,regb 
-04da c20004d5 loop p_g24_accumulation_loop2 
-04db 20600000 rtn 
+04d7 ea408000 ifetch 1 ,regb 
+04d8 e8a88000 ifetcht 1 ,contw 
+04d9 9840fe00 iadd temp ,pdata 
+04da e0a08000 istore 1 ,contw 
+04db 1a40a401 increase 1 ,regb 
+04dc c20004d7 loop p_g24_accumulation_loop2 
+04dd 20600000 rtn 
 
 p_mouse_data_xy_release:
-04dc 6800c6f5 fetch 1 ,mem_config_function_enable 
-04dd c3838000 rtnbit1 enable_sensor_motion_pin 
-04de 6800c80c fetch 1 ,mem_mouse_long_mult_flag 
-04df c1808000 rtnne 1 
-04e0 58000000 setarg 0 
-04e1 6000c80c store 1 ,mem_mouse_long_mult_flag 
-04e2 6002469b store 4 ,mem_mouse_x 
+04de 6800c6f5 fetch 1 ,mem_config_function_enable 
+04df c3838000 rtnbit1 enable_sensor_motion_pin 
+04e0 6800c80c fetch 1 ,mem_mouse_long_mult_flag 
+04e1 c1808000 rtnne 1 
+04e2 58000000 setarg 0 
+04e3 6000c80c store 1 ,mem_mouse_long_mult_flag 
+04e4 6002469b store 4 ,mem_mouse_x 
 
 p_mouse_sensor_poweron:
-04e3 58008006 setarg 0x8006 
-04e4 20406413 call twspi_write 
-04e5 20002ee0 nop 12000 
-04e6 20200118 branch p_mouse_dpi_config 
+04e5 58008006 setarg 0x8006 
+04e6 20406413 call twspi_write 
+04e7 20002ee0 nop 12000 
+04e8 20200118 branch p_mouse_dpi_config 
 
 p_g24_transmit_packet:
-04e7 70495400 jam 0 ,mem_24g_retry 
+04e9 70495400 jam 0 ,mem_24g_retry 
 
 p_g24_transmit_loop:
-04e8 d9600d00 arg param_rx_setup ,timeup 
-04e9 34730200 until clkn_rt ,meet 
-04ea 20400501 call p_g24_transmit_receive_ack 
-04eb 242c050e nbranch p_g24_retransmit ,sync 
-04ec 2437850e nbranch p_g24_retransmit ,user3 
-04ed 204004fc call p_g24_txbuf_clear 
-04ee 2040052a call p_g24_ackpayload_parse 
-04ef 20400534 call power_ctrl_pac_succ_incrs 
+04ea d9600d00 arg param_rx_setup ,timeup 
+04eb 34730200 until clkn_rt ,meet 
+04ec 20400507 call p_g24_transmit_receive_ack 
+04ed 242c0514 nbranch p_g24_retransmit ,sync 
+04ee 24378514 nbranch p_g24_retransmit ,user3 
+04ef 204004ff call p_g24_txbuf_clear 
+04f0 20400532 call p_g24_ackpayload_parse 
+04f1 2040053c call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
-04f0 6800c94a fetch 1 ,mem_24g_pid 
-04f1 1fe0fe01 increase 1 ,pdata 
-04f2 6000c94a store 1 ,mem_24g_pid 
-04f3 6800c95b fetch 1 ,mem_24g_pairing_sm 
-04f4 c0ff84ff bne state_24g_pairing_success ,p_g24_paring_mode_start 
-04f5 20400495 call p_g24_transmit_succ_rf_config 
+04f2 6800c94a fetch 1 ,mem_24g_pid 
+04f3 1fe0fe01 increase 1 ,pdata 
+04f4 6000c94a store 1 ,mem_24g_pid 
+04f5 20400502 call p_g24_hop_enable_packet 
+04f6 6800c95b fetch 1 ,mem_24g_pairing_sm 
+04f7 c0ff8505 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+04f8 20400497 call p_g24_transmit_succ_rf_config 
 
 p_g24_transmit_abandon:
-04f6 58000000 setarg 0 
-04f7 60014951 store 2 ,mem_24g_txfail_cnt 
-04f8 6000c953 store 1 ,mem_24g_get_ack_fail 
-04f9 6000ca7f store 1 ,mem_24g_hop_pac_retry 
-04fa 70495000 jam ensure_off_24g ,mem_24g_ensure 
-04fb 20600000 rtn 
+04f9 58000000 setarg 0 
+04fa 60014951 store 2 ,mem_24g_txfail_cnt 
+04fb 6000c953 store 1 ,mem_24g_get_ack_fail 
+04fc 6000ca7f store 1 ,mem_24g_hop_pac_retry 
+04fd 70495000 jam ensure_off_24g ,mem_24g_ensure 
+04fe 20600000 rtn 
 
 p_g24_txbuf_clear:
-04fc df200004 arg 4 ,loopcnt 
-04fd d8a048e7 arg mem_24g_txbuf ,contw 
-04fe 20207ec6 branch memset0 
+04ff df200004 arg 4 ,loopcnt 
+0500 d8a048e7 arg mem_24g_txbuf ,contw 
+0501 20207ec6 branch memset0 
+
+p_g24_hop_enable_packet:
+0502 6800c94c fetch 1 ,mem_24g_data_type 
+0503 c282046f bbit1 bit_hop ,p_g24_hop_ch_disable 
+0504 20600000 rtn 
 
 p_g24_paring_mode_start:
-04ff 20400531 call power_ctrl_pac_succ_cnt_init 
-0500 2020058e branch p_g24_paring_mode 
+0505 20400539 call power_ctrl_pac_succ_cnt_init 
+0506 20200596 branch p_g24_paring_mode 
 
 p_g24_transmit_receive_ack:
-0501 7857fc00 disable user3 
-0502 204006e1 call p_g24_transmit 
-0503 18002a00 force 0 ,radio_ctrl 
-0504 68024973 fetch 4 ,mem_24g_addr 
-0505 98001200 iforce access 
-0506 68088017 fetcht 1 ,mem_last_freq 
-0507 2040291f call set_freq_rx 
-0508 20402924 call rf_rx_enable 
-0509 204006a0 call p_g24_receive_rxon 
-050a 205786da call p_g24_end_of_packet ,user3 
-050b 20600000 rtn 
+0507 7857fc00 disable user3 
+0508 204006e9 call p_g24_transmit 
+0509 18002a00 force 0 ,radio_ctrl 
+050a 68024973 fetch 4 ,mem_24g_addr 
+050b 98001200 iforce access 
+050c 68088017 fetcht 1 ,mem_last_freq 
+050d 2040291f call set_freq_rx 
+050e 20402924 call rf_rx_enable 
+050f 204006a8 call p_g24_receive_rxon 
+0510 205786e2 call p_g24_end_of_packet ,user3 
+0511 20600000 rtn 
 
 p_g24_transmit_no_ack:
-050c 204006da call p_g24_end_of_packet 
-050d 202004f0 branch p_g24_transmit_next_packet 
+0512 204006e2 call p_g24_end_of_packet 
+0513 202004f2 branch p_g24_transmit_next_packet 
 
 p_g24_retransmit:
-050e 6800c953 fetch 1 ,mem_24g_get_ack_fail 
-050f 1fe0fe01 increase 1 ,pdata 
-0510 6000c953 store 1 ,mem_24g_get_ack_fail 
-0511 6800c95b fetch 1 ,mem_24g_pairing_sm 
-0512 c0ff8522 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
-0513 6808c954 fetcht 1 ,mem_24g_retry 
-0514 18408401 increase 1 ,temp 
-0515 6008c954 storet 1 ,mem_24g_retry 
-0516 6800c990 fetch 1 ,mem_24g_max_retry 
-0517 98467e00 isub temp ,pdata 
-0518 243a04e8 nbranch p_g24_transmit_loop ,blank 
-0519 6800ca82 fetch 1 ,mem_24g_rf_work_stage 
-051a c001847e beq 3 ,p_g24_transmit_pac_fail_hop_stage3 
-051b 6800ca7f fetch 1 ,mem_24g_hop_pac_retry 
-051c 1fe0fe01 increase 1 ,pdata 
-051d 6000ca7f store 1 ,mem_24g_hop_pac_retry 
-051e c0010473 beq 2 ,p_g24_transmit_hop_pac_fail 
-051f 2040046a call p_g24_hop_ch_enable 
-0520 70499001 jam 1 ,mem_24g_max_retry 
-0521 202004e7 branch p_g24_transmit_packet 
+0514 6800c977 fetch 1 ,mem_24g_abort_pac 
+0515 247a0000 nrtn blank 
+0516 68014951 fetch 2 ,mem_24g_txfail_cnt 
+0517 1fe0fe01 increase 1 ,pdata 
+0518 60014951 store 2 ,mem_24g_txfail_cnt 
+0519 6800c952 fetch 1 ,mem_24g_txfail_cnt + 1 
+051a c2820523 bbit1 4 ,p_g24_stop_g24_mode 
+051b 6800c95b fetch 1 ,mem_24g_pairing_sm 
+051c c0ff851f bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+051d 20400528 call p_g24_tx_hop_ch_process 
+051e 202004ea branch p_g24_transmit_loop 
 
 p_g24_tx_paring_retry:
-0522 6800c953 fetch 1 ,mem_24g_get_ack_fail 
-0523 c1ff8000 rtnne 0xff 
-0524 70495300 jam 0 ,mem_24g_get_ack_fail 
-0525 20200528 branch p_g24_stop_g24_mode 
+051f 6800c951 fetch 1 ,mem_24g_txfail_cnt 
+0520 c1ff8000 rtnne 0xff 
 
 p_g24_tx_attempt_fail:
-0526 58000000 setarg 0 
-0527 60014951 store 2 ,mem_24g_txfail_cnt 
+0521 58000000 setarg 0 
+0522 60014951 store 2 ,mem_24g_txfail_cnt 
 
 p_g24_stop_g24_mode:
-0528 700a993a jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
-0529 20207d86 branch ui_ipc_send_event 
+0523 700a993a jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0524 20207d86 branch ui_ipc_send_event 
+
+p_g24_tx_fast_hop:
+0525 2040056d call power_ctrl_txpower_incrs 
+0526 20400540 call power_ctrl_pac_succ_decrs 
+0527 2020068e branch p_g24_ch 
+
+p_g24_tx_hop_ch_process:
+0528 6800c954 fetch 1 ,mem_24g_retry 
+0529 1fe67c0b sub pdata ,11 ,null 
+052a 24210525 nbranch p_g24_tx_fast_hop ,positive 
+052b 1fe0fe01 increase 1 ,pdata 
+052c 6000c954 store 1 ,mem_24g_retry 
+052d c001046a beq 2 ,p_g24_hop_ch_enable 
+052e c003046f beq 6 ,p_g24_hop_ch_disable 
+052f c004046a beq 8 ,p_g24_hop_ch_enable 
+0530 c006046f beq 12 ,p_g24_hop_ch_disable 
+0531 20600000 rtn 
 
 p_g24_ackpayload_parse:
-052a 20400608 call p_g24_read_len_pid_crc 
-052b 6800c949 fetch 1 ,mem_24g_rxdata_length 
-052c 207a0000 rtn blank 
-052d 98007200 iforce loopcnt 
-052e d8c048c7 arg mem_24g_rxbuf + 2 ,contr 
-052f d8a04929 arg mem_24g_rxpayload ,contw 
-0530 20207f01 branch memcpy 
+0532 20400610 call p_g24_read_len_pid_crc 
+0533 6800c949 fetch 1 ,mem_24g_rxdata_length 
+0534 207a0000 rtn blank 
+0535 98007200 iforce loopcnt 
+0536 d8c048c7 arg mem_24g_rxbuf + 2 ,contr 
+0537 d8a04929 arg mem_24g_rxpayload ,contw 
+0538 20207f01 branch memcpy 
 
 power_ctrl_pac_succ_cnt_init:
-0531 704a8701 jam 1 ,mem_power_ctrl_level 
-0532 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0533 20600000 rtn 
+0539 704a8701 jam 1 ,mem_power_ctrl_level 
+053a 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+053b 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0534 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0535 1fe0fe01 increase 1 ,pdata 
-0536 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0537 20600000 rtn 
-
-power_ctrl_pac_succ_decrs:
-0538 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0539 1fe67c02 sub pdata ,2 ,null 
-053a 24410540 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-053b 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-053c c1000000 rtneq 0 
-053d 1fe0ffff increase -1 ,pdata 
+053c 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+053d 1fe0fe01 increase 1 ,pdata 
 053e 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
 053f 20600000 rtn 
 
+power_ctrl_pac_succ_decrs:
+0540 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0541 1fe67c02 sub pdata ,2 ,null 
+0542 24410548 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0543 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0544 c1000000 rtneq 0 
+0545 1fe0ffff increase -1 ,pdata 
+0546 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0547 20600000 rtn 
+
 power_ctrl_pac_succ_cnt_reinit:
-0540 704a8403 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-0541 20600000 rtn 
+0548 704a8403 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0549 20600000 rtn 
 
 power_ctrl_start:
-0542 68014682 fetch 2 ,mem_ui_state_map 
-0543 c3858000 rtnbit1 ui_state_ble_adv 
-0544 c3838000 rtnbit1 ui_state_bt_reconnect 
-0545 c3830000 rtnbit1 ui_state_bt_discovery 
-0546 da204a0d arg mem_rssi_signal_buf ,rega 
-0547 20400655 call p_rssi_average 
-0548 6008ca85 storet 1 ,mem_rssi_avg_received 
-0549 58000082 setarg rssi_dis_max_24g 
-054a c513054c bmark1 mark_24g ,power_ctrl_start_next 
-054b 58000080 setarg rssi_dis_max_ble 
+054a 68014682 fetch 2 ,mem_ui_state_map 
+054b c3858000 rtnbit1 ui_state_ble_adv 
+054c c3838000 rtnbit1 ui_state_bt_reconnect 
+054d c3830000 rtnbit1 ui_state_bt_discovery 
+054e da204a0d arg mem_rssi_signal_buf ,rega 
+054f 2040065d call p_rssi_average 
+0550 6008ca85 storet 1 ,mem_rssi_avg_received 
+0551 58000082 setarg rssi_dis_max_24g 
+0552 c5130554 bmark1 mark_24g ,power_ctrl_start_next 
+0553 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-054c 98467c00 isub temp ,null 
-054d 24210564 nbranch power_ctrl_txpower_incrs_force ,positive 
-054e 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-054f 1fe67c02 sub pdata ,2 ,null 
-0550 24210554 nbranch power_ctrl_txpower_decrs_check ,positive 
-0551 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0552 c0000565 beq 0 ,power_ctrl_txpower_incrs 
-0553 20600000 rtn 
+0554 98467c00 isub temp ,null 
+0555 2421056c nbranch power_ctrl_txpower_incrs_force ,positive 
+0556 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0557 1fe67c02 sub pdata ,2 ,null 
+0558 2421055c nbranch power_ctrl_txpower_decrs_check ,positive 
+0559 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+055a c000056d beq 0 ,power_ctrl_txpower_incrs 
+055b 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-0554 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0555 c1900000 rtnne 32 
-0556 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+055c 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+055d c1990000 rtnne 50 
+055e 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-0557 6808ca85 fetcht 1 ,mem_rssi_avg_received 
-0558 58000077 setarg rssi_dis_min_24g 
-0559 c513055b bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-055a 58000075 setarg rssi_dis_min_ble 
+055f 6808ca85 fetcht 1 ,mem_rssi_avg_received 
+0560 58000077 setarg rssi_dis_min_24g 
+0561 c5130563 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0562 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-055b 98467c00 isub temp ,null 
-055c 24610000 nrtn positive 
-055d 6800ca87 fetch 1 ,mem_power_ctrl_level 
-055e c000056c beq 0 ,power_ctrl_decrs_level0 
-055f 1fe0ffff increase -1 ,pdata 
-0560 6000ca87 store 1 ,mem_power_ctrl_level 
-0561 c000056c beq 0 ,power_ctrl_decrs_level0 
+0563 98467c00 isub temp ,null 
+0564 24610000 nrtn positive 
+0565 6800ca87 fetch 1 ,mem_power_ctrl_level 
+0566 c0000574 beq 0 ,power_ctrl_decrs_level0 
+0567 1fe0ffff increase -1 ,pdata 
+0568 6000ca87 store 1 ,mem_power_ctrl_level 
+0569 c0000574 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-0562 7041de00 jam tx_power_0db ,mem_tx_power 
-0563 20600000 rtn 
+056a 7041de00 jam tx_power_0db ,mem_tx_power 
+056b 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-0564 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+056c 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-0565 6800ca87 fetch 1 ,mem_power_ctrl_level 
-0566 c001056a beq 2 ,power_ctrl_incrs_level2 
-0567 1fe0fe01 increase 1 ,pdata 
-0568 6000ca87 store 1 ,mem_power_ctrl_level 
-0569 c0008562 beq 1 ,power_ctrl_incrs_level1 
+056d 6800ca87 fetch 1 ,mem_power_ctrl_level 
+056e c0010572 beq 2 ,power_ctrl_incrs_level2 
+056f 1fe0fe01 increase 1 ,pdata 
+0570 6000ca87 store 1 ,mem_power_ctrl_level 
+0571 c000856a beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-056a 7041de02 jam tx_power_5db ,mem_tx_power 
-056b 20600000 rtn 
+0572 7041de02 jam tx_power_5db ,mem_tx_power 
+0573 20600000 rtn 
 
 power_ctrl_decrs_level0:
-056c 7041de04 jam tx_power_f5db ,mem_tx_power 
-056d 20600000 rtn 
+0574 7041de04 jam tx_power_f5db ,mem_tx_power 
+0575 20600000 rtn 
 
 p_g24_pair_init:
-056e 7041de20 jam tx_power_pair ,mem_tx_power 
-056f 70494a00 jam 0 ,mem_24g_pid 
-0570 7049554e jam g24_pair_ch ,mem_24g_ch 
-0571 68024957 fetch 4 ,mem_24g_paring_addr 
-0572 20200666 branch p_g24_update_addr_and_synccrc8 
+0576 7041de00 jam tx_power_0db ,mem_tx_power 
+0577 70494a00 jam 0 ,mem_24g_pid 
+0578 7049554e jam g24_pair_ch ,mem_24g_ch 
+0579 68024957 fetch 4 ,mem_24g_paring_addr 
+057a 2020066e branch p_g24_update_addr_and_synccrc8 
 
 p_g24_pairing_sm:
-0573 6800c950 fetch 1 ,mem_24g_ensure 
-0574 c000ffe7 beq ensure_on_24g ,enable_user 
-0575 6800c95b fetch 1 ,mem_24g_pairing_sm 
-0576 c000857a beq state_24g_pairing_1 ,p_g24_pairing_sm_1 
-0577 c001057d beq state_24g_pairing_2 ,p_g24_pairing_sm_2 
-0578 c0018580 beq state_24g_pairing_3 ,p_g24_pairing_sm_3 
-0579 20202a8c branch assert 
+057b 6800c950 fetch 1 ,mem_24g_ensure 
+057c c000ffe7 beq ensure_on_24g ,enable_user 
+057d 6800c95b fetch 1 ,mem_24g_pairing_sm 
+057e c0008582 beq state_24g_pairing_1 ,p_g24_pairing_sm_1 
+057f c0010585 beq state_24g_pairing_2 ,p_g24_pairing_sm_2 
+0580 c0018588 beq state_24g_pairing_3 ,p_g24_pairing_sm_3 
+0581 20202a8c branch assert 
 
 p_g24_pairing_sm_1:
-057a 70495b11 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
-057b 70119eaa jam 0xaa ,mem_24g_common_temp 
-057c 20200582 branch p_g24_pairing_sm_common 
+0582 70495b11 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
+0583 70119eaa jam 0xaa ,mem_24g_common_temp 
+0584 2020058a branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_2:
-057d 70495b12 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
-057e 70119e55 jam 0x55 ,mem_24g_common_temp 
-057f 20200582 branch p_g24_pairing_sm_common 
+0585 70495b12 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
+0586 70119e55 jam 0x55 ,mem_24g_common_temp 
+0587 2020058a branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_3:
-0580 70495b13 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
-0581 70119e22 jam 0x22 ,mem_24g_common_temp 
+0588 70495b13 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
+0589 70119e22 jam 0x22 ,mem_24g_common_temp 
 
 p_g24_pairing_sm_common:
-0582 6800c94c fetch 1 ,mem_24g_data_type 
-0583 1fe17e07 and_into bits_data ,pdata 
-0584 6000919f store 1 ,mem_24g_common_temp + 1 
-0585 68024982 fetch 4 ,mem_24g_device_addr 
-0586 600211a0 store 4 ,mem_24g_common_temp + 2 
+058a 6800c94c fetch 1 ,mem_24g_data_type 
+058b 1fe17e07 and_into bits_data ,pdata 
+058c 6000919f store 1 ,mem_24g_common_temp + 1 
+058d 68024982 fetch 4 ,mem_24g_device_addr 
+058e 600211a0 store 4 ,mem_24g_common_temp + 2 
 
 p_g24_put_pairing_data_in_buff:
-0587 7011a400 jam 0 ,mem_24g_common_temp + 6 
-0588 da20119e arg mem_24g_common_temp ,rega 
-0589 d8400007 arg 7 ,temp 
-058a 20400603 call p_g24_put_data_in_buff 
-058b 20400674 call p_g24_transmit_prep 
-058c 204004bd call p_g24_txdata_enable_tx 
-058d 20207fe7 branch enable_user 
+058f 7011a400 jam 0 ,mem_24g_common_temp + 6 
+0590 da20119e arg mem_24g_common_temp ,rega 
+0591 d8400007 arg 7 ,temp 
+0592 2040060b call p_g24_put_data_in_buff 
+0593 2040067c call p_g24_transmit_prep 
+0594 204004bf call p_g24_txdata_enable_tx 
+0595 20207fe7 branch enable_user 
 
 p_g24_paring_mode:
-058e 6800c95b fetch 1 ,mem_24g_pairing_sm 
-058f c17f8000 rtneq state_24g_pairing_success 
-0590 c0088594 beq state_24g_pairing_1_waiting_ack ,p_g24_pairing_sm_1_waiting_ack 
-0591 c0090596 beq state_24g_pairing_2_waiting_ack ,p_g24_pairing_sm_2_waiting_ack 
-0592 c0098598 beq state_24g_pairing_3_waiting_ack ,p_g24_pairing_sm_3_waiting_ack 
-0593 20600000 rtn 
+0596 6800c95b fetch 1 ,mem_24g_pairing_sm 
+0597 c17f8000 rtneq state_24g_pairing_success 
+0598 c008859c beq state_24g_pairing_1_waiting_ack ,p_g24_pairing_sm_1_waiting_ack 
+0599 c009059e beq state_24g_pairing_2_waiting_ack ,p_g24_pairing_sm_2_waiting_ack 
+059a c00985a0 beq state_24g_pairing_3_waiting_ack ,p_g24_pairing_sm_3_waiting_ack 
+059b 20600000 rtn 
 
 p_g24_pairing_sm_1_waiting_ack:
-0594 70495b02 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
-0595 202004f6 branch p_g24_transmit_abandon 
+059c 70495b02 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
+059d 202004f9 branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_2_waiting_ack:
-0596 70495b03 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
-0597 202004f6 branch p_g24_transmit_abandon 
+059e 70495b03 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
+059f 202004f9 branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_3_waiting_ack:
-0598 70495bff jam state_24g_pairing_success ,mem_24g_pairing_sm 
-0599 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
-059a 20407d86 call ui_ipc_send_event 
-059b 204005ce call p_g24_store_dongle_addr 
-059c 202004f6 branch p_g24_transmit_abandon 
+05a0 70495bff jam state_24g_pairing_success ,mem_24g_pairing_sm 
+05a1 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+05a2 20407d86 call ui_ipc_send_event 
+05a3 204005d6 call p_g24_store_dongle_addr 
+05a4 202004f9 branch p_g24_transmit_abandon 
 
 p_g24_tx_attemp_data_prep:
-059d 70119eff jam 0xff ,mem_24g_common_temp 
-059e 6800c94c fetch 1 ,mem_24g_data_type 
-059f 6000919f store 1 ,mem_24g_common_temp + 1 
-05a0 68024982 fetch 4 ,mem_24g_device_addr 
-05a1 600211a0 store 4 ,mem_24g_common_temp + 2 
-05a2 d8400006 arg 6 ,temp 
-05a3 da20119e arg mem_24g_common_temp ,rega 
-05a4 20400603 call p_g24_put_data_in_buff 
-05a5 20200674 branch p_g24_transmit_prep 
+05a5 70119eff jam 0xff ,mem_24g_common_temp 
+05a6 6800c94c fetch 1 ,mem_24g_data_type 
+05a7 6000919f store 1 ,mem_24g_common_temp + 1 
+05a8 68024982 fetch 4 ,mem_24g_device_addr 
+05a9 600211a0 store 4 ,mem_24g_common_temp + 2 
+05aa d8400006 arg 6 ,temp 
+05ab da20119e arg mem_24g_common_temp ,rega 
+05ac 2040060b call p_g24_put_data_in_buff 
+05ad 2020067c branch p_g24_transmit_prep 
 
 p_g24_auto_pair_start:
-05a6 58000000 setarg 0 
-05a7 600111be store 2 ,mem_24g_pair_current_ch_num 
-05a8 793f8026 set0 mark_24g ,mark 
-05a9 204005e6 call p_g24_auto_pair_first_attemp 
-05aa 2040059d call p_g24_tx_attemp_data_prep 
+05ae 58000000 setarg 0 
+05af 600111be store 2 ,mem_24g_pair_current_ch_num 
+05b0 793f8026 set0 mark_24g ,mark 
+05b1 204005ee call p_g24_auto_pair_first_attemp 
+05b2 204005a5 call p_g24_tx_attemp_data_prep 
 
 p_g24_auto_pair_restart:
-05ab 58000000 setarg 0 
-05ac 60014978 store 2 ,mem_24g_check_dongle_times 
-05ad 6808c8b5 fetcht 1 ,mem_mouse_multi_led_gpio 
-05ae 79200407 set1 gpio_active_bit ,temp 
-05af 2040680e call gpio_config_output 
+05b3 58000000 setarg 0 
+05b4 60014978 store 2 ,mem_24g_check_dongle_times 
+05b5 6808c8b5 fetcht 1 ,mem_mouse_multi_led_gpio 
+05b6 79200407 set1 gpio_active_bit ,temp 
+05b7 2040680e call gpio_config_output 
 
 p_g24_auto_pair_start_loop:
-05b0 20402afa call lpo_calibration 
-05b1 200007d0 nop 2000 
-05b2 204005da call p_g24_led_on_timer_check 
-05b3 68014978 fetch 2 ,mem_24g_check_dongle_times 
-05b4 d8407788 arg 0x7788 ,temp 
-05b5 98467c00 isub temp ,null 
-05b6 20228528 branch p_g24_stop_g24_mode ,zero 
-05b7 20400501 call p_g24_transmit_receive_ack 
-05b8 242c05d0 nbranch p_g24_auto_pair_retry ,sync 
-05b9 243785d0 nbranch p_g24_auto_pair_retry ,user3 
-05ba 2040052a call p_g24_ackpayload_parse 
-05bb 204000ea call p_mouse_tx_power_init 
-05bc 68024973 fetch 4 ,mem_24g_addr 
-05bd 680a4957 fetcht 4 ,mem_24g_paring_addr 
-05be 98467c00 isub temp ,null 
-05bf 20228114 branch p_g24_start_pairing_sm1 ,zero 
-05c0 680a4982 fetcht 4 ,mem_24g_device_addr 
-05c1 98467c00 isub temp ,null 
-05c2 204285ce call p_g24_store_dongle_addr ,zero 
+05b8 20402afa call lpo_calibration 
+05b9 200007d0 nop 2000 
+05ba 204005e2 call p_g24_led_on_timer_check 
+05bb 68014978 fetch 2 ,mem_24g_check_dongle_times 
+05bc d8407788 arg 0x7788 ,temp 
+05bd 98467c00 isub temp ,null 
+05be 20228523 branch p_g24_stop_g24_mode ,zero 
+05bf 20400507 call p_g24_transmit_receive_ack 
+05c0 242c05d8 nbranch p_g24_auto_pair_retry ,sync 
+05c1 243785d8 nbranch p_g24_auto_pair_retry ,user3 
+05c2 20400532 call p_g24_ackpayload_parse 
+05c3 204000ea call p_mouse_tx_power_init 
+05c4 68024973 fetch 4 ,mem_24g_addr 
+05c5 680a4957 fetcht 4 ,mem_24g_paring_addr 
+05c6 98467c00 isub temp ,null 
+05c7 20228114 branch p_g24_start_pairing_sm1 ,zero 
+05c8 680a4982 fetcht 4 ,mem_24g_device_addr 
+05c9 98467c00 isub temp ,null 
+05ca 204285d6 call p_g24_store_dongle_addr ,zero 
 
 p_g24_tx_attemp_dongle_succ:
-05c3 79200026 set1 mark_24g ,mark 
-05c4 58000000 setarg 0 
-05c5 60014978 store 2 ,mem_24g_check_dongle_times 
-05c6 70480c00 jam 0 ,mem_mouse_long_mult_flag 
-05c7 700a993c jam bt_evt_24g_attempt_success ,mem_fifo_temp 
-05c8 20407d86 call ui_ipc_send_event 
-05c9 204004fc call p_g24_txbuf_clear 
+05cb 79200026 set1 mark_24g ,mark 
+05cc 58000000 setarg 0 
+05cd 60014978 store 2 ,mem_24g_check_dongle_times 
+05ce 70480c00 jam 0 ,mem_mouse_long_mult_flag 
+05cf 700a993c jam bt_evt_24g_attempt_success ,mem_fifo_temp 
+05d0 20407d86 call ui_ipc_send_event 
+05d1 204004ff call p_g24_txbuf_clear 
 
 p_g24_transmit_by_interrupt_enable:
-05ca 704a8b01 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
-05cb 58000000 setarg 0 
-05cc 60014a8c store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-05cd 20600000 rtn 
+05d2 704a8b01 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+05d3 58000000 setarg 0 
+05d4 60014a8c store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+05d5 20600000 rtn 
 
 p_g24_store_dongle_addr:
-05ce 6802492b fetch 4 ,mem_24g_rxpayload + 2 
-05cf 20200666 branch p_g24_update_addr_and_synccrc8 
+05d6 6802492b fetch 4 ,mem_24g_rxpayload + 2 
+05d7 2020066e branch p_g24_update_addr_and_synccrc8 
 
 p_g24_auto_pair_retry:
-05d0 68014978 fetch 2 ,mem_24g_check_dongle_times 
-05d1 1fe0fe01 increase 1 ,pdata 
-05d2 60014978 store 2 ,mem_24g_check_dongle_times 
-05d3 6800ca89 fetch 1 ,mem_24g_auto_paring_switch 
-05d4 1fe0fe01 increase 1 ,pdata 
-05d5 1fe17e03 and_into 3 ,pdata 
-05d6 6000ca89 store 1 ,mem_24g_auto_paring_switch 
-05d7 c00005f9 beq 0 ,p_g24_auto_pair_device_attemp 
-05d8 c00105fd beq 2 ,p_g24_auto_pair_all_powerful_attemp 
-05d9 202005fb branch p_g24_auto_pair_pair_attemp 
+05d8 68014978 fetch 2 ,mem_24g_check_dongle_times 
+05d9 1fe0fe01 increase 1 ,pdata 
+05da 60014978 store 2 ,mem_24g_check_dongle_times 
+05db 6800ca89 fetch 1 ,mem_24g_auto_paring_switch 
+05dc 1fe0fe01 increase 1 ,pdata 
+05dd 1fe17e03 and_into 3 ,pdata 
+05de 6000ca89 store 1 ,mem_24g_auto_paring_switch 
+05df c0000601 beq 0 ,p_g24_auto_pair_device_attemp 
+05e0 c0010605 beq 2 ,p_g24_auto_pair_all_powerful_attemp 
+05e1 20200603 branch p_g24_auto_pair_pair_attemp 
 
 p_g24_led_on_timer_check:
-05da 6800c8a9 fetch 1 ,mem_g24_led_on_timer_count_end 
-05db 247a0000 nrtn blank 
-05dc 20400271 call p_mouse_multi_up_led_on1 
-05dd 680148a7 fetch 2 ,mem_g24_led_on_timer_count 
-05de 1fe0fe01 increase 1 ,pdata 
-05df 600148a7 store 2 ,mem_g24_led_on_timer_count 
-05e0 d84007f8 arg 0x7f8 ,temp 
-05e1 98467c00 isub temp ,null 
-05e2 202285e4 branch p_g24_pair_led_off ,zero 
-05e3 20600000 rtn 
+05e2 6800c8a9 fetch 1 ,mem_g24_led_on_timer_count_end 
+05e3 247a0000 nrtn blank 
+05e4 20400271 call p_mouse_multi_up_led_on1 
+05e5 680148a7 fetch 2 ,mem_g24_led_on_timer_count 
+05e6 1fe0fe01 increase 1 ,pdata 
+05e7 600148a7 store 2 ,mem_g24_led_on_timer_count 
+05e8 d84007f8 arg 0x7f8 ,temp 
+05e9 98467c00 isub temp ,null 
+05ea 202285ec branch p_g24_pair_led_off ,zero 
+05eb 20600000 rtn 
 
 p_g24_pair_led_off:
-05e4 7048a901 jam 1 ,mem_g24_led_on_timer_count_end 
-05e5 20200277 branch p_mouse_multi_led_blink_off 
+05ec 7048a901 jam 1 ,mem_g24_led_on_timer_count_end 
+05ed 20200277 branch p_mouse_multi_led_blink_off 
 
 p_g24_auto_pair_first_attemp:
-05e6 204000ea call p_mouse_tx_power_init 
-05e7 68024982 fetch 4 ,mem_24g_device_addr 
-05e8 60024973 store 4 ,mem_24g_addr 
-05e9 680091be fetch 1 ,mem_24g_pair_current_ch_num 
-05ea 6000c956 store 1 ,mem_24g_current_ch_number 
-05eb 204005ee call p_g24_ch_syncword_crc8_init 
-05ec 600891be storet 1 ,mem_24g_pair_current_ch_num 
-05ed 20600000 rtn 
+05ee 204000ea call p_mouse_tx_power_init 
+05ef 68024982 fetch 4 ,mem_24g_device_addr 
+05f0 60024973 store 4 ,mem_24g_addr 
+05f1 680091be fetch 1 ,mem_24g_pair_current_ch_num 
+05f2 6000c956 store 1 ,mem_24g_current_ch_number 
+05f3 204005f6 call p_g24_ch_syncword_crc8_init 
+05f4 600891be storet 1 ,mem_24g_pair_current_ch_num 
+05f5 20600000 rtn 
 
 p_g24_ch_syncword_crc8_init:
-05ee 20400667 call p_g24_syncword_crc8 
-05ef 20200686 branch p_g24_ch 
+05f6 2040066f call p_g24_syncword_crc8 
+05f7 2020068e branch p_g24_ch 
 
 p_g24_auto_pair_all_powerful:
-05f0 7041de20 jam tx_power_pair ,mem_tx_power 
-05f1 58000f0f setarg 0x0f0f 
-05f2 60014973 store 2 ,mem_24g_addr 
-05f3 e0a10000 istore 2 ,contw 
-05f4 680091bf fetch 1 ,mem_24g_powerful_current_ch_num 
-05f5 6000c956 store 1 ,mem_24g_current_ch_number 
-05f6 204005ee call p_g24_ch_syncword_crc8_init 
-05f7 600891bf storet 1 ,mem_24g_powerful_current_ch_num 
-05f8 20600000 rtn 
+05f8 7041de20 jam tx_power_pair ,mem_tx_power 
+05f9 58000f0f setarg 0x0f0f 
+05fa 60014973 store 2 ,mem_24g_addr 
+05fb e0a10000 istore 2 ,contw 
+05fc 680091bf fetch 1 ,mem_24g_powerful_current_ch_num 
+05fd 6000c956 store 1 ,mem_24g_current_ch_number 
+05fe 204005f6 call p_g24_ch_syncword_crc8_init 
+05ff 600891bf storet 1 ,mem_24g_powerful_current_ch_num 
+0600 20600000 rtn 
 
 p_g24_auto_pair_device_attemp:
-05f9 204005e6 call p_g24_auto_pair_first_attemp 
-05fa 202005b0 branch p_g24_auto_pair_start_loop 
+0601 204005ee call p_g24_auto_pair_first_attemp 
+0602 202005b8 branch p_g24_auto_pair_start_loop 
 
 p_g24_auto_pair_pair_attemp:
-05fb 2040056e call p_g24_pair_init 
-05fc 202005b0 branch p_g24_auto_pair_start_loop 
+0603 20400576 call p_g24_pair_init 
+0604 202005b8 branch p_g24_auto_pair_start_loop 
 
 p_g24_auto_pair_all_powerful_attemp:
-05fd 204005f0 call p_g24_auto_pair_all_powerful 
-05fe 202005b0 branch p_g24_auto_pair_start_loop 
+0605 204005f8 call p_g24_auto_pair_all_powerful 
+0606 202005b8 branch p_g24_auto_pair_start_loop 
 
 p_g24_check_51cmd_stop_24g:
-05ff 793f8026 set0 mark_24g ,mark 
-0600 204053ce call le_disable 
+0607 793f8026 set0 mark_24g ,mark 
+0608 204053ce call le_disable 
 
 p_mouse_disable_g24_pairing_flag:
-0601 d8e00003 arg mosue_24g_pairing_flag ,queue 
-0602 202043d2 branch mouse_disable_function_flag 
+0609 d8e00003 arg mosue_24g_pairing_flag ,queue 
+060a 202043d2 branch mouse_disable_function_flag 
 
 p_g24_put_data_in_buff:
-0603 6008c94b storet 1 ,mem_24g_datalen 
-0604 18427200 copy temp ,loopcnt 
-0605 d8a048e7 arg mem_24g_txbuf ,contw 
-0606 1a220c00 copy rega ,contr 
-0607 20207f01 branch memcpy 
+060b 6008c94b storet 1 ,mem_24g_datalen 
+060c 18427200 copy temp ,loopcnt 
+060d d8a048e7 arg mem_24g_txbuf ,contw 
+060e 1a220c00 copy rega ,contr 
+060f 20207f01 branch memcpy 
 
 p_g24_read_len_pid_crc:
-0608 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
-0609 1fe97e00 rshift3 pdata ,pdata 
-060a 6000c949 store 1 ,mem_24g_rxdata_length 
-060b 1fe0fe01 increase 1 ,pdata 
-060c d8c048c6 arg mem_24g_rxbuf + 1 ,contr 
-060d 98c08c00 iadd contr ,contr 
-060e e8c18000 ifetch 3 ,contr 
-060f 6001c988 store 3 ,mem_24g_sta_crc 
 0610 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
-0611 1fe37e00 rshift pdata ,pdata 
-0612 1fe17e03 and pdata ,0x03 ,pdata 
-0613 6000c98e store 1 ,mem_24g_sta_pid 
-0614 20600000 rtn 
+0611 1fe97e00 rshift3 pdata ,pdata 
+0612 6000c949 store 1 ,mem_24g_rxdata_length 
+0613 1fe0fe01 increase 1 ,pdata 
+0614 d8c048c6 arg mem_24g_rxbuf + 1 ,contr 
+0615 98c08c00 iadd contr ,contr 
+0616 e8c18000 ifetch 3 ,contr 
+0617 6001c988 store 3 ,mem_24g_sta_crc 
+0618 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
+0619 1fe37e00 rshift pdata ,pdata 
+061a 1fe17e03 and pdata ,0x03 ,pdata 
+061b 6000c98e store 1 ,mem_24g_sta_pid 
+061c 20600000 rtn 
 
 p_set_freq_tx:
-0615 60088017 storet 1 ,mem_last_freq 
-0616 1840a200 add temp ,0 ,rega 
-0617 20402981 call rf_write_freq 
-0618 58000500 setarg param_pll_setup 
-0619 20402a8f call sleep 
+061d 60088017 storet 1 ,mem_last_freq 
+061e 1840a200 add temp ,0 ,rega 
+061f 20402981 call rf_write_freq 
+0620 58000500 setarg param_pll_setup 
+0621 20402a8f call sleep 
 
 p_rf_tx_enable:
-061a 70890601 jam 0x1 ,rfen_adc 
-061b 7089003c jam 0x3c ,rfen_rx 
-061c 708901e0 jam 0xe0 ,rfen_tx 
-061d 2000000a nop 10 
-061e 70890201 jam 0x01 ,rfen_mdm 
-061f 7089023d jam 0x3d ,rfen_mdm 
-0620 2000000a nop 10 
-0621 708903b7 jam 0xb7 ,rfen_sn 
-0622 2000000a nop 10 
-0623 7089027d jam 0x7d ,rfen_mdm 
-0624 6800c1de fetch 1 ,mem_tx_power 
-0625 c001062d beq tx_power_5db ,p_set_tx_power_5db 
-0626 c0020632 beq tx_power_f5db ,p_set_tx_power_f5db 
-0627 c0100641 beq tx_power_pair ,p_set_tx_power_pair 
+0622 70890601 jam 0x1 ,rfen_adc 
+0623 7089003c jam 0x3c ,rfen_rx 
+0624 708901e0 jam 0xe0 ,rfen_tx 
+0625 2000000a nop 10 
+0626 70890201 jam 0x01 ,rfen_mdm 
+0627 7089023d jam 0x3d ,rfen_mdm 
+0628 2000000a nop 10 
+0629 708903b7 jam 0xb7 ,rfen_sn 
+062a 2000000a nop 10 
+062b 7089027d jam 0x7d ,rfen_mdm 
+062c 6800c1de fetch 1 ,mem_tx_power 
+062d c0010635 beq tx_power_5db ,p_set_tx_power_5db 
+062e c002063a beq tx_power_f5db ,p_set_tx_power_f5db 
+062f c0100649 beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-0628 20400637 call p_rx_low_sens 
-0629 708955d0 jam 0xd0 ,0x8955 
-062a 708956e0 jam 0xe0 ,0x8956 
-062b 7089586c jam 0x6c ,0x8958 
-062c 2020294b branch set_tx_power_0db 
+0630 2040063f call p_rx_low_sens 
+0631 708955d0 jam 0xd0 ,0x8955 
+0632 708956e0 jam 0xe0 ,0x8956 
+0633 7089586c jam 0x6c ,0x8958 
+0634 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-062d 2040063c call p_rx_high_sens 
-062e 708955d0 jam 0xd0 ,0x8955 
-062f 708956e0 jam 0xe0 ,0x8956 
-0630 7089583c jam 0x3c ,0x8958 
-0631 20202953 branch set_tx_power_5db 
+0635 20400644 call p_rx_high_sens 
+0636 708955d0 jam 0xd0 ,0x8955 
+0637 708956e0 jam 0xe0 ,0x8956 
+0638 7089583c jam 0x3c ,0x8958 
+0639 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-0632 20400637 call p_rx_low_sens 
-0633 708955d0 jam 0xd0 ,0x8955 
-0634 708956c0 jam 0xc0 ,0x8956 
-0635 7089586c jam 0x6c ,0x8958 
-0636 2020295b branch set_tx_power_f5db 
+063a 2040063f call p_rx_low_sens 
+063b 708955d0 jam 0xd0 ,0x8955 
+063c 708956c0 jam 0xc0 ,0x8956 
+063d 7089586c jam 0x6c ,0x8958 
+063e 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-0637 70894c5b jam 0x5b ,0x894c 
-0638 70894d96 jam 0x96 ,0x894d 
-0639 70894e2c jam 0x2c ,0x894e 
-063a 70894f46 jam 0x46 ,0x894f 
-063b 20600000 rtn 
+063f 70894c5b jam 0x5b ,0x894c 
+0640 70894d96 jam 0x96 ,0x894d 
+0641 70894e2c jam 0x2c ,0x894e 
+0642 70894f46 jam 0x46 ,0x894f 
+0643 20600000 rtn 
 
 p_rx_high_sens:
-063c 70894cfb jam 0xfb ,0x894c 
-063d 70894def jam 0xef ,0x894d 
-063e 70894eec jam 0xec ,0x894e 
-063f 70894f5e jam 0x5e ,0x894f 
-0640 20600000 rtn 
+0644 70894cfb jam 0xfb ,0x894c 
+0645 70894def jam 0xef ,0x894d 
+0646 70894eec jam 0xec ,0x894e 
+0647 70894f5e jam 0x5e ,0x894f 
+0648 20600000 rtn 
 
 p_set_tx_power_pair:
-0641 708956c2 jam 0xc2 ,0x8956 
-0642 708955d0 jam 0xd0 ,0x8955 
-0643 20600000 rtn 
+0649 708956c2 jam 0xc2 ,0x8956 
+064a 708955d0 jam 0xd0 ,0x8955 
+064b 20600000 rtn 
 
 p_shutdown_radio:
-0644 18002a08 force 8 ,radio_ctrl 
-0645 202028fa branch shutdown_radio + 1 
+064c 18002a08 force 8 ,radio_ctrl 
+064d 202028fa branch shutdown_radio + 1 
 
 p_g24_timer_check:
-0646 20407fe9 call disable_user 
-0647 680a496c fetcht 4 ,mem_24g_tx_btclk 
-0648 1c427e00 copy clkn_bt ,pdata 
-0649 98467c00 isub temp ,null 
-064a 24412d18 ncall g24_timer_timeout ,positive 
-064b 1fe22400 copy pdata ,regb 
-064c 6802496c fetch 4 ,mem_24g_tx_btclk 
-064d 6808c970 fetcht 1 ,mem_24g_interval 
-064e 98408400 iadd temp ,temp 
-064f 1a427e00 copy regb ,pdata 
-0650 98467c00 isub temp ,null 
-0651 24610000 nrtn positive 
-0652 793ffe1c set0 28 ,pdata 
-0653 6002496c store 4 ,mem_24g_tx_btclk 
-0654 20207fe7 branch enable_user 
+064e 20407fe9 call disable_user 
+064f 680a496c fetcht 4 ,mem_24g_tx_btclk 
+0650 1c427e00 copy clkn_bt ,pdata 
+0651 98467c00 isub temp ,null 
+0652 24412d18 ncall g24_timer_timeout ,positive 
+0653 1fe22400 copy pdata ,regb 
+0654 6802496c fetch 4 ,mem_24g_tx_btclk 
+0655 6808c970 fetcht 1 ,mem_24g_interval 
+0656 98408400 iadd temp ,temp 
+0657 1a427e00 copy regb ,pdata 
+0658 98467c00 isub temp ,null 
+0659 24610000 nrtn positive 
+065a 793ffe1c set0 28 ,pdata 
+065b 6002496c store 4 ,mem_24g_tx_btclk 
+065c 20207fe7 branch enable_user 
 
 p_rssi_average:
-0655 d8400000 arg 0 ,temp 
-0656 df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
-0657 1a220c00 copy rega ,contr 
+065d d8400000 arg 0 ,temp 
+065e df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
+065f 1a220c00 copy rega ,contr 
 
 p_rssi_average_loop:
-0658 e8c08000 ifetch 1 ,contr 
-0659 98408400 iadd temp ,temp 
-065a c2000658 loop p_rssi_average_loop 
-065b 18497e00 rshift3 temp ,pdata 
-065c 1fe20400 copy pdata ,temp 
-065d c6930000 rtnmark0 mark_24g 
-065e 1fe6fc0a div pdata ,10 
-065f 20407f86 call wait_div_end 
-0660 1807fe00 quotient pdata 
-0661 1ff27e00 lshift4 pdata ,pdata 
-0662 18070400 remainder temp 
-0663 98418400 ior temp ,temp 
-0664 20600000 rtn 
-0665 20600000 rtn 
+0660 e8c08000 ifetch 1 ,contr 
+0661 98408400 iadd temp ,temp 
+0662 c2000660 loop p_rssi_average_loop 
+0663 18497e00 rshift3 temp ,pdata 
+0664 1fe20400 copy pdata ,temp 
+0665 c6930000 rtnmark0 mark_24g 
+0666 1fe6fc0a div pdata ,10 
+0667 20407f86 call wait_div_end 
+0668 1807fe00 quotient pdata 
+0669 1ff27e00 lshift4 pdata ,pdata 
+066a 18070400 remainder temp 
+066b 98418400 ior temp ,temp 
+066c 20600000 rtn 
+066d 20600000 rtn 
 
 p_g24_update_addr_and_synccrc8:
-0666 60024973 store 4 ,mem_24g_addr 
+066e 60024973 store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
-0667 da200000 arg 0 ,rega 
-0668 df200004 arg 4 ,loopcnt 
-0669 d8c04973 arg mem_24g_addr ,contr 
+066f da200000 arg 0 ,rega 
+0670 df200004 arg 4 ,loopcnt 
+0671 d8c04973 arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
-066a e8c08000 ifetch 1 ,contr 
-066b 9a20a200 iadd rega ,rega 
-066c c200066a loop p_g24_syncword_crc8_loop 
-066d 1a227e00 copy rega ,pdata 
-066e 600149fc store 2 ,mem_24g_syncword 
-066f 6800c9fc fetch 1 ,mem_24g_syncword 
-0670 6808c9fd fetcht 1 ,mem_24g_syncword + 1 
-0671 9840fe00 iadd temp ,pdata 
-0672 6000c9fe store 1 ,mem_24g_syncword_crc8 
-0673 20600000 rtn 
+0672 e8c08000 ifetch 1 ,contr 
+0673 9a20a200 iadd rega ,rega 
+0674 c2000672 loop p_g24_syncword_crc8_loop 
+0675 1a227e00 copy rega ,pdata 
+0676 600149fc store 2 ,mem_24g_syncword 
+0677 6800c9fc fetch 1 ,mem_24g_syncword 
+0678 6808c9fd fetcht 1 ,mem_24g_syncword + 1 
+0679 9840fe00 iadd temp ,pdata 
+067a 6000c9fe store 1 ,mem_24g_syncword_crc8 
+067b 20600000 rtn 
 
 p_g24_transmit_prep:
-0674 6800c94b fetch 1 ,mem_24g_datalen 
-0675 1fe0fe02 increase 2 ,pdata 
-0676 6000c94d store 1 ,mem_24g_txlen 
-0677 6800c94c fetch 1 ,mem_24g_data_type 
-0678 6000c907 store 1 ,mem_24g_txpayload 
-0679 6800c94b fetch 1 ,mem_24g_datalen 
-067a 1fe9fe00 lshift3 pdata ,pdata 
-067b 6808c94a fetcht 1 ,mem_24g_pid 
-067c 18410403 and temp ,0x03 ,temp 
-067d 18438400 lshift temp ,temp 
-067e 9841fe00 ior temp ,pdata 
-067f 6808c987 fetcht 1 ,mem_24g_no_ack 
-0680 9840fe00 iadd temp ,pdata 
-0681 e0a08000 istore 1 ,contw 
-0682 6800c94b fetch 1 ,mem_24g_datalen 
-0683 98007200 iforce loopcnt 
-0684 d8c048e7 arg mem_24g_txbuf ,contr 
-0685 20207f01 branch memcpy 
+067c 6800c94b fetch 1 ,mem_24g_datalen 
+067d 1fe0fe02 increase 2 ,pdata 
+067e 6000c94d store 1 ,mem_24g_txlen 
+067f 6800c94c fetch 1 ,mem_24g_data_type 
+0680 6000c907 store 1 ,mem_24g_txpayload 
+0681 6800c94b fetch 1 ,mem_24g_datalen 
+0682 1fe9fe00 lshift3 pdata ,pdata 
+0683 6808c94a fetcht 1 ,mem_24g_pid 
+0684 18410403 and temp ,0x03 ,temp 
+0685 18438400 lshift temp ,temp 
+0686 9841fe00 ior temp ,pdata 
+0687 6808c987 fetcht 1 ,mem_24g_no_ack 
+0688 9840fe00 iadd temp ,pdata 
+0689 e0a08000 istore 1 ,contw 
+068a 6800c94b fetch 1 ,mem_24g_datalen 
+068b 98007200 iforce loopcnt 
+068c d8c048e7 arg mem_24g_txbuf ,contr 
+068d 20207f01 branch memcpy 
 
 p_g24_ch:
-0686 6808c956 fetcht 1 ,mem_24g_current_ch_number 
-0687 2040068a call p_g24_ch_map_size 
-0688 6008c956 storet 1 ,mem_24g_current_ch_number 
-0689 20600000 rtn 
+068e 6808c956 fetcht 1 ,mem_24g_current_ch_number 
+068f 20400692 call p_g24_ch_map_size 
+0690 6008c956 storet 1 ,mem_24g_current_ch_number 
+0691 20600000 rtn 
 
 p_g24_ch_map_size:
-068a 2040068e call p_g24_ch_calc 
-068b 18408401 increase 1 ,temp 
-068c 18410403 and_into 3 ,temp 
-068d 20600000 rtn 
+0692 20400696 call p_g24_ch_calc 
+0693 18408401 increase 1 ,temp 
+0694 18410403 and_into 3 ,temp 
+0695 20600000 rtn 
 
 p_g24_ch_calc:
-068e 6800c973 fetch 1 ,mem_24g_addr 
-068f 1fe17e03 and_into 0x03 ,pdata 
-0690 1fefa204 mul32 pdata ,4 ,rega 
-0691 5800495c setarg mem_24g_ch_map1 
-0692 9a20fe00 iadd rega ,pdata 
-0693 98408c00 iadd temp ,contr 
-0694 e8c08000 ifetch 1 ,contr 
-0695 6000c955 store 1 ,mem_24g_ch 
-0696 20600000 rtn 
+0696 6800c973 fetch 1 ,mem_24g_addr 
+0697 1fe17e03 and_into 0x03 ,pdata 
+0698 1fefa204 mul32 pdata ,4 ,rega 
+0699 5800495c setarg mem_24g_ch_map1 
+069a 9a20fe00 iadd rega ,pdata 
+069b 98408c00 iadd temp ,contr 
+069c e8c08000 ifetch 1 ,contr 
+069d 6000c955 store 1 ,mem_24g_ch 
+069e 20600000 rtn 
 
 p_g24_prep:
-0697 7844fc00 disable enable_crc 
-0698 7843fc00 disable enable_white 
-0699 58555555 setarg 0x555555 
-069a 98001e00 iforce crc24_init 
-069b 6800c955 fetch 1 ,mem_24g_ch 
-069c 1fed8400 reverse pdata ,temp 
-069d 79200401 set1 1 ,temp 
-069e 18431c00 rshift temp ,white_init 
-069f 20600000 rtn 
+069f 7844fc00 disable enable_crc 
+06a0 7843fc00 disable enable_white 
+06a1 58555555 setarg 0x555555 
+06a2 98001e00 iforce crc24_init 
+06a3 6800c955 fetch 1 ,mem_24g_ch 
+06a4 1fed8400 reverse pdata ,temp 
+06a5 79200401 set1 1 ,temp 
+06a6 18431c00 rshift temp ,white_init 
+06a7 20600000 rtn 
 
 p_g24_receive_rxon:
-06a0 20400697 call p_g24_prep 
-06a1 7857fc00 disable user3 
-06a2 7826fc00 enable decode_fec0 
-06a3 7830fc00 enable is_rx 
-06a4 78507c00 disable is_tx 
-06a5 78287c00 enable swfine 
-06a6 6801494e fetch 2 ,mem_24g_rx_window 
-06a7 98003600 iforce stop_watch 
-06a8 37c18400 correlate null ,timeout 
-06a9 242c06da nbranch p_g24_sync_timeout ,sync 
-06aa 7846fc00 disable decode_fec0 
-06ab 7825fc00 enable decode_fec1 
-06ac 7823fc00 enable enable_white 
-06ad 7824fc00 enable enable_crc 
-06ae 204006d7 call p_g24_receive_byte 
-06af 6000c9ff store 1 ,mem_24g_get_syncword_crc8 
-06b0 6808c9fe fetcht 1 ,mem_24g_syncword_crc8 
-06b1 98467c00 isub temp ,null 
-06b2 242286da nbranch p_g24_end_of_packet ,zero 
-06b3 204006d7 call p_g24_receive_byte 
-06b4 6000c8c5 store 1 ,mem_24g_rxbuf 
-06b5 6800c8c5 fetch 1 ,mem_24g_rxbuf 
-06b6 6808c94c fetcht 1 ,mem_24g_data_type 
-06b7 a8400e00 icompare bits_data ,temp 
-06b8 242086da nbranch p_g24_end_of_packet ,true 
+06a8 2040069f call p_g24_prep 
+06a9 7857fc00 disable user3 
+06aa 7826fc00 enable decode_fec0 
+06ab 7830fc00 enable is_rx 
+06ac 78507c00 disable is_tx 
+06ad 78287c00 enable swfine 
+06ae 6801494e fetch 2 ,mem_24g_rx_window 
+06af 98003600 iforce stop_watch 
+06b0 37c18400 correlate null ,timeout 
+06b1 242c06e2 nbranch p_g24_sync_timeout ,sync 
+06b2 7846fc00 disable decode_fec0 
+06b3 7825fc00 enable decode_fec1 
+06b4 7823fc00 enable enable_white 
+06b5 7824fc00 enable enable_crc 
+06b6 204006df call p_g24_receive_byte 
+06b7 6000c9ff store 1 ,mem_24g_get_syncword_crc8 
+06b8 6808c9fe fetcht 1 ,mem_24g_syncword_crc8 
+06b9 98467c00 isub temp ,null 
+06ba 242286e2 nbranch p_g24_end_of_packet ,zero 
+06bb 204006df call p_g24_receive_byte 
+06bc 6000c8c5 store 1 ,mem_24g_rxbuf 
+06bd 6800c8c5 fetch 1 ,mem_24g_rxbuf 
+06be 6808c94c fetcht 1 ,mem_24g_data_type 
+06bf a8400e00 icompare bits_data ,temp 
+06c0 242086e2 nbranch p_g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-06b9 204006d7 call p_g24_receive_byte 
-06ba e0a08000 istore 1 ,contw 
-06bb 1fe97e00 rshift3 pdata ,pdata 
-06bc 1fe1721f and pdata ,0x1f ,loopcnt 
-06bd 202286c1 branch p_g24rx_nopayload ,zero 
+06c1 204006df call p_g24_receive_byte 
+06c2 e0a08000 istore 1 ,contw 
+06c3 1fe97e00 rshift3 pdata ,pdata 
+06c4 1fe1721f and pdata ,0x1f ,loopcnt 
+06c5 202286c9 branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-06be 204006d7 call p_g24_receive_byte 
-06bf e0a08000 istore 1 ,contw 
-06c0 c20006be loop p_g24rx_loop 
+06c6 204006df call p_g24_receive_byte 
+06c7 e0a08000 istore 1 ,contw 
+06c8 c20006c6 loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-06c1 18a22200 copy contw ,rega 
-06c2 204006d7 call p_g24_receive_byte 
-06c3 6000ca86 store 1 ,mem_rssi_hex_received 
-06c4 1a220a00 copy rega ,contw 
-06c5 09800018 parse demod ,bucket ,24 
-06c6 78287c00 enable swfine 
-06c7 db600664 arg param_sifs ,stop_watch 
-06c8 1fef7e00 rshift32 pdata ,pdata 
-06c9 1ff17e00 rshift16 pdata ,pdata 
-06ca e0a18000 istore 3 ,contw 
-06cb 7845fc00 disable decode_fec1 
-06cc 202306da branch p_g24_end_of_packet ,crc_failed 
-06cd 7837fc00 enable user3 
-06ce 68008017 fetch 1 ,mem_last_freq 
-06cf 1fe0a200 add pdata ,0 ,rega 
-06d0 20402981 call rf_write_freq 
-06d1 7846fc00 disable decode_fec0 
-06d2 20402918 call set_sync_on 
-06d3 6800ca86 fetch 1 ,mem_rssi_hex_received 
-06d4 1fe22200 copy pdata ,rega 
-06d5 2040001f call p_rssi_signal 
-06d6 20600000 rtn 
+06c9 18a22200 copy contw ,rega 
+06ca 204006df call p_g24_receive_byte 
+06cb 6000ca86 store 1 ,mem_rssi_hex_received 
+06cc 1a220a00 copy rega ,contw 
+06cd 09800018 parse demod ,bucket ,24 
+06ce 78287c00 enable swfine 
+06cf db600664 arg param_sifs ,stop_watch 
+06d0 1fef7e00 rshift32 pdata ,pdata 
+06d1 1ff17e00 rshift16 pdata ,pdata 
+06d2 e0a18000 istore 3 ,contw 
+06d3 7845fc00 disable decode_fec1 
+06d4 202306e2 branch p_g24_end_of_packet ,crc_failed 
+06d5 7837fc00 enable user3 
+06d6 68008017 fetch 1 ,mem_last_freq 
+06d7 1fe0a200 add pdata ,0 ,rega 
+06d8 20402981 call rf_write_freq 
+06d9 7846fc00 disable decode_fec0 
+06da 20402918 call set_sync_on 
+06db 6800ca86 fetch 1 ,mem_rssi_hex_received 
+06dc 1fe22200 copy pdata ,rega 
+06dd 2040001f call p_rssi_signal 
+06de 20600000 rtn 
 
 p_g24_receive_byte:
-06d7 09800008 parse demod ,bucket ,8 
-06d8 19897e00 rshift3 pwindow ,pdata 
-06d9 20600000 rtn 
+06df 09800008 parse demod ,bucket ,8 
+06e0 19897e00 rshift3 pwindow ,pdata 
+06e1 20600000 rtn 
 
 p_g24_sync_timeout:
 
 p_g24_end_of_packet:
-06da 784dfc00 disable encode_fec1 
-06db 7845fc00 disable decode_fec1 
-06dc 2040264d call end_of_packet 
-06dd 20600000 rtn 
+06e2 784dfc00 disable encode_fec1 
+06e3 7845fc00 disable decode_fec1 
+06e4 2040264d call end_of_packet 
+06e5 20600000 rtn 
 
 p_g24_set_freq_tx:
-06de 20402918 call set_sync_on 
-06df 6808c955 fetcht 1 ,mem_24g_ch 
-06e0 20202933 branch set_freq_tx 
+06e6 20402918 call set_sync_on 
+06e7 6808c955 fetcht 1 ,mem_24g_ch 
+06e8 20202933 branch set_freq_tx 
 
 p_g24_transmit:
-06e1 204053c4 call le_enable 
-06e2 68024973 fetch 4 ,mem_24g_addr 
-06e3 98001200 iforce access 
-06e4 20400697 call p_g24_prep 
-06e5 204006de call p_g24_set_freq_tx 
-06e6 79202a00 set1 txgfsk ,radio_ctrl 
-06e7 782efc00 enable encode_fec0 
-06e8 78307c00 enable is_tx 
-06e9 7850fc00 disable is_rx 
-06ea 19317e00 rshift16 access ,pdata 
-06eb 1fecfe00 rshift8 pdata ,pdata 
-06ec 1ff1fe00 rshift4 pdata ,pdata 
-06ed 08008628 inject mod ,40 
-06ee 784efc00 disable encode_fec0 
-06ef 782dfc00 enable encode_fec1 
-06f0 7823fc00 enable enable_white 
-06f1 7824fc00 enable enable_crc 
-06f2 6800c9fe fetch 1 ,mem_24g_syncword_crc8 
-06f3 08008608 inject mod ,8 
-06f4 6800c94d fetch 1 ,mem_24g_txlen 
-06f5 98007200 iforce loopcnt 
-06f6 d8c04907 arg mem_24g_txpayload ,contr 
+06e9 204053c4 call le_enable 
+06ea 68024973 fetch 4 ,mem_24g_addr 
+06eb 98001200 iforce access 
+06ec 2040069f call p_g24_prep 
+06ed 204006e6 call p_g24_set_freq_tx 
+06ee 79202a00 set1 txgfsk ,radio_ctrl 
+06ef 782efc00 enable encode_fec0 
+06f0 78307c00 enable is_tx 
+06f1 7850fc00 disable is_rx 
+06f2 19317e00 rshift16 access ,pdata 
+06f3 1fecfe00 rshift8 pdata ,pdata 
+06f4 1ff1fe00 rshift4 pdata ,pdata 
+06f5 08008628 inject mod ,40 
+06f6 784efc00 disable encode_fec0 
+06f7 782dfc00 enable encode_fec1 
+06f8 7823fc00 enable enable_white 
+06f9 7824fc00 enable enable_crc 
+06fa 6800c9fe fetch 1 ,mem_24g_syncword_crc8 
+06fb 08008608 inject mod ,8 
+06fc 6800c94d fetch 1 ,mem_24g_txlen 
+06fd 98007200 iforce loopcnt 
+06fe d8c04907 arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
-06f7 e8c08000 ifetch 1 ,contr 
-06f8 08008608 inject mod ,8 
-06f9 c20006f7 loop p_g24tr_loop 
-06fa 78247c00 enable enable_parity 
-06fb 08008618 inject mod ,24 
-06fc 78447c00 disable enable_parity 
-06fd 37d38200 until null ,tx_clear 
-06fe 20000064 nop 100 
-06ff 784efc00 disable encode_fec0 
-0700 784dfc00 disable encode_fec1 
-0701 20600000 rtn 
+06ff e8c08000 ifetch 1 ,contr 
+0700 08008608 inject mod ,8 
+0701 c20006ff loop p_g24tr_loop 
+0702 78247c00 enable enable_parity 
+0703 08008618 inject mod ,24 
+0704 78447c00 disable enable_parity 
+0705 37d38200 until null ,tx_clear 
+0706 20000064 nop 100 
+0707 784efc00 disable encode_fec0 
+0708 784dfc00 disable encode_fec1 
+0709 20600000 rtn 
 
 p_mouse_data_init:
-0702 7047a407 jam 7 ,mem_mouse_data_queue 
-0703 7047a504 jam 4 ,mem_mouse_data_queue + 1 
-0704 580047a4 setarg mem_mouse_data_queue 
-0705 60014218 store 2 ,mem_queue_ptr 
-0706 20207e38 branch queue_init 
+070a 7047a407 jam 7 ,mem_mouse_data_queue 
+070b 7047a504 jam 4 ,mem_mouse_data_queue + 1 
+070c 580047a4 setarg mem_mouse_data_queue 
+070d 60014218 store 2 ,mem_queue_ptr 
+070e 20207e38 branch queue_init 
 
 p_mouse_data_push:
-0707 da20469a arg mem_mouse_key ,rega 
-0708 20407e3d call queue_push 
-0709 2054070b call p_mouse_queue_increase ,user 
-070a 20600000 rtn 
+070f da20469a arg mem_mouse_key ,rega 
+0710 20407e3d call queue_push 
+0711 20540713 call p_mouse_queue_increase ,user 
+0712 20600000 rtn 
 
 p_mouse_queue_increase:
-070b 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
-070c 1fe0fe01 increase 1 ,pdata 
-070d 6000c7c5 store 1 ,mem_mouse_data_queue_num 
-070e 20600000 rtn 
+0713 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
+0714 1fe0fe01 increase 1 ,pdata 
+0715 6000c7c5 store 1 ,mem_mouse_data_queue_num 
+0716 20600000 rtn 
 
 p_mouse_data_pull:
-070f da20469a arg mem_mouse_key ,rega 
-0710 20407e54 call queue_pop 
-0711 20340713 branch p_mouse_fill_data_le ,user 
-0712 20600000 rtn 
+0717 da20469a arg mem_mouse_key ,rega 
+0718 20407e54 call queue_pop 
+0719 2034071b branch p_mouse_fill_data_le ,user 
+071a 20600000 rtn 
 
 p_mouse_fill_data_le:
-0713 20405652 call le_clear_md 
-0714 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
-0715 1fe67c01 sub pdata ,1 ,null 
-0716 24415650 ncall le_set_md ,positive 
-0717 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
-0718 207a0000 rtn blank 
-0719 1fe0ffff increase -1 ,pdata 
-071a 6000c7c5 store 1 ,mem_mouse_data_queue_num 
-071b 20203f90 branch mouse_fill_data_le 
+071b 20405652 call le_clear_md 
+071c 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
+071d 1fe67c01 sub pdata ,1 ,null 
+071e 24415650 ncall le_set_md ,positive 
+071f 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
+0720 207a0000 rtn blank 
+0721 1fe0ffff increase -1 ,pdata 
+0722 6000c7c5 store 1 ,mem_mouse_data_queue_num 
+0723 20203f90 branch mouse_fill_data_le 
 org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/program/patch.prog	(revision 1340)
+++ /branch/mouse_project/YJX_Project/24G&BLE_BD/program/patch.prog	(working copy)
@@ -5,6 +5,7 @@
 //define P24G_LOG
 //define RF_DEBUG
 define BLE_FAST_CONN_ENABLE
+define G24_NEW_RF_HOP
 
 //define DEBUGLOG
 //define DEBUGLOG_CALLBACK
@@ -1916,7 +1917,9 @@
 	fetch 1,mem_24g_data_type
 	set0 bit_hop,pdata
 	store 1,mem_24g_data_type
-	rtn	
+	store 1,mem_24g_txpayload
+	call power_ctrl_pac_succ_decrs
+	branch p_g24_ch
 
 p_g24_transmit_hop_pac_fail:
 	call power_ctrl_pac_succ_decrs
@@ -2088,6 +2091,7 @@
 	fetch 1,mem_24g_pid
 	increase 1,pdata
 	store 1,mem_24g_pid
+	call p_g24_hop_enable_packet	
 	fetch 1,mem_24g_pairing_sm
 	bne STATE_24G_PAIRING_SUCCESS,p_g24_paring_mode_start
 	call p_g24_transmit_succ_rf_config
@@ -2104,6 +2108,11 @@
 	arg mem_24g_txbuf,contw
 	branch memset0
 
+p_g24_hop_enable_packet:
+	fetch 1,mem_24g_data_type
+	bbit1 bit_hop,p_g24_hop_ch_disable
+	rtn
+
 p_g24_paring_mode_start:
 	call power_ctrl_pac_succ_cnt_init
 	branch p_g24_paring_mode
@@ -2132,33 +2141,24 @@
 	branch p_g24_transmit_next_packet
 
 p_g24_retransmit:
-	fetch 1,mem_24g_get_ack_fail
+	fetch 1,mem_24g_abort_pac
+	nrtn blank
+	
+	fetch 2,mem_24g_txfail_cnt
 	increase 1,pdata
-	store 1,mem_24g_get_ack_fail
+	store 2,mem_24g_txfail_cnt	
+	fetch 1,mem_24g_txfail_cnt+1
+	bbit1 4,p_g24_stop_g24_mode
+
 	fetch 1,mem_24g_pairing_sm
 	bne STATE_24G_PAIRING_SUCCESS,p_g24_tx_paring_retry
-	fetcht 1,mem_24g_retry
-	increase 1,temp
-	storet 1,mem_24g_retry
-	fetch 1,mem_24g_max_retry
-	isub temp,pdata
-	nbranch p_g24_transmit_loop,blank
-	fetch 1,mem_24g_rf_work_stage
-	beq 3,p_g24_transmit_pac_fail_hop_stage3
-	fetch 1,mem_24g_hop_pac_retry
-	increase 1,pdata
-	store 1,mem_24g_hop_pac_retry
-	beq 2,p_g24_transmit_hop_pac_fail
-	call p_g24_hop_ch_enable
-	jam 1,mem_24g_max_retry
-	branch p_g24_transmit_packet
 
+	call p_g24_tx_hop_ch_process
+	branch p_g24_transmit_loop
+	
 p_g24_tx_paring_retry:
-	fetch 1,mem_24g_get_ack_fail
+	fetch 1,mem_24g_txfail_cnt
 	rtnne 0xff
-	jam 0,mem_24g_get_ack_fail
-	branch p_g24_stop_g24_mode
-
 p_g24_tx_attempt_fail:
 	setarg 0
 	store 2,mem_24g_txfail_cnt
@@ -2166,6 +2166,26 @@
 	jam BT_EVT_24G_ATTEMPT_FAIL,mem_fifo_temp
 	branch ui_ipc_send_event
 
+ifdef G24_NEW_RF_HOP
+p_g24_tx_fast_hop:
+	call power_ctrl_txpower_incrs
+	call power_ctrl_pac_succ_decrs
+	branch p_g24_ch
+
+p_g24_tx_hop_ch_process:
+	fetch 1,mem_24g_retry
+	sub pdata,11,null
+	nbranch  p_g24_tx_fast_hop,positive		// >= 6+6 hop fast    fail packet count >= 2
+	increase 1,pdata
+	store 1,mem_24g_retry
+	beq 2,p_g24_hop_ch_enable
+	beq 6,p_g24_hop_ch_disable
+	beq 8,p_g24_hop_ch_enable
+	beq 12,p_g24_hop_ch_disable
+	rtn
+endif
+
+
 p_g24_ackpayload_parse:
 	call p_g24_read_len_pid_crc
 	fetch 1,mem_24g_rxdata_length	//ack payload length 
@@ -2233,7 +2253,7 @@
 	
 power_ctrl_txpower_decrs_check:
 	fetch 1,mem_power_ctrl_pac_succ_cnt
-	rtnne 32
+	rtnne 50
 	jam 0,mem_power_ctrl_pac_succ_cnt
 power_ctrl_txpower_decrs:
 	fetcht 1,mem_rssi_avg_received
@@ -2299,7 +2319,7 @@
 	rtn
 	
 p_g24_pair_init:
-	jam TX_POWER_PAIR,mem_tx_power
+	jam TX_POWER_0DB,mem_tx_power
 	jam 0,mem_24g_pid
 	jam G24_PAIR_CH,mem_24g_ch
 	fetch 4,mem_24g_paring_addr
