Index: format/app_mouse.format
===================================================================
--- /YC1308AC/branch/mouse_project/mouse_pubulic/format/app_mouse.format	(revision 781)
+++ /YC1308AC/branch/mouse_project/mouse_pubulic/format/app_mouse.format	(working copy)
@@ -436,6 +436,7 @@
 0x39 MOUSE_ENABLE_XY_OFFSET
 0x3a MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
 0x3b MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+0x3c MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
 
 //mouse dpi level
 0x00 MOUSE_DPI_LEVEL1
Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/mouse_pubulic/output/eeprom.dat	(revision 781)
+++ /YC1308AC/branch/mouse_project/mouse_pubulic/output/eeprom.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-ce
-07
+a2
+08
 c2
 84
 00
@@ -35,47 +35,47 @@
 c0
 61
 81
-2f
+64
 c0
 63
 80
-ad
+c0
 c0
 64
 80
-b1
+c4
 c0
 65
 00
-cf
+f5
 c0
 66
 00
 59
 c0
 67
-01
-ed
+02
+22
 c0
 68
 01
-3e
+73
 c0
 6b
-00
-ef
+01
+15
 c0
 6c
 81
-4f
+84
 c0
 6d
 01
-9a
+cf
 c0
 74
 01
-a5
+da
 20
 20
 13
@@ -91,27 +91,27 @@
 c0
 43
 81
-a1
+d6
 c0
 50
 81
-b9
+ee
 c0
 60
 01
-c3
+f8
 c0
 71
 01
-2d
+62
 c0
 75
 00
 9e
 c0
 76
-01
-ea
+02
+1f
 20
 20
 13
@@ -642,12 +642,12 @@
 31
 24
 34
-00
-e1
+01
+07
 20
 40
-26
-46
+00
+ad
 20
 40
 26
@@ -696,6 +696,82 @@
 20
 26
 b8
+70
+48
+a6
+00
+69
+61
+01
+5f
+34
+73
+02
+00
+20
+40
+26
+5b
+6f
+e0
+c8
+2c
+c0
+00
+a6
+51
+24
+2c
+26
+69
+24
+37
+a6
+69
+20
+40
+26
+72
+20
+40
+00
+b8
+20
+20
+26
+51
+6f
+e0
+cb
+e1
+24
+5a
+00
+bc
+70
+4b
+e1
+00
+20
+60
+00
+00
+20
+40
+41
+aa
+6f
+e4
+4b
+ab
+c4
+1e
+00
+00
+20
+20
+00
+ef
 58
 00
 00
@@ -777,9 +853,21 @@
 3f
 56
 20
+40
+00
+d8
+6f
+e4
+4b
+ab
+c4
+1e
+00
+00
+20
 20
 00
-c2
+e5
 6f
 e1
 cb
@@ -827,7 +915,7 @@
 c2
 00
 00
-c6
+dc
 20
 60
 00
@@ -839,6 +927,70 @@
 20
 40
 60
+42
+68
+48
+c9
+14
+20
+40
+60
+42
+6f
+e0
+c9
+13
+d8
+40
+00
+80
+20
+40
+60
+93
+6f
+e0
+c9
+14
+d8
+40
+00
+80
+20
+20
+60
+93
+6f
+e0
+c9
+13
+d8
+40
+00
+40
+20
+40
+60
+93
+6f
+e0
+c9
+14
+d8
+40
+00
+40
+20
+20
+60
+93
+68
+48
+c9
+13
+20
+40
+60
 50
 68
 48
@@ -902,8 +1054,8 @@
 3c
 20
 20
-00
-e7
+01
+0d
 6f
 e0
 c8
@@ -926,8 +1078,8 @@
 9f
 20
 20
-00
-e7
+01
+0d
 20
 40
 26
@@ -966,32 +1118,32 @@
 00
 c0
 00
-80
-f8
+81
+1e
 c0
 1e
 01
-18
+3e
 c0
 1c
 81
-16
+3c
 c0
 1d
 01
-1f
+45
 c0
 19
 01
-02
+28
 c0
 22
 01
-09
+2f
 c0
 0a
-80
-fa
+81
+20
 20
 20
 43
@@ -1043,7 +1195,7 @@
 c0
 00
 81
-06
+2c
 70
 4b
 76
@@ -1159,7 +1311,7 @@
 24
 3a
 00
-d8
+fe
 6f
 e0
 c8
@@ -1167,11 +1319,19 @@
 c0
 01
 01
-24
+4c
+c0
+02
+01
+55
+c0
+01
+81
+5a
 20
 20
 48
-37
+39
 6f
 e4
 4b
@@ -1208,6 +1368,58 @@
 20
 48
 06
+6f
+e4
+4b
+ab
+c3
+17
+81
+5f
+6f
+e0
+cb
+b4
+c0
+00
+81
+5f
+20
+20
+48
+1a
+6f
+e4
+4b
+ab
+c3
+17
+81
+5f
+c2
+89
+81
+5f
+c2
+89
+01
+5f
+20
+20
+48
+12
+6f
+e4
+4b
+ab
+c3
+1e
+48
+39
+20
+20
+00
+fe
 70
 48
 8b
@@ -1231,7 +1443,7 @@
 c0
 00
 01
-34
+69
 20
 20
 3d
@@ -1283,7 +1495,7 @@
 20
 40
 01
-41
+76
 20
 20
 40
@@ -1335,7 +1547,7 @@
 20
 3a
 01
-68
+9d
 67
 e0
 cb
@@ -1371,7 +1583,7 @@
 20
 40
 01
-65
+9a
 20
 40
 40
@@ -1383,7 +1595,7 @@
 20
 40
 01
-7d
+b2
 20
 40
 44
@@ -1431,7 +1643,7 @@
 20
 20
 01
-92
+c7
 da
 60
 4b
@@ -1439,7 +1651,7 @@
 da
 40
 01
-68
+9d
 20
 20
 31
@@ -1495,11 +1707,11 @@
 20
 41
 01
-77
+ac
 24
 41
 01
-7b
+b0
 20
 20
 48
@@ -1535,7 +1747,7 @@
 c0
 00
 01
-83
+b8
 6f
 e4
 4b
@@ -1551,7 +1763,7 @@
 20
 20
 01
-86
+bb
 6f
 e4
 4b
@@ -1587,7 +1799,7 @@
 20
 22
 81
-8d
+c2
 20
 20
 44
@@ -1627,7 +1839,7 @@
 da
 40
 01
-97
+cc
 20
 20
 31
@@ -1639,7 +1851,7 @@
 c0
 00
 00
-d8
+fe
 20
 20
 43
@@ -1715,7 +1927,7 @@
 c0
 04
 81
-ad
+e2
 20
 20
 4d
@@ -1815,7 +2027,7 @@
 c0
 02
 01
-c6
+fb
 20
 20
 19
@@ -1830,12 +2042,12 @@
 36
 c0
 05
-01
-cb
+02
+00
 c0
 09
-01
-da
+02
+0f
 20
 20
 1c
@@ -1862,8 +2074,8 @@
 c0
 c2
 81
-81
-d5
+82
+0a
 6f
 e1
 44
@@ -1890,12 +2102,12 @@
 00
 24
 22
-81
-d1
+82
+06
 24
 34
-01
-d1
+02
+06
 20
 20
 1e
@@ -2000,8 +2212,8 @@
 20
 3f
 75
-2d
-58
+c6
+d2
 aa
 55
 40
@@ -3170,220 +3382,8 @@
 e8
 41
 01
-55
-aa
-aa
-55
-70
-5d
-8b
-07
-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
-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
+e0
+2d
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-72
-30
+86
+d5
Index: output/flash.dat
===================================================================
--- /YC1308AC/branch/mouse_project/mouse_pubulic/output/flash.dat	(revision 781)
+++ /YC1308AC/branch/mouse_project/mouse_pubulic/output/flash.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-ce
-07
+a2
+08
 c2
 84
 00
@@ -35,47 +35,47 @@
 c0
 61
 81
-2f
+64
 c0
 63
 80
-ad
+c0
 c0
 64
 80
-b1
+c4
 c0
 65
 00
-cf
+f5
 c0
 66
 00
 59
 c0
 67
-01
-ed
+02
+22
 c0
 68
 01
-3e
+73
 c0
 6b
-00
-ef
+01
+15
 c0
 6c
 81
-4f
+84
 c0
 6d
 01
-9a
+cf
 c0
 74
 01
-a5
+da
 20
 20
 13
@@ -91,27 +91,27 @@
 c0
 43
 81
-a1
+d6
 c0
 50
 81
-b9
+ee
 c0
 60
 01
-c3
+f8
 c0
 71
 01
-2d
+62
 c0
 75
 00
 9e
 c0
 76
-01
-ea
+02
+1f
 20
 20
 13
@@ -642,12 +642,12 @@
 31
 24
 34
-00
-e1
+01
+07
 20
 40
-26
-46
+00
+ad
 20
 40
 26
@@ -696,6 +696,82 @@
 20
 26
 b8
+70
+48
+a6
+00
+69
+61
+01
+5f
+34
+73
+02
+00
+20
+40
+26
+5b
+6f
+e0
+c8
+2c
+c0
+00
+a6
+51
+24
+2c
+26
+69
+24
+37
+a6
+69
+20
+40
+26
+72
+20
+40
+00
+b8
+20
+20
+26
+51
+6f
+e0
+cb
+e1
+24
+5a
+00
+bc
+70
+4b
+e1
+00
+20
+60
+00
+00
+20
+40
+41
+aa
+6f
+e4
+4b
+ab
+c4
+1e
+00
+00
+20
+20
+00
+ef
 58
 00
 00
@@ -777,9 +853,21 @@
 3f
 56
 20
+40
+00
+d8
+6f
+e4
+4b
+ab
+c4
+1e
+00
+00
+20
 20
 00
-c2
+e5
 6f
 e1
 cb
@@ -827,7 +915,7 @@
 c2
 00
 00
-c6
+dc
 20
 60
 00
@@ -839,6 +927,70 @@
 20
 40
 60
+42
+68
+48
+c9
+14
+20
+40
+60
+42
+6f
+e0
+c9
+13
+d8
+40
+00
+80
+20
+40
+60
+93
+6f
+e0
+c9
+14
+d8
+40
+00
+80
+20
+20
+60
+93
+6f
+e0
+c9
+13
+d8
+40
+00
+40
+20
+40
+60
+93
+6f
+e0
+c9
+14
+d8
+40
+00
+40
+20
+20
+60
+93
+68
+48
+c9
+13
+20
+40
+60
 50
 68
 48
@@ -902,8 +1054,8 @@
 3c
 20
 20
-00
-e7
+01
+0d
 6f
 e0
 c8
@@ -926,8 +1078,8 @@
 9f
 20
 20
-00
-e7
+01
+0d
 20
 40
 26
@@ -966,32 +1118,32 @@
 00
 c0
 00
-80
-f8
+81
+1e
 c0
 1e
 01
-18
+3e
 c0
 1c
 81
-16
+3c
 c0
 1d
 01
-1f
+45
 c0
 19
 01
-02
+28
 c0
 22
 01
-09
+2f
 c0
 0a
-80
-fa
+81
+20
 20
 20
 43
@@ -1043,7 +1195,7 @@
 c0
 00
 81
-06
+2c
 70
 4b
 76
@@ -1159,7 +1311,7 @@
 24
 3a
 00
-d8
+fe
 6f
 e0
 c8
@@ -1167,11 +1319,19 @@
 c0
 01
 01
-24
+4c
+c0
+02
+01
+55
+c0
+01
+81
+5a
 20
 20
 48
-37
+39
 6f
 e4
 4b
@@ -1208,6 +1368,58 @@
 20
 48
 06
+6f
+e4
+4b
+ab
+c3
+17
+81
+5f
+6f
+e0
+cb
+b4
+c0
+00
+81
+5f
+20
+20
+48
+1a
+6f
+e4
+4b
+ab
+c3
+17
+81
+5f
+c2
+89
+81
+5f
+c2
+89
+01
+5f
+20
+20
+48
+12
+6f
+e4
+4b
+ab
+c3
+1e
+48
+39
+20
+20
+00
+fe
 70
 48
 8b
@@ -1231,7 +1443,7 @@
 c0
 00
 01
-34
+69
 20
 20
 3d
@@ -1283,7 +1495,7 @@
 20
 40
 01
-41
+76
 20
 20
 40
@@ -1335,7 +1547,7 @@
 20
 3a
 01
-68
+9d
 67
 e0
 cb
@@ -1371,7 +1583,7 @@
 20
 40
 01
-65
+9a
 20
 40
 40
@@ -1383,7 +1595,7 @@
 20
 40
 01
-7d
+b2
 20
 40
 44
@@ -1431,7 +1643,7 @@
 20
 20
 01
-92
+c7
 da
 60
 4b
@@ -1439,7 +1651,7 @@
 da
 40
 01
-68
+9d
 20
 20
 31
@@ -1495,11 +1707,11 @@
 20
 41
 01
-77
+ac
 24
 41
 01
-7b
+b0
 20
 20
 48
@@ -1535,7 +1747,7 @@
 c0
 00
 01
-83
+b8
 6f
 e4
 4b
@@ -1551,7 +1763,7 @@
 20
 20
 01
-86
+bb
 6f
 e4
 4b
@@ -1587,7 +1799,7 @@
 20
 22
 81
-8d
+c2
 20
 20
 44
@@ -1627,7 +1839,7 @@
 da
 40
 01
-97
+cc
 20
 20
 31
@@ -1639,7 +1851,7 @@
 c0
 00
 00
-d8
+fe
 20
 20
 43
@@ -1715,7 +1927,7 @@
 c0
 04
 81
-ad
+e2
 20
 20
 4d
@@ -1815,7 +2027,7 @@
 c0
 02
 01
-c6
+fb
 20
 20
 19
@@ -1830,12 +2042,12 @@
 36
 c0
 05
-01
-cb
+02
+00
 c0
 09
-01
-da
+02
+0f
 20
 20
 1c
@@ -1862,8 +2074,8 @@
 c0
 c2
 81
-81
-d5
+82
+0a
 6f
 e1
 44
@@ -1890,12 +2102,12 @@
 00
 24
 22
-81
-d1
+82
+06
 24
 34
-01
-d1
+02
+06
 20
 20
 1e
@@ -2000,8 +2212,8 @@
 20
 3f
 75
-2d
-58
+c6
+d2
 aa
 55
 40
@@ -3170,220 +3382,8 @@
 e8
 41
 01
-55
-aa
-aa
-55
-70
-5d
-8b
-07
-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
-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
+e0
+2d
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-72
-30
+86
+d5
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/mouse_pubulic/output/program.lis	(revision 781)
+++ /YC1308AC/branch/mouse_project/mouse_pubulic/output/program.lis	(working copy)
@@ -7,28 +7,28 @@
 0004 c04f8074 beq patch13_7 ,p_init_param 
 0005 c0570076 beq patch15_6 ,p_app_init 
 0006 c058005d beq patch16_0 ,p_app_evt_100ms_loop 
-0007 c061812f beq patch18_3 ,p_mouse_start_work 
-0008 c06380ad beq patch18_7 ,p_mouse_app_enter_hibernate 
-0009 c06480b1 beq patch19_1 ,p_mouse_setgpio_hibernate 
-000a c06500cf beq patch19_2 ,p_mouse_lpm_before_common 
+0007 c0618164 beq patch18_3 ,p_mouse_start_work 
+0008 c06380c0 beq patch18_7 ,p_mouse_app_enter_hibernate 
+0009 c06480c4 beq patch19_1 ,p_mouse_setgpio_hibernate 
+000a c06500f5 beq patch19_2 ,p_mouse_lpm_before_common 
 000b c0660059 beq patch19_4 ,p_mouse_adc_read_start 
-000c c06701ed beq patch19_6 ,p_mouse_motion 
-000d c068013e beq patch1a_0 ,p_mouse_seting_dpi 
-000e c06b00ef beq patch1a_6 ,p_mouse_priority_bb_event 
-000f c06c814f beq patch1b_1 ,p_mouse_bb_event_timer 
-0010 c06d019a beq patch1b_2 ,p_mouse_start_discovery 
-0011 c07401a5 beq patch1d_0 ,p_hid_rx_process 
+000c c0670222 beq patch19_6 ,p_mouse_motion 
+000d c0680173 beq patch1a_0 ,p_mouse_seting_dpi 
+000e c06b0115 beq patch1a_6 ,p_mouse_priority_bb_event 
+000f c06c8184 beq patch1b_1 ,p_mouse_bb_event_timer 
+0010 c06d01cf beq patch1b_2 ,p_mouse_start_discovery 
+0011 c07401da beq patch1d_0 ,p_hid_rx_process 
 0012 2020137c branch loop 
 
 pf_patch_ext:
 0013 c0198039 beq patch26_3 ,p_adc_init_data 
 0014 c01a003e beq patch26_4 ,p_enable_adc 
-0015 c04381a1 beq patch30_7 ,p_ui_timer_check 
-0016 c05081b9 beq patch34_1 ,p_le_slave_match 
-0017 c06001c3 beq patch38_0 ,p_le_parse_l2cap 
-0018 c071012d beq patch3c_2 ,p_g24_pair_dispatch 
+0015 c04381d6 beq patch30_7 ,p_ui_timer_check 
+0016 c05081ee beq patch34_1 ,p_le_slave_match 
+0017 c06001f8 beq patch38_0 ,p_le_parse_l2cap 
+0018 c0710162 beq patch3c_2 ,p_g24_pair_dispatch 
 0019 c075009e beq patch3d_2 ,p_g24_transmit_no_interrupt 
-001a c07601ea beq patch3d_4 ,p_g24_lpm_wait 
+001a c076021f beq patch3d_4 ,p_g24_lpm_wait 
 001b 2020137c branch loop 
 
 p_soft_reset:
@@ -195,10 +195,10 @@
 
 p_g24_transmit_no_interrupt:
 009e 20402631 call g24_txdata_prep 
-009f 243400e1 nbranch p_g24_nodata_transmit ,user 
+009f 24340107 nbranch p_g24_nodata_transmit ,user 
 
 p_g24_transmit_start:
-00a0 20402646 call g24_transmit_process 
+00a0 204000ad call p_g24_transmit_process 
 00a1 204026ee call power_ctrl_start 
 00a2 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
 00a3 243a00a8 nbranch p_g24_short_sleep ,blank 
@@ -214,425 +214,496 @@
 00ab 6fe1c8ad fetch 3 ,mem_24g_short_sleep_set 
 00ac 202026b8 branch g24_long_sleep2 
 
+p_g24_transmit_process:
+00ad 7048a600 jam 0 ,mem_24g_retry 
+
+p_g24_transmit_loop:
+00ae 6961015f fetchr timeup ,2 ,mem_param_rx_setup 
+00af 34730200 until clkn_rt ,meet 
+00b0 2040265b call g24_transmit_receive_ack 
+00b1 6fe0c82c fetch 1 ,mem_24g_no_ack 
+00b2 c000a651 beq no_ack_24g ,g24_transmit_no_ack 
+00b3 242c2669 nbranch g24_retransmit ,sync 
+00b4 2437a669 nbranch g24_retransmit ,user3 
+00b5 20402672 call g24_ackpayload_parse 
+00b6 204000b8 call p_mouse_wakeup_24g 
+00b7 20202651 branch g24_transmit_no_ack 
+
+p_mouse_wakeup_24g:
+00b8 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+00b9 245a00bc ncall p_mouse_wakeup_24g_from_long_sleep ,blank 
+00ba 704be100 jam 0 ,mem_sensor_shutdown_flag 
+00bb 20600000 rtn 
+
+p_mouse_wakeup_24g_from_long_sleep:
+00bc 204041aa call mouse_init_sensor_wakeup 
+00bd 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00be c41e0000 rtnbit0 mouse_enable_wheel_wake_up_cancel 
+00bf 202000ef branch p_mouse_wheel_set_wakeup 
+
 p_mouse_app_enter_hibernate:
-00ad 58000006 setarg pan_reg_config 
-00ae 20405b0d call twspi_read 
-00af c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-00b0 20203e21 branch mouse_app_enter_hibernate + 1 
+00c0 58000006 setarg pan_reg_config 
+00c1 20405b0d call twspi_read 
+00c2 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
+00c3 20203e21 branch mouse_app_enter_hibernate + 1 
 
 p_mouse_setgpio_hibernate:
-00b1 204042e9 call mouse_set_sdio_high 
-00b2 20407fdc call clear_wake 
-00b3 20404015 call mouse_before_hibernate_wheel_gpio_set 
-00b4 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-00b5 20406069 call gpio_out_active 
-00b6 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-00b7 20406042 call gpio_clr_wake 
-00b8 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-00b9 d840003f arg gpcfg_output_high ,temp 
-00ba 20406093 call gpio_config_function_int 
-00bb d8400003 arg 3 ,temp 
-00bc 20403f56 call mouse_gpio_config_input_pu 
-00bd 20403e40 call mouse_lpm_before_common 
-00be 20406082 call gpio_pd_idle 
-00bf d8400013 arg 19 ,temp 
-00c0 20403f56 call mouse_gpio_config_input_pu 
-00c1 202000c2 branch p_mouse_gpio_set_high_impedance 
+00c4 204042e9 call mouse_set_sdio_high 
+00c5 20407fdc call clear_wake 
+00c6 20404015 call mouse_before_hibernate_wheel_gpio_set 
+00c7 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+00c8 20406069 call gpio_out_active 
+00c9 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+00ca 20406042 call gpio_clr_wake 
+00cb 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
+00cc d840003f arg gpcfg_output_high ,temp 
+00cd 20406093 call gpio_config_function_int 
+00ce d8400003 arg 3 ,temp 
+00cf 20403f56 call mouse_gpio_config_input_pu 
+00d0 20403e40 call mouse_lpm_before_common 
+00d1 20406082 call gpio_pd_idle 
+00d2 d8400013 arg 19 ,temp 
+00d3 20403f56 call mouse_gpio_config_input_pu 
+00d4 204000d8 call p_mouse_gpio_set_high_impedance 
+00d5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00d6 c41e0000 rtnbit0 mouse_enable_wheel_wake_up_cancel 
+00d7 202000e5 branch p_mouse_wheel_clr_wakeup 
 
 p_mouse_gpio_set_high_impedance:
-00c2 6fe1cbde fetch 3 ,mem_mouse_set_high_impedance_bit_set 
-00c3 67e1895c store 3 ,mem_pdatatemp 
-00c4 df200014 arg 20 ,loopcnt 
-00c5 d8400000 arg 0 ,temp 
+00d8 6fe1cbde fetch 3 ,mem_mouse_set_high_impedance_bit_set 
+00d9 67e1895c store 3 ,mem_pdatatemp 
+00da df200014 arg 20 ,loopcnt 
+00db d8400000 arg 0 ,temp 
 
 p_mouse_gpio_set_high_impedance_bit_loop:
-00c6 6fe1895c fetch 3 ,mem_pdatatemp 
-00c7 2feffe00 isolate1 0 ,pdata 
-00c8 2040e07f call gpio_set_high_impedance ,true 
-00c9 6fe1895c fetch 3 ,mem_pdatatemp 
-00ca 1fe37e00 rshift pdata ,pdata 
-00cb 67e1895c store 3 ,mem_pdatatemp 
-00cc 18408401 increase 1 ,temp 
-00cd c20000c6 loop p_mouse_gpio_set_high_impedance_bit_loop 
-00ce 20600000 rtn 
+00dc 6fe1895c fetch 3 ,mem_pdatatemp 
+00dd 2feffe00 isolate1 0 ,pdata 
+00de 2040e07f call gpio_set_high_impedance ,true 
+00df 6fe1895c fetch 3 ,mem_pdatatemp 
+00e0 1fe37e00 rshift pdata ,pdata 
+00e1 67e1895c store 3 ,mem_pdatatemp 
+00e2 18408401 increase 1 ,temp 
+00e3 c20000dc loop p_mouse_gpio_set_high_impedance_bit_loop 
+00e4 20600000 rtn 
+
+p_mouse_wheel_clr_wakeup:
+00e5 6848c913 fetcht 1 ,mem_whee_a_data_gpio 
+00e6 20406042 call gpio_clr_wake 
+00e7 6848c914 fetcht 1 ,mem_whee_b_data_gpio 
+00e8 20406042 call gpio_clr_wake 
+00e9 6fe0c913 fetch 1 ,mem_whee_a_data_gpio 
+00ea d8400080 arg gpcfg_pulldown ,temp 
+00eb 20406093 call gpio_config_function_int 
+00ec 6fe0c914 fetch 1 ,mem_whee_b_data_gpio 
+00ed d8400080 arg gpcfg_pulldown ,temp 
+00ee 20206093 branch gpio_config_function_int 
+
+p_mouse_wheel_set_wakeup:
+00ef 6fe0c913 fetch 1 ,mem_whee_a_data_gpio 
+00f0 d8400040 arg gpcfg_pullup ,temp 
+00f1 20406093 call gpio_config_function_int 
+00f2 6fe0c914 fetch 1 ,mem_whee_b_data_gpio 
+00f3 d8400040 arg gpcfg_pullup ,temp 
+00f4 20206093 branch gpio_config_function_int 
 
 p_mouse_lpm_before_common:
-00cf 6848c913 fetcht 1 ,mem_whee_a_data_gpio 
-00d0 20406050 call gpio_config_input 
-00d1 6848c914 fetcht 1 ,mem_whee_b_data_gpio 
-00d2 20406050 call gpio_config_input 
-00d3 20403f88 call mouse_wheel_check 
-00d4 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
-00d5 d840003f arg gpcfg_output_high ,temp 
-00d6 20406093 call gpio_config_function_int 
-00d7 20203e44 branch mouse_lpm_before_common_next 
+00f5 6848c913 fetcht 1 ,mem_whee_a_data_gpio 
+00f6 20406050 call gpio_config_input 
+00f7 6848c914 fetcht 1 ,mem_whee_b_data_gpio 
+00f8 20406050 call gpio_config_input 
+00f9 20403f88 call mouse_wheel_check 
+00fa 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
+00fb d840003f arg gpcfg_output_high ,temp 
+00fc 20406093 call gpio_config_function_int 
+00fd 20203e44 branch mouse_lpm_before_common_next 
 
 p_mouse_24g_hibernate_set:
-00d8 7048a500 jam 0 ,mem_24g_attempt_fail_flag 
-00d9 20402652 call g24_transmit_next_packet 
-00da 5fffffff setarg -1 
-00db 67e2485c store 4 ,mem_24g_enter_hibernate 
-00dc 58000000 setarg 0 
-00dd 67e3c8d0 store 7 ,mem_mouse_key 
-00de 704be101 jam 1 ,mem_sensor_shutdown_flag 
-00df 2040423c call mouse_sensor_powerdown 
-00e0 202000e7 branch p_g24_long_sleep 
+00fe 7048a500 jam 0 ,mem_24g_attempt_fail_flag 
+00ff 20402652 call g24_transmit_next_packet 
+0100 5fffffff setarg -1 
+0101 67e2485c store 4 ,mem_24g_enter_hibernate 
+0102 58000000 setarg 0 
+0103 67e3c8d0 store 7 ,mem_mouse_key 
+0104 704be101 jam 1 ,mem_sensor_shutdown_flag 
+0105 2040423c call mouse_sensor_powerdown 
+0106 2020010d branch p_g24_long_sleep 
 
 p_g24_nodata_transmit:
-00e1 6fe0c8a7 fetch 1 ,mem_24g_abort_pac 
-00e2 205a26a7 call g24_send_abort_packet ,blank 
-00e3 6fe0c8bd fetch 1 ,mem_24g_transmit_by_interrupt 
-00e4 c1008000 rtneq g24_tx_timer_int_enable 
-00e5 2040269f call g24_search_receiver 
-00e6 202000e7 branch p_g24_long_sleep 
+0107 6fe0c8a7 fetch 1 ,mem_24g_abort_pac 
+0108 205a26a7 call g24_send_abort_packet ,blank 
+0109 6fe0c8bd fetch 1 ,mem_24g_transmit_by_interrupt 
+010a c1008000 rtneq g24_tx_timer_int_enable 
+010b 2040269f call g24_search_receiver 
+010c 2020010d branch p_g24_long_sleep 
 
 p_g24_long_sleep:
-00e7 204026bb call g24_lpm_wait 
-00e8 24740000 nrtn user 
-00e9 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-00ea 245a3e33 ncall mouse_setgpio_hibernate ,blank 
-00eb 6fe2485c fetch 4 ,mem_24g_enter_hibernate 
-00ec 20407daa call clk2lpo 
-00ed 604a4160 storet 4 ,mem_sleep_counter 
-00ee 20201497 branch lpm_sleep 
+010d 204026bb call g24_lpm_wait 
+010e 24740000 nrtn user 
+010f 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+0110 245a3e33 ncall mouse_setgpio_hibernate ,blank 
+0111 6fe2485c fetch 4 ,mem_24g_enter_hibernate 
+0112 20407daa call clk2lpo 
+0113 604a4160 storet 4 ,mem_sleep_counter 
+0114 20201497 branch lpm_sleep 
 
 p_mouse_priority_bb_event:
-00ef 1a627e00 copy regc ,pdata 
-00f0 c00080f8 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
-00f1 c01e0118 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-00f2 c01c8116 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-00f3 c01d011f beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-00f4 c0190102 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-00f5 c0220109 beq bt_evt_le_parse_conn_param_accepted ,p_mouse_le_parse_conn_param_accepted 
-00f6 c00a80fa beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-00f7 20204336 branch mouse_priority_bb_event + 2 
+0115 1a627e00 copy regc ,pdata 
+0116 c000811e beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0117 c01e013e beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0118 c01c813c beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0119 c01d0145 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+011a c0190128 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+011b c022012f beq bt_evt_le_parse_conn_param_accepted ,p_mouse_le_parse_conn_param_accepted 
+011c c00a8120 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+011d 20204336 branch mouse_priority_bb_event + 2 
 
 p_mouse_bb_event_connected:
-00f8 20404544 call mouse_no_data_timer_init 
-00f9 202043fa branch mouse_bb_event_connected 
+011e 20404544 call mouse_no_data_timer_init 
+011f 202043fa branch mouse_bb_event_connected 
 
 p_mouse_le_bb_disconnected:
-00fa 704ac600 jam 0 ,mem_mouse_le_bb_connected_flag 
-00fb 58000006 setarg le_interval_7_5ms 
-00fc 67e14372 store 2 ,mem_le_interval_min 
-00fd 67e14374 store 2 ,mem_le_interval_min + 2 
-00fe 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-00ff c28dc366 bbit1 mouse_enable_bt_125hz ,mouse_le_bb_disconnected_next + 2 
-0100 58000007 setarg le_interval_8_75ms 
-0101 20204364 branch mouse_le_bb_disconnected_next 
+0120 704ac600 jam 0 ,mem_mouse_le_bb_connected_flag 
+0121 58000006 setarg le_interval_7_5ms 
+0122 67e14372 store 2 ,mem_le_interval_min 
+0123 67e14374 store 2 ,mem_le_interval_min + 2 
+0124 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0125 c28dc366 bbit1 mouse_enable_bt_125hz ,mouse_le_bb_disconnected_next + 2 
+0126 58000007 setarg le_interval_8_75ms 
+0127 20204364 branch mouse_le_bb_disconnected_next 
 
 p_mouse_le_ll_start_encryt:
-0102 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-0103 c0008106 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-0104 704b7614 jam 20 ,mem_le_start_encrypt_timer 
-0105 20204373 branch mouse_le_ll_enable_start_enc_flag 
+0128 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0129 c000812c beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+012a 704b7614 jam 20 ,mem_le_start_encrypt_timer 
+012b 20204373 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_ll_reconn_start_encryt:
-0106 2040436c call mouse_updata_le_param 
-0107 704b7605 jam 5 ,mem_le_start_encrypt_timer 
-0108 20204373 branch mouse_le_ll_enable_start_enc_flag 
+012c 2040436c call mouse_updata_le_param 
+012d 704b7605 jam 5 ,mem_le_start_encrypt_timer 
+012e 20204373 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_parse_conn_param_accepted:
-0109 6fe082c1 fetch 1 ,mem_le_new_conninterval 
-010a 1fe67c0c sub pdata ,le_interval_15ms ,null 
-010b 24214384 nbranch mouse_le_conn_param_lpm_disable ,positive 
-010c 67e14372 store 2 ,mem_le_interval_min 
-010d 67e14374 store 2 ,mem_le_interval_min + 2 
-010e 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
-010f 203a439a branch mouse_le_lpm_mult_reinit ,blank 
-0110 6848cb8a fetcht 1 ,mem_lpm_mult_init 
-0111 98467c00 isub temp ,null 
-0112 2021439a branch mouse_le_lpm_mult_reinit ,positive 
-0113 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
-0114 67e0cb8a store 1 ,mem_lpm_mult_init 
-0115 20204386 branch mouse_le_conn_param_lpm_enable 
+012f 6fe082c1 fetch 1 ,mem_le_new_conninterval 
+0130 1fe67c0c sub pdata ,le_interval_15ms ,null 
+0131 24214384 nbranch mouse_le_conn_param_lpm_disable ,positive 
+0132 67e14372 store 2 ,mem_le_interval_min 
+0133 67e14374 store 2 ,mem_le_interval_min + 2 
+0134 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
+0135 203a439a branch mouse_le_lpm_mult_reinit ,blank 
+0136 6848cb8a fetcht 1 ,mem_lpm_mult_init 
+0137 98467c00 isub temp ,null 
+0138 2021439a branch mouse_le_lpm_mult_reinit ,positive 
+0139 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
+013a 67e0cb8a store 1 ,mem_lpm_mult_init 
+013b 20204386 branch mouse_le_conn_param_lpm_enable 
 
 p_mouse_24g_pairing_complete:
-0116 20404544 call mouse_no_data_timer_init 
-0117 20204857 branch mouse_24g_pairing_complete 
+013c 20404544 call mouse_no_data_timer_init 
+013d 20204857 branch mouse_24g_pairing_complete 
 
 p_mouse_24g_attempt_success:
-0118 6fe2483c fetch 4 ,mem_24g_addr 
-0119 67e24891 store 4 ,mem_24g_receiver_addr 
-011a 67e24993 store 4 ,mem_mouse_24g_addr 
-011b 2040257e call g24_ch_syncword_crc8_init 
-011c 204048c6 call mouse_device_poweron_timer_init 
-011d 20404544 call mouse_no_data_timer_init 
-011e 2020484e branch mouse_24g_attempt_success 
+013e 6fe2483c fetch 4 ,mem_24g_addr 
+013f 67e24891 store 4 ,mem_24g_receiver_addr 
+0140 67e24993 store 4 ,mem_mouse_24g_addr 
+0141 2040257e call g24_ch_syncword_crc8_init 
+0142 204048c6 call mouse_device_poweron_timer_init 
+0143 20404544 call mouse_no_data_timer_init 
+0144 2020484e branch mouse_24g_attempt_success 
 
 p_mouse_24g_attempt_fail:
-011f 6fe0c8a5 fetch 1 ,mem_24g_attempt_fail_flag 
-0120 243a00d8 nbranch p_mouse_24g_hibernate_set ,blank 
-0121 6fe0c88b fetch 1 ,mem_24g_reconn_type 
-0122 c0010124 beq fast_conn_and_3_0_addr ,p_mouse_24g_fast_conn_attempt_fail 
-0123 20204837 branch mouse_24g_attempt_fail + 4 
+0145 6fe0c8a5 fetch 1 ,mem_24g_attempt_fail_flag 
+0146 243a00fe nbranch p_mouse_24g_hibernate_set ,blank 
+0147 6fe0c88b fetch 1 ,mem_24g_reconn_type 
+0148 c001014c beq fast_conn_and_3_0_addr ,p_mouse_24g_fast_conn_attempt_fail 
+0149 c0020155 beq pair_and_3_0_addr ,p_mouse_24g_auto_pair_attempt_fail 
+014a c001815a beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
+014b 20204839 branch mouse_24g_attempt_fail_enter_hibernate 
 
 p_mouse_24g_fast_conn_attempt_fail:
-0124 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0125 c297c811 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_start_auto_pair 
-0126 c2984811 bbit1 mouse_enable_auto_24g_paring ,mouse_24g_start_auto_pair 
-0127 c31d4806 bbit0 mouse_enable_24g_auto_pair_nerver_been_paired ,mouse_24g_reconn_dongle_start 
-0128 6fe24993 fetch 4 ,mem_mouse_24g_addr 
-0129 684a4974 fetcht 4 ,mem_mouse_compare_addr_ff 
-012a 98467c00 isub temp ,null 
-012b 2022c827 branch mouse_24g_start_pair_mode ,zero 
-012c 20204806 branch mouse_24g_reconn_dongle_start 
+014c 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+014d c297c811 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_start_auto_pair 
+014e c2984811 bbit1 mouse_enable_auto_24g_paring ,mouse_24g_start_auto_pair 
+014f c31d4806 bbit0 mouse_enable_24g_auto_pair_nerver_been_paired ,mouse_24g_reconn_dongle_start 
+0150 6fe24993 fetch 4 ,mem_mouse_24g_addr 
+0151 684a4974 fetcht 4 ,mem_mouse_compare_addr_ff 
+0152 98467c00 isub temp ,null 
+0153 2022c827 branch mouse_24g_start_pair_mode ,zero 
+0154 20204806 branch mouse_24g_reconn_dongle_start 
+
+p_mouse_24g_auto_pair_attempt_fail:
+0155 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0156 c317815f bbit0 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_attempt_fail_enter_hibernate 
+0157 6fe0cbb4 fetch 1 ,mem_device_number 
+0158 c000815f beq 1 ,p_mouse_24g_attempt_fail_enter_hibernate 
+0159 2020481a branch mouse_24g_first_bluetooth_reconnect 
+
+p_mouse_reconn_dongle_attempt_fail:
+015a 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+015b c317815f bbit0 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_attempt_fail_enter_hibernate 
+015c c289815f bbit1 mouse_enable_eeprom ,p_mouse_24g_attempt_fail_enter_hibernate 
+015d c289015f bbit1 mouse_enable_flash ,p_mouse_24g_attempt_fail_enter_hibernate 
+015e 20204812 branch mouse_24g_start_auto_pair + 1 
+
+p_mouse_24g_attempt_fail_enter_hibernate:
+015f 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0160 c31e4839 bbit0 mouse_enable_wheel_wake_up_cancel ,mouse_24g_attempt_fail_enter_hibernate 
+0161 202000fe branch p_mouse_24g_hibernate_set 
 
 p_g24_pair_dispatch:
-012d 70488b00 jam default_24g_device ,mem_24g_reconn_type 
-012e 20202341 branch g24_pair_dispatch + 1 
+0162 70488b00 jam default_24g_device ,mem_24g_reconn_type 
+0163 20202341 branch g24_pair_dispatch + 1 
 
 p_mouse_start_work:
-012f 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0130 c297c80a bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
-0131 6fe0c938 fetch 1 ,mem_device_flag 
-0132 c0000134 beq mode_24g_device ,p_mouse_24g_start_mode 
-0133 20203d57 branch mouse_start_work + 5 
+0164 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0165 c297c80a bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_first_start_auto_pair_mode 
+0166 6fe0c938 fetch 1 ,mem_device_flag 
+0167 c0000169 beq mode_24g_device ,p_mouse_24g_start_mode 
+0168 20203d57 branch mouse_start_work + 5 
 
 p_mouse_24g_start_mode:
-0134 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0135 c308c803 bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
-0136 20403d65 call mouse_wakeup_from_power_check 
-0137 20344806 branch mouse_24g_reconn_dongle_start ,user 
-0138 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0139 c298480c bbit1 mouse_enable_auto_24g_paring ,mouse_24g_reconn_general_dongle 
-013a c318c80c bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
-013b 20404110 call mouse_key_check_once 
-013c 1a217e07 and rega ,0x07 ,pdata 
-013d 202047ff branch mouse_24g_start_mode + 9 
+0169 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+016a c308c803 bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+016b 20403d65 call mouse_wakeup_from_power_check 
+016c 20344806 branch mouse_24g_reconn_dongle_start ,user 
+016d 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+016e c298480c bbit1 mouse_enable_auto_24g_paring ,mouse_24g_reconn_general_dongle 
+016f c318c80c bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
+0170 20404110 call mouse_key_check_once 
+0171 1a217e07 and rega ,0x07 ,pdata 
+0172 202047ff branch mouse_24g_start_mode + 9 
 
 p_mouse_seting_dpi:
-013e 2040408f call mouse_setting_dpi_4_level 
-013f 20400141 call p_mouse_dpi_led_blink_delay 
-0140 20204098 branch mouse_seting_sensor_type 
+0173 2040408f call mouse_setting_dpi_4_level 
+0174 20400176 call p_mouse_dpi_led_blink_delay 
+0175 20204098 branch mouse_seting_sensor_type 
 
 p_mouse_dpi_led_blink_delay:
-0141 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-0142 c17f8000 rtneq gpio_disable 
-0143 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
-0144 247a0000 nrtn blank 
-0145 6fe14883 fetch 2 ,mem_24g_pair_timeout 
-0146 247a0000 nrtn blank 
-0147 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
-0148 247a0000 nrtn blank 
-0149 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
-014a 247a0000 nrtn blank 
-014b 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
-014c 203a0168 branch p_mouse_dpi_led_blink_init ,blank 
-014d 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
-014e 20600000 rtn 
+0176 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+0177 c17f8000 rtneq gpio_disable 
+0178 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
+0179 247a0000 nrtn blank 
+017a 6fe14883 fetch 2 ,mem_24g_pair_timeout 
+017b 247a0000 nrtn blank 
+017c 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
+017d 247a0000 nrtn blank 
+017e 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+017f 247a0000 nrtn blank 
+0180 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
+0181 203a019d branch p_mouse_dpi_led_blink_init ,blank 
+0182 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
+0183 20600000 rtn 
 
 p_mouse_bb_event_timer:
-014f 20403e9b call mouse_adc_read 
-0150 20404956 call mouse_low_voltage_led_timer 
-0151 2040232b call g24_pair_timeout_timer 
-0152 20402556 call g24_reconn_timeout_timer 
-0153 204047cd call mouse_24g_long_sleep_param_update_timer 
-0154 204048be call mouse_device_poweron_timer 
-0155 20400165 call p_mouse_dpi_led_blink_delay_timer 
-0156 2040407c call mouse_dpi_key_check_long_press 
-0157 204044cc call mouse_bt_discovery_check 
-0158 2040017d call p_mouse_commbination_key_process 
-0159 204044ff call mouse_check_discovery_timeout_timer 
-015a 20404504 call mouse_check_direct_timeout_timer 
-015b 20404512 call mouse_le_enable_att_list_timer 
-015c 2040451f call mouse_le_battery_updata_timer 
-015d 20404515 call mouse_le_send_smp_security_request_timer 
-015e 2040452a call mouse_check_hid_handshake_timer 
-015f 2040452d call mouse_bt_check_sniff_req_timeout_timer 
-0160 20404532 call mouse_check_reconnect_delay_long_sleep 
-0161 20404535 call mouse_current_mult_update_timer 
-0162 20404022 call mouse_wheel_trigger_timer 
-0163 20404547 call mouse_store_information_delay_timer 
-0164 20200192 branch p_mouse_check_no_data_timeout_timer 
+0184 20403e9b call mouse_adc_read 
+0185 20404956 call mouse_low_voltage_led_timer 
+0186 2040232b call g24_pair_timeout_timer 
+0187 20402556 call g24_reconn_timeout_timer 
+0188 204047cd call mouse_24g_long_sleep_param_update_timer 
+0189 204048be call mouse_device_poweron_timer 
+018a 2040019a call p_mouse_dpi_led_blink_delay_timer 
+018b 2040407c call mouse_dpi_key_check_long_press 
+018c 204044cc call mouse_bt_discovery_check 
+018d 204001b2 call p_mouse_commbination_key_process 
+018e 204044ff call mouse_check_discovery_timeout_timer 
+018f 20404504 call mouse_check_direct_timeout_timer 
+0190 20404512 call mouse_le_enable_att_list_timer 
+0191 2040451f call mouse_le_battery_updata_timer 
+0192 20404515 call mouse_le_send_smp_security_request_timer 
+0193 2040452a call mouse_check_hid_handshake_timer 
+0194 2040452d call mouse_bt_check_sniff_req_timeout_timer 
+0195 20404532 call mouse_check_reconnect_delay_long_sleep 
+0196 20404535 call mouse_current_mult_update_timer 
+0197 20404022 call mouse_wheel_trigger_timer 
+0198 20404547 call mouse_store_information_delay_timer 
+0199 202001c7 branch p_mouse_check_no_data_timeout_timer 
 
 p_mouse_dpi_led_blink_delay_timer:
-0165 da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
-0166 da400168 arg p_mouse_dpi_led_blink_init ,regb 
-0167 2020318a branch timer_single_step 
+019a da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
+019b da40019d arg p_mouse_dpi_led_blink_init ,regb 
+019c 2020318a branch timer_single_step 
 
 p_mouse_dpi_led_blink_init:
-0168 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0169 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
-016a c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
-016b 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-016c 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
-016d 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
-016e 67e14930 store 2 ,mem_mouse_on_time 
-016f 67e14932 store 2 ,mem_mouse_off_time 
-0170 da200000 arg 0 ,rega 
-0171 6848c992 fetcht 1 ,mem_mouse_dpi 
-0172 18408402 increase 2 ,temp 
-0173 18467c03 sub temp ,3 ,null 
-0174 20410177 call p_mouse_dpi_led_blink_init_level_4 ,positive 
-0175 2441017b ncall p_mouse_dpi_led_blink_count_clean ,positive 
-0176 202048ff branch mouse_dpi_led_blink_init_end 
+019d 6fe0c927 fetch 1 ,mem_config_sensor_type 
+019e c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
+019f c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
+01a0 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+01a1 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
+01a2 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
+01a3 67e14930 store 2 ,mem_mouse_on_time 
+01a4 67e14932 store 2 ,mem_mouse_off_time 
+01a5 da200000 arg 0 ,rega 
+01a6 6848c992 fetcht 1 ,mem_mouse_dpi 
+01a7 18408402 increase 2 ,temp 
+01a8 18467c03 sub temp ,3 ,null 
+01a9 204101ac call p_mouse_dpi_led_blink_init_level_4 ,positive 
+01aa 244101b0 ncall p_mouse_dpi_led_blink_count_clean ,positive 
+01ab 202048ff branch mouse_dpi_led_blink_init_end 
 
 p_mouse_dpi_led_blink_init_level_4:
-0177 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0178 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
-0179 18408401 increase 1 ,temp 
-017a 20600000 rtn 
+01ac 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01ad c40e0000 rtnbit0 mouse_enable_dpi_level_4 
+01ae 18408401 increase 1 ,temp 
+01af 20600000 rtn 
 
 p_mouse_dpi_led_blink_count_clean:
-017b 184085fd increase -3 ,temp 
-017c 20600000 rtn 
+01b0 184085fd increase -3 ,temp 
+01b1 20600000 rtn 
 
 p_mouse_commbination_key_process:
-017d 6fe0c938 fetch 1 ,mem_device_flag 
-017e c0000183 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
-017f 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0180 c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
-0181 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
-0182 20200186 branch p_mouse_commbination_key_start 
+01b2 6fe0c938 fetch 1 ,mem_device_flag 
+01b3 c00001b8 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
+01b4 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01b5 c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
+01b6 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
+01b7 202001bb branch p_mouse_commbination_key_start 
 
 p_mouse_24g_commbination_key_process:
-0183 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0184 c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
-0185 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
+01b8 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+01b9 c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
+01ba 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
 
 p_mouse_commbination_key_start:
-0186 6048cb9d storet 1 ,mem_mouse_commbination_key 
-0187 20404115 call mouse_check_key_gpio 
-0188 1fe17e07 and pdata ,0x07 ,pdata 
-0189 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
-018a 98467c00 isub temp ,null 
-018b 2022818d branch p_mouse_commbination_key_down ,zero 
-018c 202044eb branch mouse_commbination_key_up 
+01bb 6048cb9d storet 1 ,mem_mouse_commbination_key 
+01bc 20404115 call mouse_check_key_gpio 
+01bd 1fe17e07 and pdata ,0x07 ,pdata 
+01be 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
+01bf 98467c00 isub temp ,null 
+01c0 202281c2 branch p_mouse_commbination_key_down ,zero 
+01c1 202044eb branch mouse_commbination_key_up 
 
 p_mouse_commbination_key_down:
-018d 204044f6 call mouse_combination_ui_timer 
-018e 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
-018f c1008000 rtneq commbination_key_state_down 
-0190 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
-0191 20600000 rtn 
+01c2 204044f6 call mouse_combination_ui_timer 
+01c3 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
+01c4 c1008000 rtneq commbination_key_state_down 
+01c5 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
+01c6 20600000 rtn 
 
 p_mouse_check_no_data_timeout_timer:
-0192 6fe0c92a fetch 1 ,mem_usb_addr 
-0193 c3838000 rtnbit1 7 
-0194 da604ab2 arg mem_mouse_no_data_timer ,regc 
-0195 da400197 arg p_mouse_check_no_data_timeout ,regb 
-0196 20203191 branch timer_single_step_2b 
+01c7 6fe0c92a fetch 1 ,mem_usb_addr 
+01c8 c3838000 rtnbit1 7 
+01c9 da604ab2 arg mem_mouse_no_data_timer ,regc 
+01ca da4001cc arg p_mouse_check_no_data_timeout ,regb 
+01cb 20203191 branch timer_single_step_2b 
 
 p_mouse_check_no_data_timeout:
-0197 6fe0c938 fetch 1 ,mem_device_flag 
-0198 c00000d8 beq mode_24g_device ,p_mouse_24g_hibernate_set 
-0199 2020431b branch mouse_disconnect 
+01cc 6fe0c938 fetch 1 ,mem_device_flag 
+01cd c00000fe beq mode_24g_device ,p_mouse_24g_hibernate_set 
+01ce 2020431b branch mouse_disconnect 
 
 p_mouse_start_discovery:
-019a 6fe1478c fetch 2 ,mem_ui_state_map 
-019b 2feffe0b isolate1 ui_state_ble_adv ,pdata 
-019c 2040c581 call mouse_stop_le_adv ,true 
-019d 6fe1478c fetch 2 ,mem_ui_state_map 
-019e 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
-019f 2040c322 call mouse_cancel_reconnect ,true 
-01a0 20204554 branch mouse_start_discovery + 1 
+01cf 6fe1478c fetch 2 ,mem_ui_state_map 
+01d0 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+01d1 2040c581 call mouse_stop_le_adv ,true 
+01d2 6fe1478c fetch 2 ,mem_ui_state_map 
+01d3 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+01d4 2040c322 call mouse_cancel_reconnect ,true 
+01d5 20204554 branch mouse_start_discovery + 1 
 
 p_ui_timer_check:
-01a1 6fe0cbe2 fetch 1 ,mem_power_on_flag 
-01a2 245a7861 ncall ui_timer_init ,blank 
-01a3 704be200 jam 0 ,mem_power_on_flag 
-01a4 20207851 branch ui_timer_check + 1 
+01d6 6fe0cbe2 fetch 1 ,mem_power_on_flag 
+01d7 245a7861 ncall ui_timer_init ,blank 
+01d8 704be200 jam 0 ,mem_power_on_flag 
+01d9 20207851 branch ui_timer_check + 1 
 
 p_hid_rx_process:
-01a5 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
-01a6 1fe20c00 copy pdata ,contr 
-01a7 efe08006 ifetch 1 ,contr 
-01a8 67e0c5f5 store 1 ,mem_l2cap_rcv_hidtype 
-01a9 1fe1040f and pdata ,0x0f ,temp 
-01aa 1ff1fe00 rshift4 pdata ,pdata 
-01ab c00481ad beq hid_type_set_idle ,p_hid_rx_process_handshake 
-01ac 20204d93 branch hid_rx_process + 7 
+01da 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
+01db 1fe20c00 copy pdata ,contr 
+01dc efe08006 ifetch 1 ,contr 
+01dd 67e0c5f5 store 1 ,mem_l2cap_rcv_hidtype 
+01de 1fe1040f and pdata ,0x0f ,temp 
+01df 1ff1fe00 rshift4 pdata ,pdata 
+01e0 c00481e2 beq hid_type_set_idle ,p_hid_rx_process_handshake 
+01e1 20204d93 branch hid_rx_process + 7 
 
 p_hid_rx_process_handshake:
-01ad da200001 arg 1 ,rega 
-01ae 20404dc0 call hid_malloc_tx_buff 
-01af 6fe144dc fetch 2 ,mem_hid_ctrl_remote_cid 
-01b0 e7e10005 istore 2 ,contw 
-01b1 58000000 setarg 0 
-01b2 e7e08005 istore 1 ,contw 
-01b3 70095001 jam 1 ,mem_ui_data_txbuff_length 
-01b4 6fe0c4e2 fetch 1 ,mem_hid_control_state 
-01b5 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
-01b6 67e0c4e2 store 1 ,mem_hid_control_state 
-01b7 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
-01b8 20207871 branch ui_ipc_send_event 
+01e2 da200001 arg 1 ,rega 
+01e3 20404dc0 call hid_malloc_tx_buff 
+01e4 6fe144dc fetch 2 ,mem_hid_ctrl_remote_cid 
+01e5 e7e10005 istore 2 ,contw 
+01e6 58000000 setarg 0 
+01e7 e7e08005 istore 1 ,contw 
+01e8 70095001 jam 1 ,mem_ui_data_txbuff_length 
+01e9 6fe0c4e2 fetch 1 ,mem_hid_control_state 
+01ea 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
+01eb 67e0c4e2 store 1 ,mem_hid_control_state 
+01ec 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
+01ed 20207871 branch ui_ipc_send_event 
 
 p_le_slave_match:
-01b9 6fe0c3dd fetch 1 ,mem_le_md_count 
-01ba 1fe0fe01 pincrease 1 
-01bb 67e0c3dd store 1 ,mem_le_md_count 
-01bc c006165a beq le_md_max_count ,le_slave_cont 
-01bd 2040191b call le_acknowledge 
-01be 2040196a call le_prepare_tx 
-01bf 6fe082bd fetch 1 ,mem_le_tx_phy 
-01c0 2040168b call le_enable_phy_by_pdata 
-01c1 20401838 call le_transmit 
-01c2 20201655 branch le_slave_match + 10 
+01ee 6fe0c3dd fetch 1 ,mem_le_md_count 
+01ef 1fe0fe01 pincrease 1 
+01f0 67e0c3dd store 1 ,mem_le_md_count 
+01f1 c006165a beq le_md_max_count ,le_slave_cont 
+01f2 2040191b call le_acknowledge 
+01f3 2040196a call le_prepare_tx 
+01f4 6fe082bd fetch 1 ,mem_le_tx_phy 
+01f5 2040168b call le_enable_phy_by_pdata 
+01f6 20401838 call le_transmit 
+01f7 20201655 branch le_slave_match + 10 
 
 p_le_parse_l2cap:
-01c3 efe10006 ifetch 2 ,contr 
-01c4 c00201c6 beq le_l2cap_cid_att ,p_le_parse_att 
-01c5 202019e4 branch le_parse_l2cap + 10 
+01f8 efe10006 ifetch 2 ,contr 
+01f9 c00201fb beq le_l2cap_cid_att ,p_le_parse_att 
+01fa 202019e4 branch le_parse_l2cap + 10 
 
 p_le_parse_att:
-01c6 efe18006 ifetch 3 ,contr 
-01c7 67e1c436 store 3 ,mem_le_att_opcode 
-01c8 c00501cb beq attop_read_request ,p_le_parse_att_read_request 
-01c9 c00901da beq attop_write_request ,p_le_parse_att_write_request 
-01ca 20201cd3 branch le_parse_att + 2 
+01fb efe18006 ifetch 3 ,contr 
+01fc 67e1c436 store 3 ,mem_le_att_opcode 
+01fd c0050200 beq attop_read_request ,p_le_parse_att_read_request 
+01fe c009020f beq attop_write_request ,p_le_parse_att_write_request 
+01ff 20201cd3 branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-01cb 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-01cc c31d9de7 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-01cd 20401e8d call le_check_encrypt_state 
-01ce 68494437 fetcht 2 ,mem_le_att_handle 
-01cf 6fe0c3c0 fetch 1 ,mem_le_configuration 
-01d0 c28181d5 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+0200 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0201 c31d9de7 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+0202 20401e8d call le_check_encrypt_state 
+0203 68494437 fetcht 2 ,mem_le_att_handle 
+0204 6fe0c3c0 fetch 1 ,mem_le_configuration 
+0205 c281820a bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-01d1 6fe14437 fetch 2 ,mem_le_att_handle 
-01d2 c0181ec8 beq 0x30 ,le_send_att_error_response_notfound 
-01d3 68494437 fetcht 2 ,mem_le_att_handle 
-01d4 20201deb branch le_send_att_read_response 
+0206 6fe14437 fetch 2 ,mem_le_att_handle 
+0207 c0181ec8 beq 0x30 ,le_send_att_error_response_notfound 
+0208 68494437 fetcht 2 ,mem_le_att_handle 
+0209 20201deb branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-01d5 6fe143d1 fetch 2 ,mem_le_pairing_handle 
-01d6 98467c00 isub temp ,null 
-01d7 242281d1 nbranch p_le_send_att_read_response ,zero 
-01d8 243401d1 nbranch p_le_send_att_read_response ,user 
-01d9 20201e10 branch le_send_att_read_response_error_insufficient_auth 
+020a 6fe143d1 fetch 2 ,mem_le_pairing_handle 
+020b 98467c00 isub temp ,null 
+020c 24228206 nbranch p_le_send_att_read_response ,zero 
+020d 24340206 nbranch p_le_send_att_read_response ,user 
+020e 20201e10 branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-01da 18c22200 copy contr ,rega 
-01db 6fe143d4 fetch 2 ,mem_le_l2cap_size 
-01dc 1fe0a5fd add pdata ,-3 ,regb 
-01dd 20401a25 call le_writeatt_cb 
-01de 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01df c07f9e73 beq 0xff ,le_send_att_write_response_check_auth 
-01e0 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-01e1 203a1e73 branch le_send_att_write_response_check_auth ,blank 
-01e2 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
-01e3 c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-01e4 5800001a setarg 0x001a 
-01e5 68494437 fetcht 2 ,mem_le_att_handle 
-01e6 98467c00 isub temp ,null 
-01e7 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
-01e8 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
-01e9 20201ec9 branch le_send_att_error_response 
+020f 18c22200 copy contr ,rega 
+0210 6fe143d4 fetch 2 ,mem_le_l2cap_size 
+0211 1fe0a5fd add pdata ,-3 ,regb 
+0212 20401a25 call le_writeatt_cb 
+0213 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0214 c07f9e73 beq 0xff ,le_send_att_write_response_check_auth 
+0215 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0216 203a1e73 branch le_send_att_write_response_check_auth ,blank 
+0217 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
+0218 c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0219 5800001a setarg 0x001a 
+021a 68494437 fetcht 2 ,mem_le_att_handle 
+021b 98467c00 isub temp ,null 
+021c 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
+021d 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
+021e 20201ec9 branch le_send_att_error_response 
 
 p_g24_lpm_wait:
-01ea 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
-01eb 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
-01ec 202026bc branch g24_lpm_wait + 1 
+021f 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
+0220 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
+0221 202026bc branch g24_lpm_wait + 1 
 
 p_mouse_motion:
-01ed 78547c00 disable user 
-01ee 58000000 setarg 0 
-01ef 67e348d1 store 6 ,mem_mouse_x 
-01f0 20404240 call mouse_check_sensor_data 
-01f1 2040408e call mouse_dpi_config 
-01f2 20203f75 branch mouse_motion + 5 
+0222 78547c00 disable user 
+0223 58000000 setarg 0 
+0224 67e348d1 store 6 ,mem_mouse_x 
+0225 20404240 call mouse_check_sensor_data 
+0226 2040408e call mouse_dpi_config 
+0227 20203f75 branch mouse_motion + 5 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/mouse_pubulic/program/patch.prog	(revision 781)
+++ /YC1308AC/branch/mouse_project/mouse_pubulic/program/patch.prog	(working copy)
@@ -228,7 +228,7 @@
 	call g24_txdata_prep
 	nbranch p_g24_nodata_transmit,user
 p_g24_transmit_start:
-	call g24_transmit_process
+	call p_g24_transmit_process
 	call power_ctrl_start
 	fetch 1,mem_sensor_shutdown_flag
 	nbranch p_g24_short_sleep,blank
@@ -242,6 +242,33 @@
 	call clear_wake
 	fetch 3,mem_24g_short_sleep_set
 	branch g24_long_sleep2
+
+p_g24_transmit_process:
+	jam 0,mem_24g_retry
+p_g24_transmit_loop:
+	fetchr timeup,2,mem_param_rx_setup
+	until clkn_rt,meet
+	call g24_transmit_receive_ack
+	fetch 1,mem_24g_no_ack	//tx noack
+	beq no_ack_24g,g24_transmit_no_ack
+	nbranch g24_retransmit,sync
+	nbranch g24_retransmit,user3
+	call g24_ackpayload_parse
+	call p_mouse_wakeup_24g
+	branch g24_transmit_no_ack
+
+p_mouse_wakeup_24g:
+	fetch 1,mem_sensor_shutdown_flag
+	ncall p_mouse_wakeup_24g_from_long_sleep,blank
+	jam 0,mem_sensor_shutdown_flag
+	rtn	
+	
+p_mouse_wakeup_24g_from_long_sleep:
+	call mouse_init_sensor_wakeup
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+	branch p_mouse_wheel_set_wakeup
+	
 /////////////////////////////////// g24 250Hz use lpm//////////////////////////////////////
 	
 p_mouse_app_enter_hibernate:	// 1.3mA hibernate after sensroe reset
@@ -267,7 +294,10 @@
 	call gpio_pd_idle
 	arg 19,temp
 	call mouse_gpio_config_input_pu
-	branch p_mouse_gpio_set_high_impedance
+	call p_mouse_gpio_set_high_impedance
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+	branch p_mouse_wheel_clr_wakeup
 
 p_mouse_gpio_set_high_impedance:
 	fetch 3,mem_mouse_set_high_impedance_bit_set
@@ -285,6 +315,26 @@
 	loop p_mouse_gpio_set_high_impedance_bit_loop
 	rtn
 
+p_mouse_wheel_clr_wakeup:
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_clr_wake
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_clr_wake
+		
+	fetch 1,mem_whee_a_data_gpio
+	arg gpcfg_pulldown,temp
+	call gpio_config_function_int
+	fetch 1,mem_whee_b_data_gpio
+	arg gpcfg_pulldown,temp
+	branch gpio_config_function_int
+
+p_mouse_wheel_set_wakeup:
+	fetch 1,mem_whee_a_data_gpio
+	arg gpcfg_pullup,temp
+ 	call gpio_config_function_int
+	fetch 1,mem_whee_b_data_gpio
+	arg gpcfg_pullup,temp
+ 	branch gpio_config_function_int
 
 p_mouse_lpm_before_common:
 	fetcht 1,mem_whee_a_data_gpio		//reinit gpio pu after disable wheel wakeup
@@ -298,8 +348,6 @@
  	call gpio_config_function_int
 	branch mouse_lpm_before_common_next
 
-
-
 p_mouse_24g_hibernate_set:
 	jam 0,mem_24g_attempt_fail_flag
 	call g24_transmit_next_packet
@@ -404,7 +452,9 @@
 	nbranch p_mouse_24g_hibernate_set,blank
 	fetch 1,mem_24g_reconn_type
 	beq FAST_CONN_AND_3_0_ADDR,p_mouse_24g_fast_conn_attempt_fail
-	branch mouse_24g_attempt_fail+4
+	beq PAIR_AND_3_0_ADDR,p_mouse_24g_auto_pair_attempt_fail
+	beq RECEIVER_AND_3_0_ADDR,p_mouse_reconn_dongle_attempt_fail
+	branch mouse_24g_attempt_fail_enter_hibernate
 
 p_mouse_24g_fast_conn_attempt_fail:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
@@ -416,12 +466,30 @@
 	isub temp,null
 	branch mouse_24g_start_pair_mode,zero
 	branch mouse_24g_reconn_dongle_start
+
+p_mouse_24g_auto_pair_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_attempt_fail_enter_hibernate
+	fetch 1,mem_device_number
+	beq 1,p_mouse_24g_attempt_fail_enter_hibernate		//24g first mode and only 2.4g device
+	branch mouse_24g_first_bluetooth_reconnect
+
+p_mouse_reconn_dongle_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_attempt_fail_enter_hibernate
+	bbit1 MOUSE_ENABLE_EEPROM,p_mouse_24g_attempt_fail_enter_hibernate
+	bbit1 MOUSE_ENABLE_FLASH,p_mouse_24g_attempt_fail_enter_hibernate
+	branch mouse_24g_start_auto_pair+1
+
+p_mouse_24g_attempt_fail_enter_hibernate:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL,mouse_24g_attempt_fail_enter_hibernate
+	branch p_mouse_24g_hibernate_set
 	
 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
 	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING, mouse_24g_first_start_auto_pair_mode
Index: sched/mouse.dat
===================================================================
--- /YC1308AC/branch/mouse_project/mouse_pubulic/sched/mouse.dat	(revision 781)
+++ /YC1308AC/branch/mouse_project/mouse_pubulic/sched/mouse.dat	(working copy)
@@ -86,6 +86,7 @@
 #bit1 MOUSE_ENABLE_XY_OFFSET
 #bit2 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
 #bit3 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+#bit4 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
 
 
 mem_mouse_flag:
