Index: format/app_mouse.format
===================================================================
--- /branch/flip_pen/format/app_mouse.format	(revision 2872)
+++ /branch/flip_pen/format/app_mouse.format	(working copy)
@@ -336,6 +336,8 @@
 
 1 mem_low_electricity
 1 mem_charging
+1 mem_device_change
+1 mem_device_change_flag
 
 
 0 mem_key_release_flag
@@ -479,6 +481,7 @@
 0X64 MOUSE_FAST_CONN_FLAG_OFFSET	//1byte   MOUSE_FAST_CONN_FLAG_OFFSET
 0X65 MOUSE_LATEST_MODE_OFFSET	//1byte
 0x66 MOUSE_HIBERNATE_FLAG_EEPROM_OFFSET	//1byte
+0x67 MOUSE_DEVICE_CHANGE_EEPROM_OFFSET
 0X6a MOUSE_KEY_STAUS_EEPROM_OFFSET
 
 // Sensor id number
Index: output/eeprom.dat
===================================================================
--- /branch/flip_pen/output/eeprom.dat	(revision 2872)
+++ /branch/flip_pen/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-86
+8e
 1b
 c2
 84
@@ -23,11 +23,11 @@
 c0
 42
 86
-df
+e1
 c0
 44
 86
-b2
+b4
 c0
 50
 80
@@ -46,20 +46,20 @@
 cf
 c0
 73
-04
-fa
+05
+00
 c0
 75
 05
-a7
+a9
 c0
 75
 85
-af
+b1
 c0
 76
 05
-c9
+cb
 20
 20
 2a
@@ -67,47 +67,47 @@
 c0
 1c
 85
-cd
+cf
 c0
 21
 85
-d5
+d7
 c0
 25
 05
-db
+dd
 c0
 2b
 85
-de
+e0
 c0
 2c
 85
-ee
+f0
 c0
 31
 85
-fb
+fd
 c0
 33
 06
-29
+2b
 c0
 33
 86
-48
+4a
 c0
 35
 06
-5b
+5d
 c0
 3b
 86
-65
+67
 c0
 7d
 06
-76
+78
 20
 20
 2a
@@ -239,7 +239,7 @@
 68
 00
 cd
-0f
+11
 c2
 80
 80
@@ -251,7 +251,7 @@
 68
 00
 cd
-00
+02
 c0
 00
 80
@@ -275,7 +275,7 @@
 68
 00
 cb
-d0
+d2
 c1
 ff
 80
@@ -283,7 +283,7 @@
 20
 40
 06
-88
+8a
 68
 00
 ca
@@ -346,7 +346,7 @@
 67
 70
 4b
-ec
+ee
 00
 1a
 20
@@ -355,7 +355,7 @@
 60
 00
 cb
-c0
+c2
 20
 40
 01
@@ -363,7 +363,7 @@
 60
 00
 cb
-5c
+5e
 1a
 42
 0c
@@ -395,7 +395,7 @@
 68
 00
 cb
-2f
+31
 20
 7a
 00
@@ -410,7 +410,7 @@
 ea
 70
 4b
-2f
+31
 00
 20
 60
@@ -506,7 +506,7 @@
 75
 70
 4b
-2d
+2f
 01
 df
 e0
@@ -663,11 +663,11 @@
 68
 02
 4b
-e8
+ea
 68
 0a
 4d
-05
+07
 98
 46
 7c
@@ -679,14 +679,14 @@
 68
 00
 cb
-be
+c0
 c1
 84
 00
 00
 70
 4d
-0f
+11
 00
 20
 40
@@ -695,11 +695,11 @@
 68
 02
 4b
-e8
+ea
 68
 0a
 4b
-cc
+ce
 98
 46
 7c
@@ -711,11 +711,11 @@
 68
 02
 4b
-e8
+ea
 68
 0a
 4b
-f7
+f9
 98
 46
 7c
@@ -731,7 +731,7 @@
 68
 02
 4b
-a0
+a2
 20
 20
 01
@@ -762,7 +762,7 @@
 18
 70
 4d
-0f
+11
 00
 20
 40
@@ -774,7 +774,7 @@
 77
 70
 4d
-00
+02
 01
 58
 00
@@ -783,7 +783,7 @@
 60
 01
 4d
-01
+03
 20
 60
 00
@@ -803,7 +803,7 @@
 68
 01
 4d
-01
+03
 1f
 e0
 fe
@@ -811,11 +811,11 @@
 60
 01
 4d
-01
+03
 68
 09
 4d
-03
+05
 98
 46
 7c
@@ -830,7 +830,7 @@
 3f
 70
 4d
-00
+02
 00
 58
 00
@@ -839,7 +839,7 @@
 60
 01
 4d
-01
+03
 58
 00
 00
@@ -847,19 +847,19 @@
 60
 01
 4d
-03
+05
 70
 4b
-fb
+fd
 00
 68
 00
 cb
-e6
+e8
 60
 00
 cb
-e5
+e7
 20
 60
 00
@@ -867,7 +867,7 @@
 68
 00
 cb
-e7
+e9
 20
 20
 00
@@ -875,7 +875,7 @@
 68
 00
 cb
-fb
+fd
 1f
 e0
 fe
@@ -883,7 +883,7 @@
 60
 00
 cb
-fb
+fd
 c0
 02
 00
@@ -899,7 +899,7 @@
 68
 00
 cb
-ec
+ee
 20
 5a
 00
@@ -907,7 +907,7 @@
 68
 00
 cd
-00
+02
 c1
 00
 80
@@ -923,7 +923,7 @@
 68
 01
 cb
-ef
+f1
 20
 20
 2d
@@ -955,7 +955,7 @@
 68
 00
 cd
-00
+02
 c0
 00
 ff
@@ -1002,11 +1002,11 @@
 00
 70
 4b
-ec
+ee
 01
 70
 4c
-f5
+f7
 00
 20
 40
@@ -1015,7 +1015,7 @@
 60
 00
 cb
-5c
+5e
 58
 00
 00
@@ -1023,23 +1023,23 @@
 60
 03
 cb
-5d
+5f
 68
 02
 4b
-f7
+f9
 60
 02
 4b
-64
+66
 70
 4b
-c0
+c2
 0c
 68
 00
 cb
-c1
+c3
 79
 20
 7e
@@ -1047,7 +1047,7 @@
 60
 00
 cb
-c1
+c3
 20
 40
 01
@@ -1058,16 +1058,16 @@
 42
 70
 4c
-f6
+f8
 01
 70
 4c
-f8
+fa
 00
 68
 00
 cb
-c1
+c3
 1f
 e1
 7e
@@ -1075,7 +1075,7 @@
 60
 00
 cb
-c1
+c3
 20
 60
 00
@@ -1083,7 +1083,7 @@
 68
 00
 cb
-c1
+c3
 79
 20
 7e
@@ -1091,11 +1091,11 @@
 60
 00
 cb
-c1
+c3
 60
 00
 cb
-7c
+7e
 20
 60
 00
@@ -1103,7 +1103,7 @@
 68
 00
 cb
-c1
+c3
 c4
 02
 00
@@ -1111,7 +1111,7 @@
 68
 00
 cb
-c1
+c3
 79
 3f
 fe
@@ -1123,15 +1123,15 @@
 20
 40
 06
-1b
+1d
 68
 08
 cb
-cb
+cd
 68
 00
 cb
-e8
+ea
 1f
 e1
 7e
@@ -1143,7 +1143,7 @@
 58
 00
 4b
-d1
+d3
 9a
 20
 fe
@@ -1159,7 +1159,7 @@
 60
 00
 cb
-ca
+cc
 18
 40
 84
@@ -1171,7 +1171,7 @@
 60
 08
 cb
-cb
+cd
 20
 60
 00
@@ -1179,7 +1179,7 @@
 68
 00
 cc
-f5
+f7
 c0
 80
 81
@@ -1187,7 +1187,7 @@
 68
 00
 cc
-f3
+f5
 1f
 e0
 fe
@@ -1195,7 +1195,7 @@
 60
 00
 cc
-f3
+f5
 c0
 02
 01
@@ -1206,7 +1206,7 @@
 18
 70
 4c
-05
+07
 02
 20
 20
@@ -1215,10 +1215,10 @@
 20
 40
 06
-1b
+1d
 70
 4c
-f3
+f5
 00
 20
 20
@@ -1226,15 +1226,15 @@
 09
 70
 4c
-f8
+fa
 02
 70
 4c
-f6
+f8
 01
 70
 4c
-f5
+f7
 00
 20
 20
@@ -1243,7 +1243,7 @@
 68
 00
 cc
-f7
+f9
 c0
 01
 81
@@ -1251,7 +1251,7 @@
 68
 00
 cb
-c1
+c3
 2f
 ec
 00
@@ -1263,7 +1263,7 @@
 68
 00
 cc
-f7
+f9
 c0
 00
 81
@@ -1279,7 +1279,7 @@
 68
 00
 cb
-d0
+d2
 c1
 ff
 80
@@ -1303,7 +1303,7 @@
 68
 00
 cc
-f6
+f8
 c1
 80
 80
@@ -1311,18 +1311,18 @@
 68
 00
 cc
-f8
+fa
 c1
 80
 00
 00
 70
 4c
-f7
+f9
 01
 70
 4c
-05
+07
 04
 20
 20
@@ -1331,7 +1331,7 @@
 68
 00
 cc
-f8
+fa
 20
 3a
 01
@@ -1343,14 +1343,14 @@
 60
 00
 cc
-f8
+fa
 70
 4c
-f7
+f9
 02
 70
 4c
-05
+07
 04
 20
 20
@@ -1358,19 +1358,19 @@
 18
 70
 4c
-f7
+f9
 03
 68
 00
 cc
-f5
+f7
 24
 3a
 01
 25
 70
 4c
-05
+07
 02
 20
 20
@@ -1379,7 +1379,7 @@
 68
 00
 cb
-d0
+d2
 c0
 ff
 81
@@ -1394,7 +1394,7 @@
 29
 70
 4b
-c5
+c7
 01
 20
 60
@@ -1403,7 +1403,7 @@
 68
 01
 4c
-f1
+f3
 20
 40
 7f
@@ -1415,7 +1415,7 @@
 68
 03
 cb
-5d
+5f
 20
 7a
 00
@@ -1426,7 +1426,7 @@
 e7
 70
 4b
-c9
+cb
 00
 d9
 60
@@ -1459,11 +1459,11 @@
 20
 40
 06
-82
+84
 68
 00
 cb
-bf
+c1
 1f
 e0
 fe
@@ -1471,7 +1471,7 @@
 60
 00
 cb
-bf
+c1
 20
 40
 01
@@ -1479,7 +1479,7 @@
 68
 00
 cb
-d0
+d2
 c0
 ff
 81
@@ -1495,11 +1495,11 @@
 60
 02
 4b
-c5
+c7
 60
 00
 cc
-f4
+f6
 20
 60
 00
@@ -1511,7 +1511,7 @@
 d8
 a0
 4b
-5c
+5e
 20
 20
 7e
@@ -1531,7 +1531,7 @@
 68
 02
 4b
-e8
+ea
 98
 00
 12
@@ -1563,7 +1563,7 @@
 68
 00
 cb
-ec
+ee
 24
 7a
 00
@@ -1571,7 +1571,7 @@
 68
 01
 4b
-c6
+c8
 1f
 e0
 fe
@@ -1579,11 +1579,11 @@
 60
 01
 4b
-c6
+c8
 68
 00
 cb
-c7
+c9
 c2
 82
 2d
@@ -1591,7 +1591,7 @@
 68
 00
 cb
-d0
+d2
 c0
 ff
 81
@@ -1607,7 +1607,7 @@
 68
 00
 cb
-c6
+c8
 c1
 ff
 80
@@ -1619,7 +1619,7 @@
 60
 01
 4b
-c6
+c8
 20
 20
 2d
@@ -1627,11 +1627,11 @@
 20
 40
 06
-a9
+ab
 20
 40
 06
-1b
+1d
 20
 20
 01
@@ -1639,7 +1639,7 @@
 68
 00
 cb
-c9
+cb
 1f
 e6
 7c
@@ -1655,7 +1655,7 @@
 60
 00
 cb
-c9
+cb
 c0
 01
 01
@@ -1679,7 +1679,7 @@
 68
 00
 cb
-3b
+3d
 1f
 e9
 7e
@@ -1687,7 +1687,7 @@
 60
 00
 cb
-be
+c0
 1f
 e0
 fe
@@ -1695,7 +1695,7 @@
 d8
 c0
 4b
-3b
+3d
 98
 c0
 8c
@@ -1707,11 +1707,11 @@
 60
 01
 cb
-fd
+ff
 68
 00
 cb
-3b
+3d
 1f
 e3
 7e
@@ -1723,11 +1723,11 @@
 60
 00
 cc
-03
+05
 68
 00
 cb
-be
+c0
 20
 7a
 00
@@ -1739,11 +1739,11 @@
 d8
 c0
 4b
-3c
+3e
 d8
 a0
 4b
-9e
+a0
 20
 20
 7f
@@ -1754,20 +1754,20 @@
 04
 70
 4b
-bf
+c1
 00
 70
 4b
-ca
+cc
 4e
 68
 02
 4b
-cc
+ce
 60
 02
 4b
-e8
+ea
 da
 20
 00
@@ -1779,7 +1779,7 @@
 d8
 c0
 4b
-e8
+ea
 e8
 c0
 80
@@ -1799,15 +1799,15 @@
 60
 01
 4c
-71
+73
 68
 00
 cc
-71
+73
 68
 08
 cc
-72
+74
 98
 40
 fe
@@ -1815,7 +1815,7 @@
 60
 00
 cc
-73
+75
 20
 60
 00
@@ -1823,7 +1823,7 @@
 68
 00
 cb
-c5
+c7
 c0
 00
 ff
@@ -1831,7 +1831,7 @@
 68
 00
 cb
-d0
+d2
 c0
 00
 81
@@ -1850,7 +1850,7 @@
 8c
 70
 4b
-d0
+d2
 11
 70
 11
@@ -1862,7 +1862,7 @@
 d5
 70
 4b
-d0
+d2
 12
 70
 11
@@ -1874,7 +1874,7 @@
 d5
 70
 4b
-d0
+d2
 13
 70
 11
@@ -1883,7 +1883,7 @@
 68
 00
 cb
-c1
+c3
 1f
 e1
 7e
@@ -1895,7 +1895,7 @@
 68
 02
 4b
-f7
+f9
 60
 02
 11
@@ -1927,11 +1927,11 @@
 20
 40
 06
-7f
+81
 68
 00
 cb
-d0
+d2
 c1
 7f
 80
@@ -1954,7 +1954,7 @@
 00
 70
 4b
-d0
+d2
 02
 20
 20
@@ -1962,7 +1962,7 @@
 73
 70
 4b
-d0
+d2
 03
 20
 20
@@ -1970,7 +1970,7 @@
 73
 70
 4b
-d0
+d2
 ff
 70
 0a
@@ -2003,7 +2003,7 @@
 68
 00
 cd
-0f
+11
 79
 20
 7e
@@ -2011,14 +2011,14 @@
 60
 00
 cd
-0f
+11
 20
 40
 02
 16
 70
 4b
-32
+34
 01
 58
 00
@@ -2035,7 +2035,7 @@
 68
 00
 cb
-c1
+c3
 60
 00
 91
@@ -2043,7 +2043,7 @@
 68
 02
 4b
-f7
+f9
 60
 02
 11
@@ -2082,8 +2082,8 @@
 00
 68
 00
-cc
-fe
+cd
+00
 1f
 e0
 fe
@@ -2094,8 +2094,8 @@
 03
 60
 00
-cc
-fe
+cd
+00
 c0
 00
 02
@@ -2115,11 +2115,11 @@
 68
 02
 4b
-f7
+f9
 60
 02
 4b
-e8
+ea
 68
 00
 ca
@@ -2127,7 +2127,7 @@
 60
 00
 cb
-cb
+cd
 20
 40
 02
@@ -2155,11 +2155,11 @@
 68
 02
 4d
-05
+07
 60
 02
 4b
-e8
+ea
 68
 00
 ca
@@ -2167,7 +2167,7 @@
 60
 00
 cb
-cb
+cd
 20
 40
 02
@@ -2186,7 +2186,7 @@
 26
 70
 4d
-0f
+11
 00
 20
 40
@@ -2203,7 +2203,7 @@
 60
 08
 cb
-c0
+c2
 18
 42
 72
@@ -2211,7 +2211,7 @@
 d8
 a0
 4b
-5c
+5e
 20
 20
 2d
@@ -2219,7 +2219,7 @@
 68
 00
 cb
-c0
+c2
 1f
 e0
 fe
@@ -2227,19 +2227,19 @@
 60
 00
 cb
-c2
+c4
 68
 00
 cb
-c1
+c3
 60
 00
 cb
-7c
+7e
 68
 00
 cb
-c0
+c2
 1f
 e9
 fe
@@ -2247,7 +2247,7 @@
 68
 08
 cb
-bf
+c1
 18
 41
 04
@@ -2263,7 +2263,7 @@
 68
 08
 cb
-fc
+fe
 98
 40
 fe
@@ -2275,7 +2275,7 @@
 68
 00
 cb
-c0
+c2
 98
 00
 72
@@ -2283,7 +2283,7 @@
 d8
 c0
 4b
-5c
+5e
 20
 20
 7f
@@ -2307,7 +2307,7 @@
 68
 00
 cb
-ca
+cc
 20
 20
 53
@@ -2339,7 +2339,7 @@
 68
 01
 4b
-c3
+c5
 98
 00
 36
@@ -2375,11 +2375,11 @@
 60
 00
 cc
-74
+76
 68
 08
 cc
-73
+75
 98
 46
 7c
@@ -2395,15 +2395,15 @@
 60
 00
 cb
-3a
+3c
 68
 00
 cb
-3a
+3c
 68
 08
 cb
-c1
+c3
 a8
 40
 0e
@@ -2455,7 +2455,7 @@
 60
 00
 cc
-fb
+fd
 1a
 22
 0a
@@ -2519,7 +2519,7 @@
 68
 00
 cc
-fb
+fd
 1f
 e2
 22
@@ -2527,11 +2527,11 @@
 68
 08
 cc
-7b
+7d
 58
 00
 4c
-82
+84
 98
 40
 8a
@@ -2555,7 +2555,7 @@
 60
 08
 cc
-7b
+7d
 20
 60
 00
@@ -2591,7 +2591,7 @@
 68
 02
 4b
-e8
+ea
 98
 00
 12
@@ -2607,7 +2607,7 @@
 68
 08
 cb
-ca
+cc
 20
 40
 29
@@ -2663,7 +2663,7 @@
 68
 00
 cc
-73
+75
 08
 00
 86
@@ -2671,7 +2671,7 @@
 68
 00
 cb
-c2
+c4
 98
 00
 72
@@ -2679,7 +2679,7 @@
 d8
 c0
 4b
-7c
+7e
 e8
 c0
 80
@@ -2731,7 +2731,7 @@
 68
 0a
 4b
-e1
+e3
 1c
 42
 7e
@@ -2751,11 +2751,11 @@
 68
 02
 4b
-e1
+e3
 68
 08
 cb
-e5
+e7
 98
 40
 84
@@ -2779,7 +2779,7 @@
 60
 02
 4b
-e1
+e3
 20
 20
 7f
@@ -2907,11 +2907,11 @@
 60
 00
 cc
-77
+79
 20
 40
 06
-7f
+81
 20
 40
 02
@@ -2942,7 +2942,7 @@
 e4
 70
 4b
-33
+35
 00
 68
 00
@@ -2967,7 +2967,7 @@
 68
 00
 cc
-77
+79
 60
 00
 c1
@@ -2995,7 +2995,7 @@
 20
 40
 05
-c7
+c9
 20
 40
 34
@@ -3007,7 +3007,7 @@
 20
 40
 05
-c3
+c5
 20
 20
 7d
@@ -3018,7 +3018,7 @@
 b4
 70
 4b
-d0
+d2
 01
 20
 60
@@ -3031,7 +3031,7 @@
 60
 02
 4b
-f7
+f9
 20
 40
 3e
@@ -3039,11 +3039,11 @@
 20
 40
 05
-8d
+95
 20
 40
 05
-9d
+a1
 20
 40
 3e
@@ -3167,7 +3167,7 @@
 c0
 7f
 85
-8b
+91
 20
 60
 00
@@ -3191,7 +3191,7 @@
 60
 01
 4d
-03
+05
 20
 60
 00
@@ -3203,7 +3203,7 @@
 60
 01
 4d
-03
+05
 24
 55
 83
@@ -3231,7 +3231,7 @@
 60
 01
 4b
-e8
+ea
 e0
 a1
 00
@@ -3243,7 +3243,7 @@
 68
 00
 cd
-0f
+11
 79
 20
 7e
@@ -3251,10 +3251,10 @@
 60
 00
 cd
-0f
+11
 70
 4b
-32
+34
 00
 58
 00
@@ -3279,7 +3279,7 @@
 d8
 c0
 4b
-e8
+ea
 20
 40
 7f
@@ -3315,7 +3315,7 @@
 60
 01
 4c
-f1
+f3
 58
 00
 03
@@ -3327,7 +3327,7 @@
 58
 00
 06
-6f
+71
 60
 01
 41
@@ -3879,7 +3879,7 @@
 20
 40
 05
-bf
+c1
 20
 20
 7d
@@ -3979,7 +3979,7 @@
 20
 20
 06
-3f
+41
 20
 40
 02
@@ -3999,7 +3999,7 @@
 da
 20
 4b
-e8
+ea
 da
 40
 00
@@ -4014,7 +4014,7 @@
 00
 70
 4d
-00
+02
 00
 20
 40
@@ -4054,7 +4054,7 @@
 9b
 70
 4b
-33
+35
 01
 20
 40
@@ -4086,7 +4086,7 @@
 b9
 70
 4b
-37
+39
 01
 20
 40
@@ -4115,11 +4115,11 @@
 20
 40
 05
-8d
+95
 20
 40
 05
-9d
+a1
 d8
 40
 00
@@ -4159,7 +4159,7 @@
 da
 20
 4b
-37
+39
 da
 40
 00
@@ -4175,7 +4175,7 @@
 da
 20
 4b
-37
+39
 da
 40
 00
@@ -4191,11 +4191,11 @@
 20
 40
 04
-ce
+d4
 20
 40
 04
-b1
+b7
 20
 40
 42
@@ -4207,10 +4207,6 @@
 20
 40
 04
-86
-20
-40
-04
 56
 20
 40
@@ -4219,23 +4215,23 @@
 20
 40
 04
-6f
+72
 20
 40
 04
-b4
+8a
 20
 40
 04
-a6
+ba
 20
 40
 04
-bb
+ac
 20
 40
 04
-be
+c1
 20
 40
 04
@@ -4243,7 +4239,11 @@
 20
 40
 04
-a3
+ca
+20
+40
+04
+a9
 20
 40
 42
@@ -4251,7 +4251,7 @@
 20
 40
 05
-11
+17
 20
 7a
 00
@@ -4371,11 +4371,11 @@
 c0
 00
 85
-9b
+9f
 c0
 00
 05
-96
+9c
 c2
 80
 84
@@ -4423,7 +4423,7 @@
 da
 60
 4b
-34
+36
 da
 40
 04
@@ -4434,11 +4434,11 @@
 6d
 70
 4b
-34
+36
 05
 70
 4b
-2f
+31
 01
 20
 60
@@ -4447,7 +4447,7 @@
 68
 00
 cb
-38
+3a
 24
 7a
 00
@@ -4455,15 +4455,15 @@
 68
 00
 cb
-37
+39
 c0
 00
 84
-64
+63
 68
 08
 cb
-35
+37
 18
 46
 7c
@@ -4479,11 +4479,7 @@
 60
 08
 cb
-35
-70
-4b
-36
-01
+37
 68
 00
 c7
@@ -4495,23 +4491,27 @@
 c0
 01
 04
-6d
+70
 20
 60
 00
 00
 70
 4b
-38
+3a
 01
 70
 4b
-37
+39
 ff
 20
 20
 04
 0e
+20
+60
+00
+00
 da
 20
 00
@@ -4519,23 +4519,35 @@
 68
 00
 cb
-35
+37
 9a
 26
 7c
 00
 24
 21
-05
-96
+04
+6e
 70
 4b
-36
+38
 00
+70
+4b
+2a
+01
 20
 20
 05
-9b
+9f
+70
+4b
+38
+01
+20
+20
+05
+9c
 da
 20
 00
@@ -4544,70 +4556,74 @@
 20
 04
 68
+68
+00
+cb
+38
+24
+7a
+00
+00
 20
 40
 05
-11
+17
 20
-40
+3a
 04
-75
-1a
-22
-7e
-00
+7f
+20
+40
+05
+17
+c0
+01
+84
+83
 1f
 e1
 7e
 1f
-c2
-82
-05
-91
-20
 20
+40
 05
-8d
-20
-3a
-04
-7a
-c0
-01
-84
-7f
+97
 68
 00
 cb
 27
+68
+08
+cb
+2a
+98
+40
+fe
+00
 20
 5a
 05
-96
+9c
 20
 60
 00
 00
+70
+4b
+2a
+00
 68
 00
 cb
 29
-68
-08
-cb
-36
-98
-40
-fe
-00
 20
 5a
 05
-9b
+9f
 20
 20
 05
-8d
+95
 68
 09
 4b
@@ -4619,31 +4635,39 @@
 20
 21
 05
-96
+9c
 70
 4b
-2a
+2c
 01
 68
 00
 cb
-39
+3b
 20
 5a
 05
-1f
+25
 20
 20
 05
-9b
+9f
+68
+00
+cb
+2a
+24
+3a
+04
+8e
 20
 40
 05
-11
+17
 c0
 0a
 04
-8d
+93
 68
 00
 ca
@@ -4666,12 +4690,12 @@
 d2
 70
 4b
-2a
+2c
 01
 20
 40
 04
-93
+99
 68
 00
 c6
@@ -4695,7 +4719,7 @@
 da
 40
 04
-96
+9c
 20
 20
 33
@@ -4771,7 +4795,7 @@
 da
 40
 04
-a9
+af
 20
 20
 33
@@ -4799,11 +4823,11 @@
 20
 42
 84
-cc
+d2
 20
 40
 05
-bf
+c1
 20
 20
 43
@@ -4827,7 +4851,7 @@
 da
 40
 04
-b7
+bd
 20
 20
 33
@@ -4835,7 +4859,7 @@
 68
 00
 cb
-32
+34
 c0
 00
 83
@@ -4867,7 +4891,7 @@
 da
 40
 04
-c1
+c7
 20
 20
 33
@@ -4899,7 +4923,7 @@
 da
 40
 04
-c9
+cf
 20
 20
 33
@@ -4935,7 +4959,7 @@
 68
 00
 cb
-33
+35
 c1
 00
 00
@@ -4947,7 +4971,7 @@
 da
 40
 04
-d5
+db
 20
 20
 33
@@ -4963,7 +4987,7 @@
 20
 40
 04
-e5
+eb
 20
 40
 69
@@ -4979,7 +5003,7 @@
 20
 40
 04
-ee
+f4
 68
 00
 c2
@@ -4987,7 +5011,7 @@
 c3
 00
 04
-e0
+e6
 70
 4a
 5e
@@ -5111,7 +5135,7 @@
 20
 40
 05
-0a
+10
 20
 40
 40
@@ -5119,7 +5143,7 @@
 20
 40
 05
-a2
+a4
 1a
 22
 7e
@@ -5179,19 +5203,19 @@
 24
 5a
 05
-14
+1a
 20
 5a
 05
-19
+1f
 20
 40
 05
-11
+17
 20
 20
 05
-4f
+55
 da
 20
 00
@@ -5199,7 +5223,7 @@
 20
 40
 05
-35
+3b
 20
 20
 40
@@ -5218,7 +5242,7 @@
 15
 70
 4b
-39
+3b
 01
 20
 60
@@ -5231,7 +5255,7 @@
 60
 03
 cb
-2a
+2c
 68
 01
 4b
@@ -5243,7 +5267,7 @@
 24
 41
 05
-1f
+25
 20
 60
 00
@@ -5311,11 +5335,11 @@
 c0
 03
 85
-31
+37
 c0
 00
 05
-33
+39
 20
 60
 00
@@ -5351,7 +5375,7 @@
 20
 40
 05
-22
+28
 60
 00
 ca
@@ -5371,7 +5395,7 @@
 20
 40
 05
-22
+28
 60
 00
 ca
@@ -5391,7 +5415,7 @@
 20
 40
 05
-22
+28
 60
 00
 ca
@@ -5411,7 +5435,7 @@
 20
 40
 05
-22
+28
 60
 00
 ca
@@ -5431,7 +5455,7 @@
 20
 40
 05
-22
+28
 60
 00
 ca
@@ -5455,7 +5479,7 @@
 24
 21
 05
-70
+76
 68
 01
 4a
@@ -5471,7 +5495,7 @@
 c0
 80
 05
-65
+6b
 68
 01
 4b
@@ -5491,23 +5515,23 @@
 20
 41
 05
-1f
+25
 68
 00
 cb
-2a
+2c
 c0
 00
 85
-62
+68
 68
 00
 cb
-2d
+2f
 c0
 00
 85
-62
+68
 70
 4b
 15
@@ -5527,7 +5551,7 @@
 20
 20
 05
-60
+66
 68
 01
 4b
@@ -5535,15 +5559,15 @@
 c0
 00
 85
-69
+6f
 c0
 01
 05
-69
+6f
 20
 20
 05
-58
+5e
 1f
 ed
 7e
@@ -5563,7 +5587,7 @@
 20
 22
 85
-58
+5e
 1f
 eb
 fe
@@ -5571,7 +5595,7 @@
 20
 20
 05
-58
+5e
 68
 01
 4b
@@ -5579,11 +5603,11 @@
 c0
 01
 85
-83
+89
 c0
 00
 85
-77
+7d
 68
 01
 4b
@@ -5599,23 +5623,23 @@
 20
 20
 05
-58
+5e
 68
 00
 cb
-2b
+2d
 20
 5a
 05
-7e
+84
 68
 00
 cb
-31
+33
 c0
 00
 05
-73
+79
 68
 01
 4b
@@ -5627,15 +5651,15 @@
 20
 20
 05
-58
+5e
 70
 4b
-2b
+2d
 01
 68
 00
 cb
-31
+33
 79
 40
 7e
@@ -5643,7 +5667,7 @@
 60
 00
 cb
-31
+33
 20
 60
 00
@@ -5651,14 +5675,14 @@
 68
 00
 cb
-2c
+2e
 24
 7a
 00
 00
 70
 4b
-2c
+2e
 01
 68
 00
@@ -5667,7 +5691,7 @@
 c0
 01
 05
-8b
+91
 1f
 e0
 fe
@@ -5679,7 +5703,7 @@
 20
 20
 05
-06
+0c
 70
 4b
 19
@@ -5687,63 +5711,55 @@
 20
 20
 05
-06
+0c
 68
 08
 cb
 0e
 20
-40
-68
-0e
+20
 68
-08
-cb
 0e
 20
+40
+05
+93
+20
 20
 68
-29
+25
 c0
 88
 05
-8d
-68
-08
-cb
-0e
+95
 20
 40
+05
+93
+20
+20
 68
-0e
+29
 68
 08
 cb
-0e
+0f
 20
 20
 68
-25
+0e
 70
 4b
 10
 01
-68
-08
-cb
-0f
 20
 40
-68
-0e
-68
-08
-cb
-0f
+05
+9a
 20
 20
 68
-25
+29
 68
 00
 cb
@@ -5756,22 +5772,14 @@
 4b
 10
 00
-68
-08
-cb
-0f
 20
 40
-68
-0e
-68
-08
-cb
-0f
+05
+9a
 20
 20
 68
-29
+25
 c6
 93
 00
@@ -5875,7 +5883,7 @@
 20
 40
 05
-c7
+c9
 68
 00
 ca
@@ -5899,7 +5907,7 @@
 20
 40
 05
-c7
+c9
 d8
 c0
 4a
@@ -5938,7 +5946,7 @@
 ac
 70
 4b
-33
+35
 01
 20
 20
@@ -5971,7 +5979,7 @@
 20
 40
 06
-88
+8a
 20
 20
 53
@@ -6015,7 +6023,7 @@
 20
 40
 05
-e4
+e6
 20
 20
 55
@@ -6063,7 +6071,7 @@
 20
 21
 05
-e0
+e2
 68
 00
 c3
@@ -6075,7 +6083,7 @@
 20
 20
 05
-e2
+e4
 68
 00
 84
@@ -6087,7 +6095,7 @@
 20
 40
 05
-f3
+f5
 24
 74
 00
@@ -6135,11 +6143,11 @@
 c2
 82
 86
-1a
+1c
 20
 40
 06
-82
+84
 68
 00
 c7
@@ -6147,7 +6155,7 @@
 24
 3a
 06
-05
+07
 68
 00
 84
@@ -6155,7 +6163,7 @@
 c3
 02
 06
-09
+0b
 68
 00
 82
@@ -6163,7 +6171,7 @@
 20
 3a
 06
-09
+0b
 20
 20
 56
@@ -6191,7 +6199,7 @@
 c0
 82
 86
-0c
+0e
 70
 47
 8e
@@ -6255,11 +6263,11 @@
 20
 40
 06
-0f
+11
 68
 00
 cc
-f9
+fb
 1f
 e6
 7c
@@ -6267,11 +6275,11 @@
 24
 41
 06
-86
+88
 68
 00
 cc
-f9
+fb
 c1
 00
 00
@@ -6283,7 +6291,7 @@
 20
 20
 06
-84
+86
 68
 00
 c7
@@ -6367,7 +6375,7 @@
 c0
 01
 86
-38
+3a
 20
 20
 56
@@ -6379,11 +6387,11 @@
 c0
 00
 06
-3c
+3e
 c0
 00
 86
-43
+45
 20
 20
 5c
@@ -6443,11 +6451,11 @@
 c0
 02
 06
-4c
+4e
 c0
 03
 06
-50
+52
 20
 20
 56
@@ -6459,7 +6467,7 @@
 20
 40
 06
-22
+24
 20
 40
 7e
@@ -6475,11 +6483,11 @@
 c0
 00
 86
-54
+56
 c0
 02
 86
-56
+58
 20
 20
 5a
@@ -6559,7 +6567,7 @@
 20
 37
 06
-68
+6a
 24
 36
 d8
@@ -6639,7 +6647,7 @@
 c0
 09
 06
-7c
+7e
 20
 20
 7d
@@ -6658,11 +6666,11 @@
 bf
 70
 4c
-fc
+fe
 01
 70
 4c
-f9
+fb
 00
 20
 60
@@ -6671,7 +6679,7 @@
 68
 00
 cc
-f9
+fb
 1f
 e0
 fe
@@ -6679,14 +6687,14 @@
 60
 00
 cc
-f9
+fb
 20
 60
 00
 00
 70
 4c
-f9
+fb
 03
 20
 60
@@ -6703,7 +6711,7 @@
 da
 20
 4c
-82
+84
 20
 40
 02
@@ -6711,7 +6719,7 @@
 60
 08
 cc
-fa
+fc
 58
 00
 00
@@ -6719,7 +6727,7 @@
 c5
 13
 06
-90
+92
 58
 00
 00
@@ -6731,11 +6739,11 @@
 24
 21
 06
-a8
+aa
 68
 00
 cc
-f9
+fb
 1f
 e6
 7c
@@ -6743,15 +6751,15 @@
 24
 21
 06
-98
+9a
 68
 00
 cc
-f9
+fb
 c0
 00
 06
-a9
+ab
 20
 60
 00
@@ -6759,19 +6767,19 @@
 68
 00
 cc
-f9
+fb
 c1
 99
 00
 00
 70
 4c
-f9
+fb
 00
 68
 08
 cc
-fa
+fc
 58
 00
 00
@@ -6779,7 +6787,7 @@
 c5
 13
 06
-9f
+a1
 58
 00
 00
@@ -6795,11 +6803,11 @@
 68
 00
 cc
-fc
+fe
 c0
 00
 06
-b0
+b2
 1f
 e0
 ff
@@ -6807,11 +6815,11 @@
 60
 00
 cc
-fc
+fe
 c0
 00
 06
-b0
+b2
 70
 41
 de
@@ -6822,16 +6830,16 @@
 00
 70
 4c
-f9
+fb
 00
 68
 00
 cc
-fc
+fe
 c0
 01
 06
-ae
+b0
 1f
 e0
 fe
@@ -6839,11 +6847,11 @@
 60
 00
 cc
-fc
+fe
 c0
 00
 86
-a6
+a8
 70
 41
 de
@@ -6927,19 +6935,19 @@
 c0
 01
 06
-ca
+cc
 c0
 02
 06
-d2
+d4
 c0
 10
 06
-dc
+de
 20
 40
 06
-d7
+d9
 70
 89
 55
@@ -6991,7 +6999,7 @@
 20
 40
 06
-d7
+d9
 70
 89
 55
@@ -7048,8 +7056,8 @@
 20
 28
 fa
-4d
-69
+46
+ee
 aa
 55
 08
@@ -7329,8 +7337,8 @@
 00
 a0
 44
-48
-ac
+49
+a5
 aa
 ab
 38
@@ -7948,7 +7956,7 @@
 00
 e2
 4a
-04
+05
 00
 aa
 55
@@ -7987,14 +7995,14 @@
 55
 01
 00
-34
+36
 4b
 05
 aa
 55
 04
 00
-c1
+c3
 4b
 02
 00
@@ -8004,7 +8012,7 @@
 55
 15
 00
-cc
+ce
 4b
 20
 15
@@ -8031,7 +8039,7 @@
 55
 03
 00
-e5
+e7
 4b
 19
 19
@@ -8040,7 +8048,7 @@
 55
 03
 00
-ef
+f1
 4b
 80
 4f
@@ -8049,7 +8057,7 @@
 55
 02
 00
-05
+07
 4c
 04
 01
@@ -8057,7 +8065,7 @@
 55
 06
 00
-05
+07
 4d
 0f
 0f
@@ -8065,16 +8073,8 @@
 0f
 0f
 0f
-2f
-1f
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+60
+a8
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-31
-2c
+ea
+9d
Index: output/memmap.format
===================================================================
--- /branch/flip_pen/output/memmap.format	(revision 2872)
+++ /branch/flip_pen/output/memmap.format	(working copy)
@@ -1849,143 +1849,145 @@
 0x4b27 mem_slow_flow_flag
 0x4b28 mem_low_electricity
 0x4b29 mem_charging
-0x4b2a mem_key_release_flag
-0x4b2a key_not_send_flag
-0x4b2b mem_key_change
-0x4b2c mem_2key_change
-0x4b2d mem_packet_send_finish
-0x4b2e mem_key_sleep_flag
-0x4b2f mem_alt_key
-0x4b30 mem_alt_send_finish_flag
-0x4b31 key_long_press_frequency
-0x4b32 mem_24g_reconn_flag
-0x4b33 mem_mouse_connect_success
-0x4b34 mem_alt_tab_timer
-0x4b35 mem_device_led_timer
-0x4b36 mem_device_led_flag
-0x4b37 mem_hibernate_flag
-0x4b38 mem_not_show_device_led
-0x4b39 mem_connect_staus
-0x4b3a mem_24g_rxbuf
-0x4b5c mem_24g_txbuf
-0x4b7c mem_24g_txpayload
-0x4b9e mem_24g_rxpayload
-0x4bbe mem_24g_rxdata_length
-0x4bbf mem_24g_pid
-0x4bc0 mem_24g_datalen
-0x4bc1 mem_24g_data_type
-0x4bc2 mem_24g_txlen
-0x4bc3 mem_24g_rx_window
-0x4bc5 mem_24g_ensure
-0x4bc6 mem_24g_txfail_cnt
-0x4bc8 mem_24g_get_ack_fail
-0x4bc9 mem_24g_retry
-0x4bca mem_24g_ch
-0x4bcb mem_24g_current_ch_number
-0x4bcc mem_24g_paring_addr
-0x4bd0 mem_24g_pairing_sm
-0x4bd1 mem_24g_ch_map1
-0x4bd5 mem_24g_ch_map2
-0x4bd9 mem_24g_ch_map3
-0x4bdd mem_24g_ch_map4
-0x4be1 mem_24g_tx_btclk
-0x4be5 mem_24g_interval
-0x4be6 mem_24g_interval_min
-0x4be7 mem_24g_interval_max
-0x4be8 mem_24g_addr
-0x4bec mem_24g_abort_pac
-0x4bed mem_24g_check_dongle_times
-0x4bef mem_24g_enter_hibernate
-0x4bf7 mem_24g_device_addr
-0x4bfb mem_24g_pac_index
-0x4bfc mem_24g_no_ack
-0x4bfd mem_24g_sta_crc
-0x4c00 mem_24g_last_crc
-0x4c03 mem_24g_sta_pid
-0x4c04 mem_24g_last_pid
-0x4c05 mem_24g_max_retry
-0x4c06 mem_24g_mode
-0x4c07 mem_24g_rxdata_temp
-0x4c29 mem_24g_rx_addr
-0x4c2d mem_dongle_mode_init
-0x4c2e mem_dongle_work_mode
-0x4c2f mem_dongle_ms_bind_step
-0x4c30 mem_dongle_kb_bind_step
-0x4c31 mem_dongle_bind_device_status
-0x4c32 mem_24g_bind_payload
-0x4c3a mem_24g_abort_packet
-0x4c3b mem_24g_rf_laststa
-0x4c3c mem_24g_hop_btclk
-0x4c40 mem_24g_hop_interval
-0x4c41 mem_24g_mode_switch
-0x4c42 mem_24g_ackpayload_enable
-0x4c43 mem_24g_hop_packet
-0x4c44 mem_24g_pair_mode
-0x4c45 mem_24g_nodata_timer_enable
-0x4c46 mem_24g_time_slice
-0x4c47 mem_24g_kb_data_sta_data
-0x4c4f mem_24g_kb_data_last_data
-0x4c57 mem_24g_kb_multikey_sta_data
-0x4c5a mem_24g_kb_multikey_last_data
-0x4c5d mem_24g_kb_blank_data_enable
-0x4c5e mem_24g_kb_mul_blank_data_enable
-0x4c5f mem_24g_ms_blank_data_enable
-0x4c60 mem_24g_kb_addr
-0x4c64 mem_24g_ms_addr
-0x4c68 mem_24g_dg_last_ch
-0x4c69 mem_24g_dg_ch_number
-0x4c6a mem_24g_dg_config_ch_once
-0x4c6b mem_24g_kb_last_ch
-0x4c6c mem_24g_kb_ch_number
-0x4c6d mem_24g_kb_config_ch_once
-0x4c6e mem_24g_ms_last_ch
-0x4c6f mem_24g_ms_ch_number
-0x4c70 mem_24g_ms_config_ch_once
-0x4c71 mem_24g_syncword
-0x4c73 mem_24g_syncword_crc8
-0x4c74 mem_24g_get_syncword_crc8
-0x4c75 mem_24g_ota_sta_pid
-0x4c77 mem_tx_power_temp
-0x4c78 mem_rssi_hex
-0x4c79 mem_rssi_noise_avg
-0x4c7a mem_rssi_noise_index
-0x4c7b mem_rssi_signal_index
-0x4c7c mem_rssi_noise_dg_avg
-0x4c7d mem_rssi_noise_kb_avg
-0x4c7e mem_rssi_noise_ms_avg
-0x4c7f mem_rssi_noise_dg_index
-0x4c80 mem_rssi_noise_kb_index
-0x4c81 mem_rssi_noise_ms_index
-0x4c82 mem_rssi_signal_buf
-0x4c8a mem_queue_ele_num
-0x4c8b mem_queue_read
-0x4c8d mem_queue_write
-0x4c8f mem_queue_start
-0x4c8f mem_data_ele0
-0x4caf mem_data_ele1
-0x4ccf mem_data_ele2
-0x4cef mem_queue_end
-0x4cef mem_queue_temp
-0x4cf1 mem_cb_24g_data
-0x4cf3 mem_24g_hop_fastly_cnt
-0x4cf4 mem_24g_hop_pac_retry
-0x4cf5 mem_24g_rf_hop_ch
-0x4cf6 mem_24g_rf_last_sta
-0x4cf7 mem_24g_rf_work_stage
-0x4cf8 mem_24g_sync_cnt
-0x4cf9 mem_power_ctrl_pac_succ_cnt
-0x4cfa mem_rssi_avg_received
-0x4cfb mem_rssi_hex_received
-0x4cfc mem_power_ctrl_level
-0x4cfd mem_seqi
-0x4cfe mem_24g_auto_paring_switch
-0x4cff mem_24g_paccnt
-0x4d00 mem_24g_transmit_by_interrupt
-0x4d01 mem_24g_transmit_by_interrupt_exit_count
-0x4d03 mem_24g_transmit_by_interrupt_exit_count_init
-0x4d05 mem_24g_allpowerful_addr
-0x4d0b mem_24g_search_dongle_action
-0x4d0c mem_24g_search_dongle_count
-0x4d0d mem_24g_search_dongle_ch
-0x4d0e mem_24g_search_dongle_wait
-0x4d0f mem_g24_conn_sm
+0x4b2a mem_device_change
+0x4b2b mem_device_change_flag
+0x4b2c mem_key_release_flag
+0x4b2c key_not_send_flag
+0x4b2d mem_key_change
+0x4b2e mem_2key_change
+0x4b2f mem_packet_send_finish
+0x4b30 mem_key_sleep_flag
+0x4b31 mem_alt_key
+0x4b32 mem_alt_send_finish_flag
+0x4b33 key_long_press_frequency
+0x4b34 mem_24g_reconn_flag
+0x4b35 mem_mouse_connect_success
+0x4b36 mem_alt_tab_timer
+0x4b37 mem_device_led_timer
+0x4b38 mem_device_led_flag
+0x4b39 mem_hibernate_flag
+0x4b3a mem_not_show_device_led
+0x4b3b mem_connect_staus
+0x4b3c mem_24g_rxbuf
+0x4b5e mem_24g_txbuf
+0x4b7e mem_24g_txpayload
+0x4ba0 mem_24g_rxpayload
+0x4bc0 mem_24g_rxdata_length
+0x4bc1 mem_24g_pid
+0x4bc2 mem_24g_datalen
+0x4bc3 mem_24g_data_type
+0x4bc4 mem_24g_txlen
+0x4bc5 mem_24g_rx_window
+0x4bc7 mem_24g_ensure
+0x4bc8 mem_24g_txfail_cnt
+0x4bca mem_24g_get_ack_fail
+0x4bcb mem_24g_retry
+0x4bcc mem_24g_ch
+0x4bcd mem_24g_current_ch_number
+0x4bce mem_24g_paring_addr
+0x4bd2 mem_24g_pairing_sm
+0x4bd3 mem_24g_ch_map1
+0x4bd7 mem_24g_ch_map2
+0x4bdb mem_24g_ch_map3
+0x4bdf mem_24g_ch_map4
+0x4be3 mem_24g_tx_btclk
+0x4be7 mem_24g_interval
+0x4be8 mem_24g_interval_min
+0x4be9 mem_24g_interval_max
+0x4bea mem_24g_addr
+0x4bee mem_24g_abort_pac
+0x4bef mem_24g_check_dongle_times
+0x4bf1 mem_24g_enter_hibernate
+0x4bf9 mem_24g_device_addr
+0x4bfd mem_24g_pac_index
+0x4bfe mem_24g_no_ack
+0x4bff mem_24g_sta_crc
+0x4c02 mem_24g_last_crc
+0x4c05 mem_24g_sta_pid
+0x4c06 mem_24g_last_pid
+0x4c07 mem_24g_max_retry
+0x4c08 mem_24g_mode
+0x4c09 mem_24g_rxdata_temp
+0x4c2b mem_24g_rx_addr
+0x4c2f mem_dongle_mode_init
+0x4c30 mem_dongle_work_mode
+0x4c31 mem_dongle_ms_bind_step
+0x4c32 mem_dongle_kb_bind_step
+0x4c33 mem_dongle_bind_device_status
+0x4c34 mem_24g_bind_payload
+0x4c3c mem_24g_abort_packet
+0x4c3d mem_24g_rf_laststa
+0x4c3e mem_24g_hop_btclk
+0x4c42 mem_24g_hop_interval
+0x4c43 mem_24g_mode_switch
+0x4c44 mem_24g_ackpayload_enable
+0x4c45 mem_24g_hop_packet
+0x4c46 mem_24g_pair_mode
+0x4c47 mem_24g_nodata_timer_enable
+0x4c48 mem_24g_time_slice
+0x4c49 mem_24g_kb_data_sta_data
+0x4c51 mem_24g_kb_data_last_data
+0x4c59 mem_24g_kb_multikey_sta_data
+0x4c5c mem_24g_kb_multikey_last_data
+0x4c5f mem_24g_kb_blank_data_enable
+0x4c60 mem_24g_kb_mul_blank_data_enable
+0x4c61 mem_24g_ms_blank_data_enable
+0x4c62 mem_24g_kb_addr
+0x4c66 mem_24g_ms_addr
+0x4c6a mem_24g_dg_last_ch
+0x4c6b mem_24g_dg_ch_number
+0x4c6c mem_24g_dg_config_ch_once
+0x4c6d mem_24g_kb_last_ch
+0x4c6e mem_24g_kb_ch_number
+0x4c6f mem_24g_kb_config_ch_once
+0x4c70 mem_24g_ms_last_ch
+0x4c71 mem_24g_ms_ch_number
+0x4c72 mem_24g_ms_config_ch_once
+0x4c73 mem_24g_syncword
+0x4c75 mem_24g_syncword_crc8
+0x4c76 mem_24g_get_syncword_crc8
+0x4c77 mem_24g_ota_sta_pid
+0x4c79 mem_tx_power_temp
+0x4c7a mem_rssi_hex
+0x4c7b mem_rssi_noise_avg
+0x4c7c mem_rssi_noise_index
+0x4c7d mem_rssi_signal_index
+0x4c7e mem_rssi_noise_dg_avg
+0x4c7f mem_rssi_noise_kb_avg
+0x4c80 mem_rssi_noise_ms_avg
+0x4c81 mem_rssi_noise_dg_index
+0x4c82 mem_rssi_noise_kb_index
+0x4c83 mem_rssi_noise_ms_index
+0x4c84 mem_rssi_signal_buf
+0x4c8c mem_queue_ele_num
+0x4c8d mem_queue_read
+0x4c8f mem_queue_write
+0x4c91 mem_queue_start
+0x4c91 mem_data_ele0
+0x4cb1 mem_data_ele1
+0x4cd1 mem_data_ele2
+0x4cf1 mem_queue_end
+0x4cf1 mem_queue_temp
+0x4cf3 mem_cb_24g_data
+0x4cf5 mem_24g_hop_fastly_cnt
+0x4cf6 mem_24g_hop_pac_retry
+0x4cf7 mem_24g_rf_hop_ch
+0x4cf8 mem_24g_rf_last_sta
+0x4cf9 mem_24g_rf_work_stage
+0x4cfa mem_24g_sync_cnt
+0x4cfb mem_power_ctrl_pac_succ_cnt
+0x4cfc mem_rssi_avg_received
+0x4cfd mem_rssi_hex_received
+0x4cfe mem_power_ctrl_level
+0x4cff mem_seqi
+0x4d00 mem_24g_auto_paring_switch
+0x4d01 mem_24g_paccnt
+0x4d02 mem_24g_transmit_by_interrupt
+0x4d03 mem_24g_transmit_by_interrupt_exit_count
+0x4d05 mem_24g_transmit_by_interrupt_exit_count_init
+0x4d07 mem_24g_allpowerful_addr
+0x4d0d mem_24g_search_dongle_action
+0x4d0e mem_24g_search_dongle_count
+0x4d0f mem_24g_search_dongle_ch
+0x4d10 mem_24g_search_dongle_wait
+0x4d11 mem_g24_conn_sm
Index: output/program.lis
===================================================================
--- /branch/flip_pen/output/program.lis	(revision 2872)
+++ /branch/flip_pen/output/program.lis	(working copy)
@@ -4,30 +4,30 @@
 0001 c000001b beq patch00_0 ,p_soft_reset 
 0002 c000801e beq patch00_1 ,p_soft_reset_1 
 0003 c0010027 beq patch00_2 ,p_soft_reset_2 
-0004 c04286df beq patch10_5 ,p_shutdown_radio 
-0005 c04486b2 beq patch11_1 ,p_set_freq_tx 
+0004 c04286e1 beq patch10_5 ,p_shutdown_radio 
+0005 c04486b4 beq patch11_1 ,p_set_freq_tx 
 0006 c0508030 beq patch14_1 ,p_init_param 
 0007 c0588035 beq patch16_1 ,p_lpm_check_wake_lock 
 0008 c0590039 beq patch16_2 ,p_g24_dispatch 
 0009 c06202cf beq patch18_4 ,p_device_init 
-000a c07304fa beq patch1c_6 ,p_mouse_motion 
-000b c07505a7 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
-000c c07585af beq patch1d_3 ,p_mouse_start_discovery 
-000d c07605c9 beq patch1d_4 ,p_mouse_stop_discovery 
+000a c0730500 beq patch1c_6 ,p_mouse_motion 
+000b c07505a9 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+000c c07585b1 beq patch1d_3 ,p_mouse_start_discovery 
+000d c07605cb beq patch1d_4 ,p_mouse_stop_discovery 
 000e 20202a8e branch loop 
 
 pf_patch_ext:
-000f c01c85cd beq patch27_1 ,p_le_slave_match 
-0010 c02185d5 beq patch28_3 ,p_le_next_adv_channel 
-0011 c02505db beq patch29_2 ,p_le_receive_skip 
-0012 c02b85de beq patch2a_7 ,p_le_update_param 
-0013 c02c85ee beq patch2b_1 ,p_le_update_channel_map 
-0014 c03185fb beq patch2c_3 ,p_le_prepare_tx 
-0015 c0330629 beq patch2c_6 ,p_le_parse 
-0016 c0338648 beq patch2c_7 ,p_le_parse_l2cap 
-0017 c035065b beq patch2d_2 ,p_le_adv_not_match 
-0018 c03b8665 beq patch2e_7 ,p_le_lpm_setmult 
-0019 c07d0676 beq patch3f_2 ,p_check_51cmd_once_continue 
+000f c01c85cf beq patch27_1 ,p_le_slave_match 
+0010 c02185d7 beq patch28_3 ,p_le_next_adv_channel 
+0011 c02505dd beq patch29_2 ,p_le_receive_skip 
+0012 c02b85e0 beq patch2a_7 ,p_le_update_param 
+0013 c02c85f0 beq patch2b_1 ,p_le_update_channel_map 
+0014 c03185fd beq patch2c_3 ,p_le_prepare_tx 
+0015 c033062b beq patch2c_6 ,p_le_parse 
+0016 c033864a beq patch2c_7 ,p_le_parse_l2cap 
+0017 c035065d beq patch2d_2 ,p_le_adv_not_match 
+0018 c03b8667 beq patch2e_7 ,p_le_lpm_setmult 
+0019 c07d0678 beq patch3f_2 ,p_check_51cmd_once_continue 
 001a 20202a8e branch loop 
 
 p_soft_reset:
@@ -74,10 +74,10 @@
 
 p_g24_dispatch:
 0039 c6930000 rtnmark0 mark_24g 
-003a 6800cd0f fetch 1 ,mem_g24_conn_sm 
+003a 6800cd11 fetch 1 ,mem_g24_conn_sm 
 003b c280809d bbit1 state_24g_pair ,p_g24_pair_dispatch 
 003c c28100b7 bbit1 state_24g_reconn ,p_g24_reconn_dispatch 
-003d 6800cd00 fetch 1 ,mem_24g_transmit_by_interrupt 
+003d 6800cd02 fetch 1 ,mem_24g_transmit_by_interrupt 
 003e c00080c4 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
 
 p_g24_transmit_process:
@@ -87,9 +87,9 @@
 
 p_g24_transmit_start:
 0042 20400163 call p_g24_transmit_packet 
-0043 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+0043 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 0044 c1ff8000 rtnne state_24g_pairing_success 
-0045 20400688 call power_ctrl_start 
+0045 2040068a call power_ctrl_start 
 0046 6800cafa fetch 1 ,mem_customer_data_trigger 
 0047 c000804d beq 1 ,p_g24_transmit_customer_data 
 
@@ -111,11 +111,11 @@
 0052 da404af0 arg mem_customer_key_release ,regb 
 0053 68014b13 fetch 2 ,key_key_staus 
 0054 245a0067 ncall p_mouse_customer_key_press ,blank 
-0055 704bec00 jam 0 ,mem_24g_abort_pac 
+0055 704bee00 jam 0 ,mem_24g_abort_pac 
 0056 1a20fe01 add rega ,1 ,pdata 
-0057 6000cbc0 store 1 ,mem_24g_datalen 
+0057 6000cbc2 store 1 ,mem_24g_datalen 
 0058 20400109 call p_g24_transmit_rf_ctrl_clear 
-0059 6000cb5c store 1 ,mem_24g_txbuf 
+0059 6000cb5e store 1 ,mem_24g_txbuf 
 005a 1a420c00 copy regb ,contr 
 005b 1a227200 copy rega ,loopcnt 
 005c 20207f01 branch memcpy 
@@ -125,11 +125,11 @@
 005e 203a007d branch p_mouse_customer_epacket_send_finish ,blank 
 005f dfe00004 arg 0x04 ,pdata 
 0060 6000cae8 store 1 ,mem_customer_key_press + 1 
-0061 6800cb2f fetch 1 ,mem_alt_key 
+0061 6800cb31 fetch 1 ,mem_alt_key 
 0062 207a0000 rtn blank 
 0063 6800cb03 fetch 1 ,mem_keyboard_value + 2 
 0064 6000caea store 1 ,mem_customer_key_press + 3 
-0065 704b2f00 jam 0 ,mem_alt_key 
+0065 704b3100 jam 0 ,mem_alt_key 
 0066 20600000 rtn 
 
 p_mouse_customer_key_press:
@@ -163,7 +163,7 @@
 007c c2000075 loop p_mouse_customer_enter_packet_loop 
 
 p_mouse_customer_epacket_send_finish:
-007d 704b2d01 jam 1 ,mem_packet_send_finish 
+007d 704b2f01 jam 1 ,mem_packet_send_finish 
 007e dfe00000 arg 0 ,pdata 
 007f 60014b13 store 2 ,key_key_staus 
 
@@ -214,28 +214,28 @@
 00a1 242c0207 nbranch p_g24_pair_txdata_retry ,sync 
 00a2 24378207 nbranch p_g24_pair_txdata_retry ,user3 
 00a3 204001a2 call p_g24_ackpayload_parse 
-00a4 68024be8 fetch 4 ,mem_24g_addr 
-00a5 680a4d05 fetcht 4 ,mem_24g_allpowerful_addr 
+00a4 68024bea fetch 4 ,mem_24g_addr 
+00a5 680a4d07 fetcht 4 ,mem_24g_allpowerful_addr 
 00a6 98467c00 isub temp ,null 
 00a7 202280aa branch p_g24_auto_pair_skip_rx_length ,zero 
-00a8 6800cbbe fetch 1 ,mem_24g_rxdata_length 
+00a8 6800cbc0 fetch 1 ,mem_24g_rxdata_length 
 00a9 c1840000 rtnne bind_ackpayload_length 
 
 p_g24_auto_pair_skip_rx_length:
-00aa 704d0f00 jam 0 ,mem_g24_conn_sm 
+00aa 704d1100 jam 0 ,mem_g24_conn_sm 
 00ab 204002e4 call p_mouse_tx_power_init 
-00ac 68024be8 fetch 4 ,mem_24g_addr 
-00ad 680a4bcc fetcht 4 ,mem_24g_paring_addr 
+00ac 68024bea fetch 4 ,mem_24g_addr 
+00ad 680a4bce fetcht 4 ,mem_24g_paring_addr 
 00ae 98467c00 isub temp ,null 
 00af 202282f0 branch p_g24_start_pairing_sm1 ,zero 
-00b0 68024be8 fetch 4 ,mem_24g_addr 
-00b1 680a4bf7 fetcht 4 ,mem_24g_device_addr 
+00b0 68024bea fetch 4 ,mem_24g_addr 
+00b1 680a4bf9 fetcht 4 ,mem_24g_device_addr 
 00b2 98467c00 isub temp ,null 
 00b3 204280b5 call p_g24_store_dongle_addr ,zero 
 00b4 202000be branch p_g24_tx_attemp_dongle_succ 
 
 p_g24_store_dongle_addr:
-00b5 68024ba0 fetch 4 ,mem_24g_rxpayload + 2 
+00b5 68024ba2 fetch 4 ,mem_24g_rxpayload + 2 
 00b6 202001b8 branch p_g24_update_addr_and_synccrc8 
 
 p_g24_reconn_dispatch:
@@ -245,67 +245,67 @@
 00ba 2040017a call p_g24_transmit_receive_ack 
 00bb 242c0118 nbranch p_g24_ch ,sync 
 00bc 24378118 nbranch p_g24_ch ,user3 
-00bd 704d0f00 jam 0 ,mem_g24_conn_sm 
+00bd 704d1100 jam 0 ,mem_g24_conn_sm 
 
 p_g24_tx_attemp_dongle_succ:
 00be 20402f20 call g24_app_tx_attemp_succ 
 00bf 20400177 call p_g24_txbuf_clear 
 
 p_g24_transmit_by_interrupt_enable:
-00c0 704d0001 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+00c0 704d0201 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
 00c1 58000000 setarg 0 
-00c2 60014d01 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c2 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00c3 20600000 rtn 
 
 p_g24_transmit_by_interrupt:
 00c4 204002a8 call p_g24_timer_check 
 00c5 24740000 nrtn user 
 00c6 204000d9 call p_g24_interval_calibrate 
-00c7 68014d01 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c7 68014d03 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00c8 1fe0fe01 increase 1 ,pdata 
-00c9 60014d01 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-00ca 68094d03 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00c9 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00ca 68094d05 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 00cb 98467c00 isub temp ,null 
 00cc 204280ce call p_g24_transmit_by_interrupt_exit ,zero 
 00cd 2020003f branch p_g24_transmit_process 
 
 p_g24_transmit_by_interrupt_exit:
-00ce 704d0000 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+00ce 704d0200 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
 00cf 58000000 setarg 0 
-00d0 60014d01 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00d0 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00d1 58000064 setarg 100 
-00d2 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00d2 60014d05 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 
 p_g24_interval_min:
-00d3 704bfb00 jam 0 ,mem_24g_pac_index 
-00d4 6800cbe6 fetch 1 ,mem_24g_interval_min 
+00d3 704bfd00 jam 0 ,mem_24g_pac_index 
+00d4 6800cbe8 fetch 1 ,mem_24g_interval_min 
 
 p_g24_interval_store:
-00d5 6000cbe5 store 1 ,mem_24g_interval 
+00d5 6000cbe7 store 1 ,mem_24g_interval 
 00d6 20600000 rtn 
 
 p_g24_interval_max:
-00d7 6800cbe7 fetch 1 ,mem_24g_interval_max 
+00d7 6800cbe9 fetch 1 ,mem_24g_interval_max 
 00d8 202000d5 branch p_g24_interval_store 
 
 p_g24_interval_calibrate:
-00d9 6800cbfb fetch 1 ,mem_24g_pac_index 
+00d9 6800cbfd fetch 1 ,mem_24g_pac_index 
 00da 1fe0fe01 increase 1 ,pdata 
-00db 6000cbfb store 1 ,mem_24g_pac_index 
+00db 6000cbfd store 1 ,mem_24g_pac_index 
 00dc c00200d7 beq 4 ,p_g24_interval_max 
 00dd c00280d3 beq 5 ,p_g24_interval_min 
 00de 20600000 rtn 
 
 p_g24_nodata_transmit:
-00df 6800cbec fetch 1 ,mem_24g_abort_pac 
+00df 6800cbee fetch 1 ,mem_24g_abort_pac 
 00e0 205a00f9 call p_g24_send_abort_packet ,blank 
-00e1 6800cd00 fetch 1 ,mem_24g_transmit_by_interrupt 
+00e1 6800cd02 fetch 1 ,mem_24g_transmit_by_interrupt 
 00e2 c1008000 rtneq g24_tx_timer_int_enable 
 
 p_g24_long_sleep:
 00e3 204000e7 call p_g24_lpm_wait 
 00e4 24740000 nrtn user 
-00e5 6801cbef fetch 3 ,mem_24g_enter_hibernate 
+00e5 6801cbf1 fetch 3 ,mem_24g_enter_hibernate 
 00e6 20202d8c branch g24_lpm_long_sleep2 
 
 p_g24_lpm_wait:
@@ -315,7 +315,7 @@
 00ea 203a7fe9 branch disable_user ,blank 
 00eb 6800c091 fetch 1 ,mem_lpm_mode 
 00ec 203a7fe9 branch disable_user ,blank 
-00ed 6800cd00 fetch 1 ,mem_24g_transmit_by_interrupt 
+00ed 6800cd02 fetch 1 ,mem_24g_transmit_by_interrupt 
 00ee c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
 00ef 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
 00f0 c000ffe9 beq on ,disable_user 
@@ -333,104 +333,104 @@
 00f8 20600000 rtn 
 
 p_g24_send_abort_packet:
-00f9 704bec01 jam 1 ,mem_24g_abort_pac 
-00fa 704cf500 jam 0 ,mem_24g_rf_hop_ch 
+00f9 704bee01 jam 1 ,mem_24g_abort_pac 
+00fa 704cf700 jam 0 ,mem_24g_rf_hop_ch 
 00fb 20400109 call p_g24_transmit_rf_ctrl_clear 
-00fc 6000cb5c store 1 ,mem_24g_txbuf 
+00fc 6000cb5e store 1 ,mem_24g_txbuf 
 00fd 58000000 setarg 0 
-00fe 6003cb5d store 7 ,mem_24g_txbuf + 1 
-00ff 68024bf7 fetch 4 ,mem_24g_device_addr 
-0100 60024b64 store 4 ,mem_24g_txbuf + 8 
-0101 704bc00c jam 12 ,mem_24g_datalen 
-0102 6800cbc1 fetch 1 ,mem_24g_data_type 
+00fe 6003cb5f store 7 ,mem_24g_txbuf + 1 
+00ff 68024bf9 fetch 4 ,mem_24g_device_addr 
+0100 60024b66 store 4 ,mem_24g_txbuf + 8 
+0101 704bc20c jam 12 ,mem_24g_datalen 
+0102 6800cbc3 fetch 1 ,mem_24g_data_type 
 0103 79207e03 set1 bit_abort ,pdata 
-0104 6000cbc1 store 1 ,mem_24g_data_type 
+0104 6000cbc3 store 1 ,mem_24g_data_type 
 0105 2040015a call p_g24_txdata_enable_tx 
 0106 20200042 branch p_g24_transmit_start 
 
 p_g24_transmit_rf_sta_init:
-0107 704cf601 jam 1 ,mem_24g_rf_last_sta 
-0108 704cf800 jam 0 ,mem_24g_sync_cnt 
+0107 704cf801 jam 1 ,mem_24g_rf_last_sta 
+0108 704cfa00 jam 0 ,mem_24g_sync_cnt 
 
 p_g24_transmit_rf_ctrl_clear:
-0109 6800cbc1 fetch 1 ,mem_24g_data_type 
+0109 6800cbc3 fetch 1 ,mem_24g_data_type 
 010a 1fe17e07 and_into bits_data ,pdata 
-010b 6000cbc1 store 1 ,mem_24g_data_type 
+010b 6000cbc3 store 1 ,mem_24g_data_type 
 010c 20600000 rtn 
 
 p_g24_hop_ch_enable:
-010d 6800cbc1 fetch 1 ,mem_24g_data_type 
+010d 6800cbc3 fetch 1 ,mem_24g_data_type 
 010e 79207e04 set1 bit_hop ,pdata 
 
 p_g24_hop_ch_store:
-010f 6000cbc1 store 1 ,mem_24g_data_type 
-0110 6000cb7c store 1 ,mem_24g_txpayload 
+010f 6000cbc3 store 1 ,mem_24g_data_type 
+0110 6000cb7e store 1 ,mem_24g_txpayload 
 0111 20600000 rtn 
 
 p_g24_hop_enable_packet:
-0112 6800cbc1 fetch 1 ,mem_24g_data_type 
+0112 6800cbc3 fetch 1 ,mem_24g_data_type 
 0113 c4020000 rtnbit0 bit_hop 
 
 p_g24_hop_ch_disable:
-0114 6800cbc1 fetch 1 ,mem_24g_data_type 
+0114 6800cbc3 fetch 1 ,mem_24g_data_type 
 0115 793ffe04 set0 bit_hop ,pdata 
 0116 2040010f call p_g24_hop_ch_store 
-0117 2040061b call power_ctrl_pac_succ_decrs 
+0117 2040061d call power_ctrl_pac_succ_decrs 
 
 p_g24_ch:
-0118 6808cbcb fetcht 1 ,mem_24g_current_ch_number 
-0119 6800cbe8 fetch 1 ,mem_24g_addr 
+0118 6808cbcd fetcht 1 ,mem_24g_current_ch_number 
+0119 6800cbea fetch 1 ,mem_24g_addr 
 011a 1fe17e03 and_into 0x03 ,pdata 
 011b 1fefa204 mul32 pdata ,4 ,rega 
-011c 58004bd1 setarg mem_24g_ch_map1 
+011c 58004bd3 setarg mem_24g_ch_map1 
 011d 9a20fe00 iadd rega ,pdata 
 011e 98408c00 iadd temp ,contr 
 011f e8c08000 ifetch 1 ,contr 
-0120 6000cbca store 1 ,mem_24g_ch 
+0120 6000cbcc store 1 ,mem_24g_ch 
 0121 18408401 increase 1 ,temp 
 0122 18410403 and_into 3 ,temp 
-0123 6008cbcb storet 1 ,mem_24g_current_ch_number 
+0123 6008cbcd storet 1 ,mem_24g_current_ch_number 
 0124 20600000 rtn 
 
 p_g24_rf_hop_attemp_again:
-0125 6800ccf5 fetch 1 ,mem_24g_rf_hop_ch 
+0125 6800ccf7 fetch 1 ,mem_24g_rf_hop_ch 
 0126 c0808109 bne 1 ,p_g24_transmit_rf_ctrl_clear 
 
 p_g24_rf_hop_fastly:
-0127 6800ccf3 fetch 1 ,mem_24g_hop_fastly_cnt 
+0127 6800ccf5 fetch 1 ,mem_24g_hop_fastly_cnt 
 0128 1fe0fe01 increase 1 ,pdata 
-0129 6000ccf3 store 1 ,mem_24g_hop_fastly_cnt 
+0129 6000ccf5 store 1 ,mem_24g_hop_fastly_cnt 
 012a c002012e beq 4 ,p_g24_rf_hop_fastly_exit 
 012b 20400118 call p_g24_ch 
-012c 704c0502 jam 2 ,mem_24g_max_retry 
+012c 704c0702 jam 2 ,mem_24g_max_retry 
 012d 20200163 branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-012e 2040061b call power_ctrl_pac_succ_decrs 
-012f 704cf300 jam 0 ,mem_24g_hop_fastly_cnt 
+012e 2040061d call power_ctrl_pac_succ_decrs 
+012f 704cf500 jam 0 ,mem_24g_hop_fastly_cnt 
 0130 20200109 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_succ_wo_hop:
-0131 704cf802 jam 2 ,mem_24g_sync_cnt 
+0131 704cfa02 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_succ:
-0132 704cf601 jam 1 ,mem_24g_rf_last_sta 
-0133 704cf500 jam 0 ,mem_24g_rf_hop_ch 
+0132 704cf801 jam 1 ,mem_24g_rf_last_sta 
+0133 704cf700 jam 0 ,mem_24g_rf_hop_ch 
 0134 20200109 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_succ_rf_config:
-0135 6800ccf7 fetch 1 ,mem_24g_rf_work_stage 
+0135 6800ccf9 fetch 1 ,mem_24g_rf_work_stage 
 0136 c0018132 beq 3 ,p_g24_transmit_hop_pac_succ 
-0137 6800cbc1 fetch 1 ,mem_24g_data_type 
+0137 6800cbc3 fetch 1 ,mem_24g_data_type 
 0138 2fec0004 isolate0 bit_hop ,pdata 
 0139 20208107 branch p_g24_transmit_rf_sta_init ,true 
-013a 6800ccf7 fetch 1 ,mem_24g_rf_work_stage 
+013a 6800ccf9 fetch 1 ,mem_24g_rf_work_stage 
 013b c0008131 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
 013c c0010132 beq 2 ,p_g24_transmit_hop_pac_succ 
 013d 20600000 rtn 
 
 p_g24_rf_sta_check:
-013e 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+013e 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 013f c1ff8000 rtnne state_24g_pairing_success 
 0140 20400143 call p_g24_rf_laststa_synccnt_check 
 0141 2456014b ncall p_g24_rf_sync_cnt_check ,user2 
@@ -438,32 +438,32 @@
 
 p_g24_rf_laststa_synccnt_check:
 0143 78567c00 disable user2 
-0144 6800ccf6 fetch 1 ,mem_24g_rf_last_sta 
+0144 6800ccf8 fetch 1 ,mem_24g_rf_last_sta 
 0145 c1808000 rtnne 1 
-0146 6800ccf8 fetch 1 ,mem_24g_sync_cnt 
+0146 6800ccfa fetch 1 ,mem_24g_sync_cnt 
 0147 c1800000 rtnne 0 
-0148 704cf701 jam 1 ,mem_24g_rf_work_stage 
-0149 704c0504 jam 4 ,mem_24g_max_retry 
+0148 704cf901 jam 1 ,mem_24g_rf_work_stage 
+0149 704c0704 jam 4 ,mem_24g_max_retry 
 014a 20207feb branch enable_user2 
 
 p_g24_rf_sync_cnt_check:
-014b 6800ccf8 fetch 1 ,mem_24g_sync_cnt 
+014b 6800ccfa fetch 1 ,mem_24g_sync_cnt 
 014c 203a0152 branch p_g24_rf_hop_attemp ,blank 
 014d 1fe0ffff increase -1 ,pdata 
-014e 6000ccf8 store 1 ,mem_24g_sync_cnt 
-014f 704cf702 jam 2 ,mem_24g_rf_work_stage 
-0150 704c0504 jam 4 ,mem_24g_max_retry 
+014e 6000ccfa store 1 ,mem_24g_sync_cnt 
+014f 704cf902 jam 2 ,mem_24g_rf_work_stage 
+0150 704c0704 jam 4 ,mem_24g_max_retry 
 0151 20200118 branch p_g24_ch 
 
 p_g24_rf_hop_attemp:
-0152 704cf703 jam 3 ,mem_24g_rf_work_stage 
-0153 6800ccf5 fetch 1 ,mem_24g_rf_hop_ch 
+0152 704cf903 jam 3 ,mem_24g_rf_work_stage 
+0153 6800ccf7 fetch 1 ,mem_24g_rf_hop_ch 
 0154 243a0125 nbranch p_g24_rf_hop_attemp_again ,blank 
-0155 704c0502 jam 2 ,mem_24g_max_retry 
+0155 704c0702 jam 2 ,mem_24g_max_retry 
 0156 20200118 branch p_g24_ch 
 
 p_g24_txdata_prep:
-0157 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+0157 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 0158 c0ff81c6 bne state_24g_pairing_success ,p_g24_pairing_sm 
 
 p_g24_txdata_prep_packeage_data:
@@ -471,19 +471,19 @@
 
 p_g24_txdata_enable_tx:
 015a 20400229 call p_g24_transmit_prep 
-015b 704bc501 jam ensure_on_24g ,mem_24g_ensure 
+015b 704bc701 jam ensure_on_24g ,mem_24g_ensure 
 015c 20600000 rtn 
 
 p_g24_package_data:
-015d 68014cf1 fetch 2 ,mem_cb_24g_data 
+015d 68014cf3 fetch 2 ,mem_cb_24g_data 
 015e 20407f9c call callback_func 
 015f 20340051 branch p_g24_accumulate_customer_data ,user 
-0160 6803cb5d fetch 7 ,mem_24g_txbuf + 1 
+0160 6803cb5f fetch 7 ,mem_24g_txbuf + 1 
 0161 207a0000 rtn blank 
 0162 20207fe7 branch enable_user 
 
 p_g24_transmit_packet:
-0163 704bc900 jam 0 ,mem_24g_retry 
+0163 704bcb00 jam 0 ,mem_24g_retry 
 
 p_g24_transmit_loop:
 0164 d9600d00 arg param_rx_setup ,timeup 
@@ -493,33 +493,33 @@
 0168 24378185 nbranch p_g24_retransmit ,user3 
 0169 20400177 call p_g24_txbuf_clear 
 016a 204001a2 call p_g24_ackpayload_parse 
-016b 20400682 call power_ctrl_pac_succ_incrs 
+016b 20400684 call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
-016c 6800cbbf fetch 1 ,mem_24g_pid 
+016c 6800cbc1 fetch 1 ,mem_24g_pid 
 016d 1fe0fe01 increase 1 ,pdata 
-016e 6000cbbf store 1 ,mem_24g_pid 
+016e 6000cbc1 store 1 ,mem_24g_pid 
 016f 20400112 call p_g24_hop_enable_packet 
-0170 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+0170 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 0171 c0ff81e0 bne state_24g_pairing_success ,p_g24_paring_mode_start 
 0172 20400135 call p_g24_transmit_succ_rf_config 
 
 p_g24_transmit_abandon:
 0173 58000000 setarg 0 
-0174 60024bc5 store 4 ,mem_24g_ensure 
-0175 6000ccf4 store 1 ,mem_24g_hop_pac_retry 
+0174 60024bc7 store 4 ,mem_24g_ensure 
+0175 6000ccf6 store 1 ,mem_24g_hop_pac_retry 
 0176 20600000 rtn 
 
 p_g24_txbuf_clear:
 0177 df200004 arg 4 ,loopcnt 
-0178 d8a04b5c arg mem_24g_txbuf ,contw 
+0178 d8a04b5e arg mem_24g_txbuf ,contw 
 0179 20207ec6 branch memset0 
 
 p_g24_transmit_receive_ack:
 017a 7857fc00 disable user3 
 017b 20400285 call p_g24_transmit 
 017c 18002a00 force 0 ,radio_ctrl 
-017d 68024be8 fetch 4 ,mem_24g_addr 
+017d 68024bea fetch 4 ,mem_24g_addr 
 017e 98001200 iforce access 
 017f 68088017 fetcht 1 ,mem_last_freq 
 0180 2040291f call set_freq_rx 
@@ -529,38 +529,38 @@
 0184 20600000 rtn 
 
 p_g24_retransmit:
-0185 6800cbec fetch 1 ,mem_24g_abort_pac 
+0185 6800cbee fetch 1 ,mem_24g_abort_pac 
 0186 247a0000 nrtn blank 
-0187 68014bc6 fetch 2 ,mem_24g_txfail_cnt 
+0187 68014bc8 fetch 2 ,mem_24g_txfail_cnt 
 0188 1fe0fe01 increase 1 ,pdata 
-0189 60014bc6 store 2 ,mem_24g_txfail_cnt 
-018a 6800cbc7 fetch 1 ,mem_24g_txfail_cnt + 1 
+0189 60014bc8 store 2 ,mem_24g_txfail_cnt 
+018a 6800cbc9 fetch 1 ,mem_24g_txfail_cnt + 1 
 018b c2822dd4 bbit1 4 ,g24_stop_24g_mode 
-018c 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+018c 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 018d c0ff8190 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
 018e 20400198 call p_g24_tx_hop_ch_process 
 018f 20200164 branch p_g24_transmit_loop 
 
 p_g24_tx_paring_retry:
-0190 6800cbc6 fetch 1 ,mem_24g_txfail_cnt 
+0190 6800cbc8 fetch 1 ,mem_24g_txfail_cnt 
 0191 c1ff8000 rtnne 0xff 
 
 p_g24_tx_attempt_fail:
 0192 58000000 setarg 0 
-0193 60014bc6 store 2 ,mem_24g_txfail_cnt 
+0193 60014bc8 store 2 ,mem_24g_txfail_cnt 
 0194 20202dd4 branch g24_stop_24g_mode 
 
 p_g24_tx_fast_hop:
-0195 204006a9 call power_ctrl_txpower_incrs 
-0196 2040061b call power_ctrl_pac_succ_decrs 
+0195 204006ab call power_ctrl_txpower_incrs 
+0196 2040061d call power_ctrl_pac_succ_decrs 
 0197 20200118 branch p_g24_ch 
 
 p_g24_tx_hop_ch_process:
-0198 6800cbc9 fetch 1 ,mem_24g_retry 
+0198 6800cbcb fetch 1 ,mem_24g_retry 
 0199 1fe67c0b sub pdata ,11 ,null 
 019a 24210195 nbranch p_g24_tx_fast_hop ,positive 
 019b 1fe0fe01 increase 1 ,pdata 
-019c 6000cbc9 store 1 ,mem_24g_retry 
+019c 6000cbcb store 1 ,mem_24g_retry 
 019d c001010d beq 2 ,p_g24_hop_ch_enable 
 019e c0030114 beq 6 ,p_g24_hop_ch_disable 
 019f c004010d beq 8 ,p_g24_hop_ch_enable 
@@ -568,79 +568,79 @@
 01a1 20600000 rtn 
 
 p_g24_ackpayload_parse:
-01a2 6800cb3b fetch 1 ,mem_24g_rxbuf + 1 
+01a2 6800cb3d fetch 1 ,mem_24g_rxbuf + 1 
 01a3 1fe97e00 rshift3 pdata ,pdata 
-01a4 6000cbbe store 1 ,mem_24g_rxdata_length 
+01a4 6000cbc0 store 1 ,mem_24g_rxdata_length 
 01a5 1fe0fe01 increase 1 ,pdata 
-01a6 d8c04b3b arg mem_24g_rxbuf + 1 ,contr 
+01a6 d8c04b3d arg mem_24g_rxbuf + 1 ,contr 
 01a7 98c08c00 iadd contr ,contr 
 01a8 e8c18000 ifetch 3 ,contr 
-01a9 6001cbfd store 3 ,mem_24g_sta_crc 
-01aa 6800cb3b fetch 1 ,mem_24g_rxbuf + 1 
+01a9 6001cbff store 3 ,mem_24g_sta_crc 
+01aa 6800cb3d fetch 1 ,mem_24g_rxbuf + 1 
 01ab 1fe37e00 rshift pdata ,pdata 
 01ac 1fe17e03 and pdata ,0x03 ,pdata 
-01ad 6000cc03 store 1 ,mem_24g_sta_pid 
-01ae 6800cbbe fetch 1 ,mem_24g_rxdata_length 
+01ad 6000cc05 store 1 ,mem_24g_sta_pid 
+01ae 6800cbc0 fetch 1 ,mem_24g_rxdata_length 
 01af 207a0000 rtn blank 
 01b0 98007200 iforce loopcnt 
-01b1 d8c04b3c arg mem_24g_rxbuf + 2 ,contr 
-01b2 d8a04b9e arg mem_24g_rxpayload ,contw 
+01b1 d8c04b3e arg mem_24g_rxbuf + 2 ,contr 
+01b2 d8a04ba0 arg mem_24g_rxpayload ,contw 
 01b3 20207f01 branch memcpy 
 
 p_g24_pair_init:
 01b4 7041de04 jam tx_power_f5db ,mem_tx_power 
-01b5 704bbf00 jam 0 ,mem_24g_pid 
-01b6 704bca4e jam g24_pair_ch ,mem_24g_ch 
-01b7 68024bcc fetch 4 ,mem_24g_paring_addr 
+01b5 704bc100 jam 0 ,mem_24g_pid 
+01b6 704bcc4e jam g24_pair_ch ,mem_24g_ch 
+01b7 68024bce fetch 4 ,mem_24g_paring_addr 
 
 p_g24_update_addr_and_synccrc8:
-01b8 60024be8 store 4 ,mem_24g_addr 
+01b8 60024bea store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
 01b9 da200000 arg 0 ,rega 
 01ba df200004 arg 4 ,loopcnt 
-01bb d8c04be8 arg mem_24g_addr ,contr 
+01bb d8c04bea arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
 01bc e8c08000 ifetch 1 ,contr 
 01bd 9a20a200 iadd rega ,rega 
 01be c20001bc loop p_g24_syncword_crc8_loop 
 01bf 1a227e00 copy rega ,pdata 
-01c0 60014c71 store 2 ,mem_24g_syncword 
-01c1 6800cc71 fetch 1 ,mem_24g_syncword 
-01c2 6808cc72 fetcht 1 ,mem_24g_syncword + 1 
+01c0 60014c73 store 2 ,mem_24g_syncword 
+01c1 6800cc73 fetch 1 ,mem_24g_syncword 
+01c2 6808cc74 fetcht 1 ,mem_24g_syncword + 1 
 01c3 9840fe00 iadd temp ,pdata 
-01c4 6000cc73 store 1 ,mem_24g_syncword_crc8 
+01c4 6000cc75 store 1 ,mem_24g_syncword_crc8 
 01c5 20600000 rtn 
 
 p_g24_pairing_sm:
-01c6 6800cbc5 fetch 1 ,mem_24g_ensure 
+01c6 6800cbc7 fetch 1 ,mem_24g_ensure 
 01c7 c000ffe7 beq ensure_on_24g ,enable_user 
-01c8 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+01c8 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 01c9 c00081cd beq state_24g_pairing_1 ,p_g24_pairing_sm_1 
 01ca c00101d0 beq state_24g_pairing_2 ,p_g24_pairing_sm_2 
 01cb c00181d3 beq state_24g_pairing_3 ,p_g24_pairing_sm_3 
 01cc 20202a8c branch assert 
 
 p_g24_pairing_sm_1:
-01cd 704bd011 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
+01cd 704bd211 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
 01ce 70119eaa jam 0xaa ,mem_24g_common_temp 
 01cf 202001d5 branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_2:
-01d0 704bd012 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
+01d0 704bd212 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
 01d1 70119e55 jam 0x55 ,mem_24g_common_temp 
 01d2 202001d5 branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_3:
-01d3 704bd013 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
+01d3 704bd213 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
 01d4 70119e22 jam 0x22 ,mem_24g_common_temp 
 
 p_g24_pairing_sm_common:
-01d5 6800cbc1 fetch 1 ,mem_24g_data_type 
+01d5 6800cbc3 fetch 1 ,mem_24g_data_type 
 01d6 1fe17e07 and_into bits_data ,pdata 
 01d7 6000919f store 1 ,mem_24g_common_temp + 1 
-01d8 68024bf7 fetch 4 ,mem_24g_device_addr 
+01d8 68024bf9 fetch 4 ,mem_24g_device_addr 
 01d9 600211a0 store 4 ,mem_24g_common_temp + 2 
 
 p_g24_put_pairing_data_in_buff:
@@ -652,10 +652,10 @@
 01df 20207fe7 branch enable_user 
 
 p_g24_paring_mode_start:
-01e0 2040067f call power_ctrl_pac_succ_cnt_init 
+01e0 20400681 call power_ctrl_pac_succ_cnt_init 
 
 p_g24_paring_mode:
-01e1 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+01e1 6800cbd2 fetch 1 ,mem_24g_pairing_sm 
 01e2 c17f8000 rtneq state_24g_pairing_success 
 01e3 c00881e7 beq state_24g_pairing_1_waiting_ack ,p_g24_pairing_sm_1_waiting_ack 
 01e4 c00901e9 beq state_24g_pairing_2_waiting_ack ,p_g24_pairing_sm_2_waiting_ack 
@@ -663,15 +663,15 @@
 01e6 20600000 rtn 
 
 p_g24_pairing_sm_1_waiting_ack:
-01e7 704bd002 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
+01e7 704bd202 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
 01e8 20200173 branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_2_waiting_ack:
-01e9 704bd003 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
+01e9 704bd203 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
 01ea 20200173 branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_3_waiting_ack:
-01eb 704bd0ff jam state_24g_pairing_success ,mem_24g_pairing_sm 
+01eb 704bd2ff jam state_24g_pairing_success ,mem_24g_pairing_sm 
 01ec 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
 01ed 20407d86 call ui_ipc_send_event 
 01ee 204000b5 call p_g24_store_dongle_addr 
@@ -681,19 +681,19 @@
 01f0 20400331 call p_g24_factory_check 
 01f1 20340328 branch p_g24_auto_pair_start ,user 
 01f2 79200026 set1 mark_24g ,mark 
-01f3 6800cd0f fetch 1 ,mem_g24_conn_sm 
+01f3 6800cd11 fetch 1 ,mem_g24_conn_sm 
 01f4 79207e02 set1 state_24g_reconn ,pdata 
-01f5 6000cd0f store 1 ,mem_g24_conn_sm 
+01f5 6000cd11 store 1 ,mem_g24_conn_sm 
 01f6 20400216 call p_g24_ch_syncword_crc8_init 
-01f7 704b3201 jam 1 ,mem_24g_reconn_flag 
+01f7 704b3401 jam 1 ,mem_24g_reconn_flag 
 01f8 5800000a setarg 0x0a 
 01f9 2020032e branch p_g24_auto_pair_timeout_init + 1 
 
 p_g24_tx_attemp_data_prep:
 01fa 70119eff jam 0xff ,mem_24g_common_temp 
-01fb 6800cbc1 fetch 1 ,mem_24g_data_type 
+01fb 6800cbc3 fetch 1 ,mem_24g_data_type 
 01fc 6000919f store 1 ,mem_24g_common_temp + 1 
-01fd 68024bf7 fetch 4 ,mem_24g_device_addr 
+01fd 68024bf9 fetch 4 ,mem_24g_device_addr 
 01fe 600211a0 store 4 ,mem_24g_common_temp + 2 
 01ff d8400006 arg 6 ,temp 
 0200 da20119e arg mem_24g_common_temp ,rega 
@@ -709,20 +709,20 @@
 p_g24_pair_txdata_retry:
 
 p_g24_pair_txdata_switch:
-0207 6800ccfe fetch 1 ,mem_24g_auto_paring_switch 
+0207 6800cd00 fetch 1 ,mem_24g_auto_paring_switch 
 0208 1fe0fe01 increase 1 ,pdata 
 0209 1fe17e03 and_into 3 ,pdata 
-020a 6000ccfe store 1 ,mem_24g_auto_paring_switch 
+020a 6000cd00 store 1 ,mem_24g_auto_paring_switch 
 020b c000020e beq 0 ,p_g24_auto_pair_first_attemp 
 020c c0010218 beq 2 ,p_g24_auto_pair_all_powerful 
 020d 202001b4 branch p_g24_pair_init 
 
 p_g24_auto_pair_first_attemp:
 020e 204002e4 call p_mouse_tx_power_init 
-020f 68024bf7 fetch 4 ,mem_24g_device_addr 
-0210 60024be8 store 4 ,mem_24g_addr 
+020f 68024bf9 fetch 4 ,mem_24g_device_addr 
+0210 60024bea store 4 ,mem_24g_addr 
 0211 6800caa4 fetch 1 ,mem_24g_pair_current_ch_num 
-0212 6000cbcb store 1 ,mem_24g_current_ch_number 
+0212 6000cbcd store 1 ,mem_24g_current_ch_number 
 0213 20400216 call p_g24_ch_syncword_crc8_init 
 0214 6008caa4 storet 1 ,mem_24g_pair_current_ch_num 
 0215 20600000 rtn 
@@ -733,17 +733,17 @@
 
 p_g24_auto_pair_all_powerful:
 0218 7041de20 jam tx_power_pair ,mem_tx_power 
-0219 68024d05 fetch 4 ,mem_24g_allpowerful_addr 
-021a 60024be8 store 4 ,mem_24g_addr 
+0219 68024d07 fetch 4 ,mem_24g_allpowerful_addr 
+021a 60024bea store 4 ,mem_24g_addr 
 021b 6800caa5 fetch 1 ,mem_24g_powerful_current_ch_num 
-021c 6000cbcb store 1 ,mem_24g_current_ch_number 
+021c 6000cbcd store 1 ,mem_24g_current_ch_number 
 021d 20400216 call p_g24_ch_syncword_crc8_init 
 021e 6008caa5 storet 1 ,mem_24g_powerful_current_ch_num 
 021f 20600000 rtn 
 
 p_g24_check_51cmd_stop_24g:
 0220 793f8026 set0 mark_24g ,mark 
-0221 704d0f00 jam state_24g_stop ,mem_g24_conn_sm 
+0221 704d1100 jam state_24g_stop ,mem_g24_conn_sm 
 0222 204053ce call le_disable 
 
 p_mouse_disable_g24_pairing_flag:
@@ -751,29 +751,29 @@
 0224 202043d2 branch mouse_disable_function_flag 
 
 p_g24_put_data_in_buff:
-0225 6008cbc0 storet 1 ,mem_24g_datalen 
+0225 6008cbc2 storet 1 ,mem_24g_datalen 
 0226 18427200 copy temp ,loopcnt 
-0227 d8a04b5c arg mem_24g_txbuf ,contw 
+0227 d8a04b5e arg mem_24g_txbuf ,contw 
 0228 20202d51 branch g24_put_data_in_buff2 
 
 p_g24_transmit_prep:
-0229 6800cbc0 fetch 1 ,mem_24g_datalen 
+0229 6800cbc2 fetch 1 ,mem_24g_datalen 
 022a 1fe0fe02 increase 2 ,pdata 
-022b 6000cbc2 store 1 ,mem_24g_txlen 
-022c 6800cbc1 fetch 1 ,mem_24g_data_type 
-022d 6000cb7c store 1 ,mem_24g_txpayload 
-022e 6800cbc0 fetch 1 ,mem_24g_datalen 
+022b 6000cbc4 store 1 ,mem_24g_txlen 
+022c 6800cbc3 fetch 1 ,mem_24g_data_type 
+022d 6000cb7e store 1 ,mem_24g_txpayload 
+022e 6800cbc2 fetch 1 ,mem_24g_datalen 
 022f 1fe9fe00 lshift3 pdata ,pdata 
-0230 6808cbbf fetcht 1 ,mem_24g_pid 
+0230 6808cbc1 fetcht 1 ,mem_24g_pid 
 0231 18410403 and temp ,0x03 ,temp 
 0232 18438400 lshift temp ,temp 
 0233 9841fe00 ior temp ,pdata 
-0234 6808cbfc fetcht 1 ,mem_24g_no_ack 
+0234 6808cbfe fetcht 1 ,mem_24g_no_ack 
 0235 9840fe00 iadd temp ,pdata 
 0236 e0a08000 istore 1 ,contw 
-0237 6800cbc0 fetch 1 ,mem_24g_datalen 
+0237 6800cbc2 fetch 1 ,mem_24g_datalen 
 0238 98007200 iforce loopcnt 
-0239 d8c04b5c arg mem_24g_txbuf ,contr 
+0239 d8c04b5e arg mem_24g_txbuf ,contr 
 023a 20207f01 branch memcpy 
 
 p_g24_prep:
@@ -781,7 +781,7 @@
 023c 7843fc00 disable enable_white 
 023d 58555555 setarg 0x555555 
 023e 98001e00 iforce crc24_init 
-023f 6800cbca fetch 1 ,mem_24g_ch 
+023f 6800cbcc fetch 1 ,mem_24g_ch 
 0240 202053da branch le_prep2 
 
 p_g24_receive_rxon:
@@ -791,7 +791,7 @@
 0244 7830fc00 enable is_rx 
 0245 78507c00 disable is_tx 
 0246 78287c00 enable swfine 
-0247 68014bc3 fetch 2 ,mem_24g_rx_window 
+0247 68014bc5 fetch 2 ,mem_24g_rx_window 
 0248 98003600 iforce stop_watch 
 0249 37c18400 correlate null ,timeout 
 024a 242c0282 nbranch p_g24_sync_timeout ,sync 
@@ -800,14 +800,14 @@
 024d 7823fc00 enable enable_white 
 024e 7824fc00 enable enable_crc 
 024f 2040027f call p_g24_receive_byte 
-0250 6000cc74 store 1 ,mem_24g_get_syncword_crc8 
-0251 6808cc73 fetcht 1 ,mem_24g_syncword_crc8 
+0250 6000cc76 store 1 ,mem_24g_get_syncword_crc8 
+0251 6808cc75 fetcht 1 ,mem_24g_syncword_crc8 
 0252 98467c00 isub temp ,null 
 0253 24228282 nbranch p_g24_end_of_packet ,zero 
 0254 2040027f call p_g24_receive_byte 
-0255 6000cb3a store 1 ,mem_24g_rxbuf 
-0256 6800cb3a fetch 1 ,mem_24g_rxbuf 
-0257 6808cbc1 fetcht 1 ,mem_24g_data_type 
+0255 6000cb3c store 1 ,mem_24g_rxbuf 
+0256 6800cb3c fetch 1 ,mem_24g_rxbuf 
+0257 6808cbc3 fetcht 1 ,mem_24g_data_type 
 0258 a8400e00 icompare bits_data ,temp 
 0259 24208282 nbranch p_g24_end_of_packet ,true 
 
@@ -826,7 +826,7 @@
 p_g24rx_nopayload:
 0262 18a22200 copy contw ,rega 
 0263 2040027f call p_g24_receive_byte 
-0264 6000ccfb store 1 ,mem_rssi_hex_received 
+0264 6000ccfd store 1 ,mem_rssi_hex_received 
 0265 1a220a00 copy rega ,contw 
 0266 09800018 parse demod ,bucket ,24 
 0267 78287c00 enable swfine 
@@ -842,18 +842,18 @@
 0271 20402981 call rf_write_freq 
 0272 7846fc00 disable decode_fec0 
 0273 20402918 call set_sync_on 
-0274 6800ccfb fetch 1 ,mem_rssi_hex_received 
+0274 6800ccfd fetch 1 ,mem_rssi_hex_received 
 
 p_rssi_signal:
 0275 1fe22200 copy pdata ,rega 
-0276 6808cc7b fetcht 1 ,mem_rssi_signal_index 
-0277 58004c82 setarg mem_rssi_signal_buf 
+0276 6808cc7d fetcht 1 ,mem_rssi_signal_index 
+0277 58004c84 setarg mem_rssi_signal_buf 
 0278 98408a00 iadd temp ,contw 
 0279 1a227e00 copy rega ,pdata 
 027a e0a08000 istore 1 ,contw 
 027b 18408401 increase 1 ,temp 
 027c 18410407 and_into rssi_buf_len_signal ,temp 
-027d 6008cc7b storet 1 ,mem_rssi_signal_index 
+027d 6008cc7d storet 1 ,mem_rssi_signal_index 
 027e 20600000 rtn 
 
 p_g24_receive_byte:
@@ -870,11 +870,11 @@
 
 p_g24_transmit:
 0285 204053c4 call le_enable 
-0286 68024be8 fetch 4 ,mem_24g_addr 
+0286 68024bea fetch 4 ,mem_24g_addr 
 0287 98001200 iforce access 
 0288 2040023b call p_g24_prep 
 0289 20402918 call set_sync_on 
-028a 6808cbca fetcht 1 ,mem_24g_ch 
+028a 6808cbcc fetcht 1 ,mem_24g_ch 
 028b 20402933 call set_freq_tx 
 028c 79202a00 set1 txgfsk ,radio_ctrl 
 028d 782efc00 enable encode_fec0 
@@ -888,11 +888,11 @@
 0295 782dfc00 enable encode_fec1 
 0296 7823fc00 enable enable_white 
 0297 7824fc00 enable enable_crc 
-0298 6800cc73 fetch 1 ,mem_24g_syncword_crc8 
+0298 6800cc75 fetch 1 ,mem_24g_syncword_crc8 
 0299 08008608 inject mod ,8 
-029a 6800cbc2 fetch 1 ,mem_24g_txlen 
+029a 6800cbc4 fetch 1 ,mem_24g_txlen 
 029b 98007200 iforce loopcnt 
-029c d8c04b7c arg mem_24g_txpayload ,contr 
+029c d8c04b7e arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
 029d e8c08000 ifetch 1 ,contr 
@@ -909,19 +909,19 @@
 
 p_g24_timer_check:
 02a8 20407fe9 call disable_user 
-02a9 680a4be1 fetcht 4 ,mem_24g_tx_btclk 
+02a9 680a4be3 fetcht 4 ,mem_24g_tx_btclk 
 02aa 1c427e00 copy clkn_bt ,pdata 
 02ab 98467c00 isub temp ,null 
 02ac 24412d18 ncall g24_timer_timeout ,positive 
 02ad 1fe22400 copy pdata ,regb 
-02ae 68024be1 fetch 4 ,mem_24g_tx_btclk 
-02af 6808cbe5 fetcht 1 ,mem_24g_interval 
+02ae 68024be3 fetch 4 ,mem_24g_tx_btclk 
+02af 6808cbe7 fetcht 1 ,mem_24g_interval 
 02b0 98408400 iadd temp ,temp 
 02b1 1a427e00 copy regb ,pdata 
 02b2 98467c00 isub temp ,null 
 02b3 24610000 nrtn positive 
 02b4 793ffe1c set0 28 ,pdata 
-02b5 60024be1 store 4 ,mem_24g_tx_btclk 
+02b5 60024be3 store 4 ,mem_24g_tx_btclk 
 02b6 20207fe7 branch enable_user 
 
 p_rssi_average:
@@ -963,8 +963,8 @@
 02d2 203582d7 branch p_device_init_common ,wake 
 02d3 20400386 call p_mouse_data_init 
 02d4 6800c1de fetch 1 ,mem_tx_power 
-02d5 6000cc77 store 1 ,mem_tx_power_temp 
-02d6 2040067f call power_ctrl_pac_succ_cnt_init 
+02d5 6000cc79 store 1 ,mem_tx_power_temp 
+02d6 20400681 call power_ctrl_pac_succ_cnt_init 
 
 p_device_init_common:
 02d7 204002d9 call p_mouse_init 
@@ -978,7 +978,7 @@
 
 p_mouse_check_reconn_target:
 02dd 204002e4 call p_mouse_tx_power_init 
-02de 704b3300 jam 0 ,mem_mouse_connect_success 
+02de 704b3500 jam 0 ,mem_mouse_connect_success 
 02df 6800c720 fetch 1 ,mem_device_flag 
 02e0 c00101f0 beq mode_24g_device ,p_g24_start_24g_mode 
 02e1 6800c210 fetch 1 ,mem_xrecord_mode 
@@ -986,7 +986,7 @@
 02e3 2020340a branch app_enter_hibernate 
 
 p_mouse_tx_power_init:
-02e4 6800cc77 fetch 1 ,mem_tx_power_temp 
+02e4 6800cc79 fetch 1 ,mem_tx_power_temp 
 02e5 6000c1de store 1 ,mem_tx_power 
 02e6 20600000 rtn 
 
@@ -997,25 +997,25 @@
 
 p_mouse4_0_check_reconn_target_next:
 02ea 600146ae store 2 ,mem_mouse_direct_timer 
-02eb 204005c7 call p_mouse_store_eeprom_enable 
+02eb 204005c9 call p_mouse_store_eeprom_enable 
 02ec 20403418 call app_lpm_mult_disable 
 02ed d8c04390 arg mem_le_scan_data ,contr 
-02ee 204005c3 call p_le_adv_data_update 
+02ee 204005c5 call p_le_adv_data_update 
 02ef 20207df4 branch check_51cmd_adv 
 
 p_g24_start_pairing_sm1:
 02f0 204001b4 call p_g24_pair_init 
 
 p_g24_set_pairing_sm_1:
-02f1 704bd001 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
+02f1 704bd201 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
 02f2 20600000 rtn 
 
 p_mouse_setting_config:
 02f3 680240a0 fetch 4 ,mem_lap 
-02f4 60024bf7 store 4 ,mem_24g_device_addr 
+02f4 60024bf9 store 4 ,mem_24g_device_addr 
 02f5 20403e6e call mouse_gpio_init 
-02f6 2040058d call p_laser_off 
-02f7 2040059d call p_blue_led_off2 
+02f6 20400595 call p_laser_off 
+02f7 204005a1 call p_blue_led_off2 
 02f8 20403e1e call mouse_param_init 
 02f9 580047c6 setarg mem_mouse_le_uuid_sup 
 02fa 600144bc store 2 ,mem_ui_le_uuid_table 
@@ -1050,7 +1050,7 @@
 0313 d8400001 arg 1 ,temp 
 0314 204065df call iicd_read_eep_data 
 0315 6800cb19 fetch 1 ,mem_2key_staus 
-0316 c07f858b beq 0xff ,p_2key_staus_set0 
+0316 c07f8591 beq 0xff ,p_2key_staus_set0 
 0317 20600000 rtn 
 
 p_mouse_init_device_flag:
@@ -1060,12 +1060,12 @@
 
 p_mouse_24g_transmit_by_interrupt_exit_count_max:
 031b 58000177 setarg 375 
-031c 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+031c 60014d05 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 031d 20600000 rtn 
 
 p_mouse_wakeup_from_power:
 031e 58000019 setarg 25 
-031f 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+031f 60014d05 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 0320 2455831b ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
 
 p_mouse_wakeup_no_from_power:
@@ -1076,15 +1076,15 @@
 0323 6800ca93 fetch 1 ,mem_power_on_flag 
 0324 c28101f0 bbit1 2 ,p_g24_start_24g_mode 
 0325 5800ffff setarg 0xffff 
-0326 60014be8 store 2 ,mem_24g_addr 
+0326 60014bea store 2 ,mem_24g_addr 
 0327 e0a10000 istore 2 ,contw 
 
 p_g24_auto_pair_start:
 0328 79200026 set1 mark_24g ,mark 
-0329 6800cd0f fetch 1 ,mem_g24_conn_sm 
+0329 6800cd11 fetch 1 ,mem_g24_conn_sm 
 032a 79207e01 set1 state_24g_pair ,pdata 
-032b 6000cd0f store 1 ,mem_g24_conn_sm 
-032c 704b3200 jam 0 ,mem_24g_reconn_flag 
+032b 6000cd11 store 1 ,mem_g24_conn_sm 
+032c 704b3400 jam 0 ,mem_24g_reconn_flag 
 
 p_g24_auto_pair_timeout_init:
 032d 5800003c setarg g24_first_disconn_nodata_timer 
@@ -1094,7 +1094,7 @@
 
 p_g24_factory_check:
 0331 df200002 arg 2 ,loopcnt 
-0332 d8c04be8 arg mem_24g_addr ,contr 
+0332 d8c04bea arg mem_24g_addr ,contr 
 
 p_pdata_0xff_check:
 0333 20407fe7 call enable_user 
@@ -1109,10 +1109,10 @@
 
 p_mouse_cb_fuction:
 033a 58000349 setarg p_mouse_g24_package_data 
-033b 60014cf1 store 2 ,mem_cb_24g_data 
+033b 60014cf3 store 2 ,mem_cb_24g_data 
 033c 58000360 setarg p_mouse_le 
 033d 600141ef store 2 ,mem_cb_le_process 
-033e 5800066f setarg p_le_mouse_bb_event_connect_complete 
+033e 58000671 setarg p_le_mouse_bb_event_connect_complete 
 033f 600141f9 store 2 ,mem_cb_att_write 
 0340 580002c5 setarg p_mouse_before_lpm 
 0341 600141ed store 2 ,mem_cb_before_lpm 
@@ -1294,7 +1294,7 @@
 03c7 207a0000 rtn blank 
 
 p_check_51cmd_adv:
-03c8 204005bf call p_mouse_le_adv_data_update 
+03c8 204005c1 call p_mouse_le_adv_data_update 
 03c9 20207df4 branch check_51cmd_adv 
 
 p_mouse_le_enc_info:
@@ -1335,7 +1335,7 @@
 
 p_mouse_le_conn_param_update_rsp_not_accepted:
 03e0 704aa701 jam 1 ,mem_mouse_le_updata_not_accepted_flag 
-03e1 2020063f branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset 
+03e1 20200641 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset 
 
 p_mouse_24g_pairing_complete:
 03e2 204002e4 call p_mouse_tx_power_init 
@@ -1344,13 +1344,13 @@
 03e5 202043d2 branch mouse_disable_function_flag 
 
 p_mouse_set_24g_addr_eeprom:
-03e6 da204be8 arg mem_24g_addr ,rega 
+03e6 da204bea arg mem_24g_addr ,rega 
 03e7 da40005b arg mouse_g24_addr_eeprom_offect ,regb 
 03e8 d8400004 arg 4 ,temp 
 03e9 20600000 rtn 
 
 p_mouse_24g_attempt_fail:
-03ea 704d0000 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+03ea 704d0200 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
 03eb 204002e4 call p_mouse_tx_power_init 
 03ec 20400220 call p_g24_check_51cmd_stop_24g 
 03ed 2020340a branch app_enter_hibernate 
@@ -1364,7 +1364,7 @@
 03f1 704aa900 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
 03f2 58000000 setarg 0 
 03f3 6001ca9b store 3 ,mem_le_switch_adv_flag 
-03f4 704b3301 jam 1 ,mem_mouse_connect_success 
+03f4 704b3501 jam 1 ,mem_mouse_connect_success 
 03f5 204041c6 call mouse_le_bb_event_connected + 3 
 03f6 20400203 call p_g24_auto_pair_timeout_clear 
 03f7 20403f8d call mouse_no_data_timer_init 
@@ -1376,15 +1376,15 @@
 03fb 202003b9 branch p_mouse_store_latest_mode_eeprom 
 
 p_mouse_before_hibernate:
-03fc 704b3701 jam 1 ,mem_hibernate_flag 
+03fc 704b3901 jam 1 ,mem_hibernate_flag 
 03fd 2040040e call p_store_hibernate_flag_eeprom 
 03fe 68120138 hfetch 4 ,core_lpm_ctrl 
 03ff 79207e1a set1 26 ,pdata 
 0400 6012004c hstore 4 ,core_lpm_reg 
 0401 20402c21 call lpm_write_ctrl 
 0402 204074bd call disable_authrom 
-0403 2040058d call p_laser_off 
-0404 2040059d call p_blue_led_off2 
+0403 20400595 call p_laser_off 
+0404 204005a1 call p_blue_led_off2 
 0405 d8400005 arg 0x05 ,temp 
 0406 204067ed call gpio_clr_wake 
 0407 d8400014 arg 0x14 ,temp 
@@ -1396,36 +1396,36 @@
 040d 202000f2 branch p_mouse_setgpio_lpm_before 
 
 p_store_hibernate_flag_eeprom:
-040e da204b37 arg mem_hibernate_flag ,rega 
+040e da204b39 arg mem_hibernate_flag ,rega 
 040f da400066 arg mouse_hibernate_flag_eeprom_offset ,regb 
 0410 d8400001 arg 1 ,temp 
 0411 202065d1 branch iicd_write_protect_eep_data 
 
 p_get_hibernate_flag_eeprom:
-0412 da204b37 arg mem_hibernate_flag ,rega 
+0412 da204b39 arg mem_hibernate_flag ,rega 
 0413 da400066 arg mouse_hibernate_flag_eeprom_offset ,regb 
 0414 d8400001 arg 1 ,temp 
 0415 202065df branch iicd_read_eep_data 
 
 p_mouse_bb_event_timer:
-0416 204004ce call p_mouse_adc_read 
-0417 204004b1 call p_mouse_le_switch_adv_timer 
+0416 204004d4 call p_mouse_adc_read 
+0417 204004b7 call p_mouse_le_switch_adv_timer 
 0418 20404234 call mouse_check_discovery_timeout_timer 
 0419 2040042e call p_low_electricity_charging_timer_init 
-041a 20400486 call p_mouse_select_device 
-041b 20400456 call p_device_led_show_timer 
-041c 2040044d call p_alt_tab_key_timer 
-041d 2040046f call p_key_led_show 
-041e 204004b4 call p_mouse_g24_stop_mode_timeout_timer 
-041f 204004a6 call p_mouse_check_direct_timeout_timer 
-0420 204004bb call p_mouse_le_enable_att_list_timer 
-0421 204004be call p_mouse_le_current_mult_update_timer 
-0422 204004c4 call p_le_send_smp_security_request_timer 
-0423 204004a3 call p_mouse_poweron_bt_start_reconn_timer 
+041a 20400456 call p_device_led_show_timer 
+041b 2040044d call p_alt_tab_key_timer 
+041c 20400472 call p_key_led_show 
+041d 2040048a call p_mouse_select_device 
+041e 204004ba call p_mouse_g24_stop_mode_timeout_timer 
+041f 204004ac call p_mouse_check_direct_timeout_timer 
+0420 204004c1 call p_mouse_le_enable_att_list_timer 
+0421 204004c4 call p_mouse_le_current_mult_update_timer 
+0422 204004ca call p_le_send_smp_security_request_timer 
+0423 204004a9 call p_mouse_poweron_bt_start_reconn_timer 
 0424 2040423a call mouse_check_no_data_timeout_timer 
 
 p_mouse_key_long_time_down_timer:
-0425 20400511 call p_mouse_check_key_gpio_next 
+0425 20400517 call p_mouse_check_key_gpio_next 
 0426 207a0000 rtn blank 
 0427 68014b1c fetch 2 ,key_long_press_timer 
 0428 68094b11 fetcht 2 ,mem_key_sleep 
@@ -1463,8 +1463,8 @@
 
 p_mouse_key_low_electricity_charging_led:
 0442 6800cb10 fetch 1 ,mem_led_on 
-0443 c000859b beq on ,p_blue_led_off 
-0444 c0000596 beq off ,p_blue_led_on 
+0443 c000859f beq on ,p_blue_led_off 
+0444 c000059c beq off ,p_blue_led_on 
 
 p_low_electricity_led:
 0445 c280843b bbit1 1 ,p_low_electricity_charging_timer 
@@ -1486,927 +1486,933 @@
 044f 20600000 rtn 
 
 p_alt_tab_key_timer_init:
-0450 da604b34 arg mem_alt_tab_timer ,regc 
+0450 da604b36 arg mem_alt_tab_timer ,regc 
 0451 da400453 arg p_send_alt_tab_key ,regb 
 0452 2020336d branch timer_single_step 
 
 p_send_alt_tab_key:
-0453 704b3405 jam 0x05 ,mem_alt_tab_timer 
-0454 704b2f01 jam 1 ,mem_alt_key 
+0453 704b3605 jam 0x05 ,mem_alt_tab_timer 
+0454 704b3101 jam 1 ,mem_alt_key 
 0455 20600000 rtn 
 
 p_device_led_show_timer:
-0456 6800cb38 fetch 1 ,mem_not_show_device_led 
+0456 6800cb3a fetch 1 ,mem_not_show_device_led 
 0457 247a0000 nrtn blank 
-0458 6800cb37 fetch 1 ,mem_hibernate_flag 
-0459 c0008464 beq 1 ,p_hibernate_flag_clear 
-045a 6808cb35 fetcht 1 ,mem_device_led_timer 
+0458 6800cb39 fetch 1 ,mem_hibernate_flag 
+0459 c0008463 beq 1 ,p_hibernate_flag_clear 
+045a 6808cb37 fetcht 1 ,mem_device_led_timer 
 045b 18467c10 sub temp ,0x10 ,null 
 045c 24610000 nrtn positive 
 045d 18408401 increase 1 ,temp 
-045e 6008cb35 storet 1 ,mem_device_led_timer 
-045f 704b3601 jam 1 ,mem_device_led_flag 
-0460 6800c720 fetch 1 ,mem_device_flag 
-0461 c0008467 beq 0x01 ,p_ble_led_show 
-0462 c001046d beq 0x02 ,p_24g_led_show 
-0463 20600000 rtn 
+045e 6008cb37 storet 1 ,mem_device_led_timer 
+045f 6800c720 fetch 1 ,mem_device_flag 
+0460 c0008467 beq 0x01 ,p_ble_led_show 
+0461 c0010470 beq 0x02 ,p_24g_led_show 
+0462 20600000 rtn 
 
 p_hibernate_flag_clear:
-0464 704b3801 jam 1 ,mem_not_show_device_led 
-0465 704b37ff jam 0xff ,mem_hibernate_flag 
-0466 2020040e branch p_store_hibernate_flag_eeprom 
+0463 704b3a01 jam 1 ,mem_not_show_device_led 
+0464 704b39ff jam 0xff ,mem_hibernate_flag 
+0465 2020040e branch p_store_hibernate_flag_eeprom 
+0466 20600000 rtn 
 
 p_ble_led_show:
 0467 da200006 arg 0x06 ,rega 
 
 p_device_led_show:
-0468 6800cb35 fetch 1 ,mem_device_led_timer 
+0468 6800cb37 fetch 1 ,mem_device_led_timer 
 0469 9a267c00 isub rega ,null 
-046a 24210596 nbranch p_blue_led_on ,positive 
-046b 704b3600 jam 0 ,mem_device_led_flag 
-046c 2020059b branch p_blue_led_off 
+046a 2421046e nbranch p_device_blue_led_on ,positive 
+046b 704b3800 jam 0 ,mem_device_led_flag 
+046c 704b2a01 jam 1 ,mem_device_change 
+046d 2020059f branch p_blue_led_off 
+
+p_device_blue_led_on:
+046e 704b3801 jam 1 ,mem_device_led_flag 
+046f 2020059c branch p_blue_led_on 
 
 p_24g_led_show:
-046d da20000c arg 0x0c ,rega 
-046e 20200468 branch p_device_led_show 
+0470 da20000c arg 0x0c ,rega 
+0471 20200468 branch p_device_led_show 
 
 p_key_led_show:
-046f 20400511 call p_mouse_check_key_gpio_next 
-0470 20400475 call p_led_staus 
-0471 1a227e00 copy rega ,pdata 
-0472 1fe17e1f and_into 0x1f ,pdata 
-0473 c2820591 bbit1 4 ,p_laser_on 
-0474 2020058d branch p_laser_off 
-
-p_led_staus:
-0475 203a047a branch p_key_all_led_off ,blank 
-0476 c001847f beq 0x03 ,p_blue_led_staus 
-0477 6800cb27 fetch 1 ,mem_slow_flow_flag 
-0478 205a0596 call p_blue_led_on ,blank 
-0479 20600000 rtn 
+0472 6800cb38 fetch 1 ,mem_device_led_flag 
+0473 247a0000 nrtn blank 
+0474 20400517 call p_mouse_check_key_gpio_next 
+0475 203a047f branch p_key_all_led_off ,blank 
+0476 20400517 call p_mouse_check_key_gpio_next 
+0477 c0018483 beq 0x03 ,p_blue_led_staus 
+0478 1fe17e1f and_into 0x1f ,pdata 
+0479 20400597 call p_laser_on 
+047a 6800cb27 fetch 1 ,mem_slow_flow_flag 
+047b 6808cb2a fetcht 1 ,mem_device_change 
+047c 9840fe00 iadd temp ,pdata 
+047d 205a059c call p_blue_led_on ,blank 
+047e 20600000 rtn 
 
 p_key_all_led_off:
-047a 6800cb29 fetch 1 ,mem_charging 
-047b 6808cb36 fetcht 1 ,mem_device_led_flag 
-047c 9840fe00 iadd temp ,pdata 
-047d 205a059b call p_blue_led_off ,blank 
-047e 2020058d branch p_laser_off 
+047f 704b2a00 jam 0 ,mem_device_change 
+0480 6800cb29 fetch 1 ,mem_charging 
+0481 205a059f call p_blue_led_off ,blank 
+0482 20200595 branch p_laser_off 
 
 p_blue_led_staus:
-047f 68094b1c fetcht 2 ,key_long_press_timer 
-0480 18467c0a sub temp ,0x0a ,null 
-0481 20210596 branch p_blue_led_on ,positive 
-0482 704b2a01 jam 1 ,key_not_send_flag 
-0483 6800cb39 fetch 1 ,mem_connect_staus 
-0484 205a051f call p_key_timer_set0 ,blank 
-0485 2020059b branch p_blue_led_off 
+0483 68094b1c fetcht 2 ,key_long_press_timer 
+0484 18467c0a sub temp ,0x0a ,null 
+0485 2021059c branch p_blue_led_on ,positive 
+0486 704b2c01 jam 1 ,key_not_send_flag 
+0487 6800cb3b fetch 1 ,mem_connect_staus 
+0488 205a0525 call p_key_timer_set0 ,blank 
+0489 2020059f branch p_blue_led_off 
 
 p_mouse_select_device:
-0486 20400511 call p_mouse_check_key_gpio_next 
-0487 c00a048d beq 0x14 ,p_mouse_select_device_button_down 
+048a 6800cb2a fetch 1 ,mem_device_change 
+048b 243a048e nbranch p_mouse_select_device_button_up ,blank 
+048c 20400517 call p_mouse_check_key_gpio_next 
+048d c00a0493 beq 0x14 ,p_mouse_select_device_button_down 
 
 p_mouse_select_device_button_up:
-0488 6800ca50 fetch 1 ,mem_mouse_button_select_device_timer_init 
-0489 6000ca51 store 1 ,mem_mouse_button_select_device_count 
-048a 2040433a call mouse_select_device_commbination_key_up + 1 
-048b d8e00006 arg mouse_long_bt_button_flag ,queue 
-048c 202043d2 branch mouse_disable_function_flag 
+048e 6800ca50 fetch 1 ,mem_mouse_button_select_device_timer_init 
+048f 6000ca51 store 1 ,mem_mouse_button_select_device_count 
+0490 2040433a call mouse_select_device_commbination_key_up + 1 
+0491 d8e00006 arg mouse_long_bt_button_flag ,queue 
+0492 202043d2 branch mouse_disable_function_flag 
 
 p_mouse_select_device_button_down:
-048d 704b2a01 jam 1 ,key_not_send_flag 
-048e 20400493 call p_mouse_button_select_device_timer 
-048f 6800c6d9 fetch 1 ,mem_select_device_button_statue 
-0490 c1000000 rtneq dpi_button_state_down 
-0491 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
-0492 20600000 rtn 
+0493 704b2c01 jam 1 ,key_not_send_flag 
+0494 20400499 call p_mouse_button_select_device_timer 
+0495 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+0496 c1000000 rtneq dpi_button_state_down 
+0497 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
+0498 20600000 rtn 
 
 p_mouse_button_select_device_timer:
-0493 da604a51 arg mem_mouse_button_select_device_count ,regc 
-0494 da400496 arg p_mouse_long_button_select_device ,regb 
-0495 2020336d branch timer_single_step 
+0499 da604a51 arg mem_mouse_button_select_device_count ,regc 
+049a da40049c arg p_mouse_long_button_select_device ,regb 
+049b 2020336d branch timer_single_step 
 
 p_mouse_long_button_select_device:
-0496 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-0497 c3830000 rtnbit1 mouse_long_bt_button_flag 
-0498 d8e00006 arg mouse_long_bt_button_flag ,queue 
-0499 204043ce call mouse_enable_function_flag 
+049c 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+049d c3830000 rtnbit1 mouse_long_bt_button_flag 
+049e d8e00006 arg mouse_long_bt_button_flag ,queue 
+049f 204043ce call mouse_enable_function_flag 
 
 p_mouse_ready_reconnection_by_button:
-049a 7041bd00 jam 0 ,mem_link_key_exists 
-049b 6808c720 fetcht 1 ,mem_device_flag 
-049c 18408401 increase 1 ,temp 
-049d 6800c6d2 fetch 1 ,mem_device_number 
-049e 98467c00 isub temp ,null 
-049f 244143cc ncall mouse_select_device_count_clean ,positive 
-04a0 6008c720 storet 1 ,mem_device_flag 
-04a1 204042e4 call mouse_store_eeprom_device_info 
-04a2 20204378 branch mouse_ready_reconnection_by_button + 8 
+04a0 7041bd00 jam 0 ,mem_link_key_exists 
+04a1 6808c720 fetcht 1 ,mem_device_flag 
+04a2 18408401 increase 1 ,temp 
+04a3 6800c6d2 fetch 1 ,mem_device_number 
+04a4 98467c00 isub temp ,null 
+04a5 244143cc ncall mouse_select_device_count_clean ,positive 
+04a6 6008c720 storet 1 ,mem_device_flag 
+04a7 204042e4 call mouse_store_eeprom_device_info 
+04a8 20204378 branch mouse_ready_reconnection_by_button + 8 
 
 p_mouse_poweron_bt_start_reconn_timer:
-04a3 da604aa9 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
-04a4 da4003ee arg p_mouse_bt_start_reconn ,regb 
-04a5 2020336d branch timer_single_step 
+04a9 da604aa9 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
+04aa da4003ee arg p_mouse_bt_start_reconn ,regb 
+04ab 2020336d branch timer_single_step 
 
 p_mouse_check_direct_timeout_timer:
-04a6 da6046ae arg mem_mouse_direct_timer ,regc 
-04a7 da4004a9 arg p_mouse_check_direct_timeout ,regb 
-04a8 20203374 branch timer_single_step_2b 
+04ac da6046ae arg mem_mouse_direct_timer ,regc 
+04ad da4004af arg p_mouse_check_direct_timeout ,regb 
+04ae 20203374 branch timer_single_step_2b 
 
 p_mouse_check_direct_timeout:
-04a9 6800ca9b fetch 1 ,mem_le_switch_adv_flag 
-04aa 243a340a nbranch app_enter_hibernate ,blank 
-04ab 704aaa01 jam 1 ,mem_mouse_le_not_tx_disconn 
-04ac 6800caa8 fetch 1 ,mem_mouse_latest_mode 
-04ad 1fe67cff sub pdata ,latest_mode_null ,null 
-04ae 204284cc call p_mouse_le_adv_start ,zero 
-04af 204005bf call p_mouse_le_adv_data_update 
-04b0 202043b8 branch mouse_long_button_bt_discovry 
+04af 6800ca9b fetch 1 ,mem_le_switch_adv_flag 
+04b0 243a340a nbranch app_enter_hibernate ,blank 
+04b1 704aaa01 jam 1 ,mem_mouse_le_not_tx_disconn 
+04b2 6800caa8 fetch 1 ,mem_mouse_latest_mode 
+04b3 1fe67cff sub pdata ,latest_mode_null ,null 
+04b4 204284d2 call p_mouse_le_adv_start ,zero 
+04b5 204005c1 call p_mouse_le_adv_data_update 
+04b6 202043b8 branch mouse_long_button_bt_discovry 
 
 p_mouse_le_switch_adv_timer:
-04b1 6800ca9b fetch 1 ,mem_le_switch_adv_flag 
-04b2 207a0000 rtn blank 
-04b3 202003c8 branch p_check_51cmd_adv 
+04b7 6800ca9b fetch 1 ,mem_le_switch_adv_flag 
+04b8 207a0000 rtn blank 
+04b9 202003c8 branch p_check_51cmd_adv 
 
 p_mouse_g24_stop_mode_timeout_timer:
-04b4 da604aa2 arg mem_g24_stop_g24_mode_timeout ,regc 
-04b5 da4004b7 arg p_mouse_g24_stop_mode_timeout ,regb 
-04b6 20203374 branch timer_single_step_2b 
+04ba da604aa2 arg mem_g24_stop_g24_mode_timeout ,regc 
+04bb da4004bd arg p_mouse_g24_stop_mode_timeout ,regb 
+04bc 20203374 branch timer_single_step_2b 
 
 p_mouse_g24_stop_mode_timeout:
-04b7 6800cb32 fetch 1 ,mem_24g_reconn_flag 
-04b8 c0008328 beq 1 ,p_g24_auto_pair_start 
-04b9 704aa101 jam 1 ,mem_g24_stop_g24_mode 
-04ba 20600000 rtn 
+04bd 6800cb34 fetch 1 ,mem_24g_reconn_flag 
+04be c0008328 beq 1 ,p_g24_auto_pair_start 
+04bf 704aa101 jam 1 ,mem_g24_stop_g24_mode 
+04c0 20600000 rtn 
 
 p_mouse_le_enable_att_list_timer:
-04bb da6046c6 arg mem_le_start_encrypt_timer ,regc 
-04bc da403d60 arg mouse_le_write_enable ,regb 
-04bd 2020336d branch timer_single_step 
+04c1 da6046c6 arg mem_le_start_encrypt_timer ,regc 
+04c2 da403d60 arg mouse_le_write_enable ,regb 
+04c3 2020336d branch timer_single_step 
 
 p_mouse_le_current_mult_update_timer:
-04be da604a8e arg mem_mouse_le_current_mult_timer ,regc 
-04bf da4004c1 arg p_mouse_le_current_mult_reinit ,regb 
-04c0 2020336d branch timer_single_step 
+04c4 da604a8e arg mem_mouse_le_current_mult_timer ,regc 
+04c5 da4004c7 arg p_mouse_le_current_mult_reinit ,regb 
+04c6 2020336d branch timer_single_step 
 
 p_mouse_le_current_mult_reinit:
-04c1 6800c7c5 fetch 1 ,mem_lpm_mult_init 
-04c2 6000c172 store 1 ,mem_lpm_mult 
-04c3 20600000 rtn 
+04c7 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+04c8 6000c172 store 1 ,mem_lpm_mult 
+04c9 20600000 rtn 
 
 p_le_send_smp_security_request_timer:
-04c4 6800ca92 fetch 1 ,mem_mouse_le_bb_connected_flag 
-04c5 207a0000 rtn blank 
-04c6 da604a90 arg mem_mouse_send_secutiry_request_timer ,regc 
-04c7 da4004c9 arg p_le_pairing_sm_start_check ,regb 
-04c8 2020336d branch timer_single_step 
+04ca 6800ca92 fetch 1 ,mem_mouse_le_bb_connected_flag 
+04cb 207a0000 rtn blank 
+04cc da604a90 arg mem_mouse_send_secutiry_request_timer ,regc 
+04cd da4004cf arg p_le_pairing_sm_start_check ,regb 
+04ce 2020336d branch timer_single_step 
 
 p_le_pairing_sm_start_check:
-04c9 6800ca91 fetch 1 ,mem_le_send_security_request_flag 
-04ca 247a0000 nrtn blank 
-04cb 20205bf5 branch le_pairing_sm_start 
+04cf 6800ca91 fetch 1 ,mem_le_send_security_request_flag 
+04d0 247a0000 nrtn blank 
+04d1 20205bf5 branch le_pairing_sm_start 
 
 p_mouse_le_adv_start:
-04cc 704a9f01 jam 1 ,mem_mouse_le_adv_start 
-04cd 20600000 rtn 
+04d2 704a9f01 jam 1 ,mem_mouse_le_adv_start 
+04d3 20600000 rtn 
 
 p_mouse_adc_read:
-04ce 6800cb10 fetch 1 ,mem_led_on 
-04cf c1008000 rtneq on 
-04d0 6800cb33 fetch 1 ,mem_mouse_connect_success 
-04d1 c1000000 rtneq 0 
-04d2 da6046ce arg mem_adc_read_timer ,regc 
-04d3 da4004d5 arg p_mouse_adc_read_timeout ,regb 
-04d4 2020336d branch timer_single_step 
+04d4 6800cb10 fetch 1 ,mem_led_on 
+04d5 c1008000 rtneq on 
+04d6 6800cb35 fetch 1 ,mem_mouse_connect_success 
+04d7 c1000000 rtneq 0 
+04d8 da6046ce arg mem_adc_read_timer ,regc 
+04d9 da4004db arg p_mouse_adc_read_timeout ,regb 
+04da 2020336d branch timer_single_step 
 
 p_mouse_adc_read_timeout:
-04d5 7046ce0a jam 10 ,mem_adc_read_timer 
-04d6 204068a8 call adc_init_data 
-04d7 204004e5 call p_adc_set_mode 
-04d8 20406908 call vdd_calculate_by_mode 
-04d9 6001470f store 2 ,mem_mouse_vdd_now_vol 
-04da da204709 arg mem_mouse_vdd_calculate_set ,rega 
-04db 204004ee call p_adc_bat_percent_lowpower_out 
-04dc 6800c231 fetch 1 ,mem_adc_power_flag 
-04dd c30004e0 bbit0 0 ,p_mouse_adc_no_low_voltage 
-04de 704a5e01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
-04df 202043e7 branch mouse_adc_low_voltage 
+04db 7046ce0a jam 10 ,mem_adc_read_timer 
+04dc 204068a8 call adc_init_data 
+04dd 204004eb call p_adc_set_mode 
+04de 20406908 call vdd_calculate_by_mode 
+04df 6001470f store 2 ,mem_mouse_vdd_now_vol 
+04e0 da204709 arg mem_mouse_vdd_calculate_set ,rega 
+04e1 204004f4 call p_adc_bat_percent_lowpower_out 
+04e2 6800c231 fetch 1 ,mem_adc_power_flag 
+04e3 c30004e6 bbit0 0 ,p_mouse_adc_no_low_voltage 
+04e4 704a5e01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+04e5 202043e7 branch mouse_adc_low_voltage 
 
 p_mouse_adc_no_low_voltage:
-04e0 204043e9 call mouse_adc_no_low_voltage 
-04e1 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
-04e2 207a0000 rtn blank 
-04e3 704a5e00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
-04e4 20600000 rtn 
+04e6 204043e9 call mouse_adc_no_low_voltage 
+04e7 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+04e8 207a0000 rtn blank 
+04e9 704a5e00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
+04ea 20600000 rtn 
 
 p_adc_set_mode:
-04e5 d8400005 arg 0x05 ,temp 
-04e6 204067fb call gpio_config_input 
-04e7 6810807c hfetch 1 ,core_gpio_pd0 
-04e8 793ffe05 set0 5 ,pdata 
-04e9 6010807c hstore 1 ,core_gpio_pd0 
-04ea 68108078 hfetch 1 ,core_gpio_pu0 
-04eb 793ffe05 set0 5 ,pdata 
-04ec 60108078 hstore 1 ,core_gpio_pu0 
-04ed 202068f4 branch adc_check_gpio 
+04eb d8400005 arg 0x05 ,temp 
+04ec 204067fb call gpio_config_input 
+04ed 6810807c hfetch 1 ,core_gpio_pd0 
+04ee 793ffe05 set0 5 ,pdata 
+04ef 6010807c hstore 1 ,core_gpio_pd0 
+04f0 68108078 hfetch 1 ,core_gpio_pu0 
+04f1 793ffe05 set0 5 ,pdata 
+04f2 60108078 hstore 1 ,core_gpio_pu0 
+04f3 202068f4 branch adc_check_gpio 
 
 p_adc_bat_percent_lowpower_out:
-04ee ea240000 ifetch 8 ,rega 
-04ef 60040a9a store 8 ,mem_pdatatemp 
-04f0 68090a9c fetcht 2 ,mem_pdatatemp + 2 
-04f1 68010aa0 fetch 2 ,mem_pdatatemp + 6 
-04f2 98467c00 isub temp ,null 
-04f3 2421340a nbranch app_enter_hibernate ,positive 
-04f4 68090a9e fetcht 2 ,mem_pdatatemp + 4 
-04f5 98467c00 isub temp ,null 
-04f6 24216940 nbranch adc_set_low_power_flag ,positive 
+04f4 ea240000 ifetch 8 ,rega 
+04f5 60040a9a store 8 ,mem_pdatatemp 
+04f6 68090a9c fetcht 2 ,mem_pdatatemp + 2 
+04f7 68010aa0 fetch 2 ,mem_pdatatemp + 6 
+04f8 98467c00 isub temp ,null 
+04f9 2421340a nbranch app_enter_hibernate ,positive 
+04fa 68090a9e fetcht 2 ,mem_pdatatemp + 4 
+04fb 98467c00 isub temp ,null 
+04fc 24216940 nbranch adc_set_low_power_flag ,positive 
 
 p_adc_set_full_power_flag:
-04f7 6800c231 fetch 1 ,mem_adc_power_flag 
-04f8 1fe17efc and pdata ,0xfc ,pdata 
-04f9 20206942 branch adc_store_power_flag 
+04fd 6800c231 fetch 1 ,mem_adc_power_flag 
+04fe 1fe17efc and pdata ,0xfc ,pdata 
+04ff 20206942 branch adc_store_power_flag 
 
 p_mouse_motion:
-04fa 78547c00 disable user 
+0500 78547c00 disable user 
 
 p_keyboard_key:
-04fb 704afa00 jam 0 ,mem_customer_data_trigger 
-04fc 2040050a call p_mouse_check_key_gpio 
-04fd 204040a8 call mouse_set_mult 
-04fe 204005a2 call p_mouse_24g_customer_key 
-04ff 1a227e00 copy rega ,pdata 
-0500 60014ae4 store 2 ,mem_customer_key 
-0501 68014b13 fetch 2 ,key_key_staus 
-0502 207a0000 rtn blank 
-0503 20403f8d call mouse_no_data_timer_init 
-0504 704afa01 jam 1 ,mem_customer_data_trigger 
-0505 20207fe7 branch enable_user 
+0501 704afa00 jam 0 ,mem_customer_data_trigger 
+0502 20400510 call p_mouse_check_key_gpio 
+0503 204040a8 call mouse_set_mult 
+0504 204005a4 call p_mouse_24g_customer_key 
+0505 1a227e00 copy rega ,pdata 
+0506 60014ae4 store 2 ,mem_customer_key 
+0507 68014b13 fetch 2 ,key_key_staus 
+0508 207a0000 rtn blank 
+0509 20403f8d call mouse_no_data_timer_init 
+050a 704afa01 jam 1 ,mem_customer_data_trigger 
+050b 20207fe7 branch enable_user 
 
 p_store_key_staus_eeprom:
-0506 da204b19 arg mem_2key_staus ,rega 
-0507 da40006a arg mouse_key_staus_eeprom_offset ,regb 
-0508 d8400001 arg 1 ,temp 
-0509 202065d1 branch iicd_write_protect_eep_data 
+050c da204b19 arg mem_2key_staus ,rega 
+050d da40006a arg mouse_key_staus_eeprom_offset ,regb 
+050e d8400001 arg 1 ,temp 
+050f 202065d1 branch iicd_write_protect_eep_data 
 
 p_mouse_check_key_gpio:
-050a 6800cb29 fetch 1 ,mem_charging 
-050b 247a0000 nrtn blank 
-050c 68014ae4 fetch 2 ,mem_customer_key 
-050d 245a0514 ncall p_key_staus_storage ,blank 
-050e 205a0519 call p_2key_release ,blank 
-050f 20400511 call p_mouse_check_key_gpio_next 
-0510 2020054f branch p_key_release_flag 
+0510 6800cb29 fetch 1 ,mem_charging 
+0511 247a0000 nrtn blank 
+0512 68014ae4 fetch 2 ,mem_customer_key 
+0513 245a051a ncall p_key_staus_storage ,blank 
+0514 205a051f call p_2key_release ,blank 
+0515 20400517 call p_mouse_check_key_gpio_next 
+0516 20200555 branch p_key_release_flag 
 
 p_mouse_check_key_gpio_next:
-0511 da200000 arg 0 ,rega 
-0512 20400535 call p_mouse_check_lkey_gpio 
-0513 2020408e branch mouse_check_key_gpio_output 
+0517 da200000 arg 0 ,rega 
+0518 2040053b call p_mouse_check_lkey_gpio 
+0519 2020408e branch mouse_check_key_gpio_output 
 
 p_key_staus_storage:
-0514 1fe17e1f and_into 0x1f ,pdata 
-0515 c3820000 rtnbit1 4 
-0516 60014b15 store 2 ,mem_key_staus 
-0517 704b3901 jam 1 ,mem_connect_staus 
-0518 20600000 rtn 
+051a 1fe17e1f and_into 0x1f ,pdata 
+051b c3820000 rtnbit1 4 
+051c 60014b15 store 2 ,mem_key_staus 
+051d 704b3b01 jam 1 ,mem_connect_staus 
+051e 20600000 rtn 
 
 p_2key_release:
-0519 dfe00000 arg 0 ,pdata 
-051a 6003cb2a store 7 ,mem_key_release_flag 
-051b 68014b1c fetch 2 ,key_long_press_timer 
-051c 1fe67c0a sub pdata ,0x0a ,null 
-051d 2441051f ncall p_key_timer_set0 ,positive 
-051e 20600000 rtn 
+051f dfe00000 arg 0 ,pdata 
+0520 6003cb2c store 7 ,mem_key_release_flag 
+0521 68014b1c fetch 2 ,key_long_press_timer 
+0522 1fe67c0a sub pdata ,0x0a ,null 
+0523 24410525 ncall p_key_timer_set0 ,positive 
+0524 20600000 rtn 
 
 p_key_timer_set0:
-051f dfe00000 arg 0 ,pdata 
-0520 60014b1c store 2 ,key_long_press_timer 
-0521 20600000 rtn 
+0525 dfe00000 arg 0 ,pdata 
+0526 60014b1c store 2 ,key_long_press_timer 
+0527 20600000 rtn 
 
 p_mouse_check_key:
-0522 6000cae1 store 1 ,mem_mouse_key_status 
-0523 1fe3fe00 lshift pdata ,pdata 
-0524 1fe22400 copy pdata ,regb 
-0525 18422600 copy temp ,regc 
-0526 6800cae0 fetch 1 ,mem_mouse_key_temp 
-0527 204067fb call gpio_config_input 
-0528 1a620400 copy regc ,temp 
-0529 2040681d call gpio_get_bit 
-052a 7920a400 setflag true ,0 ,regb 
-052b 1a417e07 and regb ,0x07 ,pdata 
-052c 6808cae0 fetcht 1 ,mem_mouse_key_temp 
-052d 18420e00 copy temp ,queue 
-052e c0038531 beq 0x07 ,p_mouse_key_press 
-052f c0000533 beq 0x00 ,p_mouse_key_release 
-0530 20600000 rtn 
+0528 6000cae1 store 1 ,mem_mouse_key_status 
+0529 1fe3fe00 lshift pdata ,pdata 
+052a 1fe22400 copy pdata ,regb 
+052b 18422600 copy temp ,regc 
+052c 6800cae0 fetch 1 ,mem_mouse_key_temp 
+052d 204067fb call gpio_config_input 
+052e 1a620400 copy regc ,temp 
+052f 2040681d call gpio_get_bit 
+0530 7920a400 setflag true ,0 ,regb 
+0531 1a417e07 and regb ,0x07 ,pdata 
+0532 6808cae0 fetcht 1 ,mem_mouse_key_temp 
+0533 18420e00 copy temp ,queue 
+0534 c0038537 beq 0x07 ,p_mouse_key_press 
+0535 c0000539 beq 0x00 ,p_mouse_key_release 
+0536 20600000 rtn 
 
 p_mouse_key_press:
-0531 f9202200 qset1 rega 
-0532 20600000 rtn 
+0537 f9202200 qset1 rega 
+0538 20600000 rtn 
 
 p_mouse_key_release:
-0533 f93fa200 qset0 rega 
-0534 20600000 rtn 
+0539 f93fa200 qset0 rega 
+053a 20600000 rtn 
 
 p_mouse_check_lkey_gpio:
-0535 704ae000 jam 0x00 ,mem_mouse_key_temp 
-0536 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-0537 6800cada fetch 1 ,mem_mouse_lkey_press_status 
-0538 20400522 call p_mouse_check_key 
-0539 6000cada store 1 ,mem_mouse_lkey_press_status 
+053b 704ae000 jam 0x00 ,mem_mouse_key_temp 
+053c 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+053d 6800cada fetch 1 ,mem_mouse_lkey_press_status 
+053e 20400528 call p_mouse_check_key 
+053f 6000cada store 1 ,mem_mouse_lkey_press_status 
 
 p_mouse_check_rkey_gpio:
-053a 704ae001 jam 0x01 ,mem_mouse_key_temp 
-053b 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-053c 6800cadb fetch 1 ,mem_mouse_rkey_press_status 
-053d 20400522 call p_mouse_check_key 
-053e 6000cadb store 1 ,mem_mouse_rkey_press_status 
+0540 704ae001 jam 0x01 ,mem_mouse_key_temp 
+0541 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0542 6800cadb fetch 1 ,mem_mouse_rkey_press_status 
+0543 20400528 call p_mouse_check_key 
+0544 6000cadb store 1 ,mem_mouse_rkey_press_status 
 
 p_mouse_check_mkey_gpio:
-053f 704ae002 jam 0x02 ,mem_mouse_key_temp 
-0540 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-0541 6800cadc fetch 1 ,mem_mouse_mkey_press_status 
-0542 20400522 call p_mouse_check_key 
-0543 6000cadc store 1 ,mem_mouse_mkey_press_status 
+0545 704ae002 jam 0x02 ,mem_mouse_key_temp 
+0546 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+0547 6800cadc fetch 1 ,mem_mouse_mkey_press_status 
+0548 20400528 call p_mouse_check_key 
+0549 6000cadc store 1 ,mem_mouse_mkey_press_status 
 
 p_mouse_check_bkkey_gpio:
-0544 704ae003 jam 0x03 ,mem_mouse_key_temp 
-0545 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
-0546 6800cadd fetch 1 ,mem_mouse_bkkey_press_status 
-0547 20400522 call p_mouse_check_key 
-0548 6000cadd store 1 ,mem_mouse_bkkey_press_status 
+054a 704ae003 jam 0x03 ,mem_mouse_key_temp 
+054b 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+054c 6800cadd fetch 1 ,mem_mouse_bkkey_press_status 
+054d 20400528 call p_mouse_check_key 
+054e 6000cadd store 1 ,mem_mouse_bkkey_press_status 
 
 p_mouse_check_fwkey_gpio:
-0549 704ae004 jam 0x04 ,mem_mouse_key_temp 
-054a 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
-054b 6800cade fetch 1 ,mem_mouse_fwkey_press_status 
-054c 20400522 call p_mouse_check_key 
-054d 6000cade store 1 ,mem_mouse_fwkey_press_status 
-054e 20600000 rtn 
+054f 704ae004 jam 0x04 ,mem_mouse_key_temp 
+0550 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+0551 6800cade fetch 1 ,mem_mouse_fwkey_press_status 
+0552 20400528 call p_mouse_check_key 
+0553 6000cade store 1 ,mem_mouse_fwkey_press_status 
+0554 20600000 rtn 
 
 p_key_release_flag:
-054f 68014b1c fetch 2 ,key_long_press_timer 
-0550 207a0000 rtn blank 
-0551 1fe67c0a sub pdata ,0x0a ,null 
-0552 24210570 nbranch p_long_press ,positive 
-0553 68014ae4 fetch 2 ,mem_customer_key 
-0554 247a0000 nrtn blank 
-0555 6800cb19 fetch 1 ,mem_2key_staus 
-0556 c0800565 bne 0 ,p_up_down_key_change_init 
-0557 68014b15 fetch 2 ,mem_key_staus 
+0555 68014b1c fetch 2 ,key_long_press_timer 
+0556 207a0000 rtn blank 
+0557 1fe67c0a sub pdata ,0x0a ,null 
+0558 24210576 nbranch p_long_press ,positive 
+0559 68014ae4 fetch 2 ,mem_customer_key 
+055a 247a0000 nrtn blank 
+055b 6800cb19 fetch 1 ,mem_2key_staus 
+055c c080056b bne 0 ,p_up_down_key_change_init 
+055d 68014b15 fetch 2 ,mem_key_staus 
 
 p_key_staus_store:
-0558 60014b13 store 2 ,key_key_staus 
-0559 68014b1c fetch 2 ,key_long_press_timer 
-055a 1fe67c0a sub pdata ,0x0a ,null 
-055b 2041051f call p_key_timer_set0 ,positive 
-055c 6800cb2a fetch 1 ,key_not_send_flag 
-055d c0008562 beq 0x01 ,p_key_not_send 
-055e 6800cb2d fetch 1 ,mem_packet_send_finish 
-055f c0008562 beq 0x01 ,p_key_not_send 
+055e 60014b13 store 2 ,key_key_staus 
+055f 68014b1c fetch 2 ,key_long_press_timer 
+0560 1fe67c0a sub pdata ,0x0a ,null 
+0561 20410525 call p_key_timer_set0 ,positive 
+0562 6800cb2c fetch 1 ,key_not_send_flag 
+0563 c0008568 beq 0x01 ,p_key_not_send 
+0564 6800cb2f fetch 1 ,mem_packet_send_finish 
+0565 c0008568 beq 0x01 ,p_key_not_send 
 
 p_key_staus_set0:
-0560 704b1500 jam 0 ,mem_key_staus 
-0561 20600000 rtn 
+0566 704b1500 jam 0 ,mem_key_staus 
+0567 20600000 rtn 
 
 p_key_not_send:
-0562 dfe00000 arg 0 ,pdata 
-0563 60014b13 store 2 ,key_key_staus 
-0564 20200560 branch p_key_staus_set0 
+0568 dfe00000 arg 0 ,pdata 
+0569 60014b13 store 2 ,key_key_staus 
+056a 20200566 branch p_key_staus_set0 
 
 p_up_down_key_change_init:
-0565 68014b15 fetch 2 ,mem_key_staus 
-0566 c0008569 beq 0x01 ,p_up_down_key_change 
-0567 c0010569 beq 0x02 ,p_up_down_key_change 
-0568 20200558 branch p_key_staus_store 
+056b 68014b15 fetch 2 ,mem_key_staus 
+056c c000856f beq 0x01 ,p_up_down_key_change 
+056d c001056f beq 0x02 ,p_up_down_key_change 
+056e 2020055e branch p_key_staus_store 
 
 p_up_down_key_change:
-0569 1fed7e00 lshift8 pdata ,pdata 
-056a 1fe3fe00 lshift pdata ,pdata 
-056b 6808cb19 fetcht 1 ,mem_2key_staus 
-056c 18467c01 sub temp ,0x01 ,null 
-056d 20228558 branch p_key_staus_store ,zero 
-056e 1febfe00 lshift2 pdata ,pdata 
-056f 20200558 branch p_key_staus_store 
+056f 1fed7e00 lshift8 pdata ,pdata 
+0570 1fe3fe00 lshift pdata ,pdata 
+0571 6808cb19 fetcht 1 ,mem_2key_staus 
+0572 18467c01 sub temp ,0x01 ,null 
+0573 2022855e branch p_key_staus_store ,zero 
+0574 1febfe00 lshift2 pdata ,pdata 
+0575 2020055e branch p_key_staus_store 
 
 p_long_press:
-0570 68014b15 fetch 2 ,mem_key_staus 
-0571 c0018583 beq 0x03 ,p_key_modle_change 
-0572 c0008577 beq 0x01 ,p_long_press2 
+0576 68014b15 fetch 2 ,mem_key_staus 
+0577 c0018589 beq 0x03 ,p_key_modle_change 
+0578 c000857d beq 0x01 ,p_long_press2 
 
 p_long_press_staus_store:
-0573 68014b15 fetch 2 ,mem_key_staus 
-0574 1ff27e00 lshift4 pdata ,pdata 
-0575 1fe3fe00 lshift pdata ,pdata 
-0576 20200558 branch p_key_staus_store 
+0579 68014b15 fetch 2 ,mem_key_staus 
+057a 1ff27e00 lshift4 pdata ,pdata 
+057b 1fe3fe00 lshift pdata ,pdata 
+057c 2020055e branch p_key_staus_store 
 
 p_long_press2:
-0577 6800cb2b fetch 1 ,mem_key_change 
-0578 205a057e call p_key_change ,blank 
-0579 6800cb31 fetch 1 ,key_long_press_frequency 
-057a c0000573 beq 0x00 ,p_long_press_staus_store 
-057b 68014b15 fetch 2 ,mem_key_staus 
-057c 1ff27e00 lshift4 pdata ,pdata 
-057d 20200558 branch p_key_staus_store 
+057d 6800cb2d fetch 1 ,mem_key_change 
+057e 205a0584 call p_key_change ,blank 
+057f 6800cb33 fetch 1 ,key_long_press_frequency 
+0580 c0000579 beq 0x00 ,p_long_press_staus_store 
+0581 68014b15 fetch 2 ,mem_key_staus 
+0582 1ff27e00 lshift4 pdata ,pdata 
+0583 2020055e branch p_key_staus_store 
 
 p_key_change:
-057e 704b2b01 jam 0x01 ,mem_key_change 
-057f 6800cb31 fetch 1 ,key_long_press_frequency 
-0580 79407e00 setflip 0 ,pdata 
-0581 6000cb31 store 1 ,key_long_press_frequency 
-0582 20600000 rtn 
+0584 704b2d01 jam 0x01 ,mem_key_change 
+0585 6800cb33 fetch 1 ,key_long_press_frequency 
+0586 79407e00 setflip 0 ,pdata 
+0587 6000cb33 store 1 ,key_long_press_frequency 
+0588 20600000 rtn 
 
 p_key_modle_change:
-0583 6800cb2c fetch 1 ,mem_2key_change 
-0584 247a0000 nrtn blank 
-0585 704b2c01 jam 1 ,mem_2key_change 
-0586 6800cb19 fetch 1 ,mem_2key_staus 
-0587 c001058b beq 2 ,p_2key_staus_set0 
-0588 1fe0fe01 increase 1 ,pdata 
-0589 6000cb19 store 1 ,mem_2key_staus 
-058a 20200506 branch p_store_key_staus_eeprom 
+0589 6800cb2e fetch 1 ,mem_2key_change 
+058a 247a0000 nrtn blank 
+058b 704b2e01 jam 1 ,mem_2key_change 
+058c 6800cb19 fetch 1 ,mem_2key_staus 
+058d c0010591 beq 2 ,p_2key_staus_set0 
+058e 1fe0fe01 increase 1 ,pdata 
+058f 6000cb19 store 1 ,mem_2key_staus 
+0590 2020050c branch p_store_key_staus_eeprom 
 
 p_2key_staus_set0:
-058b 704b1900 jam 0 ,mem_2key_staus 
-058c 20200506 branch p_store_key_staus_eeprom 
+0591 704b1900 jam 0 ,mem_2key_staus 
+0592 2020050c branch p_store_key_staus_eeprom 
+
+p_laser_init:
+0593 6808cb0e fetcht 1 ,mem_filp_laser_gpio 
+0594 2020680e branch gpio_config_output 
 
 p_laser_off:
-058d 6808cb0e fetcht 1 ,mem_filp_laser_gpio 
-058e 2040680e call gpio_config_output 
-058f 6808cb0e fetcht 1 ,mem_filp_laser_gpio 
-0590 20206829 branch gpio_out_active 
+0595 20400593 call p_laser_init 
+0596 20206825 branch gpio_out_inactive 
 
 p_laser_on:
-0591 c088058d bne 0x10 ,p_laser_off 
-0592 6808cb0e fetcht 1 ,mem_filp_laser_gpio 
-0593 2040680e call gpio_config_output 
-0594 6808cb0e fetcht 1 ,mem_filp_laser_gpio 
-0595 20206825 branch gpio_out_inactive 
+0597 c0880595 bne 0x10 ,p_laser_off 
+0598 20400593 call p_laser_init 
+0599 20206829 branch gpio_out_active 
+
+p_blue_led_init:
+059a 6808cb0f fetcht 1 ,mem_filp_led_gpio 
+059b 2020680e branch gpio_config_output 
 
 p_blue_led_on:
-0596 704b1001 jam on ,mem_led_on 
-0597 6808cb0f fetcht 1 ,mem_filp_led_gpio 
-0598 2040680e call gpio_config_output 
-0599 6808cb0f fetcht 1 ,mem_filp_led_gpio 
-059a 20206825 branch gpio_out_inactive 
+059c 704b1001 jam on ,mem_led_on 
+059d 2040059a call p_blue_led_init 
+059e 20206829 branch gpio_out_active 
 
 p_blue_led_off:
-059b 6800cb10 fetch 1 ,mem_led_on 
-059c c1000000 rtneq off 
+059f 6800cb10 fetch 1 ,mem_led_on 
+05a0 c1000000 rtneq off 
 
 p_blue_led_off2:
-059d 704b1000 jam off ,mem_led_on 
-059e 6808cb0f fetcht 1 ,mem_filp_led_gpio 
-059f 2040680e call gpio_config_output 
-05a0 6808cb0f fetcht 1 ,mem_filp_led_gpio 
-05a1 20206829 branch gpio_out_active 
+05a1 704b1000 jam off ,mem_led_on 
+05a2 2040059a call p_blue_led_init 
+05a3 20206825 branch gpio_out_inactive 
 
 p_mouse_24g_customer_key:
-05a2 c6930000 rtnmark0 mark_24g 
-05a3 1a227e00 copy rega ,pdata 
-05a4 207a0000 rtn blank 
-05a5 60014ae4 store 2 ,mem_customer_key 
-05a6 20207fe7 branch enable_user 
+05a4 c6930000 rtnmark0 mark_24g 
+05a5 1a227e00 copy rega ,pdata 
+05a6 207a0000 rtn blank 
+05a7 60014ae4 store 2 ,mem_customer_key 
+05a8 20207fe7 branch enable_user 
 
 p_mouse_bb_event_discovery_btn:
-05a7 280ffe26 isolate1 mark_24g ,mark 
-05a8 20408220 call p_g24_check_51cmd_stop_24g ,true 
-05a9 7046b400 jam 0 ,mem_mouse_send_blank_timer 
-05aa 6800caaa fetch 1 ,mem_mouse_le_not_tx_disconn 
-05ab 205a4386 call mouse_disconnect ,blank 
-05ac 58000000 setarg 0 
-05ad 600146b0 store 2 ,mem_mouse_no_data_timer 
-05ae 2020426f branch mouse_bb_event_discovery_btn + 3 
+05a9 280ffe26 isolate1 mark_24g ,mark 
+05aa 20408220 call p_g24_check_51cmd_stop_24g ,true 
+05ab 7046b400 jam 0 ,mem_mouse_send_blank_timer 
+05ac 6800caaa fetch 1 ,mem_mouse_le_not_tx_disconn 
+05ad 205a4386 call mouse_disconnect ,blank 
+05ae 58000000 setarg 0 
+05af 600146b0 store 2 ,mem_mouse_no_data_timer 
+05b0 2020426f branch mouse_bb_event_discovery_btn + 3 
 
 p_mouse_start_discovery:
-05af 204002e4 call p_mouse_tx_power_init 
-05b0 704a9100 jam 0 ,mem_le_send_security_request_flag 
-05b1 704a9e01 jam 1 ,mem_mouse_start_discovery_enable 
-05b2 70472001 jam mode_bt_device1 ,mem_device_flag 
-05b3 70479c00 jam 0 ,mem_mouse_clear_sensor_data_flag 
+05b1 204002e4 call p_mouse_tx_power_init 
+05b2 704a9100 jam 0 ,mem_le_send_security_request_flag 
+05b3 704a9e01 jam 1 ,mem_mouse_start_discovery_enable 
+05b4 70472001 jam mode_bt_device1 ,mem_device_flag 
+05b5 70479c00 jam 0 ,mem_mouse_clear_sensor_data_flag 
 
 p_mouse_start_discovery_norandom:
-05b4 20403418 call app_lpm_mult_disable 
-05b5 68014687 fetch 2 ,mem_discovery_timeout 
-05b6 600146ac store 2 ,mem_mouse_discovery_timer 
-05b7 70016d06 jam 6 ,mem_connection_options 
-05b8 58000000 setarg 0 
-05b9 600146b0 store 2 ,mem_mouse_no_data_timer 
-05ba 600146ae store 2 ,mem_mouse_direct_timer 
-05bb 204005c7 call p_mouse_store_eeprom_enable 
-05bc 6800ca9f fetch 1 ,mem_mouse_le_adv_start 
-05bd 245a03c8 ncall p_check_51cmd_adv ,blank 
-05be 202042c4 branch mouse_start_discovery_norandom + 13 
+05b6 20403418 call app_lpm_mult_disable 
+05b7 68014687 fetch 2 ,mem_discovery_timeout 
+05b8 600146ac store 2 ,mem_mouse_discovery_timer 
+05b9 70016d06 jam 6 ,mem_connection_options 
+05ba 58000000 setarg 0 
+05bb 600146b0 store 2 ,mem_mouse_no_data_timer 
+05bc 600146ae store 2 ,mem_mouse_direct_timer 
+05bd 204005c9 call p_mouse_store_eeprom_enable 
+05be 6800ca9f fetch 1 ,mem_mouse_le_adv_start 
+05bf 245a03c8 ncall p_check_51cmd_adv ,blank 
+05c0 202042c4 branch mouse_start_discovery_norandom + 13 
 
 p_mouse_le_adv_data_update:
-05bf 70436f1f jam 0x1f ,mem_le_adv_data_len 
-05c0 70438f1f jam 0x1f ,mem_le_scan_data_len 
-05c1 204005c7 call p_mouse_store_eeprom_enable 
-05c2 d8c04a71 arg mem_le_adv_swift_pair ,contr 
+05c1 70436f1f jam 0x1f ,mem_le_adv_data_len 
+05c2 70438f1f jam 0x1f ,mem_le_scan_data_len 
+05c3 204005c9 call p_mouse_store_eeprom_enable 
+05c4 d8c04a71 arg mem_le_adv_swift_pair ,contr 
 
 p_le_adv_data_update:
-05c3 d8a0437b arg mem_le_adv_data + 11 ,contw 
-05c4 df200013 arg 19 ,loopcnt 
-05c5 20407f01 call memcpy 
-05c6 202057b8 branch le_modified_name_adv 
+05c5 d8a0437b arg mem_le_adv_data + 11 ,contw 
+05c6 df200013 arg 19 ,loopcnt 
+05c7 20407f01 call memcpy 
+05c8 202057b8 branch le_modified_name_adv 
 
 p_mouse_store_eeprom_enable:
-05c7 d8e00007 arg mouse_store_eeprom_flag ,queue 
-05c8 202043ce branch mouse_enable_function_flag 
+05c9 d8e00007 arg mouse_store_eeprom_flag ,queue 
+05ca 202043ce branch mouse_enable_function_flag 
 
 p_mouse_stop_discovery:
-05c9 58000000 setarg 0 
-05ca 600146ac store 2 ,mem_mouse_discovery_timer 
-05cb 704b3301 jam 1 ,mem_mouse_connect_success 
-05cc 202042cb branch mouse_stop_discovery + 1 
+05cb 58000000 setarg 0 
+05cc 600146ac store 2 ,mem_mouse_discovery_timer 
+05cd 704b3501 jam 1 ,mem_mouse_connect_success 
+05ce 202042cb branch mouse_stop_discovery + 1 
 
 p_le_slave_match:
-05cd 6800c50f fetch 1 ,mem_le_md_count 
-05ce 1fe0fe01 pincrease 1 
-05cf 6000c50f store 1 ,mem_le_md_count 
-05d0 c0065395 beq le_md_max_count ,le_slave_cont 
-05d1 204055aa call le_acknowledge 
-05d2 2040561e call le_prepare_tx 
-05d3 20400688 call power_ctrl_start 
-05d4 2020538f branch le_slave_match + 7 
+05cf 6800c50f fetch 1 ,mem_le_md_count 
+05d0 1fe0fe01 pincrease 1 
+05d1 6000c50f store 1 ,mem_le_md_count 
+05d2 c0065395 beq le_md_max_count ,le_slave_cont 
+05d3 204055aa call le_acknowledge 
+05d4 2040561e call le_prepare_tx 
+05d5 2040068a call power_ctrl_start 
+05d6 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
-05d5 68008016 fetch 1 ,mem_le_ch_mapped 
-05d6 1fe0fe01 increase 1 ,pdata 
-05d7 60008016 store 1 ,mem_le_ch_mapped 
-05d8 c1940000 rtnne 40 
-05d9 70001625 jam 37 ,mem_le_ch_mapped 
-05da 20600000 rtn 
+05d7 68008016 fetch 1 ,mem_le_ch_mapped 
+05d8 1fe0fe01 increase 1 ,pdata 
+05d9 60008016 store 1 ,mem_le_ch_mapped 
+05da c1940000 rtnne 40 
+05db 70001625 jam 37 ,mem_le_ch_mapped 
+05dc 20600000 rtn 
 
 p_le_receive_skip:
-05db 204029bb call save_rssi 
-05dc 20400275 call p_rssi_signal 
-05dd 202054a3 branch le_receive_skip + 2 
+05dd 204029bb call save_rssi 
+05de 20400275 call p_rssi_signal 
+05df 202054a3 branch le_receive_skip + 2 
 
 p_le_update_param:
-05de 204005e4 call p_mouse_le_conn_param_check 
-05df 2020557d branch le_update_param + 8 
+05e0 204005e6 call p_mouse_le_conn_param_check 
+05e1 2020557d branch le_update_param + 8 
 
 p_mouse_le_lpm_mult_reinit:
-05e0 6800c7c5 fetch 1 ,mem_lpm_mult_init 
-05e1 6000c172 store 1 ,mem_lpm_mult 
+05e2 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+05e3 6000c172 store 1 ,mem_lpm_mult 
 
 p_mouse_le_conn_param_lpm_enable:
-05e2 7047c400 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
-05e3 20600000 rtn 
+05e4 7047c400 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+05e5 20600000 rtn 
 
 p_mouse_le_conn_param_check:
-05e4 6800c3d6 fetch 1 ,mem_le_new_conninterval 
-05e5 1fe67c0c sub pdata ,le_interval_15ms ,null 
-05e6 242103de nbranch p_mouse_le_conn_param_lpm_disable ,positive 
-05e7 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-05e8 6808c7c5 fetcht 1 ,mem_lpm_mult_init 
-05e9 98467c00 isub temp ,null 
-05ea 202105e0 branch p_mouse_le_lpm_mult_reinit ,positive 
-05eb 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-05ec 6000c172 store 1 ,mem_lpm_mult 
-05ed 202005e2 branch p_mouse_le_conn_param_lpm_enable 
+05e6 6800c3d6 fetch 1 ,mem_le_new_conninterval 
+05e7 1fe67c0c sub pdata ,le_interval_15ms ,null 
+05e8 242103de nbranch p_mouse_le_conn_param_lpm_disable ,positive 
+05e9 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+05ea 6808c7c5 fetcht 1 ,mem_lpm_mult_init 
+05eb 98467c00 isub temp ,null 
+05ec 202105e2 branch p_mouse_le_lpm_mult_reinit ,positive 
+05ed 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+05ee 6000c172 store 1 ,mem_lpm_mult 
+05ef 202005e4 branch p_mouse_le_conn_param_lpm_enable 
 
 p_le_update_channel_map:
-05ee 6800843f fetch 1 ,mem_le_state 
-05ef c4030000 rtnbit0 lestate_update_map 
-05f0 204005f3 call p_le_channel_map_overflow_check 
-05f1 24740000 nrtn user 
-05f2 202055a0 branch le_update_channel_map + 3 
+05f0 6800843f fetch 1 ,mem_le_state 
+05f1 c4030000 rtnbit0 lestate_update_map 
+05f2 204005f5 call p_le_channel_map_overflow_check 
+05f3 24740000 nrtn user 
+05f4 202055a0 branch le_update_channel_map + 3 
 
 p_le_channel_map_overflow_check:
-05f3 78347c00 enable user 
-05f4 6800845a fetch 1 ,mem_le_event_count + 1 
-05f5 1ff1fe00 rshift4 pdata ,pdata 
-05f6 c1878000 rtnne 0x0f 
-05f7 68008460 fetch 1 ,mem_le_instant + 1 
-05f8 1ff1fe00 rshift4 pdata ,pdata 
-05f9 c1800000 rtnne 0x00 
-05fa 20207fe9 branch disable_user 
+05f5 78347c00 enable user 
+05f6 6800845a fetch 1 ,mem_le_event_count + 1 
+05f7 1ff1fe00 rshift4 pdata ,pdata 
+05f8 c1878000 rtnne 0x0f 
+05f9 68008460 fetch 1 ,mem_le_instant + 1 
+05fa 1ff1fe00 rshift4 pdata ,pdata 
+05fb c1800000 rtnne 0x00 
+05fc 20207fe9 branch disable_user 
 
 p_le_prepare_tx:
-05fb 68008456 fetch 1 ,mem_le_arq 
-05fc c282861a bbit1 wak ,p_le_prepare_tx_wak 
-05fd 20400682 call power_ctrl_pac_succ_incrs 
-05fe 6800c78e fetch 1 ,mem_empty_count 
-05ff 243a0605 nbranch p_le_send_empyt ,blank 
-0600 6800843f fetch 1 ,mem_le_state 
-0601 c3020609 bbit0 lestate_encryption ,p_le_tx_4 
-0602 680082da fetch 1 ,mem_le_rxbuf + 1 
-0603 203a0609 branch p_le_tx_4 ,blank 
-0604 20205664 branch le_send_empty 
+05fd 68008456 fetch 1 ,mem_le_arq 
+05fe c282861c bbit1 wak ,p_le_prepare_tx_wak 
+05ff 20400684 call power_ctrl_pac_succ_incrs 
+0600 6800c78e fetch 1 ,mem_empty_count 
+0601 243a0607 nbranch p_le_send_empyt ,blank 
+0602 6800843f fetch 1 ,mem_le_state 
+0603 c302060b bbit0 lestate_encryption ,p_le_tx_4 
+0604 680082da fetch 1 ,mem_le_rxbuf + 1 
+0605 203a060b branch p_le_tx_4 ,blank 
+0606 20205664 branch le_send_empty 
 
 p_le_send_empyt:
-0605 6800c78e fetch 1 ,mem_empty_count 
-0606 1fe0ffff increase -1 ,pdata 
-0607 6000c78e store 1 ,mem_empty_count 
-0608 20205664 branch le_send_empty 
+0607 6800c78e fetch 1 ,mem_empty_count 
+0608 1fe0ffff increase -1 ,pdata 
+0609 6000c78e store 1 ,mem_empty_count 
+060a 20205664 branch le_send_empty 
 
 p_le_tx_4:
-0609 6800c4c4 fetch 1 ,mem_le_pairing_state 
-060a c082860c bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-060b 70478e03 jam 3 ,mem_empty_count 
+060b 6800c4c4 fetch 1 ,mem_le_pairing_state 
+060c c082860e bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+060d 70478e03 jam 3 ,mem_empty_count 
 
 p_in_le_tx_4:
-060c 20405892 call le_fifo_check_nearly_full 
-060d 205a038f call p_mouse_data_pull ,blank 
-060e 20205622 branch le_prepare_tx + 4 
+060e 20405892 call le_fifo_check_nearly_full 
+060f 205a038f call p_mouse_data_pull ,blank 
+0610 20205622 branch le_prepare_tx + 4 
 
 p_le_check_tx_retransmit_setmd:
-060f 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0610 1fe17e03 and pdata ,0x03 ,pdata 
-0611 c1818000 rtnne 0x03 
-0612 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0613 207a0000 rtn blank 
-0614 6800c3dd fetch 1 ,mem_le_txlen 
+0611 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0612 1fe17e03 and pdata ,0x03 ,pdata 
+0613 c1818000 rtnne 0x03 
+0614 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
 0615 207a0000 rtn blank 
-0616 6800c3dc fetch 1 ,mem_le_txheader 
-0617 79207e04 set1 md ,pdata 
-0618 6000c3dc store 1 ,mem_le_txheader 
-0619 20205650 branch le_set_md 
+0616 6800c3dd fetch 1 ,mem_le_txlen 
+0617 207a0000 rtn blank 
+0618 6800c3dc fetch 1 ,mem_le_txheader 
+0619 79207e04 set1 md ,pdata 
+061a 6000c3dc store 1 ,mem_le_txheader 
+061b 20205650 branch le_set_md 
 
 p_le_prepare_tx_wak:
-061a 2040060f call p_le_check_tx_retransmit_setmd 
+061c 20400611 call p_le_check_tx_retransmit_setmd 
 
 p_le_power_ctrl_pac_succ_decrs:
 
 power_ctrl_pac_succ_decrs:
-061b 6800ccf9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-061c 1fe67c02 sub pdata ,2 ,null 
-061d 24410686 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-061e 6800ccf9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-061f c1000000 rtneq 0 
-0620 1fe0ffff increase -1 ,pdata 
-0621 20200684 branch power_ctrl_pac_succ_incrs_store 
+061d 6800ccfb fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+061e 1fe67c02 sub pdata ,2 ,null 
+061f 24410688 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0620 6800ccfb fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0621 c1000000 rtneq 0 
+0622 1fe0ffff increase -1 ,pdata 
+0623 20200686 branch power_ctrl_pac_succ_incrs_store 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
-0622 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-0623 207a0000 rtn blank 
-0624 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0625 1fe17e03 and pdata ,0x03 ,pdata 
-0626 c1018000 rtneq 0x03 
-0627 7046c60a jam 10 ,mem_le_start_encrypt_timer 
-0628 20600000 rtn 
+0624 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+0625 207a0000 rtn blank 
+0626 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0627 1fe17e03 and pdata ,0x03 ,pdata 
+0628 c1018000 rtneq 0x03 
+0629 7046c60a jam 10 ,mem_le_start_encrypt_timer 
+062a 20600000 rtn 
 
 p_le_parse:
-0629 c6078000 rtnmark1 mark_old_packet 
-062a 20405890 call le_fifo_check_full 
-062b 247a0000 nrtn blank 
-062c 680082d9 fetch 1 ,mem_le_rxbuf 
-062d 1fe17e03 and pdata ,0x3 ,pdata 
-062e 6000c50c store 1 ,mem_le_packet_llid 
-062f e8c08000 ifetch 1 ,contr 
-0630 1fe17e1f and pdata ,0x1f ,pdata 
-0631 6000c50b store 1 ,mem_le_packet_size 
-0632 207a0000 rtn blank 
-0633 18c27e00 copy contr ,pdata 
-0634 6001450d store 2 ,mem_le_payload_ptr 
-0635 6800c50c fetch 1 ,mem_le_packet_llid 
-0636 c0018638 beq llid_le_ll ,p_le_parse_ll 
-0637 2020568d branch le_parse_l2cap 
+062b c6078000 rtnmark1 mark_old_packet 
+062c 20405890 call le_fifo_check_full 
+062d 247a0000 nrtn blank 
+062e 680082d9 fetch 1 ,mem_le_rxbuf 
+062f 1fe17e03 and pdata ,0x3 ,pdata 
+0630 6000c50c store 1 ,mem_le_packet_llid 
+0631 e8c08000 ifetch 1 ,contr 
+0632 1fe17e1f and pdata ,0x1f ,pdata 
+0633 6000c50b store 1 ,mem_le_packet_size 
+0634 207a0000 rtn blank 
+0635 18c27e00 copy contr ,pdata 
+0636 6001450d store 2 ,mem_le_payload_ptr 
+0637 6800c50c fetch 1 ,mem_le_packet_llid 
+0638 c001863a beq llid_le_ll ,p_le_parse_ll 
+0639 2020568d branch le_parse_l2cap 
 
 p_le_parse_ll:
-0638 680082db fetch 1 ,mem_le_rxbuf + 2 
-0639 c000063c beq ll_connection_update_req ,p_le_parse_connection_update_req 
-063a c0008643 beq ll_channel_map_req ,p_le_parse_channel_map_req 
-063b 20205c65 branch le_parse_ll + 1 
+063a 680082db fetch 1 ,mem_le_rxbuf + 2 
+063b c000063e beq ll_connection_update_req ,p_le_parse_connection_update_req 
+063c c0008645 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+063d 20205c65 branch le_parse_ll + 1 
 
 p_le_parse_connection_update_req:
-063c 20405c7b call le_parse_connection_update_req 
-063d 6800caa7 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
-063e 207a0000 rtn blank 
+063e 20405c7b call le_parse_connection_update_req 
+063f 6800caa7 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
+0640 207a0000 rtn blank 
 
 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
-063f 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-0640 6000c172 store 1 ,mem_lpm_mult 
-0641 6000c7c5 store 1 ,mem_lpm_mult_init 
-0642 20600000 rtn 
+0641 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+0642 6000c172 store 1 ,mem_lpm_mult 
+0643 6000c7c5 store 1 ,mem_lpm_mult_init 
+0644 20600000 rtn 
 
 p_le_parse_channel_map_req:
-0643 e8c28000 ifetch 5 ,contr 
-0644 6002c3ce store 5 ,mem_le_new_map 
-0645 e8c10000 ifetch 2 ,contr 
-0646 6001045f store 2 ,mem_le_instant 
-0647 20205c8a branch le_parse_channel_map_req + 7 
+0645 e8c28000 ifetch 5 ,contr 
+0646 6002c3ce store 5 ,mem_le_new_map 
+0647 e8c10000 ifetch 2 ,contr 
+0648 6001045f store 2 ,mem_le_instant 
+0649 20205c8a branch le_parse_channel_map_req + 7 
 
 p_le_parse_l2cap:
-0648 e8c10000 ifetch 2 ,contr 
-0649 c002064c beq le_l2cap_cid_att ,p_le_parse_att 
-064a c0030650 beq le_l2cap_cid_smp ,p_le_parse_smp 
-064b 20205698 branch le_parse_l2cap + 11 
+064a e8c10000 ifetch 2 ,contr 
+064b c002064e beq le_l2cap_cid_att ,p_le_parse_att 
+064c c0030652 beq le_l2cap_cid_smp ,p_le_parse_smp 
+064d 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
-064c 20407ea5 call store_contr 
-064d 20400622 call p_mouse_le_reconn_write_enable_timer_reinit 
-064e 20407e9f call get_contr 
-064f 202058ab branch le_parse_att 
+064e 20407ea5 call store_contr 
+064f 20400624 call p_mouse_le_reconn_write_enable_timer_reinit 
+0650 20407e9f call get_contr 
+0651 202058ab branch le_parse_att 
 
 p_le_parse_smp:
-0650 e8c08000 ifetch 1 ,contr 
-0651 c0008654 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-0652 c0028656 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0653 20205af6 branch le_parse_smp + 2 
+0652 e8c08000 ifetch 1 ,contr 
+0653 c0008656 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0654 c0028658 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0655 20205af6 branch le_parse_smp + 2 
 
 p_le_parse_smp_pairing_request:
-0654 704a9101 jam 1 ,mem_le_send_security_request_flag 
-0655 20205b09 branch le_parse_smp_pairing_request 
+0656 704a9101 jam 1 ,mem_le_send_security_request_flag 
+0657 20205b09 branch le_parse_smp_pairing_request 
 
 p_le_parse_smp_pairing_failed:
-0656 20405b5a call le_parse_smp_pairing_failed 
-0657 6800843f fetch 1 ,mem_le_state 
-0658 793ffe05 set0 lestate_update_param ,pdata 
-0659 6000843f store 1 ,mem_le_state 
-065a 20205c8e branch le_parse_terminate_ind 
+0658 20405b5a call le_parse_smp_pairing_failed 
+0659 6800843f fetch 1 ,mem_le_state 
+065a 793ffe05 set0 lestate_update_param ,pdata 
+065b 6000843f store 1 ,mem_le_state 
+065c 20205c8e branch le_parse_terminate_ind 
 
 p_le_adv_not_match:
-065b 68008016 fetch 1 ,mem_le_ch_mapped 
-065c c093d6f2 bne 39 ,le_adv_loop 
-065d 180a7e00 random pdata 
-065e d84001ff arg 0x1ff ,temp 
-065f 98417e00 iand temp ,pdata 
-0660 1fe0fefa add pdata ,250 ,pdata 
-0661 20403cbe call delay 
-0662 d8e00000 arg le_adv_interval_timer ,queue 
-0663 68014482 fetch 2 ,mem_le_adv_interval 
-0664 20207f08 branch timer_init 
+065d 68008016 fetch 1 ,mem_le_ch_mapped 
+065e c093d6f2 bne 39 ,le_adv_loop 
+065f 180a7e00 random pdata 
+0660 d84001ff arg 0x1ff ,temp 
+0661 98417e00 iand temp ,pdata 
+0662 1fe0fefa add pdata ,250 ,pdata 
+0663 20403cbe call delay 
+0664 d8e00000 arg le_adv_interval_timer ,queue 
+0665 68014482 fetch 2 ,mem_le_adv_interval 
+0666 20207f08 branch timer_init 
 
 p_le_lpm_setmult:
-0665 7855fc00 disable wake 
-0666 20370668 branch p_le_lpm_set_mult_attempt ,attempt 
-0667 2436d806 nbranch le_lpm_lost ,match 
+0667 7855fc00 disable wake 
+0668 2037066a branch p_le_lpm_set_mult_attempt ,attempt 
+0669 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-0668 20402bcb call lpm_match 
-0669 680140c1 fetch 2 ,mem_rx_window_sniff 
-066a 6001044d store 2 ,mem_le_receive_window 
-066b 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-066c 2fe00603 compare 3 ,pdata ,3 
-066d 2420abde nbranch lpm_mult_short ,true 
-066e 202057fb branch le_lpm_set_mult_attempt + 3 
+066a 20402bcb call lpm_match 
+066b 680140c1 fetch 2 ,mem_rx_window_sniff 
+066c 6001044d store 2 ,mem_le_receive_window 
+066d 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+066e 2fe00603 compare 3 ,pdata ,3 
+066f 2420abde nbranch lpm_mult_short ,true 
+0670 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-066f 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-0670 247a0000 nrtn blank 
-0671 68008478 fetch 1 ,mem_le_att_handle 
-0672 1fe67e1a sub pdata ,26 ,pdata 
-0673 24628000 nrtn zero 
-0674 7046c600 jam 0 ,mem_le_start_encrypt_timer 
-0675 20203d60 branch mouse_le_write_enable 
+0671 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+0672 247a0000 nrtn blank 
+0673 68008478 fetch 1 ,mem_le_att_handle 
+0674 1fe67e1a sub pdata ,26 ,pdata 
+0675 24628000 nrtn zero 
+0676 7046c600 jam 0 ,mem_le_start_encrypt_timer 
+0677 20203d60 branch mouse_le_write_enable 
 
 p_check_51cmd_once_continue:
-0676 204062bc call lmo_fifo_check 
-0677 243a7ddb nbranch check_51cmd_restore ,blank 
-0678 68008a99 fetch 1 ,mem_fifo_temp 
-0679 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-067a c009067c beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-067b 20207dca branch check_51cmd_once_continue + 2 
+0678 204062bc call lmo_fifo_check 
+0679 243a7ddb nbranch check_51cmd_restore ,blank 
+067a 68008a99 fetch 1 ,mem_fifo_temp 
+067b c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+067c c009067e beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+067d 20207dca branch check_51cmd_once_continue + 2 
 
 p_check_51cmd_ble_update_connect_param:
-067c 20405890 call le_fifo_check_full 
-067d 247a0000 nrtn blank 
-067e 20205abf branch le_l2cap_tx_update_req 
+067e 20405890 call le_fifo_check_full 
+067f 247a0000 nrtn blank 
+0680 20205abf branch le_l2cap_tx_update_req 
 
 power_ctrl_pac_succ_cnt_init:
-067f 704cfc01 jam 1 ,mem_power_ctrl_level 
-0680 704cf900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0681 20600000 rtn 
+0681 704cfe01 jam 1 ,mem_power_ctrl_level 
+0682 704cfb00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0683 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0682 6800ccf9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0683 1fe0fe01 increase 1 ,pdata 
+0684 6800ccfb fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0685 1fe0fe01 increase 1 ,pdata 
 
 power_ctrl_pac_succ_incrs_store:
-0684 6000ccf9 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0685 20600000 rtn 
+0686 6000ccfb store 1 ,mem_power_ctrl_pac_succ_cnt 
+0687 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-0686 704cf903 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-0687 20600000 rtn 
+0688 704cfb03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0689 20600000 rtn 
 
 power_ctrl_start:
-0688 68014682 fetch 2 ,mem_ui_state_map 
-0689 c3858000 rtnbit1 ui_state_ble_adv 
-068a da204c82 arg mem_rssi_signal_buf ,rega 
-068b 204002b7 call p_rssi_average 
-068c 6008ccfa storet 1 ,mem_rssi_avg_received 
-068d 58000082 setarg rssi_dis_max_24g 
-068e c5130690 bmark1 mark_24g ,power_ctrl_start_next 
-068f 58000080 setarg rssi_dis_max_ble 
+068a 68014682 fetch 2 ,mem_ui_state_map 
+068b c3858000 rtnbit1 ui_state_ble_adv 
+068c da204c84 arg mem_rssi_signal_buf ,rega 
+068d 204002b7 call p_rssi_average 
+068e 6008ccfc storet 1 ,mem_rssi_avg_received 
+068f 58000082 setarg rssi_dis_max_24g 
+0690 c5130692 bmark1 mark_24g ,power_ctrl_start_next 
+0691 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-0690 98467c00 isub temp ,null 
-0691 242106a8 nbranch power_ctrl_txpower_incrs_force ,positive 
-0692 6800ccf9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0693 1fe67c02 sub pdata ,2 ,null 
-0694 24210698 nbranch power_ctrl_txpower_decrs_check ,positive 
-0695 6800ccf9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0696 c00006a9 beq 0 ,power_ctrl_txpower_incrs 
-0697 20600000 rtn 
+0692 98467c00 isub temp ,null 
+0693 242106aa nbranch power_ctrl_txpower_incrs_force ,positive 
+0694 6800ccfb fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0695 1fe67c02 sub pdata ,2 ,null 
+0696 2421069a nbranch power_ctrl_txpower_decrs_check ,positive 
+0697 6800ccfb fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0698 c00006ab beq 0 ,power_ctrl_txpower_incrs 
+0699 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-0698 6800ccf9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0699 c1990000 rtnne 50 
-069a 704cf900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+069a 6800ccfb fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+069b c1990000 rtnne 50 
+069c 704cfb00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-069b 6808ccfa fetcht 1 ,mem_rssi_avg_received 
-069c 58000077 setarg rssi_dis_min_24g 
-069d c513069f bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-069e 58000075 setarg rssi_dis_min_ble 
+069d 6808ccfc fetcht 1 ,mem_rssi_avg_received 
+069e 58000077 setarg rssi_dis_min_24g 
+069f c51306a1 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+06a0 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-069f 98467c00 isub temp ,null 
-06a0 24610000 nrtn positive 
-06a1 6800ccfc fetch 1 ,mem_power_ctrl_level 
-06a2 c00006b0 beq 0 ,power_ctrl_decrs_level0 
-06a3 1fe0ffff increase -1 ,pdata 
-06a4 6000ccfc store 1 ,mem_power_ctrl_level 
-06a5 c00006b0 beq 0 ,power_ctrl_decrs_level0 
+06a1 98467c00 isub temp ,null 
+06a2 24610000 nrtn positive 
+06a3 6800ccfe fetch 1 ,mem_power_ctrl_level 
+06a4 c00006b2 beq 0 ,power_ctrl_decrs_level0 
+06a5 1fe0ffff increase -1 ,pdata 
+06a6 6000ccfe store 1 ,mem_power_ctrl_level 
+06a7 c00006b2 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-06a6 7041de00 jam tx_power_0db ,mem_tx_power 
-06a7 20600000 rtn 
+06a8 7041de00 jam tx_power_0db ,mem_tx_power 
+06a9 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-06a8 704cf900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+06aa 704cfb00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-06a9 6800ccfc fetch 1 ,mem_power_ctrl_level 
-06aa c00106ae beq 2 ,power_ctrl_incrs_level2 
-06ab 1fe0fe01 increase 1 ,pdata 
-06ac 6000ccfc store 1 ,mem_power_ctrl_level 
-06ad c00086a6 beq 1 ,power_ctrl_incrs_level1 
+06ab 6800ccfe fetch 1 ,mem_power_ctrl_level 
+06ac c00106b0 beq 2 ,power_ctrl_incrs_level2 
+06ad 1fe0fe01 increase 1 ,pdata 
+06ae 6000ccfe store 1 ,mem_power_ctrl_level 
+06af c00086a8 beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-06ae 7041de02 jam tx_power_5db ,mem_tx_power 
-06af 20600000 rtn 
+06b0 7041de02 jam tx_power_5db ,mem_tx_power 
+06b1 20600000 rtn 
 
 power_ctrl_decrs_level0:
-06b0 7041de04 jam tx_power_f5db ,mem_tx_power 
-06b1 20600000 rtn 
+06b2 7041de04 jam tx_power_f5db ,mem_tx_power 
+06b3 20600000 rtn 
 
 p_set_freq_tx:
-06b2 60088017 storet 1 ,mem_last_freq 
-06b3 1840a200 add temp ,0 ,rega 
-06b4 20402981 call rf_write_freq 
-06b5 58000500 setarg param_pll_setup 
-06b6 20402a8f call sleep 
+06b4 60088017 storet 1 ,mem_last_freq 
+06b5 1840a200 add temp ,0 ,rega 
+06b6 20402981 call rf_write_freq 
+06b7 58000500 setarg param_pll_setup 
+06b8 20402a8f call sleep 
 
 p_rf_tx_enable:
-06b7 70890601 jam 0x1 ,rfen_adc 
-06b8 7089003c jam 0x3c ,rfen_rx 
-06b9 708901e0 jam 0xe0 ,rfen_tx 
-06ba 2000000a nop 10 
-06bb 70890201 jam 0x01 ,rfen_mdm 
-06bc 7089023d jam 0x3d ,rfen_mdm 
-06bd 2000000a nop 10 
-06be 708903b7 jam 0xb7 ,rfen_sn 
+06b9 70890601 jam 0x1 ,rfen_adc 
+06ba 7089003c jam 0x3c ,rfen_rx 
+06bb 708901e0 jam 0xe0 ,rfen_tx 
+06bc 2000000a nop 10 
+06bd 70890201 jam 0x01 ,rfen_mdm 
+06be 7089023d jam 0x3d ,rfen_mdm 
 06bf 2000000a nop 10 
-06c0 7089027d jam 0x7d ,rfen_mdm 
-06c1 6800c1de fetch 1 ,mem_tx_power 
-06c2 c00106ca beq tx_power_5db ,p_set_tx_power_5db 
-06c3 c00206d2 beq tx_power_f5db ,p_set_tx_power_f5db 
-06c4 c01006dc beq tx_power_pair ,p_set_tx_power_pair 
+06c0 708903b7 jam 0xb7 ,rfen_sn 
+06c1 2000000a nop 10 
+06c2 7089027d jam 0x7d ,rfen_mdm 
+06c3 6800c1de fetch 1 ,mem_tx_power 
+06c4 c00106cc beq tx_power_5db ,p_set_tx_power_5db 
+06c5 c00206d4 beq tx_power_f5db ,p_set_tx_power_f5db 
+06c6 c01006de beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-06c5 204006d7 call p_rx_low_sens 
-06c6 708955d0 jam 0xd0 ,0x8955 
-06c7 708956e0 jam 0xe0 ,0x8956 
-06c8 7089586c jam 0x6c ,0x8958 
-06c9 2020294b branch set_tx_power_0db 
+06c7 204006d9 call p_rx_low_sens 
+06c8 708955d0 jam 0xd0 ,0x8955 
+06c9 708956e0 jam 0xe0 ,0x8956 
+06ca 7089586c jam 0x6c ,0x8958 
+06cb 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-06ca 70894cfb jam 0xfb ,0x894c 
-06cb 70894def jam 0xef ,0x894d 
-06cc 70894eec jam 0xec ,0x894e 
-06cd 70894f5e jam 0x5e ,0x894f 
-06ce 708955d0 jam 0xd0 ,0x8955 
-06cf 708956e0 jam 0xe0 ,0x8956 
-06d0 7089583c jam 0x3c ,0x8958 
-06d1 20202953 branch set_tx_power_5db 
+06cc 70894cfb jam 0xfb ,0x894c 
+06cd 70894def jam 0xef ,0x894d 
+06ce 70894eec jam 0xec ,0x894e 
+06cf 70894f5e jam 0x5e ,0x894f 
+06d0 708955d0 jam 0xd0 ,0x8955 
+06d1 708956e0 jam 0xe0 ,0x8956 
+06d2 7089583c jam 0x3c ,0x8958 
+06d3 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-06d2 204006d7 call p_rx_low_sens 
-06d3 708955d0 jam 0xd0 ,0x8955 
-06d4 708956c0 jam 0xc0 ,0x8956 
-06d5 7089586c jam 0x6c ,0x8958 
-06d6 2020295b branch set_tx_power_f5db 
+06d4 204006d9 call p_rx_low_sens 
+06d5 708955d0 jam 0xd0 ,0x8955 
+06d6 708956c0 jam 0xc0 ,0x8956 
+06d7 7089586c jam 0x6c ,0x8958 
+06d8 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-06d7 70894c5b jam 0x5b ,0x894c 
-06d8 70894d96 jam 0x96 ,0x894d 
-06d9 70894e2c jam 0x2c ,0x894e 
-06da 70894f46 jam 0x46 ,0x894f 
-06db 20600000 rtn 
+06d9 70894c5b jam 0x5b ,0x894c 
+06da 70894d96 jam 0x96 ,0x894d 
+06db 70894e2c jam 0x2c ,0x894e 
+06dc 70894f46 jam 0x46 ,0x894f 
+06dd 20600000 rtn 
 
 p_set_tx_power_pair:
-06dc 708956c2 jam 0xc2 ,0x8956 
-06dd 708955d0 jam 0xd0 ,0x8955 
-06de 20600000 rtn 
+06de 708956c2 jam 0xc2 ,0x8956 
+06df 708955d0 jam 0xd0 ,0x8955 
+06e0 20600000 rtn 
 
 p_shutdown_radio:
-06df 18002a08 force 8 ,radio_ctrl 
-06e0 202028fa branch shutdown_radio + 1 
+06e1 18002a08 force 8 ,radio_ctrl 
+06e2 202028fa branch shutdown_radio + 1 
               org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /branch/flip_pen/program/patch.prog	(revision 2872)
+++ /branch/flip_pen/program/patch.prog	(working copy)
@@ -77,6 +77,7 @@
 	branch soft_reset+11
 
 p_soft_reset_2:
+	//call p_device_select_check
 	call app_lpm_init,wake
 ifdef SIMPLE_PAIRING
 	call publickey_init
@@ -146,6 +147,13 @@
 //	jam 20,mem_24g_long_sleep_param_update_timer
 //	rtn
 
+//p_device_select_check:
+	//jam 0,mem_device_change
+	//call p_mouse_check_key_gpio_next
+	//rtn blank
+	//jam 1,mem_device_change
+	//rtn
+
 p_g24_accumulate_customer_data:
 	arg 9,rega
 	arg mem_customer_key_release,regb
@@ -1661,7 +1669,6 @@
 	fetcht 2,mem_key_sleep
 	isub temp,null
 	rtn positive
-	
 	branch p_mouse_setgpio_lpm_before
 
 p_store_hibernate_flag_eeprom:
@@ -1676,6 +1683,18 @@
 	arg 1,temp
 	branch iicd_read_eep_data
 
+//p_store_device_change_eeprom:
+//	arg mem_device_change,rega
+//	arg MOUSE_DEVICE_CHANGE_EEPROM_OFFSET,regb
+//	arg 1,temp
+//	branch iicd_write_protect_eep_data
+
+//p_get_device_change_eeprom:
+//	arg mem_device_change_flag,rega
+//	arg MOUSE_HIBERNATE_FLAG_EEPROM_OFFSET,regb
+//	arg 1,temp
+//	branch iicd_read_eep_data	
+
 p_mouse_bb_event_timer:
 ifdef ADC_ENABLE
 	call p_mouse_adc_read
@@ -1685,10 +1704,10 @@
 ifdef G24
 //	call p_mouse_g24_long_sleep_param_update_timer
 	call p_low_electricity_charging_timer_init 
-	call p_mouse_select_device
 	call p_device_led_show_timer
 	call p_alt_tab_key_timer
 	call p_key_led_show
+	call p_mouse_select_device	
 	call p_mouse_g24_stop_mode_timeout_timer
 endif
 ifdef BLE
@@ -1773,7 +1792,6 @@
 	nrtn positive
 	increase 1,temp
 	storet 1,mem_device_led_timer
-	jam 1,mem_device_led_flag
 	fetch 1,mem_device_flag
 	beq 0x01,p_ble_led_show
 	beq 0x02,p_24g_led_show
@@ -1783,43 +1801,47 @@
 	jam 1,mem_not_show_device_led
 	jam 0xff,mem_hibernate_flag
 	branch p_store_hibernate_flag_eeprom
-	//rtn
+	rtn
 	
 p_ble_led_show:
 	arg 0x06,rega
 p_device_led_show:
 	fetch 1,mem_device_led_timer
 	isub rega,null
-	nbranch p_blue_led_on,positive
+	nbranch p_device_blue_led_on,positive
 	jam 0,mem_device_led_flag
+	jam 1,mem_device_change
 	branch p_blue_led_off
+p_device_blue_led_on:
+	jam 1,mem_device_led_flag
+	branch p_blue_led_on
 	
 p_24g_led_show::
 	arg 0x0c,rega
 	branch p_device_led_show	
 
 p_key_led_show:
+	fetch 1,mem_device_led_flag
+	nrtn blank
 	call p_mouse_check_key_gpio_next
-	call p_led_staus//,blank
-	copy rega,pdata
-	and_into 0x1f,pdata
-	bbit1 4,p_laser_on
-	branch p_laser_off
-
-
-p_led_staus:
 	branch p_key_all_led_off,blank
+	call p_mouse_check_key_gpio_next
 	beq 0x03,p_blue_led_staus
+	and_into 0x1f,pdata
+	call p_laser_on
 	fetch 1,mem_slow_flow_flag
+	fetcht 1,mem_device_change
+	iadd temp,pdata
 	call p_blue_led_on,blank
 	rtn
+
 p_key_all_led_off:
+	jam 0,mem_device_change
 	fetch 1,mem_charging
-	fetcht 1,mem_device_led_flag
-	iadd temp,pdata
+//	fetcht 1,mem_device_led_flag
+//	iadd temp,pdata
 	call p_blue_led_off,blank
 	branch p_laser_off
-
 p_blue_led_staus:
 	fetcht 2,key_long_press_timer
 	sub temp,0x0a,null
@@ -1831,6 +1853,8 @@
 
 	
 p_mouse_select_device:
+	fetch 1,mem_device_change
+	nbranch p_mouse_select_device_button_up,blank
 	call p_mouse_check_key_gpio_next
 	beq 0x14,p_mouse_select_device_button_down
 p_mouse_select_device_button_up:
@@ -2240,32 +2264,30 @@
 	jam 0,mem_2key_staus
 	branch p_store_key_staus_eeprom
 
-p_laser_off:
-	fetcht 1,mem_filp_laser_gpio
-	call gpio_config_output
-	fetcht 1,mem_filp_laser_gpio
-	branch gpio_out_active
-p_laser_on:
-	bne 0x10,p_laser_off
-	fetcht 1,mem_filp_laser_gpio
-	call gpio_config_output
-	fetcht 1,mem_filp_laser_gpio
+p_laser_init:	
+	fetcht 1,mem_filp_laser_gpio	
+	branch gpio_config_output
+p_laser_off:	
+	call p_laser_init	
 	branch gpio_out_inactive
+p_laser_on:	
+	bne 0x10,p_laser_off	
+	call p_laser_init	
+	branch gpio_out_active
+p_blue_led_init:	
+	fetcht 1,mem_filp_led_gpio	
+	branch gpio_config_output	
 p_blue_led_on:
-	jam ON,mem_led_on
-	fetcht 1,mem_filp_led_gpio
-	call gpio_config_output
-	fetcht 1,mem_filp_led_gpio
-	branch gpio_out_inactive
+	jam ON,mem_led_on	
+	call p_blue_led_init	
+	branch gpio_out_active
 p_blue_led_off:
-	fetch 1,mem_led_on
+	fetch 1,mem_led_on	
 	rtneq OFF
-p_blue_led_off2:
-	jam OFF,mem_led_on
-	fetcht 1,mem_filp_led_gpio
-	call gpio_config_output
-	fetcht 1,mem_filp_led_gpio
-	branch gpio_out_active	
+p_blue_led_off2:	
+	jam OFF,mem_led_on	
+	call p_blue_led_init	
+	branch gpio_out_inactive
 
 
 p_mouse_24g_customer_key:
Index: sched/mouse.dat
===================================================================
--- /branch/flip_pen/sched/mouse.dat	(revision 2872)
+++ /branch/flip_pen/sched/mouse.dat	(working copy)
@@ -117,7 +117,7 @@
 mem_le_adv_own_addr_type:00
 mem_le_adv_channel_map:07 
 
-mem_le_lap:48 ac aa ab 38 cb
+mem_le_lap:49 a5 aa ab 38 cb
 
 mem_le_transmit_window:50
 
@@ -424,7 +424,7 @@
 mem_24g_pairing_sm:ff
 mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
 mem_24g_enter_hibernate:80 4f 12
-mem_firmware_version:04 00
+mem_firmware_version:05 00
 
 mem_device_flag:
 02
