Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Only2.4G/TW-GY05_Only2.4G/output/eeprom.dat	(revision 726)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Only2.4G/TW-GY05_Only2.4G/output/eeprom.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-9e
-06
+52
+07
 c2
 84
 00
@@ -11,55 +11,55 @@
 c0
 00
 00
-13
+15
 c0
 45
 80
-4c
+4d
 c0
 4f
 80
-4a
+4b
 c0
 57
 00
-17
+19
 c0
 61
 80
-9b
+c8
 c0
 63
 80
-57
+67
 c0
 64
 80
-5b
+6b
 c0
 65
 00
-6a
+7a
 c0
 67
 00
-aa
+d7
 c0
 68
 01
-13
+40
 c0
 68
-80
-d8
+81
+05
 c0
 6b
 00
-80
+a7
 c0
 6c
 81
-30
+5d
 20
 20
 13
@@ -67,15 +67,23 @@
 c0
 10
 81
-a5
+d2
 c0
 43
 81
-9e
+cb
 c0
 6e
 81
-97
+c4
+c0
+75
+00
+58
+c0
+71
+00
+c6
 20
 20
 13
@@ -103,15 +111,15 @@
 20
 40
 00
-1f
+21
 20
 40
 00
-2b
+2d
 20
 40
 00
-27
+29
 20
 40
 41
@@ -186,10 +194,6 @@
 07
 20
 40
-23
-0e
-20
-40
 22
 ff
 20
@@ -203,7 +207,7 @@
 20
 40
 00
-36
+37
 68
 48
 c9
@@ -215,7 +219,7 @@
 20
 40
 00
-46
+47
 20
 20
 3b
@@ -352,6 +356,66 @@
 20
 12
 5d
+20
+40
+26
+31
+24
+34
+00
+99
+20
+40
+26
+46
+20
+40
+26
+ee
+6f
+e0
+cb
+e1
+24
+3a
+00
+62
+6f
+e4
+48
+b0
+67
+e4
+48
+5c
+6f
+e1
+48
+c2
+67
+e1
+48
+c4
+20
+40
+26
+bb
+24
+74
+00
+00
+20
+40
+7f
+dc
+6f
+e1
+c8
+ad
+20
+20
+26
+b8
 58
 00
 00
@@ -387,7 +451,7 @@
 c0
 7f
 80
-64
+74
 68
 48
 c9
@@ -516,6 +580,98 @@
 20
 60
 36
+70
+48
+a5
+00
+20
+40
+26
+52
+5f
+ff
+ff
+ff
+67
+e2
+48
+5c
+58
+00
+00
+00
+67
+e3
+c8
+d0
+70
+4b
+e1
+01
+20
+40
+42
+3c
+20
+20
+00
+9f
+6f
+e0
+c8
+a7
+20
+5a
+26
+a7
+6f
+e0
+c8
+bd
+c1
+00
+80
+00
+20
+40
+26
+9f
+20
+20
+00
+9f
+20
+40
+26
+bb
+24
+74
+00
+00
+6f
+e0
+cb
+e1
+24
+5a
+3e
+33
+6f
+e2
+48
+5c
+20
+40
+7d
+aa
+60
+4a
+41
+60
+20
+20
+14
+97
 1a
 62
 7e
@@ -523,15 +679,27 @@
 c0
 1e
 00
-84
+ae
+c0
+1c
+80
+ac
 c0
 1d
 00
-8a
+b5
 20
 20
 43
 36
+20
+40
+45
+44
+20
+20
+48
+57
 6f
 e2
 48
@@ -553,6 +721,10 @@
 48
 c6
 20
+40
+45
+44
+20
 20
 48
 4e
@@ -563,7 +735,7 @@
 24
 3a
 00
-98
+c3
 6f
 e0
 c8
@@ -571,7 +743,7 @@
 c0
 01
 00
-8f
+ba
 20
 20
 48
@@ -623,7 +795,15 @@
 20
 20
 01
-53
+80
+70
+48
+8b
+00
+20
+20
+23
+41
 6f
 e4
 4b
@@ -639,7 +819,7 @@
 c0
 00
 00
-a0
+cd
 20
 20
 3d
@@ -714,8 +894,8 @@
 83
 20
 40
-00
-d4
+01
+01
 6f
 e0
 c8
@@ -731,7 +911,7 @@
 24
 34
 00
-b9
+e6
 20
 40
 47
@@ -739,7 +919,7 @@
 20
 40
 00
-c4
+f1
 20
 20
 45
@@ -858,8 +1038,8 @@
 15
 20
 40
-00
-e2
+01
+0f
 1a
 22
 7e
@@ -890,8 +1070,8 @@
 2a
 20
 40
-00
-df
+01
+0c
 20
 20
 41
@@ -934,16 +1114,16 @@
 59
 20
 20
-80
-ee
+81
+1b
 6f
 e0
 cb
 e3
 24
 3a
-00
-ec
+01
+19
 20
 60
 00
@@ -951,15 +1131,15 @@
 c0
 02
 01
-08
+35
 20
 20
-00
-ee
+01
+1b
 20
 40
 01
-0b
+38
 6f
 e2
 4b
@@ -994,20 +1174,20 @@
 e3
 c0
 00
-00
-fc
+01
+29
 c0
 00
-80
-ff
+81
+2c
 c0
 01
 01
-02
+2f
 c0
 01
 81
-05
+32
 20
 60
 00
@@ -1087,7 +1267,7 @@
 24
 41
 01
-10
+3d
 20
 60
 00
@@ -1111,7 +1291,7 @@
 20
 40
 01
-22
+4f
 6f
 e0
 c9
@@ -1119,7 +1299,7 @@
 c0
 01
 81
-1d
+4a
 c0
 05
 c0
@@ -1211,7 +1391,7 @@
 20
 3a
 01
-82
+af
 67
 e0
 cb
@@ -1247,19 +1427,19 @@
 20
 40
 01
-7f
+ac
 20
 40
 01
-49
+76
 20
 40
 01
-5a
+87
 20
 40
 01
-69
+96
 20
 40
 40
@@ -1319,7 +1499,7 @@
 20
 20
 01
-77
+a4
 6f
 e0
 cb
@@ -1335,7 +1515,7 @@
 da
 40
 01
-4e
+7b
 20
 20
 31
@@ -1343,7 +1523,7 @@
 20
 40
 01
-63
+90
 6f
 e0
 cb
@@ -1407,7 +1587,7 @@
 c0
 00
 81
-62
+8f
 1f
 e0
 ff
@@ -1419,7 +1599,7 @@
 20
 20
 01
-55
+82
 70
 4b
 ec
@@ -1487,7 +1667,7 @@
 20
 42
 81
-74
+a1
 20
 60
 00
@@ -1499,11 +1679,11 @@
 20
 40
 00
-d1
+fe
 20
 20
 01
-53
+80
 6f
 e0
 c9
@@ -1519,7 +1699,7 @@
 da
 40
 01
-7c
+a9
 20
 20
 31
@@ -1531,7 +1711,7 @@
 c0
 00
 00
-98
+c3
 20
 20
 43
@@ -1543,7 +1723,7 @@
 da
 40
 01
-82
+af
 20
 20
 31
@@ -1599,11 +1779,11 @@
 20
 41
 01
-91
+be
 24
 41
 01
-95
+c2
 20
 20
 48
@@ -1639,7 +1819,7 @@
 24
 5a
 01
-9a
+c7
 20
 20
 21
@@ -1651,7 +1831,7 @@
 20
 40
 01
-a2
+cf
 79
 20
 00
@@ -1696,8 +1876,8 @@
 20
 5c
 b6
-b0
-2b
+3d
+ad
 aa
 55
 40
@@ -1764,8 +1944,8 @@
 00
 00
 20
-00
-00
+04
+04
 00
 00
 aa
@@ -2890,190 +3070,10 @@
 aa
 aa
 55
-32
+3a
 63
-72
-21
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+e8
+05
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-ab
-23
+e6
+3b
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Only2.4G/TW-GY05_Only2.4G/output/program.lis	(revision 726)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Only2.4G/TW-GY05_Only2.4G/output/program.lis	(working copy)
@@ -1,558 +1,619 @@
               include "bt_format "
               org 0x0000
 0000 c284000f bbit1 8 ,pf_patch_ext 
-0001 c0000013 beq patch00_0 ,p_soft_reset 
-0002 c045804c beq patch11_3 ,p_initialize_radio_cont 
-0003 c04f804a beq patch13_7 ,p_init_param 
-0004 c0570017 beq patch15_6 ,p_app_init 
-0005 c061809b beq patch18_3 ,p_mouse_start_work 
-0006 c0638057 beq patch18_7 ,p_mouse_app_enter_hibernate 
-0007 c064805b beq patch19_1 ,p_mouse_setgpio_hibernate 
-0008 c065006a beq patch19_2 ,p_mouse_lpm_before_common 
-0009 c06700aa beq patch19_6 ,p_mouse_motion 
-000a c0680113 beq patch1a_0 ,p_mouse_seting_dpi 
-000b c06880d8 beq patch1a_1 ,p_mouse_check_key_gpio 
-000c c06b0080 beq patch1a_6 ,p_mouse_priority_bb_event 
-000d c06c8130 beq patch1b_1 ,p_mouse_bb_event_timer 
+0001 c0000015 beq patch00_0 ,p_soft_reset 
+0002 c045804d beq patch11_3 ,p_initialize_radio_cont 
+0003 c04f804b beq patch13_7 ,p_init_param 
+0004 c0570019 beq patch15_6 ,p_app_init 
+0005 c06180c8 beq patch18_3 ,p_mouse_start_work 
+0006 c0638067 beq patch18_7 ,p_mouse_app_enter_hibernate 
+0007 c064806b beq patch19_1 ,p_mouse_setgpio_hibernate 
+0008 c065007a beq patch19_2 ,p_mouse_lpm_before_common 
+0009 c06700d7 beq patch19_6 ,p_mouse_motion 
+000a c0680140 beq patch1a_0 ,p_mouse_seting_dpi 
+000b c0688105 beq patch1a_1 ,p_mouse_check_key_gpio 
+000c c06b00a7 beq patch1a_6 ,p_mouse_priority_bb_event 
+000d c06c815d beq patch1b_1 ,p_mouse_bb_event_timer 
 000e 2020137c branch loop 
 
 pf_patch_ext:
-000f c01081a5 beq patch24_1 ,p_spid_init 
-0010 c043819e beq patch30_7 ,p_ui_timer_check 
-0011 c06e8197 beq patch3b_5 ,p_g24_dispatch 
-0012 2020137c branch loop 
+000f c01081d2 beq patch24_1 ,p_spid_init 
+0010 c04381cb beq patch30_7 ,p_ui_timer_check 
+0011 c06e81c4 beq patch3b_5 ,p_g24_dispatch 
+0012 c0750058 beq patch3d_2 ,p_g24_transmit_no_interrupt 
+0013 c07100c6 beq patch3c_2 ,p_g24_pair_dispatch 
+0014 2020137c branch loop 
 
 p_soft_reset:
-0013 20800000 clear_stack 
-0014 204030f3 call app_param_init 
-0015 20403bfd call mouse_xtal_init 
-0016 20200804 branch soft_reset + 3 
+0015 20800000 clear_stack 
+0016 204030f3 call app_param_init 
+0017 20403bfd call mouse_xtal_init 
+0018 20200804 branch soft_reset + 3 
 
 p_app_init:
 
 p_mouse_init:
-0017 20406df3 call enable_authrom 
-0018 2040001f call p_mouse_wheel_set_wakeup 
-0019 2040002b call p_mouse_setting_config 
-001a 20400027 call p_lpm_write_ice_disable 
-001b 204041a7 call mouse_init_sunt 
-001c 20758000 rtn wake 
-001d 2040408e call mouse_dpi_config 
-001e 20203bc5 branch mouse_init + 4 
+0019 20406df3 call enable_authrom 
+001a 20400021 call p_mouse_wheel_set_wakeup 
+001b 2040002d call p_mouse_setting_config 
+001c 20400029 call p_lpm_write_ice_disable 
+001d 204041a7 call mouse_init_sunt 
+001e 20758000 rtn wake 
+001f 2040408e call mouse_dpi_config 
+0020 20203bc5 branch mouse_init + 4 
 
 p_mouse_wheel_set_wakeup:
-001f 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0020 207a0000 rtn blank 
-0021 6fe0c913 fetch 1 ,mem_whee_a_data_gpio 
-0022 d8400040 arg gpcfg_pullup ,temp 
-0023 20406093 call gpio_config_function_int 
-0024 6fe0c914 fetch 1 ,mem_whee_b_data_gpio 
-0025 d8400040 arg gpcfg_pullup ,temp 
-0026 20206093 branch gpio_config_function_int 
+0021 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+0022 207a0000 rtn blank 
+0023 6fe0c913 fetch 1 ,mem_whee_a_data_gpio 
+0024 d8400040 arg gpcfg_pullup ,temp 
+0025 20406093 call gpio_config_function_int 
+0026 6fe0c914 fetch 1 ,mem_whee_b_data_gpio 
+0027 d8400040 arg gpcfg_pullup ,temp 
+0028 20206093 branch gpio_config_function_int 
 
 p_lpm_write_ice_disable:
-0027 6ff10120 fetch 2 ,core_ucode_flag 
-0028 793ffe0e set0 lpmreg_ice_mode_bit ,pdata 
-0029 67f2004c store 4 ,core_lpm_reg 
-002a 20205caf branch lpm_write2_ctrl_option 
+0029 6ff10120 fetch 2 ,core_ucode_flag 
+002a 793ffe0e set0 lpmreg_ice_mode_bit ,pdata 
+002b 67f2004c store 4 ,core_lpm_reg 
+002c 20205caf branch lpm_write2_ctrl_option 
 
 p_mouse_setting_config:
-002b 20758000 rtn wake 
-002c 20402607 call g24_transmit_init 
-002d 2040230e call g24_chamap_param_update 
-002e 204022ff call g24_chmap_param_init 
-002f 20403f1e call mouse_gpio_init 
-0030 20403d13 call mouse_param_init 
-0031 20400036 call p_mouse_sensor_set_angle 
-0032 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0033 20406050 call gpio_config_input 
-0034 20400046 call p_ice_gpio_set_float 
-0035 20203bf5 branch mouse_setting_config_next 
+002d 20758000 rtn wake 
+002e 20402607 call g24_transmit_init 
+002f 204022ff call g24_chmap_param_init 
+0030 20403f1e call mouse_gpio_init 
+0031 20403d13 call mouse_param_init 
+0032 20400037 call p_mouse_sensor_set_angle 
+0033 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+0034 20406050 call gpio_config_input 
+0035 20400047 call p_ice_gpio_set_float 
+0036 20203bf5 branch mouse_setting_config_next 
 
 p_mouse_sensor_set_angle:
-0036 6fe0c924 fetch 1 ,mem_sensor_angle_default 
-0037 67e0c928 store 1 ,mem_config_sensor_angle 
-0038 6fe0c917 fetch 1 ,mem_select_sensor_angle_gpio 
-0039 c17f8000 rtneq gpio_disable 
-003a 6fe0c917 fetch 1 ,mem_select_sensor_angle_gpio 
-003b d840003e arg gpcfg_output_low ,temp 
-003c 20406093 call gpio_config_function_int 
-003d 6fe0cbf5 fetch 1 ,mem_mouse_reuse_2ice_gpio 
-003e d840003e arg gpcfg_output_low ,temp 
-003f 20406093 call gpio_config_function_int 
-0040 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0041 20403f56 call mouse_gpio_config_input_pu 
-0042 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0043 20406059 call gpio_get_bit 
-0044 2440c2aa ncall mouse_sensor_switch_angle ,true 
-0045 20203f54 branch mouse_gpio_config_input_pd 
+0037 6fe0c924 fetch 1 ,mem_sensor_angle_default 
+0038 67e0c928 store 1 ,mem_config_sensor_angle 
+0039 6fe0c917 fetch 1 ,mem_select_sensor_angle_gpio 
+003a c17f8000 rtneq gpio_disable 
+003b 6fe0c917 fetch 1 ,mem_select_sensor_angle_gpio 
+003c d840003e arg gpcfg_output_low ,temp 
+003d 20406093 call gpio_config_function_int 
+003e 6fe0cbf5 fetch 1 ,mem_mouse_reuse_2ice_gpio 
+003f d840003e arg gpcfg_output_low ,temp 
+0040 20406093 call gpio_config_function_int 
+0041 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+0042 20403f56 call mouse_gpio_config_input_pu 
+0043 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+0044 20406059 call gpio_get_bit 
+0045 2440c2aa ncall mouse_sensor_switch_angle ,true 
+0046 20203f54 branch mouse_gpio_config_input_pd 
 
 p_ice_gpio_set_float:
-0046 6848c917 fetcht 1 ,mem_select_sensor_angle_gpio 
-0047 2040607f call gpio_set_high_impedance 
-0048 6848cbf5 fetcht 1 ,mem_mouse_reuse_2ice_gpio 
-0049 2020607f branch gpio_set_high_impedance 
+0047 6848c917 fetcht 1 ,mem_select_sensor_angle_gpio 
+0048 2040607f call gpio_set_high_impedance 
+0049 6848cbf5 fetcht 1 ,mem_mouse_reuse_2ice_gpio 
+004a 2020607f branch gpio_set_high_impedance 
 
 p_init_param:
-004a 70008000 jam 0 ,mem_lmo_tid2 
-004b 202013b7 branch init_param_next + 1 
+004b 70008000 jam 0 ,mem_lmo_tid2 
+004c 202013b7 branch init_param_next + 1 
 
 p_initialize_radio_cont:
-004c 708a8be6 jam 0xe6 ,core_syn_aac_cfg1 
-004d 2040126a call initialize_syn_afc_cfg1 
-004e 20401271 call initialize_rf_ldo_cfg1 
-004f 20401277 call initialize_rc_cal 
-0050 708a6d09 jam 0x09 ,core_rx_bq_cfg0 
-0051 708a0305 jam 5 ,core_clkpll_cfg0 
-0052 708a7a94 jam 0x94 ,core_rx_iqadc_cfg 
-0053 708a0e0b jam 0x0b ,core_rf_ldo_cfg2 
-0054 708a0f05 jam 0x05 ,core_rf_ldo_cfg3 
-0055 708a8390 jam 0x90 ,core_syn_pfd_lkd_cfg 
-0056 2020125d branch initialize_radio_cont + 8 
+004d 708a8be6 jam 0xe6 ,core_syn_aac_cfg1 
+004e 2040126a call initialize_syn_afc_cfg1 
+004f 20401271 call initialize_rf_ldo_cfg1 
+0050 20401277 call initialize_rc_cal 
+0051 708a6d09 jam 0x09 ,core_rx_bq_cfg0 
+0052 708a0305 jam 5 ,core_clkpll_cfg0 
+0053 708a7a94 jam 0x94 ,core_rx_iqadc_cfg 
+0054 708a0e0b jam 0x0b ,core_rf_ldo_cfg2 
+0055 708a0f05 jam 0x05 ,core_rf_ldo_cfg3 
+0056 708a8390 jam 0x90 ,core_syn_pfd_lkd_cfg 
+0057 2020125d branch initialize_radio_cont + 8 
+
+p_g24_transmit_no_interrupt:
+0058 20402631 call g24_txdata_prep 
+0059 24340099 nbranch p_g24_nodata_transmit ,user 
+
+p_g24_transmit_start:
+005a 20402646 call g24_transmit_process 
+005b 204026ee call power_ctrl_start 
+005c 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+005d 243a0062 nbranch p_g24_short_sleep ,blank 
+005e 6fe448b0 fetch 8 ,mem_24g_long_sleep_set 
+005f 67e4485c store 8 ,mem_24g_enter_hibernate 
+0060 6fe148c2 fetch 2 ,mem_24g_long_sleep_param_update_timer_init 
+0061 67e148c4 store 2 ,mem_24g_long_sleep_param_update_timer 
+
+p_g24_short_sleep:
+0062 204026bb call g24_lpm_wait 
+0063 24740000 nrtn user 
+0064 20407fdc call clear_wake 
+0065 6fe1c8ad fetch 3 ,mem_24g_short_sleep_set 
+0066 202026b8 branch g24_long_sleep2 
 
 p_mouse_app_enter_hibernate:
-0057 58000006 setarg pan_reg_config 
-0058 20405b0d call twspi_read 
-0059 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-005a 20203e21 branch mouse_app_enter_hibernate + 1 
+0067 58000006 setarg pan_reg_config 
+0068 20405b0d call twspi_read 
+0069 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
+006a 20203e21 branch mouse_app_enter_hibernate + 1 
 
 p_mouse_setgpio_hibernate:
-005b 204042e9 call mouse_set_sdio_high 
-005c 20407fdc call clear_wake 
-005d 20404015 call mouse_before_hibernate_wheel_gpio_set 
-005e 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-005f c07f8064 beq gpio_disable ,p_mouse_setgpio_hibernate_skip_public_gpio 
-0060 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-0061 20406069 call gpio_out_active 
-0062 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-0063 20406042 call gpio_clr_wake 
+006b 204042e9 call mouse_set_sdio_high 
+006c 20407fdc call clear_wake 
+006d 20404015 call mouse_before_hibernate_wheel_gpio_set 
+006e 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+006f c07f8074 beq gpio_disable ,p_mouse_setgpio_hibernate_skip_public_gpio 
+0070 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+0071 20406069 call gpio_out_active 
+0072 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+0073 20406042 call gpio_clr_wake 
 
 p_mouse_setgpio_hibernate_skip_public_gpio:
-0064 6848cbf5 fetcht 1 ,mem_mouse_reuse_2ice_gpio 
-0065 20403f56 call mouse_gpio_config_input_pu 
-0066 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-0067 d840003f arg gpcfg_output_high ,temp 
-0068 20406093 call gpio_config_function_int 
-0069 20203e36 branch mouse_setgpio_hibernate + 3 
+0074 6848cbf5 fetcht 1 ,mem_mouse_reuse_2ice_gpio 
+0075 20403f56 call mouse_gpio_config_input_pu 
+0076 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
+0077 d840003f arg gpcfg_output_high ,temp 
+0078 20406093 call gpio_config_function_int 
+0079 20203e36 branch mouse_setgpio_hibernate + 3 
 
 p_mouse_lpm_before_common:
-006a 20403f88 call mouse_wheel_check 
-006b 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
-006c d840003f arg gpcfg_output_high ,temp 
-006d 20406093 call gpio_config_function_int 
-006e 6fe080a1 fetch 1 ,mem_gpio_wakeup_low + 2 
-006f 793ffe03 set0 3 ,pdata 
-0070 67e080a1 store 1 ,mem_gpio_wakeup_low + 2 
-0071 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0072 20406042 call gpio_clr_wake 
-0073 20405b04 call twspi_disable 
-0074 6848c918 fetcht 1 ,mem_lbutton_gpio 
-0075 20406036 call gpio_set_wake 
-0076 6848c919 fetcht 1 ,mem_rbutton_gpio 
-0077 20406036 call gpio_set_wake 
-0078 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0079 20406036 call gpio_set_wake 
-007a 6848c90d fetcht 1 ,mem_bk_button_gpio 
-007b 20406036 call gpio_set_wake 
-007c 6848c90e fetcht 1 ,mem_fw_button_gpio 
-007d 20406036 call gpio_set_wake 
-007e 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-007f 20206036 branch gpio_set_wake 
+007a 20403f88 call mouse_wheel_check 
+007b 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
+007c d840003f arg gpcfg_output_high ,temp 
+007d 20406093 call gpio_config_function_int 
+007e 6fe080a1 fetch 1 ,mem_gpio_wakeup_low + 2 
+007f 793ffe03 set0 3 ,pdata 
+0080 67e080a1 store 1 ,mem_gpio_wakeup_low + 2 
+0081 6848c920 fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+0082 20406042 call gpio_clr_wake 
+0083 20405b04 call twspi_disable 
+0084 6848c918 fetcht 1 ,mem_lbutton_gpio 
+0085 20406036 call gpio_set_wake 
+0086 6848c919 fetcht 1 ,mem_rbutton_gpio 
+0087 20406036 call gpio_set_wake 
+0088 6848c91a fetcht 1 ,mem_mbutton_gpio 
+0089 20406036 call gpio_set_wake 
+008a 6848c90d fetcht 1 ,mem_bk_button_gpio 
+008b 20406036 call gpio_set_wake 
+008c 6848c90e fetcht 1 ,mem_fw_button_gpio 
+008d 20406036 call gpio_set_wake 
+008e 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+008f 20206036 branch gpio_set_wake 
+
+p_mouse_24g_hibernate_set:
+0090 7048a500 jam 0 ,mem_24g_attempt_fail_flag 
+0091 20402652 call g24_transmit_next_packet 
+0092 5fffffff setarg -1 
+0093 67e2485c store 4 ,mem_24g_enter_hibernate 
+0094 58000000 setarg 0 
+0095 67e3c8d0 store 7 ,mem_mouse_key 
+0096 704be101 jam 1 ,mem_sensor_shutdown_flag 
+0097 2040423c call mouse_sensor_powerdown 
+0098 2020009f branch p_g24_long_sleep 
+
+p_g24_nodata_transmit:
+0099 6fe0c8a7 fetch 1 ,mem_24g_abort_pac 
+009a 205a26a7 call g24_send_abort_packet ,blank 
+009b 6fe0c8bd fetch 1 ,mem_24g_transmit_by_interrupt 
+009c c1008000 rtneq g24_tx_timer_int_enable 
+009d 2040269f call g24_search_receiver 
+009e 2020009f branch p_g24_long_sleep 
+
+p_g24_long_sleep:
+009f 204026bb call g24_lpm_wait 
+00a0 24740000 nrtn user 
+00a1 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+00a2 245a3e33 ncall mouse_setgpio_hibernate ,blank 
+00a3 6fe2485c fetch 4 ,mem_24g_enter_hibernate 
+00a4 20407daa call clk2lpo 
+00a5 604a4160 storet 4 ,mem_sleep_counter 
+00a6 20201497 branch lpm_sleep 
 
 p_mouse_priority_bb_event:
-0080 1a627e00 copy regc ,pdata 
-0081 c01e0084 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-0082 c01d008a beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-0083 20204336 branch mouse_priority_bb_event + 2 
+00a7 1a627e00 copy regc ,pdata 
+00a8 c01e00ae beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+00a9 c01c80ac beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+00aa c01d00b5 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+00ab 20204336 branch mouse_priority_bb_event + 2 
+
+p_mouse_24g_pairing_complete:
+00ac 20404544 call mouse_no_data_timer_init 
+00ad 20204857 branch mouse_24g_pairing_complete 
 
 p_mouse_24g_attempt_success:
-0084 6fe2483c fetch 4 ,mem_24g_addr 
-0085 67e24891 store 4 ,mem_24g_receiver_addr 
-0086 67e24993 store 4 ,mem_mouse_24g_addr 
-0087 2040257e call g24_ch_syncword_crc8_init 
-0088 204048c6 call mouse_device_poweron_timer_init 
-0089 2020484e branch mouse_24g_attempt_success 
+00ae 6fe2483c fetch 4 ,mem_24g_addr 
+00af 67e24891 store 4 ,mem_24g_receiver_addr 
+00b0 67e24993 store 4 ,mem_mouse_24g_addr 
+00b1 2040257e call g24_ch_syncword_crc8_init 
+00b2 204048c6 call mouse_device_poweron_timer_init 
+00b3 20404544 call mouse_no_data_timer_init 
+00b4 2020484e branch mouse_24g_attempt_success 
 
 p_mouse_24g_attempt_fail:
-008a 6fe0c8a5 fetch 1 ,mem_24g_attempt_fail_flag 
-008b 243a0098 nbranch p_mouse_24g_enter_hibernate ,blank 
-008c 6fe0c88b fetch 1 ,mem_24g_reconn_type 
-008d c001008f beq fast_conn_and_3_0_addr ,p_mouse_24g_fast_conn_attempt_fail 
-008e 20204837 branch mouse_24g_attempt_fail + 4 
+00b5 6fe0c8a5 fetch 1 ,mem_24g_attempt_fail_flag 
+00b6 243a00c3 nbranch p_mouse_24g_enter_hibernate ,blank 
+00b7 6fe0c88b fetch 1 ,mem_24g_reconn_type 
+00b8 c00100ba beq fast_conn_and_3_0_addr ,p_mouse_24g_fast_conn_attempt_fail 
+00b9 20204837 branch mouse_24g_attempt_fail + 4 
 
 p_mouse_24g_fast_conn_attempt_fail:
-008f 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0090 c297c811 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_start_auto_pair 
-0091 c2984811 bbit1 mouse_enable_auto_24g_paring ,mouse_24g_start_auto_pair 
-0092 c31d4806 bbit0 mouse_enable_24g_auto_pair_nerver_been_paired ,mouse_24g_reconn_dongle_start 
-0093 6fe24993 fetch 4 ,mem_mouse_24g_addr 
-0094 684a4974 fetcht 4 ,mem_mouse_compare_addr_ff 
-0095 98467c00 isub temp ,null 
-0096 2022c827 branch mouse_24g_start_pair_mode ,zero 
-0097 20204806 branch mouse_24g_reconn_dongle_start 
+00ba 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00bb c297c811 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_start_auto_pair 
+00bc c2984811 bbit1 mouse_enable_auto_24g_paring ,mouse_24g_start_auto_pair 
+00bd c31d4806 bbit0 mouse_enable_24g_auto_pair_nerver_been_paired ,mouse_24g_reconn_dongle_start 
+00be 6fe24993 fetch 4 ,mem_mouse_24g_addr 
+00bf 684a4974 fetcht 4 ,mem_mouse_compare_addr_ff 
+00c0 98467c00 isub temp ,null 
+00c1 2022c827 branch mouse_24g_start_pair_mode ,zero 
+00c2 20204806 branch mouse_24g_reconn_dongle_start 
 
 p_mouse_24g_enter_hibernate:
-0098 793f8026 set0 mark_24g ,mark 
-0099 704bf300 jam 0 ,mem_rgb_led_on_continue_1min_timeout_flag 
-009a 20200153 branch p_mouse_rgb_led_off_time_init 
+00c3 793f8026 set0 mark_24g ,mark 
+00c4 704bf300 jam 0 ,mem_rgb_led_on_continue_1min_timeout_flag 
+00c5 20200180 branch p_mouse_rgb_led_off_time_init 
+
+p_g24_pair_dispatch:
+00c6 70488b00 jam default_24g_device ,mem_24g_reconn_type 
+00c7 20202341 branch g24_pair_dispatch + 1 
 
 p_mouse_start_work:
-009b 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-009c c297c80a bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
-009d 6fe0c938 fetch 1 ,mem_device_flag 
-009e c00000a0 beq mode_24g_device ,p_mouse_24g_start_mode 
-009f 20203d57 branch mouse_start_work + 5 
+00c8 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00c9 c297c80a bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
+00ca 6fe0c938 fetch 1 ,mem_device_flag 
+00cb c00000cd beq mode_24g_device ,p_mouse_24g_start_mode 
+00cc 20203d57 branch mouse_start_work + 5 
 
 p_mouse_24g_start_mode:
-00a0 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-00a1 c308c803 bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
-00a2 20403d65 call mouse_wakeup_from_power_check 
-00a3 20344806 branch mouse_24g_reconn_dongle_start ,user 
-00a4 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-00a5 c298480c bbit1 mouse_enable_auto_24g_paring ,mouse_24g_reconn_general_dongle 
-00a6 c318c80c bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
-00a7 20404110 call mouse_key_check_once 
-00a8 1a217e07 and rega ,0x07 ,pdata 
-00a9 202047ff branch mouse_24g_start_mode + 9 
+00cd 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00ce c308c803 bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+00cf 20403d65 call mouse_wakeup_from_power_check 
+00d0 20344806 branch mouse_24g_reconn_dongle_start ,user 
+00d1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00d2 c298480c bbit1 mouse_enable_auto_24g_paring ,mouse_24g_reconn_general_dongle 
+00d3 c318c80c bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
+00d4 20404110 call mouse_key_check_once 
+00d5 1a217e07 and rega ,0x07 ,pdata 
+00d6 202047ff branch mouse_24g_start_mode + 9 
 
 p_mouse_motion:
-00aa 78547c00 disable user 
-00ab 58000000 setarg 0 
-00ac 67e348d1 store 6 ,mem_mouse_x 
-00ad 20404240 call mouse_check_sensor_data 
-00ae 2040408e call mouse_dpi_config 
-00af 20403f7e call mouse_zwheel 
-00b0 20403f83 call mouse_t_zwheel 
-00b1 204000d4 call p_mouse_key 
-00b2 6fe0c8d0 fetch 1 ,mem_mouse_key 
-00b3 1fe17e1f and_into 0x1f ,pdata 
-00b4 67e0c8d0 store 1 ,mem_mouse_key 
-00b5 243400b9 nbranch p_mouse_motion_nodata ,user 
-00b6 2040471a call mouse_drawing_optima 
-00b7 204000c4 call p_mouse_rgb_led_on_check 
-00b8 20204544 branch mouse_no_data_timer_init 
+00d7 78547c00 disable user 
+00d8 58000000 setarg 0 
+00d9 67e348d1 store 6 ,mem_mouse_x 
+00da 20404240 call mouse_check_sensor_data 
+00db 2040408e call mouse_dpi_config 
+00dc 20403f7e call mouse_zwheel 
+00dd 20403f83 call mouse_t_zwheel 
+00de 20400101 call p_mouse_key 
+00df 6fe0c8d0 fetch 1 ,mem_mouse_key 
+00e0 1fe17e1f and_into 0x1f ,pdata 
+00e1 67e0c8d0 store 1 ,mem_mouse_key 
+00e2 243400e6 nbranch p_mouse_motion_nodata ,user 
+00e3 2040471a call mouse_drawing_optima 
+00e4 204000f1 call p_mouse_rgb_led_on_check 
+00e5 20204544 branch mouse_no_data_timer_init 
 
 p_mouse_motion_nodata:
-00b9 20404728 call mouse_drawing_optima_init 
-00ba 6fe14bef fetch 2 ,mem_rgb_led_off_check_count 
-00bb 1fe0fe01 increase 1 ,pdata 
-00bc 67e14bef store 2 ,mem_rgb_led_off_check_count 
-00bd d8400258 arg 0x0258 ,temp 
-00be 98467c00 isub temp ,null 
-00bf 24628000 nrtn zero 
-00c0 58000000 setarg 0 
-00c1 67e14bef store 2 ,mem_rgb_led_off_check_count 
-00c2 704bea00 jam off ,mem_rgb_led_on_enable 
-00c3 20600000 rtn 
+00e6 20404728 call mouse_drawing_optima_init 
+00e7 6fe14bef fetch 2 ,mem_rgb_led_off_check_count 
+00e8 1fe0fe01 increase 1 ,pdata 
+00e9 67e14bef store 2 ,mem_rgb_led_off_check_count 
+00ea d8400258 arg 0x0258 ,temp 
+00eb 98467c00 isub temp ,null 
+00ec 24628000 nrtn zero 
+00ed 58000000 setarg 0 
+00ee 67e14bef store 2 ,mem_rgb_led_off_check_count 
+00ef 704bea00 jam off ,mem_rgb_led_on_enable 
+00f0 20600000 rtn 
 
 p_mouse_rgb_led_on_check:
-00c4 6fe14bf1 fetch 2 ,mem_rgb_led_on_check_count 
-00c5 1fe0fe01 increase 1 ,pdata 
-00c6 67e14bf1 store 2 ,mem_rgb_led_on_check_count 
-00c7 d8400258 arg 0x0258 ,temp 
-00c8 98467c00 isub temp ,null 
-00c9 24628000 nrtn zero 
-00ca 58000000 setarg 0 
-00cb 67e14bf1 store 2 ,mem_rgb_led_on_check_count 
-00cc 6fe0cbea fetch 1 ,mem_rgb_led_on_enable 
-00cd c1008000 rtneq on 
-00ce 704bea01 jam on ,mem_rgb_led_on_enable 
-00cf 704be900 jam off ,mem_rgb_led_off_enable 
-00d0 704bec0b jam 11 ,mem_rgb_led_on_enable_timer 
+00f1 6fe14bf1 fetch 2 ,mem_rgb_led_on_check_count 
+00f2 1fe0fe01 increase 1 ,pdata 
+00f3 67e14bf1 store 2 ,mem_rgb_led_on_check_count 
+00f4 d8400258 arg 0x0258 ,temp 
+00f5 98467c00 isub temp ,null 
+00f6 24628000 nrtn zero 
+00f7 58000000 setarg 0 
+00f8 67e14bf1 store 2 ,mem_rgb_led_on_check_count 
+00f9 6fe0cbea fetch 1 ,mem_rgb_led_on_enable 
+00fa c1008000 rtneq on 
+00fb 704bea01 jam on ,mem_rgb_led_on_enable 
+00fc 704be900 jam off ,mem_rgb_led_off_enable 
+00fd 704bec0b jam 11 ,mem_rgb_led_on_enable_timer 
 
 p_mouse_rgb_led_on_timer_init:
-00d1 58000000 setarg 0 
-00d2 67e14bed store 2 ,mem_rgb_led_on_timer 
-00d3 20600000 rtn 
+00fe 58000000 setarg 0 
+00ff 67e14bed store 2 ,mem_rgb_led_on_timer 
+0100 20600000 rtn 
 
 p_mouse_key:
-00d4 20404115 call mouse_check_key_gpio 
-00d5 204000e2 call p_mouse_check_firekey_gpio 
-00d6 1a227e00 copy rega ,pdata 
-00d7 202040dd branch mouse_key + 1 
+0101 20404115 call mouse_check_key_gpio 
+0102 2040010f call p_mouse_check_firekey_gpio 
+0103 1a227e00 copy rega ,pdata 
+0104 202040dd branch mouse_key + 1 
 
 p_mouse_check_key_gpio:
-00d8 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-00d9 245a4121 ncall mouse_check_key_gpio_once ,blank 
-00da da200000 arg 0 ,rega 
-00db 20404124 call mouse_check_lkey_gpio 
-00dc 2040412a call mouse_check_rkey_gpio 
-00dd 204000df call p_mouse_check_mkey_gpio 
-00de 2020411c branch mouse_check_key_gpio_next 
+0105 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+0106 245a4121 ncall mouse_check_key_gpio_once ,blank 
+0107 da200000 arg 0 ,rega 
+0108 20404124 call mouse_check_lkey_gpio 
+0109 2040412a call mouse_check_rkey_gpio 
+010a 2040010c call p_mouse_check_mkey_gpio 
+010b 2020411c branch mouse_check_key_gpio_next 
 
 p_mouse_check_mkey_gpio:
-00df 6fe0cbf4 fetch 1 ,mem_mbutton_function_disable 
-00e0 247a0000 nrtn blank 
-00e1 20204130 branch mouse_check_mkey_gpio 
+010c 6fe0cbf4 fetch 1 ,mem_mbutton_function_disable 
+010d 247a0000 nrtn blank 
+010e 20204130 branch mouse_check_mkey_gpio 
 
 p_mouse_check_firekey_gpio:
-00e2 1a227e00 copy rega ,pdata 
-00e3 c3800000 rtnbit1 0 
-00e4 6848cbe2 fetcht 1 ,mem_firebutton_gpio 
-00e5 20406050 call gpio_config_input 
-00e6 6848cbe2 fetcht 1 ,mem_firebutton_gpio 
-00e7 20406059 call gpio_get_bit 
-00e8 202080ee branch p_fire_key_press ,true 
-00e9 6fe0cbe3 fetch 1 ,mem_fire_key_status 
-00ea 243a00ec nbranch p_fire_key_process ,blank 
-00eb 20600000 rtn 
+010f 1a227e00 copy rega ,pdata 
+0110 c3800000 rtnbit1 0 
+0111 6848cbe2 fetcht 1 ,mem_firebutton_gpio 
+0112 20406050 call gpio_config_input 
+0113 6848cbe2 fetcht 1 ,mem_firebutton_gpio 
+0114 20406059 call gpio_get_bit 
+0115 2020811b branch p_fire_key_press ,true 
+0116 6fe0cbe3 fetch 1 ,mem_fire_key_status 
+0117 243a0119 nbranch p_fire_key_process ,blank 
+0118 20600000 rtn 
 
 p_fire_key_process:
-00ec c0020108 beq 4 ,p_fire_key_process_end 
-00ed 202000ee branch p_fire_key_press 
+0119 c0020135 beq 4 ,p_fire_key_process_end 
+011a 2020011b branch p_fire_key_press 
 
 p_fire_key_press:
-00ee 2040010b call p_firekey_clkn_bt_timer_check 
-00ef 6fe24be4 fetch 4 ,mem_fire_key_delay 
-00f0 d8400080 arg 0x80 ,temp 
-00f1 98408400 iadd temp ,temp 
-00f2 1c427e00 copy clkn_bt ,pdata 
-00f3 98467c00 isub temp ,null 
-00f4 24610000 nrtn positive 
-00f5 67e24be4 store 4 ,mem_fire_key_delay 
-00f6 6fe0cbe3 fetch 1 ,mem_fire_key_status 
-00f7 c00000fc beq 0 ,p_fire_key_process_start 
-00f8 c00080ff beq 1 ,p_fire_key_process_release1 
-00f9 c0010102 beq 2 ,p_fire_key_process_start2 
-00fa c0018105 beq 3 ,p_fire_key_process_release2 
-00fb 20600000 rtn 
+011b 20400138 call p_firekey_clkn_bt_timer_check 
+011c 6fe24be4 fetch 4 ,mem_fire_key_delay 
+011d d8400080 arg 0x80 ,temp 
+011e 98408400 iadd temp ,temp 
+011f 1c427e00 copy clkn_bt ,pdata 
+0120 98467c00 isub temp ,null 
+0121 24610000 nrtn positive 
+0122 67e24be4 store 4 ,mem_fire_key_delay 
+0123 6fe0cbe3 fetch 1 ,mem_fire_key_status 
+0124 c0000129 beq 0 ,p_fire_key_process_start 
+0125 c000812c beq 1 ,p_fire_key_process_release1 
+0126 c001012f beq 2 ,p_fire_key_process_start2 
+0127 c0018132 beq 3 ,p_fire_key_process_release2 
+0128 20600000 rtn 
 
 p_fire_key_process_start:
-00fc 704be301 jam 1 ,mem_fire_key_status 
-00fd 79202200 set1 0 ,rega 
-00fe 20600000 rtn 
+0129 704be301 jam 1 ,mem_fire_key_status 
+012a 79202200 set1 0 ,rega 
+012b 20600000 rtn 
 
 p_fire_key_process_release1:
-00ff 704be302 jam 2 ,mem_fire_key_status 
-0100 793fa200 set0 0 ,rega 
-0101 20600000 rtn 
+012c 704be302 jam 2 ,mem_fire_key_status 
+012d 793fa200 set0 0 ,rega 
+012e 20600000 rtn 
 
 p_fire_key_process_start2:
-0102 704be303 jam 3 ,mem_fire_key_status 
-0103 79202200 set1 0 ,rega 
-0104 20600000 rtn 
+012f 704be303 jam 3 ,mem_fire_key_status 
+0130 79202200 set1 0 ,rega 
+0131 20600000 rtn 
 
 p_fire_key_process_release2:
-0105 704be304 jam 4 ,mem_fire_key_status 
-0106 793fa200 set0 0 ,rega 
-0107 20600000 rtn 
+0132 704be304 jam 4 ,mem_fire_key_status 
+0133 793fa200 set0 0 ,rega 
+0134 20600000 rtn 
 
 p_fire_key_process_end:
-0108 704be300 jam 0 ,mem_fire_key_status 
-0109 793fa200 set0 0 ,rega 
-010a 20600000 rtn 
+0135 704be300 jam 0 ,mem_fire_key_status 
+0136 793fa200 set0 0 ,rega 
+0137 20600000 rtn 
 
 p_firekey_clkn_bt_timer_check:
-010b 684a4be4 fetcht 4 ,mem_fire_key_delay 
-010c 1c427e00 copy clkn_bt ,pdata 
-010d 98467c00 isub temp ,null 
-010e 24410110 ncall p_firekey_clkn_bt_timer_timeout ,positive 
-010f 20600000 rtn 
+0138 684a4be4 fetcht 4 ,mem_fire_key_delay 
+0139 1c427e00 copy clkn_bt ,pdata 
+013a 98467c00 isub temp ,null 
+013b 2441013d ncall p_firekey_clkn_bt_timer_timeout ,positive 
+013c 20600000 rtn 
 
 p_firekey_clkn_bt_timer_timeout:
-0110 58000000 setarg 0 
-0111 67e24be4 store 4 ,mem_fire_key_delay 
-0112 20600000 rtn 
+013d 58000000 setarg 0 
+013e 67e24be4 store 4 ,mem_fire_key_delay 
+013f 20600000 rtn 
 
 p_mouse_seting_dpi:
-0113 2040408f call mouse_setting_dpi_4_level 
-0114 20400122 call p_mouse_dpi_led_blink_delay 
+0140 2040408f call mouse_setting_dpi_4_level 
+0141 2040014f call p_mouse_dpi_led_blink_delay 
 
 p_mouse_seting_sensor_type:
-0115 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0116 c001811d beq p3212 ,p_mouse_seting_3212_dpi 
-0117 c005c0cf beq ka8g2 ,mouse_seting_ka8g2_dpi 
-0118 6fe0c992 fetch 1 ,mem_mouse_dpi 
-0119 c00040a4 beq mouse_dpi_level1 ,mouse_set_cpi2 
-011a c000c0a2 beq mouse_dpi_level2 ,mouse_set_cpi0 
-011b c00140a0 beq mouse_dpi_level3 ,mouse_set_cpi1 
-011c 202040a2 branch mouse_set_cpi0 
+0142 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0143 c001814a beq p3212 ,p_mouse_seting_3212_dpi 
+0144 c005c0cf beq ka8g2 ,mouse_seting_ka8g2_dpi 
+0145 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0146 c00040a4 beq mouse_dpi_level1 ,mouse_set_cpi2 
+0147 c000c0a2 beq mouse_dpi_level2 ,mouse_set_cpi0 
+0148 c00140a0 beq mouse_dpi_level3 ,mouse_set_cpi1 
+0149 202040a2 branch mouse_set_cpi0 
 
 p_mouse_seting_3212_dpi:
-011d 6fe0c992 fetch 1 ,mem_mouse_dpi 
-011e c00040c6 beq mouse_dpi_level1 ,mouse_set_p3212_cpi3 
-011f c000c0c0 beq mouse_dpi_level2 ,mouse_set_p3212_cpi1 
-0120 c00140c4 beq mouse_dpi_level3 ,mouse_set_p3212_cpi2 
-0121 202040c0 branch mouse_set_p3212_cpi1 
+014a 6fe0c992 fetch 1 ,mem_mouse_dpi 
+014b c00040c6 beq mouse_dpi_level1 ,mouse_set_p3212_cpi3 
+014c c000c0c0 beq mouse_dpi_level2 ,mouse_set_p3212_cpi1 
+014d c00140c4 beq mouse_dpi_level3 ,mouse_set_p3212_cpi2 
+014e 202040c0 branch mouse_set_p3212_cpi1 
 
 p_mouse_dpi_led_blink_delay:
-0122 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-0123 c17f8000 rtneq gpio_disable 
-0124 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
-0125 247a0000 nrtn blank 
-0126 6fe14883 fetch 2 ,mem_24g_pair_timeout 
-0127 247a0000 nrtn blank 
-0128 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
-0129 247a0000 nrtn blank 
-012a 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
-012b 247a0000 nrtn blank 
-012c 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
-012d 203a0182 branch p_mouse_dpi_led_blink_init ,blank 
-012e 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
-012f 20600000 rtn 
+014f 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+0150 c17f8000 rtneq gpio_disable 
+0151 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
+0152 247a0000 nrtn blank 
+0153 6fe14883 fetch 2 ,mem_24g_pair_timeout 
+0154 247a0000 nrtn blank 
+0155 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
+0156 247a0000 nrtn blank 
+0157 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+0158 247a0000 nrtn blank 
+0159 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
+015a 203a01af branch p_mouse_dpi_led_blink_init ,blank 
+015b 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
+015c 20600000 rtn 
 
 p_mouse_bb_event_timer:
-0130 20403e9b call mouse_adc_read 
-0131 20404956 call mouse_low_voltage_led_timer 
-0132 2040232b call g24_pair_timeout_timer 
-0133 20402556 call g24_reconn_timeout_timer 
-0134 204047cd call mouse_24g_long_sleep_param_update_timer 
-0135 204048be call mouse_device_poweron_timer 
-0136 2040017f call p_mouse_dpi_led_blink_delay_timer 
-0137 20400149 call p_mouse_rgb_led_off_enable_timer 
-0138 2040015a call p_mouse_rgb_led_on_enable_timer 
-0139 20400169 call p_mouse_rgb_led_on_timer 
-013a 2040407c call mouse_dpi_key_check_long_press 
-013b 204044cc call mouse_bt_discovery_check 
-013c 204044dc call mouse_commbination_key_process 
-013d 204044ff call mouse_check_discovery_timeout_timer 
-013e 20404504 call mouse_check_direct_timeout_timer 
-013f 20404512 call mouse_le_enable_att_list_timer 
-0140 2040451f call mouse_le_battery_updata_timer 
-0141 20404515 call mouse_le_send_smp_security_request_timer 
-0142 2040452a call mouse_check_hid_handshake_timer 
-0143 2040452d call mouse_bt_check_sniff_req_timeout_timer 
-0144 20404532 call mouse_check_reconnect_delay_long_sleep 
-0145 20404535 call mouse_current_mult_update_timer 
-0146 20404022 call mouse_wheel_trigger_timer 
-0147 20404547 call mouse_store_information_delay_timer 
-0148 20200177 branch p_mouse_check_no_data_timeout_timer 
+015d 20403e9b call mouse_adc_read 
+015e 20404956 call mouse_low_voltage_led_timer 
+015f 2040232b call g24_pair_timeout_timer 
+0160 20402556 call g24_reconn_timeout_timer 
+0161 204047cd call mouse_24g_long_sleep_param_update_timer 
+0162 204048be call mouse_device_poweron_timer 
+0163 204001ac call p_mouse_dpi_led_blink_delay_timer 
+0164 20400176 call p_mouse_rgb_led_off_enable_timer 
+0165 20400187 call p_mouse_rgb_led_on_enable_timer 
+0166 20400196 call p_mouse_rgb_led_on_timer 
+0167 2040407c call mouse_dpi_key_check_long_press 
+0168 204044cc call mouse_bt_discovery_check 
+0169 204044dc call mouse_commbination_key_process 
+016a 204044ff call mouse_check_discovery_timeout_timer 
+016b 20404504 call mouse_check_direct_timeout_timer 
+016c 20404512 call mouse_le_enable_att_list_timer 
+016d 2040451f call mouse_le_battery_updata_timer 
+016e 20404515 call mouse_le_send_smp_security_request_timer 
+016f 2040452a call mouse_check_hid_handshake_timer 
+0170 2040452d call mouse_bt_check_sniff_req_timeout_timer 
+0171 20404532 call mouse_check_reconnect_delay_long_sleep 
+0172 20404535 call mouse_current_mult_update_timer 
+0173 20404022 call mouse_wheel_trigger_timer 
+0174 20404547 call mouse_store_information_delay_timer 
+0175 202001a4 branch p_mouse_check_no_data_timeout_timer 
 
 p_mouse_rgb_led_off_enable_timer:
-0149 6fe0cbe9 fetch 1 ,mem_rgb_led_off_enable 
-014a 207a0000 rtn blank 
-014b da604beb arg mem_rgb_led_off_enable_timer ,regc 
-014c da40014e arg p_mouse_rgb_led_off_timeout ,regb 
-014d 2020318a branch timer_single_step 
+0176 6fe0cbe9 fetch 1 ,mem_rgb_led_off_enable 
+0177 207a0000 rtn blank 
+0178 da604beb arg mem_rgb_led_off_enable_timer ,regc 
+0179 da40017b arg p_mouse_rgb_led_off_timeout ,regb 
+017a 2020318a branch timer_single_step 
 
 p_mouse_rgb_led_off_timeout:
-014e 20400163 call p_mouse_mbutton_function_enable 
-014f 6fe0cbf3 fetch 1 ,mem_rgb_led_on_continue_1min_timeout_flag 
-0150 247a0000 nrtn blank 
-0151 704bf300 jam 0 ,mem_rgb_led_on_continue_1min_timeout_flag 
-0152 202047e1 branch mouse_24g_hibernate_set 
+017b 20400190 call p_mouse_mbutton_function_enable 
+017c 6fe0cbf3 fetch 1 ,mem_rgb_led_on_continue_1min_timeout_flag 
+017d 247a0000 nrtn blank 
+017e 704bf300 jam 0 ,mem_rgb_led_on_continue_1min_timeout_flag 
+017f 202047e1 branch mouse_24g_hibernate_set 
 
 p_mouse_rgb_led_off_time_init:
-0153 704beb1e jam 0x1e ,mem_rgb_led_off_enable_timer 
-0154 704be901 jam on ,mem_rgb_led_off_enable 
+0180 704beb1e jam 0x1e ,mem_rgb_led_off_enable_timer 
+0181 704be901 jam on ,mem_rgb_led_off_enable 
 
 p_mouse_mbutton_function_disable:
-0155 704bf401 jam on ,mem_mbutton_function_disable 
-0156 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0157 20406069 call gpio_config_output 
-0158 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0159 20206069 branch gpio_out_active 
+0182 704bf401 jam on ,mem_mbutton_function_disable 
+0183 6848c91a fetcht 1 ,mem_mbutton_gpio 
+0184 20406069 call gpio_config_output 
+0185 6848c91a fetcht 1 ,mem_mbutton_gpio 
+0186 20206069 branch gpio_out_active 
 
 p_mouse_rgb_led_on_enable_timer:
-015a 6fe0cbe9 fetch 1 ,mem_rgb_led_off_enable 
-015b 247a0000 nrtn blank 
-015c 6fe0cbec fetch 1 ,mem_rgb_led_on_enable_timer 
-015d 207a0000 rtn blank 
-015e c0008162 beq 1 ,p_mouse_rgb_led_enable_timeout 
-015f 1fe0ffff increase -1 ,pdata 
-0160 67e0cbec store 1 ,mem_rgb_led_on_enable_timer 
-0161 20200155 branch p_mouse_mbutton_function_disable 
+0187 6fe0cbe9 fetch 1 ,mem_rgb_led_off_enable 
+0188 247a0000 nrtn blank 
+0189 6fe0cbec fetch 1 ,mem_rgb_led_on_enable_timer 
+018a 207a0000 rtn blank 
+018b c000818f beq 1 ,p_mouse_rgb_led_enable_timeout 
+018c 1fe0ffff increase -1 ,pdata 
+018d 67e0cbec store 1 ,mem_rgb_led_on_enable_timer 
+018e 20200182 branch p_mouse_mbutton_function_disable 
 
 p_mouse_rgb_led_enable_timeout:
-0162 704bec00 jam 0 ,mem_rgb_led_on_enable_timer 
+018f 704bec00 jam 0 ,mem_rgb_led_on_enable_timer 
 
 p_mouse_mbutton_function_enable:
-0163 704bf400 jam off ,mem_mbutton_function_disable 
-0164 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0165 20406065 call gpio_out_inactive 
-0166 20002ee0 nop 12000 
-0167 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0168 20203f56 branch mouse_gpio_config_input_pu 
+0190 704bf400 jam off ,mem_mbutton_function_disable 
+0191 6848c91a fetcht 1 ,mem_mbutton_gpio 
+0192 20406065 call gpio_out_inactive 
+0193 20002ee0 nop 12000 
+0194 6848c91a fetcht 1 ,mem_mbutton_gpio 
+0195 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_rgb_led_on_timer:
-0169 6fe0cbea fetch 1 ,mem_rgb_led_on_enable 
-016a 247a0000 nrtn blank 
-016b 6fe0cbe9 fetch 1 ,mem_rgb_led_off_enable 
-016c 247a0000 nrtn blank 
+0196 6fe0cbea fetch 1 ,mem_rgb_led_on_enable 
+0197 247a0000 nrtn blank 
+0198 6fe0cbe9 fetch 1 ,mem_rgb_led_off_enable 
+0199 247a0000 nrtn blank 
 
 p_mouse_rgb_led_on:
-016d 6fe14bed fetch 2 ,mem_rgb_led_on_timer 
-016e 1fe0fe01 increase 1 ,pdata 
-016f 67e14bed store 2 ,mem_rgb_led_on_timer 
-0170 d8400258 arg 0x0258 ,temp 
-0171 98467c00 isub temp ,null 
-0172 20428174 call p_mouse_rgb_led_on_continue_1min ,zero 
-0173 20600000 rtn 
+019a 6fe14bed fetch 2 ,mem_rgb_led_on_timer 
+019b 1fe0fe01 increase 1 ,pdata 
+019c 67e14bed store 2 ,mem_rgb_led_on_timer 
+019d d8400258 arg 0x0258 ,temp 
+019e 98467c00 isub temp ,null 
+019f 204281a1 call p_mouse_rgb_led_on_continue_1min ,zero 
+01a0 20600000 rtn 
 
 p_mouse_rgb_led_on_continue_1min:
-0174 704bf301 jam 1 ,mem_rgb_led_on_continue_1min_timeout_flag 
-0175 204000d1 call p_mouse_rgb_led_on_timer_init 
-0176 20200153 branch p_mouse_rgb_led_off_time_init 
+01a1 704bf301 jam 1 ,mem_rgb_led_on_continue_1min_timeout_flag 
+01a2 204000fe call p_mouse_rgb_led_on_timer_init 
+01a3 20200180 branch p_mouse_rgb_led_off_time_init 
 
 p_mouse_check_no_data_timeout_timer:
-0177 6fe0c92a fetch 1 ,mem_usb_addr 
-0178 c3838000 rtnbit1 7 
-0179 da604ab2 arg mem_mouse_no_data_timer ,regc 
-017a da40017c arg p_mouse_check_no_data_timeout ,regb 
-017b 20203191 branch timer_single_step_2b 
+01a4 6fe0c92a fetch 1 ,mem_usb_addr 
+01a5 c3838000 rtnbit1 7 
+01a6 da604ab2 arg mem_mouse_no_data_timer ,regc 
+01a7 da4001a9 arg p_mouse_check_no_data_timeout ,regb 
+01a8 20203191 branch timer_single_step_2b 
 
 p_mouse_check_no_data_timeout:
-017c 6fe0c938 fetch 1 ,mem_device_flag 
-017d c0000098 beq mode_24g_device ,p_mouse_24g_enter_hibernate 
-017e 2020431b branch mouse_disconnect 
+01a9 6fe0c938 fetch 1 ,mem_device_flag 
+01aa c00000c3 beq mode_24g_device ,p_mouse_24g_enter_hibernate 
+01ab 2020431b branch mouse_disconnect 
 
 p_mouse_dpi_led_blink_delay_timer:
-017f da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
-0180 da400182 arg p_mouse_dpi_led_blink_init ,regb 
-0181 2020318a branch timer_single_step 
+01ac da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
+01ad da4001af arg p_mouse_dpi_led_blink_init ,regb 
+01ae 2020318a branch timer_single_step 
 
 p_mouse_dpi_led_blink_init:
-0182 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0183 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
-0184 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
-0185 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-0186 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
-0187 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
-0188 67e14930 store 2 ,mem_mouse_on_time 
-0189 67e14932 store 2 ,mem_mouse_off_time 
-018a da200000 arg 0 ,rega 
-018b 6848c992 fetcht 1 ,mem_mouse_dpi 
-018c 18408402 increase 2 ,temp 
-018d 18467c03 sub temp ,3 ,null 
-018e 20410191 call p_mouse_dpi_led_blink_init_level_4 ,positive 
-018f 24410195 ncall p_mouse_dpi_led_blink_count_clean ,positive 
-0190 202048ff branch mouse_dpi_led_blink_init_end 
+01af 6fe0c927 fetch 1 ,mem_config_sensor_type 
+01b0 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
+01b1 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
+01b2 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+01b3 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
+01b4 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
+01b5 67e14930 store 2 ,mem_mouse_on_time 
+01b6 67e14932 store 2 ,mem_mouse_off_time 
+01b7 da200000 arg 0 ,rega 
+01b8 6848c992 fetcht 1 ,mem_mouse_dpi 
+01b9 18408402 increase 2 ,temp 
+01ba 18467c03 sub temp ,3 ,null 
+01bb 204101be call p_mouse_dpi_led_blink_init_level_4 ,positive 
+01bc 244101c2 ncall p_mouse_dpi_led_blink_count_clean ,positive 
+01bd 202048ff branch mouse_dpi_led_blink_init_end 
 
 p_mouse_dpi_led_blink_init_level_4:
-0191 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0192 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
-0193 18408401 increase 1 ,temp 
-0194 20600000 rtn 
+01be 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01bf c40e0000 rtnbit0 mouse_enable_dpi_level_4 
+01c0 18408401 increase 1 ,temp 
+01c1 20600000 rtn 
 
 p_mouse_dpi_led_blink_count_clean:
-0195 184085fd increase -3 ,temp 
-0196 20600000 rtn 
+01c2 184085fd increase -3 ,temp 
+01c3 20600000 rtn 
 
 p_g24_dispatch:
-0197 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0198 245a019a ncall p_mouse_enable_g24_mark ,blank 
-0199 202021d2 branch g24_dispatch + 1 
+01c4 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+01c5 245a01c7 ncall p_mouse_enable_g24_mark ,blank 
+01c6 202021d2 branch g24_dispatch + 1 
 
 p_mouse_enable_g24_mark:
-019a 704bea01 jam on ,mem_rgb_led_on_enable 
-019b 204001a2 call p_mouse_rgb_led_on_enable_timer_init 
-019c 79200026 set1 mark_24g ,mark 
-019d 20600000 rtn 
+01c7 704bea01 jam on ,mem_rgb_led_on_enable 
+01c8 204001cf call p_mouse_rgb_led_on_enable_timer_init 
+01c9 79200026 set1 mark_24g ,mark 
+01ca 20600000 rtn 
 
 p_ui_timer_check:
-019e 6fe0cbe8 fetch 1 ,mem_power_on_flag 
-019f 245a7861 ncall ui_timer_init ,blank 
-01a0 704be800 jam 0 ,mem_power_on_flag 
-01a1 20207851 branch ui_timer_check + 1 
+01cb 6fe0cbe8 fetch 1 ,mem_power_on_flag 
+01cc 245a7861 ncall ui_timer_init ,blank 
+01cd 704be800 jam 0 ,mem_power_on_flag 
+01ce 20207851 branch ui_timer_check + 1 
 
 p_mouse_rgb_led_on_enable_timer_init:
-01a2 704be900 jam off ,mem_rgb_led_off_enable 
-01a3 704bec0b jam 11 ,mem_rgb_led_on_enable_timer 
-01a4 20600000 rtn 
+01cf 704be900 jam off ,mem_rgb_led_off_enable 
+01d0 704bec0b jam 11 ,mem_rgb_led_on_enable_timer 
+01d1 20600000 rtn 
 
 p_spid_init:
-01a5 70448477 jam 0x77 ,mem_spi_init_clk 
-01a6 20205cb6 branch spid_init_common 
+01d2 70448477 jam 0x77 ,mem_spi_init_clk 
+01d3 20205cb6 branch spid_init_common 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Only2.4G/TW-GY05_Only2.4G/program/patch.prog	(revision 726)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Only2.4G/TW-GY05_Only2.4G/program/patch.prog	(working copy)
@@ -20,6 +20,8 @@
 	beq patch24_1,p_spid_init
 	beq patch30_7,p_ui_timer_check	
 	beq patch3b_5,p_g24_dispatch
+	beq patch3d_2,p_g24_transmit_no_interrupt
+	beq patch3c_2,p_g24_pair_dispatch
 	branch loop
 
 p_soft_reset:
@@ -60,7 +62,7 @@
 p_mouse_setting_config:
 	rtn wake
 	call g24_transmit_init
-	call g24_chamap_param_update
+//	call g24_chamap_param_update
 	call g24_chmap_param_init
 	call mouse_gpio_init
 	call mouse_param_init
@@ -116,6 +118,25 @@
 	jam 0x90,core_syn_pfd_lkd_cfg
 	branch initialize_radio_cont+8
 
+
+p_g24_transmit_no_interrupt:
+	call g24_txdata_prep
+	nbranch p_g24_nodata_transmit,user
+p_g24_transmit_start:
+	call g24_transmit_process
+	call power_ctrl_start
+	fetch 1,mem_sensor_shutdown_flag
+	nbranch p_g24_short_sleep,blank
+	fetch 8,mem_24g_long_sleep_set
+	store 8,mem_24g_enter_hibernate
+	fetch 2,mem_24g_long_sleep_param_update_timer_init
+	store 2,mem_24g_long_sleep_param_update_timer
+p_g24_short_sleep:
+	call g24_lpm_wait
+	nrtn user
+	call clear_wake
+	fetch 3,mem_24g_short_sleep_set
+	branch g24_long_sleep2
 	
 p_mouse_app_enter_hibernate:	// 1.3mA hibernate after sensroe reset
 	setarg PAN_REG_CONFIG
@@ -175,20 +196,57 @@
 	fetcht 1,mem_dpi_button_gpio
 	branch gpio_set_wake
 
+
+p_mouse_24g_hibernate_set:
+	jam 0,mem_24g_attempt_fail_flag
+	call g24_transmit_next_packet
+	setarg -1
+	store 4,mem_24g_enter_hibernate
+	setarg 0
+	store 7,mem_mouse_key
+	jam 1,mem_sensor_shutdown_flag
+	call mouse_sensor_powerdown
+	branch p_g24_long_sleep
+
+p_g24_nodata_transmit:
+	fetch 1,mem_24g_abort_pac
+	call g24_send_abort_packet,blank
+	fetch 1,mem_24g_transmit_by_interrupt
+	rtneq G24_TX_TIMER_INT_ENABLE
+	call g24_search_receiver
+	branch p_g24_long_sleep
+
+
+p_g24_long_sleep:
+	call g24_lpm_wait
+	nrtn user
+	fetch 1,mem_sensor_shutdown_flag
+	ncall mouse_setgpio_hibernate,blank
+	fetch 4,mem_24g_enter_hibernate
+	call clk2lpo
+	storet 4,mem_sleep_counter
+  	branch lpm_sleep
 p_mouse_priority_bb_event:
 	copy regc,pdata
 	beq BT_EVT_24G_ATTEMPT_SUCCESS,p_mouse_24g_attempt_success
+	beq BT_EVT_24G_PAIRING_COMPLETE,p_mouse_24g_pairing_complete
 	beq BT_EVT_24G_ATTEMPT_FAIL,p_mouse_24g_attempt_fail
 	branch mouse_priority_bb_event+2
 
+
+p_mouse_24g_pairing_complete:
+	call mouse_no_data_timer_init
+	branch mouse_24g_pairing_complete
 p_mouse_24g_attempt_success:
 	fetch 4,mem_24g_addr
 	store 4,mem_24g_receiver_addr
 	store 4,mem_mouse_24g_addr		// if need store 24g address to eeprom/flash,need get mem_24g_addr
 	call g24_ch_syncword_crc8_init
 	call mouse_device_poweron_timer_init
+	call mouse_no_data_timer_init
 	branch mouse_24g_attempt_success
 
+
 p_mouse_24g_attempt_fail:
 	fetch 1,mem_24g_attempt_fail_flag
 	nbranch p_mouse_24g_enter_hibernate,blank
@@ -212,6 +270,10 @@
 	jam 0,mem_rgb_led_on_continue_1min_timeout_flag
 	branch p_mouse_rgb_led_off_time_init
 	
+p_g24_pair_dispatch:
+	jam DEFAULT_24G_DEVICE,mem_24g_reconn_type
+	branch g24_pair_dispatch+1
+
 
 p_mouse_start_work:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
