Index: output/eeprom.dat
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/output/eeprom.dat	(revision 1363)
+++ /branch/mouse_project/YJX_Project/24G&BLE_BD/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-a6
+aa
 1c
 c2
 84
@@ -11,11 +11,11 @@
 c0
 42
 86
-51
+52
 c0
 44
 86
-22
+23
 c0
 00
 00
@@ -295,7 +295,7 @@
 20
 40
 05
-4f
+4e
 20
 40
 00
@@ -307,7 +307,7 @@
 c0
 00
 85
-d7
+d8
 20
 40
 00
@@ -355,7 +355,7 @@
 20
 40
 06
-53
+54
 24
 74
 00
@@ -627,7 +627,7 @@
 20
 40
 06
-81
+82
 20
 40
 04
@@ -803,7 +803,7 @@
 20
 40
 07
-0f
+10
 68
 00
 c1
@@ -815,7 +815,7 @@
 20
 40
 05
-3e
+3d
 68
 00
 c6
@@ -999,7 +999,7 @@
 20
 20
 05
-b3
+b2
 70
 48
 c1
@@ -1127,7 +1127,7 @@
 20
 40
 05
-7b
+7a
 70
 49
 5b
@@ -1711,7 +1711,7 @@
 20
 20
 05
-d7
+d8
 20
 40
 58
@@ -1779,7 +1779,7 @@
 20
 20
 07
-14
+15
 68
 00
 c6
@@ -1995,7 +1995,7 @@
 20
 40
 07
-0f
+10
 20
 20
 41
@@ -2047,7 +2047,7 @@
 20
 40
 07
-0f
+10
 20
 40
 58
@@ -2163,7 +2163,7 @@
 20
 40
 06
-0c
+0d
 20
 20
 34
@@ -3367,7 +3367,7 @@
 20
 40
 86
-0c
+0d
 20
 20
 42
@@ -3607,7 +3607,7 @@
 20
 40
 05
-4f
+4e
 20
 20
 53
@@ -3807,7 +3807,7 @@
 20
 40
 05
-41
+40
 68
 00
 c7
@@ -3871,7 +3871,7 @@
 20
 5a
 07
-1c
+1d
 20
 20
 56
@@ -3935,7 +3935,7 @@
 20
 20
 05
-45
+44
 68
 00
 c7
@@ -4655,11 +4655,11 @@
 20
 40
 05
-45
+44
 20
 20
 06
-93
+94
 68
 00
 ca
@@ -4687,7 +4687,7 @@
 20
 40
 06
-93
+94
 70
 49
 90
@@ -4699,7 +4699,7 @@
 20
 40
 05
-45
+44
 70
 4a
 7e
@@ -4835,7 +4835,7 @@
 20
 40
 06
-93
+94
 70
 49
 90
@@ -4859,7 +4859,7 @@
 20
 40
 06
-93
+94
 70
 49
 90
@@ -4875,7 +4875,7 @@
 c0
 ff
 85
-80
+7f
 20
 40
 04
@@ -4883,7 +4883,7 @@
 20
 40
 06
-81
+82
 70
 49
 50
@@ -5083,11 +5083,11 @@
 20
 40
 05
-37
+36
 20
 40
 05
-41
+40
 68
 00
 c9
@@ -5167,11 +5167,11 @@
 20
 40
 05
-3e
+3d
 20
 20
 05
-9b
+9a
 78
 57
 fc
@@ -5179,7 +5179,7 @@
 20
 40
 06
-ee
+ef
 18
 00
 2a
@@ -5207,11 +5207,11 @@
 20
 40
 06
-ad
+ae
 20
 57
 86
-e7
+e8
 20
 60
 00
@@ -5219,7 +5219,7 @@
 20
 40
 06
-e7
+e8
 20
 20
 04
@@ -5250,8 +5250,8 @@
 52
 c2
 82
-05
-28
+2d
+d4
 68
 00
 c9
@@ -5263,7 +5263,7 @@
 20
 40
 05
-2d
+2c
 20
 20
 04
@@ -5284,26 +5284,22 @@
 01
 49
 51
-70
-0a
-99
-3a
 20
 20
-7d
-86
+2d
+d4
 20
 40
 05
-72
+71
 20
 40
 05
-45
+44
 20
 20
 06
-93
+94
 68
 00
 c9
@@ -5315,7 +5311,7 @@
 24
 21
 05
-2a
+29
 1f
 e0
 fe
@@ -5347,7 +5343,7 @@
 20
 40
 06
-15
+16
 68
 00
 c9
@@ -5411,7 +5407,7 @@
 24
 41
 05
-4d
+4c
 68
 00
 ca
@@ -5463,7 +5459,7 @@
 20
 40
 06
-62
+63
 60
 08
 ca
@@ -5475,7 +5471,7 @@
 c5
 13
 05
-59
+58
 58
 00
 00
@@ -5487,7 +5483,7 @@
 24
 21
 05
-71
+70
 68
 00
 ca
@@ -5499,7 +5495,7 @@
 24
 21
 05
-61
+60
 68
 00
 ca
@@ -5507,7 +5503,7 @@
 c0
 00
 05
-72
+71
 20
 60
 00
@@ -5535,7 +5531,7 @@
 c5
 13
 05
-68
+67
 58
 00
 00
@@ -5555,7 +5551,7 @@
 c0
 00
 05
-79
+78
 1f
 e0
 ff
@@ -5567,7 +5563,7 @@
 c0
 00
 05
-79
+78
 70
 41
 de
@@ -5587,7 +5583,7 @@
 c0
 01
 05
-77
+76
 1f
 e0
 fe
@@ -5599,7 +5595,7 @@
 c0
 00
 85
-6f
+6e
 70
 41
 de
@@ -5635,7 +5631,7 @@
 20
 20
 06
-73
+74
 68
 00
 c9
@@ -5651,15 +5647,15 @@
 c0
 00
 85
-87
+86
 c0
 01
 05
-8a
+89
 c0
 01
 85
-8d
+8c
 20
 20
 2a
@@ -5675,7 +5671,7 @@
 20
 20
 05
-8f
+8e
 70
 49
 5b
@@ -5687,7 +5683,7 @@
 20
 20
 05
-8f
+8e
 70
 49
 5b
@@ -5731,11 +5727,11 @@
 20
 40
 06
-10
+11
 20
 40
 06
-81
+82
 20
 40
 04
@@ -5755,15 +5751,15 @@
 c0
 08
 85
-a1
+a0
 c0
 09
 05
-a3
+a2
 c0
 09
 85
-a5
+a4
 20
 60
 00
@@ -5799,7 +5795,7 @@
 20
 40
 05
-db
+dc
 20
 20
 04
@@ -5835,11 +5831,11 @@
 20
 40
 06
-10
+11
 20
 20
 06
-81
+82
 58
 00
 00
@@ -5855,11 +5851,11 @@
 20
 40
 05
-f3
+f4
 20
 40
 05
-aa
+a9
 58
 00
 00
@@ -5891,7 +5887,7 @@
 20
 40
 05
-e7
+e8
 68
 01
 49
@@ -5906,8 +5902,8 @@
 00
 20
 22
-85
-28
+ad
+d4
 20
 40
 05
@@ -5915,15 +5911,23 @@
 24
 2c
 05
-dd
+de
 24
 37
 85
-dd
+de
 20
 40
 05
-37
+36
+68
+00
+c9
+49
+20
+3a
+05
+bc
 20
 40
 00
@@ -5945,6 +5949,10 @@
 81
 17
 68
+02
+49
+73
+68
 0a
 49
 82
@@ -5955,7 +5963,7 @@
 20
 42
 85
-db
+dc
 79
 20
 00
@@ -5972,14 +5980,10 @@
 48
 0c
 00
-70
-0a
-99
-3c
 20
 40
-7d
-86
+2f
+20
 20
 40
 05
@@ -6007,7 +6011,7 @@
 20
 20
 06
-73
+74
 68
 01
 49
@@ -6039,15 +6043,15 @@
 c0
 00
 06
-06
+07
 c0
 01
 06
-0a
+0b
 20
 20
 06
-08
+09
 68
 00
 c8
@@ -6083,7 +6087,7 @@
 20
 22
 85
-f1
+f2
 20
 60
 00
@@ -6119,7 +6123,7 @@
 20
 40
 05
-fb
+fc
 60
 08
 91
@@ -6131,11 +6135,11 @@
 20
 40
 06
-74
+75
 20
 20
 06
-93
+94
 70
 41
 de
@@ -6163,7 +6167,7 @@
 20
 40
 05
-fb
+fc
 60
 08
 91
@@ -6175,27 +6179,27 @@
 20
 40
 05
-f3
+f4
 20
 20
 05
-bd
+bc
 20
 40
 05
-7b
+7a
 20
 20
 05
-bd
+bc
 20
 40
 05
-fd
+fe
 20
 20
 05
-bd
+bc
 79
 3f
 80
@@ -6351,19 +6355,19 @@
 c0
 01
 06
-3a
+3b
 c0
 02
 06
-3f
+40
 c0
 10
 06
-4e
+4f
 20
 40
 06
-44
+45
 70
 89
 55
@@ -6383,7 +6387,7 @@
 20
 40
 06
-49
+4a
 70
 89
 55
@@ -6403,7 +6407,7 @@
 20
 40
 06
-44
+45
 70
 89
 55
@@ -6563,7 +6567,7 @@
 c2
 00
 06
-65
+66
 18
 49
 7e
@@ -6635,7 +6639,7 @@
 c2
 00
 06
-77
+78
 1a
 22
 7e
@@ -6743,7 +6747,7 @@
 20
 40
 06
-97
+98
 60
 08
 c9
@@ -6755,7 +6759,7 @@
 20
 40
 06
-9b
+9c
 18
 40
 84
@@ -6843,7 +6847,7 @@
 20
 40
 06
-a4
+a5
 78
 57
 fc
@@ -6879,7 +6883,7 @@
 24
 2c
 06
-e7
+e8
 78
 46
 fc
@@ -6899,7 +6903,7 @@
 20
 40
 06
-e4
+e5
 60
 00
 c9
@@ -6915,11 +6919,11 @@
 24
 22
 86
-e7
+e8
 20
 40
 06
-e4
+e5
 60
 00
 c8
@@ -6939,11 +6943,11 @@
 24
 20
 86
-e7
+e8
 20
 40
 06
-e4
+e5
 e0
 a0
 80
@@ -6959,11 +6963,11 @@
 20
 22
 86
-ce
+cf
 20
 40
 06
-e4
+e5
 e0
 a0
 80
@@ -6971,7 +6975,7 @@
 c2
 00
 06
-cb
+cc
 18
 a2
 22
@@ -6979,7 +6983,7 @@
 20
 40
 06
-e4
+e5
 60
 00
 ca
@@ -7019,7 +7023,7 @@
 20
 23
 06
-e7
+e8
 78
 37
 fc
@@ -7115,11 +7119,11 @@
 20
 40
 06
-a4
+a5
 20
 40
 06
-eb
+ec
 79
 20
 2a
@@ -7199,7 +7203,7 @@
 c2
 00
 07
-04
+05
 78
 24
 7c
@@ -7263,7 +7267,7 @@
 20
 54
 07
-18
+19
 20
 60
 00
@@ -7295,7 +7299,7 @@
 20
 34
 07
-20
+21
 20
 60
 00
@@ -7336,8 +7340,8 @@
 20
 3f
 90
-cf
-3f
+96
+bf
 aa
 55
 09
@@ -8068,12 +8072,8 @@
 49
 04
 01
-fa
-b9
-ff
-ff
-ff
-ff
+0d
+77
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-41
-db
+df
+94
Index: output/program.lis
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/output/program.lis	(revision 1363)
+++ /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 c0428651 beq patch10_5 ,p_shutdown_radio 
-0002 c0448622 beq patch11_1 ,p_set_freq_tx 
+0001 c0428652 beq patch10_5 ,p_shutdown_radio 
+0002 c0448623 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 
@@ -92,10 +92,10 @@
 0045 204004ee call p_g24_transmit_packet 
 0046 6800c95b fetch 1 ,mem_24g_pairing_sm 
 0047 c1ff8000 rtnne state_24g_pairing_success 
-0048 2040054f call power_ctrl_start 
+0048 2040054e call power_ctrl_start 
 0049 20400051 call g24_long_sleep_shorter_param_update 
 004a 6800c8b6 fetch 1 ,mem_mouse_multi_led_state 
-004b c00085d7 beq on ,p_g24_transmit_by_interrupt_enable 
+004b c00085d8 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 20400653 call p_g24_timer_check 
+0057 20400654 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,7 +203,7 @@
 0098 6800c94c fetch 1 ,mem_24g_data_type 
 0099 79207e03 set1 bit_abort ,pdata 
 009a 6000c94c store 1 ,mem_24g_data_type 
-009b 20400681 call p_g24_transmit_prep 
+009b 20400682 call p_g24_transmit_prep 
 009c 204004c4 call p_g24_txdata_enable_tx 
 009d 20200045 branch p_g24_transmit_start 
 
@@ -261,10 +261,10 @@
 p_device_init:
 00c5 20403416 call app_lpm_mult_enable 
 00c6 203580d0 branch p_device_init_common ,wake 
-00c7 2040070f call p_mouse_data_init 
+00c7 20400710 call p_mouse_data_init 
 00c8 6800c1de fetch 1 ,mem_tx_power 
 00c9 6000ca02 store 1 ,mem_tx_power_temp 
-00ca 2040053e call power_ctrl_pac_succ_cnt_init 
+00ca 2040053d 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 
@@ -328,7 +328,7 @@
 00f5 e0a10000 istore 2 ,contw 
 00f6 20400215 call p_mouse_set_24g_addr_eeprom 
 00f7 204065d1 call iicd_write_protect_eep_data 
-00f8 202005b3 branch p_g24_auto_pair_start 
+00f8 202005b2 branch p_g24_auto_pair_start 
 
 p_mouse4_0_check_reconn_target:
 00f9 7048c101 jam 1 ,mem_le_send_security_request_flag 
@@ -368,7 +368,7 @@
 
 p_g24_start_pairing_sm1:
 0117 79200026 set1 mark_24g ,mark 
-0118 2040057b call p_g24_pair_init 
+0118 2040057a call p_g24_pair_init 
 
 p_g24_set_pairing_sm_1:
 0119 70495b01 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
@@ -574,7 +574,7 @@
 01a7 20404401 call mouse_g24_package_data 
 01a8 6801469f fetch 2 ,mem_mouse_z 
 01a9 207a0000 rtn blank 
-01aa 202005d7 branch p_g24_transmit_by_interrupt_enable 
+01aa 202005d8 branch p_g24_transmit_by_interrupt_enable 
 
 p_mouse_le:
 01ab 20405892 call le_fifo_check_nearly_full 
@@ -595,7 +595,7 @@
 01b8 204001bc call p_mouse_le_current_mult_update 
 01b9 204004e3 call p_mouse_data_xy_release 
 01ba 204001c1 call p_mouse_wheel_trigger 
-01bb 20200714 branch p_mouse_data_push 
+01bb 20200715 branch p_mouse_data_push 
 
 p_mouse_le_current_mult_update:
 01bc 6800c6f5 fetch 1 ,mem_config_function_enable 
@@ -669,7 +669,7 @@
 01ee 7048bf00 jam 0 ,mem_mouse_start_discovery_enable 
 01ef 70480c00 jam 0 ,mem_mouse_long_mult_flag 
 01f0 20400282 call p_mouse_discovey_led_blink_off 
-01f1 2040070f call p_mouse_data_init 
+01f1 20400710 call p_mouse_data_init 
 01f2 202041c3 branch mouse_le_bb_event_connected 
 
 p_mouse_fast_conn_quit:
@@ -686,7 +686,7 @@
 01fb 60014498 store 2 ,mem_le_interval_min + 2 
 01fc 7047c800 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
 01fd 7047a000 jam 0 ,mem_mouse_clear_sensor_data_flag 
-01fe 2040070f call p_mouse_data_init 
+01fe 20400710 call p_mouse_data_init 
 01ff 20405816 call le_clr_config_more_data 
 0200 204041d9 call mouse_bb_disconnected 
 0201 6800c8bf fetch 1 ,mem_mouse_start_discovery_enable 
@@ -733,7 +733,7 @@
 p_mouse_24g_attempt_fail:
 0219 704a8b00 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
 021a 204000ed call p_mouse_tx_power_init 
-021b 2040060c call p_g24_check_51cmd_stop_24g 
+021b 2040060d call p_g24_check_51cmd_stop_24g 
 021c 2020340a branch app_enter_hibernate 
 
 p_mouse_null_enter_hibernate_count:
@@ -1184,7 +1184,7 @@
 0345 7047a100 jam 0 ,mem_mouse_null_enter_hibernate_flag 
 0346 7047a200 jam 0 ,mem_mouse_null_enter_hibernate_timer 
 0347 280ffe26 isolate1 mark_24g ,mark 
-0348 2040860c call p_g24_check_51cmd_stop_24g ,true 
+0348 2040860d call p_g24_check_51cmd_stop_24g ,true 
 0349 2020426d branch mouse_bb_event_discovery_btn + 1 
 
 p_mouse_start_discovery:
@@ -1264,7 +1264,7 @@
 0381 c0065395 beq le_md_max_count ,le_slave_cont 
 0382 204055aa call le_acknowledge 
 0383 2040561e call le_prepare_tx 
-0384 2040054f call power_ctrl_start 
+0384 2040054e call power_ctrl_start 
 0385 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
@@ -1334,7 +1334,7 @@
 p_le_prepare_tx:
 03b4 68008456 fetch 1 ,mem_le_arq 
 03b5 c28283c8 bbit1 wak ,p_le_prepare_tx_wak 
-03b6 20400541 call power_ctrl_pac_succ_incrs 
+03b6 20400540 call power_ctrl_pac_succ_incrs 
 03b7 6800c792 fetch 1 ,mem_empty_count 
 03b8 243a03be nbranch p_le_send_empyt ,blank 
 03b9 6800843f fetch 1 ,mem_le_state 
@@ -1356,7 +1356,7 @@
 
 p_in_le_tx_4:
 03c5 20405892 call le_fifo_check_nearly_full 
-03c6 205a071c call p_mouse_data_pull ,blank 
+03c6 205a071d call p_mouse_data_pull ,blank 
 03c7 20205622 branch le_prepare_tx + 4 
 
 p_le_prepare_tx_wak:
@@ -1378,7 +1378,7 @@
 03d5 20600000 rtn 
 
 p_le_power_ctrl_pac_succ_decrs:
-03d6 20200545 branch power_ctrl_pac_succ_decrs 
+03d6 20200544 branch power_ctrl_pac_succ_decrs 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
 03d7 6800c7a3 fetch 1 ,mem_mouse_le_reconnect_flag 
@@ -1616,8 +1616,8 @@
 0487 793ffe04 set0 bit_hop ,pdata 
 0488 6000c94c store 1 ,mem_24g_data_type 
 0489 6000c907 store 1 ,mem_24g_txpayload 
-048a 20400545 call power_ctrl_pac_succ_decrs 
-048b 20200693 branch p_g24_ch 
+048a 20400544 call power_ctrl_pac_succ_decrs 
+048b 20200694 branch p_g24_ch 
 
 p_g24_rf_hop_attemp_again:
 048c 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
@@ -1628,12 +1628,12 @@
 048f 1fe0fe01 increase 1 ,pdata 
 0490 6000ca7e store 1 ,mem_24g_hop_fastly_cnt 
 0491 c0020495 beq 4 ,p_g24_rf_hop_fastly_exit 
-0492 20400693 call p_g24_ch 
+0492 20400694 call p_g24_ch 
 0493 70499002 jam 2 ,mem_24g_max_retry 
 0494 202004ee branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-0495 20400545 call power_ctrl_pac_succ_decrs 
+0495 20400544 call power_ctrl_pac_succ_decrs 
 0496 704a7e00 jam 0 ,mem_24g_hop_fastly_cnt 
 0497 2020047d branch p_g24_transmit_rf_ctrl_clear 
 
@@ -1679,7 +1679,7 @@
 04b4 1fe0ffff increase -1 ,pdata 
 04b5 6000ca83 store 1 ,mem_24g_sync_cnt 
 04b6 704a8202 jam 2 ,mem_24g_rf_work_stage 
-04b7 20400693 call p_g24_ch 
+04b7 20400694 call p_g24_ch 
 04b8 70499004 jam g24_max_retry ,mem_24g_max_retry 
 04b9 20600000 rtn 
 
@@ -1687,17 +1687,17 @@
 04ba 704a8203 jam 3 ,mem_24g_rf_work_stage 
 04bb 6800ca80 fetch 1 ,mem_24g_rf_hop_ch 
 04bc 243a048c nbranch p_g24_rf_hop_attemp_again ,blank 
-04bd 20400693 call p_g24_ch 
+04bd 20400694 call p_g24_ch 
 04be 70499002 jam 2 ,mem_24g_max_retry 
 04bf 20600000 rtn 
 
 p_g24_txdata_prep:
 04c0 6800c95b fetch 1 ,mem_24g_pairing_sm 
-04c1 c0ff8580 bne state_24g_pairing_success ,p_g24_pairing_sm 
+04c1 c0ff857f bne state_24g_pairing_success ,p_g24_pairing_sm 
 
 p_g24_txdata_prep_packeage_data:
 04c2 204004c6 call p_g24_package_data 
-04c3 20400681 call p_g24_transmit_prep 
+04c3 20400682 call p_g24_transmit_prep 
 
 p_g24_txdata_enable_tx:
 04c4 70495001 jam ensure_on_24g ,mem_24g_ensure 
@@ -1763,8 +1763,8 @@
 04f2 242c0519 nbranch p_g24_retransmit ,sync 
 04f3 24378519 nbranch p_g24_retransmit ,user3 
 04f4 20400504 call p_g24_txbuf_clear 
-04f5 20400537 call p_g24_ackpayload_parse 
-04f6 20400541 call power_ctrl_pac_succ_incrs 
+04f5 20400536 call p_g24_ackpayload_parse 
+04f6 20400540 call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
 04f7 6800c94a fetch 1 ,mem_24g_pid 
@@ -1794,24 +1794,24 @@
 0509 20600000 rtn 
 
 p_g24_paring_mode_start:
-050a 2040053e call power_ctrl_pac_succ_cnt_init 
-050b 2020059b branch p_g24_paring_mode 
+050a 2040053d call power_ctrl_pac_succ_cnt_init 
+050b 2020059a branch p_g24_paring_mode 
 
 p_g24_transmit_receive_ack:
 050c 7857fc00 disable user3 
-050d 204006ee call p_g24_transmit 
+050d 204006ef call p_g24_transmit 
 050e 18002a00 force 0 ,radio_ctrl 
 050f 68024973 fetch 4 ,mem_24g_addr 
 0510 98001200 iforce access 
 0511 68088017 fetcht 1 ,mem_last_freq 
 0512 2040291f call set_freq_rx 
 0513 20402924 call rf_rx_enable 
-0514 204006ad call p_g24_receive_rxon 
-0515 205786e7 call p_g24_end_of_packet ,user3 
+0514 204006ae call p_g24_receive_rxon 
+0515 205786e8 call p_g24_end_of_packet ,user3 
 0516 20600000 rtn 
 
 p_g24_transmit_no_ack:
-0517 204006e7 call p_g24_end_of_packet 
+0517 204006e8 call p_g24_end_of_packet 
 0518 202004f7 branch p_g24_transmit_next_packet 
 
 p_g24_retransmit:
@@ -1821,10 +1821,10 @@
 051c 1fe0fe01 increase 1 ,pdata 
 051d 60014951 store 2 ,mem_24g_txfail_cnt 
 051e 6800c952 fetch 1 ,mem_24g_txfail_cnt + 1 
-051f c2820528 bbit1 4 ,p_g24_stop_g24_mode 
+051f c2822dd4 bbit1 4 ,g24_stop_24g_mode 
 0520 6800c95b fetch 1 ,mem_24g_pairing_sm 
 0521 c0ff8524 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
-0522 2040052d call p_g24_tx_hop_ch_process 
+0522 2040052c call p_g24_tx_hop_ch_process 
 0523 202004ef branch p_g24_transmit_loop 
 
 p_g24_tx_paring_retry:
@@ -1834,689 +1834,688 @@
 p_g24_tx_attempt_fail:
 0526 58000000 setarg 0 
 0527 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 
+0528 20202dd4 branch g24_stop_24g_mode 
 
 p_g24_tx_fast_hop:
-052a 20400572 call power_ctrl_txpower_incrs 
-052b 20400545 call power_ctrl_pac_succ_decrs 
-052c 20200693 branch p_g24_ch 
+0529 20400571 call power_ctrl_txpower_incrs 
+052a 20400544 call power_ctrl_pac_succ_decrs 
+052b 20200694 branch p_g24_ch 
 
 p_g24_tx_hop_ch_process:
-052d 6800c954 fetch 1 ,mem_24g_retry 
-052e 1fe67c0b sub pdata ,11 ,null 
-052f 2421052a nbranch p_g24_tx_fast_hop ,positive 
-0530 1fe0fe01 increase 1 ,pdata 
-0531 6000c954 store 1 ,mem_24g_retry 
-0532 c0010481 beq 2 ,p_g24_hop_ch_enable 
-0533 c0030486 beq 6 ,p_g24_hop_ch_disable 
-0534 c0040481 beq 8 ,p_g24_hop_ch_enable 
-0535 c0060486 beq 12 ,p_g24_hop_ch_disable 
-0536 20600000 rtn 
+052c 6800c954 fetch 1 ,mem_24g_retry 
+052d 1fe67c0b sub pdata ,11 ,null 
+052e 24210529 nbranch p_g24_tx_fast_hop ,positive 
+052f 1fe0fe01 increase 1 ,pdata 
+0530 6000c954 store 1 ,mem_24g_retry 
+0531 c0010481 beq 2 ,p_g24_hop_ch_enable 
+0532 c0030486 beq 6 ,p_g24_hop_ch_disable 
+0533 c0040481 beq 8 ,p_g24_hop_ch_enable 
+0534 c0060486 beq 12 ,p_g24_hop_ch_disable 
+0535 20600000 rtn 
 
 p_g24_ackpayload_parse:
-0537 20400615 call p_g24_read_len_pid_crc 
-0538 6800c949 fetch 1 ,mem_24g_rxdata_length 
-0539 207a0000 rtn blank 
-053a 98007200 iforce loopcnt 
-053b d8c048c7 arg mem_24g_rxbuf + 2 ,contr 
-053c d8a04929 arg mem_24g_rxpayload ,contw 
-053d 20207f01 branch memcpy 
+0536 20400616 call p_g24_read_len_pid_crc 
+0537 6800c949 fetch 1 ,mem_24g_rxdata_length 
+0538 207a0000 rtn blank 
+0539 98007200 iforce loopcnt 
+053a d8c048c7 arg mem_24g_rxbuf + 2 ,contr 
+053b d8a04929 arg mem_24g_rxpayload ,contw 
+053c 20207f01 branch memcpy 
 
 power_ctrl_pac_succ_cnt_init:
-053e 704a8701 jam 1 ,mem_power_ctrl_level 
-053f 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0540 20600000 rtn 
+053d 704a8701 jam 1 ,mem_power_ctrl_level 
+053e 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+053f 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0541 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0542 1fe0fe01 increase 1 ,pdata 
-0543 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0544 20600000 rtn 
+0540 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0541 1fe0fe01 increase 1 ,pdata 
+0542 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0543 20600000 rtn 
 
 power_ctrl_pac_succ_decrs:
-0545 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0546 1fe67c02 sub pdata ,2 ,null 
-0547 2441054d ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0548 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0549 c1000000 rtneq 0 
-054a 1fe0ffff increase -1 ,pdata 
-054b 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
-054c 20600000 rtn 
+0544 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0545 1fe67c02 sub pdata ,2 ,null 
+0546 2441054c ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0547 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0548 c1000000 rtneq 0 
+0549 1fe0ffff increase -1 ,pdata 
+054a 6000ca84 store 1 ,mem_power_ctrl_pac_succ_cnt 
+054b 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-054d 704a8403 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-054e 20600000 rtn 
+054c 704a8403 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+054d 20600000 rtn 
 
 power_ctrl_start:
-054f 68014682 fetch 2 ,mem_ui_state_map 
-0550 c3858000 rtnbit1 ui_state_ble_adv 
-0551 c3838000 rtnbit1 ui_state_bt_reconnect 
-0552 c3830000 rtnbit1 ui_state_bt_discovery 
-0553 da204a0d arg mem_rssi_signal_buf ,rega 
-0554 20400662 call p_rssi_average 
-0555 6008ca85 storet 1 ,mem_rssi_avg_received 
-0556 58000082 setarg rssi_dis_max_24g 
-0557 c5130559 bmark1 mark_24g ,power_ctrl_start_next 
-0558 58000080 setarg rssi_dis_max_ble 
+054e 68014682 fetch 2 ,mem_ui_state_map 
+054f c3858000 rtnbit1 ui_state_ble_adv 
+0550 c3838000 rtnbit1 ui_state_bt_reconnect 
+0551 c3830000 rtnbit1 ui_state_bt_discovery 
+0552 da204a0d arg mem_rssi_signal_buf ,rega 
+0553 20400663 call p_rssi_average 
+0554 6008ca85 storet 1 ,mem_rssi_avg_received 
+0555 58000082 setarg rssi_dis_max_24g 
+0556 c5130558 bmark1 mark_24g ,power_ctrl_start_next 
+0557 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-0559 98467c00 isub temp ,null 
-055a 24210571 nbranch power_ctrl_txpower_incrs_force ,positive 
-055b 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-055c 1fe67c02 sub pdata ,2 ,null 
-055d 24210561 nbranch power_ctrl_txpower_decrs_check ,positive 
-055e 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-055f c0000572 beq 0 ,power_ctrl_txpower_incrs 
-0560 20600000 rtn 
+0558 98467c00 isub temp ,null 
+0559 24210570 nbranch power_ctrl_txpower_incrs_force ,positive 
+055a 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+055b 1fe67c02 sub pdata ,2 ,null 
+055c 24210560 nbranch power_ctrl_txpower_decrs_check ,positive 
+055d 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+055e c0000571 beq 0 ,power_ctrl_txpower_incrs 
+055f 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-0561 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0562 c1990000 rtnne 50 
-0563 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0560 6800ca84 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0561 c1990000 rtnne 50 
+0562 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-0564 6808ca85 fetcht 1 ,mem_rssi_avg_received 
-0565 58000077 setarg rssi_dis_min_24g 
-0566 c5130568 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0567 58000075 setarg rssi_dis_min_ble 
+0563 6808ca85 fetcht 1 ,mem_rssi_avg_received 
+0564 58000077 setarg rssi_dis_min_24g 
+0565 c5130567 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0566 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-0568 98467c00 isub temp ,null 
-0569 24610000 nrtn positive 
-056a 6800ca87 fetch 1 ,mem_power_ctrl_level 
-056b c0000579 beq 0 ,power_ctrl_decrs_level0 
-056c 1fe0ffff increase -1 ,pdata 
-056d 6000ca87 store 1 ,mem_power_ctrl_level 
-056e c0000579 beq 0 ,power_ctrl_decrs_level0 
+0567 98467c00 isub temp ,null 
+0568 24610000 nrtn positive 
+0569 6800ca87 fetch 1 ,mem_power_ctrl_level 
+056a c0000578 beq 0 ,power_ctrl_decrs_level0 
+056b 1fe0ffff increase -1 ,pdata 
+056c 6000ca87 store 1 ,mem_power_ctrl_level 
+056d c0000578 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-056f 7041de00 jam tx_power_0db ,mem_tx_power 
-0570 20600000 rtn 
+056e 7041de00 jam tx_power_0db ,mem_tx_power 
+056f 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-0571 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0570 704a8400 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-0572 6800ca87 fetch 1 ,mem_power_ctrl_level 
-0573 c0010577 beq 2 ,power_ctrl_incrs_level2 
-0574 1fe0fe01 increase 1 ,pdata 
-0575 6000ca87 store 1 ,mem_power_ctrl_level 
-0576 c000856f beq 1 ,power_ctrl_incrs_level1 
+0571 6800ca87 fetch 1 ,mem_power_ctrl_level 
+0572 c0010576 beq 2 ,power_ctrl_incrs_level2 
+0573 1fe0fe01 increase 1 ,pdata 
+0574 6000ca87 store 1 ,mem_power_ctrl_level 
+0575 c000856e beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-0577 7041de02 jam tx_power_5db ,mem_tx_power 
-0578 20600000 rtn 
+0576 7041de02 jam tx_power_5db ,mem_tx_power 
+0577 20600000 rtn 
 
 power_ctrl_decrs_level0:
-0579 7041de04 jam tx_power_f5db ,mem_tx_power 
-057a 20600000 rtn 
+0578 7041de04 jam tx_power_f5db ,mem_tx_power 
+0579 20600000 rtn 
 
 p_g24_pair_init:
-057b 7041de00 jam tx_power_0db ,mem_tx_power 
-057c 70494a00 jam 0 ,mem_24g_pid 
-057d 7049554e jam g24_pair_ch ,mem_24g_ch 
-057e 68024957 fetch 4 ,mem_24g_paring_addr 
-057f 20200673 branch p_g24_update_addr_and_synccrc8 
+057a 7041de00 jam tx_power_0db ,mem_tx_power 
+057b 70494a00 jam 0 ,mem_24g_pid 
+057c 7049554e jam g24_pair_ch ,mem_24g_ch 
+057d 68024957 fetch 4 ,mem_24g_paring_addr 
+057e 20200674 branch p_g24_update_addr_and_synccrc8 
 
 p_g24_pairing_sm:
-0580 6800c950 fetch 1 ,mem_24g_ensure 
-0581 c000ffe7 beq ensure_on_24g ,enable_user 
-0582 6800c95b fetch 1 ,mem_24g_pairing_sm 
-0583 c0008587 beq state_24g_pairing_1 ,p_g24_pairing_sm_1 
-0584 c001058a beq state_24g_pairing_2 ,p_g24_pairing_sm_2 
-0585 c001858d beq state_24g_pairing_3 ,p_g24_pairing_sm_3 
-0586 20202a8c branch assert 
+057f 6800c950 fetch 1 ,mem_24g_ensure 
+0580 c000ffe7 beq ensure_on_24g ,enable_user 
+0581 6800c95b fetch 1 ,mem_24g_pairing_sm 
+0582 c0008586 beq state_24g_pairing_1 ,p_g24_pairing_sm_1 
+0583 c0010589 beq state_24g_pairing_2 ,p_g24_pairing_sm_2 
+0584 c001858c beq state_24g_pairing_3 ,p_g24_pairing_sm_3 
+0585 20202a8c branch assert 
 
 p_g24_pairing_sm_1:
-0587 70495b11 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
-0588 70119eaa jam 0xaa ,mem_24g_common_temp 
-0589 2020058f branch p_g24_pairing_sm_common 
+0586 70495b11 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
+0587 70119eaa jam 0xaa ,mem_24g_common_temp 
+0588 2020058e branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_2:
-058a 70495b12 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
-058b 70119e55 jam 0x55 ,mem_24g_common_temp 
-058c 2020058f branch p_g24_pairing_sm_common 
+0589 70495b12 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
+058a 70119e55 jam 0x55 ,mem_24g_common_temp 
+058b 2020058e branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_3:
-058d 70495b13 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
-058e 70119e22 jam 0x22 ,mem_24g_common_temp 
+058c 70495b13 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
+058d 70119e22 jam 0x22 ,mem_24g_common_temp 
 
 p_g24_pairing_sm_common:
-058f 6800c94c fetch 1 ,mem_24g_data_type 
-0590 1fe17e07 and_into bits_data ,pdata 
-0591 6000919f store 1 ,mem_24g_common_temp + 1 
-0592 68024982 fetch 4 ,mem_24g_device_addr 
-0593 600211a0 store 4 ,mem_24g_common_temp + 2 
+058e 6800c94c fetch 1 ,mem_24g_data_type 
+058f 1fe17e07 and_into bits_data ,pdata 
+0590 6000919f store 1 ,mem_24g_common_temp + 1 
+0591 68024982 fetch 4 ,mem_24g_device_addr 
+0592 600211a0 store 4 ,mem_24g_common_temp + 2 
 
 p_g24_put_pairing_data_in_buff:
-0594 7011a400 jam 0 ,mem_24g_common_temp + 6 
-0595 da20119e arg mem_24g_common_temp ,rega 
-0596 d8400007 arg 7 ,temp 
-0597 20400610 call p_g24_put_data_in_buff 
-0598 20400681 call p_g24_transmit_prep 
-0599 204004c4 call p_g24_txdata_enable_tx 
-059a 20207fe7 branch enable_user 
+0593 7011a400 jam 0 ,mem_24g_common_temp + 6 
+0594 da20119e arg mem_24g_common_temp ,rega 
+0595 d8400007 arg 7 ,temp 
+0596 20400611 call p_g24_put_data_in_buff 
+0597 20400682 call p_g24_transmit_prep 
+0598 204004c4 call p_g24_txdata_enable_tx 
+0599 20207fe7 branch enable_user 
 
 p_g24_paring_mode:
-059b 6800c95b fetch 1 ,mem_24g_pairing_sm 
-059c c17f8000 rtneq state_24g_pairing_success 
-059d c00885a1 beq state_24g_pairing_1_waiting_ack ,p_g24_pairing_sm_1_waiting_ack 
-059e c00905a3 beq state_24g_pairing_2_waiting_ack ,p_g24_pairing_sm_2_waiting_ack 
-059f c00985a5 beq state_24g_pairing_3_waiting_ack ,p_g24_pairing_sm_3_waiting_ack 
-05a0 20600000 rtn 
+059a 6800c95b fetch 1 ,mem_24g_pairing_sm 
+059b c17f8000 rtneq state_24g_pairing_success 
+059c c00885a0 beq state_24g_pairing_1_waiting_ack ,p_g24_pairing_sm_1_waiting_ack 
+059d c00905a2 beq state_24g_pairing_2_waiting_ack ,p_g24_pairing_sm_2_waiting_ack 
+059e c00985a4 beq state_24g_pairing_3_waiting_ack ,p_g24_pairing_sm_3_waiting_ack 
+059f 20600000 rtn 
 
 p_g24_pairing_sm_1_waiting_ack:
-05a1 70495b02 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
-05a2 202004fe branch p_g24_transmit_abandon 
+05a0 70495b02 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
+05a1 202004fe branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_2_waiting_ack:
-05a3 70495b03 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
-05a4 202004fe branch p_g24_transmit_abandon 
+05a2 70495b03 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
+05a3 202004fe branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_3_waiting_ack:
-05a5 70495bff jam state_24g_pairing_success ,mem_24g_pairing_sm 
-05a6 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
-05a7 20407d86 call ui_ipc_send_event 
-05a8 204005db call p_g24_store_dongle_addr 
-05a9 202004fe branch p_g24_transmit_abandon 
+05a4 70495bff jam state_24g_pairing_success ,mem_24g_pairing_sm 
+05a5 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+05a6 20407d86 call ui_ipc_send_event 
+05a7 204005dc call p_g24_store_dongle_addr 
+05a8 202004fe branch p_g24_transmit_abandon 
 
 p_g24_tx_attemp_data_prep:
-05aa 70119eff jam 0xff ,mem_24g_common_temp 
-05ab 6800c94c fetch 1 ,mem_24g_data_type 
-05ac 6000919f store 1 ,mem_24g_common_temp + 1 
-05ad 68024982 fetch 4 ,mem_24g_device_addr 
-05ae 600211a0 store 4 ,mem_24g_common_temp + 2 
-05af d8400006 arg 6 ,temp 
-05b0 da20119e arg mem_24g_common_temp ,rega 
-05b1 20400610 call p_g24_put_data_in_buff 
-05b2 20200681 branch p_g24_transmit_prep 
+05a9 70119eff jam 0xff ,mem_24g_common_temp 
+05aa 6800c94c fetch 1 ,mem_24g_data_type 
+05ab 6000919f store 1 ,mem_24g_common_temp + 1 
+05ac 68024982 fetch 4 ,mem_24g_device_addr 
+05ad 600211a0 store 4 ,mem_24g_common_temp + 2 
+05ae d8400006 arg 6 ,temp 
+05af da20119e arg mem_24g_common_temp ,rega 
+05b0 20400611 call p_g24_put_data_in_buff 
+05b1 20200682 branch p_g24_transmit_prep 
 
 p_g24_auto_pair_start:
-05b3 58000000 setarg 0 
-05b4 600111be store 2 ,mem_24g_pair_current_ch_num 
-05b5 793f8026 set0 mark_24g ,mark 
-05b6 204005f3 call p_g24_auto_pair_first_attemp 
-05b7 204005aa call p_g24_tx_attemp_data_prep 
+05b2 58000000 setarg 0 
+05b3 600111be store 2 ,mem_24g_pair_current_ch_num 
+05b4 793f8026 set0 mark_24g ,mark 
+05b5 204005f4 call p_g24_auto_pair_first_attemp 
+05b6 204005a9 call p_g24_tx_attemp_data_prep 
 
 p_g24_auto_pair_restart:
-05b8 58000000 setarg 0 
-05b9 60014978 store 2 ,mem_24g_check_dongle_times 
-05ba 6808c8b5 fetcht 1 ,mem_mouse_multi_led_gpio 
-05bb 79200407 set1 gpio_active_bit ,temp 
-05bc 2040680e call gpio_config_output 
+05b7 58000000 setarg 0 
+05b8 60014978 store 2 ,mem_24g_check_dongle_times 
+05b9 6808c8b5 fetcht 1 ,mem_mouse_multi_led_gpio 
+05ba 79200407 set1 gpio_active_bit ,temp 
+05bb 2040680e call gpio_config_output 
 
 p_g24_auto_pair_start_loop:
-05bd 20402afa call lpo_calibration 
-05be 200007d0 nop 2000 
-05bf 204005e7 call p_g24_led_on_timer_check 
-05c0 68014978 fetch 2 ,mem_24g_check_dongle_times 
-05c1 d8407788 arg 0x7788 ,temp 
-05c2 98467c00 isub temp ,null 
-05c3 20228528 branch p_g24_stop_g24_mode ,zero 
-05c4 2040050c call p_g24_transmit_receive_ack 
-05c5 242c05dd nbranch p_g24_auto_pair_retry ,sync 
-05c6 243785dd nbranch p_g24_auto_pair_retry ,user3 
-05c7 20400537 call p_g24_ackpayload_parse 
-05c8 204000ed call p_mouse_tx_power_init 
-05c9 68024973 fetch 4 ,mem_24g_addr 
-05ca 680a4957 fetcht 4 ,mem_24g_paring_addr 
-05cb 98467c00 isub temp ,null 
-05cc 20228117 branch p_g24_start_pairing_sm1 ,zero 
-05cd 680a4982 fetcht 4 ,mem_24g_device_addr 
-05ce 98467c00 isub temp ,null 
-05cf 204285db call p_g24_store_dongle_addr ,zero 
+05bc 20402afa call lpo_calibration 
+05bd 200007d0 nop 2000 
+05be 204005e8 call p_g24_led_on_timer_check 
+05bf 68014978 fetch 2 ,mem_24g_check_dongle_times 
+05c0 d8407788 arg 0x7788 ,temp 
+05c1 98467c00 isub temp ,null 
+05c2 2022add4 branch g24_stop_24g_mode ,zero 
+05c3 2040050c call p_g24_transmit_receive_ack 
+05c4 242c05de nbranch p_g24_auto_pair_retry ,sync 
+05c5 243785de nbranch p_g24_auto_pair_retry ,user3 
+05c6 20400536 call p_g24_ackpayload_parse 
+05c7 6800c949 fetch 1 ,mem_24g_rxdata_length 
+05c8 203a05bc branch p_g24_auto_pair_start_loop ,blank 
+05c9 204000ed call p_mouse_tx_power_init 
+05ca 68024973 fetch 4 ,mem_24g_addr 
+05cb 680a4957 fetcht 4 ,mem_24g_paring_addr 
+05cc 98467c00 isub temp ,null 
+05cd 20228117 branch p_g24_start_pairing_sm1 ,zero 
+05ce 68024973 fetch 4 ,mem_24g_addr 
+05cf 680a4982 fetcht 4 ,mem_24g_device_addr 
+05d0 98467c00 isub temp ,null 
+05d1 204285dc call p_g24_store_dongle_addr ,zero 
 
 p_g24_tx_attemp_dongle_succ:
-05d0 79200026 set1 mark_24g ,mark 
-05d1 58000000 setarg 0 
-05d2 60014978 store 2 ,mem_24g_check_dongle_times 
-05d3 70480c00 jam 0 ,mem_mouse_long_mult_flag 
-05d4 700a993c jam bt_evt_24g_attempt_success ,mem_fifo_temp 
-05d5 20407d86 call ui_ipc_send_event 
-05d6 20400504 call p_g24_txbuf_clear 
+05d2 79200026 set1 mark_24g ,mark 
+05d3 58000000 setarg 0 
+05d4 60014978 store 2 ,mem_24g_check_dongle_times 
+05d5 70480c00 jam 0 ,mem_mouse_long_mult_flag 
+05d6 20402f20 call g24_evt_attemp_success 
+05d7 20400504 call p_g24_txbuf_clear 
 
 p_g24_transmit_by_interrupt_enable:
-05d7 704a8b01 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
-05d8 58000000 setarg 0 
-05d9 60014a8c store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-05da 20600000 rtn 
+05d8 704a8b01 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+05d9 58000000 setarg 0 
+05da 60014a8c store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+05db 20600000 rtn 
 
 p_g24_store_dongle_addr:
-05db 6802492b fetch 4 ,mem_24g_rxpayload + 2 
-05dc 20200673 branch p_g24_update_addr_and_synccrc8 
+05dc 6802492b fetch 4 ,mem_24g_rxpayload + 2 
+05dd 20200674 branch p_g24_update_addr_and_synccrc8 
 
 p_g24_auto_pair_retry:
-05dd 68014978 fetch 2 ,mem_24g_check_dongle_times 
-05de 1fe0fe01 increase 1 ,pdata 
-05df 60014978 store 2 ,mem_24g_check_dongle_times 
-05e0 6800ca89 fetch 1 ,mem_24g_auto_paring_switch 
-05e1 1fe0fe01 increase 1 ,pdata 
-05e2 1fe17e03 and_into 3 ,pdata 
-05e3 6000ca89 store 1 ,mem_24g_auto_paring_switch 
-05e4 c0000606 beq 0 ,p_g24_auto_pair_device_attemp 
-05e5 c001060a beq 2 ,p_g24_auto_pair_all_powerful_attemp 
-05e6 20200608 branch p_g24_auto_pair_pair_attemp 
+05de 68014978 fetch 2 ,mem_24g_check_dongle_times 
+05df 1fe0fe01 increase 1 ,pdata 
+05e0 60014978 store 2 ,mem_24g_check_dongle_times 
+05e1 6800ca89 fetch 1 ,mem_24g_auto_paring_switch 
+05e2 1fe0fe01 increase 1 ,pdata 
+05e3 1fe17e03 and_into 3 ,pdata 
+05e4 6000ca89 store 1 ,mem_24g_auto_paring_switch 
+05e5 c0000607 beq 0 ,p_g24_auto_pair_device_attemp 
+05e6 c001060b beq 2 ,p_g24_auto_pair_all_powerful_attemp 
+05e7 20200609 branch p_g24_auto_pair_pair_attemp 
 
 p_g24_led_on_timer_check:
-05e7 6800c8a9 fetch 1 ,mem_g24_led_on_timer_count_end 
-05e8 247a0000 nrtn blank 
-05e9 2040027c call p_mouse_multi_up_led_on1 
-05ea 680148a7 fetch 2 ,mem_g24_led_on_timer_count 
-05eb 1fe0fe01 increase 1 ,pdata 
-05ec 600148a7 store 2 ,mem_g24_led_on_timer_count 
-05ed d84007f8 arg 0x7f8 ,temp 
-05ee 98467c00 isub temp ,null 
-05ef 202285f1 branch p_g24_pair_led_off ,zero 
-05f0 20600000 rtn 
+05e8 6800c8a9 fetch 1 ,mem_g24_led_on_timer_count_end 
+05e9 247a0000 nrtn blank 
+05ea 2040027c call p_mouse_multi_up_led_on1 
+05eb 680148a7 fetch 2 ,mem_g24_led_on_timer_count 
+05ec 1fe0fe01 increase 1 ,pdata 
+05ed 600148a7 store 2 ,mem_g24_led_on_timer_count 
+05ee d84007f8 arg 0x7f8 ,temp 
+05ef 98467c00 isub temp ,null 
+05f0 202285f2 branch p_g24_pair_led_off ,zero 
+05f1 20600000 rtn 
 
 p_g24_pair_led_off:
-05f1 7048a901 jam 1 ,mem_g24_led_on_timer_count_end 
-05f2 20200282 branch p_mouse_multi_led_blink_off 
+05f2 7048a901 jam 1 ,mem_g24_led_on_timer_count_end 
+05f3 20200282 branch p_mouse_multi_led_blink_off 
 
 p_g24_auto_pair_first_attemp:
-05f3 204000ed call p_mouse_tx_power_init 
-05f4 68024982 fetch 4 ,mem_24g_device_addr 
-05f5 60024973 store 4 ,mem_24g_addr 
-05f6 680091be fetch 1 ,mem_24g_pair_current_ch_num 
-05f7 6000c956 store 1 ,mem_24g_current_ch_number 
-05f8 204005fb call p_g24_ch_syncword_crc8_init 
-05f9 600891be storet 1 ,mem_24g_pair_current_ch_num 
-05fa 20600000 rtn 
+05f4 204000ed call p_mouse_tx_power_init 
+05f5 68024982 fetch 4 ,mem_24g_device_addr 
+05f6 60024973 store 4 ,mem_24g_addr 
+05f7 680091be fetch 1 ,mem_24g_pair_current_ch_num 
+05f8 6000c956 store 1 ,mem_24g_current_ch_number 
+05f9 204005fc call p_g24_ch_syncword_crc8_init 
+05fa 600891be storet 1 ,mem_24g_pair_current_ch_num 
+05fb 20600000 rtn 
 
 p_g24_ch_syncword_crc8_init:
-05fb 20400674 call p_g24_syncword_crc8 
-05fc 20200693 branch p_g24_ch 
+05fc 20400675 call p_g24_syncword_crc8 
+05fd 20200694 branch p_g24_ch 
 
 p_g24_auto_pair_all_powerful:
-05fd 7041de20 jam tx_power_pair ,mem_tx_power 
-05fe 58000f0f setarg 0x0f0f 
-05ff 60014973 store 2 ,mem_24g_addr 
-0600 e0a10000 istore 2 ,contw 
-0601 680091bf fetch 1 ,mem_24g_powerful_current_ch_num 
-0602 6000c956 store 1 ,mem_24g_current_ch_number 
-0603 204005fb call p_g24_ch_syncword_crc8_init 
-0604 600891bf storet 1 ,mem_24g_powerful_current_ch_num 
-0605 20600000 rtn 
+05fe 7041de20 jam tx_power_pair ,mem_tx_power 
+05ff 58000f0f setarg 0x0f0f 
+0600 60014973 store 2 ,mem_24g_addr 
+0601 e0a10000 istore 2 ,contw 
+0602 680091bf fetch 1 ,mem_24g_powerful_current_ch_num 
+0603 6000c956 store 1 ,mem_24g_current_ch_number 
+0604 204005fc call p_g24_ch_syncword_crc8_init 
+0605 600891bf storet 1 ,mem_24g_powerful_current_ch_num 
+0606 20600000 rtn 
 
 p_g24_auto_pair_device_attemp:
-0606 204005f3 call p_g24_auto_pair_first_attemp 
-0607 202005bd branch p_g24_auto_pair_start_loop 
+0607 204005f4 call p_g24_auto_pair_first_attemp 
+0608 202005bc branch p_g24_auto_pair_start_loop 
 
 p_g24_auto_pair_pair_attemp:
-0608 2040057b call p_g24_pair_init 
-0609 202005bd branch p_g24_auto_pair_start_loop 
+0609 2040057a call p_g24_pair_init 
+060a 202005bc branch p_g24_auto_pair_start_loop 
 
 p_g24_auto_pair_all_powerful_attemp:
-060a 204005fd call p_g24_auto_pair_all_powerful 
-060b 202005bd branch p_g24_auto_pair_start_loop 
+060b 204005fe call p_g24_auto_pair_all_powerful 
+060c 202005bc branch p_g24_auto_pair_start_loop 
 
 p_g24_check_51cmd_stop_24g:
-060c 793f8026 set0 mark_24g ,mark 
-060d 204053ce call le_disable 
+060d 793f8026 set0 mark_24g ,mark 
+060e 204053ce call le_disable 
 
 p_mouse_disable_g24_pairing_flag:
-060e d8e00003 arg mosue_24g_pairing_flag ,queue 
-060f 202043d2 branch mouse_disable_function_flag 
+060f d8e00003 arg mosue_24g_pairing_flag ,queue 
+0610 202043d2 branch mouse_disable_function_flag 
 
 p_g24_put_data_in_buff:
-0610 6008c94b storet 1 ,mem_24g_datalen 
-0611 18427200 copy temp ,loopcnt 
-0612 d8a048e7 arg mem_24g_txbuf ,contw 
-0613 1a220c00 copy rega ,contr 
-0614 20207f01 branch memcpy 
+0611 6008c94b storet 1 ,mem_24g_datalen 
+0612 18427200 copy temp ,loopcnt 
+0613 d8a048e7 arg mem_24g_txbuf ,contw 
+0614 1a220c00 copy rega ,contr 
+0615 20207f01 branch memcpy 
 
 p_g24_read_len_pid_crc:
-0615 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
-0616 1fe97e00 rshift3 pdata ,pdata 
-0617 6000c949 store 1 ,mem_24g_rxdata_length 
-0618 1fe0fe01 increase 1 ,pdata 
-0619 d8c048c6 arg mem_24g_rxbuf + 1 ,contr 
-061a 98c08c00 iadd contr ,contr 
-061b e8c18000 ifetch 3 ,contr 
-061c 6001c988 store 3 ,mem_24g_sta_crc 
-061d 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
-061e 1fe37e00 rshift pdata ,pdata 
-061f 1fe17e03 and pdata ,0x03 ,pdata 
-0620 6000c98e store 1 ,mem_24g_sta_pid 
-0621 20600000 rtn 
+0616 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
+0617 1fe97e00 rshift3 pdata ,pdata 
+0618 6000c949 store 1 ,mem_24g_rxdata_length 
+0619 1fe0fe01 increase 1 ,pdata 
+061a d8c048c6 arg mem_24g_rxbuf + 1 ,contr 
+061b 98c08c00 iadd contr ,contr 
+061c e8c18000 ifetch 3 ,contr 
+061d 6001c988 store 3 ,mem_24g_sta_crc 
+061e 6800c8c6 fetch 1 ,mem_24g_rxbuf + 1 
+061f 1fe37e00 rshift pdata ,pdata 
+0620 1fe17e03 and pdata ,0x03 ,pdata 
+0621 6000c98e store 1 ,mem_24g_sta_pid 
+0622 20600000 rtn 
 
 p_set_freq_tx:
-0622 60088017 storet 1 ,mem_last_freq 
-0623 1840a200 add temp ,0 ,rega 
-0624 20402981 call rf_write_freq 
-0625 58000500 setarg param_pll_setup 
-0626 20402a8f call sleep 
+0623 60088017 storet 1 ,mem_last_freq 
+0624 1840a200 add temp ,0 ,rega 
+0625 20402981 call rf_write_freq 
+0626 58000500 setarg param_pll_setup 
+0627 20402a8f call sleep 
 
 p_rf_tx_enable:
-0627 70890601 jam 0x1 ,rfen_adc 
-0628 7089003c jam 0x3c ,rfen_rx 
-0629 708901e0 jam 0xe0 ,rfen_tx 
-062a 2000000a nop 10 
-062b 70890201 jam 0x01 ,rfen_mdm 
-062c 7089023d jam 0x3d ,rfen_mdm 
-062d 2000000a nop 10 
-062e 708903b7 jam 0xb7 ,rfen_sn 
-062f 2000000a nop 10 
-0630 7089027d jam 0x7d ,rfen_mdm 
-0631 6800c1de fetch 1 ,mem_tx_power 
-0632 c001063a beq tx_power_5db ,p_set_tx_power_5db 
-0633 c002063f beq tx_power_f5db ,p_set_tx_power_f5db 
-0634 c010064e beq tx_power_pair ,p_set_tx_power_pair 
+0628 70890601 jam 0x1 ,rfen_adc 
+0629 7089003c jam 0x3c ,rfen_rx 
+062a 708901e0 jam 0xe0 ,rfen_tx 
+062b 2000000a nop 10 
+062c 70890201 jam 0x01 ,rfen_mdm 
+062d 7089023d jam 0x3d ,rfen_mdm 
+062e 2000000a nop 10 
+062f 708903b7 jam 0xb7 ,rfen_sn 
+0630 2000000a nop 10 
+0631 7089027d jam 0x7d ,rfen_mdm 
+0632 6800c1de fetch 1 ,mem_tx_power 
+0633 c001063b beq tx_power_5db ,p_set_tx_power_5db 
+0634 c0020640 beq tx_power_f5db ,p_set_tx_power_f5db 
+0635 c010064f beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-0635 20400644 call p_rx_low_sens 
-0636 708955d0 jam 0xd0 ,0x8955 
-0637 708956e0 jam 0xe0 ,0x8956 
-0638 7089586c jam 0x6c ,0x8958 
-0639 2020294b branch set_tx_power_0db 
+0636 20400645 call p_rx_low_sens 
+0637 708955d0 jam 0xd0 ,0x8955 
+0638 708956e0 jam 0xe0 ,0x8956 
+0639 7089586c jam 0x6c ,0x8958 
+063a 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-063a 20400649 call p_rx_high_sens 
-063b 708955d0 jam 0xd0 ,0x8955 
-063c 708956e0 jam 0xe0 ,0x8956 
-063d 7089583c jam 0x3c ,0x8958 
-063e 20202953 branch set_tx_power_5db 
+063b 2040064a call p_rx_high_sens 
+063c 708955d0 jam 0xd0 ,0x8955 
+063d 708956e0 jam 0xe0 ,0x8956 
+063e 7089583c jam 0x3c ,0x8958 
+063f 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-063f 20400644 call p_rx_low_sens 
-0640 708955d0 jam 0xd0 ,0x8955 
-0641 708956c0 jam 0xc0 ,0x8956 
-0642 7089586c jam 0x6c ,0x8958 
-0643 2020295b branch set_tx_power_f5db 
+0640 20400645 call p_rx_low_sens 
+0641 708955d0 jam 0xd0 ,0x8955 
+0642 708956c0 jam 0xc0 ,0x8956 
+0643 7089586c jam 0x6c ,0x8958 
+0644 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-0644 70894c5b jam 0x5b ,0x894c 
-0645 70894d96 jam 0x96 ,0x894d 
-0646 70894e2c jam 0x2c ,0x894e 
-0647 70894f46 jam 0x46 ,0x894f 
-0648 20600000 rtn 
+0645 70894c5b jam 0x5b ,0x894c 
+0646 70894d96 jam 0x96 ,0x894d 
+0647 70894e2c jam 0x2c ,0x894e 
+0648 70894f46 jam 0x46 ,0x894f 
+0649 20600000 rtn 
 
 p_rx_high_sens:
-0649 70894cfb jam 0xfb ,0x894c 
-064a 70894def jam 0xef ,0x894d 
-064b 70894eec jam 0xec ,0x894e 
-064c 70894f5e jam 0x5e ,0x894f 
-064d 20600000 rtn 
+064a 70894cfb jam 0xfb ,0x894c 
+064b 70894def jam 0xef ,0x894d 
+064c 70894eec jam 0xec ,0x894e 
+064d 70894f5e jam 0x5e ,0x894f 
+064e 20600000 rtn 
 
 p_set_tx_power_pair:
-064e 708956c2 jam 0xc2 ,0x8956 
-064f 708955d0 jam 0xd0 ,0x8955 
-0650 20600000 rtn 
+064f 708956c2 jam 0xc2 ,0x8956 
+0650 708955d0 jam 0xd0 ,0x8955 
+0651 20600000 rtn 
 
 p_shutdown_radio:
-0651 18002a08 force 8 ,radio_ctrl 
-0652 202028fa branch shutdown_radio + 1 
+0652 18002a08 force 8 ,radio_ctrl 
+0653 202028fa branch shutdown_radio + 1 
 
 p_g24_timer_check:
-0653 20407fe9 call disable_user 
-0654 680a496c fetcht 4 ,mem_24g_tx_btclk 
-0655 1c427e00 copy clkn_bt ,pdata 
-0656 98467c00 isub temp ,null 
-0657 24412d18 ncall g24_timer_timeout ,positive 
-0658 1fe22400 copy pdata ,regb 
-0659 6802496c fetch 4 ,mem_24g_tx_btclk 
-065a 6808c970 fetcht 1 ,mem_24g_interval 
-065b 98408400 iadd temp ,temp 
-065c 1a427e00 copy regb ,pdata 
-065d 98467c00 isub temp ,null 
-065e 24610000 nrtn positive 
-065f 793ffe1c set0 28 ,pdata 
-0660 6002496c store 4 ,mem_24g_tx_btclk 
-0661 20207fe7 branch enable_user 
+0654 20407fe9 call disable_user 
+0655 680a496c fetcht 4 ,mem_24g_tx_btclk 
+0656 1c427e00 copy clkn_bt ,pdata 
+0657 98467c00 isub temp ,null 
+0658 24412d18 ncall g24_timer_timeout ,positive 
+0659 1fe22400 copy pdata ,regb 
+065a 6802496c fetch 4 ,mem_24g_tx_btclk 
+065b 6808c970 fetcht 1 ,mem_24g_interval 
+065c 98408400 iadd temp ,temp 
+065d 1a427e00 copy regb ,pdata 
+065e 98467c00 isub temp ,null 
+065f 24610000 nrtn positive 
+0660 793ffe1c set0 28 ,pdata 
+0661 6002496c store 4 ,mem_24g_tx_btclk 
+0662 20207fe7 branch enable_user 
 
 p_rssi_average:
-0662 d8400000 arg 0 ,temp 
-0663 df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
-0664 1a220c00 copy rega ,contr 
+0663 d8400000 arg 0 ,temp 
+0664 df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
+0665 1a220c00 copy rega ,contr 
 
 p_rssi_average_loop:
-0665 e8c08000 ifetch 1 ,contr 
-0666 98408400 iadd temp ,temp 
-0667 c2000665 loop p_rssi_average_loop 
-0668 18497e00 rshift3 temp ,pdata 
-0669 1fe20400 copy pdata ,temp 
-066a c6930000 rtnmark0 mark_24g 
-066b 1fe6fc0a div pdata ,10 
-066c 20407f86 call wait_div_end 
-066d 1807fe00 quotient pdata 
-066e 1ff27e00 lshift4 pdata ,pdata 
-066f 18070400 remainder temp 
-0670 98418400 ior temp ,temp 
-0671 20600000 rtn 
+0666 e8c08000 ifetch 1 ,contr 
+0667 98408400 iadd temp ,temp 
+0668 c2000666 loop p_rssi_average_loop 
+0669 18497e00 rshift3 temp ,pdata 
+066a 1fe20400 copy pdata ,temp 
+066b c6930000 rtnmark0 mark_24g 
+066c 1fe6fc0a div pdata ,10 
+066d 20407f86 call wait_div_end 
+066e 1807fe00 quotient pdata 
+066f 1ff27e00 lshift4 pdata ,pdata 
+0670 18070400 remainder temp 
+0671 98418400 ior temp ,temp 
 0672 20600000 rtn 
+0673 20600000 rtn 
 
 p_g24_update_addr_and_synccrc8:
-0673 60024973 store 4 ,mem_24g_addr 
+0674 60024973 store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
-0674 da200000 arg 0 ,rega 
-0675 df200004 arg 4 ,loopcnt 
-0676 d8c04973 arg mem_24g_addr ,contr 
+0675 da200000 arg 0 ,rega 
+0676 df200004 arg 4 ,loopcnt 
+0677 d8c04973 arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
-0677 e8c08000 ifetch 1 ,contr 
-0678 9a20a200 iadd rega ,rega 
-0679 c2000677 loop p_g24_syncword_crc8_loop 
-067a 1a227e00 copy rega ,pdata 
-067b 600149fc store 2 ,mem_24g_syncword 
-067c 6800c9fc fetch 1 ,mem_24g_syncword 
-067d 6808c9fd fetcht 1 ,mem_24g_syncword + 1 
-067e 9840fe00 iadd temp ,pdata 
-067f 6000c9fe store 1 ,mem_24g_syncword_crc8 
-0680 20600000 rtn 
+0678 e8c08000 ifetch 1 ,contr 
+0679 9a20a200 iadd rega ,rega 
+067a c2000678 loop p_g24_syncword_crc8_loop 
+067b 1a227e00 copy rega ,pdata 
+067c 600149fc store 2 ,mem_24g_syncword 
+067d 6800c9fc fetch 1 ,mem_24g_syncword 
+067e 6808c9fd fetcht 1 ,mem_24g_syncword + 1 
+067f 9840fe00 iadd temp ,pdata 
+0680 6000c9fe store 1 ,mem_24g_syncword_crc8 
+0681 20600000 rtn 
 
 p_g24_transmit_prep:
-0681 6800c94b fetch 1 ,mem_24g_datalen 
-0682 1fe0fe02 increase 2 ,pdata 
-0683 6000c94d store 1 ,mem_24g_txlen 
-0684 6800c94c fetch 1 ,mem_24g_data_type 
-0685 6000c907 store 1 ,mem_24g_txpayload 
-0686 6800c94b fetch 1 ,mem_24g_datalen 
-0687 1fe9fe00 lshift3 pdata ,pdata 
-0688 6808c94a fetcht 1 ,mem_24g_pid 
-0689 18410403 and temp ,0x03 ,temp 
-068a 18438400 lshift temp ,temp 
-068b 9841fe00 ior temp ,pdata 
-068c 6808c987 fetcht 1 ,mem_24g_no_ack 
-068d 9840fe00 iadd temp ,pdata 
-068e e0a08000 istore 1 ,contw 
-068f 6800c94b fetch 1 ,mem_24g_datalen 
-0690 98007200 iforce loopcnt 
-0691 d8c048e7 arg mem_24g_txbuf ,contr 
-0692 20207f01 branch memcpy 
+0682 6800c94b fetch 1 ,mem_24g_datalen 
+0683 1fe0fe02 increase 2 ,pdata 
+0684 6000c94d store 1 ,mem_24g_txlen 
+0685 6800c94c fetch 1 ,mem_24g_data_type 
+0686 6000c907 store 1 ,mem_24g_txpayload 
+0687 6800c94b fetch 1 ,mem_24g_datalen 
+0688 1fe9fe00 lshift3 pdata ,pdata 
+0689 6808c94a fetcht 1 ,mem_24g_pid 
+068a 18410403 and temp ,0x03 ,temp 
+068b 18438400 lshift temp ,temp 
+068c 9841fe00 ior temp ,pdata 
+068d 6808c987 fetcht 1 ,mem_24g_no_ack 
+068e 9840fe00 iadd temp ,pdata 
+068f e0a08000 istore 1 ,contw 
+0690 6800c94b fetch 1 ,mem_24g_datalen 
+0691 98007200 iforce loopcnt 
+0692 d8c048e7 arg mem_24g_txbuf ,contr 
+0693 20207f01 branch memcpy 
 
 p_g24_ch:
-0693 6808c956 fetcht 1 ,mem_24g_current_ch_number 
-0694 20400697 call p_g24_ch_map_size 
-0695 6008c956 storet 1 ,mem_24g_current_ch_number 
-0696 20600000 rtn 
+0694 6808c956 fetcht 1 ,mem_24g_current_ch_number 
+0695 20400698 call p_g24_ch_map_size 
+0696 6008c956 storet 1 ,mem_24g_current_ch_number 
+0697 20600000 rtn 
 
 p_g24_ch_map_size:
-0697 2040069b call p_g24_ch_calc 
-0698 18408401 increase 1 ,temp 
-0699 18410403 and_into 3 ,temp 
-069a 20600000 rtn 
+0698 2040069c call p_g24_ch_calc 
+0699 18408401 increase 1 ,temp 
+069a 18410403 and_into 3 ,temp 
+069b 20600000 rtn 
 
 p_g24_ch_calc:
-069b 6800c973 fetch 1 ,mem_24g_addr 
-069c 1fe17e03 and_into 0x03 ,pdata 
-069d 1fefa204 mul32 pdata ,4 ,rega 
-069e 5800495c setarg mem_24g_ch_map1 
-069f 9a20fe00 iadd rega ,pdata 
-06a0 98408c00 iadd temp ,contr 
-06a1 e8c08000 ifetch 1 ,contr 
-06a2 6000c955 store 1 ,mem_24g_ch 
-06a3 20600000 rtn 
+069c 6800c973 fetch 1 ,mem_24g_addr 
+069d 1fe17e03 and_into 0x03 ,pdata 
+069e 1fefa204 mul32 pdata ,4 ,rega 
+069f 5800495c setarg mem_24g_ch_map1 
+06a0 9a20fe00 iadd rega ,pdata 
+06a1 98408c00 iadd temp ,contr 
+06a2 e8c08000 ifetch 1 ,contr 
+06a3 6000c955 store 1 ,mem_24g_ch 
+06a4 20600000 rtn 
 
 p_g24_prep:
-06a4 7844fc00 disable enable_crc 
-06a5 7843fc00 disable enable_white 
-06a6 58555555 setarg 0x555555 
-06a7 98001e00 iforce crc24_init 
-06a8 6800c955 fetch 1 ,mem_24g_ch 
-06a9 1fed8400 reverse pdata ,temp 
-06aa 79200401 set1 1 ,temp 
-06ab 18431c00 rshift temp ,white_init 
-06ac 20600000 rtn 
+06a5 7844fc00 disable enable_crc 
+06a6 7843fc00 disable enable_white 
+06a7 58555555 setarg 0x555555 
+06a8 98001e00 iforce crc24_init 
+06a9 6800c955 fetch 1 ,mem_24g_ch 
+06aa 1fed8400 reverse pdata ,temp 
+06ab 79200401 set1 1 ,temp 
+06ac 18431c00 rshift temp ,white_init 
+06ad 20600000 rtn 
 
 p_g24_receive_rxon:
-06ad 204006a4 call p_g24_prep 
-06ae 7857fc00 disable user3 
-06af 7826fc00 enable decode_fec0 
-06b0 7830fc00 enable is_rx 
-06b1 78507c00 disable is_tx 
-06b2 78287c00 enable swfine 
-06b3 6801494e fetch 2 ,mem_24g_rx_window 
-06b4 98003600 iforce stop_watch 
-06b5 37c18400 correlate null ,timeout 
-06b6 242c06e7 nbranch p_g24_sync_timeout ,sync 
-06b7 7846fc00 disable decode_fec0 
-06b8 7825fc00 enable decode_fec1 
-06b9 7823fc00 enable enable_white 
-06ba 7824fc00 enable enable_crc 
-06bb 204006e4 call p_g24_receive_byte 
-06bc 6000c9ff store 1 ,mem_24g_get_syncword_crc8 
-06bd 6808c9fe fetcht 1 ,mem_24g_syncword_crc8 
-06be 98467c00 isub temp ,null 
-06bf 242286e7 nbranch p_g24_end_of_packet ,zero 
-06c0 204006e4 call p_g24_receive_byte 
-06c1 6000c8c5 store 1 ,mem_24g_rxbuf 
-06c2 6800c8c5 fetch 1 ,mem_24g_rxbuf 
-06c3 6808c94c fetcht 1 ,mem_24g_data_type 
-06c4 a8400e00 icompare bits_data ,temp 
-06c5 242086e7 nbranch p_g24_end_of_packet ,true 
+06ae 204006a5 call p_g24_prep 
+06af 7857fc00 disable user3 
+06b0 7826fc00 enable decode_fec0 
+06b1 7830fc00 enable is_rx 
+06b2 78507c00 disable is_tx 
+06b3 78287c00 enable swfine 
+06b4 6801494e fetch 2 ,mem_24g_rx_window 
+06b5 98003600 iforce stop_watch 
+06b6 37c18400 correlate null ,timeout 
+06b7 242c06e8 nbranch p_g24_sync_timeout ,sync 
+06b8 7846fc00 disable decode_fec0 
+06b9 7825fc00 enable decode_fec1 
+06ba 7823fc00 enable enable_white 
+06bb 7824fc00 enable enable_crc 
+06bc 204006e5 call p_g24_receive_byte 
+06bd 6000c9ff store 1 ,mem_24g_get_syncword_crc8 
+06be 6808c9fe fetcht 1 ,mem_24g_syncword_crc8 
+06bf 98467c00 isub temp ,null 
+06c0 242286e8 nbranch p_g24_end_of_packet ,zero 
+06c1 204006e5 call p_g24_receive_byte 
+06c2 6000c8c5 store 1 ,mem_24g_rxbuf 
+06c3 6800c8c5 fetch 1 ,mem_24g_rxbuf 
+06c4 6808c94c fetcht 1 ,mem_24g_data_type 
+06c5 a8400e00 icompare bits_data ,temp 
+06c6 242086e8 nbranch p_g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-06c6 204006e4 call p_g24_receive_byte 
-06c7 e0a08000 istore 1 ,contw 
-06c8 1fe97e00 rshift3 pdata ,pdata 
-06c9 1fe1721f and pdata ,0x1f ,loopcnt 
-06ca 202286ce branch p_g24rx_nopayload ,zero 
+06c7 204006e5 call p_g24_receive_byte 
+06c8 e0a08000 istore 1 ,contw 
+06c9 1fe97e00 rshift3 pdata ,pdata 
+06ca 1fe1721f and pdata ,0x1f ,loopcnt 
+06cb 202286cf branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-06cb 204006e4 call p_g24_receive_byte 
-06cc e0a08000 istore 1 ,contw 
-06cd c20006cb loop p_g24rx_loop 
+06cc 204006e5 call p_g24_receive_byte 
+06cd e0a08000 istore 1 ,contw 
+06ce c20006cc loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-06ce 18a22200 copy contw ,rega 
-06cf 204006e4 call p_g24_receive_byte 
-06d0 6000ca86 store 1 ,mem_rssi_hex_received 
-06d1 1a220a00 copy rega ,contw 
-06d2 09800018 parse demod ,bucket ,24 
-06d3 78287c00 enable swfine 
-06d4 db600664 arg param_sifs ,stop_watch 
-06d5 1fef7e00 rshift32 pdata ,pdata 
-06d6 1ff17e00 rshift16 pdata ,pdata 
-06d7 e0a18000 istore 3 ,contw 
-06d8 7845fc00 disable decode_fec1 
-06d9 202306e7 branch p_g24_end_of_packet ,crc_failed 
-06da 7837fc00 enable user3 
-06db 68008017 fetch 1 ,mem_last_freq 
-06dc 1fe0a200 add pdata ,0 ,rega 
-06dd 20402981 call rf_write_freq 
-06de 7846fc00 disable decode_fec0 
-06df 20402918 call set_sync_on 
-06e0 6800ca86 fetch 1 ,mem_rssi_hex_received 
-06e1 1fe22200 copy pdata ,rega 
-06e2 2040001f call p_rssi_signal 
-06e3 20600000 rtn 
+06cf 18a22200 copy contw ,rega 
+06d0 204006e5 call p_g24_receive_byte 
+06d1 6000ca86 store 1 ,mem_rssi_hex_received 
+06d2 1a220a00 copy rega ,contw 
+06d3 09800018 parse demod ,bucket ,24 
+06d4 78287c00 enable swfine 
+06d5 db600664 arg param_sifs ,stop_watch 
+06d6 1fef7e00 rshift32 pdata ,pdata 
+06d7 1ff17e00 rshift16 pdata ,pdata 
+06d8 e0a18000 istore 3 ,contw 
+06d9 7845fc00 disable decode_fec1 
+06da 202306e8 branch p_g24_end_of_packet ,crc_failed 
+06db 7837fc00 enable user3 
+06dc 68008017 fetch 1 ,mem_last_freq 
+06dd 1fe0a200 add pdata ,0 ,rega 
+06de 20402981 call rf_write_freq 
+06df 7846fc00 disable decode_fec0 
+06e0 20402918 call set_sync_on 
+06e1 6800ca86 fetch 1 ,mem_rssi_hex_received 
+06e2 1fe22200 copy pdata ,rega 
+06e3 2040001f call p_rssi_signal 
+06e4 20600000 rtn 
 
 p_g24_receive_byte:
-06e4 09800008 parse demod ,bucket ,8 
-06e5 19897e00 rshift3 pwindow ,pdata 
-06e6 20600000 rtn 
+06e5 09800008 parse demod ,bucket ,8 
+06e6 19897e00 rshift3 pwindow ,pdata 
+06e7 20600000 rtn 
 
 p_g24_sync_timeout:
 
 p_g24_end_of_packet:
-06e7 784dfc00 disable encode_fec1 
-06e8 7845fc00 disable decode_fec1 
-06e9 2040264d call end_of_packet 
-06ea 20600000 rtn 
+06e8 784dfc00 disable encode_fec1 
+06e9 7845fc00 disable decode_fec1 
+06ea 2040264d call end_of_packet 
+06eb 20600000 rtn 
 
 p_g24_set_freq_tx:
-06eb 20402918 call set_sync_on 
-06ec 6808c955 fetcht 1 ,mem_24g_ch 
-06ed 20202933 branch set_freq_tx 
+06ec 20402918 call set_sync_on 
+06ed 6808c955 fetcht 1 ,mem_24g_ch 
+06ee 20202933 branch set_freq_tx 
 
 p_g24_transmit:
-06ee 204053c4 call le_enable 
-06ef 68024973 fetch 4 ,mem_24g_addr 
-06f0 98001200 iforce access 
-06f1 204006a4 call p_g24_prep 
-06f2 204006eb call p_g24_set_freq_tx 
-06f3 79202a00 set1 txgfsk ,radio_ctrl 
-06f4 782efc00 enable encode_fec0 
-06f5 78307c00 enable is_tx 
-06f6 7850fc00 disable is_rx 
-06f7 19317e00 rshift16 access ,pdata 
-06f8 1fecfe00 rshift8 pdata ,pdata 
-06f9 1ff1fe00 rshift4 pdata ,pdata 
-06fa 08008628 inject mod ,40 
-06fb 784efc00 disable encode_fec0 
-06fc 782dfc00 enable encode_fec1 
-06fd 7823fc00 enable enable_white 
-06fe 7824fc00 enable enable_crc 
-06ff 6800c9fe fetch 1 ,mem_24g_syncword_crc8 
-0700 08008608 inject mod ,8 
-0701 6800c94d fetch 1 ,mem_24g_txlen 
-0702 98007200 iforce loopcnt 
-0703 d8c04907 arg mem_24g_txpayload ,contr 
+06ef 204053c4 call le_enable 
+06f0 68024973 fetch 4 ,mem_24g_addr 
+06f1 98001200 iforce access 
+06f2 204006a5 call p_g24_prep 
+06f3 204006ec call p_g24_set_freq_tx 
+06f4 79202a00 set1 txgfsk ,radio_ctrl 
+06f5 782efc00 enable encode_fec0 
+06f6 78307c00 enable is_tx 
+06f7 7850fc00 disable is_rx 
+06f8 19317e00 rshift16 access ,pdata 
+06f9 1fecfe00 rshift8 pdata ,pdata 
+06fa 1ff1fe00 rshift4 pdata ,pdata 
+06fb 08008628 inject mod ,40 
+06fc 784efc00 disable encode_fec0 
+06fd 782dfc00 enable encode_fec1 
+06fe 7823fc00 enable enable_white 
+06ff 7824fc00 enable enable_crc 
+0700 6800c9fe fetch 1 ,mem_24g_syncword_crc8 
+0701 08008608 inject mod ,8 
+0702 6800c94d fetch 1 ,mem_24g_txlen 
+0703 98007200 iforce loopcnt 
+0704 d8c04907 arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
-0704 e8c08000 ifetch 1 ,contr 
-0705 08008608 inject mod ,8 
-0706 c2000704 loop p_g24tr_loop 
-0707 78247c00 enable enable_parity 
-0708 08008618 inject mod ,24 
-0709 78447c00 disable enable_parity 
-070a 37d38200 until null ,tx_clear 
-070b 20000064 nop 100 
-070c 784efc00 disable encode_fec0 
-070d 784dfc00 disable encode_fec1 
-070e 20600000 rtn 
+0705 e8c08000 ifetch 1 ,contr 
+0706 08008608 inject mod ,8 
+0707 c2000705 loop p_g24tr_loop 
+0708 78247c00 enable enable_parity 
+0709 08008618 inject mod ,24 
+070a 78447c00 disable enable_parity 
+070b 37d38200 until null ,tx_clear 
+070c 20000064 nop 100 
+070d 784efc00 disable encode_fec0 
+070e 784dfc00 disable encode_fec1 
+070f 20600000 rtn 
 
 p_mouse_data_init:
-070f 7047a407 jam 7 ,mem_mouse_data_queue 
-0710 7047a504 jam 4 ,mem_mouse_data_queue + 1 
-0711 580047a4 setarg mem_mouse_data_queue 
-0712 60014218 store 2 ,mem_queue_ptr 
-0713 20207e38 branch queue_init 
+0710 7047a407 jam 7 ,mem_mouse_data_queue 
+0711 7047a504 jam 4 ,mem_mouse_data_queue + 1 
+0712 580047a4 setarg mem_mouse_data_queue 
+0713 60014218 store 2 ,mem_queue_ptr 
+0714 20207e38 branch queue_init 
 
 p_mouse_data_push:
-0714 da20469a arg mem_mouse_key ,rega 
-0715 20407e3d call queue_push 
-0716 20540718 call p_mouse_queue_increase ,user 
-0717 20600000 rtn 
+0715 da20469a arg mem_mouse_key ,rega 
+0716 20407e3d call queue_push 
+0717 20540719 call p_mouse_queue_increase ,user 
+0718 20600000 rtn 
 
 p_mouse_queue_increase:
-0718 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
-0719 1fe0fe01 increase 1 ,pdata 
-071a 6000c7c5 store 1 ,mem_mouse_data_queue_num 
-071b 20600000 rtn 
+0719 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
+071a 1fe0fe01 increase 1 ,pdata 
+071b 6000c7c5 store 1 ,mem_mouse_data_queue_num 
+071c 20600000 rtn 
 
 p_mouse_data_pull:
-071c da20469a arg mem_mouse_key ,rega 
-071d 20407e54 call queue_pop 
-071e 20340720 branch p_mouse_fill_data_le ,user 
-071f 20600000 rtn 
+071d da20469a arg mem_mouse_key ,rega 
+071e 20407e54 call queue_pop 
+071f 20340721 branch p_mouse_fill_data_le ,user 
+0720 20600000 rtn 
 
 p_mouse_fill_data_le:
-0720 20405652 call le_clear_md 
-0721 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
-0722 1fe67c01 sub pdata ,1 ,null 
-0723 24415650 ncall le_set_md ,positive 
-0724 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
-0725 207a0000 rtn blank 
-0726 1fe0ffff increase -1 ,pdata 
-0727 6000c7c5 store 1 ,mem_mouse_data_queue_num 
-0728 20203f90 branch mouse_fill_data_le 
+0721 20405652 call le_clear_md 
+0722 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
+0723 1fe67c01 sub pdata ,1 ,null 
+0724 24415650 ncall le_set_md ,positive 
+0725 6800c7c5 fetch 1 ,mem_mouse_data_queue_num 
+0726 207a0000 rtn blank 
+0727 1fe0ffff increase -1 ,pdata 
+0728 6000c7c5 store 1 ,mem_mouse_data_queue_num 
+0729 20203f90 branch mouse_fill_data_le 
 org 0x2000
 
 start:
@@ -7524,6 +7523,8 @@
 2f1d 20403263 call g24_set0_mem_check_dongle_times 
 2f1e 580000ff setarg state_24g_pairing_success 
 2f1f 20403256 call g24_store_mem_pairing_sm 
+
+g24_evt_attemp_success:
 2f20 700a993c jam bt_evt_24g_attempt_success ,mem_fifo_temp 
 2f21 20207d86 branch ui_ipc_send_event 
 
Index: program/24g.prog
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/program/24g.prog	(revision 1337)
+++ /branch/mouse_project/YJX_Project/24G&BLE_BD/program/24g.prog	(working copy)
@@ -1098,6 +1098,7 @@
 	setarg STATE_24G_PAIRING_SUCCESS
 	call g24_store_mem_pairing_sm
 	//jam 0,mem_24g_check_dongle_times
+g24_evt_attemp_success:
 	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
 	branch ui_ipc_send_event
 
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/YJX_Project/24G&BLE_BD/program/patch.prog	(revision 1363)
+++ /branch/mouse_project/YJX_Project/24G&BLE_BD/program/patch.prog	(working copy)
@@ -2159,7 +2159,7 @@
 	increase 1,pdata
 	store 2,mem_24g_txfail_cnt	
 	fetch 1,mem_24g_txfail_cnt+1
-	bbit1 4,p_g24_stop_g24_mode
+	bbit1 4,g24_stop_24g_mode
 
 	fetch 1,mem_24g_pairing_sm
 	bne STATE_24G_PAIRING_SUCCESS,p_g24_tx_paring_retry
@@ -2173,9 +2173,7 @@
 p_g24_tx_attempt_fail:
 	setarg 0
 	store 2,mem_24g_txfail_cnt
-p_g24_stop_g24_mode:
-	jam BT_EVT_24G_ATTEMPT_FAIL,mem_fifo_temp
-	branch ui_ipc_send_event
+	branch g24_stop_24g_mode
 
 ifdef G24_NEW_RF_HOP
 p_g24_tx_fast_hop:
@@ -2456,17 +2454,19 @@
 	fetch 2,mem_24g_check_dongle_times
 	arg 0x7788,temp		//30s
 	isub temp,null
-	branch p_g24_stop_g24_mode,zero
+	branch g24_stop_24g_mode,zero
 	call p_g24_transmit_receive_ack
 	nbranch p_g24_auto_pair_retry,sync
 	nbranch p_g24_auto_pair_retry,user3
 	call p_g24_ackpayload_parse
+	fetch 1,mem_24g_rxdata_length	//ack payload length
+	branch p_g24_auto_pair_start_loop,blank
 	call p_mouse_tx_power_init
 	fetch 4,mem_24g_addr
 	fetcht 4,mem_24g_paring_addr
 	isub temp,null
 	branch p_g24_start_pairing_sm1,zero
-//	fetch 4,mem_24g_addr
+	fetch 4,mem_24g_addr
 	fetcht 4,mem_24g_device_addr
 	isub temp,null
 	call p_g24_store_dongle_addr,zero	
@@ -2475,8 +2475,7 @@
 	setarg 0
 	store 2,mem_24g_check_dongle_times
 	jam 0,mem_mouse_long_mult_flag
-	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
-	call ui_ipc_send_event
+	call g24_evt_attemp_success
 	call p_g24_txbuf_clear
 p_g24_transmit_by_interrupt_enable:
 	jam G24_TX_TIMER_INT_ENABLE,mem_24g_transmit_by_interrupt
