Index: format/app_mouse.format
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/format/app_mouse.format	(revision 3235)
+++ /branch/flip_pen/flip_pen_24G&BLE/format/app_mouse.format	(working copy)
@@ -358,6 +358,7 @@
 1 mem_key_long_short_press
 
 2 mem_mouse_vinlpm_vol
+1 mem_flip_retransmit_fail
 )
 
 (
Index: output/eeprom.dat
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/output/eeprom.dat	(revision 3239)
+++ /branch/flip_pen/flip_pen_24G&BLE/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-42
+52
 1b
 c2
 84
@@ -23,11 +23,11 @@
 c0
 42
 86
-ce
+d2
 c0
 44
 86
-a7
+ab
 c0
 50
 80
@@ -43,23 +43,23 @@
 c0
 62
 02
-ae
+af
 c0
 73
 05
-45
+49
 c0
 75
 05
-dc
+e0
 c0
 75
 85
-e4
+e8
 c0
 76
-05
-fe
+06
+02
 20
 20
 2a
@@ -67,43 +67,43 @@
 c0
 1c
 86
-02
+06
 c0
 21
 86
-09
+0d
 c0
 2b
 86
-0f
+13
 c0
 2c
 86
-1f
+23
 c0
 31
 86
-2c
+30
 c0
 33
 06
-51
+55
 c0
 33
 86
-70
+74
 c0
 35
 06
-83
+87
 c0
 3b
 86
-8d
+91
 c0
 7d
 06
-9e
+a2
 20
 20
 2a
@@ -143,7 +143,7 @@
 20
 40
 03
-41
+42
 20
 40
 6a
@@ -243,7 +243,7 @@
 20
 40
 02
-c2
+c3
 20
 40
 00
@@ -251,11 +251,11 @@
 20
 20
 02
-c8
+c9
 68
 00
 cd
-0f
+10
 c2
 80
 80
@@ -267,7 +267,7 @@
 68
 00
 cd
-00
+01
 c0
 00
 80
@@ -295,7 +295,7 @@
 68
 00
 cb
-d0
+d1
 c1
 ff
 80
@@ -319,7 +319,7 @@
 20
 40
 02
-ab
+ac
 58
 00
 ea
@@ -378,7 +378,7 @@
 6f
 70
 4b
-ec
+ed
 00
 1a
 20
@@ -387,7 +387,7 @@
 60
 00
 cb
-c0
+c1
 20
 40
 01
@@ -395,7 +395,7 @@
 60
 00
 cb
-5c
+5d
 1a
 42
 0c
@@ -627,31 +627,31 @@
 20
 40
 01
-f6
+f7
 20
 40
 01
 77
 24
 2c
-01
-ff
+02
+00
 24
 37
-81
-ff
+82
+00
 20
 40
 01
-a2
+a3
 68
 02
 4b
-e8
+e9
 68
 0a
 4d
-05
+06
 98
 46
 7c
@@ -663,27 +663,27 @@
 68
 00
 cb
-be
+bf
 c1
 84
 00
 00
 70
 4d
-0f
+10
 00
 20
 40
 02
-bf
+c0
 68
 02
 4b
-e8
+e9
 68
 0a
 4b
-cc
+cd
 98
 46
 7c
@@ -691,15 +691,15 @@
 20
 22
 82
-df
+e0
 68
 02
 4b
-e8
+e9
 68
 0a
 4b
-f7
+f8
 98
 46
 7c
@@ -715,11 +715,11 @@
 68
 02
 4b
-a0
+a1
 20
 20
 01
-b8
+b9
 68
 00
 ca
@@ -731,7 +731,7 @@
 20
 40
 01
-f6
+f7
 20
 40
 01
@@ -746,7 +746,7 @@
 12
 70
 4d
-0f
+10
 00
 20
 40
@@ -758,7 +758,7 @@
 74
 70
 4d
-00
+01
 01
 58
 00
@@ -767,7 +767,7 @@
 60
 01
 4d
-01
+02
 20
 60
 00
@@ -775,7 +775,7 @@
 20
 40
 02
-95
+96
 24
 74
 00
@@ -787,7 +787,7 @@
 68
 01
 4d
-01
+02
 1f
 e0
 fe
@@ -795,11 +795,11 @@
 60
 01
 4d
-01
+02
 68
 09
 4d
-03
+04
 98
 46
 7c
@@ -814,7 +814,7 @@
 43
 70
 4d
-00
+01
 00
 58
 00
@@ -823,7 +823,7 @@
 60
 01
 4d
-01
+02
 58
 00
 00
@@ -831,19 +831,19 @@
 60
 01
 4d
-03
+04
 70
 4b
-fb
+fc
 00
 68
 00
 cb
-e6
+e7
 60
 00
 cb
-e5
+e6
 20
 60
 00
@@ -851,7 +851,7 @@
 68
 00
 cb
-e7
+e8
 20
 20
 00
@@ -859,7 +859,7 @@
 68
 00
 cb
-fb
+fc
 1f
 e0
 fe
@@ -867,7 +867,7 @@
 60
 00
 cb
-fb
+fc
 c0
 02
 00
@@ -883,7 +883,7 @@
 68
 00
 cb
-ec
+ed
 20
 5a
 00
@@ -891,7 +891,7 @@
 68
 00
 cd
-00
+01
 c1
 00
 80
@@ -907,7 +907,7 @@
 68
 01
 cb
-ef
+f0
 20
 20
 2d
@@ -939,7 +939,7 @@
 68
 00
 cd
-00
+01
 c0
 00
 ff
@@ -947,7 +947,7 @@
 20
 40
 02
-ab
+ac
 20
 40
 3e
@@ -977,16 +977,16 @@
 00
 7c
 20
-60
-00
-00
+20
+03
+f3
 70
 4b
-ec
+ed
 01
 70
 4c
-f5
+f6
 00
 20
 40
@@ -995,7 +995,7 @@
 60
 00
 cb
-5c
+5d
 58
 00
 00
@@ -1003,23 +1003,23 @@
 60
 03
 cb
-5d
+5e
 68
 02
 4b
-f7
+f8
 60
 02
 4b
-64
+65
 70
 4b
-c0
+c1
 0c
 68
 00
 cb
-c1
+c2
 79
 20
 7e
@@ -1027,7 +1027,7 @@
 60
 00
 cb
-c1
+c2
 20
 40
 01
@@ -1038,16 +1038,16 @@
 46
 70
 4c
-f6
+f7
 01
 70
 4c
-f8
+f9
 00
 68
 00
 cb
-c1
+c2
 1f
 e1
 7e
@@ -1055,7 +1055,7 @@
 60
 00
 cb
-c1
+c2
 20
 60
 00
@@ -1063,7 +1063,7 @@
 68
 00
 cb
-c1
+c2
 79
 20
 7e
@@ -1071,11 +1071,11 @@
 60
 00
 cb
-c1
+c2
 60
 00
 cb
-7c
+7d
 20
 60
 00
@@ -1083,7 +1083,7 @@
 68
 00
 cb
-c1
+c2
 c4
 02
 00
@@ -1091,7 +1091,7 @@
 68
 00
 cb
-c1
+c2
 79
 3f
 fe
@@ -1103,11 +1103,11 @@
 68
 08
 cb
-cb
+cc
 68
 00
 cb
-e8
+e9
 1f
 e1
 7e
@@ -1119,7 +1119,7 @@
 58
 00
 4b
-d1
+d2
 9a
 20
 fe
@@ -1135,7 +1135,7 @@
 60
 00
 cb
-ca
+cb
 18
 40
 84
@@ -1147,7 +1147,7 @@
 60
 08
 cb
-cb
+cc
 20
 60
 00
@@ -1155,7 +1155,7 @@
 68
 00
 cc
-f5
+f6
 c0
 80
 81
@@ -1163,7 +1163,7 @@
 68
 00
 cc
-f3
+f4
 1f
 e0
 fe
@@ -1171,7 +1171,7 @@
 60
 00
 cc
-f3
+f4
 c0
 02
 01
@@ -1182,7 +1182,7 @@
 12
 70
 4c
-05
+06
 02
 20
 20
@@ -1190,7 +1190,7 @@
 61
 70
 4c
-f3
+f4
 00
 20
 20
@@ -1198,15 +1198,15 @@
 04
 70
 4c
-f8
+f9
 02
 70
 4c
-f6
+f7
 01
 70
 4c
-f5
+f6
 00
 20
 20
@@ -1215,7 +1215,7 @@
 68
 00
 cc
-f7
+f8
 c0
 01
 81
@@ -1223,7 +1223,7 @@
 68
 00
 cb
-c1
+c2
 2f
 ec
 00
@@ -1235,7 +1235,7 @@
 68
 00
 cc
-f7
+f8
 c0
 00
 81
@@ -1251,7 +1251,7 @@
 68
 00
 cb
-d0
+d1
 c1
 ff
 80
@@ -1275,7 +1275,7 @@
 68
 00
 cc
-f6
+f7
 c1
 80
 80
@@ -1283,18 +1283,18 @@
 68
 00
 cc
-f8
+f9
 c1
 80
 00
 00
 70
 4c
-f7
+f8
 01
 70
 4c
-05
+06
 04
 20
 20
@@ -1303,7 +1303,7 @@
 68
 00
 cc
-f8
+f9
 20
 3a
 01
@@ -1315,14 +1315,14 @@
 60
 00
 cc
-f8
+f9
 70
 4c
-f7
+f8
 02
 70
 4c
-05
+06
 04
 20
 20
@@ -1330,19 +1330,19 @@
 12
 70
 4c
-f7
+f8
 03
 68
 00
 cc
-f5
+f6
 24
 3a
 01
 1f
 70
 4c
-05
+06
 02
 20
 20
@@ -1351,11 +1351,11 @@
 68
 00
 cb
-d0
+d1
 c0
 ff
 81
-c6
+c7
 20
 40
 01
@@ -1363,10 +1363,10 @@
 20
 40
 02
-21
+22
 70
 4b
-c5
+c6
 01
 20
 60
@@ -1375,7 +1375,7 @@
 68
 01
 4c
-f1
+f2
 20
 40
 7f
@@ -1387,7 +1387,7 @@
 68
 03
 cb
-5d
+5e
 20
 7a
 00
@@ -1418,7 +1418,7 @@
 59
 70
 4b
-c9
+ca
 00
 d9
 60
@@ -1447,11 +1447,11 @@
 20
 40
 01
-a2
+a3
 68
 00
 cb
-bf
+c0
 1f
 e0
 fe
@@ -1459,7 +1459,7 @@
 60
 00
 cb
-bf
+c0
 20
 40
 01
@@ -1467,11 +1467,11 @@
 68
 00
 cb
-d0
+d1
 c0
 ff
 81
-e0
+e1
 20
 40
 01
@@ -1483,11 +1483,11 @@
 60
 02
 4b
-c5
+c6
 60
 00
 cc
-f4
+f5
 20
 60
 00
@@ -1499,7 +1499,7 @@
 d8
 a0
 4b
-5c
+5d
 20
 20
 7e
@@ -1511,7 +1511,7 @@
 20
 40
 02
-72
+73
 18
 00
 2a
@@ -1519,7 +1519,7 @@
 68
 02
 4b
-e8
+e9
 98
 00
 12
@@ -1539,11 +1539,11 @@
 20
 40
 02
-39
+3a
 20
 57
 82
-6f
+70
 20
 60
 00
@@ -1551,7 +1551,7 @@
 68
 00
 cb
-ec
+ed
 24
 7a
 00
@@ -1559,7 +1559,7 @@
 68
 01
 4b
-c6
+c7
 1f
 e0
 fe
@@ -1567,11 +1567,11 @@
 60
 01
 4b
-c6
+c7
 68
 00
 cb
-c7
+c8
 c2
 80
 81
@@ -1579,15 +1579,15 @@
 68
 00
 cb
-d0
+d1
 c0
 ff
 81
-93
+94
 20
 40
 01
-98
+99
 20
 20
 01
@@ -1611,15 +1611,19 @@
 20
 5a
 04
-5f
+63
+70
+4b
+3a
+01
 20
 20
 01
-95
+96
 68
 00
 cb
-c6
+c7
 c1
 ff
 80
@@ -1631,7 +1635,7 @@
 60
 01
 4b
-c6
+c7
 20
 20
 2d
@@ -1639,7 +1643,7 @@
 68
 00
 cb
-c9
+ca
 1f
 e6
 7c
@@ -1655,7 +1659,7 @@
 60
 00
 cb
-c9
+ca
 c0
 01
 01
@@ -1679,7 +1683,7 @@
 68
 00
 cb
-3b
+3c
 1f
 e9
 7e
@@ -1687,7 +1691,7 @@
 60
 00
 cb
-be
+bf
 1f
 e0
 fe
@@ -1695,7 +1699,7 @@
 d8
 c0
 4b
-3b
+3c
 98
 c0
 8c
@@ -1707,11 +1711,11 @@
 60
 01
 cb
-fd
+fe
 68
 00
 cb
-3b
+3c
 1f
 e3
 7e
@@ -1723,11 +1727,11 @@
 60
 00
 cc
-03
+04
 68
 00
 cb
-be
+bf
 20
 7a
 00
@@ -1739,11 +1743,11 @@
 d8
 c0
 4b
-3c
+3d
 d8
 a0
 4b
-9e
+9f
 20
 20
 7f
@@ -1754,20 +1758,20 @@
 04
 70
 4b
-bf
+c0
 00
 70
 4b
-ca
+cb
 4e
 68
 02
 4b
-cc
+cd
 60
 02
 4b
-e8
+e9
 da
 20
 00
@@ -1779,7 +1783,7 @@
 d8
 c0
 4b
-e8
+e9
 e8
 c0
 80
@@ -1791,7 +1795,7 @@
 c2
 00
 01
-bc
+bd
 1a
 22
 7e
@@ -1799,15 +1803,15 @@
 60
 01
 4c
-71
+72
 68
 00
 cc
-71
+72
 68
 08
 cc
-72
+73
 98
 40
 fe
@@ -1815,7 +1819,7 @@
 60
 00
 cc
-73
+74
 20
 60
 00
@@ -1823,7 +1827,7 @@
 68
 00
 cb
-c5
+c6
 c0
 00
 ff
@@ -1831,26 +1835,26 @@
 68
 00
 cb
-d0
+d1
 c0
 00
 81
-cd
+ce
 c0
 01
 01
-d0
+d1
 c0
 01
 81
-d3
+d4
 20
 20
 2a
 8c
 70
 4b
-d0
+d1
 11
 70
 11
@@ -1859,10 +1863,10 @@
 20
 20
 01
-d5
+d6
 70
 4b
-d0
+d1
 12
 70
 11
@@ -1871,10 +1875,10 @@
 20
 20
 01
-d5
+d6
 70
 4b
-d0
+d1
 13
 70
 11
@@ -1883,7 +1887,7 @@
 68
 00
 cb
-c1
+c2
 1f
 e1
 7e
@@ -1895,7 +1899,7 @@
 68
 02
 4b
-f7
+f8
 60
 02
 11
@@ -1915,7 +1919,7 @@
 20
 40
 02
-1d
+1e
 20
 40
 01
@@ -1927,7 +1931,7 @@
 68
 00
 cb
-d0
+d1
 c1
 7f
 80
@@ -1935,22 +1939,22 @@
 c0
 08
 81
-e6
+e7
 c0
 09
 01
-e8
+e9
 c0
 09
 81
-ea
+eb
 20
 60
 00
 00
 70
 4b
-d0
+d1
 02
 20
 20
@@ -1958,7 +1962,7 @@
 70
 70
 4b
-d0
+d1
 03
 20
 20
@@ -1966,7 +1970,7 @@
 70
 70
 4b
-d0
+d1
 ff
 70
 0a
@@ -1991,7 +1995,7 @@
 68
 00
 cd
-0f
+10
 79
 20
 7e
@@ -1999,11 +2003,11 @@
 60
 00
 cd
-0f
+10
 20
 40
 02
-0e
+0f
 70
 4b
 2a
@@ -2011,7 +2015,7 @@
 20
 20
 03
-22
+23
 70
 11
 9e
@@ -2019,7 +2023,7 @@
 68
 00
 cb
-c1
+c2
 60
 00
 91
@@ -2027,7 +2031,7 @@
 68
 02
 4b
-f7
+f8
 60
 02
 11
@@ -2043,15 +2047,15 @@
 20
 40
 02
-1d
+1e
 20
 20
 02
-21
+22
 68
 00
 cc
-fe
+ff
 1f
 e0
 fe
@@ -2063,31 +2067,31 @@
 60
 00
 cc
-fe
+ff
 c0
 00
 02
-06
+07
 c0
 01
 02
-10
+11
 20
 20
 01
-b4
+b5
 20
 40
 02
-bf
+c0
 68
 02
 4b
-f7
+f8
 60
 02
 4b
-e8
+e9
 68
 00
 ca
@@ -2095,11 +2099,11 @@
 60
 00
 cb
-cb
+cc
 20
 40
 02
-0e
+0f
 60
 08
 ca
@@ -2111,7 +2115,7 @@
 20
 40
 01
-b9
+ba
 20
 20
 01
@@ -2123,11 +2127,11 @@
 68
 02
 4d
-05
+06
 60
 02
 4b
-e8
+e9
 68
 00
 ca
@@ -2135,11 +2139,11 @@
 60
 00
 cb
-cb
+cc
 20
 40
 02
-0e
+0f
 60
 08
 ca
@@ -2154,7 +2158,7 @@
 26
 70
 4d
-0f
+10
 00
 20
 40
@@ -2171,7 +2175,7 @@
 60
 08
 cb
-c0
+c1
 18
 42
 72
@@ -2179,7 +2183,7 @@
 d8
 a0
 4b
-5c
+5d
 20
 20
 2d
@@ -2187,7 +2191,7 @@
 68
 00
 cb
-c0
+c1
 1f
 e0
 fe
@@ -2195,19 +2199,19 @@
 60
 00
 cb
-c2
+c3
 68
 00
 cb
-c1
+c2
 60
 00
 cb
-7c
+7d
 68
 00
 cb
-c0
+c1
 1f
 e9
 fe
@@ -2215,7 +2219,7 @@
 68
 08
 cb
-bf
+c0
 18
 41
 04
@@ -2231,7 +2235,7 @@
 68
 08
 cb
-fc
+fd
 98
 40
 fe
@@ -2243,7 +2247,7 @@
 68
 00
 cb
-c0
+c1
 98
 00
 72
@@ -2251,7 +2255,7 @@
 d8
 c0
 4b
-5c
+5d
 20
 20
 7f
@@ -2275,7 +2279,7 @@
 68
 00
 cb
-ca
+cb
 20
 20
 53
@@ -2283,7 +2287,7 @@
 20
 40
 02
-33
+34
 78
 57
 fc
@@ -2307,7 +2311,7 @@
 68
 01
 4b
-c3
+c4
 98
 00
 36
@@ -2319,7 +2323,7 @@
 24
 2c
 02
-6f
+70
 78
 46
 fc
@@ -2339,15 +2343,15 @@
 20
 40
 02
-6c
+6d
 60
 00
 cc
-74
+75
 68
 08
 cc
-73
+74
 98
 46
 7c
@@ -2355,23 +2359,23 @@
 24
 22
 82
-6f
+70
 20
 40
 02
-6c
+6d
 60
 00
 cb
-3a
+3b
 68
 00
 cb
-3a
+3b
 68
 08
 cb
-c1
+c2
 a8
 40
 0e
@@ -2379,11 +2383,11 @@
 24
 20
 82
-6f
+70
 20
 40
 02
-6c
+6d
 e0
 a0
 80
@@ -2399,11 +2403,11 @@
 20
 22
 82
-5a
+5b
 20
 40
 02
-6c
+6d
 e0
 a0
 80
@@ -2411,7 +2415,7 @@
 c2
 00
 02
-57
+58
 18
 a2
 22
@@ -2419,11 +2423,11 @@
 20
 40
 02
-6c
+6d
 60
 00
 cc
-fb
+fc
 1a
 22
 0a
@@ -2459,7 +2463,7 @@
 20
 23
 02
-6f
+70
 78
 37
 fc
@@ -2515,7 +2519,7 @@
 68
 02
 4b
-e8
+e9
 98
 00
 12
@@ -2523,7 +2527,7 @@
 20
 40
 02
-33
+34
 20
 40
 29
@@ -2531,7 +2535,7 @@
 68
 08
 cb
-ca
+cb
 20
 40
 29
@@ -2587,7 +2591,7 @@
 68
 00
 cc
-73
+74
 08
 00
 86
@@ -2595,7 +2599,7 @@
 68
 00
 cb
-c2
+c3
 98
 00
 72
@@ -2603,7 +2607,7 @@
 d8
 c0
 4b
-7c
+7d
 e8
 c0
 80
@@ -2615,7 +2619,7 @@
 c2
 00
 02
-8a
+8b
 78
 24
 7c
@@ -2655,7 +2659,7 @@
 68
 0a
 4b
-e1
+e2
 1c
 42
 7e
@@ -2675,11 +2679,11 @@
 68
 02
 4b
-e1
+e2
 68
 08
 cb
-e5
+e6
 98
 40
 84
@@ -2703,7 +2707,7 @@
 60
 02
 4b
-e1
+e2
 20
 20
 7f
@@ -2715,7 +2719,7 @@
 20
 40
 03
-37
+38
 20
 40
 00
@@ -2727,7 +2731,7 @@
 c3
 00
 02
-ab
+ac
 68
 00
 80
@@ -2755,11 +2759,11 @@
 20
 35
 82
-b3
+b4
 20
 40
 03
-70
+71
 68
 00
 c1
@@ -2767,11 +2771,11 @@
 60
 00
 cc
-77
+78
 20
 40
 02
-b5
+b6
 20
 20
 74
@@ -2779,7 +2783,7 @@
 24
 55
 82
-e2
+e3
 20
 75
 80
@@ -2787,19 +2791,19 @@
 20
 40
 03
-24
+25
 20
 40
 05
-1a
+1e
 20
 40
 03
-18
+19
 20
 40
 02
-bf
+c0
 70
 4b
 2b
@@ -2811,15 +2815,15 @@
 c0
 01
 01
-ef
+f0
 20
 20
 02
-d5
+d6
 68
 00
 cc
-77
+78
 60
 00
 c1
@@ -2903,7 +2907,7 @@
 20
 20
 03
-02
+03
 70
 4a
 91
@@ -2922,8 +2926,8 @@
 ae
 20
 40
-05
-fc
+06
+00
 20
 40
 34
@@ -2939,7 +2943,7 @@
 20
 40
 05
-f8
+fc
 20
 20
 7d
@@ -2947,10 +2951,10 @@
 20
 40
 01
-b4
+b5
 70
 4b
-d0
+d1
 01
 20
 60
@@ -2963,7 +2967,7 @@
 60
 02
 4b
-f7
+f8
 20
 40
 3e
@@ -2971,11 +2975,11 @@
 20
 40
 04
-a9
+ad
 20
 40
 04
-60
+64
 20
 40
 3e
@@ -3027,7 +3031,7 @@
 20
 40
 03
-07
+08
 68
 00
 c7
@@ -3039,11 +3043,11 @@
 20
 42
 83
-12
+13
 20
 40
 03
-cc
+cd
 20
 40
 65
@@ -3051,7 +3055,7 @@
 20
 40
 03
-0b
+0c
 68
 00
 ca
@@ -3059,7 +3063,7 @@
 c3
 01
 02
-cf
+d0
 da
 20
 4b
@@ -3083,7 +3087,7 @@
 c0
 00
 82
-ce
+cf
 68
 00
 c7
@@ -3143,7 +3147,7 @@
 c0
 7f
 85
-c7
+cb
 20
 60
 00
@@ -3167,7 +3171,7 @@
 60
 01
 4d
-03
+04
 20
 60
 00
@@ -3179,11 +3183,11 @@
 60
 01
 4d
-03
+04
 24
 55
 83
-15
+16
 70
 47
 1e
@@ -3199,7 +3203,7 @@
 68
 00
 cd
-0f
+10
 79
 20
 7e
@@ -3207,7 +3211,7 @@
 60
 00
 cd
-0f
+10
 70
 4b
 2a
@@ -3223,15 +3227,15 @@
 58
 00
 03
-33
+34
 60
 01
 4c
-f1
+f2
 58
 00
 03
-4a
+4b
 60
 01
 41
@@ -3239,7 +3243,7 @@
 58
 00
 06
-97
+9b
 60
 01
 41
@@ -3247,7 +3251,7 @@
 58
 00
 02
-a4
+a5
 60
 01
 41
@@ -3255,7 +3259,7 @@
 58
 00
 03
-86
+87
 60
 01
 41
@@ -3271,7 +3275,7 @@
 58
 00
 03
-f9
+fb
 60
 01
 41
@@ -3307,7 +3311,7 @@
 20
 40
 03
-3f
+40
 d8
 c0
 19
@@ -3315,7 +3319,7 @@
 20
 40
 03
-3f
+40
 d8
 c0
 1a
@@ -3323,7 +3327,7 @@
 20
 40
 03
-3f
+40
 d8
 c0
 1b
@@ -3347,7 +3351,7 @@
 20
 40
 03
-3f
+40
 d8
 a0
 19
@@ -3355,7 +3359,7 @@
 20
 40
 03
-3f
+40
 d8
 a0
 1a
@@ -3363,7 +3367,7 @@
 20
 40
 03
-3f
+40
 d8
 a0
 1b
@@ -3371,7 +3375,7 @@
 20
 20
 03
-3f
+40
 20
 40
 58
@@ -3407,7 +3411,7 @@
 c0
 00
 83
-6c
+6d
 20
 40
 3f
@@ -3431,7 +3435,7 @@
 c0
 00
 83
-5d
+5e
 da
 20
 46
@@ -3443,7 +3447,7 @@
 20
 54
 03
-75
+76
 20
 60
 00
@@ -3523,7 +3527,7 @@
 20
 20
 03
-62
+63
 70
 47
 a0
@@ -3571,7 +3575,7 @@
 20
 34
 03
-7d
+7e
 20
 60
 00
@@ -3619,35 +3623,35 @@
 c0
 0a
 03
-90
+91
 c0
 0a
 83
-a3
+a4
 c0
 14
 83
-b0
+b1
 c0
 19
 03
-b2
+b3
 c0
 20
 03
-ba
+bb
 c0
 1c
 83
-c8
+c9
 c0
 1d
 03
-d0
+d1
 c0
 1e
 03
-db
+da
 20
 20
 41
@@ -3679,7 +3683,7 @@
 24
 3a
 03
-98
+99
 70
 4a
 90
@@ -3695,15 +3699,15 @@
 20
 40
 02
-18
+19
 20
 40
 03
-9e
+9f
 20
 40
 03
-70
+71
 20
 20
 41
@@ -3755,7 +3759,7 @@
 20
 40
 03
-70
+71
 20
 40
 58
@@ -3775,7 +3779,7 @@
 20
 40
 05
-f4
+f8
 20
 20
 7d
@@ -3795,7 +3799,7 @@
 c0
 00
 83
-b6
+b7
 70
 46
 c6
@@ -3803,11 +3807,11 @@
 20
 20
 03
-b8
+b9
 20
 40
 03
-b0
+b1
 70
 46
 c6
@@ -3843,7 +3847,7 @@
 20
 21
 03
-c6
+c7
 58
 00
 00
@@ -3859,7 +3863,7 @@
 20
 40
 03
-b0
+b1
 70
 47
 c4
@@ -3875,15 +3879,15 @@
 20
 20
 06
-67
+6b
 20
 40
 02
-bf
+c0
 20
 40
 03
-db
+da
 d8
 e0
 00
@@ -3895,7 +3899,7 @@
 da
 20
 4b
-e8
+e9
 da
 40
 00
@@ -3910,24 +3914,16 @@
 00
 70
 4d
-00
+01
 00
 20
 40
 02
-bf
+c0
 20
 40
 02
-18
-68
-00
-cb
-32
-24
-7a
-00
-00
+19
 20
 40
 00
@@ -3951,7 +3947,7 @@
 20
 20
 02
-ba
+bb
 70
 4a
 a9
@@ -3968,6 +3964,10 @@
 4b
 2b
 01
+70
+4b
+3a
+00
 20
 40
 41
@@ -3979,7 +3979,7 @@
 20
 40
 03
-cc
+cd
 20
 40
 65
@@ -3991,7 +3991,7 @@
 20
 20
 03
-9f
+a0
 70
 4b
 2d
@@ -3999,7 +3999,7 @@
 20
 40
 02
-d0
+d1
 68
 12
 01
@@ -4023,11 +4023,11 @@
 20
 40
 04
-a9
+ad
 20
 40
 04
-62
+66
 20
 40
 00
@@ -4044,6 +4044,14 @@
 e0
 00
 14
+20
+60
+00
+00
+d8
+e0
+00
+14
 68
 02
 00
@@ -4075,19 +4083,19 @@
 20
 40
 04
-d9
+dd
 20
 40
 04
-4f
+53
 20
 40
 05
-12
+16
 20
 40
 04
-d2
+d6
 20
 40
 42
@@ -4095,39 +4103,39 @@
 20
 40
 04
-37
+3b
 20
 40
 04
-46
+4a
 20
 40
 04
-ab
+af
 20
 40
 04
-a0
+a4
 20
 40
 04
-c9
+cd
 20
 40
-04
-ff
+05
+03
 20
 40
 05
-02
+06
 20
 40
 05
-08
+0c
 20
 40
 04
-c6
+ca
 20
 40
 42
@@ -4143,7 +4151,7 @@
 20
 3a
 04
-1b
+1f
 70
 40
 91
@@ -4155,7 +4163,7 @@
 24
 42
 85
-78
+7c
 1a
 22
 7e
@@ -4169,6 +4177,14 @@
 2f
 0a
 68
+00
+cb
+3a
+24
+5a
+04
+37
+68
 01
 4b
 14
@@ -4187,7 +4203,7 @@
 20
 21
 04
-2d
+31
 68
 00
 cb
@@ -4227,7 +4243,7 @@
 24
 3a
 04
-24
+28
 68
 00
 ca
@@ -4235,7 +4251,7 @@
 c0
 00
 84
-24
+28
 70
 4b
 35
@@ -4251,11 +4267,11 @@
 24
 5a
 04
-31
+35
 20
 40
 05
-78
+7c
 68
 00
 cb
@@ -4267,7 +4283,7 @@
 20
 40
 04
-f6
+fa
 68
 00
 cb
@@ -4275,7 +4291,7 @@
 c0
 80
 84
-33
+37
 20
 60
 00
@@ -4307,7 +4323,7 @@
 20
 40
 03
-cc
+cd
 20
 40
 65
@@ -4315,7 +4331,7 @@
 20
 40
 01
-ef
+f0
 20
 60
 00
@@ -4327,7 +4343,7 @@
 20
 40
 04
-d5
+d9
 60
 00
 cb
@@ -4347,7 +4363,7 @@
 20
 40
 04
-d5
+d9
 60
 00
 cb
@@ -4363,7 +4379,7 @@
 24
 3a
 04
-67
+6b
 70
 4a
 57
@@ -4387,7 +4403,7 @@
 c0
 40
 04
-49
+4d
 20
 60
 00
@@ -4399,7 +4415,7 @@
 da
 40
 04
-4c
+50
 20
 20
 33
@@ -4423,7 +4439,7 @@
 c0
 00
 84
-6e
+72
 70
 4b
 2c
@@ -4431,7 +4447,7 @@
 20
 40
 04
-7e
+82
 70
 4b
 1b
@@ -4443,7 +4459,7 @@
 c0
 01
 04
-65
+69
 d8
 40
 00
@@ -4467,7 +4483,7 @@
 20
 42
 84
-5d
+61
 20
 60
 00
@@ -4483,7 +4499,7 @@
 20
 40
 04
-a9
+ad
 68
 00
 ca
@@ -4499,7 +4515,7 @@
 20
 40
 05
-d5
+d9
 20
 20
 68
@@ -4511,7 +4527,7 @@
 20
 20
 04
-57
+5b
 70
 4a
 52
@@ -4539,7 +4555,7 @@
 20
 20
 04
-69
+6d
 68
 00
 ca
@@ -4547,7 +4563,7 @@
 20
 3a
 04
-85
+89
 da
 60
 4a
@@ -4555,7 +4571,7 @@
 da
 40
 04
-73
+77
 20
 20
 33
@@ -4575,7 +4591,7 @@
 20
 3a
 04
-7c
+80
 68
 00
 ca
@@ -4583,7 +4599,7 @@
 20
 3a
 04
-81
+85
 1f
 e0
 ff
@@ -4603,7 +4619,7 @@
 c0
 00
 84
-60
+64
 70
 4a
 54
@@ -4611,7 +4627,7 @@
 20
 40
 05
-d5
+d9
 20
 20
 68
@@ -4623,7 +4639,7 @@
 c0
 00
 04
-5f
+63
 70
 4a
 52
@@ -4631,7 +4647,7 @@
 20
 20
 04
-5f
+63
 68
 00
 cb
@@ -4639,7 +4655,7 @@
 24
 3a
 04
-9d
+a1
 20
 40
 40
@@ -4647,7 +4663,7 @@
 20
 3a
 04
-8f
+93
 70
 4b
 35
@@ -4655,11 +4671,11 @@
 c0
 0a
 04
-5f
+63
 c0
 01
 84
-99
+9d
 1f
 e1
 7e
@@ -4667,11 +4683,11 @@
 20
 40
 05
-ce
+d2
 20
 20
 04
-7e
+82
 68
 00
 ca
@@ -4679,11 +4695,11 @@
 c0
 00
 84
-92
+96
 20
 20
 04
-5f
+63
 68
 00
 cb
@@ -4707,11 +4723,11 @@
 20
 40
 04
-6b
+6f
 20
 20
 04
-5f
+63
 70
 4b
 22
@@ -4723,11 +4739,11 @@
 20
 5a
 04
-7e
+82
 20
 20
 04
-65
+69
 68
 00
 cb
@@ -4739,7 +4755,7 @@
 20
 20
 04
-5f
+63
 68
 00
 cb
@@ -4771,7 +4787,7 @@
 da
 40
 03
-d2
+d3
 20
 20
 33
@@ -4779,7 +4795,7 @@
 20
 40
 05
-cc
+d0
 20
 20
 68
@@ -4791,7 +4807,7 @@
 24
 3a
 04
-af
+b3
 20
 40
 40
@@ -4799,7 +4815,7 @@
 c0
 0a
 04
-b2
+b6
 68
 00
 ca
@@ -4819,7 +4835,7 @@
 20
 40
 04
-b8
+bc
 68
 00
 c6
@@ -4843,7 +4859,7 @@
 da
 40
 04
-bb
+bf
 20
 20
 33
@@ -4899,7 +4915,7 @@
 da
 40
 03
-d8
+d7
 20
 20
 33
@@ -4911,7 +4927,7 @@
 da
 40
 04
-cc
+d0
 20
 20
 33
@@ -4931,11 +4947,11 @@
 20
 42
 85
-10
+14
 20
 40
 05
-f4
+f8
 20
 20
 43
@@ -4951,7 +4967,7 @@
 20
 20
 03
-ae
+af
 20
 40
 68
@@ -5015,7 +5031,7 @@
 20
 21
 04
-6b
+6f
 68
 00
 cb
@@ -5023,7 +5039,7 @@
 24
 3a
 04
-fb
+ff
 70
 4a
 52
@@ -5039,11 +5055,11 @@
 20
 42
 84
-f4
+f8
 24
 41
 04
-69
+6d
 1f
 e6
 7c
@@ -5051,10 +5067,10 @@
 24
 21
 04
-f6
+fa
 70
 4b
-c5
+c6
 00
 20
 40
@@ -5075,7 +5091,7 @@
 20
 20
 03
-1d
+1e
 d8
 40
 00
@@ -5083,11 +5099,11 @@
 20
 20
 04
-6b
+6f
 68
 00
 cd
-0f
+10
 79
 3f
 fe
@@ -5095,7 +5111,7 @@
 60
 00
 cd
-0f
+10
 70
 4b
 31
@@ -5111,7 +5127,7 @@
 24
 3a
 04
-6b
+6f
 70
 4b
 2b
@@ -5139,7 +5155,7 @@
 da
 40
 05
-05
+09
 20
 20
 33
@@ -5171,7 +5187,7 @@
 da
 40
 05
-0d
+11
 20
 20
 33
@@ -5219,7 +5235,7 @@
 da
 40
 05
-19
+1d
 20
 20
 33
@@ -5267,7 +5283,7 @@
 20
 40
 05
-32
+36
 60
 01
 47
@@ -5275,7 +5291,7 @@
 20
 40
 04
-62
+66
 70
 42
 2d
@@ -5283,7 +5299,7 @@
 20
 40
 05
-32
+36
 60
 01
 4b
@@ -5295,7 +5311,7 @@
 20
 40
 05
-35
+39
 68
 00
 c2
@@ -5303,7 +5319,7 @@
 c3
 00
 05
-2f
+33
 70
 4a
 5e
@@ -5359,7 +5375,7 @@
 24
 21
 05
-42
+46
 68
 01
 0a
@@ -5411,7 +5427,7 @@
 20
 40
 05
-56
+5a
 20
 40
 40
@@ -5419,7 +5435,7 @@
 20
 40
 05
-d7
+db
 1a
 22
 7e
@@ -5431,7 +5447,7 @@
 20
 40
 05
-52
+56
 68
 01
 4b
@@ -5459,15 +5475,15 @@
 24
 5a
 05
-71
+75
 20
 5a
 05
-75
+79
 20
 20
 05
-8e
+92
 da
 20
 00
@@ -5487,7 +5503,7 @@
 20
 40
 05
-7b
+7f
 60
 00
 ca
@@ -5507,7 +5523,7 @@
 20
 40
 05
-7b
+7f
 60
 00
 ca
@@ -5527,7 +5543,7 @@
 20
 40
 05
-7b
+7f
 60
 00
 ca
@@ -5547,7 +5563,7 @@
 20
 40
 05
-7b
+7f
 60
 00
 ca
@@ -5567,7 +5583,7 @@
 20
 40
 05
-7b
+7f
 60
 00
 ca
@@ -5667,11 +5683,11 @@
 c0
 03
 85
-8a
+8e
 c0
 00
 05
-8c
+90
 20
 60
 00
@@ -5703,7 +5719,7 @@
 c0
 01
 05
-ac
+b0
 68
 01
 4a
@@ -5719,7 +5735,7 @@
 c0
 80
 05
-a1
+a5
 68
 01
 4b
@@ -5739,7 +5755,7 @@
 c0
 00
 85
-9e
+a2
 68
 00
 cb
@@ -5747,7 +5763,7 @@
 c0
 00
 85
-9e
+a2
 70
 4b
 20
@@ -5767,7 +5783,7 @@
 20
 20
 05
-9c
+a0
 68
 01
 4b
@@ -5775,15 +5791,15 @@
 c0
 00
 85
-a5
+a9
 c0
 01
 05
-a5
+a9
 20
 20
 05
-96
+9a
 1f
 ed
 7e
@@ -5803,7 +5819,7 @@
 20
 22
 85
-96
+9a
 1f
 eb
 fe
@@ -5811,7 +5827,7 @@
 20
 20
 05
-96
+9a
 68
 01
 4b
@@ -5819,11 +5835,11 @@
 c0
 01
 85
-bf
+c3
 c0
 00
 85
-b3
+b7
 68
 01
 4b
@@ -5839,7 +5855,7 @@
 20
 20
 05
-96
+9a
 68
 00
 cb
@@ -5847,7 +5863,7 @@
 20
 5a
 05
-ba
+be
 68
 00
 cb
@@ -5855,7 +5871,7 @@
 c0
 00
 05
-af
+b3
 68
 01
 4b
@@ -5867,7 +5883,7 @@
 20
 20
 05
-96
+9a
 70
 4b
 23
@@ -5907,7 +5923,7 @@
 c0
 01
 05
-c7
+cb
 1f
 e0
 fe
@@ -5919,7 +5935,7 @@
 20
 20
 05
-c8
+cc
 70
 4b
 18
@@ -5951,7 +5967,7 @@
 c0
 88
 04
-a9
+ad
 68
 01
 4b
@@ -5967,11 +5983,11 @@
 20
 21
 04
-a9
+ad
 20
 40
 05
-cc
+d0
 20
 20
 68
@@ -6011,7 +6027,7 @@
 20
 40
 82
-18
+19
 70
 46
 b4
@@ -6039,7 +6055,7 @@
 20
 40
 02
-bf
+c0
 70
 4a
 91
@@ -6086,8 +6102,8 @@
 ae
 20
 40
-05
-fc
+06
+00
 68
 00
 ca
@@ -6095,7 +6111,7 @@
 24
 5a
 03
-ae
+af
 20
 20
 42
@@ -6110,8 +6126,8 @@
 1f
 20
 40
-05
-fc
+06
+00
 d8
 c0
 4a
@@ -6211,7 +6227,7 @@
 20
 40
 06
-15
+19
 20
 20
 55
@@ -6243,7 +6259,7 @@
 24
 21
 03
-c4
+c5
 68
 00
 c3
@@ -6259,7 +6275,7 @@
 20
 21
 06
-11
+15
 68
 00
 c3
@@ -6271,7 +6287,7 @@
 20
 20
 06
-13
+17
 68
 00
 84
@@ -6283,7 +6299,7 @@
 20
 40
 06
-24
+28
 24
 74
 00
@@ -6331,7 +6347,7 @@
 c2
 82
 86
-3f
+43
 68
 00
 c7
@@ -6339,7 +6355,7 @@
 24
 3a
 06
-35
+39
 68
 00
 84
@@ -6347,7 +6363,7 @@
 c3
 02
 06
-39
+3d
 68
 00
 82
@@ -6355,7 +6371,7 @@
 20
 3a
 06
-39
+3d
 20
 20
 56
@@ -6383,7 +6399,7 @@
 c0
 82
 86
-3c
+40
 70
 47
 8e
@@ -6395,7 +6411,7 @@
 20
 5a
 03
-79
+7a
 20
 20
 56
@@ -6527,7 +6543,7 @@
 c0
 01
 86
-60
+64
 20
 20
 56
@@ -6539,11 +6555,11 @@
 c0
 00
 06
-64
+68
 c0
 00
 86
-6b
+6f
 20
 20
 5c
@@ -6603,11 +6619,11 @@
 c0
 02
 06
-74
+78
 c0
 03
 06
-78
+7c
 20
 20
 56
@@ -6619,7 +6635,7 @@
 20
 40
 06
-4a
+4e
 20
 40
 7e
@@ -6635,11 +6651,11 @@
 c0
 00
 86
-7c
+80
 c0
 02
 86
-7e
+82
 20
 20
 5a
@@ -6719,7 +6735,7 @@
 20
 37
 06
-90
+94
 24
 36
 d8
@@ -6799,7 +6815,7 @@
 c0
 09
 06
-a4
+a8
 20
 20
 7d
@@ -6883,11 +6899,11 @@
 c0
 02
 06
-c1
+c5
 c0
 10
 06
-cb
+cf
 70
 89
 4c
@@ -6923,7 +6939,7 @@
 20
 40
 06
-c6
+ca
 70
 89
 55
@@ -6980,8 +6996,8 @@
 20
 28
 fa
-45
-04
+f5
+38
 aa
 55
 08
@@ -7917,7 +7933,7 @@
 00
 e2
 4a
-13
+14
 00
 aa
 55
@@ -7958,7 +7974,7 @@
 55
 04
 00
-c1
+c2
 4b
 02
 00
@@ -7968,7 +7984,7 @@
 55
 15
 00
-cc
+cd
 4b
 20
 15
@@ -7995,7 +8011,7 @@
 55
 03
 00
-e5
+e6
 4b
 19
 19
@@ -8004,7 +8020,7 @@
 55
 03
 00
-ef
+f0
 4b
 00
 ee
@@ -8013,7 +8029,7 @@
 55
 02
 00
-05
+06
 4c
 04
 01
@@ -8021,7 +8037,7 @@
 55
 06
 00
-05
+06
 4d
 0f
 0f
@@ -8029,24 +8045,8 @@
 0f
 0f
 0f
-31
-e7
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+cf
+75
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-eb
-bd
+83
+8f
Index: output/memmap.format
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/output/memmap.format	(revision 3235)
+++ /branch/flip_pen/flip_pen_24G&BLE/output/memmap.format	(working copy)
@@ -1868,126 +1868,127 @@
 0x4b36 mem_device_turn_off
 0x4b37 mem_key_long_short_press
 0x4b38 mem_mouse_vinlpm_vol
-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
+0x4b3a mem_flip_retransmit_fail
+0x4b3b mem_24g_rxbuf
+0x4b5d mem_24g_txbuf
+0x4b7d mem_24g_txpayload
+0x4b9f mem_24g_rxpayload
+0x4bbf mem_24g_rxdata_length
+0x4bc0 mem_24g_pid
+0x4bc1 mem_24g_datalen
+0x4bc2 mem_24g_data_type
+0x4bc3 mem_24g_txlen
+0x4bc4 mem_24g_rx_window
+0x4bc6 mem_24g_ensure
+0x4bc7 mem_24g_txfail_cnt
+0x4bc9 mem_24g_get_ack_fail
+0x4bca mem_24g_retry
+0x4bcb mem_24g_ch
+0x4bcc mem_24g_current_ch_number
+0x4bcd mem_24g_paring_addr
+0x4bd1 mem_24g_pairing_sm
+0x4bd2 mem_24g_ch_map1
+0x4bd6 mem_24g_ch_map2
+0x4bda mem_24g_ch_map3
+0x4bde mem_24g_ch_map4
+0x4be2 mem_24g_tx_btclk
+0x4be6 mem_24g_interval
+0x4be7 mem_24g_interval_min
+0x4be8 mem_24g_interval_max
+0x4be9 mem_24g_addr
+0x4bed mem_24g_abort_pac
+0x4bee mem_24g_check_dongle_times
+0x4bf0 mem_24g_enter_hibernate
+0x4bf8 mem_24g_device_addr
+0x4bfc mem_24g_pac_index
+0x4bfd mem_24g_no_ack
+0x4bfe mem_24g_sta_crc
+0x4c01 mem_24g_last_crc
+0x4c04 mem_24g_sta_pid
+0x4c05 mem_24g_last_pid
+0x4c06 mem_24g_max_retry
+0x4c07 mem_24g_mode
+0x4c08 mem_24g_rxdata_temp
+0x4c2a mem_24g_rx_addr
+0x4c2e mem_dongle_mode_init
+0x4c2f mem_dongle_work_mode
+0x4c30 mem_dongle_ms_bind_step
+0x4c31 mem_dongle_kb_bind_step
+0x4c32 mem_dongle_bind_device_status
+0x4c33 mem_24g_bind_payload
+0x4c3b mem_24g_abort_packet
+0x4c3c mem_24g_rf_laststa
+0x4c3d mem_24g_hop_btclk
+0x4c41 mem_24g_hop_interval
+0x4c42 mem_24g_mode_switch
+0x4c43 mem_24g_ackpayload_enable
+0x4c44 mem_24g_hop_packet
+0x4c45 mem_24g_pair_mode
+0x4c46 mem_24g_nodata_timer_enable
+0x4c47 mem_24g_time_slice
+0x4c48 mem_24g_kb_data_sta_data
+0x4c50 mem_24g_kb_data_last_data
+0x4c58 mem_24g_kb_multikey_sta_data
+0x4c5b mem_24g_kb_multikey_last_data
+0x4c5e mem_24g_kb_blank_data_enable
+0x4c5f mem_24g_kb_mul_blank_data_enable
+0x4c60 mem_24g_ms_blank_data_enable
+0x4c61 mem_24g_kb_addr
+0x4c65 mem_24g_ms_addr
+0x4c69 mem_24g_dg_last_ch
+0x4c6a mem_24g_dg_ch_number
+0x4c6b mem_24g_dg_config_ch_once
+0x4c6c mem_24g_kb_last_ch
+0x4c6d mem_24g_kb_ch_number
+0x4c6e mem_24g_kb_config_ch_once
+0x4c6f mem_24g_ms_last_ch
+0x4c70 mem_24g_ms_ch_number
+0x4c71 mem_24g_ms_config_ch_once
+0x4c72 mem_24g_syncword
+0x4c74 mem_24g_syncword_crc8
+0x4c75 mem_24g_get_syncword_crc8
+0x4c76 mem_24g_ota_sta_pid
+0x4c78 mem_tx_power_temp
+0x4c79 mem_rssi_hex
+0x4c7a mem_rssi_noise_avg
+0x4c7b mem_rssi_noise_index
+0x4c7c mem_rssi_signal_index
+0x4c7d mem_rssi_noise_dg_avg
+0x4c7e mem_rssi_noise_kb_avg
+0x4c7f mem_rssi_noise_ms_avg
+0x4c80 mem_rssi_noise_dg_index
+0x4c81 mem_rssi_noise_kb_index
+0x4c82 mem_rssi_noise_ms_index
+0x4c83 mem_rssi_signal_buf
+0x4c8b mem_queue_ele_num
+0x4c8c mem_queue_read
+0x4c8e mem_queue_write
+0x4c90 mem_queue_start
+0x4c90 mem_data_ele0
+0x4cb0 mem_data_ele1
+0x4cd0 mem_data_ele2
+0x4cf0 mem_queue_end
+0x4cf0 mem_queue_temp
+0x4cf2 mem_cb_24g_data
+0x4cf4 mem_24g_hop_fastly_cnt
+0x4cf5 mem_24g_hop_pac_retry
+0x4cf6 mem_24g_rf_hop_ch
+0x4cf7 mem_24g_rf_last_sta
+0x4cf8 mem_24g_rf_work_stage
+0x4cf9 mem_24g_sync_cnt
+0x4cfa mem_power_ctrl_pac_succ_cnt
+0x4cfb mem_rssi_avg_received
+0x4cfc mem_rssi_hex_received
+0x4cfd mem_power_ctrl_level
+0x4cfe mem_seqi
+0x4cff mem_24g_auto_paring_switch
+0x4d00 mem_24g_paccnt
+0x4d01 mem_24g_transmit_by_interrupt
+0x4d02 mem_24g_transmit_by_interrupt_exit_count
+0x4d04 mem_24g_transmit_by_interrupt_exit_count_init
+0x4d06 mem_24g_allpowerful_addr
+0x4d0c mem_24g_search_dongle_action
+0x4d0d mem_24g_search_dongle_count
+0x4d0e mem_24g_search_dongle_ch
+0x4d0f mem_24g_search_dongle_wait
+0x4d10 mem_g24_conn_sm
Index: output/program.lis
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/output/program.lis	(revision 3239)
+++ /branch/flip_pen/flip_pen_24G&BLE/output/program.lis	(working copy)
@@ -4,29 +4,29 @@
 0001 c000001a beq patch00_0 ,p_soft_reset 
 0002 c000801f beq patch00_1 ,p_soft_reset_1 
 0003 c0010028 beq patch00_2 ,p_soft_reset_2 
-0004 c04286ce beq patch10_5 ,p_shutdown_radio 
-0005 c04486a7 beq patch11_1 ,p_set_freq_tx 
+0004 c04286d2 beq patch10_5 ,p_shutdown_radio 
+0005 c04486ab beq patch11_1 ,p_set_freq_tx 
 0006 c0508031 beq patch14_1 ,p_init_param 
 0007 c0588036 beq patch16_1 ,p_lpm_check_wake_lock 
 0008 c059003a beq patch16_2 ,p_g24_dispatch 
-0009 c06202ae beq patch18_4 ,p_device_init 
-000a c0730545 beq patch1c_6 ,p_mouse_motion 
-000b c07505dc beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
-000c c07585e4 beq patch1d_3 ,p_mouse_start_discovery 
-000d c07605fe beq patch1d_4 ,p_mouse_stop_discovery 
+0009 c06202af beq patch18_4 ,p_device_init 
+000a c0730549 beq patch1c_6 ,p_mouse_motion 
+000b c07505e0 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+000c c07585e8 beq patch1d_3 ,p_mouse_start_discovery 
+000d c0760602 beq patch1d_4 ,p_mouse_stop_discovery 
 000e 20202a8e branch loop 
 
 pf_patch_ext:
-000f c01c8602 beq patch27_1 ,p_le_slave_match 
-0010 c0218609 beq patch28_3 ,p_le_next_adv_channel 
-0011 c02b860f beq patch2a_7 ,p_le_update_param 
-0012 c02c861f beq patch2b_1 ,p_le_update_channel_map 
-0013 c031862c beq patch2c_3 ,p_le_prepare_tx 
-0014 c0330651 beq patch2c_6 ,p_le_parse 
-0015 c0338670 beq patch2c_7 ,p_le_parse_l2cap 
-0016 c0350683 beq patch2d_2 ,p_le_adv_not_match 
-0017 c03b868d beq patch2e_7 ,p_le_lpm_setmult 
-0018 c07d069e beq patch3f_2 ,p_check_51cmd_once_continue 
+000f c01c8606 beq patch27_1 ,p_le_slave_match 
+0010 c021860d beq patch28_3 ,p_le_next_adv_channel 
+0011 c02b8613 beq patch2a_7 ,p_le_update_param 
+0012 c02c8623 beq patch2b_1 ,p_le_update_channel_map 
+0013 c0318630 beq patch2c_3 ,p_le_prepare_tx 
+0014 c0330655 beq patch2c_6 ,p_le_parse 
+0015 c0338674 beq patch2c_7 ,p_le_parse_l2cap 
+0016 c0350687 beq patch2d_2 ,p_le_adv_not_match 
+0017 c03b8691 beq patch2e_7 ,p_le_lpm_setmult 
+0018 c07d06a2 beq patch3f_2 ,p_check_51cmd_once_continue 
 0019 20202a8e branch loop 
 
 p_soft_reset:
@@ -40,7 +40,7 @@
 001f d8a009ae arg mem_sp_state ,contw 
 0020 df20000c arg 12 ,loopcnt 
 0021 20407ed4 call clear_mem 
-0022 20400341 call p_mouse_le_txbuff_load 
+0022 20400342 call p_mouse_le_txbuff_load 
 0023 20406a03 call rfcomm_init 
 0024 20405cf6 call init_lmp 
 0025 2455ac65 ncall lpm_disable_exen_output ,wake 
@@ -75,15 +75,15 @@
 
 p_g24_dispatch:
 003a c6930000 rtnmark0 mark_24g 
-003b 204002c2 call p_g24_250k_enable 
+003b 204002c3 call p_g24_250k_enable 
 003c 2040003e call p_g24_dispatch1 
-003d 202002c8 branch p_g24_250k_disable 
+003d 202002c9 branch p_g24_250k_disable 
 
 p_g24_dispatch1:
-003e 6800cd0f fetch 1 ,mem_g24_conn_sm 
+003e 6800cd10 fetch 1 ,mem_g24_conn_sm 
 003f c2808099 bbit1 state_24g_pair ,p_g24_pair_dispatch 
 0040 c28100b3 bbit1 state_24g_reconn ,p_g24_reconn_dispatch 
-0041 6800cd00 fetch 1 ,mem_24g_transmit_by_interrupt 
+0041 6800cd01 fetch 1 ,mem_24g_transmit_by_interrupt 
 0042 c00080c0 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
 
 p_g24_transmit_process:
@@ -94,7 +94,7 @@
 p_g24_transmit_start:
 0046 7041de02 jam tx_power_5db ,mem_tx_power 
 0047 20400161 call p_g24_transmit_packet 
-0048 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+0048 6800cbd1 fetch 1 ,mem_24g_pairing_sm 
 0049 c1ff8000 rtnne state_24g_pairing_success 
 004a 6800cafa fetch 1 ,mem_customer_data_trigger 
 004b c0010051 beq 2 ,p_g24_transmit_customer_data 
@@ -102,7 +102,7 @@
 p_g24_short_sleep:
 004c 204000e3 call p_g24_lpm_wait 
 004d 24740000 nrtn user 
-004e 204002ab call p_clear_wake 
+004e 204002ac call p_clear_wake 
 004f 5800ea60 setarg 60000 
 0050 20202b93 branch lpm_dispatch_sleep 
 
@@ -125,11 +125,11 @@
 005a da404af0 arg mem_customer_key_release ,regb 
 005b 68014b1e fetch 2 ,mem_key_send_payload_staus 
 005c 245a006f ncall p_mouse_customer_key_press ,blank 
-005d 704bec00 jam 0 ,mem_24g_abort_pac 
+005d 704bed00 jam 0 ,mem_24g_abort_pac 
 005e 1a20fe01 add rega ,1 ,pdata 
-005f 6000cbc0 store 1 ,mem_24g_datalen 
+005f 6000cbc1 store 1 ,mem_24g_datalen 
 0060 20400104 call p_g24_transmit_rf_ctrl_clear 
-0061 6000cb5c store 1 ,mem_24g_txbuf 
+0061 6000cb5d store 1 ,mem_24g_txbuf 
 0062 1a420c00 copy regb ,contr 
 0063 1a227200 copy rega ,loopcnt 
 0064 20207f01 branch memcpy 
@@ -211,103 +211,103 @@
 p_g24_pair_dispatch:
 0099 6800caa1 fetch 1 ,mem_g24_stop_g24_mode 
 009a c000add4 beq 1 ,g24_stop_24g_mode 
-009b 204001f6 call p_g24_tx_attemp_data_prep 
+009b 204001f7 call p_g24_tx_attemp_data_prep 
 009c 20400177 call p_g24_transmit_receive_ack 
-009d 242c01ff nbranch p_g24_pair_txdata_retry ,sync 
-009e 243781ff nbranch p_g24_pair_txdata_retry ,user3 
-009f 204001a2 call p_g24_ackpayload_parse 
-00a0 68024be8 fetch 4 ,mem_24g_addr 
-00a1 680a4d05 fetcht 4 ,mem_24g_allpowerful_addr 
+009d 242c0200 nbranch p_g24_pair_txdata_retry ,sync 
+009e 24378200 nbranch p_g24_pair_txdata_retry ,user3 
+009f 204001a3 call p_g24_ackpayload_parse 
+00a0 68024be9 fetch 4 ,mem_24g_addr 
+00a1 680a4d06 fetcht 4 ,mem_24g_allpowerful_addr 
 00a2 98467c00 isub temp ,null 
 00a3 202280a6 branch p_g24_auto_pair_skip_rx_length ,zero 
-00a4 6800cbbe fetch 1 ,mem_24g_rxdata_length 
+00a4 6800cbbf fetch 1 ,mem_24g_rxdata_length 
 00a5 c1840000 rtnne bind_ackpayload_length 
 
 p_g24_auto_pair_skip_rx_length:
-00a6 704d0f00 jam 0 ,mem_g24_conn_sm 
-00a7 204002bf call p_mouse_tx_power_init 
-00a8 68024be8 fetch 4 ,mem_24g_addr 
-00a9 680a4bcc fetcht 4 ,mem_24g_paring_addr 
+00a6 704d1000 jam 0 ,mem_g24_conn_sm 
+00a7 204002c0 call p_mouse_tx_power_init 
+00a8 68024be9 fetch 4 ,mem_24g_addr 
+00a9 680a4bcd fetcht 4 ,mem_24g_paring_addr 
 00aa 98467c00 isub temp ,null 
-00ab 202282df branch p_g24_start_pairing_sm1 ,zero 
-00ac 68024be8 fetch 4 ,mem_24g_addr 
-00ad 680a4bf7 fetcht 4 ,mem_24g_device_addr 
+00ab 202282e0 branch p_g24_start_pairing_sm1 ,zero 
+00ac 68024be9 fetch 4 ,mem_24g_addr 
+00ad 680a4bf8 fetcht 4 ,mem_24g_device_addr 
 00ae 98467c00 isub temp ,null 
 00af 204280b1 call p_g24_store_dongle_addr ,zero 
 00b0 202000ba branch p_g24_tx_attemp_dongle_succ 
 
 p_g24_store_dongle_addr:
-00b1 68024ba0 fetch 4 ,mem_24g_rxpayload + 2 
-00b2 202001b8 branch p_g24_update_addr_and_synccrc8 
+00b1 68024ba1 fetch 4 ,mem_24g_rxpayload + 2 
+00b2 202001b9 branch p_g24_update_addr_and_synccrc8 
 
 p_g24_reconn_dispatch:
 00b3 6800caa1 fetch 1 ,mem_g24_stop_g24_mode 
 00b4 c000add4 beq 1 ,g24_stop_24g_mode 
-00b5 204001f6 call p_g24_tx_attemp_data_prep 
+00b5 204001f7 call p_g24_tx_attemp_data_prep 
 00b6 20400177 call p_g24_transmit_receive_ack 
 00b7 242c0112 nbranch p_g24_ch ,sync 
 00b8 24378112 nbranch p_g24_ch ,user3 
-00b9 704d0f00 jam 0 ,mem_g24_conn_sm 
+00b9 704d1000 jam 0 ,mem_g24_conn_sm 
 
 p_g24_tx_attemp_dongle_succ:
 00ba 20402f20 call g24_app_tx_attemp_succ 
 00bb 20400174 call p_g24_txbuf_clear 
 
 p_g24_transmit_by_interrupt_enable:
-00bc 704d0001 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+00bc 704d0101 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
 00bd 58000000 setarg 0 
-00be 60014d01 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00be 60014d02 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00bf 20600000 rtn 
 
 p_g24_transmit_by_interrupt:
-00c0 20400295 call p_g24_timer_check 
+00c0 20400296 call p_g24_timer_check 
 00c1 24740000 nrtn user 
 00c2 204000d5 call p_g24_interval_calibrate 
-00c3 68014d01 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c3 68014d02 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00c4 1fe0fe01 increase 1 ,pdata 
-00c5 60014d01 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-00c6 68094d03 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00c5 60014d02 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c6 68094d04 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 00c7 98467c00 isub temp ,null 
 00c8 204280ca call p_g24_transmit_by_interrupt_exit ,zero 
 00c9 20200043 branch p_g24_transmit_process 
 
 p_g24_transmit_by_interrupt_exit:
-00ca 704d0000 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+00ca 704d0100 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
 00cb 58000000 setarg 0 
-00cc 60014d01 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00cc 60014d02 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00cd 58000064 setarg 100 
-00ce 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00ce 60014d04 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 
 p_g24_interval_min:
-00cf 704bfb00 jam 0 ,mem_24g_pac_index 
-00d0 6800cbe6 fetch 1 ,mem_24g_interval_min 
+00cf 704bfc00 jam 0 ,mem_24g_pac_index 
+00d0 6800cbe7 fetch 1 ,mem_24g_interval_min 
 
 p_g24_interval_store:
-00d1 6000cbe5 store 1 ,mem_24g_interval 
+00d1 6000cbe6 store 1 ,mem_24g_interval 
 00d2 20600000 rtn 
 
 p_g24_interval_max:
-00d3 6800cbe7 fetch 1 ,mem_24g_interval_max 
+00d3 6800cbe8 fetch 1 ,mem_24g_interval_max 
 00d4 202000d1 branch p_g24_interval_store 
 
 p_g24_interval_calibrate:
-00d5 6800cbfb fetch 1 ,mem_24g_pac_index 
+00d5 6800cbfc fetch 1 ,mem_24g_pac_index 
 00d6 1fe0fe01 increase 1 ,pdata 
-00d7 6000cbfb store 1 ,mem_24g_pac_index 
+00d7 6000cbfc store 1 ,mem_24g_pac_index 
 00d8 c00200d3 beq 4 ,p_g24_interval_max 
 00d9 c00280cf beq 5 ,p_g24_interval_min 
 00da 20600000 rtn 
 
 p_g24_nodata_transmit:
-00db 6800cbec fetch 1 ,mem_24g_abort_pac 
+00db 6800cbed fetch 1 ,mem_24g_abort_pac 
 00dc 205a00f4 call p_g24_send_abort_packet ,blank 
-00dd 6800cd00 fetch 1 ,mem_24g_transmit_by_interrupt 
+00dd 6800cd01 fetch 1 ,mem_24g_transmit_by_interrupt 
 00de c1008000 rtneq g24_tx_timer_int_enable 
 
 p_g24_long_sleep:
 00df 204000e3 call p_g24_lpm_wait 
 00e0 24740000 nrtn user 
-00e1 6801cbef fetch 3 ,mem_24g_enter_hibernate 
+00e1 6801cbf0 fetch 3 ,mem_24g_enter_hibernate 
 00e2 20202d8c branch g24_lpm_long_sleep2 
 
 p_g24_lpm_wait:
@@ -317,11 +317,11 @@
 00e6 203a7fe9 branch disable_user ,blank 
 00e7 6800c091 fetch 1 ,mem_lpm_mode 
 00e8 203a7fe9 branch disable_user ,blank 
-00e9 6800cd00 fetch 1 ,mem_24g_transmit_by_interrupt 
+00e9 6800cd01 fetch 1 ,mem_24g_transmit_by_interrupt 
 00ea c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
 
 p_mouse_setgpio_lpm:
-00eb 204002ab call p_clear_wake 
+00eb 204002ac call p_clear_wake 
 
 p_mouse_setgpio_lpm_before:
 00ec 20403ec6 call mouse_lpm_before_common + 7 
@@ -331,105 +331,105 @@
 00f0 18440400 invert temp ,temp 
 00f1 793f8414 set0 20 ,temp 
 00f2 601a007c hstoret 4 ,core_gpio_pd0 
-00f3 20600000 rtn 
+00f3 202003f3 branch p_set_usb_gpio_wakeup 
 
 p_g24_send_abort_packet:
-00f4 704bec01 jam 1 ,mem_24g_abort_pac 
-00f5 704cf500 jam 0 ,mem_24g_rf_hop_ch 
+00f4 704bed01 jam 1 ,mem_24g_abort_pac 
+00f5 704cf600 jam 0 ,mem_24g_rf_hop_ch 
 00f6 20400104 call p_g24_transmit_rf_ctrl_clear 
-00f7 6000cb5c store 1 ,mem_24g_txbuf 
+00f7 6000cb5d store 1 ,mem_24g_txbuf 
 00f8 58000000 setarg 0 
-00f9 6003cb5d store 7 ,mem_24g_txbuf + 1 
-00fa 68024bf7 fetch 4 ,mem_24g_device_addr 
-00fb 60024b64 store 4 ,mem_24g_txbuf + 8 
-00fc 704bc00c jam 12 ,mem_24g_datalen 
-00fd 6800cbc1 fetch 1 ,mem_24g_data_type 
+00f9 6003cb5e store 7 ,mem_24g_txbuf + 1 
+00fa 68024bf8 fetch 4 ,mem_24g_device_addr 
+00fb 60024b65 store 4 ,mem_24g_txbuf + 8 
+00fc 704bc10c jam 12 ,mem_24g_datalen 
+00fd 6800cbc2 fetch 1 ,mem_24g_data_type 
 00fe 79207e03 set1 bit_abort ,pdata 
-00ff 6000cbc1 store 1 ,mem_24g_data_type 
+00ff 6000cbc2 store 1 ,mem_24g_data_type 
 0100 20400153 call p_g24_txdata_enable_tx 
 0101 20200046 branch p_g24_transmit_start 
 
 p_g24_transmit_rf_sta_init:
-0102 704cf601 jam 1 ,mem_24g_rf_last_sta 
-0103 704cf800 jam 0 ,mem_24g_sync_cnt 
+0102 704cf701 jam 1 ,mem_24g_rf_last_sta 
+0103 704cf900 jam 0 ,mem_24g_sync_cnt 
 
 p_g24_transmit_rf_ctrl_clear:
-0104 6800cbc1 fetch 1 ,mem_24g_data_type 
+0104 6800cbc2 fetch 1 ,mem_24g_data_type 
 0105 1fe17e07 and_into bits_data ,pdata 
-0106 6000cbc1 store 1 ,mem_24g_data_type 
+0106 6000cbc2 store 1 ,mem_24g_data_type 
 0107 20600000 rtn 
 
 p_g24_hop_ch_enable:
-0108 6800cbc1 fetch 1 ,mem_24g_data_type 
+0108 6800cbc2 fetch 1 ,mem_24g_data_type 
 0109 79207e04 set1 bit_hop ,pdata 
 
 p_g24_hop_ch_store:
-010a 6000cbc1 store 1 ,mem_24g_data_type 
-010b 6000cb7c store 1 ,mem_24g_txpayload 
+010a 6000cbc2 store 1 ,mem_24g_data_type 
+010b 6000cb7d store 1 ,mem_24g_txpayload 
 010c 20600000 rtn 
 
 p_g24_hop_enable_packet:
-010d 6800cbc1 fetch 1 ,mem_24g_data_type 
+010d 6800cbc2 fetch 1 ,mem_24g_data_type 
 010e c4020000 rtnbit0 bit_hop 
 
 p_g24_hop_ch_disable:
-010f 6800cbc1 fetch 1 ,mem_24g_data_type 
+010f 6800cbc2 fetch 1 ,mem_24g_data_type 
 0110 793ffe04 set0 bit_hop ,pdata 
 0111 2040010a call p_g24_hop_ch_store 
 
 p_g24_ch:
-0112 6808cbcb fetcht 1 ,mem_24g_current_ch_number 
-0113 6800cbe8 fetch 1 ,mem_24g_addr 
+0112 6808cbcc fetcht 1 ,mem_24g_current_ch_number 
+0113 6800cbe9 fetch 1 ,mem_24g_addr 
 0114 1fe17e03 and_into 0x03 ,pdata 
 0115 1fefa204 mul32 pdata ,4 ,rega 
-0116 58004bd1 setarg mem_24g_ch_map1 
+0116 58004bd2 setarg mem_24g_ch_map1 
 0117 9a20fe00 iadd rega ,pdata 
 0118 98408c00 iadd temp ,contr 
 0119 e8c08000 ifetch 1 ,contr 
-011a 6000cbca store 1 ,mem_24g_ch 
+011a 6000cbcb store 1 ,mem_24g_ch 
 011b 18408401 increase 1 ,temp 
 011c 18410403 and_into 3 ,temp 
-011d 6008cbcb storet 1 ,mem_24g_current_ch_number 
+011d 6008cbcc storet 1 ,mem_24g_current_ch_number 
 011e 20600000 rtn 
 
 p_g24_rf_hop_attemp_again:
-011f 6800ccf5 fetch 1 ,mem_24g_rf_hop_ch 
+011f 6800ccf6 fetch 1 ,mem_24g_rf_hop_ch 
 0120 c0808104 bne 1 ,p_g24_transmit_rf_ctrl_clear 
 
 p_g24_rf_hop_fastly:
-0121 6800ccf3 fetch 1 ,mem_24g_hop_fastly_cnt 
+0121 6800ccf4 fetch 1 ,mem_24g_hop_fastly_cnt 
 0122 1fe0fe01 increase 1 ,pdata 
-0123 6000ccf3 store 1 ,mem_24g_hop_fastly_cnt 
+0123 6000ccf4 store 1 ,mem_24g_hop_fastly_cnt 
 0124 c0020128 beq 4 ,p_g24_rf_hop_fastly_exit 
 0125 20400112 call p_g24_ch 
-0126 704c0502 jam 2 ,mem_24g_max_retry 
+0126 704c0602 jam 2 ,mem_24g_max_retry 
 0127 20200161 branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-0128 704cf300 jam 0 ,mem_24g_hop_fastly_cnt 
+0128 704cf400 jam 0 ,mem_24g_hop_fastly_cnt 
 0129 20200104 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_succ_wo_hop:
-012a 704cf802 jam 2 ,mem_24g_sync_cnt 
+012a 704cf902 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_succ:
-012b 704cf601 jam 1 ,mem_24g_rf_last_sta 
-012c 704cf500 jam 0 ,mem_24g_rf_hop_ch 
+012b 704cf701 jam 1 ,mem_24g_rf_last_sta 
+012c 704cf600 jam 0 ,mem_24g_rf_hop_ch 
 012d 20200104 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_succ_rf_config:
-012e 6800ccf7 fetch 1 ,mem_24g_rf_work_stage 
+012e 6800ccf8 fetch 1 ,mem_24g_rf_work_stage 
 012f c001812b beq 3 ,p_g24_transmit_hop_pac_succ 
-0130 6800cbc1 fetch 1 ,mem_24g_data_type 
+0130 6800cbc2 fetch 1 ,mem_24g_data_type 
 0131 2fec0004 isolate0 bit_hop ,pdata 
 0132 20208102 branch p_g24_transmit_rf_sta_init ,true 
-0133 6800ccf7 fetch 1 ,mem_24g_rf_work_stage 
+0133 6800ccf8 fetch 1 ,mem_24g_rf_work_stage 
 0134 c000812a beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
 0135 c001012b beq 2 ,p_g24_transmit_hop_pac_succ 
 0136 20600000 rtn 
 
 p_g24_rf_sta_check:
-0137 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
+0137 6800cbd1 fetch 1 ,mem_24g_pairing_sm 
 0138 c1ff8000 rtnne state_24g_pairing_success 
 0139 2040013c call p_g24_rf_laststa_synccnt_check 
 013a 24560144 ncall p_g24_rf_sync_cnt_check ,user2 
@@ -437,47 +437,47 @@
 
 p_g24_rf_laststa_synccnt_check:
 013c 78567c00 disable user2 
-013d 6800ccf6 fetch 1 ,mem_24g_rf_last_sta 
+013d 6800ccf7 fetch 1 ,mem_24g_rf_last_sta 
 013e c1808000 rtnne 1 
-013f 6800ccf8 fetch 1 ,mem_24g_sync_cnt 
+013f 6800ccf9 fetch 1 ,mem_24g_sync_cnt 
 0140 c1800000 rtnne 0 
-0141 704cf701 jam 1 ,mem_24g_rf_work_stage 
-0142 704c0504 jam 4 ,mem_24g_max_retry 
+0141 704cf801 jam 1 ,mem_24g_rf_work_stage 
+0142 704c0604 jam 4 ,mem_24g_max_retry 
 0143 20207feb branch enable_user2 
 
 p_g24_rf_sync_cnt_check:
-0144 6800ccf8 fetch 1 ,mem_24g_sync_cnt 
+0144 6800ccf9 fetch 1 ,mem_24g_sync_cnt 
 0145 203a014b branch p_g24_rf_hop_attemp ,blank 
 0146 1fe0ffff increase -1 ,pdata 
-0147 6000ccf8 store 1 ,mem_24g_sync_cnt 
-0148 704cf702 jam 2 ,mem_24g_rf_work_stage 
-0149 704c0504 jam 4 ,mem_24g_max_retry 
+0147 6000ccf9 store 1 ,mem_24g_sync_cnt 
+0148 704cf802 jam 2 ,mem_24g_rf_work_stage 
+0149 704c0604 jam 4 ,mem_24g_max_retry 
 014a 20200112 branch p_g24_ch 
 
 p_g24_rf_hop_attemp:
-014b 704cf703 jam 3 ,mem_24g_rf_work_stage 
-014c 6800ccf5 fetch 1 ,mem_24g_rf_hop_ch 
+014b 704cf803 jam 3 ,mem_24g_rf_work_stage 
+014c 6800ccf6 fetch 1 ,mem_24g_rf_hop_ch 
 014d 243a011f nbranch p_g24_rf_hop_attemp_again ,blank 
-014e 704c0502 jam 2 ,mem_24g_max_retry 
+014e 704c0602 jam 2 ,mem_24g_max_retry 
 014f 20200112 branch p_g24_ch 
 
 p_g24_txdata_prep:
-0150 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
-0151 c0ff81c6 bne state_24g_pairing_success ,p_g24_pairing_sm 
+0150 6800cbd1 fetch 1 ,mem_24g_pairing_sm 
+0151 c0ff81c7 bne state_24g_pairing_success ,p_g24_pairing_sm 
 
 p_g24_txdata_prep_packeage_data:
 0152 20400156 call p_g24_package_data 
 
 p_g24_txdata_enable_tx:
-0153 20400221 call p_g24_transmit_prep 
-0154 704bc501 jam ensure_on_24g ,mem_24g_ensure 
+0153 20400222 call p_g24_transmit_prep 
+0154 704bc601 jam ensure_on_24g ,mem_24g_ensure 
 0155 20600000 rtn 
 
 p_g24_package_data:
-0156 68014cf1 fetch 2 ,mem_cb_24g_data 
+0156 68014cf2 fetch 2 ,mem_cb_24g_data 
 0157 20407f9c call callback_func 
 0158 2034015c branch p_g24_customer_data ,user 
-0159 6803cb5d fetch 7 ,mem_24g_txbuf + 1 
+0159 6803cb5e fetch 7 ,mem_24g_txbuf + 1 
 015a 207a0000 rtn blank 
 015b 20207fe7 branch enable_user 
 
@@ -491,7 +491,7 @@
 0160 20200059 branch p_g24_accumulate_customer_data 
 
 p_g24_transmit_packet:
-0161 704bc900 jam 0 ,mem_24g_retry 
+0161 704bca00 jam 0 ,mem_24g_retry 
 
 p_g24_transmit_loop:
 0162 d9600d00 arg param_rx_setup ,timeup 
@@ -500,52 +500,52 @@
 0165 242c0182 nbranch p_g24_retransmit ,sync 
 0166 24378182 nbranch p_g24_retransmit ,user3 
 0167 20400174 call p_g24_txbuf_clear 
-0168 204001a2 call p_g24_ackpayload_parse 
+0168 204001a3 call p_g24_ackpayload_parse 
 
 p_g24_transmit_next_packet:
-0169 6800cbbf fetch 1 ,mem_24g_pid 
+0169 6800cbc0 fetch 1 ,mem_24g_pid 
 016a 1fe0fe01 increase 1 ,pdata 
-016b 6000cbbf store 1 ,mem_24g_pid 
+016b 6000cbc0 store 1 ,mem_24g_pid 
 016c 2040010d call p_g24_hop_enable_packet 
-016d 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
-016e c0ff81e0 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+016d 6800cbd1 fetch 1 ,mem_24g_pairing_sm 
+016e c0ff81e1 bne state_24g_pairing_success ,p_g24_paring_mode_start 
 016f 2040012e call p_g24_transmit_succ_rf_config 
 
 p_g24_transmit_abandon:
 0170 58000000 setarg 0 
-0171 60024bc5 store 4 ,mem_24g_ensure 
-0172 6000ccf4 store 1 ,mem_24g_hop_pac_retry 
+0171 60024bc6 store 4 ,mem_24g_ensure 
+0172 6000ccf5 store 1 ,mem_24g_hop_pac_retry 
 0173 20600000 rtn 
 
 p_g24_txbuf_clear:
 0174 df200004 arg 4 ,loopcnt 
-0175 d8a04b5c arg mem_24g_txbuf ,contw 
+0175 d8a04b5d arg mem_24g_txbuf ,contw 
 0176 20207ec6 branch memset0 
 
 p_g24_transmit_receive_ack:
 0177 7857fc00 disable user3 
-0178 20400272 call p_g24_transmit 
+0178 20400273 call p_g24_transmit 
 0179 18002a00 force 0 ,radio_ctrl 
-017a 68024be8 fetch 4 ,mem_24g_addr 
+017a 68024be9 fetch 4 ,mem_24g_addr 
 017b 98001200 iforce access 
 017c 68088017 fetcht 1 ,mem_last_freq 
 017d 2040291f call set_freq_rx 
 017e 20402924 call rf_rx_enable 
-017f 20400239 call p_g24_receive_rxon 
-0180 2057826f call p_g24_end_of_packet ,user3 
+017f 2040023a call p_g24_receive_rxon 
+0180 20578270 call p_g24_end_of_packet ,user3 
 0181 20600000 rtn 
 
 p_g24_retransmit:
-0182 6800cbec fetch 1 ,mem_24g_abort_pac 
+0182 6800cbed fetch 1 ,mem_24g_abort_pac 
 0183 247a0000 nrtn blank 
-0184 68014bc6 fetch 2 ,mem_24g_txfail_cnt 
+0184 68014bc7 fetch 2 ,mem_24g_txfail_cnt 
 0185 1fe0fe01 increase 1 ,pdata 
-0186 60014bc6 store 2 ,mem_24g_txfail_cnt 
-0187 6800cbc7 fetch 1 ,mem_24g_txfail_cnt + 1 
+0186 60014bc7 store 2 ,mem_24g_txfail_cnt 
+0187 6800cbc8 fetch 1 ,mem_24g_txfail_cnt + 1 
 0188 c280818d bbit1 1 ,p_g24_stop_24g_mode 
-0189 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
-018a c0ff8193 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
-018b 20400198 call p_g24_tx_hop_ch_process 
+0189 6800cbd1 fetch 1 ,mem_24g_pairing_sm 
+018a c0ff8194 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+018b 20400199 call p_g24_tx_hop_ch_process 
 018c 20200162 branch p_g24_transmit_loop 
 
 p_g24_stop_24g_mode:
@@ -553,1847 +553,1853 @@
 018e 60014ae4 store 2 ,mem_customer_key 
 018f 704b2b00 jam 0 ,mem_flip_connect_success 
 0190 6800cb1c fetch 1 ,mem_flip_device_charging 
-0191 205a045f call p_mouse_multi_led_blink_off ,blank 
-0192 20200195 branch p_g24_tx_attempt_fail 
+0191 205a0463 call p_mouse_multi_led_blink_off ,blank 
+0192 704b3a01 jam 1 ,mem_flip_retransmit_fail 
+0193 20200196 branch p_g24_tx_attempt_fail 
 
 p_g24_tx_paring_retry:
-0193 6800cbc6 fetch 1 ,mem_24g_txfail_cnt 
-0194 c1ff8000 rtnne 0xff 
+0194 6800cbc7 fetch 1 ,mem_24g_txfail_cnt 
+0195 c1ff8000 rtnne 0xff 
 
 p_g24_tx_attempt_fail:
-0195 58000000 setarg 0 
-0196 60014bc6 store 2 ,mem_24g_txfail_cnt 
-0197 20202dd4 branch g24_stop_24g_mode 
+0196 58000000 setarg 0 
+0197 60014bc7 store 2 ,mem_24g_txfail_cnt 
+0198 20202dd4 branch g24_stop_24g_mode 
 
 p_g24_tx_hop_ch_process:
-0198 6800cbc9 fetch 1 ,mem_24g_retry 
-0199 1fe67c0b sub pdata ,11 ,null 
-019a 24210112 nbranch p_g24_ch ,positive 
-019b 1fe0fe01 increase 1 ,pdata 
-019c 6000cbc9 store 1 ,mem_24g_retry 
-019d c0010108 beq 2 ,p_g24_hop_ch_enable 
-019e c003010f beq 6 ,p_g24_hop_ch_disable 
-019f c0040108 beq 8 ,p_g24_hop_ch_enable 
-01a0 c006010f beq 12 ,p_g24_hop_ch_disable 
-01a1 20600000 rtn 
+0199 6800cbca fetch 1 ,mem_24g_retry 
+019a 1fe67c0b sub pdata ,11 ,null 
+019b 24210112 nbranch p_g24_ch ,positive 
+019c 1fe0fe01 increase 1 ,pdata 
+019d 6000cbca store 1 ,mem_24g_retry 
+019e c0010108 beq 2 ,p_g24_hop_ch_enable 
+019f c003010f beq 6 ,p_g24_hop_ch_disable 
+01a0 c0040108 beq 8 ,p_g24_hop_ch_enable 
+01a1 c006010f beq 12 ,p_g24_hop_ch_disable 
+01a2 20600000 rtn 
 
 p_g24_ackpayload_parse:
-01a2 6800cb3b fetch 1 ,mem_24g_rxbuf + 1 
-01a3 1fe97e00 rshift3 pdata ,pdata 
-01a4 6000cbbe store 1 ,mem_24g_rxdata_length 
-01a5 1fe0fe01 increase 1 ,pdata 
-01a6 d8c04b3b 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 
-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 
-01af 207a0000 rtn blank 
-01b0 98007200 iforce loopcnt 
-01b1 d8c04b3c arg mem_24g_rxbuf + 2 ,contr 
-01b2 d8a04b9e arg mem_24g_rxpayload ,contw 
-01b3 20207f01 branch memcpy 
+01a3 6800cb3c fetch 1 ,mem_24g_rxbuf + 1 
+01a4 1fe97e00 rshift3 pdata ,pdata 
+01a5 6000cbbf store 1 ,mem_24g_rxdata_length 
+01a6 1fe0fe01 increase 1 ,pdata 
+01a7 d8c04b3c arg mem_24g_rxbuf + 1 ,contr 
+01a8 98c08c00 iadd contr ,contr 
+01a9 e8c18000 ifetch 3 ,contr 
+01aa 6001cbfe store 3 ,mem_24g_sta_crc 
+01ab 6800cb3c fetch 1 ,mem_24g_rxbuf + 1 
+01ac 1fe37e00 rshift pdata ,pdata 
+01ad 1fe17e03 and pdata ,0x03 ,pdata 
+01ae 6000cc04 store 1 ,mem_24g_sta_pid 
+01af 6800cbbf fetch 1 ,mem_24g_rxdata_length 
+01b0 207a0000 rtn blank 
+01b1 98007200 iforce loopcnt 
+01b2 d8c04b3d arg mem_24g_rxbuf + 2 ,contr 
+01b3 d8a04b9f arg mem_24g_rxpayload ,contw 
+01b4 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 7041de04 jam tx_power_f5db ,mem_tx_power 
+01b6 704bc000 jam 0 ,mem_24g_pid 
+01b7 704bcb4e jam g24_pair_ch ,mem_24g_ch 
+01b8 68024bcd fetch 4 ,mem_24g_paring_addr 
 
 p_g24_update_addr_and_synccrc8:
-01b8 60024be8 store 4 ,mem_24g_addr 
+01b9 60024be9 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 
+01ba da200000 arg 0 ,rega 
+01bb df200004 arg 4 ,loopcnt 
+01bc d8c04be9 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 
-01c3 9840fe00 iadd temp ,pdata 
-01c4 6000cc73 store 1 ,mem_24g_syncword_crc8 
-01c5 20600000 rtn 
+01bd e8c08000 ifetch 1 ,contr 
+01be 9a20a200 iadd rega ,rega 
+01bf c20001bd loop p_g24_syncword_crc8_loop 
+01c0 1a227e00 copy rega ,pdata 
+01c1 60014c72 store 2 ,mem_24g_syncword 
+01c2 6800cc72 fetch 1 ,mem_24g_syncword 
+01c3 6808cc73 fetcht 1 ,mem_24g_syncword + 1 
+01c4 9840fe00 iadd temp ,pdata 
+01c5 6000cc74 store 1 ,mem_24g_syncword_crc8 
+01c6 20600000 rtn 
 
 p_g24_pairing_sm:
-01c6 6800cbc5 fetch 1 ,mem_24g_ensure 
-01c7 c000ffe7 beq ensure_on_24g ,enable_user 
-01c8 6800cbd0 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 
+01c7 6800cbc6 fetch 1 ,mem_24g_ensure 
+01c8 c000ffe7 beq ensure_on_24g ,enable_user 
+01c9 6800cbd1 fetch 1 ,mem_24g_pairing_sm 
+01ca c00081ce beq state_24g_pairing_1 ,p_g24_pairing_sm_1 
+01cb c00101d1 beq state_24g_pairing_2 ,p_g24_pairing_sm_2 
+01cc c00181d4 beq state_24g_pairing_3 ,p_g24_pairing_sm_3 
+01cd 20202a8c branch assert 
 
 p_g24_pairing_sm_1:
-01cd 704bd011 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 
+01ce 704bd111 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm 
+01cf 70119eaa jam 0xaa ,mem_24g_common_temp 
+01d0 202001d6 branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_2:
-01d0 704bd012 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 
+01d1 704bd112 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm 
+01d2 70119e55 jam 0x55 ,mem_24g_common_temp 
+01d3 202001d6 branch p_g24_pairing_sm_common 
 
 p_g24_pairing_sm_3:
-01d3 704bd013 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
-01d4 70119e22 jam 0x22 ,mem_24g_common_temp 
+01d4 704bd113 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm 
+01d5 70119e22 jam 0x22 ,mem_24g_common_temp 
 
 p_g24_pairing_sm_common:
-01d5 6800cbc1 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 
-01d9 600211a0 store 4 ,mem_24g_common_temp + 2 
+01d6 6800cbc2 fetch 1 ,mem_24g_data_type 
+01d7 1fe17e07 and_into bits_data ,pdata 
+01d8 6000919f store 1 ,mem_24g_common_temp + 1 
+01d9 68024bf8 fetch 4 ,mem_24g_device_addr 
+01da 600211a0 store 4 ,mem_24g_common_temp + 2 
 
 p_g24_put_pairing_data_in_buff:
-01da 7011a400 jam 0 ,mem_24g_common_temp + 6 
-01db da20119e arg mem_24g_common_temp ,rega 
-01dc d8400007 arg 7 ,temp 
-01dd 2040021d call p_g24_put_data_in_buff 
-01de 20400153 call p_g24_txdata_enable_tx 
-01df 20207fe7 branch enable_user 
+01db 7011a400 jam 0 ,mem_24g_common_temp + 6 
+01dc da20119e arg mem_24g_common_temp ,rega 
+01dd d8400007 arg 7 ,temp 
+01de 2040021e call p_g24_put_data_in_buff 
+01df 20400153 call p_g24_txdata_enable_tx 
+01e0 20207fe7 branch enable_user 
 
 p_g24_paring_mode_start:
 
 p_g24_paring_mode:
-01e0 6800cbd0 fetch 1 ,mem_24g_pairing_sm 
-01e1 c17f8000 rtneq state_24g_pairing_success 
-01e2 c00881e6 beq state_24g_pairing_1_waiting_ack ,p_g24_pairing_sm_1_waiting_ack 
-01e3 c00901e8 beq state_24g_pairing_2_waiting_ack ,p_g24_pairing_sm_2_waiting_ack 
-01e4 c00981ea beq state_24g_pairing_3_waiting_ack ,p_g24_pairing_sm_3_waiting_ack 
-01e5 20600000 rtn 
+01e1 6800cbd1 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 
+01e5 c00981eb beq state_24g_pairing_3_waiting_ack ,p_g24_pairing_sm_3_waiting_ack 
+01e6 20600000 rtn 
 
 p_g24_pairing_sm_1_waiting_ack:
-01e6 704bd002 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
-01e7 20200170 branch p_g24_transmit_abandon 
+01e7 704bd102 jam state_24g_pairing_2 ,mem_24g_pairing_sm 
+01e8 20200170 branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_2_waiting_ack:
-01e8 704bd003 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
-01e9 20200170 branch p_g24_transmit_abandon 
+01e9 704bd103 jam state_24g_pairing_3 ,mem_24g_pairing_sm 
+01ea 20200170 branch p_g24_transmit_abandon 
 
 p_g24_pairing_sm_3_waiting_ack:
-01ea 704bd0ff jam state_24g_pairing_success ,mem_24g_pairing_sm 
-01eb 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
-01ec 20407d86 call ui_ipc_send_event 
-01ed 204000b1 call p_g24_store_dongle_addr 
-01ee 20200170 branch p_g24_transmit_abandon 
+01eb 704bd1ff 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 204000b1 call p_g24_store_dongle_addr 
+01ef 20200170 branch p_g24_transmit_abandon 
 
 p_g24_start_24g_mode:
-01ef 79200026 set1 mark_24g ,mark 
-01f0 6800cd0f fetch 1 ,mem_g24_conn_sm 
-01f1 79207e02 set1 state_24g_reconn ,pdata 
-01f2 6000cd0f store 1 ,mem_g24_conn_sm 
-01f3 2040020e call p_g24_ch_syncword_crc8_init 
-01f4 704b2a01 jam 1 ,mem_24g_reconn_flag 
-01f5 20200322 branch p_g24_auto_pair_timeout_init 
+01f0 79200026 set1 mark_24g ,mark 
+01f1 6800cd10 fetch 1 ,mem_g24_conn_sm 
+01f2 79207e02 set1 state_24g_reconn ,pdata 
+01f3 6000cd10 store 1 ,mem_g24_conn_sm 
+01f4 2040020f call p_g24_ch_syncword_crc8_init 
+01f5 704b2a01 jam 1 ,mem_24g_reconn_flag 
+01f6 20200323 branch p_g24_auto_pair_timeout_init 
 
 p_g24_tx_attemp_data_prep:
-01f6 70119eff jam 0xff ,mem_24g_common_temp 
-01f7 6800cbc1 fetch 1 ,mem_24g_data_type 
-01f8 6000919f store 1 ,mem_24g_common_temp + 1 
-01f9 68024bf7 fetch 4 ,mem_24g_device_addr 
-01fa 600211a0 store 4 ,mem_24g_common_temp + 2 
-01fb d8400006 arg 6 ,temp 
-01fc da20119e arg mem_24g_common_temp ,rega 
-01fd 2040021d call p_g24_put_data_in_buff 
-01fe 20200221 branch p_g24_transmit_prep 
+01f7 70119eff jam 0xff ,mem_24g_common_temp 
+01f8 6800cbc2 fetch 1 ,mem_24g_data_type 
+01f9 6000919f store 1 ,mem_24g_common_temp + 1 
+01fa 68024bf8 fetch 4 ,mem_24g_device_addr 
+01fb 600211a0 store 4 ,mem_24g_common_temp + 2 
+01fc d8400006 arg 6 ,temp 
+01fd da20119e arg mem_24g_common_temp ,rega 
+01fe 2040021e call p_g24_put_data_in_buff 
+01ff 20200222 branch p_g24_transmit_prep 
 
 p_g24_pair_txdata_retry:
 
 p_g24_pair_txdata_switch:
-01ff 6800ccfe fetch 1 ,mem_24g_auto_paring_switch 
-0200 1fe0fe01 increase 1 ,pdata 
-0201 1fe17e03 and_into 3 ,pdata 
-0202 6000ccfe store 1 ,mem_24g_auto_paring_switch 
-0203 c0000206 beq 0 ,p_g24_auto_pair_first_attemp 
-0204 c0010210 beq 2 ,p_g24_auto_pair_all_powerful 
-0205 202001b4 branch p_g24_pair_init 
+0200 6800ccff fetch 1 ,mem_24g_auto_paring_switch 
+0201 1fe0fe01 increase 1 ,pdata 
+0202 1fe17e03 and_into 3 ,pdata 
+0203 6000ccff store 1 ,mem_24g_auto_paring_switch 
+0204 c0000207 beq 0 ,p_g24_auto_pair_first_attemp 
+0205 c0010211 beq 2 ,p_g24_auto_pair_all_powerful 
+0206 202001b5 branch p_g24_pair_init 
 
 p_g24_auto_pair_first_attemp:
-0206 204002bf call p_mouse_tx_power_init 
-0207 68024bf7 fetch 4 ,mem_24g_device_addr 
-0208 60024be8 store 4 ,mem_24g_addr 
-0209 6800caa4 fetch 1 ,mem_24g_pair_current_ch_num 
-020a 6000cbcb store 1 ,mem_24g_current_ch_number 
-020b 2040020e call p_g24_ch_syncword_crc8_init 
-020c 6008caa4 storet 1 ,mem_24g_pair_current_ch_num 
-020d 20600000 rtn 
+0207 204002c0 call p_mouse_tx_power_init 
+0208 68024bf8 fetch 4 ,mem_24g_device_addr 
+0209 60024be9 store 4 ,mem_24g_addr 
+020a 6800caa4 fetch 1 ,mem_24g_pair_current_ch_num 
+020b 6000cbcc store 1 ,mem_24g_current_ch_number 
+020c 2040020f call p_g24_ch_syncword_crc8_init 
+020d 6008caa4 storet 1 ,mem_24g_pair_current_ch_num 
+020e 20600000 rtn 
 
 p_g24_ch_syncword_crc8_init:
-020e 204001b9 call p_g24_syncword_crc8 
-020f 20200112 branch p_g24_ch 
+020f 204001ba call p_g24_syncword_crc8 
+0210 20200112 branch p_g24_ch 
 
 p_g24_auto_pair_all_powerful:
-0210 7041de20 jam tx_power_pair ,mem_tx_power 
-0211 68024d05 fetch 4 ,mem_24g_allpowerful_addr 
-0212 60024be8 store 4 ,mem_24g_addr 
-0213 6800caa5 fetch 1 ,mem_24g_powerful_current_ch_num 
-0214 6000cbcb store 1 ,mem_24g_current_ch_number 
-0215 2040020e call p_g24_ch_syncword_crc8_init 
-0216 6008caa5 storet 1 ,mem_24g_powerful_current_ch_num 
-0217 20600000 rtn 
+0211 7041de20 jam tx_power_pair ,mem_tx_power 
+0212 68024d06 fetch 4 ,mem_24g_allpowerful_addr 
+0213 60024be9 store 4 ,mem_24g_addr 
+0214 6800caa5 fetch 1 ,mem_24g_powerful_current_ch_num 
+0215 6000cbcc store 1 ,mem_24g_current_ch_number 
+0216 2040020f call p_g24_ch_syncword_crc8_init 
+0217 6008caa5 storet 1 ,mem_24g_powerful_current_ch_num 
+0218 20600000 rtn 
 
 p_g24_check_51cmd_stop_24g:
-0218 793f8026 set0 mark_24g ,mark 
-0219 704d0f00 jam state_24g_stop ,mem_g24_conn_sm 
-021a 204053ce call le_disable 
+0219 793f8026 set0 mark_24g ,mark 
+021a 704d1000 jam state_24g_stop ,mem_g24_conn_sm 
+021b 204053ce call le_disable 
 
 p_mouse_disable_g24_pairing_flag:
-021b d8e00003 arg mosue_24g_pairing_flag ,queue 
-021c 202043d2 branch mouse_disable_function_flag 
+021c d8e00003 arg mosue_24g_pairing_flag ,queue 
+021d 202043d2 branch mouse_disable_function_flag 
 
 p_g24_put_data_in_buff:
-021d 6008cbc0 storet 1 ,mem_24g_datalen 
-021e 18427200 copy temp ,loopcnt 
-021f d8a04b5c arg mem_24g_txbuf ,contw 
-0220 20202d51 branch g24_put_data_in_buff2 
+021e 6008cbc1 storet 1 ,mem_24g_datalen 
+021f 18427200 copy temp ,loopcnt 
+0220 d8a04b5d arg mem_24g_txbuf ,contw 
+0221 20202d51 branch g24_put_data_in_buff2 
 
 p_g24_transmit_prep:
-0221 6800cbc0 fetch 1 ,mem_24g_datalen 
-0222 1fe0fe02 increase 2 ,pdata 
-0223 6000cbc2 store 1 ,mem_24g_txlen 
-0224 6800cbc1 fetch 1 ,mem_24g_data_type 
-0225 6000cb7c store 1 ,mem_24g_txpayload 
-0226 6800cbc0 fetch 1 ,mem_24g_datalen 
-0227 1fe9fe00 lshift3 pdata ,pdata 
-0228 6808cbbf fetcht 1 ,mem_24g_pid 
-0229 18410403 and temp ,0x03 ,temp 
-022a 18438400 lshift temp ,temp 
-022b 9841fe00 ior temp ,pdata 
-022c 6808cbfc fetcht 1 ,mem_24g_no_ack 
-022d 9840fe00 iadd temp ,pdata 
-022e e0a08000 istore 1 ,contw 
-022f 6800cbc0 fetch 1 ,mem_24g_datalen 
-0230 98007200 iforce loopcnt 
-0231 d8c04b5c arg mem_24g_txbuf ,contr 
-0232 20207f01 branch memcpy 
+0222 6800cbc1 fetch 1 ,mem_24g_datalen 
+0223 1fe0fe02 increase 2 ,pdata 
+0224 6000cbc3 store 1 ,mem_24g_txlen 
+0225 6800cbc2 fetch 1 ,mem_24g_data_type 
+0226 6000cb7d store 1 ,mem_24g_txpayload 
+0227 6800cbc1 fetch 1 ,mem_24g_datalen 
+0228 1fe9fe00 lshift3 pdata ,pdata 
+0229 6808cbc0 fetcht 1 ,mem_24g_pid 
+022a 18410403 and temp ,0x03 ,temp 
+022b 18438400 lshift temp ,temp 
+022c 9841fe00 ior temp ,pdata 
+022d 6808cbfd fetcht 1 ,mem_24g_no_ack 
+022e 9840fe00 iadd temp ,pdata 
+022f e0a08000 istore 1 ,contw 
+0230 6800cbc1 fetch 1 ,mem_24g_datalen 
+0231 98007200 iforce loopcnt 
+0232 d8c04b5d arg mem_24g_txbuf ,contr 
+0233 20207f01 branch memcpy 
 
 p_g24_prep:
-0233 7844fc00 disable enable_crc 
-0234 7843fc00 disable enable_white 
-0235 58555555 setarg 0x555555 
-0236 98001e00 iforce crc24_init 
-0237 6800cbca fetch 1 ,mem_24g_ch 
-0238 202053da branch le_prep2 
+0234 7844fc00 disable enable_crc 
+0235 7843fc00 disable enable_white 
+0236 58555555 setarg 0x555555 
+0237 98001e00 iforce crc24_init 
+0238 6800cbcb fetch 1 ,mem_24g_ch 
+0239 202053da branch le_prep2 
 
 p_g24_receive_rxon:
-0239 20400233 call p_g24_prep 
-023a 7857fc00 disable user3 
-023b 7826fc00 enable decode_fec0 
-023c 7830fc00 enable is_rx 
-023d 78507c00 disable is_tx 
-023e 78287c00 enable swfine 
-023f 68014bc3 fetch 2 ,mem_24g_rx_window 
-0240 98003600 iforce stop_watch 
-0241 37c18400 correlate null ,timeout 
-0242 242c026f nbranch p_g24_sync_timeout ,sync 
-0243 7846fc00 disable decode_fec0 
-0244 7825fc00 enable decode_fec1 
-0245 7823fc00 enable enable_white 
-0246 7824fc00 enable enable_crc 
-0247 2040026c call p_g24_receive_byte 
-0248 6000cc74 store 1 ,mem_24g_get_syncword_crc8 
-0249 6808cc73 fetcht 1 ,mem_24g_syncword_crc8 
-024a 98467c00 isub temp ,null 
-024b 2422826f nbranch p_g24_end_of_packet ,zero 
-024c 2040026c call p_g24_receive_byte 
-024d 6000cb3a store 1 ,mem_24g_rxbuf 
-024e 6800cb3a fetch 1 ,mem_24g_rxbuf 
-024f 6808cbc1 fetcht 1 ,mem_24g_data_type 
-0250 a8400e00 icompare bits_data ,temp 
-0251 2420826f nbranch p_g24_end_of_packet ,true 
+023a 20400234 call p_g24_prep 
+023b 7857fc00 disable user3 
+023c 7826fc00 enable decode_fec0 
+023d 7830fc00 enable is_rx 
+023e 78507c00 disable is_tx 
+023f 78287c00 enable swfine 
+0240 68014bc4 fetch 2 ,mem_24g_rx_window 
+0241 98003600 iforce stop_watch 
+0242 37c18400 correlate null ,timeout 
+0243 242c0270 nbranch p_g24_sync_timeout ,sync 
+0244 7846fc00 disable decode_fec0 
+0245 7825fc00 enable decode_fec1 
+0246 7823fc00 enable enable_white 
+0247 7824fc00 enable enable_crc 
+0248 2040026d call p_g24_receive_byte 
+0249 6000cc75 store 1 ,mem_24g_get_syncword_crc8 
+024a 6808cc74 fetcht 1 ,mem_24g_syncword_crc8 
+024b 98467c00 isub temp ,null 
+024c 24228270 nbranch p_g24_end_of_packet ,zero 
+024d 2040026d call p_g24_receive_byte 
+024e 6000cb3b store 1 ,mem_24g_rxbuf 
+024f 6800cb3b fetch 1 ,mem_24g_rxbuf 
+0250 6808cbc2 fetcht 1 ,mem_24g_data_type 
+0251 a8400e00 icompare bits_data ,temp 
+0252 24208270 nbranch p_g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-0252 2040026c call p_g24_receive_byte 
-0253 e0a08000 istore 1 ,contw 
-0254 1fe97e00 rshift3 pdata ,pdata 
-0255 1fe1721f and pdata ,0x1f ,loopcnt 
-0256 2022825a branch p_g24rx_nopayload ,zero 
+0253 2040026d call p_g24_receive_byte 
+0254 e0a08000 istore 1 ,contw 
+0255 1fe97e00 rshift3 pdata ,pdata 
+0256 1fe1721f and pdata ,0x1f ,loopcnt 
+0257 2022825b branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-0257 2040026c call p_g24_receive_byte 
-0258 e0a08000 istore 1 ,contw 
-0259 c2000257 loop p_g24rx_loop 
+0258 2040026d call p_g24_receive_byte 
+0259 e0a08000 istore 1 ,contw 
+025a c2000258 loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-025a 18a22200 copy contw ,rega 
-025b 2040026c call p_g24_receive_byte 
-025c 6000ccfb store 1 ,mem_rssi_hex_received 
-025d 1a220a00 copy rega ,contw 
-025e 09800018 parse demod ,bucket ,24 
-025f 78287c00 enable swfine 
-0260 db600664 arg param_sifs ,stop_watch 
-0261 1fef7e00 rshift32 pdata ,pdata 
-0262 1ff17e00 rshift16 pdata ,pdata 
-0263 e0a18000 istore 3 ,contw 
-0264 7845fc00 disable decode_fec1 
-0265 2023026f branch p_g24_end_of_packet ,crc_failed 
-0266 7837fc00 enable user3 
-0267 68008017 fetch 1 ,mem_last_freq 
-0268 1fe0a200 add pdata ,0 ,rega 
-0269 20402981 call rf_write_freq 
-026a 7846fc00 disable decode_fec0 
-026b 20202918 branch set_sync_on 
+025b 18a22200 copy contw ,rega 
+025c 2040026d call p_g24_receive_byte 
+025d 6000ccfc store 1 ,mem_rssi_hex_received 
+025e 1a220a00 copy rega ,contw 
+025f 09800018 parse demod ,bucket ,24 
+0260 78287c00 enable swfine 
+0261 db600664 arg param_sifs ,stop_watch 
+0262 1fef7e00 rshift32 pdata ,pdata 
+0263 1ff17e00 rshift16 pdata ,pdata 
+0264 e0a18000 istore 3 ,contw 
+0265 7845fc00 disable decode_fec1 
+0266 20230270 branch p_g24_end_of_packet ,crc_failed 
+0267 7837fc00 enable user3 
+0268 68008017 fetch 1 ,mem_last_freq 
+0269 1fe0a200 add pdata ,0 ,rega 
+026a 20402981 call rf_write_freq 
+026b 7846fc00 disable decode_fec0 
+026c 20202918 branch set_sync_on 
 
 p_g24_receive_byte:
-026c 09800008 parse demod ,bucket ,8 
-026d 19897e00 rshift3 pwindow ,pdata 
-026e 20600000 rtn 
+026d 09800008 parse demod ,bucket ,8 
+026e 19897e00 rshift3 pwindow ,pdata 
+026f 20600000 rtn 
 
 p_g24_sync_timeout:
 
 p_g24_end_of_packet:
-026f 784dfc00 disable encode_fec1 
-0270 7845fc00 disable decode_fec1 
-0271 2020264d branch end_of_packet 
+0270 784dfc00 disable encode_fec1 
+0271 7845fc00 disable decode_fec1 
+0272 2020264d branch end_of_packet 
 
 p_g24_transmit:
-0272 204053c4 call le_enable 
-0273 68024be8 fetch 4 ,mem_24g_addr 
-0274 98001200 iforce access 
-0275 20400233 call p_g24_prep 
-0276 20402918 call set_sync_on 
-0277 6808cbca fetcht 1 ,mem_24g_ch 
-0278 20402933 call set_freq_tx 
-0279 79202a00 set1 txgfsk ,radio_ctrl 
-027a 782efc00 enable encode_fec0 
-027b 78307c00 enable is_tx 
-027c 7850fc00 disable is_rx 
-027d 19317e00 rshift16 access ,pdata 
-027e 1fecfe00 rshift8 pdata ,pdata 
-027f 1ff1fe00 rshift4 pdata ,pdata 
-0280 08008628 inject mod ,40 
-0281 784efc00 disable encode_fec0 
-0282 782dfc00 enable encode_fec1 
-0283 7823fc00 enable enable_white 
-0284 7824fc00 enable enable_crc 
-0285 6800cc73 fetch 1 ,mem_24g_syncword_crc8 
-0286 08008608 inject mod ,8 
-0287 6800cbc2 fetch 1 ,mem_24g_txlen 
-0288 98007200 iforce loopcnt 
-0289 d8c04b7c arg mem_24g_txpayload ,contr 
+0273 204053c4 call le_enable 
+0274 68024be9 fetch 4 ,mem_24g_addr 
+0275 98001200 iforce access 
+0276 20400234 call p_g24_prep 
+0277 20402918 call set_sync_on 
+0278 6808cbcb fetcht 1 ,mem_24g_ch 
+0279 20402933 call set_freq_tx 
+027a 79202a00 set1 txgfsk ,radio_ctrl 
+027b 782efc00 enable encode_fec0 
+027c 78307c00 enable is_tx 
+027d 7850fc00 disable is_rx 
+027e 19317e00 rshift16 access ,pdata 
+027f 1fecfe00 rshift8 pdata ,pdata 
+0280 1ff1fe00 rshift4 pdata ,pdata 
+0281 08008628 inject mod ,40 
+0282 784efc00 disable encode_fec0 
+0283 782dfc00 enable encode_fec1 
+0284 7823fc00 enable enable_white 
+0285 7824fc00 enable enable_crc 
+0286 6800cc74 fetch 1 ,mem_24g_syncword_crc8 
+0287 08008608 inject mod ,8 
+0288 6800cbc3 fetch 1 ,mem_24g_txlen 
+0289 98007200 iforce loopcnt 
+028a d8c04b7d arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
-028a e8c08000 ifetch 1 ,contr 
-028b 08008608 inject mod ,8 
-028c c200028a loop p_g24tr_loop 
-028d 78247c00 enable enable_parity 
-028e 08008618 inject mod ,24 
-028f 78447c00 disable enable_parity 
-0290 37d38200 until null ,tx_clear 
-0291 20000064 nop 100 
-0292 784efc00 disable encode_fec0 
-0293 784dfc00 disable encode_fec1 
-0294 20600000 rtn 
+028b e8c08000 ifetch 1 ,contr 
+028c 08008608 inject mod ,8 
+028d c200028b loop p_g24tr_loop 
+028e 78247c00 enable enable_parity 
+028f 08008618 inject mod ,24 
+0290 78447c00 disable enable_parity 
+0291 37d38200 until null ,tx_clear 
+0292 20000064 nop 100 
+0293 784efc00 disable encode_fec0 
+0294 784dfc00 disable encode_fec1 
+0295 20600000 rtn 
 
 p_g24_timer_check:
-0295 20407fe9 call disable_user 
-0296 680a4be1 fetcht 4 ,mem_24g_tx_btclk 
-0297 1c427e00 copy clkn_bt ,pdata 
-0298 98467c00 isub temp ,null 
-0299 24412d18 ncall g24_timer_timeout ,positive 
-029a 1fe22400 copy pdata ,regb 
-029b 68024be1 fetch 4 ,mem_24g_tx_btclk 
-029c 6808cbe5 fetcht 1 ,mem_24g_interval 
-029d 98408400 iadd temp ,temp 
-029e 1a427e00 copy regb ,pdata 
-029f 98467c00 isub temp ,null 
-02a0 24610000 nrtn positive 
-02a1 793ffe1c set0 28 ,pdata 
-02a2 60024be1 store 4 ,mem_24g_tx_btclk 
-02a3 20207fe7 branch enable_user 
+0296 20407fe9 call disable_user 
+0297 680a4be2 fetcht 4 ,mem_24g_tx_btclk 
+0298 1c427e00 copy clkn_bt ,pdata 
+0299 98467c00 isub temp ,null 
+029a 24412d18 ncall g24_timer_timeout ,positive 
+029b 1fe22400 copy pdata ,regb 
+029c 68024be2 fetch 4 ,mem_24g_tx_btclk 
+029d 6808cbe6 fetcht 1 ,mem_24g_interval 
+029e 98408400 iadd temp ,temp 
+029f 1a427e00 copy regb ,pdata 
+02a0 98467c00 isub temp ,null 
+02a1 24610000 nrtn positive 
+02a2 793ffe1c set0 28 ,pdata 
+02a3 60024be2 store 4 ,mem_24g_tx_btclk 
+02a4 20207fe7 branch enable_user 
 
 p_mouse_before_lpm:
-02a4 c6130000 rtnmark1 mark_24g 
-02a5 20400337 call p_mouse_le_txbuff_save 
-02a6 204000eb call p_mouse_setgpio_lpm 
-02a7 6800c040 fetch 1 ,mem_context 
-02a8 c30002ab bbit0 state_inconn ,p_clear_wake 
-02a9 680080a0 fetch 1 ,mem_lpm_current_mult 
-02aa 247a0000 nrtn blank 
+02a5 c6130000 rtnmark1 mark_24g 
+02a6 20400338 call p_mouse_le_txbuff_save 
+02a7 204000eb call p_mouse_setgpio_lpm 
+02a8 6800c040 fetch 1 ,mem_context 
+02a9 c30002ac bbit0 state_inconn ,p_clear_wake 
+02aa 680080a0 fetch 1 ,mem_lpm_current_mult 
+02ab 247a0000 nrtn blank 
 
 p_clear_wake:
-02ab 58000000 setarg 0 
-02ac 600400a1 store 8 ,mem_gpio_wakeup_low 
-02ad 20600000 rtn 
+02ac 58000000 setarg 0 
+02ad 600400a1 store 8 ,mem_gpio_wakeup_low 
+02ae 20600000 rtn 
 
 p_device_init:
-02ae 20403416 call app_lpm_mult_enable 
-02af 203582b3 branch p_device_init_common ,wake 
-02b0 20400370 call p_mouse_data_init 
-02b1 6800c1de fetch 1 ,mem_tx_power 
-02b2 6000cc77 store 1 ,mem_tx_power_temp 
+02af 20403416 call app_lpm_mult_enable 
+02b0 203582b4 branch p_device_init_common ,wake 
+02b1 20400371 call p_mouse_data_init 
+02b2 6800c1de fetch 1 ,mem_tx_power 
+02b3 6000cc78 store 1 ,mem_tx_power_temp 
 
 p_device_init_common:
-02b3 204002b5 call p_mouse_init 
-02b4 202074b9 branch enable_authrom 
+02b4 204002b6 call p_mouse_init 
+02b5 202074b9 branch enable_authrom 
 
 p_mouse_init:
-02b5 245582e2 ncall p_mouse_setting_config ,wake 
-02b6 20758000 rtn wake 
-02b7 20400324 call p_mouse_cb_fuction 
-02b8 2040051a call p_mouse_adc_read_once 
-02b9 20400318 call p_mouse_wakeup_from_power 
+02b6 245582e3 ncall p_mouse_setting_config ,wake 
+02b7 20758000 rtn wake 
+02b8 20400325 call p_mouse_cb_fuction 
+02b9 2040051e call p_mouse_adc_read_once 
+02ba 20400319 call p_mouse_wakeup_from_power 
 
 p_mouse_check_reconn_target:
-02ba 204002bf call p_mouse_tx_power_init 
-02bb 704b2b00 jam 0 ,mem_flip_connect_success 
-02bc 6800c720 fetch 1 ,mem_device_flag 
-02bd c00101ef beq mode_24g_device ,p_g24_start_24g_mode 
-02be 202002d5 branch p_mouse4_0_check_reconn_target 
+02bb 204002c0 call p_mouse_tx_power_init 
+02bc 704b2b00 jam 0 ,mem_flip_connect_success 
+02bd 6800c720 fetch 1 ,mem_device_flag 
+02be c00101f0 beq mode_24g_device ,p_g24_start_24g_mode 
+02bf 202002d6 branch p_mouse4_0_check_reconn_target 
 
 p_mouse_tx_power_init:
-02bf 6800cc77 fetch 1 ,mem_tx_power_temp 
-02c0 6000c1de store 1 ,mem_tx_power 
-02c1 20600000 rtn 
+02c0 6800cc78 fetch 1 ,mem_tx_power_temp 
+02c1 6000c1de store 1 ,mem_tx_power 
+02c2 20600000 rtn 
 
 p_g24_250k_enable:
-02c2 7041e001 jam 1 ,mem_250k_freq_enable 
-02c3 70890d8f jam 0x8f ,0x890d 
-02c4 70891205 jam 0x05 ,0x8912 
-02c5 7089071f jam 0x1f ,0x8907 
-02c6 70890ab8 jam 0xb8 ,0x890a 
-02c7 20600000 rtn 
+02c3 7041e001 jam 1 ,mem_250k_freq_enable 
+02c4 70890d8f jam 0x8f ,0x890d 
+02c5 70891205 jam 0x05 ,0x8912 
+02c6 7089071f jam 0x1f ,0x8907 
+02c7 70890ab8 jam 0xb8 ,0x890a 
+02c8 20600000 rtn 
 
 p_g24_250k_disable:
-02c8 7041e000 jam 0 ,mem_250k_freq_enable 
-02c9 70890d87 jam 0x87 ,0x890d 
-02ca 70891247 jam 0x47 ,0x8912 
-02cb 708907ff jam 0xff ,0x8907 
-02cc 70890af8 jam 0xf8 ,0x890a 
-02cd 20600000 rtn 
+02c9 7041e000 jam 0 ,mem_250k_freq_enable 
+02ca 70890d87 jam 0x87 ,0x890d 
+02cb 70891247 jam 0x47 ,0x8912 
+02cc 708907ff jam 0xff ,0x8907 
+02cd 70890af8 jam 0xf8 ,0x890a 
+02ce 20600000 rtn 
 
 p_hibernate_flag_clear:
-02ce 704b2e01 jam 1 ,mem_not_show_device_led 
+02cf 704b2e01 jam 1 ,mem_not_show_device_led 
 
 p_hibernate_flag_clear_start:
-02cf 704b2dff jam 0xff ,mem_hibernate_flag 
+02d0 704b2dff jam 0xff ,mem_hibernate_flag 
 
 p_store_hibernate_flag_eeprom:
-02d0 da204b2d arg mem_hibernate_flag ,rega 
-02d1 da400066 arg mouse_hibernate_flag_eeprom_offset ,regb 
-02d2 d8400001 arg 1 ,temp 
-02d3 204065d1 call iicd_write_protect_eep_data 
-02d4 20200302 branch p_ble_flag_init 
+02d1 da204b2d arg mem_hibernate_flag ,rega 
+02d2 da400066 arg mouse_hibernate_flag_eeprom_offset ,regb 
+02d3 d8400001 arg 1 ,temp 
+02d4 204065d1 call iicd_write_protect_eep_data 
+02d5 20200303 branch p_ble_flag_init 
 
 p_mouse4_0_check_reconn_target:
-02d5 704a9101 jam 1 ,mem_le_send_security_request_flag 
-02d6 70479f01 jam 1 ,mem_mouse_le_reconnect_flag 
-02d7 680146a8 fetch 2 ,mem_mouse_direct_timeout 
+02d6 704a9101 jam 1 ,mem_le_send_security_request_flag 
+02d7 70479f01 jam 1 ,mem_mouse_le_reconnect_flag 
+02d8 680146a8 fetch 2 ,mem_mouse_direct_timeout 
 
 p_mouse4_0_check_reconn_target_next:
-02d8 600146ae store 2 ,mem_mouse_direct_timer 
-02d9 204005fc call p_mouse_store_eeprom_enable 
-02da 20403418 call app_lpm_mult_disable 
-02db 7041de04 jam tx_power_f5db ,mem_tx_power 
-02dc d8c04390 arg mem_le_scan_data ,contr 
-02dd 204005f8 call p_le_adv_data_update 
-02de 20207df4 branch check_51cmd_adv 
+02d9 600146ae store 2 ,mem_mouse_direct_timer 
+02da 20400600 call p_mouse_store_eeprom_enable 
+02db 20403418 call app_lpm_mult_disable 
+02dc 7041de04 jam tx_power_f5db ,mem_tx_power 
+02dd d8c04390 arg mem_le_scan_data ,contr 
+02de 204005fc call p_le_adv_data_update 
+02df 20207df4 branch check_51cmd_adv 
 
 p_g24_start_pairing_sm1:
-02df 204001b4 call p_g24_pair_init 
+02e0 204001b5 call p_g24_pair_init 
 
 p_g24_set_pairing_sm_1:
-02e0 704bd001 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
-02e1 20600000 rtn 
+02e1 704bd101 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
+02e2 20600000 rtn 
 
 p_mouse_setting_config:
-02e2 680240a0 fetch 4 ,mem_lap 
-02e3 60024bf7 store 4 ,mem_24g_device_addr 
-02e4 20403e6e call mouse_gpio_init 
-02e5 204004a9 call p_laser_led_off 
-02e6 20400460 call p_blue_led_off 
-02e7 20403e1e call mouse_param_init 
-02e8 580047c6 setarg mem_mouse_le_uuid_sup 
-02e9 600144bc store 2 ,mem_ui_le_uuid_table 
-02ea 58000000 setarg 0 
-02eb 60014154 store 2 ,mem_lpm_interval 
-02ec 20403e54 call mouse_adc_init 
-02ed 20405810 call le_set_config_fixed_ltk 
-02ee 20405839 call le_set_justwork 
-02ef 2040582c call le_set_fixed_ltk 
-02f0 20405818 call le_set_config_read_authentication 
+02e3 680240a0 fetch 4 ,mem_lap 
+02e4 60024bf8 store 4 ,mem_24g_device_addr 
+02e5 20403e6e call mouse_gpio_init 
+02e6 204004ad call p_laser_led_off 
+02e7 20400464 call p_blue_led_off 
+02e8 20403e1e call mouse_param_init 
+02e9 580047c6 setarg mem_mouse_le_uuid_sup 
+02ea 600144bc store 2 ,mem_ui_le_uuid_table 
+02eb 58000000 setarg 0 
+02ec 60014154 store 2 ,mem_lpm_interval 
+02ed 20403e54 call mouse_adc_init 
+02ee 20405810 call le_set_config_fixed_ltk 
+02ef 20405839 call le_set_justwork 
+02f0 2040582c call le_set_fixed_ltk 
+02f1 20405818 call le_set_config_read_authentication 
 
 p_mouse_init_iic:
-02f1 2040659c call iic_init_390k 
-02f2 204065c2 call clear_eeprom_size_2k 
-02f3 20400307 call p_mouse_eeprom_load_recon_info 
-02f4 6800c720 fetch 1 ,mem_device_flag 
-02f5 1fe67cff sub pdata ,0xff ,null 
-02f6 20428312 call p_mouse_init_device_flag ,zero 
-02f7 204003cc call p_mouse_set_24g_addr_eeprom 
-02f8 204065df call iicd_read_eep_data 
-02f9 2040030b call p_get_key_staus_eeprom 
-02fa 6800ca93 fetch 1 ,mem_power_on_flag 
-02fb c30102cf bbit0 2 ,p_hibernate_flag_clear_start 
+02f2 2040659c call iic_init_390k 
+02f3 204065c2 call clear_eeprom_size_2k 
+02f4 20400308 call p_mouse_eeprom_load_recon_info 
+02f5 6800c720 fetch 1 ,mem_device_flag 
+02f6 1fe67cff sub pdata ,0xff ,null 
+02f7 20428313 call p_mouse_init_device_flag ,zero 
+02f8 204003cd call p_mouse_set_24g_addr_eeprom 
+02f9 204065df call iicd_read_eep_data 
+02fa 2040030c call p_get_key_staus_eeprom 
+02fb 6800ca93 fetch 1 ,mem_power_on_flag 
+02fc c30102d0 bbit0 2 ,p_hibernate_flag_clear_start 
 
 p_get_hibernate_flag_eeprom:
-02fc da204b2d arg mem_hibernate_flag ,rega 
-02fd da400066 arg mouse_hibernate_flag_eeprom_offset ,regb 
-02fe d8400001 arg 1 ,temp 
-02ff 204065df call iicd_read_eep_data 
-0300 6800cb2d fetch 1 ,mem_hibernate_flag 
-0301 c00082ce beq 1 ,p_hibernate_flag_clear 
+02fd da204b2d arg mem_hibernate_flag ,rega 
+02fe da400066 arg mouse_hibernate_flag_eeprom_offset ,regb 
+02ff d8400001 arg 1 ,temp 
+0300 204065df call iicd_read_eep_data 
+0301 6800cb2d fetch 1 ,mem_hibernate_flag 
+0302 c00082cf beq 1 ,p_hibernate_flag_clear 
 
 p_ble_flag_init:
-0302 6800c720 fetch 1 ,mem_device_flag 
-0303 c1010000 rtneq mode_24g_device 
-0304 704a9b01 jam 1 ,mem_le_switch_adv_flag 
-0305 70421034 jam 0x34 ,mem_xrecord_mode 
-0306 20600000 rtn 
+0303 6800c720 fetch 1 ,mem_device_flag 
+0304 c1010000 rtneq mode_24g_device 
+0305 704a9b01 jam 1 ,mem_le_switch_adv_flag 
+0306 70421034 jam 0x34 ,mem_xrecord_mode 
+0307 20600000 rtn 
 
 p_mouse_eeprom_load_recon_info:
-0307 d8400058 arg 88 ,temp 
-0308 da204720 arg mem_device_flag ,rega 
-0309 da400000 arg mouse_info_eeprom_offect ,regb 
-030a 202065df branch iicd_read_eep_data 
+0308 d8400058 arg 88 ,temp 
+0309 da204720 arg mem_device_flag ,rega 
+030a da400000 arg mouse_info_eeprom_offect ,regb 
+030b 202065df branch iicd_read_eep_data 
 
 p_get_key_staus_eeprom:
-030b da204b18 arg mem_2key_model_select_flag ,rega 
-030c da40006a arg mouse_key_staus_eeprom_offset ,regb 
-030d d8400001 arg 1 ,temp 
-030e 204065df call iicd_read_eep_data 
-030f 6800cb18 fetch 1 ,mem_2key_model_select_flag 
-0310 c07f85c7 beq 0xff ,p_2key_staus_set0 
-0311 20600000 rtn 
+030c da204b18 arg mem_2key_model_select_flag ,rega 
+030d da40006a arg mouse_key_staus_eeprom_offset ,regb 
+030e d8400001 arg 1 ,temp 
+030f 204065df call iicd_read_eep_data 
+0310 6800cb18 fetch 1 ,mem_2key_model_select_flag 
+0311 c07f85cb beq 0xff ,p_2key_staus_set0 
+0312 20600000 rtn 
 
 p_mouse_init_device_flag:
-0312 70472002 jam 0x02 ,mem_device_flag 
-0313 70472134 jam 0x34 ,mem_device1_type 
-0314 20600000 rtn 
+0313 70472002 jam 0x02 ,mem_device_flag 
+0314 70472134 jam 0x34 ,mem_device1_type 
+0315 20600000 rtn 
 
 p_mouse_24g_transmit_by_interrupt_exit_count_max:
-0315 58000177 setarg 375 
-0316 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-0317 20600000 rtn 
+0316 58000177 setarg 375 
+0317 60014d04 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0318 20600000 rtn 
 
 p_mouse_wakeup_from_power:
-0318 58000019 setarg 25 
-0319 60014d03 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-031a 24558315 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0319 58000019 setarg 25 
+031a 60014d04 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+031b 24558316 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
 
 p_mouse_wakeup_no_from_power:
-031b 70471e00 jam 0 ,mem_reconn_times 
-031c 20600000 rtn 
+031c 70471e00 jam 0 ,mem_reconn_times 
+031d 20600000 rtn 
 
 p_g24_auto_pair_start:
-031d 79200026 set1 mark_24g ,mark 
-031e 6800cd0f fetch 1 ,mem_g24_conn_sm 
-031f 79207e01 set1 state_24g_pair ,pdata 
-0320 6000cd0f store 1 ,mem_g24_conn_sm 
-0321 704b2a00 jam 0 ,mem_24g_reconn_flag 
+031e 79200026 set1 mark_24g ,mark 
+031f 6800cd10 fetch 1 ,mem_g24_conn_sm 
+0320 79207e01 set1 state_24g_pair ,pdata 
+0321 6000cd10 store 1 ,mem_g24_conn_sm 
+0322 704b2a00 jam 0 ,mem_24g_reconn_flag 
 
 p_g24_auto_pair_timeout_init:
-0322 704aa100 jam 0 ,mem_g24_stop_g24_mode 
-0323 20600000 rtn 
+0323 704aa100 jam 0 ,mem_g24_stop_g24_mode 
+0324 20600000 rtn 
 
 p_mouse_cb_fuction:
-0324 58000333 setarg p_mouse_g24_package_data 
-0325 60014cf1 store 2 ,mem_cb_24g_data 
-0326 5800034a setarg p_mouse_le 
-0327 600141ef store 2 ,mem_cb_le_process 
-0328 58000697 setarg p_le_mouse_bb_event_connect_complete 
-0329 600141f9 store 2 ,mem_cb_att_write 
-032a 580002a4 setarg p_mouse_before_lpm 
-032b 600141ed store 2 ,mem_cb_before_lpm 
-032c 58000386 setarg p_mouse_priority_bb_event 
-032d 600141f5 store 2 ,mem_cb_bb_event_process 
-032e 580003e5 setarg p_mouse_before_hibernate 
-032f 600141eb store 2 ,mem_cb_before_hibernate 
-0330 580003f9 setarg p_mouse_bb_event_timer 
-0331 600141fd store 2 ,mem_cb_event_timer 
-0332 20600000 rtn 
+0325 58000334 setarg p_mouse_g24_package_data 
+0326 60014cf2 store 2 ,mem_cb_24g_data 
+0327 5800034b setarg p_mouse_le 
+0328 600141ef store 2 ,mem_cb_le_process 
+0329 5800069b setarg p_le_mouse_bb_event_connect_complete 
+032a 600141f9 store 2 ,mem_cb_att_write 
+032b 580002a5 setarg p_mouse_before_lpm 
+032c 600141ed store 2 ,mem_cb_before_lpm 
+032d 58000387 setarg p_mouse_priority_bb_event 
+032e 600141f5 store 2 ,mem_cb_bb_event_process 
+032f 580003e5 setarg p_mouse_before_hibernate 
+0330 600141eb store 2 ,mem_cb_before_hibernate 
+0331 580003fb setarg p_mouse_bb_event_timer 
+0332 600141fd store 2 ,mem_cb_event_timer 
+0333 20600000 rtn 
 
 p_mouse_g24_package_data:
-0333 20404401 call mouse_g24_package_data 
-0334 6801469f fetch 2 ,mem_mouse_z 
-0335 207a0000 rtn blank 
-0336 202000bc branch p_g24_transmit_by_interrupt_enable 
+0334 20404401 call mouse_g24_package_data 
+0335 6801469f fetch 2 ,mem_mouse_z 
+0336 207a0000 rtn blank 
+0337 202000bc branch p_g24_transmit_by_interrupt_enable 
 
 p_mouse_le_txbuff_save:
-0337 d8c01800 arg mem_le_tx_buffer0 ,contr 
-0338 d8a049e3 arg mem_le_tx_buffer0_omemalloc ,contw 
-0339 2040033f call p_mouse_le_txbuff_copy 
-033a d8c01900 arg mem_le_tx_buffer1 ,contr 
-033b 2040033f call p_mouse_le_txbuff_copy 
-033c d8c01a00 arg mem_le_tx_buffer2 ,contr 
-033d 2040033f call p_mouse_le_txbuff_copy 
-033e d8c01b00 arg mem_le_tx_buffer3 ,contr 
+0338 d8c01800 arg mem_le_tx_buffer0 ,contr 
+0339 d8a049e3 arg mem_le_tx_buffer0_omemalloc ,contw 
+033a 20400340 call p_mouse_le_txbuff_copy 
+033b d8c01900 arg mem_le_tx_buffer1 ,contr 
+033c 20400340 call p_mouse_le_txbuff_copy 
+033d d8c01a00 arg mem_le_tx_buffer2 ,contr 
+033e 20400340 call p_mouse_le_txbuff_copy 
+033f d8c01b00 arg mem_le_tx_buffer3 ,contr 
 
 p_mouse_le_txbuff_copy:
-033f df20001b arg 27 ,loopcnt 
-0340 20207f01 branch memcpy 
+0340 df20001b arg 27 ,loopcnt 
+0341 20207f01 branch memcpy 
 
 p_mouse_le_txbuff_load:
-0341 d8c049e3 arg mem_le_tx_buffer0_omemalloc ,contr 
-0342 d8a01800 arg mem_le_tx_buffer0 ,contw 
-0343 2040033f call p_mouse_le_txbuff_copy 
-0344 d8a01900 arg mem_le_tx_buffer1 ,contw 
-0345 2040033f call p_mouse_le_txbuff_copy 
-0346 d8a01a00 arg mem_le_tx_buffer2 ,contw 
-0347 2040033f call p_mouse_le_txbuff_copy 
-0348 d8a01b00 arg mem_le_tx_buffer3 ,contw 
-0349 2020033f branch p_mouse_le_txbuff_copy 
+0342 d8c049e3 arg mem_le_tx_buffer0_omemalloc ,contr 
+0343 d8a01800 arg mem_le_tx_buffer0 ,contw 
+0344 20400340 call p_mouse_le_txbuff_copy 
+0345 d8a01900 arg mem_le_tx_buffer1 ,contw 
+0346 20400340 call p_mouse_le_txbuff_copy 
+0347 d8a01a00 arg mem_le_tx_buffer2 ,contw 
+0348 20400340 call p_mouse_le_txbuff_copy 
+0349 d8a01b00 arg mem_le_tx_buffer3 ,contw 
+034a 20200340 branch p_mouse_le_txbuff_copy 
 
 p_mouse_le:
-034a 20405892 call le_fifo_check_nearly_full 
-034b 247a0000 nrtn blank 
-034c 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-034d 1fe17e03 and pdata ,0x03 ,pdata 
-034e c1818000 rtnne 0x03 
+034b 20405892 call le_fifo_check_nearly_full 
+034c 247a0000 nrtn blank 
+034d 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+034e 1fe17e03 and pdata ,0x03 ,pdata 
+034f c1818000 rtnne 0x03 
 
 p_mouse_le_next:
-034f 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-0350 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-0351 6800cafb fetch 1 ,mem_customer_bt_start_send_empty_packet 
-0352 c000836c beq 1 ,p_mouse_le_release_customer_data 
-0353 20403f97 call mouse_motion 
-0354 24740000 nrtn user 
-0355 70417200 jam 0 ,mem_lpm_mult 
-0356 704a8e1e jam 30 ,mem_mouse_le_current_mult_timer 
-0357 6800cafa fetch 1 ,mem_customer_data_trigger 
-0358 c000835d beq 1 ,p_mouse_le_send_customer_packet 
+0350 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+0351 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0352 6800cafb fetch 1 ,mem_customer_bt_start_send_empty_packet 
+0353 c000836d beq 1 ,p_mouse_le_release_customer_data 
+0354 20403f97 call mouse_motion 
+0355 24740000 nrtn user 
+0356 70417200 jam 0 ,mem_lpm_mult 
+0357 704a8e1e jam 30 ,mem_mouse_le_current_mult_timer 
+0358 6800cafa fetch 1 ,mem_customer_data_trigger 
+0359 c000835e beq 1 ,p_mouse_le_send_customer_packet 
 
 p_mouse_data_push:
-0359 da20469a arg mem_mouse_key ,rega 
-035a 20407e3d call queue_push 
-035b 20540375 call p_mouse_queue_increase ,user 
-035c 20600000 rtn 
+035a da20469a arg mem_mouse_key ,rega 
+035b 20407e3d call queue_push 
+035c 20540376 call p_mouse_queue_increase ,user 
+035d 20600000 rtn 
 
 p_mouse_le_send_customer_packet:
-035d 68014b1e fetch 2 ,mem_key_send_payload_staus 
-035e 207a0000 rtn blank 
-035f 20400072 call p_mouse_customer_enter_packet 
-0360 68044ae8 fetch 8 ,mem_customer_key_press + 1 
-0361 60040a9a store 8 ,mem_pdatatemp 
+035e 68014b1e fetch 2 ,mem_key_send_payload_staus 
+035f 207a0000 rtn blank 
+0360 20400072 call p_mouse_customer_enter_packet 
+0361 68044ae8 fetch 8 ,mem_customer_key_press + 1 
+0362 60040a9a store 8 ,mem_pdatatemp 
 
 p_mouse_fill_customer_data_le:
-0362 da200008 arg 8 ,rega 
-0363 6809446f fetcht 2 ,mem_le_notify_handle 
-0364 20405a64 call le_att_malloc_tx_notify 
-0365 68040a9a fetch 8 ,mem_pdatatemp 
-0366 e0a40000 istore 8 ,contw 
-0367 20600000 rtn 
+0363 da200008 arg 8 ,rega 
+0364 6809446f fetcht 2 ,mem_le_notify_handle 
+0365 20405a64 call le_att_malloc_tx_notify 
+0366 68040a9a fetch 8 ,mem_pdatatemp 
+0367 e0a40000 istore 8 ,contw 
+0368 20600000 rtn 
 
 p_mouse_le_send_finish:
-0368 6800cae4 fetch 1 ,mem_customer_key 
-0369 247a0000 nrtn blank 
-036a 704afb01 jam 1 ,mem_customer_bt_start_send_empty_packet 
-036b 20600000 rtn 
+0369 6800cae4 fetch 1 ,mem_customer_key 
+036a 247a0000 nrtn blank 
+036b 704afb01 jam 1 ,mem_customer_bt_start_send_empty_packet 
+036c 20600000 rtn 
 
 p_mouse_le_release_customer_data:
-036c 704afb00 jam 0 ,mem_customer_bt_start_send_empty_packet 
-036d 68044af1 fetch 8 ,mem_customer_key_release + 1 
-036e 60040a9a store 8 ,mem_pdatatemp 
-036f 20200362 branch p_mouse_fill_customer_data_le 
+036d 704afb00 jam 0 ,mem_customer_bt_start_send_empty_packet 
+036e 68044af1 fetch 8 ,mem_customer_key_release + 1 
+036f 60040a9a store 8 ,mem_pdatatemp 
+0370 20200363 branch p_mouse_fill_customer_data_le 
 
 p_mouse_data_init:
-0370 7047a007 jam 7 ,mem_mouse_data_queue 
-0371 7047a104 jam 4 ,mem_mouse_data_queue + 1 
-0372 580047a0 setarg mem_mouse_data_queue 
-0373 60014218 store 2 ,mem_queue_ptr 
-0374 20207e38 branch queue_init 
+0371 7047a007 jam 7 ,mem_mouse_data_queue 
+0372 7047a104 jam 4 ,mem_mouse_data_queue + 1 
+0373 580047a0 setarg mem_mouse_data_queue 
+0374 60014218 store 2 ,mem_queue_ptr 
+0375 20207e38 branch queue_init 
 
 p_mouse_queue_increase:
-0375 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0376 1fe0fe01 increase 1 ,pdata 
-0377 6000c7c1 store 1 ,mem_mouse_data_queue_num 
-0378 20600000 rtn 
+0376 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+0377 1fe0fe01 increase 1 ,pdata 
+0378 6000c7c1 store 1 ,mem_mouse_data_queue_num 
+0379 20600000 rtn 
 
 p_mouse_data_pull:
-0379 da20469a arg mem_mouse_key ,rega 
-037a 20407e54 call queue_pop 
-037b 2034037d branch p_mouse_fill_data_le ,user 
-037c 20600000 rtn 
+037a da20469a arg mem_mouse_key ,rega 
+037b 20407e54 call queue_pop 
+037c 2034037e branch p_mouse_fill_data_le ,user 
+037d 20600000 rtn 
 
 p_mouse_fill_data_le:
-037d 20405652 call le_clear_md 
-037e 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-037f 1fe67c01 sub pdata ,1 ,null 
-0380 24415650 ncall le_set_md ,positive 
-0381 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0382 207a0000 rtn blank 
-0383 1fe0ffff increase -1 ,pdata 
-0384 6000c7c1 store 1 ,mem_mouse_data_queue_num 
-0385 20203f90 branch mouse_fill_data_le 
+037e 20405652 call le_clear_md 
+037f 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+0380 1fe67c01 sub pdata ,1 ,null 
+0381 24415650 ncall le_set_md ,positive 
+0382 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+0383 207a0000 rtn blank 
+0384 1fe0ffff increase -1 ,pdata 
+0385 6000c7c1 store 1 ,mem_mouse_data_queue_num 
+0386 20203f90 branch mouse_fill_data_le 
 
 p_mouse_priority_bb_event:
-0386 1a627e00 copy regc ,pdata 
-0387 c00a0390 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-0388 c00a83a3 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-0389 c01483b0 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
-038a c01903b2 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-038b c02003ba beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-038c c01c83c8 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-038d c01d03d0 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-038e c01e03db beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-038f 2020417d branch mouse_priority_bb_event + 1 
+0387 1a627e00 copy regc ,pdata 
+0388 c00a0391 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0389 c00a83a4 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+038a c01483b1 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+038b c01903b3 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+038c c02003bb beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+038d c01c83c9 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+038e c01d03d1 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+038f c01e03da beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0390 2020417d branch mouse_priority_bb_event + 1 
 
 p_mouse_le_bb_event_connected:
-0390 58000000 setarg 0 
-0391 6001ca9b store 3 ,mem_le_switch_adv_flag 
-0392 704aa900 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
-0393 704a9f00 jam 0 ,mem_mouse_le_adv_start 
-0394 704a9201 jam 1 ,mem_mouse_le_bb_connected_flag 
-0395 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-0396 243a0398 nbranch p_mouse_le_bb_event_connected_next ,blank 
-0397 704a9014 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
+0391 58000000 setarg 0 
+0392 6001ca9b store 3 ,mem_le_switch_adv_flag 
+0393 704aa900 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
+0394 704a9f00 jam 0 ,mem_mouse_le_adv_start 
+0395 704a9201 jam 1 ,mem_mouse_le_bb_connected_flag 
+0396 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+0397 243a0399 nbranch p_mouse_le_bb_event_connected_next ,blank 
+0398 704a9014 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
 
 p_mouse_le_bb_event_connected_next:
-0398 704aaa00 jam 0 ,mem_mouse_le_not_tx_disconn 
-0399 704a9e00 jam 0 ,mem_mouse_start_discovery_enable 
-039a 20400218 call p_g24_check_51cmd_stop_24g 
-039b 2040039e call p_mouse_store_latest_mode_le 
-039c 20400370 call p_mouse_data_init 
-039d 202041c3 branch mouse_le_bb_event_connected 
+0399 704aaa00 jam 0 ,mem_mouse_le_not_tx_disconn 
+039a 704a9e00 jam 0 ,mem_mouse_start_discovery_enable 
+039b 20400219 call p_g24_check_51cmd_stop_24g 
+039c 2040039f call p_mouse_store_latest_mode_le 
+039d 20400371 call p_mouse_data_init 
+039e 202041c3 branch mouse_le_bb_event_connected 
 
 p_mouse_store_latest_mode_le:
-039e 704aa801 jam latest_mode_bt ,mem_mouse_latest_mode 
+039f 704aa801 jam latest_mode_bt ,mem_mouse_latest_mode 
 
 p_mouse_store_latest_mode_eeprom:
-039f da204aa8 arg mem_mouse_latest_mode ,rega 
-03a0 da400065 arg mouse_latest_mode_offset ,regb 
-03a1 d8400001 arg 1 ,temp 
-03a2 202065d1 branch iicd_write_protect_eep_data 
+03a0 da204aa8 arg mem_mouse_latest_mode ,rega 
+03a1 da400065 arg mouse_latest_mode_offset ,regb 
+03a2 d8400001 arg 1 ,temp 
+03a3 202065d1 branch iicd_write_protect_eep_data 
 
 p_mouse_le_bb_disconnected:
-03a3 704a9200 jam 0 ,mem_mouse_le_bb_connected_flag 
-03a4 58000007 setarg le_interval_8_75ms 
-03a5 60014496 store 2 ,mem_le_interval_min 
-03a6 60014498 store 2 ,mem_le_interval_min + 2 
-03a7 7047c400 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
-03a8 70479c00 jam 0 ,mem_mouse_clear_sensor_data_flag 
-03a9 20400370 call p_mouse_data_init 
-03aa 20405816 call le_clr_config_more_data 
-03ab 204041d9 call mouse_bb_disconnected 
-03ac 6800ca9e fetch 1 ,mem_mouse_start_discovery_enable 
-03ad 207a0000 rtn blank 
+03a4 704a9200 jam 0 ,mem_mouse_le_bb_connected_flag 
+03a5 58000007 setarg le_interval_8_75ms 
+03a6 60014496 store 2 ,mem_le_interval_min 
+03a7 60014498 store 2 ,mem_le_interval_min + 2 
+03a8 7047c400 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+03a9 70479c00 jam 0 ,mem_mouse_clear_sensor_data_flag 
+03aa 20400371 call p_mouse_data_init 
+03ab 20405816 call le_clr_config_more_data 
+03ac 204041d9 call mouse_bb_disconnected 
+03ad 6800ca9e fetch 1 ,mem_mouse_start_discovery_enable 
+03ae 207a0000 rtn blank 
 
 p_check_51cmd_adv:
-03ae 204005f4 call p_mouse_le_adv_data_update 
-03af 20207df4 branch check_51cmd_adv 
+03af 204005f8 call p_mouse_le_adv_data_update 
+03b0 20207df4 branch check_51cmd_adv 
 
 p_mouse_le_enc_info:
 
 p_app_updata_le_param:
-03b0 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-03b1 20207d8f branch ui_ipc_send_cmd 
+03b1 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+03b2 20207d8f branch ui_ipc_send_cmd 
 
 p_mouse_le_ll_start_encryt:
-03b2 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-03b3 c00083b6 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-03b4 7046c614 jam 20 ,mem_le_start_encrypt_timer 
-03b5 202003b8 branch p_mouse_le_ll_enable_start_enc_flag 
+03b3 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+03b4 c00083b7 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+03b5 7046c614 jam 20 ,mem_le_start_encrypt_timer 
+03b6 202003b9 branch p_mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_ll_reconn_start_encryt:
-03b6 204003b0 call p_app_updata_le_param 
-03b7 7046c614 jam 20 ,mem_le_start_encrypt_timer 
+03b7 204003b1 call p_app_updata_le_param 
+03b8 7046c614 jam 20 ,mem_le_start_encrypt_timer 
 
 p_mouse_le_ll_enable_start_enc_flag:
-03b8 d8e00001 arg ll_start_enc_flag ,queue 
-03b9 202041b9 branch mouse_le_enable_connect_flag 
+03b9 d8e00001 arg ll_start_enc_flag ,queue 
+03ba 202041b9 branch mouse_le_enable_connect_flag 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-03ba 68014509 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-03bb c1000000 rtneq ble_signaling_connect_parameter_update_accepted 
-03bc 68008441 fetch 1 ,mem_le_tsniff 
-03bd 1feb7e00 rshift2 pdata ,pdata 
-03be 1fe67c0c sub pdata ,le_interval_15ms ,null 
-03bf 202103c6 branch p_mouse_le_conn_param_update_rsp_not_accepted ,positive 
-03c0 58000009 setarg le_interval_11_25ms 
-03c1 60014496 store 2 ,mem_le_interval_min 
-03c2 60014498 store 2 ,mem_le_interval_min + 2 
-03c3 204003b0 call p_app_updata_le_param 
+03bb 68014509 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+03bc c1000000 rtneq ble_signaling_connect_parameter_update_accepted 
+03bd 68008441 fetch 1 ,mem_le_tsniff 
+03be 1feb7e00 rshift2 pdata ,pdata 
+03bf 1fe67c0c sub pdata ,le_interval_15ms ,null 
+03c0 202103c7 branch p_mouse_le_conn_param_update_rsp_not_accepted ,positive 
+03c1 58000009 setarg le_interval_11_25ms 
+03c2 60014496 store 2 ,mem_le_interval_min 
+03c3 60014498 store 2 ,mem_le_interval_min + 2 
+03c4 204003b1 call p_app_updata_le_param 
 
 p_mouse_le_conn_param_lpm_disable:
-03c4 7047c401 jam le_lpm_disable ,mem_mouse_le_conn_param_reject 
-03c5 20600000 rtn 
+03c5 7047c401 jam le_lpm_disable ,mem_mouse_le_conn_param_reject 
+03c6 20600000 rtn 
 
 p_mouse_le_conn_param_update_rsp_not_accepted:
-03c6 704aa701 jam 1 ,mem_mouse_le_updata_not_accepted_flag 
-03c7 20200667 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset 
+03c7 704aa701 jam 1 ,mem_mouse_le_updata_not_accepted_flag 
+03c8 2020066b branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset 
 
 p_mouse_24g_pairing_complete:
-03c8 204002bf call p_mouse_tx_power_init 
-03c9 204003db call p_mouse_24g_attempt_success 
-03ca d8e00003 arg mosue_24g_pairing_flag ,queue 
-03cb 202043d2 branch mouse_disable_function_flag 
+03c9 204002c0 call p_mouse_tx_power_init 
+03ca 204003da call p_mouse_24g_attempt_success 
+03cb d8e00003 arg mosue_24g_pairing_flag ,queue 
+03cc 202043d2 branch mouse_disable_function_flag 
 
 p_mouse_set_24g_addr_eeprom:
-03cc da204be8 arg mem_24g_addr ,rega 
-03cd da40005b arg mouse_g24_addr_eeprom_offect ,regb 
-03ce d8400004 arg 4 ,temp 
-03cf 20600000 rtn 
+03cd da204be9 arg mem_24g_addr ,rega 
+03ce da40005b arg mouse_g24_addr_eeprom_offect ,regb 
+03cf d8400004 arg 4 ,temp 
+03d0 20600000 rtn 
 
 p_mouse_24g_attempt_fail:
-03d0 704d0000 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
-03d1 204002bf call p_mouse_tx_power_init 
+03d1 704d0100 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+03d2 204002c0 call p_mouse_tx_power_init 
 
 p_g24_long_sleep_set:
-03d2 20400218 call p_g24_check_51cmd_stop_24g 
-03d3 6800cb32 fetch 1 ,mem_g24_pair_fail 
-03d4 247a0000 nrtn blank 
-03d5 204000eb call p_mouse_setgpio_lpm 
-03d6 d85fffff arg -1 ,temp 
-03d7 20202b2a branch lpm_sleep 
+03d3 20400219 call p_g24_check_51cmd_stop_24g 
+03d4 204000eb call p_mouse_setgpio_lpm 
+03d5 d85fffff arg -1 ,temp 
+03d6 20202b2a branch lpm_sleep 
 
 p_mouse_bt_start_reconn:
-03d8 7041bd00 jam 0 ,mem_link_key_exists 
-03d9 20404316 call mouse_eeprom_load_recon_info 
-03da 202002ba branch p_mouse_check_reconn_target 
+03d7 7041bd00 jam 0 ,mem_link_key_exists 
+03d8 20404316 call mouse_eeprom_load_recon_info 
+03d9 202002bb branch p_mouse_check_reconn_target 
 
 p_mouse_24g_attempt_success:
-03db 704aa900 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
-03dc 58000000 setarg 0 
-03dd 6001ca9b store 3 ,mem_le_switch_adv_flag 
-03de 704b2b01 jam 1 ,mem_flip_connect_success 
+03da 704aa900 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
+03db 58000000 setarg 0 
+03dc 6001ca9b store 3 ,mem_le_switch_adv_flag 
+03dd 704b2b01 jam 1 ,mem_flip_connect_success 
+03de 704b3a00 jam 0 ,mem_flip_retransmit_fail 
 03df 204041c6 call mouse_le_bb_event_connected + 3 
 03e0 20403f8d call mouse_no_data_timer_init 
-03e1 204003cc call p_mouse_set_24g_addr_eeprom 
+03e1 204003cd call p_mouse_set_24g_addr_eeprom 
 03e2 204065d1 call iicd_write_protect_eep_data 
 
 p_mouse_24g_store_latest_mode_eeprom:
 03e3 704aa802 jam latest_mode_24g ,mem_mouse_latest_mode 
-03e4 2020039f branch p_mouse_store_latest_mode_eeprom 
+03e4 202003a0 branch p_mouse_store_latest_mode_eeprom 
 
 p_mouse_before_hibernate:
 03e5 704b2d01 jam 1 ,mem_hibernate_flag 
-03e6 204002d0 call p_store_hibernate_flag_eeprom 
+03e6 204002d1 call p_store_hibernate_flag_eeprom 
 03e7 68120138 hfetch 4 ,core_lpm_ctrl 
 03e8 79207e1a set1 26 ,pdata 
 03e9 6012004c hstore 4 ,core_lpm_reg 
 03ea 20402c21 call lpm_write_ctrl 
 03eb 204074bd call disable_authrom 
-03ec 204004a9 call p_laser_led_off 
-03ed 20400462 call p_blue_led_off2 
+03ec 204004ad call p_laser_led_off 
+03ed 20400466 call p_blue_led_off2 
 03ee 204000ec call p_mouse_setgpio_lpm_before 
 03ef d8400005 arg 0x05 ,temp 
 03f0 204067ed call gpio_clr_wake 
 03f1 d8e00014 arg 0x14 ,queue 
-03f2 680200a1 fetch 4 ,mem_gpio_wakeup_low 
-03f3 f93ffe00 qset0 pdata 
-03f4 600200a1 store 4 ,mem_gpio_wakeup_low 
-03f5 680200a5 fetch 4 ,mem_gpio_wakeup_high 
-03f6 f9207e00 qset1 pdata 
-03f7 600200a5 store 4 ,mem_gpio_wakeup_high 
-03f8 20600000 rtn 
+03f2 20600000 rtn 
+
+p_set_usb_gpio_wakeup:
+03f3 d8e00014 arg 0x14 ,queue 
+03f4 680200a1 fetch 4 ,mem_gpio_wakeup_low 
+03f5 f93ffe00 qset0 pdata 
+03f6 600200a1 store 4 ,mem_gpio_wakeup_low 
+03f7 680200a5 fetch 4 ,mem_gpio_wakeup_high 
+03f8 f9207e00 qset1 pdata 
+03f9 600200a5 store 4 ,mem_gpio_wakeup_high 
+03fa 20600000 rtn 
 
 p_mouse_bb_event_timer:
-03f9 204004d9 call p_mouse_g24_pair_mode_timer 
-03fa 2040044f call p_flip_multi_led_blink_timer 
-03fb 20400512 call p_mouse_adc_read 
-03fc 204004d2 call p_mouse_le_switch_adv_timer 
-03fd 20404234 call mouse_check_discovery_timeout_timer 
-03fe 20400437 call p_flip_charging_timer_init 
-03ff 20400446 call p_send_alt_tab_payload_timer 
-0400 204004ab call p_mouse_select_device 
-0401 204004a0 call p_g24_init_long_sleep_timer 
-0402 204004c9 call p_mouse_check_direct_timeout_timer 
-0403 204004ff call p_mouse_le_enable_att_list_timer 
-0404 20400502 call p_mouse_le_current_mult_update_timer 
-0405 20400508 call p_le_send_smp_security_request_timer 
-0406 204004c6 call p_mouse_poweron_bt_start_reconn_timer 
-0407 2040423a call mouse_check_no_data_timeout_timer 
+03fb 204004dd call p_mouse_g24_pair_mode_timer 
+03fc 20400453 call p_flip_multi_led_blink_timer 
+03fd 20400516 call p_mouse_adc_read 
+03fe 204004d6 call p_mouse_le_switch_adv_timer 
+03ff 20404234 call mouse_check_discovery_timeout_timer 
+0400 2040043b call p_flip_charging_timer_init 
+0401 2040044a call p_send_alt_tab_payload_timer 
+0402 204004af call p_mouse_select_device 
+0403 204004a4 call p_g24_init_long_sleep_timer 
+0404 204004cd call p_mouse_check_direct_timeout_timer 
+0405 20400503 call p_mouse_le_enable_att_list_timer 
+0406 20400506 call p_mouse_le_current_mult_update_timer 
+0407 2040050c call p_le_send_smp_security_request_timer 
+0408 204004ca call p_mouse_poweron_bt_start_reconn_timer 
+0409 2040423a call mouse_check_no_data_timeout_timer 
 
 p_mouse_key_long_time_down_timer:
-0408 20404083 call mouse_check_key_gpio 
-0409 68094b26 fetcht 2 ,mem_timer_key 
-040a 203a041b branch p_mouse_no_key_press ,blank 
-040b 70409100 jam 0x00 ,mem_lpm_mode 
-040c 98467c00 isub temp ,null 
-040d 24428578 ncall p_key_press_timer_set0 ,zero 
-040e 1a227e00 copy rega ,pdata 
-040f 60014b26 store 2 ,mem_timer_key 
-0410 704b2f0a jam 0x0a ,mem_g24_discon_long_sleep_timeout 
-0411 68014b14 fetch 2 ,mem_key_long_press_timer 
-0412 1fe0fe01 increase 1 ,pdata 
-0413 60014b14 store 2 ,mem_key_long_press_timer 
-0414 1fe67c0a sub pdata ,0x0a ,null 
-0415 2021042d branch p_flip_key_short_press ,positive 
-0416 6800cb25 fetch 1 ,mem_packet_send_finish 
-0417 247a0000 nrtn blank 
-0418 704b3702 jam 2 ,mem_key_long_short_press 
-0419 20600000 rtn 
-041a 20600000 rtn 
+040a 20404083 call mouse_check_key_gpio 
+040b 68094b26 fetcht 2 ,mem_timer_key 
+040c 203a041f branch p_mouse_no_key_press ,blank 
+040d 70409100 jam 0x00 ,mem_lpm_mode 
+040e 98467c00 isub temp ,null 
+040f 2442857c ncall p_key_press_timer_set0 ,zero 
+0410 1a227e00 copy rega ,pdata 
+0411 60014b26 store 2 ,mem_timer_key 
+0412 704b2f0a jam 0x0a ,mem_g24_discon_long_sleep_timeout 
+0413 6800cb3a fetch 1 ,mem_flip_retransmit_fail 
+0414 245a0437 ncall p_g24_reconn_start ,blank 
+0415 68014b14 fetch 2 ,mem_key_long_press_timer 
+0416 1fe0fe01 increase 1 ,pdata 
+0417 60014b14 store 2 ,mem_key_long_press_timer 
+0418 1fe67c0a sub pdata ,0x0a ,null 
+0419 20210431 branch p_flip_key_short_press ,positive 
+041a 6800cb25 fetch 1 ,mem_packet_send_finish 
+041b 247a0000 nrtn blank 
+041c 704b3702 jam 2 ,mem_key_long_short_press 
+041d 20600000 rtn 
+041e 20600000 rtn 
 
 p_mouse_no_key_press:
-041b 70409101 jam 0x01 ,mem_lpm_mode 
-041c 704b1b00 jam 0 ,mem_device_change_finish 
-041d 704b2600 jam 0 ,mem_timer_key 
-041e 6800cb1c fetch 1 ,mem_flip_device_charging 
-041f 243a0424 nbranch p_mouse_no_key_init ,blank 
-0420 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
-0421 c0008424 beq 1 ,p_mouse_no_key_init 
-0422 704b3500 jam 0 ,mem_low_voltage_led_flag 
-0423 704a5200 jam off ,mem_mouse_multi_led_blink_enable 
+041f 70409101 jam 0x01 ,mem_lpm_mode 
+0420 704b1b00 jam 0 ,mem_device_change_finish 
+0421 704b2600 jam 0 ,mem_timer_key 
+0422 6800cb1c fetch 1 ,mem_flip_device_charging 
+0423 243a0428 nbranch p_mouse_no_key_init ,blank 
+0424 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0425 c0008428 beq 1 ,p_mouse_no_key_init 
+0426 704b3500 jam 0 ,mem_low_voltage_led_flag 
+0427 704a5200 jam off ,mem_mouse_multi_led_blink_enable 
 
 p_mouse_no_key_init:
-0424 6800cb2e fetch 1 ,mem_not_show_device_led 
-0425 245a0431 ncall p_multi_led_on_timer_set0 ,blank 
-0426 20400578 call p_key_press_timer_set0 
-0427 6800cb31 fetch 1 ,mem_key_g24_pairing_flag 
-0428 207a0000 rtn blank 
-0429 204004f6 call p_g24_stop_pair_init 
-042a 6800cb2b fetch 1 ,mem_flip_connect_success 
-042b c0808433 bne 0x01 ,p_g24_reconn_start 
-042c 20600000 rtn 
+0428 6800cb2e fetch 1 ,mem_not_show_device_led 
+0429 245a0435 ncall p_multi_led_on_timer_set0 ,blank 
+042a 2040057c call p_key_press_timer_set0 
+042b 6800cb31 fetch 1 ,mem_key_g24_pairing_flag 
+042c 207a0000 rtn blank 
+042d 204004fa call p_g24_stop_pair_init 
+042e 6800cb2b fetch 1 ,mem_flip_connect_success 
+042f c0808437 bne 0x01 ,p_g24_reconn_start 
+0430 20600000 rtn 
 
 p_flip_key_short_press:
-042d 6800cb25 fetch 1 ,mem_packet_send_finish 
-042e 247a0000 nrtn blank 
-042f 704b3701 jam 1 ,mem_key_long_short_press 
-0430 20600000 rtn 
+0431 6800cb25 fetch 1 ,mem_packet_send_finish 
+0432 247a0000 nrtn blank 
+0433 704b3701 jam 1 ,mem_key_long_short_press 
+0434 20600000 rtn 
 
 p_multi_led_on_timer_set0:
-0431 704a5a00 jam 0 ,mem_mouse_multi_led_on_timer 
-0432 20600000 rtn 
+0435 704a5a00 jam 0 ,mem_mouse_multi_led_on_timer 
+0436 20600000 rtn 
 
 p_g24_reconn_start:
-0433 204003cc call p_mouse_set_24g_addr_eeprom 
-0434 204065df call iicd_read_eep_data 
-0435 204001ef call p_g24_start_24g_mode 
-0436 20600000 rtn 
+0437 204003cd call p_mouse_set_24g_addr_eeprom 
+0438 204065df call iicd_read_eep_data 
+0439 204001f0 call p_g24_start_24g_mode 
+043a 20600000 rtn 
 
 p_flip_charging_timer_init:
-0437 6808cb11 fetcht 1 ,mem_device_usb_gpio 
-0438 204004d5 call p_get_usb_bit 
-0439 6000cb1d store 1 ,mem_flip_device_usbing 
-043a 6808cb10 fetcht 1 ,mem_device_charge_gpio 
-043b 204067fb call gpio_config_input 
-043c 6808cb10 fetcht 1 ,mem_device_charge_gpio 
-043d 204004d5 call p_get_usb_bit 
-043e 6000cb1c store 1 ,mem_flip_device_charging 
-043f c1808000 rtnne 1 
+043b 6808cb11 fetcht 1 ,mem_device_usb_gpio 
+043c 204004d9 call p_get_usb_bit 
+043d 6000cb1d store 1 ,mem_flip_device_usbing 
+043e 6808cb10 fetcht 1 ,mem_device_charge_gpio 
+043f 204067fb call gpio_config_input 
+0440 6808cb10 fetcht 1 ,mem_device_charge_gpio 
+0441 204004d9 call p_get_usb_bit 
+0442 6000cb1c store 1 ,mem_flip_device_charging 
+0443 c1808000 rtnne 1 
 
 p_flip_charging_led_init:
-0440 68014b26 fetch 2 ,mem_timer_key 
-0441 243a0467 nbranch p_multi_led_blink_disable ,blank 
-0442 704a5705 jam 0x05 ,mem_mouse_multi_led_blink_timer_init 
-0443 704a5b00 jam 0 ,mem_mouse_multi_led_blink_count_limited 
-0444 704a5201 jam 1 ,mem_mouse_multi_led_blink_enable 
-0445 20600000 rtn 
+0444 68014b26 fetch 2 ,mem_timer_key 
+0445 243a046b nbranch p_multi_led_blink_disable ,blank 
+0446 704a5705 jam 0x05 ,mem_mouse_multi_led_blink_timer_init 
+0447 704a5b00 jam 0 ,mem_mouse_multi_led_blink_count_limited 
+0448 704a5201 jam 1 ,mem_mouse_multi_led_blink_enable 
+0449 20600000 rtn 
 
 p_send_alt_tab_payload_timer:
-0446 68014b1e fetch 2 ,mem_key_send_payload_staus 
-0447 c0400449 beq 0x80 ,p_send_alt_tab_payload_timer_init 
-0448 20600000 rtn 
+044a 68014b1e fetch 2 ,mem_key_send_payload_staus 
+044b c040044d beq 0x80 ,p_send_alt_tab_payload_timer_init 
+044c 20600000 rtn 
 
 p_send_alt_tab_payload_timer_init:
-0449 da604b16 arg mem_long_press_send_tab_timer ,regc 
-044a da40044c arg p_send_alt_tab_payload_flag ,regb 
-044b 2020336d branch timer_single_step 
+044d da604b16 arg mem_long_press_send_tab_timer ,regc 
+044e da400450 arg p_send_alt_tab_payload_flag ,regb 
+044f 2020336d branch timer_single_step 
 
 p_send_alt_tab_payload_flag:
-044c 704b1605 jam 0x05 ,mem_long_press_send_tab_timer 
-044d 704b2801 jam 1 ,mem_alt_key 
-044e 20600000 rtn 
+0450 704b1605 jam 0x05 ,mem_long_press_send_tab_timer 
+0451 704b2801 jam 1 ,mem_alt_key 
+0452 20600000 rtn 
 
 p_flip_multi_led_blink_timer:
-044f 6800cb2e fetch 1 ,mem_not_show_device_led 
-0450 c000846e beq multi_led_blink ,p_mouse_discovery_multi_led_blink 
+0453 6800cb2e fetch 1 ,mem_not_show_device_led 
+0454 c0008472 beq multi_led_blink ,p_mouse_discovery_multi_led_blink 
 
 p_flip_device_led_type_on_init:
-0451 704b2c01 jam 1 ,mem_device_led_flag 
-0452 2040047e call p_blue_led_on 
-0453 704b1b01 jam 1 ,mem_device_change_finish 
-0454 6800c720 fetch 1 ,mem_device_flag 
-0455 c0010465 beq latest_mode_24g ,p_flip_led_type_on_1s_init 
-0456 d8400006 arg 0x06 ,temp 
+0455 704b2c01 jam 1 ,mem_device_led_flag 
+0456 20400482 call p_blue_led_on 
+0457 704b1b01 jam 1 ,mem_device_change_finish 
+0458 6800c720 fetch 1 ,mem_device_flag 
+0459 c0010469 beq latest_mode_24g ,p_flip_led_type_on_1s_init 
+045a d8400006 arg 0x06 ,temp 
 
 p_flip_device_led_type_on_start:
-0457 6800ca5a fetch 1 ,mem_mouse_multi_led_on_timer 
-0458 1fe0fe01 increase 1 ,pdata 
-0459 6000ca5a store 1 ,mem_mouse_multi_led_on_timer 
-045a 98467c00 isub temp ,null 
-045b 2042845d call p_mouse_device_led_off_poweron ,zero 
-045c 20600000 rtn 
+045b 6800ca5a fetch 1 ,mem_mouse_multi_led_on_timer 
+045c 1fe0fe01 increase 1 ,pdata 
+045d 6000ca5a store 1 ,mem_mouse_multi_led_on_timer 
+045e 98467c00 isub temp ,null 
+045f 20428461 call p_mouse_device_led_off_poweron ,zero 
+0460 20600000 rtn 
 
 p_mouse_device_led_off_poweron:
-045d 704b2e01 jam 1 ,mem_not_show_device_led 
-045e 704b2c00 jam 0 ,mem_device_led_flag 
+0461 704b2e01 jam 1 ,mem_not_show_device_led 
+0462 704b2c00 jam 0 ,mem_device_led_flag 
 
 p_mouse_multi_led_blink_off:
-045f 204004a9 call p_laser_led_off 
+0463 204004ad call p_laser_led_off 
 
 p_blue_led_off:
-0460 6800ca54 fetch 1 ,mem_mouse_multi_led_state 
-0461 c1000000 rtneq off 
+0464 6800ca54 fetch 1 ,mem_mouse_multi_led_state 
+0465 c1000000 rtneq off 
 
 p_blue_led_off2:
-0462 704a5400 jam off ,mem_mouse_multi_led_state 
-0463 204005d5 call p_blue_led_init 
-0464 20206825 branch gpio_out_inactive 
+0466 704a5400 jam off ,mem_mouse_multi_led_state 
+0467 204005d9 call p_blue_led_init 
+0468 20206825 branch gpio_out_inactive 
 
 p_flip_led_type_on_1s_init:
-0465 d840000a arg 0x0a ,temp 
-0466 20200457 branch p_flip_device_led_type_on_start 
+0469 d840000a arg 0x0a ,temp 
+046a 2020045b branch p_flip_device_led_type_on_start 
 
 p_multi_led_blink_disable:
-0467 704a5200 jam off ,mem_mouse_multi_led_blink_enable 
-0468 20600000 rtn 
+046b 704a5200 jam off ,mem_mouse_multi_led_blink_enable 
+046c 20600000 rtn 
 
 p_multi_led_blink_enable:
-0469 704a5201 jam on ,mem_mouse_multi_led_blink_enable 
-046a 20600000 rtn 
+046d 704a5201 jam on ,mem_mouse_multi_led_blink_enable 
+046e 20600000 rtn 
 
 p_flip_multi_led_blink_init:
-046b 6008ca59 storet 1 ,mem_mouse_multi_led_blink_count 
-046c 704a5b01 jam 1 ,mem_mouse_multi_led_blink_count_limited 
-046d 20200469 branch p_multi_led_blink_enable 
+046f 6008ca59 storet 1 ,mem_mouse_multi_led_blink_count 
+0470 704a5b01 jam 1 ,mem_mouse_multi_led_blink_count_limited 
+0471 2020046d branch p_multi_led_blink_enable 
 
 p_mouse_discovery_multi_led_blink:
-046e 6800ca52 fetch 1 ,mem_mouse_multi_led_blink_enable 
-046f 203a0485 branch p_flip_key_led_show ,blank 
-0470 da604a58 arg mem_mouse_multi_led_blink_timer ,regc 
-0471 da400473 arg p_mouse_multi_led_type_blink_timeout ,regb 
-0472 2020336d branch timer_single_step 
+0472 6800ca52 fetch 1 ,mem_mouse_multi_led_blink_enable 
+0473 203a0489 branch p_flip_key_led_show ,blank 
+0474 da604a58 arg mem_mouse_multi_led_blink_timer ,regc 
+0475 da400477 arg p_mouse_multi_led_type_blink_timeout ,regb 
+0476 2020336d branch timer_single_step 
 
 p_mouse_multi_led_type_blink_timeout:
-0473 6800ca57 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
-0474 6000ca58 store 1 ,mem_mouse_multi_led_blink_timer 
-0475 6800ca5b fetch 1 ,mem_mouse_multi_led_blink_count_limited 
-0476 203a047c branch p_mouse_multi_led_blink_count_no_limited ,blank 
-0477 6800ca59 fetch 1 ,mem_mouse_multi_led_blink_count 
-0478 203a0481 branch p_mouse_multi_led_blink_finish ,blank 
-0479 1fe0ffff increase -1 ,pdata 
-047a 6000ca59 store 1 ,mem_mouse_multi_led_blink_count 
-047b 704b2f0a jam 0x0a ,mem_g24_discon_long_sleep_timeout 
+0477 6800ca57 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+0478 6000ca58 store 1 ,mem_mouse_multi_led_blink_timer 
+0479 6800ca5b fetch 1 ,mem_mouse_multi_led_blink_count_limited 
+047a 203a0480 branch p_mouse_multi_led_blink_count_no_limited ,blank 
+047b 6800ca59 fetch 1 ,mem_mouse_multi_led_blink_count 
+047c 203a0485 branch p_mouse_multi_led_blink_finish ,blank 
+047d 1fe0ffff increase -1 ,pdata 
+047e 6000ca59 store 1 ,mem_mouse_multi_led_blink_count 
+047f 704b2f0a jam 0x0a ,mem_g24_discon_long_sleep_timeout 
 
 p_mouse_multi_led_blink_count_no_limited:
-047c 6800ca54 fetch 1 ,mem_mouse_multi_led_state 
-047d c0008460 beq on ,p_blue_led_off 
+0480 6800ca54 fetch 1 ,mem_mouse_multi_led_state 
+0481 c0008464 beq on ,p_blue_led_off 
 
 p_blue_led_on:
-047e 704a5401 jam on ,mem_mouse_multi_led_state 
-047f 204005d5 call p_blue_led_init 
-0480 20206829 branch gpio_out_active 
+0482 704a5401 jam on ,mem_mouse_multi_led_state 
+0483 204005d9 call p_blue_led_init 
+0484 20206829 branch gpio_out_active 
 
 p_mouse_multi_led_blink_finish:
-0481 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
-0482 c000045f beq 0 ,p_mouse_multi_led_blink_off 
-0483 704a5200 jam off ,mem_mouse_multi_led_blink_enable 
-0484 2020045f branch p_mouse_multi_led_blink_off 
+0485 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0486 c0000463 beq 0 ,p_mouse_multi_led_blink_off 
+0487 704a5200 jam off ,mem_mouse_multi_led_blink_enable 
+0488 20200463 branch p_mouse_multi_led_blink_off 
 
 p_flip_key_led_show:
-0485 6800cb36 fetch 1 ,mem_device_turn_off 
-0486 243a049d nbranch p_full_change_led_off ,blank 
-0487 20404083 call mouse_check_key_gpio 
-0488 203a048f branch p_flip_key_release_led ,blank 
-0489 704b3501 jam 1 ,mem_low_voltage_led_flag 
-048a c00a045f beq 0x14 ,p_mouse_multi_led_blink_off 
-048b c0018499 beq 0x03 ,p_flip_key_change_led 
-048c 1fe17e1f and_into 0x1f ,pdata 
-048d 204005ce call p_laser_led_on 
-048e 2020047e branch p_blue_led_on 
+0489 6800cb36 fetch 1 ,mem_device_turn_off 
+048a 243a04a1 nbranch p_full_change_led_off ,blank 
+048b 20404083 call mouse_check_key_gpio 
+048c 203a0493 branch p_flip_key_release_led ,blank 
+048d 704b3501 jam 1 ,mem_low_voltage_led_flag 
+048e c00a0463 beq 0x14 ,p_mouse_multi_led_blink_off 
+048f c001849d beq 0x03 ,p_flip_key_change_led 
+0490 1fe17e1f and_into 0x1f ,pdata 
+0491 204005d2 call p_laser_led_on 
+0492 20200482 branch p_blue_led_on 
 
 p_flip_key_release_led:
-048f 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
-0490 c0008492 beq 1 ,p_low_voltage_led_init 
-0491 2020045f branch p_mouse_multi_led_blink_off 
+0493 6800ca5e fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0494 c0008496 beq 1 ,p_low_voltage_led_init 
+0495 20200463 branch p_mouse_multi_led_blink_off 
 
 p_low_voltage_led_init:
-0492 6800cb35 fetch 1 ,mem_low_voltage_led_flag 
-0493 207a0000 rtn blank 
-0494 704b3500 jam 0 ,mem_low_voltage_led_flag 
-0495 704a5701 jam 1 ,mem_mouse_multi_led_blink_timer_init 
-0496 d8400006 arg 6 ,temp 
-0497 2040046b call p_flip_multi_led_blink_init 
-0498 2020045f branch p_mouse_multi_led_blink_off 
+0496 6800cb35 fetch 1 ,mem_low_voltage_led_flag 
+0497 207a0000 rtn blank 
+0498 704b3500 jam 0 ,mem_low_voltage_led_flag 
+0499 704a5701 jam 1 ,mem_mouse_multi_led_blink_timer_init 
+049a d8400006 arg 6 ,temp 
+049b 2040046f call p_flip_multi_led_blink_init 
+049c 20200463 branch p_mouse_multi_led_blink_off 
 
 p_flip_key_change_led:
-0499 704b2201 jam 1 ,mem_key_not_send_flag 
-049a 6800ca5a fetch 1 ,mem_mouse_multi_led_on_timer 
-049b 205a047e call p_blue_led_on ,blank 
-049c 20200465 branch p_flip_led_type_on_1s_init 
+049d 704b2201 jam 1 ,mem_key_not_send_flag 
+049e 6800ca5a fetch 1 ,mem_mouse_multi_led_on_timer 
+049f 205a0482 call p_blue_led_on ,blank 
+04a0 20200469 branch p_flip_led_type_on_1s_init 
 
 p_full_change_led_off:
-049d 6800cb1c fetch 1 ,mem_flip_device_charging 
-049e 247a0000 nrtn blank 
-049f 2020045f branch p_mouse_multi_led_blink_off 
+04a1 6800cb1c fetch 1 ,mem_flip_device_charging 
+04a2 247a0000 nrtn blank 
+04a3 20200463 branch p_mouse_multi_led_blink_off 
 
 p_g24_init_long_sleep_timer:
-04a0 6800cb2b fetch 1 ,mem_flip_connect_success 
-04a1 247a0000 nrtn blank 
-04a2 6800c720 fetch 1 ,mem_device_flag 
-04a3 c1008000 rtneq mode_bt_device1 
-04a4 6800cb1c fetch 1 ,mem_flip_device_charging 
+04a4 6800cb2b fetch 1 ,mem_flip_connect_success 
 04a5 247a0000 nrtn blank 
-04a6 da604b2f arg mem_g24_discon_long_sleep_timeout ,regc 
-04a7 da4003d2 arg p_g24_long_sleep_set ,regb 
-04a8 2020336d branch timer_single_step 
+04a6 6800c720 fetch 1 ,mem_device_flag 
+04a7 c1008000 rtneq mode_bt_device1 
+04a8 6800cb1c fetch 1 ,mem_flip_device_charging 
+04a9 247a0000 nrtn blank 
+04aa da604b2f arg mem_g24_discon_long_sleep_timeout ,regc 
+04ab da4003d3 arg p_g24_long_sleep_set ,regb 
+04ac 2020336d branch timer_single_step 
 
 p_laser_led_off:
-04a9 204005cc call p_laser_led_init 
-04aa 20206825 branch gpio_out_inactive 
+04ad 204005d0 call p_laser_led_init 
+04ae 20206825 branch gpio_out_inactive 
 
 p_mouse_select_device:
-04ab 6800cb1b fetch 1 ,mem_device_change_finish 
-04ac 243a04af nbranch p_mouse_select_device_button_up ,blank 
-04ad 20404083 call mouse_check_key_gpio 
-04ae c00a04b2 beq 0x14 ,p_mouse_select_device_button_down 
+04af 6800cb1b fetch 1 ,mem_device_change_finish 
+04b0 243a04b3 nbranch p_mouse_select_device_button_up ,blank 
+04b1 20404083 call mouse_check_key_gpio 
+04b2 c00a04b6 beq 0x14 ,p_mouse_select_device_button_down 
 
 p_mouse_select_device_button_up:
-04af 6800ca50 fetch 1 ,mem_mouse_button_select_device_timer_init 
-04b0 6000ca51 store 1 ,mem_mouse_button_select_device_count 
-04b1 2020433a branch mouse_select_device_commbination_key_up + 1 
+04b3 6800ca50 fetch 1 ,mem_mouse_button_select_device_timer_init 
+04b4 6000ca51 store 1 ,mem_mouse_button_select_device_count 
+04b5 2020433a branch mouse_select_device_commbination_key_up + 1 
 
 p_mouse_select_device_button_down:
-04b2 704b2201 jam 1 ,mem_key_not_send_flag 
-04b3 204004b8 call p_mouse_button_select_device_timer 
-04b4 6800c6d9 fetch 1 ,mem_select_device_button_statue 
-04b5 c1000000 rtneq dpi_button_state_down 
-04b6 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
-04b7 20600000 rtn 
+04b6 704b2201 jam 1 ,mem_key_not_send_flag 
+04b7 204004bc call p_mouse_button_select_device_timer 
+04b8 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+04b9 c1000000 rtneq dpi_button_state_down 
+04ba 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
+04bb 20600000 rtn 
 
 p_mouse_button_select_device_timer:
-04b8 da604a51 arg mem_mouse_button_select_device_count ,regc 
-04b9 da4004bb arg p_mouse_long_button_select_device ,regb 
-04ba 2020336d branch timer_single_step 
+04bc da604a51 arg mem_mouse_button_select_device_count ,regc 
+04bd da4004bf arg p_mouse_long_button_select_device ,regb 
+04be 2020336d branch timer_single_step 
 
 p_mouse_long_button_select_device:
-04bb d8e00006 arg mouse_long_bt_button_flag ,queue 
-04bc 204043ce call mouse_enable_function_flag 
+04bf d8e00006 arg mouse_long_bt_button_flag ,queue 
+04c0 204043ce call mouse_enable_function_flag 
 
 p_mouse_ready_reconnection_by_button:
-04bd 7041bd00 jam 0 ,mem_link_key_exists 
-04be 6808c720 fetcht 1 ,mem_device_flag 
-04bf 18408401 increase 1 ,temp 
-04c0 6800c6d2 fetch 1 ,mem_device_number 
-04c1 98467c00 isub temp ,null 
-04c2 244143cc ncall mouse_select_device_count_clean ,positive 
-04c3 6008c720 storet 1 ,mem_device_flag 
-04c4 204042e4 call mouse_store_eeprom_device_info 
-04c5 20204378 branch mouse_ready_reconnection_by_button + 8 
+04c1 7041bd00 jam 0 ,mem_link_key_exists 
+04c2 6808c720 fetcht 1 ,mem_device_flag 
+04c3 18408401 increase 1 ,temp 
+04c4 6800c6d2 fetch 1 ,mem_device_number 
+04c5 98467c00 isub temp ,null 
+04c6 244143cc ncall mouse_select_device_count_clean ,positive 
+04c7 6008c720 storet 1 ,mem_device_flag 
+04c8 204042e4 call mouse_store_eeprom_device_info 
+04c9 20204378 branch mouse_ready_reconnection_by_button + 8 
 
 p_mouse_poweron_bt_start_reconn_timer:
-04c6 da604aa9 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
-04c7 da4003d8 arg p_mouse_bt_start_reconn ,regb 
-04c8 2020336d branch timer_single_step 
+04ca da604aa9 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
+04cb da4003d7 arg p_mouse_bt_start_reconn ,regb 
+04cc 2020336d branch timer_single_step 
 
 p_mouse_check_direct_timeout_timer:
-04c9 da6046ae arg mem_mouse_direct_timer ,regc 
-04ca da4004cc arg p_mouse_check_direct_timeout ,regb 
-04cb 20203374 branch timer_single_step_2b 
+04cd da6046ae arg mem_mouse_direct_timer ,regc 
+04ce da4004d0 arg p_mouse_check_direct_timeout ,regb 
+04cf 20203374 branch timer_single_step_2b 
 
 p_mouse_check_direct_timeout:
-04cc 704aaa01 jam 1 ,mem_mouse_le_not_tx_disconn 
-04cd 6800caa8 fetch 1 ,mem_mouse_latest_mode 
-04ce 1fe67cff sub pdata ,latest_mode_null ,null 
-04cf 20428510 call p_mouse_le_adv_start ,zero 
-04d0 204005f4 call p_mouse_le_adv_data_update 
-04d1 202043b8 branch mouse_long_button_bt_discovry 
+04d0 704aaa01 jam 1 ,mem_mouse_le_not_tx_disconn 
+04d1 6800caa8 fetch 1 ,mem_mouse_latest_mode 
+04d2 1fe67cff sub pdata ,latest_mode_null ,null 
+04d3 20428514 call p_mouse_le_adv_start ,zero 
+04d4 204005f8 call p_mouse_le_adv_data_update 
+04d5 202043b8 branch mouse_long_button_bt_discovry 
 
 p_mouse_le_switch_adv_timer:
-04d2 6800ca9b fetch 1 ,mem_le_switch_adv_flag 
-04d3 207a0000 rtn blank 
-04d4 202003ae branch p_check_51cmd_adv 
+04d6 6800ca9b fetch 1 ,mem_le_switch_adv_flag 
+04d7 207a0000 rtn blank 
+04d8 202003af branch p_check_51cmd_adv 
 
 p_get_usb_bit:
-04d5 2040681d call gpio_get_bit 
-04d6 58000000 setarg 0x00 
-04d7 7920fe00 setflag true ,0 ,pdata 
-04d8 20600000 rtn 
+04d9 2040681d call gpio_get_bit 
+04da 58000000 setarg 0x00 
+04db 7920fe00 setflag true ,0 ,pdata 
+04dc 20600000 rtn 
 
 p_mouse_g24_pair_mode_timer:
-04d9 6800c720 fetch 1 ,mem_device_flag 
-04da c1008000 rtneq mode_bt_device1 
-04db 6800cb26 fetch 1 ,mem_timer_key 
-04dc c1888000 rtnne 0x11 
-04dd 58000000 setarg 0 
-04de 60014ae4 store 2 ,mem_customer_key 
-04df 60024b1e store 4 ,mem_key_send_payload_staus 
-04e0 704a5701 jam 0x01 ,mem_mouse_multi_led_blink_timer_init 
-04e1 d8400000 arg 0 ,temp 
-04e2 68014b14 fetch 2 ,mem_key_long_press_timer 
-04e3 1fe67c0a sub pdata ,0x0a ,null 
-04e4 2021046b branch p_flip_multi_led_blink_init ,positive 
-04e5 6800cb2b fetch 1 ,mem_flip_connect_success 
-04e6 243a04fb nbranch p_g24_pairing_succ ,blank 
-04e7 704a5200 jam 0 ,mem_mouse_multi_led_blink_enable 
-04e8 68014b14 fetch 2 ,mem_key_long_press_timer 
-04e9 1fe67c60 sub pdata ,0x60 ,null 
-04ea 204284f4 call p_g24_stop_pair_mode ,zero 
-04eb 24410469 ncall p_multi_led_blink_enable ,positive 
-04ec 1fe67c64 sub pdata ,0x64 ,null 
-04ed 242104f6 nbranch p_g24_stop_pair_init ,positive 
+04dd 6800c720 fetch 1 ,mem_device_flag 
+04de c1008000 rtneq mode_bt_device1 
+04df 6800cb26 fetch 1 ,mem_timer_key 
+04e0 c1888000 rtnne 0x11 
+04e1 58000000 setarg 0 
+04e2 60014ae4 store 2 ,mem_customer_key 
+04e3 60024b1e store 4 ,mem_key_send_payload_staus 
+04e4 704a5701 jam 0x01 ,mem_mouse_multi_led_blink_timer_init 
+04e5 d8400000 arg 0 ,temp 
+04e6 68014b14 fetch 2 ,mem_key_long_press_timer 
+04e7 1fe67c0a sub pdata ,0x0a ,null 
+04e8 2021046f branch p_flip_multi_led_blink_init ,positive 
+04e9 6800cb2b fetch 1 ,mem_flip_connect_success 
+04ea 243a04ff nbranch p_g24_pairing_succ ,blank 
+04eb 704a5200 jam 0 ,mem_mouse_multi_led_blink_enable 
+04ec 68014b14 fetch 2 ,mem_key_long_press_timer 
+04ed 1fe67c60 sub pdata ,0x60 ,null 
+04ee 204284f8 call p_g24_stop_pair_mode ,zero 
+04ef 2441046d ncall p_multi_led_blink_enable ,positive 
+04f0 1fe67c64 sub pdata ,0x64 ,null 
+04f1 242104fa nbranch p_g24_stop_pair_init ,positive 
 
 p_mouse_g24_stop_mode_timeout:
-04ee 704bc500 jam 0 ,mem_24g_ensure 
-04ef 20407fe7 call enable_user 
-04f0 6800cb31 fetch 1 ,mem_key_g24_pairing_flag 
-04f1 247a0000 nrtn blank 
-04f2 704b3101 jam 1 ,mem_key_g24_pairing_flag 
-04f3 2020031d branch p_g24_auto_pair_start 
+04f2 704bc600 jam 0 ,mem_24g_ensure 
+04f3 20407fe7 call enable_user 
+04f4 6800cb31 fetch 1 ,mem_key_g24_pairing_flag 
+04f5 247a0000 nrtn blank 
+04f6 704b3101 jam 1 ,mem_key_g24_pairing_flag 
+04f7 2020031e branch p_g24_auto_pair_start 
 
 p_g24_stop_pair_mode:
-04f4 d8400004 arg 4 ,temp 
-04f5 2020046b branch p_flip_multi_led_blink_init 
+04f8 d8400004 arg 4 ,temp 
+04f9 2020046f branch p_flip_multi_led_blink_init 
 
 p_g24_stop_pair_init:
-04f6 6800cd0f fetch 1 ,mem_g24_conn_sm 
-04f7 793ffe01 set0 state_24g_pair ,pdata 
-04f8 6000cd0f store 1 ,mem_g24_conn_sm 
-04f9 704b3100 jam 0 ,mem_key_g24_pairing_flag 
-04fa 20600000 rtn 
+04fa 6800cd10 fetch 1 ,mem_g24_conn_sm 
+04fb 793ffe01 set0 state_24g_pair ,pdata 
+04fc 6000cd10 store 1 ,mem_g24_conn_sm 
+04fd 704b3100 jam 0 ,mem_key_g24_pairing_flag 
+04fe 20600000 rtn 
 
 p_g24_pairing_succ:
-04fb 6800cb31 fetch 1 ,mem_key_g24_pairing_flag 
-04fc 243a046b nbranch p_flip_multi_led_blink_init ,blank 
-04fd 704b2b00 jam 0 ,mem_flip_connect_success 
-04fe 20600000 rtn 
+04ff 6800cb31 fetch 1 ,mem_key_g24_pairing_flag 
+0500 243a046f nbranch p_flip_multi_led_blink_init ,blank 
+0501 704b2b00 jam 0 ,mem_flip_connect_success 
+0502 20600000 rtn 
 
 p_mouse_le_enable_att_list_timer:
-04ff da6046c6 arg mem_le_start_encrypt_timer ,regc 
-0500 da403d60 arg mouse_le_write_enable ,regb 
-0501 2020336d branch timer_single_step 
+0503 da6046c6 arg mem_le_start_encrypt_timer ,regc 
+0504 da403d60 arg mouse_le_write_enable ,regb 
+0505 2020336d branch timer_single_step 
 
 p_mouse_le_current_mult_update_timer:
-0502 da604a8e arg mem_mouse_le_current_mult_timer ,regc 
-0503 da400505 arg p_mouse_le_current_mult_reinit ,regb 
-0504 2020336d branch timer_single_step 
+0506 da604a8e arg mem_mouse_le_current_mult_timer ,regc 
+0507 da400509 arg p_mouse_le_current_mult_reinit ,regb 
+0508 2020336d branch timer_single_step 
 
 p_mouse_le_current_mult_reinit:
-0505 6800c7c5 fetch 1 ,mem_lpm_mult_init 
-0506 6000c172 store 1 ,mem_lpm_mult 
-0507 20600000 rtn 
+0509 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+050a 6000c172 store 1 ,mem_lpm_mult 
+050b 20600000 rtn 
 
 p_le_send_smp_security_request_timer:
-0508 6800ca92 fetch 1 ,mem_mouse_le_bb_connected_flag 
-0509 207a0000 rtn blank 
-050a da604a90 arg mem_mouse_send_secutiry_request_timer ,regc 
-050b da40050d arg p_le_pairing_sm_start_check ,regb 
-050c 2020336d branch timer_single_step 
+050c 6800ca92 fetch 1 ,mem_mouse_le_bb_connected_flag 
+050d 207a0000 rtn blank 
+050e da604a90 arg mem_mouse_send_secutiry_request_timer ,regc 
+050f da400511 arg p_le_pairing_sm_start_check ,regb 
+0510 2020336d branch timer_single_step 
 
 p_le_pairing_sm_start_check:
-050d 6800ca91 fetch 1 ,mem_le_send_security_request_flag 
-050e 247a0000 nrtn blank 
-050f 20205bf5 branch le_pairing_sm_start 
+0511 6800ca91 fetch 1 ,mem_le_send_security_request_flag 
+0512 247a0000 nrtn blank 
+0513 20205bf5 branch le_pairing_sm_start 
 
 p_mouse_le_adv_start:
-0510 704a9f01 jam 1 ,mem_mouse_le_adv_start 
-0511 20600000 rtn 
+0514 704a9f01 jam 1 ,mem_mouse_le_adv_start 
+0515 20600000 rtn 
 
 p_mouse_adc_read:
-0512 6800cb2c fetch 1 ,mem_device_led_flag 
-0513 247a0000 nrtn blank 
-0514 6800ca54 fetch 1 ,mem_mouse_multi_led_state 
-0515 c1008000 rtneq on 
-0516 da6046ce arg mem_adc_read_timer ,regc 
-0517 da400519 arg p_mouse_adc_read_timeout ,regb 
-0518 2020336d branch timer_single_step 
+0516 6800cb2c fetch 1 ,mem_device_led_flag 
+0517 247a0000 nrtn blank 
+0518 6800ca54 fetch 1 ,mem_mouse_multi_led_state 
+0519 c1008000 rtneq on 
+051a da6046ce arg mem_adc_read_timer ,regc 
+051b da40051d arg p_mouse_adc_read_timeout ,regb 
+051c 2020336d branch timer_single_step 
 
 p_mouse_adc_read_timeout:
-0519 7046ce0a jam 10 ,mem_adc_read_timer 
+051d 7046ce0a jam 10 ,mem_adc_read_timer 
 
 p_mouse_adc_read_once:
-051a d8400005 arg 0x05 ,temp 
-051b 204067fb call gpio_config_input 
-051c 6810807c hfetch 1 ,core_gpio_pd0 
-051d 793ffe05 set0 5 ,pdata 
-051e 6010807c hstore 1 ,core_gpio_pd0 
-051f 68108078 hfetch 1 ,core_gpio_pu0 
-0520 793ffe05 set0 5 ,pdata 
-0521 60108078 hstore 1 ,core_gpio_pu0 
-0522 70422d02 jam adc_config_gpio ,mem_adc_config_flag 
-0523 20400532 call p_mouse_adc_read_set 
-0524 6001470f store 2 ,mem_mouse_vdd_now_vol 
-0525 20400462 call p_blue_led_off2 
-0526 70422d00 jam adc_config_vinlpm ,mem_adc_config_flag 
-0527 20400532 call p_mouse_adc_read_set 
-0528 60014b38 store 2 ,mem_mouse_vinlpm_vol 
-0529 da204709 arg mem_mouse_vdd_calculate_set ,rega 
-052a 20400535 call p_adc_bat_percent_lowpower_out 
-052b 6800c231 fetch 1 ,mem_adc_power_flag 
-052c c300052f bbit0 0 ,p_mouse_adc_no_low_voltage 
-052d 704a5e01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
-052e 202043e7 branch mouse_adc_low_voltage 
+051e d8400005 arg 0x05 ,temp 
+051f 204067fb call gpio_config_input 
+0520 6810807c hfetch 1 ,core_gpio_pd0 
+0521 793ffe05 set0 5 ,pdata 
+0522 6010807c hstore 1 ,core_gpio_pd0 
+0523 68108078 hfetch 1 ,core_gpio_pu0 
+0524 793ffe05 set0 5 ,pdata 
+0525 60108078 hstore 1 ,core_gpio_pu0 
+0526 70422d02 jam adc_config_gpio ,mem_adc_config_flag 
+0527 20400536 call p_mouse_adc_read_set 
+0528 6001470f store 2 ,mem_mouse_vdd_now_vol 
+0529 20400466 call p_blue_led_off2 
+052a 70422d00 jam adc_config_vinlpm ,mem_adc_config_flag 
+052b 20400536 call p_mouse_adc_read_set 
+052c 60014b38 store 2 ,mem_mouse_vinlpm_vol 
+052d da204709 arg mem_mouse_vdd_calculate_set ,rega 
+052e 20400539 call p_adc_bat_percent_lowpower_out 
+052f 6800c231 fetch 1 ,mem_adc_power_flag 
+0530 c3000533 bbit0 0 ,p_mouse_adc_no_low_voltage 
+0531 704a5e01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+0532 202043e7 branch mouse_adc_low_voltage 
 
 p_mouse_adc_no_low_voltage:
-052f 204043e9 call mouse_adc_no_low_voltage 
-0530 704a5e00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
-0531 20600000 rtn 
+0533 204043e9 call mouse_adc_no_low_voltage 
+0534 704a5e00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
+0535 20600000 rtn 
 
 p_mouse_adc_read_set:
-0532 204068a8 call adc_init_data 
-0533 204068eb call adc_set_mode 
-0534 20206908 branch vdd_calculate_by_mode 
+0536 204068a8 call adc_init_data 
+0537 204068eb call adc_set_mode 
+0538 20206908 branch vdd_calculate_by_mode 
 
 p_adc_bat_percent_lowpower_out:
-0535 ea240000 ifetch 8 ,rega 
-0536 60040a9a store 8 ,mem_pdatatemp 
-0537 68090a9c fetcht 2 ,mem_pdatatemp + 2 
-0538 68014b38 fetch 2 ,mem_mouse_vinlpm_vol 
-0539 98467c00 isub temp ,null 
-053a 24210542 nbranch p_device_lowpower_turn_off ,positive 
-053b 68010aa0 fetch 2 ,mem_pdatatemp + 6 
-053c 68090a9e fetcht 2 ,mem_pdatatemp + 4 
+0539 ea240000 ifetch 8 ,rega 
+053a 60040a9a store 8 ,mem_pdatatemp 
+053b 68090a9c fetcht 2 ,mem_pdatatemp + 2 
+053c 68014b38 fetch 2 ,mem_mouse_vinlpm_vol 
 053d 98467c00 isub temp ,null 
-053e 24216940 nbranch adc_set_low_power_flag ,positive 
+053e 24210546 nbranch p_device_lowpower_turn_off ,positive 
+053f 68010aa0 fetch 2 ,mem_pdatatemp + 6 
+0540 68090a9e fetcht 2 ,mem_pdatatemp + 4 
+0541 98467c00 isub temp ,null 
+0542 24216940 nbranch adc_set_low_power_flag ,positive 
 
 p_adc_set_full_power_flag:
-053f 6800c231 fetch 1 ,mem_adc_power_flag 
-0540 1fe17efc and pdata ,0xfc ,pdata 
-0541 20206942 branch adc_store_power_flag 
+0543 6800c231 fetch 1 ,mem_adc_power_flag 
+0544 1fe17efc and pdata ,0xfc ,pdata 
+0545 20206942 branch adc_store_power_flag 
 
 p_device_lowpower_turn_off:
-0542 704b3601 jam 1 ,mem_device_turn_off 
-0543 704b2e01 jam 1 ,mem_not_show_device_led 
-0544 2020340a branch app_enter_hibernate 
+0546 704b3601 jam 1 ,mem_device_turn_off 
+0547 704b2e01 jam 1 ,mem_not_show_device_led 
+0548 2020340a branch app_enter_hibernate 
 
 p_mouse_motion:
-0545 78547c00 disable user 
+0549 78547c00 disable user 
 
 p_keyboard_key:
-0546 704afa00 jam 0 ,mem_customer_data_trigger 
-0547 20400556 call p_mouse_check_key_gpio_next 
-0548 204040a8 call mouse_set_mult 
-0549 204005d7 call p_mouse_24g_customer_key 
-054a 1a227e00 copy rega ,pdata 
-054b 60014ae4 store 2 ,mem_customer_key 
-054c 20400552 call p_mouse_check_key_gpio 
-054d 68014b1e fetch 2 ,mem_key_send_payload_staus 
-054e 207a0000 rtn blank 
-054f 20403f8d call mouse_no_data_timer_init 
-0550 704afa01 jam 1 ,mem_customer_data_trigger 
-0551 20207fe7 branch enable_user 
+054a 704afa00 jam 0 ,mem_customer_data_trigger 
+054b 2040055a call p_mouse_check_key_gpio_next 
+054c 204040a8 call mouse_set_mult 
+054d 204005db call p_mouse_24g_customer_key 
+054e 1a227e00 copy rega ,pdata 
+054f 60014ae4 store 2 ,mem_customer_key 
+0550 20400556 call p_mouse_check_key_gpio 
+0551 68014b1e fetch 2 ,mem_key_send_payload_staus 
+0552 207a0000 rtn blank 
+0553 20403f8d call mouse_no_data_timer_init 
+0554 704afa01 jam 1 ,mem_customer_data_trigger 
+0555 20207fe7 branch enable_user 
 
 p_mouse_check_key_gpio:
-0552 68014ae4 fetch 2 ,mem_customer_key 
-0553 245a0571 ncall p_store_customer_key_staus ,blank 
-0554 205a0575 call p_customer_key_release ,blank 
-0555 2020058e branch p_key_staus_judgment 
+0556 68014ae4 fetch 2 ,mem_customer_key 
+0557 245a0575 ncall p_store_customer_key_staus ,blank 
+0558 205a0579 call p_customer_key_release ,blank 
+0559 20200592 branch p_key_staus_judgment 
 
 p_mouse_check_key_gpio_next:
-0556 da200000 arg 0 ,rega 
+055a da200000 arg 0 ,rega 
 
 p_mouse_check_lkey_gpio:
-0557 704ae000 jam 0x00 ,mem_mouse_key_temp 
-0558 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-0559 6800cada fetch 1 ,mem_mouse_lkey_press_status 
-055a 2040057b call p_mouse_check_key 
-055b 6000cada store 1 ,mem_mouse_lkey_press_status 
+055b 704ae000 jam 0x00 ,mem_mouse_key_temp 
+055c 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+055d 6800cada fetch 1 ,mem_mouse_lkey_press_status 
+055e 2040057f call p_mouse_check_key 
+055f 6000cada store 1 ,mem_mouse_lkey_press_status 
 
 p_mouse_check_rkey_gpio:
-055c 704ae001 jam 0x01 ,mem_mouse_key_temp 
-055d 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-055e 6800cadb fetch 1 ,mem_mouse_rkey_press_status 
-055f 2040057b call p_mouse_check_key 
-0560 6000cadb store 1 ,mem_mouse_rkey_press_status 
+0560 704ae001 jam 0x01 ,mem_mouse_key_temp 
+0561 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0562 6800cadb fetch 1 ,mem_mouse_rkey_press_status 
+0563 2040057f call p_mouse_check_key 
+0564 6000cadb store 1 ,mem_mouse_rkey_press_status 
 
 p_mouse_check_mkey_gpio:
-0561 704ae002 jam 0x02 ,mem_mouse_key_temp 
-0562 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-0563 6800cadc fetch 1 ,mem_mouse_mkey_press_status 
-0564 2040057b call p_mouse_check_key 
-0565 6000cadc store 1 ,mem_mouse_mkey_press_status 
+0565 704ae002 jam 0x02 ,mem_mouse_key_temp 
+0566 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+0567 6800cadc fetch 1 ,mem_mouse_mkey_press_status 
+0568 2040057f call p_mouse_check_key 
+0569 6000cadc store 1 ,mem_mouse_mkey_press_status 
 
 p_mouse_check_bkkey_gpio:
-0566 704ae003 jam 0x03 ,mem_mouse_key_temp 
-0567 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
-0568 6800cadd fetch 1 ,mem_mouse_bkkey_press_status 
-0569 2040057b call p_mouse_check_key 
-056a 6000cadd store 1 ,mem_mouse_bkkey_press_status 
+056a 704ae003 jam 0x03 ,mem_mouse_key_temp 
+056b 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+056c 6800cadd fetch 1 ,mem_mouse_bkkey_press_status 
+056d 2040057f call p_mouse_check_key 
+056e 6000cadd store 1 ,mem_mouse_bkkey_press_status 
 
 p_mouse_check_fwkey_gpio:
-056b 704ae004 jam 0x04 ,mem_mouse_key_temp 
-056c 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
-056d 6800cade fetch 1 ,mem_mouse_fwkey_press_status 
-056e 2040057b call p_mouse_check_key 
-056f 6000cade store 1 ,mem_mouse_fwkey_press_status 
-0570 2020408e branch mouse_check_key_gpio_output 
+056f 704ae004 jam 0x04 ,mem_mouse_key_temp 
+0570 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+0571 6800cade fetch 1 ,mem_mouse_fwkey_press_status 
+0572 2040057f call p_mouse_check_key 
+0573 6000cade store 1 ,mem_mouse_fwkey_press_status 
+0574 2020408e branch mouse_check_key_gpio_output 
 
 p_store_customer_key_staus:
-0571 1fe17e1f and_into 0x1f ,pdata 
-0572 c3820000 rtnbit1 4 
-0573 60014b20 store 2 ,mem_customer_key_store 
-0574 20600000 rtn 
+0575 1fe17e1f and_into 0x1f ,pdata 
+0576 c3820000 rtnbit1 4 
+0577 60014b20 store 2 ,mem_customer_key_store 
+0578 20600000 rtn 
 
 p_customer_key_release:
-0575 dfe00000 arg 0 ,pdata 
-0576 60034b22 store 6 ,mem_customer_key_release_flag 
-0577 20600000 rtn 
+0579 dfe00000 arg 0 ,pdata 
+057a 60034b22 store 6 ,mem_customer_key_release_flag 
+057b 20600000 rtn 
 
 p_key_press_timer_set0:
-0578 dfe00000 arg 0 ,pdata 
-0579 60014b14 store 2 ,mem_key_long_press_timer 
-057a 20600000 rtn 
+057c dfe00000 arg 0 ,pdata 
+057d 60014b14 store 2 ,mem_key_long_press_timer 
+057e 20600000 rtn 
 
 p_mouse_check_key:
-057b 6000cae1 store 1 ,mem_mouse_key_status 
-057c 1fe3fe00 lshift pdata ,pdata 
-057d 1fe22400 copy pdata ,regb 
-057e 18422600 copy temp ,regc 
-057f 6800cae0 fetch 1 ,mem_mouse_key_temp 
-0580 204067fb call gpio_config_input 
-0581 1a620400 copy regc ,temp 
-0582 2040681d call gpio_get_bit 
-0583 7920a400 setflag true ,0 ,regb 
-0584 1a417e07 and regb ,0x07 ,pdata 
-0585 6808cae0 fetcht 1 ,mem_mouse_key_temp 
-0586 18420e00 copy temp ,queue 
-0587 c003858a beq 0x07 ,p_mouse_key_press 
-0588 c000058c beq 0x00 ,p_mouse_key_release 
-0589 20600000 rtn 
+057f 6000cae1 store 1 ,mem_mouse_key_status 
+0580 1fe3fe00 lshift pdata ,pdata 
+0581 1fe22400 copy pdata ,regb 
+0582 18422600 copy temp ,regc 
+0583 6800cae0 fetch 1 ,mem_mouse_key_temp 
+0584 204067fb call gpio_config_input 
+0585 1a620400 copy regc ,temp 
+0586 2040681d call gpio_get_bit 
+0587 7920a400 setflag true ,0 ,regb 
+0588 1a417e07 and regb ,0x07 ,pdata 
+0589 6808cae0 fetcht 1 ,mem_mouse_key_temp 
+058a 18420e00 copy temp ,queue 
+058b c003858e beq 0x07 ,p_mouse_key_press 
+058c c0000590 beq 0x00 ,p_mouse_key_release 
+058d 20600000 rtn 
 
 p_mouse_key_press:
-058a f9202200 qset1 rega 
-058b 20600000 rtn 
+058e f9202200 qset1 rega 
+058f 20600000 rtn 
 
 p_mouse_key_release:
-058c f93fa200 qset0 rega 
-058d 20600000 rtn 
+0590 f93fa200 qset0 rega 
+0591 20600000 rtn 
 
 p_key_staus_judgment:
-058e 6800cb37 fetch 1 ,mem_key_long_short_press 
-058f 207a0000 rtn blank 
-0590 c00105ac beq 2 ,p_key_long_press 
-0591 68014ae4 fetch 2 ,mem_customer_key 
-0592 247a0000 nrtn blank 
-0593 6800cb18 fetch 1 ,mem_2key_model_select_flag 
-0594 c08005a1 bne 0 ,p_page_updown_key_change_init 
-0595 68014b20 fetch 2 ,mem_customer_key_store 
+0592 6800cb37 fetch 1 ,mem_key_long_short_press 
+0593 207a0000 rtn blank 
+0594 c00105b0 beq 2 ,p_key_long_press 
+0595 68014ae4 fetch 2 ,mem_customer_key 
+0596 247a0000 nrtn blank 
+0597 6800cb18 fetch 1 ,mem_2key_model_select_flag 
+0598 c08005a5 bne 0 ,p_page_updown_key_change_init 
+0599 68014b20 fetch 2 ,mem_customer_key_store 
 
 p_key_send_data_staus_store:
-0596 60014b1e store 2 ,mem_key_send_payload_staus 
-0597 704b3700 jam 0 ,mem_key_long_short_press 
-0598 6800cb22 fetch 1 ,mem_key_not_send_flag 
-0599 c000859e beq 0x01 ,p_key_not_send_data 
-059a 6800cb25 fetch 1 ,mem_packet_send_finish 
-059b c000859e beq 0x01 ,p_key_not_send_data 
+059a 60014b1e store 2 ,mem_key_send_payload_staus 
+059b 704b3700 jam 0 ,mem_key_long_short_press 
+059c 6800cb22 fetch 1 ,mem_key_not_send_flag 
+059d c00085a2 beq 0x01 ,p_key_not_send_data 
+059e 6800cb25 fetch 1 ,mem_packet_send_finish 
+059f c00085a2 beq 0x01 ,p_key_not_send_data 
 
 p_key_send_payload_staus_set0:
-059c 704b2000 jam 0 ,mem_customer_key_store 
-059d 20600000 rtn 
+05a0 704b2000 jam 0 ,mem_customer_key_store 
+05a1 20600000 rtn 
 
 p_key_not_send_data:
-059e dfe00000 arg 0 ,pdata 
-059f 60014b1e store 2 ,mem_key_send_payload_staus 
-05a0 2020059c branch p_key_send_payload_staus_set0 
+05a2 dfe00000 arg 0 ,pdata 
+05a3 60014b1e store 2 ,mem_key_send_payload_staus 
+05a4 202005a0 branch p_key_send_payload_staus_set0 
 
 p_page_updown_key_change_init:
-05a1 68014b20 fetch 2 ,mem_customer_key_store 
-05a2 c00085a5 beq 0x01 ,p_page_updown_key_change 
-05a3 c00105a5 beq 0x02 ,p_page_updown_key_change 
-05a4 20200596 branch p_key_send_data_staus_store 
+05a5 68014b20 fetch 2 ,mem_customer_key_store 
+05a6 c00085a9 beq 0x01 ,p_page_updown_key_change 
+05a7 c00105a9 beq 0x02 ,p_page_updown_key_change 
+05a8 2020059a branch p_key_send_data_staus_store 
 
 p_page_updown_key_change:
-05a5 1fed7e00 lshift8 pdata ,pdata 
-05a6 1fe3fe00 lshift pdata ,pdata 
-05a7 6808cb18 fetcht 1 ,mem_2key_model_select_flag 
-05a8 18467c01 sub temp ,0x01 ,null 
-05a9 20228596 branch p_key_send_data_staus_store ,zero 
-05aa 1febfe00 lshift2 pdata ,pdata 
-05ab 20200596 branch p_key_send_data_staus_store 
+05a9 1fed7e00 lshift8 pdata ,pdata 
+05aa 1fe3fe00 lshift pdata ,pdata 
+05ab 6808cb18 fetcht 1 ,mem_2key_model_select_flag 
+05ac 18467c01 sub temp ,0x01 ,null 
+05ad 2022859a branch p_key_send_data_staus_store ,zero 
+05ae 1febfe00 lshift2 pdata ,pdata 
+05af 2020059a branch p_key_send_data_staus_store 
 
 p_key_long_press:
-05ac 68014b20 fetch 2 ,mem_customer_key_store 
-05ad c00185bf beq 0x03 ,p_2key_modle_change 
-05ae c00085b3 beq 0x01 ,p_pageup_key_long_press_cont 
+05b0 68014b20 fetch 2 ,mem_customer_key_store 
+05b1 c00185c3 beq 0x03 ,p_2key_modle_change 
+05b2 c00085b7 beq 0x01 ,p_pageup_key_long_press_cont 
 
 p_long_press_staus_store:
-05af 68014b20 fetch 2 ,mem_customer_key_store 
-05b0 1ff27e00 lshift4 pdata ,pdata 
-05b1 1fe3fe00 lshift pdata ,pdata 
-05b2 20200596 branch p_key_send_data_staus_store 
+05b3 68014b20 fetch 2 ,mem_customer_key_store 
+05b4 1ff27e00 lshift4 pdata ,pdata 
+05b5 1fe3fe00 lshift pdata ,pdata 
+05b6 2020059a branch p_key_send_data_staus_store 
 
 p_pageup_key_long_press_cont:
-05b3 6800cb23 fetch 1 ,mem_pgupkey_long_press_finish 
-05b4 205a05ba call p_pgupkey_long_press_change ,blank 
-05b5 6800cb17 fetch 1 ,mem_pgupkey_long_press_count 
-05b6 c00005af beq 0x00 ,p_long_press_staus_store 
-05b7 68014b20 fetch 2 ,mem_customer_key_store 
-05b8 1ff27e00 lshift4 pdata ,pdata 
-05b9 20200596 branch p_key_send_data_staus_store 
+05b7 6800cb23 fetch 1 ,mem_pgupkey_long_press_finish 
+05b8 205a05be call p_pgupkey_long_press_change ,blank 
+05b9 6800cb17 fetch 1 ,mem_pgupkey_long_press_count 
+05ba c00005b3 beq 0x00 ,p_long_press_staus_store 
+05bb 68014b20 fetch 2 ,mem_customer_key_store 
+05bc 1ff27e00 lshift4 pdata ,pdata 
+05bd 2020059a branch p_key_send_data_staus_store 
 
 p_pgupkey_long_press_change:
-05ba 704b2301 jam 0x01 ,mem_pgupkey_long_press_finish 
-05bb 6800cb17 fetch 1 ,mem_pgupkey_long_press_count 
-05bc 79407e00 setflip 0 ,pdata 
-05bd 6000cb17 store 1 ,mem_pgupkey_long_press_count 
-05be 20600000 rtn 
+05be 704b2301 jam 0x01 ,mem_pgupkey_long_press_finish 
+05bf 6800cb17 fetch 1 ,mem_pgupkey_long_press_count 
+05c0 79407e00 setflip 0 ,pdata 
+05c1 6000cb17 store 1 ,mem_pgupkey_long_press_count 
+05c2 20600000 rtn 
 
 p_2key_modle_change:
-05bf 6800cb24 fetch 1 ,mem_2key_modle_change_finish 
-05c0 247a0000 nrtn blank 
-05c1 704b2401 jam 1 ,mem_2key_modle_change_finish 
-05c2 6800cb18 fetch 1 ,mem_2key_model_select_flag 
-05c3 c00105c7 beq 2 ,p_2key_staus_set0 
-05c4 1fe0fe01 increase 1 ,pdata 
-05c5 6000cb18 store 1 ,mem_2key_model_select_flag 
-05c6 202005c8 branch p_store_key_staus_eeprom 
+05c3 6800cb24 fetch 1 ,mem_2key_modle_change_finish 
+05c4 247a0000 nrtn blank 
+05c5 704b2401 jam 1 ,mem_2key_modle_change_finish 
+05c6 6800cb18 fetch 1 ,mem_2key_model_select_flag 
+05c7 c00105cb beq 2 ,p_2key_staus_set0 
+05c8 1fe0fe01 increase 1 ,pdata 
+05c9 6000cb18 store 1 ,mem_2key_model_select_flag 
+05ca 202005cc branch p_store_key_staus_eeprom 
 
 p_2key_staus_set0:
-05c7 704b1800 jam 0 ,mem_2key_model_select_flag 
+05cb 704b1800 jam 0 ,mem_2key_model_select_flag 
 
 p_store_key_staus_eeprom:
-05c8 da204b18 arg mem_2key_model_select_flag ,rega 
-05c9 da40006a arg mouse_key_staus_eeprom_offset ,regb 
-05ca d8400001 arg 1 ,temp 
-05cb 202065d1 branch iicd_write_protect_eep_data 
+05cc da204b18 arg mem_2key_model_select_flag ,rega 
+05cd da40006a arg mouse_key_staus_eeprom_offset ,regb 
+05ce d8400001 arg 1 ,temp 
+05cf 202065d1 branch iicd_write_protect_eep_data 
 
 p_laser_led_init:
-05cc 6808cb0e fetcht 1 ,mem_filp_laser_led_gpio 
-05cd 2020680e branch gpio_config_output 
+05d0 6808cb0e fetcht 1 ,mem_filp_laser_led_gpio 
+05d1 2020680e branch gpio_config_output 
 
 p_laser_led_on:
-05ce c08804a9 bne 0x10 ,p_laser_led_off 
-05cf 68014b14 fetch 2 ,mem_key_long_press_timer 
-05d0 68094b12 fetcht 2 ,mem_key_long_press_sleep_timer 
-05d1 98467c00 isub temp ,null 
-05d2 202104a9 branch p_laser_led_off ,positive 
-05d3 204005cc call p_laser_led_init 
-05d4 20206829 branch gpio_out_active 
+05d2 c08804ad bne 0x10 ,p_laser_led_off 
+05d3 68014b14 fetch 2 ,mem_key_long_press_timer 
+05d4 68094b12 fetcht 2 ,mem_key_long_press_sleep_timer 
+05d5 98467c00 isub temp ,null 
+05d6 202104ad branch p_laser_led_off ,positive 
+05d7 204005d0 call p_laser_led_init 
+05d8 20206829 branch gpio_out_active 
 
 p_blue_led_init:
-05d5 6808cb0f fetcht 1 ,mem_filp_led_gpio 
-05d6 2020680e branch gpio_config_output 
+05d9 6808cb0f fetcht 1 ,mem_filp_led_gpio 
+05da 2020680e branch gpio_config_output 
 
 p_mouse_24g_customer_key:
-05d7 c6930000 rtnmark0 mark_24g 
-05d8 1a227e00 copy rega ,pdata 
-05d9 207a0000 rtn blank 
-05da 60014ae4 store 2 ,mem_customer_key 
-05db 20207fe7 branch enable_user 
+05db c6930000 rtnmark0 mark_24g 
+05dc 1a227e00 copy rega ,pdata 
+05dd 207a0000 rtn blank 
+05de 60014ae4 store 2 ,mem_customer_key 
+05df 20207fe7 branch enable_user 
 
 p_mouse_bb_event_discovery_btn:
-05dc 280ffe26 isolate1 mark_24g ,mark 
-05dd 20408218 call p_g24_check_51cmd_stop_24g ,true 
-05de 7046b400 jam 0 ,mem_mouse_send_blank_timer 
-05df 6800caaa fetch 1 ,mem_mouse_le_not_tx_disconn 
-05e0 205a4386 call mouse_disconnect ,blank 
-05e1 58000000 setarg 0 
-05e2 600146b0 store 2 ,mem_mouse_no_data_timer 
-05e3 2020426f branch mouse_bb_event_discovery_btn + 3 
+05e0 280ffe26 isolate1 mark_24g ,mark 
+05e1 20408219 call p_g24_check_51cmd_stop_24g ,true 
+05e2 7046b400 jam 0 ,mem_mouse_send_blank_timer 
+05e3 6800caaa fetch 1 ,mem_mouse_le_not_tx_disconn 
+05e4 205a4386 call mouse_disconnect ,blank 
+05e5 58000000 setarg 0 
+05e6 600146b0 store 2 ,mem_mouse_no_data_timer 
+05e7 2020426f branch mouse_bb_event_discovery_btn + 3 
 
 p_mouse_start_discovery:
-05e4 204002bf call p_mouse_tx_power_init 
-05e5 704a9100 jam 0 ,mem_le_send_security_request_flag 
-05e6 704a9e01 jam 1 ,mem_mouse_start_discovery_enable 
-05e7 70472001 jam mode_bt_device1 ,mem_device_flag 
-05e8 70479c00 jam 0 ,mem_mouse_clear_sensor_data_flag 
+05e8 204002c0 call p_mouse_tx_power_init 
+05e9 704a9100 jam 0 ,mem_le_send_security_request_flag 
+05ea 704a9e01 jam 1 ,mem_mouse_start_discovery_enable 
+05eb 70472001 jam mode_bt_device1 ,mem_device_flag 
+05ec 70479c00 jam 0 ,mem_mouse_clear_sensor_data_flag 
 
 p_mouse_start_discovery_norandom:
-05e9 20403418 call app_lpm_mult_disable 
-05ea 68014687 fetch 2 ,mem_discovery_timeout 
-05eb 600146ac store 2 ,mem_mouse_discovery_timer 
-05ec 70016d06 jam 6 ,mem_connection_options 
-05ed 58000000 setarg 0 
-05ee 600146b0 store 2 ,mem_mouse_no_data_timer 
-05ef 600146ae store 2 ,mem_mouse_direct_timer 
-05f0 204005fc call p_mouse_store_eeprom_enable 
-05f1 6800ca9f fetch 1 ,mem_mouse_le_adv_start 
-05f2 245a03ae ncall p_check_51cmd_adv ,blank 
-05f3 202042c4 branch mouse_start_discovery_norandom + 13 
+05ed 20403418 call app_lpm_mult_disable 
+05ee 68014687 fetch 2 ,mem_discovery_timeout 
+05ef 600146ac store 2 ,mem_mouse_discovery_timer 
+05f0 70016d06 jam 6 ,mem_connection_options 
+05f1 58000000 setarg 0 
+05f2 600146b0 store 2 ,mem_mouse_no_data_timer 
+05f3 600146ae store 2 ,mem_mouse_direct_timer 
+05f4 20400600 call p_mouse_store_eeprom_enable 
+05f5 6800ca9f fetch 1 ,mem_mouse_le_adv_start 
+05f6 245a03af ncall p_check_51cmd_adv ,blank 
+05f7 202042c4 branch mouse_start_discovery_norandom + 13 
 
 p_mouse_le_adv_data_update:
-05f4 70436f1f jam 0x1f ,mem_le_adv_data_len 
-05f5 70438f1f jam 0x1f ,mem_le_scan_data_len 
-05f6 204005fc call p_mouse_store_eeprom_enable 
-05f7 d8c04a78 arg mem_le_adv_swift_pair + 7 ,contr 
+05f8 70436f1f jam 0x1f ,mem_le_adv_data_len 
+05f9 70438f1f jam 0x1f ,mem_le_scan_data_len 
+05fa 20400600 call p_mouse_store_eeprom_enable 
+05fb d8c04a78 arg mem_le_adv_swift_pair + 7 ,contr 
 
 p_le_adv_data_update:
-05f8 d8a0437b arg mem_le_adv_data + 11 ,contw 
-05f9 df200013 arg 19 ,loopcnt 
-05fa 20407f01 call memcpy 
-05fb 202057b8 branch le_modified_name_adv 
+05fc d8a0437b arg mem_le_adv_data + 11 ,contw 
+05fd df200013 arg 19 ,loopcnt 
+05fe 20407f01 call memcpy 
+05ff 202057b8 branch le_modified_name_adv 
 
 p_mouse_store_eeprom_enable:
-05fc d8e00007 arg mouse_store_eeprom_flag ,queue 
-05fd 202043ce branch mouse_enable_function_flag 
+0600 d8e00007 arg mouse_store_eeprom_flag ,queue 
+0601 202043ce branch mouse_enable_function_flag 
 
 p_mouse_stop_discovery:
-05fe 58000000 setarg 0 
-05ff 600146ac store 2 ,mem_mouse_discovery_timer 
-0600 704b2b01 jam 1 ,mem_flip_connect_success 
-0601 202042cb branch mouse_stop_discovery + 1 
+0602 58000000 setarg 0 
+0603 600146ac store 2 ,mem_mouse_discovery_timer 
+0604 704b2b01 jam 1 ,mem_flip_connect_success 
+0605 202042cb branch mouse_stop_discovery + 1 
 
 p_le_slave_match:
-0602 6800c50f fetch 1 ,mem_le_md_count 
-0603 1fe0fe01 pincrease 1 
-0604 6000c50f store 1 ,mem_le_md_count 
-0605 c0065395 beq le_md_max_count ,le_slave_cont 
-0606 204055aa call le_acknowledge 
-0607 2040561e call le_prepare_tx 
-0608 2020538f branch le_slave_match + 7 
+0606 6800c50f fetch 1 ,mem_le_md_count 
+0607 1fe0fe01 pincrease 1 
+0608 6000c50f store 1 ,mem_le_md_count 
+0609 c0065395 beq le_md_max_count ,le_slave_cont 
+060a 204055aa call le_acknowledge 
+060b 2040561e call le_prepare_tx 
+060c 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
-0609 68008016 fetch 1 ,mem_le_ch_mapped 
-060a 1fe0fe01 increase 1 ,pdata 
-060b 60008016 store 1 ,mem_le_ch_mapped 
-060c c1940000 rtnne 40 
-060d 70001625 jam 37 ,mem_le_ch_mapped 
-060e 20600000 rtn 
+060d 68008016 fetch 1 ,mem_le_ch_mapped 
+060e 1fe0fe01 increase 1 ,pdata 
+060f 60008016 store 1 ,mem_le_ch_mapped 
+0610 c1940000 rtnne 40 
+0611 70001625 jam 37 ,mem_le_ch_mapped 
+0612 20600000 rtn 
 
 p_le_update_param:
-060f 20400615 call p_mouse_le_conn_param_check 
-0610 2020557d branch le_update_param + 8 
+0613 20400619 call p_mouse_le_conn_param_check 
+0614 2020557d branch le_update_param + 8 
 
 p_mouse_le_lpm_mult_reinit:
-0611 6800c7c5 fetch 1 ,mem_lpm_mult_init 
-0612 6000c172 store 1 ,mem_lpm_mult 
+0615 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+0616 6000c172 store 1 ,mem_lpm_mult 
 
 p_mouse_le_conn_param_lpm_enable:
-0613 7047c400 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
-0614 20600000 rtn 
+0617 7047c400 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+0618 20600000 rtn 
 
 p_mouse_le_conn_param_check:
-0615 6800c3d6 fetch 1 ,mem_le_new_conninterval 
-0616 1fe67c0c sub pdata ,le_interval_15ms ,null 
-0617 242103c4 nbranch p_mouse_le_conn_param_lpm_disable ,positive 
-0618 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-0619 6808c7c5 fetcht 1 ,mem_lpm_mult_init 
-061a 98467c00 isub temp ,null 
-061b 20210611 branch p_mouse_le_lpm_mult_reinit ,positive 
+0619 6800c3d6 fetch 1 ,mem_le_new_conninterval 
+061a 1fe67c0c sub pdata ,le_interval_15ms ,null 
+061b 242103c5 nbranch p_mouse_le_conn_param_lpm_disable ,positive 
 061c 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-061d 6000c172 store 1 ,mem_lpm_mult 
-061e 20200613 branch p_mouse_le_conn_param_lpm_enable 
+061d 6808c7c5 fetcht 1 ,mem_lpm_mult_init 
+061e 98467c00 isub temp ,null 
+061f 20210615 branch p_mouse_le_lpm_mult_reinit ,positive 
+0620 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+0621 6000c172 store 1 ,mem_lpm_mult 
+0622 20200617 branch p_mouse_le_conn_param_lpm_enable 
 
 p_le_update_channel_map:
-061f 6800843f fetch 1 ,mem_le_state 
-0620 c4030000 rtnbit0 lestate_update_map 
-0621 20400624 call p_le_channel_map_overflow_check 
-0622 24740000 nrtn user 
-0623 202055a0 branch le_update_channel_map + 3 
+0623 6800843f fetch 1 ,mem_le_state 
+0624 c4030000 rtnbit0 lestate_update_map 
+0625 20400628 call p_le_channel_map_overflow_check 
+0626 24740000 nrtn user 
+0627 202055a0 branch le_update_channel_map + 3 
 
 p_le_channel_map_overflow_check:
-0624 78347c00 enable user 
-0625 6800845a fetch 1 ,mem_le_event_count + 1 
-0626 1ff1fe00 rshift4 pdata ,pdata 
-0627 c1878000 rtnne 0x0f 
-0628 68008460 fetch 1 ,mem_le_instant + 1 
-0629 1ff1fe00 rshift4 pdata ,pdata 
-062a c1800000 rtnne 0x00 
-062b 20207fe9 branch disable_user 
+0628 78347c00 enable user 
+0629 6800845a fetch 1 ,mem_le_event_count + 1 
+062a 1ff1fe00 rshift4 pdata ,pdata 
+062b c1878000 rtnne 0x0f 
+062c 68008460 fetch 1 ,mem_le_instant + 1 
+062d 1ff1fe00 rshift4 pdata ,pdata 
+062e c1800000 rtnne 0x00 
+062f 20207fe9 branch disable_user 
 
 p_le_prepare_tx:
-062c 68008456 fetch 1 ,mem_le_arq 
-062d c282863f bbit1 wak ,p_le_check_tx_retransmit_setmd 
-062e 6800c78e fetch 1 ,mem_empty_count 
-062f 243a0635 nbranch p_le_send_empyt ,blank 
-0630 6800843f fetch 1 ,mem_le_state 
-0631 c3020639 bbit0 lestate_encryption ,p_le_tx_4 
-0632 680082da fetch 1 ,mem_le_rxbuf + 1 
-0633 203a0639 branch p_le_tx_4 ,blank 
-0634 20205664 branch le_send_empty 
+0630 68008456 fetch 1 ,mem_le_arq 
+0631 c2828643 bbit1 wak ,p_le_check_tx_retransmit_setmd 
+0632 6800c78e fetch 1 ,mem_empty_count 
+0633 243a0639 nbranch p_le_send_empyt ,blank 
+0634 6800843f fetch 1 ,mem_le_state 
+0635 c302063d bbit0 lestate_encryption ,p_le_tx_4 
+0636 680082da fetch 1 ,mem_le_rxbuf + 1 
+0637 203a063d branch p_le_tx_4 ,blank 
+0638 20205664 branch le_send_empty 
 
 p_le_send_empyt:
-0635 6800c78e fetch 1 ,mem_empty_count 
-0636 1fe0ffff increase -1 ,pdata 
-0637 6000c78e store 1 ,mem_empty_count 
-0638 20205664 branch le_send_empty 
+0639 6800c78e fetch 1 ,mem_empty_count 
+063a 1fe0ffff increase -1 ,pdata 
+063b 6000c78e store 1 ,mem_empty_count 
+063c 20205664 branch le_send_empty 
 
 p_le_tx_4:
-0639 6800c4c4 fetch 1 ,mem_le_pairing_state 
-063a c082863c bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-063b 70478e03 jam 3 ,mem_empty_count 
+063d 6800c4c4 fetch 1 ,mem_le_pairing_state 
+063e c0828640 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+063f 70478e03 jam 3 ,mem_empty_count 
 
 p_in_le_tx_4:
-063c 20405892 call le_fifo_check_nearly_full 
-063d 205a0379 call p_mouse_data_pull ,blank 
-063e 20205622 branch le_prepare_tx + 4 
+0640 20405892 call le_fifo_check_nearly_full 
+0641 205a037a call p_mouse_data_pull ,blank 
+0642 20205622 branch le_prepare_tx + 4 
 
 p_le_check_tx_retransmit_setmd:
-063f 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0640 1fe17e03 and pdata ,0x03 ,pdata 
-0641 c1818000 rtnne 0x03 
-0642 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0643 207a0000 rtn blank 
-0644 6800c3dd fetch 1 ,mem_le_txlen 
-0645 207a0000 rtn blank 
-0646 6800c3dc fetch 1 ,mem_le_txheader 
-0647 79207e04 set1 md ,pdata 
-0648 6000c3dc store 1 ,mem_le_txheader 
-0649 20205650 branch le_set_md 
+0643 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0644 1fe17e03 and pdata ,0x03 ,pdata 
+0645 c1818000 rtnne 0x03 
+0646 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+0647 207a0000 rtn blank 
+0648 6800c3dd fetch 1 ,mem_le_txlen 
+0649 207a0000 rtn blank 
+064a 6800c3dc fetch 1 ,mem_le_txheader 
+064b 79207e04 set1 md ,pdata 
+064c 6000c3dc store 1 ,mem_le_txheader 
+064d 20205650 branch le_set_md 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
-064a 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-064b 207a0000 rtn blank 
-064c 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-064d 1fe17e03 and pdata ,0x03 ,pdata 
-064e c1018000 rtneq 0x03 
-064f 7046c60a jam 10 ,mem_le_start_encrypt_timer 
-0650 20600000 rtn 
+064e 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+064f 207a0000 rtn blank 
+0650 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0651 1fe17e03 and pdata ,0x03 ,pdata 
+0652 c1018000 rtneq 0x03 
+0653 7046c60a jam 10 ,mem_le_start_encrypt_timer 
+0654 20600000 rtn 
 
 p_le_parse:
-0651 c6078000 rtnmark1 mark_old_packet 
-0652 20405890 call le_fifo_check_full 
-0653 247a0000 nrtn blank 
-0654 680082d9 fetch 1 ,mem_le_rxbuf 
-0655 1fe17e03 and pdata ,0x3 ,pdata 
-0656 6000c50c store 1 ,mem_le_packet_llid 
-0657 e8c08000 ifetch 1 ,contr 
-0658 1fe17e1f and pdata ,0x1f ,pdata 
-0659 6000c50b store 1 ,mem_le_packet_size 
-065a 207a0000 rtn blank 
-065b 18c27e00 copy contr ,pdata 
-065c 6001450d store 2 ,mem_le_payload_ptr 
-065d 6800c50c fetch 1 ,mem_le_packet_llid 
-065e c0018660 beq llid_le_ll ,p_le_parse_ll 
-065f 2020568d branch le_parse_l2cap 
+0655 c6078000 rtnmark1 mark_old_packet 
+0656 20405890 call le_fifo_check_full 
+0657 247a0000 nrtn blank 
+0658 680082d9 fetch 1 ,mem_le_rxbuf 
+0659 1fe17e03 and pdata ,0x3 ,pdata 
+065a 6000c50c store 1 ,mem_le_packet_llid 
+065b e8c08000 ifetch 1 ,contr 
+065c 1fe17e1f and pdata ,0x1f ,pdata 
+065d 6000c50b store 1 ,mem_le_packet_size 
+065e 207a0000 rtn blank 
+065f 18c27e00 copy contr ,pdata 
+0660 6001450d store 2 ,mem_le_payload_ptr 
+0661 6800c50c fetch 1 ,mem_le_packet_llid 
+0662 c0018664 beq llid_le_ll ,p_le_parse_ll 
+0663 2020568d branch le_parse_l2cap 
 
 p_le_parse_ll:
-0660 680082db fetch 1 ,mem_le_rxbuf + 2 
-0661 c0000664 beq ll_connection_update_req ,p_le_parse_connection_update_req 
-0662 c000866b beq ll_channel_map_req ,p_le_parse_channel_map_req 
-0663 20205c65 branch le_parse_ll + 1 
+0664 680082db fetch 1 ,mem_le_rxbuf + 2 
+0665 c0000668 beq ll_connection_update_req ,p_le_parse_connection_update_req 
+0666 c000866f beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0667 20205c65 branch le_parse_ll + 1 
 
 p_le_parse_connection_update_req:
-0664 20405c7b call le_parse_connection_update_req 
-0665 6800caa7 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
-0666 207a0000 rtn blank 
+0668 20405c7b call le_parse_connection_update_req 
+0669 6800caa7 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
+066a 207a0000 rtn blank 
 
 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
-0667 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-0668 6000c172 store 1 ,mem_lpm_mult 
-0669 6000c7c5 store 1 ,mem_lpm_mult_init 
-066a 20600000 rtn 
+066b 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+066c 6000c172 store 1 ,mem_lpm_mult 
+066d 6000c7c5 store 1 ,mem_lpm_mult_init 
+066e 20600000 rtn 
 
 p_le_parse_channel_map_req:
-066b e8c28000 ifetch 5 ,contr 
-066c 6002c3ce store 5 ,mem_le_new_map 
-066d e8c10000 ifetch 2 ,contr 
-066e 6001045f store 2 ,mem_le_instant 
-066f 20205c8a branch le_parse_channel_map_req + 7 
+066f e8c28000 ifetch 5 ,contr 
+0670 6002c3ce store 5 ,mem_le_new_map 
+0671 e8c10000 ifetch 2 ,contr 
+0672 6001045f store 2 ,mem_le_instant 
+0673 20205c8a branch le_parse_channel_map_req + 7 
 
 p_le_parse_l2cap:
-0670 e8c10000 ifetch 2 ,contr 
-0671 c0020674 beq le_l2cap_cid_att ,p_le_parse_att 
-0672 c0030678 beq le_l2cap_cid_smp ,p_le_parse_smp 
-0673 20205698 branch le_parse_l2cap + 11 
+0674 e8c10000 ifetch 2 ,contr 
+0675 c0020678 beq le_l2cap_cid_att ,p_le_parse_att 
+0676 c003067c beq le_l2cap_cid_smp ,p_le_parse_smp 
+0677 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
-0674 20407ea5 call store_contr 
-0675 2040064a call p_mouse_le_reconn_write_enable_timer_reinit 
-0676 20407e9f call get_contr 
-0677 202058ab branch le_parse_att 
+0678 20407ea5 call store_contr 
+0679 2040064e call p_mouse_le_reconn_write_enable_timer_reinit 
+067a 20407e9f call get_contr 
+067b 202058ab branch le_parse_att 
 
 p_le_parse_smp:
-0678 e8c08000 ifetch 1 ,contr 
-0679 c000867c beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-067a c002867e beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-067b 20205af6 branch le_parse_smp + 2 
+067c e8c08000 ifetch 1 ,contr 
+067d c0008680 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+067e c0028682 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+067f 20205af6 branch le_parse_smp + 2 
 
 p_le_parse_smp_pairing_request:
-067c 704a9101 jam 1 ,mem_le_send_security_request_flag 
-067d 20205b09 branch le_parse_smp_pairing_request 
+0680 704a9101 jam 1 ,mem_le_send_security_request_flag 
+0681 20205b09 branch le_parse_smp_pairing_request 
 
 p_le_parse_smp_pairing_failed:
-067e 20405b5a call le_parse_smp_pairing_failed 
-067f 6800843f fetch 1 ,mem_le_state 
-0680 793ffe05 set0 lestate_update_param ,pdata 
-0681 6000843f store 1 ,mem_le_state 
-0682 20205c8e branch le_parse_terminate_ind 
+0682 20405b5a call le_parse_smp_pairing_failed 
+0683 6800843f fetch 1 ,mem_le_state 
+0684 793ffe05 set0 lestate_update_param ,pdata 
+0685 6000843f store 1 ,mem_le_state 
+0686 20205c8e branch le_parse_terminate_ind 
 
 p_le_adv_not_match:
-0683 68008016 fetch 1 ,mem_le_ch_mapped 
-0684 c093d6f2 bne 39 ,le_adv_loop 
-0685 180a7e00 random pdata 
-0686 d84001ff arg 0x1ff ,temp 
-0687 98417e00 iand temp ,pdata 
-0688 1fe0fefa add pdata ,250 ,pdata 
-0689 20403cbe call delay 
-068a d8e00000 arg le_adv_interval_timer ,queue 
-068b 68014482 fetch 2 ,mem_le_adv_interval 
-068c 20207f08 branch timer_init 
+0687 68008016 fetch 1 ,mem_le_ch_mapped 
+0688 c093d6f2 bne 39 ,le_adv_loop 
+0689 180a7e00 random pdata 
+068a d84001ff arg 0x1ff ,temp 
+068b 98417e00 iand temp ,pdata 
+068c 1fe0fefa add pdata ,250 ,pdata 
+068d 20403cbe call delay 
+068e d8e00000 arg le_adv_interval_timer ,queue 
+068f 68014482 fetch 2 ,mem_le_adv_interval 
+0690 20207f08 branch timer_init 
 
 p_le_lpm_setmult:
-068d 7855fc00 disable wake 
-068e 20370690 branch p_le_lpm_set_mult_attempt ,attempt 
-068f 2436d806 nbranch le_lpm_lost ,match 
+0691 7855fc00 disable wake 
+0692 20370694 branch p_le_lpm_set_mult_attempt ,attempt 
+0693 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-0690 20402bcb call lpm_match 
-0691 680140c1 fetch 2 ,mem_rx_window_sniff 
-0692 6001044d store 2 ,mem_le_receive_window 
-0693 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0694 2fe00603 compare 3 ,pdata ,3 
-0695 2420abde nbranch lpm_mult_short ,true 
-0696 202057fb branch le_lpm_set_mult_attempt + 3 
+0694 20402bcb call lpm_match 
+0695 680140c1 fetch 2 ,mem_rx_window_sniff 
+0696 6001044d store 2 ,mem_le_receive_window 
+0697 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0698 2fe00603 compare 3 ,pdata ,3 
+0699 2420abde nbranch lpm_mult_short ,true 
+069a 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-0697 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-0698 247a0000 nrtn blank 
-0699 68008478 fetch 1 ,mem_le_att_handle 
-069a 1fe67e1a sub pdata ,26 ,pdata 
-069b 24628000 nrtn zero 
-069c 7046c600 jam 0 ,mem_le_start_encrypt_timer 
-069d 20203d60 branch mouse_le_write_enable 
+069b 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+069c 247a0000 nrtn blank 
+069d 68008478 fetch 1 ,mem_le_att_handle 
+069e 1fe67e1a sub pdata ,26 ,pdata 
+069f 24628000 nrtn zero 
+06a0 7046c600 jam 0 ,mem_le_start_encrypt_timer 
+06a1 20203d60 branch mouse_le_write_enable 
 
 p_check_51cmd_once_continue:
-069e 204062bc call lmo_fifo_check 
-069f 243a7ddb nbranch check_51cmd_restore ,blank 
-06a0 68008a99 fetch 1 ,mem_fifo_temp 
-06a1 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-06a2 c00906a4 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-06a3 20207dca branch check_51cmd_once_continue + 2 
+06a2 204062bc call lmo_fifo_check 
+06a3 243a7ddb nbranch check_51cmd_restore ,blank 
+06a4 68008a99 fetch 1 ,mem_fifo_temp 
+06a5 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+06a6 c00906a8 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+06a7 20207dca branch check_51cmd_once_continue + 2 
 
 p_check_51cmd_ble_update_connect_param:
-06a4 20405890 call le_fifo_check_full 
-06a5 247a0000 nrtn blank 
-06a6 20205abf branch le_l2cap_tx_update_req 
+06a8 20405890 call le_fifo_check_full 
+06a9 247a0000 nrtn blank 
+06aa 20205abf branch le_l2cap_tx_update_req 
 
 p_set_freq_tx:
-06a7 60088017 storet 1 ,mem_last_freq 
-06a8 2040292d call set_freq_tx_offset 
-06a9 20402981 call rf_write_freq 
-06aa 58000500 setarg param_pll_setup 
-06ab 20402a8f call sleep 
+06ab 60088017 storet 1 ,mem_last_freq 
+06ac 2040292d call set_freq_tx_offset 
+06ad 20402981 call rf_write_freq 
+06ae 58000500 setarg param_pll_setup 
+06af 20402a8f call sleep 
 
 p_rf_tx_enable:
-06ac 70890601 jam 0x1 ,rfen_adc 
-06ad 7089003c jam 0x3c ,rfen_rx 
-06ae 708901e0 jam 0xe0 ,rfen_tx 
-06af 2000000a nop 10 
-06b0 70890201 jam 0x01 ,rfen_mdm 
-06b1 7089023d jam 0x3d ,rfen_mdm 
-06b2 2000000a nop 10 
-06b3 708903b7 jam 0xb7 ,rfen_sn 
-06b4 2000000a nop 10 
-06b5 7089027d jam 0x7d ,rfen_mdm 
-06b6 6800c1de fetch 1 ,mem_tx_power 
-06b7 c00206c1 beq tx_power_f5db ,p_set_tx_power_f5db 
-06b8 c01006cb beq tx_power_pair ,p_set_tx_power_pair 
+06b0 70890601 jam 0x1 ,rfen_adc 
+06b1 7089003c jam 0x3c ,rfen_rx 
+06b2 708901e0 jam 0xe0 ,rfen_tx 
+06b3 2000000a nop 10 
+06b4 70890201 jam 0x01 ,rfen_mdm 
+06b5 7089023d jam 0x3d ,rfen_mdm 
+06b6 2000000a nop 10 
+06b7 708903b7 jam 0xb7 ,rfen_sn 
+06b8 2000000a nop 10 
+06b9 7089027d jam 0x7d ,rfen_mdm 
+06ba 6800c1de fetch 1 ,mem_tx_power 
+06bb c00206c5 beq tx_power_f5db ,p_set_tx_power_f5db 
+06bc c01006cf beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_5db:
-06b9 70894cfb jam 0xfb ,0x894c 
-06ba 70894def jam 0xef ,0x894d 
-06bb 70894eec jam 0xec ,0x894e 
-06bc 70894f5e jam 0x5e ,0x894f 
-06bd 708955d0 jam 0xd0 ,0x8955 
-06be 708956e0 jam 0xe0 ,0x8956 
-06bf 7089583c jam 0x3c ,0x8958 
-06c0 20202953 branch set_tx_power_5db 
+06bd 70894cfb jam 0xfb ,0x894c 
+06be 70894def jam 0xef ,0x894d 
+06bf 70894eec jam 0xec ,0x894e 
+06c0 70894f5e jam 0x5e ,0x894f 
+06c1 708955d0 jam 0xd0 ,0x8955 
+06c2 708956e0 jam 0xe0 ,0x8956 
+06c3 7089583c jam 0x3c ,0x8958 
+06c4 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-06c1 204006c6 call p_rx_low_sens 
-06c2 708955d0 jam 0xd0 ,0x8955 
-06c3 708956c0 jam 0xc0 ,0x8956 
-06c4 7089586c jam 0x6c ,0x8958 
-06c5 2020295b branch set_tx_power_f5db 
+06c5 204006ca call p_rx_low_sens 
+06c6 708955d0 jam 0xd0 ,0x8955 
+06c7 708956c0 jam 0xc0 ,0x8956 
+06c8 7089586c jam 0x6c ,0x8958 
+06c9 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-06c6 70894c5b jam 0x5b ,0x894c 
-06c7 70894d96 jam 0x96 ,0x894d 
-06c8 70894e2c jam 0x2c ,0x894e 
-06c9 70894f46 jam 0x46 ,0x894f 
-06ca 20600000 rtn 
+06ca 70894c5b jam 0x5b ,0x894c 
+06cb 70894d96 jam 0x96 ,0x894d 
+06cc 70894e2c jam 0x2c ,0x894e 
+06cd 70894f46 jam 0x46 ,0x894f 
+06ce 20600000 rtn 
 
 p_set_tx_power_pair:
-06cb 708956c2 jam 0xc2 ,0x8956 
-06cc 708955d0 jam 0xd0 ,0x8955 
-06cd 20600000 rtn 
+06cf 708956c2 jam 0xc2 ,0x8956 
+06d0 708955d0 jam 0xd0 ,0x8955 
+06d1 20600000 rtn 
 
 p_shutdown_radio:
-06ce 18002a08 force 8 ,radio_ctrl 
-06cf 202028fa branch shutdown_radio + 1 
+06d2 18002a08 force 8 ,radio_ctrl 
+06d3 202028fa branch shutdown_radio + 1 
               org 0x2000
 
 start:
@@ -32870,4 +32876,2151 @@
 797c d8c00a2e arg mem_sp_random_local_end ,contr 
 797d 20407a70 call memcpy_dword_swap4 
 797e 2040790b call sha_init 
-797
\ No newline at end of file
+797f 20407912 call sha 
+7980 d8c00a3e arg mem_sp_random_remote_end ,contr 
+7981 d8a005e6 arg memdat ,contw 
+7982 20407984 call g_common 
+7983 2020798d branch g_common0 
+
+g_common:
+7984 20407a70 call memcpy_dword_swap4 
+7985 58800000 setarg 0x800000 
+7986 1fed7e00 lshift8 pdata ,pdata 
+7987 e0a20000 istore 4 ,contw 
+7988 18007205 force 5 ,loopcnt 
+7989 20407ec6 call memset0 
+798a 58000280 setarg 640 
+798b e0a20000 istore 4 ,contw 
+798c 20207912 branch sha 
+
+g_common0:
+798d 68020a3e fetch 4 ,memresult 
+798e da2003e8 arg 1000 ,rega 
+798f 9a26fc00 idiv rega 
+7990 20407f86 call wait_div_end 
+7991 18077e00 remainder pdata 
+7992 600209ba store 4 ,mem_gkey 
+7993 1807fe00 quotient pdata 
+7994 da2003e8 arg 1000 ,rega 
+7995 9a26fc00 idiv rega 
+7996 20407f86 call wait_div_end 
+7997 18077e00 remainder pdata 
+7998 da2003e8 arg 1000 ,rega 
+7999 9a2ffe00 imul32 rega ,pdata 
+799a 680a09ba fetcht 4 ,mem_gkey 
+799b 9840fe00 iadd temp ,pdata 
+799c 600209ba store 4 ,mem_gkey 
+799d 20600000 rtn 
+
+function_f1_no_key:
+799e 70466400 jam 0 ,mem_passkey_1bit 
+799f 202079a2 branch function_f1_common 
+
+function_f1:
+79a0 6800c662 fetch 1 ,mem_ssp_mode_flag 
+79a1 c081799e bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
+
+function_f1_common:
+79a2 4776c03d bpatchx patch3d_5 ,mem_patch3d 
+79a3 58363636 setarg 0x363636 
+79a4 1fed0400 lshift8 pdata ,temp 
+79a5 18418436 or_into 0x36 ,temp 
+79a6 68010a7e fetch 2 ,mem_sp_prarm_stack 
+79a7 1fe20c00 copy pdata ,contr 
+79a8 18007204 force 4 ,loopcnt 
+79a9 20407955 call pad_xor 
+79aa 2040790b call sha_init 
+79ab 20407912 call sha 
+79ac 68010a80 fetch 2 ,mem_sp_prarm_stack + 2 
+79ad 1fe20c00 copy pdata ,contr 
+79ae d8a005e6 arg memdat ,contw 
+79af 18007206 force 6 ,loopcnt 
+79b0 20407a71 call memcpy_dword_swap 
+79b1 68010a82 fetch 2 ,mem_sp_prarm_stack + 4 
+79b2 1fe20c00 copy pdata ,contr 
+79b3 18007206 force 6 ,loopcnt 
+79b4 20407a71 call memcpy_dword_swap 
+79b5 58800000 setarg 0x800000 
+79b6 e0a18000 istore 3 ,contw 
+79b7 6800c664 fetch 1 ,mem_passkey_1bit 
+79b8 e0a08000 istore 1 ,contw 
+79b9 18007e00 force 0 ,pdata 
+79ba e0a40000 istore 8 ,contw 
+79bb 58000388 setarg 0x0388 
+79bc e0a20000 istore 4 ,contw 
+79bd 20407912 call sha 
+79be 2040794e call sha_result 
+79bf d8c00a3e arg memresult ,contr 
+79c0 d8a00706 arg memahsave ,contw 
+79c1 20407ebd call memcpy32 
+79c2 585c5c5c setarg 0x5c5c5c 
+79c3 1fed0400 lshift8 pdata ,temp 
+79c4 1841845c or_into 0x5c ,temp 
+79c5 68010a7e fetch 2 ,mem_sp_prarm_stack 
+79c6 1fe20c00 copy pdata ,contr 
+79c7 18007204 force 4 ,loopcnt 
+79c8 20407955 call pad_xor 
+79c9 2040790b call sha_init 
+79ca 20407912 call sha 
+79cb d8c00726 arg memahsave_end ,contr 
+79cc d8a005e6 arg memdat ,contw 
+79cd 18007208 force 8 ,loopcnt 
+79ce 20407a71 call memcpy_dword_swap 
+79cf 58800000 setarg 0x800000 
+79d0 1fed7e00 lshift8 pdata ,pdata 
+79d1 e0a20000 istore 4 ,contw 
+79d2 20407ec5 call bn_zero 
+79d3 58000300 setarg 0x0300 
+79d4 e0a20000 istore 4 ,contw 
+79d5 20407912 call sha 
+79d6 2020794e branch sha_result 
+
+function_f2:
+79d7 58363636 setarg 0x363636 
+79d8 1fed0400 lshift8 pdata ,temp 
+79d9 18418436 or_into 0x36 ,temp 
+79da d8c00a1e arg mem_sp_dhkey_end ,contr 
+79db 18007206 force 6 ,loopcnt 
+79dc 20407955 call pad_xor 
+79dd 2040790b call sha_init 
+79de 20407912 call sha 
+79df 68010a8a fetch 2 ,mem_sp_prarm_stack + 12 
+79e0 1fe20c00 copy pdata ,contr 
+79e1 d8a005e6 arg memdat ,contw 
+79e2 20407a70 call memcpy_dword_swap4 
+79e3 68010a8c fetch 2 ,mem_sp_prarm_stack + 14 
+79e4 1fe20c00 copy pdata ,contr 
+79e5 20407a70 call memcpy_dword_swap4 
+79e6 5862746c setarg 0x62746c 
+79e7 1fed7e00 lshift8 pdata ,pdata 
+79e8 1fe1fe6b or_into 0x6b ,pdata 
+79e9 e0a20000 istore 4 ,contw 
+79ea d8c00733 arg mem_addr_value_end ,contr 
+79eb 18007203 force 3 ,loopcnt 
+79ec 20407a71 call memcpy_dword_swap 
+79ed 58800000 setarg 0x800000 
+79ee 1fed7e00 lshift8 pdata ,pdata 
+79ef e0a20000 istore 4 ,contw 
+79f0 18007e00 force 0 ,pdata 
+79f1 e0a40000 istore 8 ,contw 
+79f2 58000380 setarg 0x0380 
+79f3 e0a20000 istore 4 ,contw 
+79f4 20407912 call sha 
+79f5 2040794e call sha_result 
+79f6 d8c00a3e arg memresult ,contr 
+79f7 d8a00706 arg memahsave ,contw 
+79f8 20407ebd call memcpy32 
+79f9 585c5c5c setarg 0x5c5c5c 
+79fa 1fed0400 lshift8 pdata ,temp 
+79fb 1841845c or_into 0x5c ,temp 
+79fc d8c00a1e arg mem_sp_dhkey_end ,contr 
+79fd 18007206 force 6 ,loopcnt 
+79fe 20407955 call pad_xor 
+79ff 2040790b call sha_init 
+7a00 20407912 call sha 
+7a01 d8c00726 arg memahsave_end ,contr 
+7a02 d8a005e6 arg memdat ,contw 
+7a03 18007208 force 8 ,loopcnt 
+7a04 20407a71 call memcpy_dword_swap 
+7a05 58800000 setarg 0x800000 
+7a06 1fed7e00 lshift8 pdata ,pdata 
+7a07 e0a20000 istore 4 ,contw 
+7a08 20407ec5 call bn_zero 
+7a09 58000300 setarg 0x0300 
+7a0a e0a20000 istore 4 ,contw 
+7a0b 20407912 call sha 
+7a0c 2020794e branch sha_result 
+
+function_f3a:
+7a0d 6800c662 fetch 1 ,mem_ssp_mode_flag 
+7a0e c0817a1e bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
+
+function_f3a_common:
+7a0f 4777403d bpatchx patch3d_6 ,mem_patch3d 
+7a10 58363636 setarg 0x363636 
+7a11 1fed0400 lshift8 pdata ,temp 
+7a12 18418436 or_into 0x36 ,temp 
+7a13 d8c00a1e arg mem_sp_dhkey_end ,contr 
+7a14 18007206 force 6 ,loopcnt 
+7a15 20407955 call pad_xor 
+7a16 2040790b call sha_init 
+7a17 20407912 call sha 
+7a18 d8c00a3e arg mem_sp_random_remote_end ,contr 
+7a19 d8a005e6 arg memdat ,contw 
+7a1a 20407a70 call memcpy_dword_swap4 
+7a1b d8c00a2e arg mem_sp_random_local_end ,contr 
+7a1c 20407a70 call memcpy_dword_swap4 
+7a1d 20207a33 branch function_f3_common 
+
+function_f3a_no_pin:
+7a1e 58000000 setarg 0 
+7a1f 6002468a store 4 ,mem_pin 
+7a20 20207a0f branch function_f3a_common 
+
+function_f3b_no_pin:
+7a21 58000000 setarg 0 
+7a22 6002468a store 4 ,mem_pin 
+7a23 20207a26 branch function_f3b_common 
+
+function_f3b:
+7a24 6800c662 fetch 1 ,mem_ssp_mode_flag 
+7a25 c0817a21 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
+
+function_f3b_common:
+7a26 58363636 setarg 0x363636 
+7a27 1fed0400 lshift8 pdata ,temp 
+7a28 18418436 or_into 0x36 ,temp 
+7a29 d8c00a1e arg mem_sp_dhkey_end ,contr 
+7a2a 18007206 force 6 ,loopcnt 
+7a2b 20407955 call pad_xor 
+7a2c 2040790b call sha_init 
+7a2d 20407912 call sha 
+7a2e d8c00a2e arg mem_sp_random_local_end ,contr 
+7a2f d8a005e6 arg memdat ,contw 
+7a30 20407a70 call memcpy_dword_swap4 
+7a31 d8c00a3e arg mem_sp_random_remote_end ,contr 
+7a32 20407a70 call memcpy_dword_swap4 
+
+function_f3_common:
+7a33 58000000 setarg 0x0 
+7a34 e0a40000 istore 8 ,contw 
+7a35 e0a20000 istore 4 ,contw 
+7a36 6802468a fetch 4 ,mem_pin 
+7a37 e0a20000 istore 4 ,contw 
+7a38 18a20400 copy contw ,temp 
+7a39 70072680 jam 0x80 ,mem_addr_padding 
+7a3a 18420a00 copy temp ,contw 
+7a3b d8c00736 arg mem_addr_iocap_end ,contr 
+7a3c 20407a70 call memcpy_dword_swap4 
+7a3d 20407912 call sha 
+7a3e d8a005e6 arg memdat ,contw 
+7a3f 18007207 force 7 ,loopcnt 
+7a40 20407ec6 call memset0 
+7a41 e0a20000 istore 4 ,contw 
+7a42 580003f8 setarg 0x03F8 
+7a43 e0a20000 istore 4 ,contw 
+7a44 20407912 call sha 
+7a45 2040794e call sha_result 
+7a46 d8c00a3e arg memresult ,contr 
+7a47 d8a00706 arg memahsave ,contw 
+7a48 20407ebd call memcpy32 
+7a49 585c5c5c setarg 0x5c5c5c 
+7a4a 1fed0400 lshift8 pdata ,temp 
+7a4b 1841845c or_into 0x5c ,temp 
+7a4c d8c00a1e arg mem_sp_dhkey_end ,contr 
+7a4d 18007206 force 6 ,loopcnt 
+7a4e 20407955 call pad_xor 
+7a4f 2040790b call sha_init 
+7a50 20407912 call sha 
+7a51 d8c00726 arg memahsave_end ,contr 
+7a52 d8a005e6 arg memdat ,contw 
+7a53 18007208 force 8 ,loopcnt 
+7a54 20407a71 call memcpy_dword_swap 
+7a55 58800000 setarg 0x800000 
+7a56 1fed7e00 lshift8 pdata ,pdata 
+7a57 e0a20000 istore 4 ,contw 
+7a58 20407ec5 call bn_zero 
+7a59 58000300 setarg 0x0300 
+7a5a e0a20000 istore 4 ,contw 
+7a5b 20407912 call sha 
+7a5c 2020794e branch sha_result 
+
+eckp_calc_init:
+7a5d 7005e3c0 jam 192 ,mem_ec_loopc 
+
+eckp_calc_init_1:
+7a5e 680085e3 fetch 1 ,mem_ec_loopc 
+7a5f 207a0000 rtn blank 
+7a60 1fe0ffff increase -1 ,pdata 
+7a61 600085e3 store 1 ,mem_ec_loopc 
+7a62 d8c006be arg mem_k ,contr 
+7a63 204076ec call bn_testbit 
+7a64 2020fa5e branch eckp_calc_init_1 ,true 
+7a65 d8c005e6 arg mem_ax ,contr 
+7a66 d8a00676 arg mem_cx ,contw 
+7a67 202076f2 branch ec_copy 
+
+eckp_calc:
+7a68 20407803 call ecdbl 
+7a69 680085e3 fetch 1 ,mem_ec_loopc 
+7a6a 1fe0ffff increase -1 ,pdata 
+7a6b 600085e3 store 1 ,mem_ec_loopc 
+7a6c d8c006be arg mem_k ,contr 
+7a6d 204076ec call bn_testbit 
+7a6e 20608000 rtn true 
+7a6f 20207854 branch ecadd 
+
+memcpy_dword_swap4:
+7a70 18007204 force 4 ,loopcnt 
+
+memcpy_dword_swap:
+7a71 18c08dfc increase -4 ,contr 
+
+memcpy_dword_swap_loop:
+7a72 e8c20000 ifetch 4 ,contr 
+7a73 e0a20000 istore 4 ,contw 
+7a74 18c08df8 increase -8 ,contr 
+7a75 c2007a72 loop memcpy_dword_swap_loop 
+7a76 20600000 rtn 
+
+sp_initialize_256:
+7a77 4777c03d bpatchx patch3d_7 ,mem_patch3d 
+7a78 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+7a79 203a5af0 branch le_secure_connection_disable ,blank 
+7a7a 20405aec call le_secure_connection_enable 
+7a7b 20407583 call sp_clear_flags 
+7a7c 20207a7d branch sp_pubkey_calc_256 
+
+sp_pubkey_calc_256:
+7a7d 6800c4c3 fetch 1 ,mem_le_sc_local_key_invalid 
+7a7e c1800000 rtnne sp_key_invalid 
+7a7f 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7a80 c1800000 rtnne sp_calc_standby 
+7a81 d8a045b2 arg mem_le_private_key_256 ,contw 
+7a82 18000e0f force 15 ,queue 
+7a83 204076a2 call random_generator 
+7a84 180a7e00 random pdata 
+7a85 1fe37e00 rshift pdata ,pdata 
+7a86 e0a10000 istore 2 ,contw 
+7a87 d8a00766 arg mem_k_256 ,contw 
+7a88 d8c045b2 arg mem_le_private_key_256 ,contr 
+7a89 20407ebd call memcpy32 
+7a8a d8a00646 arg mem_ax_256 ,contw 
+7a8b d8c0095e arg mem_gx_256 ,contr 
+7a8c 20407eb3 call memcpy64 
+7a8d d8a00686 arg mem_az_256 ,contw 
+7a8e 20407ed0 call clear_mem_256 
+7a8f 70068601 jam 1 ,mem_az_256 
+7a90 20407ac7 call eckp_calc_init_256 
+7a91 7044c003 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
+7a92 20600000 rtn 
+
+sp_pubkey_generated_256:
+7a93 d8a045d2 arg mem_le_pubkey_local_x_256 ,contw 
+7a94 d8c006a6 arg mem_bx_256 ,contr 
+7a95 20407eb3 call memcpy64 
+7a96 7044c303 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
+7a97 7044c000 jam sp_calc_standby ,mem_le_sc_calc 
+7a98 20600000 rtn 
+
+sp_dhkey_calc_256:
+7a99 680089b9 fetch 1 ,mem_sp_dhkey_invalid 
+7a9a c1800000 rtnne sp_key_invalid 
+7a9b 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7a9c c1800000 rtnne sp_calc_standby 
+7a9d d8a00766 arg mem_k_256 ,contw 
+7a9e d8c045b2 arg mem_le_private_key_256 ,contr 
+7a9f 20407ebd call memcpy32 
+7aa0 d8a00646 arg mem_ax_256 ,contw 
+7aa1 d8c009be arg mem_le_pubkey_remote_x_256 ,contr 
+7aa2 20407eb3 call memcpy64 
+7aa3 d8a00686 arg mem_az_256 ,contw 
+7aa4 20407ed0 call clear_mem_256 
+7aa5 70068601 jam 1 ,mem_az_256 
+7aa6 20407ac7 call eckp_calc_init_256 
+7aa7 7044c004 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
+7aa8 20600000 rtn 
+
+sp_dhkey_generated_256:
+7aa9 d8a009fe arg mem_le_dhkey_256 ,contw 
+7aaa d8c006a6 arg mem_bx_256 ,contr 
+7aab 20407ebd call memcpy32 
+7aac 7009b903 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
+7aad 7044c000 jam sp_calc_standby ,mem_le_sc_calc 
+7aae 20600000 rtn 
+
+sp_calc_sequence_256:
+7aaf 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+7ab0 207a0000 rtn blank 
+7ab1 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7ab2 207a0000 rtn blank 
+7ab3 1fe0fe80 increase 0x80 ,pdata 
+7ab4 6000c4c0 store 1 ,mem_le_sc_calc 
+7ab5 c3838000 rtnbit1 7 
+7ab6 680105e3 fetch 2 ,mem_ec_loopc 
+7ab7 203a7ab9 branch sp_calc_sequence_done_256 ,blank 
+7ab8 20207abf branch eckp_calc_256 
+
+sp_calc_sequence_done_256:
+7ab9 4778403e bpatchx patch3e_0 ,mem_patch3e 
+7aba 20407ad4 call ecunmapz_256 
+7abb 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7abc c001fa93 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
+7abd c0027aa9 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
+7abe 20600000 rtn 
+
+eckp_calc_256:
+7abf 20407ae6 call ecdbl_256 
+7ac0 680105e3 fetch 2 ,mem_ec_loopc 
+7ac1 1fe0ffff increase -1 ,pdata 
+7ac2 600105e3 store 2 ,mem_ec_loopc 
+7ac3 d8c00766 arg mem_k_256 ,contr 
+7ac4 204076ec call bn_testbit 
+7ac5 20608000 rtn true 
+7ac6 20207b37 branch ecadd_256 
+
+eckp_calc_init_256:
+7ac7 4778c03e bpatchx patch3e_1 ,mem_patch3e 
+7ac8 58000100 setarg 256 ,pdata 
+7ac9 600105e3 store 2 ,mem_ec_loopc 
+
+eckp_calc_init_256_1:
+7aca 680105e3 fetch 2 ,mem_ec_loopc 
+7acb 207a0000 rtn blank 
+7acc 1fe0ffff increase -1 ,pdata 
+7acd 600105e3 store 2 ,mem_ec_loopc 
+7ace d8c00766 arg mem_k_256 ,contr 
+7acf 204076ec call bn_testbit 
+7ad0 2020faca branch eckp_calc_init_256_1 ,true 
+7ad1 d8c00646 arg mem_ax_256 ,contr 
+7ad2 d8a00706 arg mem_cx_256 ,contw 
+7ad3 20207eb2 branch memcpy96 
+
+ecunmapz_256:
+7ad4 da200746 arg mem_cz_256 ,rega 
+7ad5 d8a00846 arg mem_t3_256 ,contw 
+7ad6 20407ba3 call bn_invmod_256 
+7ad7 da200846 arg mem_t3_256 ,rega 
+7ad8 d8a007e6 arg mem_t1_256 ,contw 
+7ad9 20407c79 call bn_sqrmod_256 
+7ada da200706 arg mem_cx_256 ,rega 
+7adb da4007e6 arg mem_t1_256 ,regb 
+7adc d8a006a6 arg mem_bx_256 ,contw 
+7add 20407be1 call bn_mulmod_256 
+7ade da200846 arg mem_t3_256 ,rega 
+7adf da4007e6 arg mem_t1_256 ,regb 
+7ae0 d8a00826 arg mem_t2_256 ,contw 
+7ae1 20407be1 call bn_mulmod_256 
+7ae2 da200726 arg mem_cy_256 ,rega 
+7ae3 da400826 arg mem_t2_256 ,regb 
+7ae4 d8a006c6 arg mem_by_256 ,contw 
+7ae5 20207be1 branch bn_mulmod_256 
+
+ecdbl_256:
+7ae6 da200746 arg mem_cz_256 ,rega 
+7ae7 d8a00826 arg mem_t2_256 ,contw 
+7ae8 20407c79 call bn_sqrmod_256 
+7ae9 da200826 arg mem_t2_256 ,rega 
+7aea d8a00846 arg mem_t3_256 ,contw 
+7aeb 20407c79 call bn_sqrmod_256 
+7aec da20093e arg mem_a_256 ,rega 
+7aed da400846 arg mem_t3_256 ,regb 
+7aee d8a00846 arg mem_t3_256 ,contw 
+7aef 20407be1 call bn_mulmod_256 
+7af0 da200706 arg mem_cx_256 ,rega 
+7af1 d8a00826 arg mem_t2_256 ,contw 
+7af2 20407c79 call bn_sqrmod_256 
+7af3 d8c00826 arg mem_t2_256 ,contr 
+7af4 d8a007e6 arg mem_t1_256 ,contw 
+7af5 20407ebd call memcpy32 
+7af6 da2007e6 arg mem_t1_256 ,rega 
+7af7 20407c80 call bn_lshiftmod_256 
+7af8 da200826 arg mem_t2_256 ,rega 
+7af9 da4007e6 arg mem_t1_256 ,regb 
+7afa d8a00826 arg mem_t2_256 ,contw 
+7afb 20407c7d call bn_addmod_256 
+7afc da200826 arg mem_t2_256 ,rega 
+7afd da400846 arg mem_t3_256 ,regb 
+7afe d8a00826 arg mem_t2_256 ,contw 
+7aff 20407c7d call bn_addmod_256 
+7b00 d8c00706 arg mem_cx_256 ,contr 
+7b01 d8a007e6 arg mem_t1_256 ,contw 
+7b02 20407ebd call memcpy32 
+7b03 da200726 arg mem_cy_256 ,rega 
+7b04 d8a00846 arg mem_t3_256 ,contw 
+7b05 20407c79 call bn_sqrmod_256 
+7b06 da2007e6 arg mem_t1_256 ,rega 
+7b07 20407c80 call bn_lshiftmod_256 
+7b08 da2007e6 arg mem_t1_256 ,rega 
+7b09 20407c80 call bn_lshiftmod_256 
+7b0a da2007e6 arg mem_t1_256 ,rega 
+7b0b da400846 arg mem_t3_256 ,regb 
+7b0c d8a007e6 arg mem_t1_256 ,contw 
+7b0d 20407be1 call bn_mulmod_256 
+7b0e da200846 arg mem_t3_256 ,rega 
+7b0f d8a00806 arg mem_t0_256 ,contw 
+7b10 20407c79 call bn_sqrmod_256 
+7b11 da200806 arg mem_t0_256 ,rega 
+7b12 20407c80 call bn_lshiftmod_256 
+7b13 da200806 arg mem_t0_256 ,rega 
+7b14 20407c80 call bn_lshiftmod_256 
+7b15 da200806 arg mem_t0_256 ,rega 
+7b16 20407c80 call bn_lshiftmod_256 
+7b17 d8c00726 arg mem_cy_256 ,contr 
+7b18 d8a00846 arg mem_t3_256 ,contw 
+7b19 20407ebd call memcpy32 
+7b1a da200846 arg mem_t3_256 ,rega 
+7b1b 20407c80 call bn_lshiftmod_256 
+7b1c da200846 arg mem_t3_256 ,rega 
+7b1d da400746 arg mem_cz_256 ,regb 
+7b1e d8a00746 arg mem_cz_256 ,contw 
+7b1f 20407be1 call bn_mulmod_256 
+7b20 da200826 arg mem_t2_256 ,rega 
+7b21 d8a00846 arg mem_t3_256 ,contw 
+7b22 20407c79 call bn_sqrmod_256 
+7b23 da200846 arg mem_t3_256 ,rega 
+7b24 da4007e6 arg mem_t1_256 ,regb 
+7b25 d8a00846 arg mem_t3_256 ,contw 
+7b26 20407c96 call bn_submod_256 
+7b27 da200846 arg mem_t3_256 ,rega 
+7b28 da4007e6 arg mem_t1_256 ,regb 
+7b29 d8a00706 arg mem_cx_256 ,contw 
+7b2a 20407c96 call bn_submod_256 
+7b2b da2007e6 arg mem_t1_256 ,rega 
+7b2c da400706 arg mem_cx_256 ,regb 
+7b2d d8a00846 arg mem_t3_256 ,contw 
+7b2e 20407c96 call bn_submod_256 
+7b2f da200846 arg mem_t3_256 ,rega 
+7b30 da400826 arg mem_t2_256 ,regb 
+7b31 d8a00846 arg mem_t3_256 ,contw 
+7b32 20407be1 call bn_mulmod_256 
+7b33 da200846 arg mem_t3_256 ,rega 
+7b34 da400806 arg mem_t0_256 ,regb 
+7b35 d8a00726 arg mem_cy_256 ,contw 
+7b36 20207c96 branch bn_submod_256 
+
+ecadd_256:
+7b37 da200686 arg mem_az_256 ,rega 
+7b38 d8a00866 arg mem_t7_256 ,contw 
+7b39 20407c79 call bn_sqrmod_256 
+7b3a da200706 arg mem_cx_256 ,rega 
+7b3b da400866 arg mem_t7_256 ,regb 
+7b3c d8a00806 arg mem_t0_256 ,contw 
+7b3d 20407be1 call bn_mulmod_256 
+7b3e da200686 arg mem_az_256 ,rega 
+7b3f da400866 arg mem_t7_256 ,regb 
+7b40 d8a00866 arg mem_t7_256 ,contw 
+7b41 20407be1 call bn_mulmod_256 
+7b42 da200726 arg mem_cy_256 ,rega 
+7b43 da400866 arg mem_t7_256 ,regb 
+7b44 d8a007e6 arg mem_t1_256 ,contw 
+7b45 20407be1 call bn_mulmod_256 
+7b46 da200746 arg mem_cz_256 ,rega 
+7b47 d8a00866 arg mem_t7_256 ,contw 
+7b48 20407c79 call bn_sqrmod_256 
+7b49 da200646 arg mem_ax_256 ,rega 
+7b4a da400866 arg mem_t7_256 ,regb 
+7b4b d8a00826 arg mem_t2_256 ,contw 
+7b4c 20407be1 call bn_mulmod_256 
+7b4d da200746 arg mem_cz_256 ,rega 
+7b4e da400866 arg mem_t7_256 ,regb 
+7b4f d8a00866 arg mem_t7_256 ,contw 
+7b50 20407be1 call bn_mulmod_256 
+7b51 da200666 arg mem_ay_256 ,rega 
+7b52 da400866 arg mem_t7_256 ,regb 
+7b53 d8a00846 arg mem_t3_256 ,contw 
+7b54 20407be1 call bn_mulmod_256 
+7b55 da400806 arg mem_t0_256 ,regb 
+7b56 da200826 arg mem_t2_256 ,rega 
+7b57 d8a00866 arg mem_t7_256 ,contw 
+7b58 20407c96 call bn_submod_256 
+7b59 da200806 arg mem_t0_256 ,rega 
+7b5a da400826 arg mem_t2_256 ,regb 
+7b5b d8a00806 arg mem_t0_256 ,contw 
+7b5c 20407c7d call bn_addmod_256 
+7b5d da4007e6 arg mem_t1_256 ,regb 
+7b5e da200846 arg mem_t3_256 ,rega 
+7b5f d8a00826 arg mem_t2_256 ,contw 
+7b60 20407c96 call bn_submod_256 
+7b61 da2007e6 arg mem_t1_256 ,rega 
+7b62 da400846 arg mem_t3_256 ,regb 
+7b63 d8a007e6 arg mem_t1_256 ,contw 
+7b64 20407c7d call bn_addmod_256 
+7b65 da2007e6 arg mem_t1_256 ,rega 
+7b66 da400866 arg mem_t7_256 ,regb 
+7b67 d8a007e6 arg mem_t1_256 ,contw 
+7b68 20407be1 call bn_mulmod_256 
+7b69 da200746 arg mem_cz_256 ,rega 
+7b6a da400686 arg mem_az_256 ,regb 
+7b6b d8a00846 arg mem_t3_256 ,contw 
+7b6c 20407be1 call bn_mulmod_256 
+7b6d da200846 arg mem_t3_256 ,rega 
+7b6e da400866 arg mem_t7_256 ,regb 
+7b6f d8a00746 arg mem_cz_256 ,contw 
+7b70 20407be1 call bn_mulmod_256 
+7b71 da200866 arg mem_t7_256 ,rega 
+7b72 d8a00866 arg mem_t7_256 ,contw 
+7b73 20407c79 call bn_sqrmod_256 
+7b74 da200866 arg mem_t7_256 ,rega 
+7b75 da400806 arg mem_t0_256 ,regb 
+7b76 d8a00846 arg mem_t3_256 ,contw 
+7b77 20407be1 call bn_mulmod_256 
+7b78 da200866 arg mem_t7_256 ,rega 
+7b79 da4007e6 arg mem_t1_256 ,regb 
+7b7a d8a007e6 arg mem_t1_256 ,contw 
+7b7b 20407be1 call bn_mulmod_256 
+7b7c da200826 arg mem_t2_256 ,rega 
+7b7d d8a00706 arg mem_cx_256 ,contw 
+7b7e 20407c79 call bn_sqrmod_256 
+7b7f da200706 arg mem_cx_256 ,rega 
+7b80 da400846 arg mem_t3_256 ,regb 
+7b81 d8a00706 arg mem_cx_256 ,contw 
+7b82 20407c96 call bn_submod_256 
+7b83 d8c00706 arg mem_cx_256 ,contr 
+7b84 d8a00866 arg mem_t7_256 ,contw 
+7b85 20407ebd call memcpy32 
+7b86 da200866 arg mem_t7_256 ,rega 
+7b87 20407c80 call bn_lshiftmod_256 
+7b88 da200846 arg mem_t3_256 ,rega 
+7b89 da400866 arg mem_t7_256 ,regb 
+7b8a d8a00846 arg mem_t3_256 ,contw 
+7b8b 20407c96 call bn_submod_256 
+7b8c da200846 arg mem_t3_256 ,rega 
+7b8d da400826 arg mem_t2_256 ,regb 
+7b8e d8a00826 arg mem_t2_256 ,contw 
+7b8f 20407be1 call bn_mulmod_256 
+7b90 da200826 arg mem_t2_256 ,rega 
+7b91 da4007e6 arg mem_t1_256 ,regb 
+7b92 d8a00726 arg mem_cy_256 ,contw 
+7b93 20407c96 call bn_submod_256 
+7b94 da200726 arg mem_cy_256 ,rega 
+7b95 da40091e arg mem_p_256 ,regb 
+7b96 d8a00726 arg mem_cy_256 ,contw 
+7b97 18002600 force 0 ,regc 
+7b98 68008726 fetch 1 ,mem_cy_256 
+7b99 2feffe00 isolate1 0 ,pdata 
+7b9a 2040fc7b call bn_add_256 ,true 
+7b9b 1a626000 copy regc ,alarm 
+7b9c da200726 arg mem_cy_256 ,rega 
+7b9d 20407cab call bn_rshift_256 
+7b9e 68008745 fetch 1 ,mem_cy5_256 
+7b9f 2e0ffe00 isolate1 0 ,alarm 
+7ba0 7920fe07 setflag true ,7 ,pdata 
+7ba1 60008745 store 1 ,mem_cy5_256 
+7ba2 20600000 rtn 
+
+bn_invmod_256:
+7ba3 18a21600 copy contw ,timeup 
+7ba4 d8a00806 arg mem_tmp0_256 ,contw 
+7ba5 20407ed0 call clear_mem_256 
+7ba6 18007e00 force 0 ,pdata 
+7ba7 60020826 store 4 ,mem_t2_256 
+7ba8 70080601 jam 1 ,mem_tmp0_256 
+7ba9 d8a00786 arg mem_tmp1_256 ,contw 
+7baa 20407ed2 call clear_mem_512 
+7bab d8c0091e arg mem_p_256 ,contr 
+7bac d8a007c6 arg mem_tmp2_256 ,contw 
+7bad 20407ebd call memcpy32 
+7bae 1a220c00 copy rega ,contr 
+7baf d8a007e6 arg mem_tmp3_256 ,contw 
+7bb0 20407ebd call memcpy32 
+
+bn_invmod_256_2:
+7bb1 d8c007e6 arg mem_tmp3_256 ,contr 
+7bb2 20407cb5 call bn_eq_zero_256 
+7bb3 203a7bda branch bn_invmod_256_0 ,blank 
+7bb4 da2007e6 arg mem_tmp3_256 ,rega 
+7bb5 da400806 arg mem_tmp0_256 ,regb 
+7bb6 20407cb8 call bn_rshifteven_256 
+7bb7 da2007c6 arg mem_tmp2_256 ,rega 
+7bb8 da400786 arg mem_tmp1_256 ,regb 
+7bb9 20407cb8 call bn_rshifteven_256 
+7bba da2007e6 arg mem_tmp3_256 ,rega 
+7bbb da4007c6 arg mem_tmp2_256 ,regb 
+7bbc 20407cb1 call bn_bigeq_256 
+7bbd 20217bcc branch bn_invmod_256_1 ,positive 
+7bbe da2007c6 arg mem_tmp2_256 ,rega 
+7bbf da4007e6 arg mem_tmp3_256 ,regb 
+7bc0 1a220a00 copy rega ,contw 
+7bc1 20407ca9 call bn_sub_256 
+7bc2 da200806 arg mem_tmp0_256 ,rega 
+7bc3 da400786 arg mem_tmp1_256 ,regb 
+7bc4 1a420a00 copy regb ,contw 
+7bc5 20407c7b call bn_add_256 
+7bc6 ea208000 ifetch 1 ,rega 
+7bc7 9a60a600 iadd regc ,regc 
+7bc8 ea408000 ifetch 1 ,regb 
+7bc9 9a60fe00 iadd regc ,pdata 
+7bca e2408000 istore 1 ,regb 
+7bcb 20207bb1 branch bn_invmod_256_2 
+
+bn_invmod_256_1:
+7bcc da2007e6 arg mem_tmp3_256 ,rega 
+7bcd da4007c6 arg mem_tmp2_256 ,regb 
+7bce 1a220a00 copy rega ,contw 
+7bcf 20407ca9 call bn_sub_256 
+7bd0 da200786 arg mem_tmp1_256 ,rega 
+7bd1 da400806 arg mem_tmp0_256 ,regb 
+7bd2 1a420a00 copy regb ,contw 
+7bd3 20407c7b call bn_add_256 
+7bd4 ea208000 ifetch 1 ,rega 
+7bd5 9a60a600 iadd regc ,regc 
+7bd6 ea408000 ifetch 1 ,regb 
+7bd7 9a60fe00 iadd regc ,pdata 
+7bd8 e2408000 istore 1 ,regb 
+7bd9 20207bb1 branch bn_invmod_256_2 
+
+bn_invmod_256_0:
+7bda da200786 arg mem_tmp1_256 ,rega 
+7bdb 19620a00 copy timeup ,contw 
+7bdc 20407c0a call bn_p256mod 
+7bdd da20091e arg mem_p_256 ,rega 
+7bde 19622400 copy timeup ,regb 
+7bdf 19620a00 copy timeup ,contw 
+7be0 20207c96 branch bn_submod_256 
+
+bn_mulmod_256:
+7be1 18a21600 copy contw ,timeup 
+7be2 18007000 force 0 ,regext_index 
+7be3 d8a00786 arg mem_tmp1_256 ,contw 
+7be4 20407ed2 call clear_mem_512 
+7be5 d8a00ad2 arg mem_regext ,contw 
+7be6 20407ed2 call clear_mem_512 
+7be7 1a220c00 copy rega ,contr 
+7be8 700ad200 jam 0 ,mem_regext 
+7be9 58000000 setarg 0 
+7bea 20407c73 call bn_load_mem 
+7beb 1a420c00 copy regb ,contr 
+7bec 20407c77 call bn_load_256 
+7bed 18000e00 force 0 ,queue 
+7bee d8a00786 arg mem_tmp1_256 ,contw 
+
+bn_mulmod_256_1:
+7bef d8400ad2 arg mem_regext ,temp 
+7bf0 18e22400 copy queue ,regb 
+7bf1 1a4bfe00 lshift2 regb ,pdata 
+7bf2 9840a400 iadd temp ,regb 
+7bf3 18000400 force 0 ,temp 
+7bf4 18002600 force 0 ,regc 
+
+bn_mulmod_256_0:
+7bf5 e8a20000 ifetch 4 ,contw 
+7bf6 98002200 iforce rega 
+7bf7 ea420000 ifetch 4 ,regb 
+7bf8 1a627000 copy regc ,regext_index 
+7bf9 9deffe00 imul32 regext ,pdata 
+7bfa 9a20fe00 iadd rega ,pdata 
+7bfb 9840fe00 iadd temp ,pdata 
+7bfc e0a20000 istore 4 ,contw 
+7bfd 1fef0400 rshift32 pdata ,temp 
+7bfe 1a60a601 increase 1 ,regc 
+7bff 2a61fe08 compare 8 ,regc ,0xff 
+7c00 2420fbf5 nbranch bn_mulmod_256_0 ,true 
+7c01 18427e00 deposit temp 
+7c02 e0a20000 istore 4 ,contw 
+7c03 18a08be0 increase -32 ,contw 
+7c04 18e08e01 increase 1 ,queue 
+7c05 28e1fe08 compare 8 ,queue ,0xff 
+7c06 2420fbef nbranch bn_mulmod_256_1 ,true 
+7c07 da200786 arg mem_tmp1_256 ,rega 
+7c08 19620a00 copy timeup ,contw 
+7c09 20207c0a branch bn_p256mod 
+
+bn_p256mod:
+7c0a 4779403e bpatchx patch3e_2 ,mem_patch3e 
+7c0b 18a21600 copy contw ,timeup 
+7c0c 1a226000 copy rega ,alarm 
+7c0d da4007c6 arg mem_tmp2_256 ,regb 
+7c0e 1a420a00 copy regb ,contw 
+7c0f 20407ecd call memset0_4 
+7c10 e0a40000 istore 8 ,contw 
+7c11 1a208c2c add rega ,44 ,contr 
+7c12 20407eb9 call memcpy8 
+7c13 20407eb5 call memcpy12 
+7c14 1a422200 copy regb ,rega 
+7c15 20407c80 call bn_lshiftmod_256 
+7c16 da4007c6 arg mem_tmp2_256 ,regb 
+7c17 1e022200 copy alarm ,rega 
+7c18 19620a00 copy timeup ,contw 
+7c19 20407c7d call bn_addmod_256 
+7c1a da4007c6 arg mem_tmp2_256 ,regb 
+7c1b 1a420a00 copy regb ,contw 
+7c1c 20407ecd call memset0_4 
+7c1d e0a40000 istore 8 ,contw 
+7c1e 1e008c30 add alarm ,48 ,contr 
+7c1f 20407ebf call memcpy16 
+7c20 20407ecd call memset0_4 
+7c21 1a422200 copy regb ,rega 
+7c22 20407c80 call bn_lshiftmod_256 
+7c23 da4007c6 arg mem_tmp2_256 ,regb 
+7c24 19622200 copy timeup ,rega 
+7c25 1a220a00 copy rega ,contw 
+7c26 20407c7d call bn_addmod_256 
+7c27 da4007c6 arg mem_tmp2_256 ,regb 
+7c28 1a420a00 copy regb ,contw 
+7c29 1e008c20 add alarm ,32 ,contr 
+7c2a 20407eb5 call memcpy12 
+7c2b 20407ecd call memset0_4 
+7c2c e0a40000 istore 8 ,contw 
+7c2d 1e008c38 add alarm ,56 ,contr 
+7c2e 20407eb9 call memcpy8 
+7c2f 19622200 copy timeup ,rega 
+7c30 1a220a00 copy rega ,contw 
+7c31 20407c7d call bn_addmod_256 
+7c32 da4007c6 arg mem_tmp2_256 ,regb 
+7c33 1a420a00 copy regb ,contw 
+7c34 1e008c24 add alarm ,36 ,contr 
+7c35 20407eb5 call memcpy12 
+7c36 1e008c34 add alarm ,52 ,contr 
+7c37 20407eb5 call memcpy12 
+7c38 1e008c34 add alarm ,52 ,contr 
+7c39 20407eb6 call memcpy4 
+7c3a 1e008c20 add alarm ,32 ,contr 
+7c3b 20407eb6 call memcpy4 
+7c3c 19622200 copy timeup ,rega 
+7c3d 1a220a00 copy rega ,contw 
+7c3e 20407c7d call bn_addmod_256 
+7c3f da4007c6 arg mem_tmp2_256 ,regb 
+7c40 1a420a00 copy regb ,contw 
+7c41 1e008c2c add alarm ,44 ,contr 
+7c42 20407eb5 call memcpy12 
+7c43 20407ecd call memset0_4 
+7c44 e0a40000 istore 8 ,contw 
+7c45 1e008c20 add alarm ,32 ,contr 
+7c46 20407eb6 call memcpy4 
+7c47 1e008c28 add alarm ,40 ,contr 
+7c48 20407eb6 call memcpy4 
+7c49 19622200 copy timeup ,rega 
+7c4a 1a220a00 copy rega ,contw 
+7c4b 20407c96 call bn_submod_256 
+7c4c da4007c6 arg mem_tmp2_256 ,regb 
+7c4d 1a420a00 copy regb ,contw 
+7c4e 1e008c30 add alarm ,48 ,contr 
+7c4f 20407eb9 call memcpy8 
+7c50 20407eb9 call memcpy8 
+7c51 18007e00 force 0 ,pdata 
+7c52 e0a40000 istore 8 ,contw 
+7c53 1e008c24 add alarm ,36 ,contr 
+7c54 20407eb6 call memcpy4 
+7c55 1e008c2c add alarm ,44 ,contr 
+7c56 20407eb6 call memcpy4 
+7c57 19622200 copy timeup ,rega 
+7c58 1a220a00 copy rega ,contw 
+7c59 20407c96 call bn_submod_256 
+7c5a da4007c6 arg mem_tmp2_256 ,regb 
+7c5b 1a420a00 copy regb ,contw 
+7c5c 1e008c34 add alarm ,52 ,contr 
+7c5d 20407eb5 call memcpy12 
+7c5e 1e008c20 add alarm ,32 ,contr 
+7c5f 20407eb5 call memcpy12 
+7c60 20407ecd call memset0_4 
+7c61 1e008c30 add alarm ,48 ,contr 
+7c62 20407eb6 call memcpy4 
+7c63 19622200 copy timeup ,rega 
+7c64 1a220a00 copy rega ,contw 
+7c65 20407c96 call bn_submod_256 
+7c66 da4007c6 arg mem_tmp2_256 ,regb 
+7c67 1a420a00 copy regb ,contw 
+7c68 1e008c38 add alarm ,56 ,contr 
+7c69 20407eb9 call memcpy8 
+7c6a 20407ecd call memset0_4 
+7c6b 1e008c24 add alarm ,36 ,contr 
+7c6c 20407eb5 call memcpy12 
+7c6d 20407ecd call memset0_4 
+7c6e 1e008c34 add alarm ,52 ,contr 
+7c6f 20407eb6 call memcpy4 
+7c70 19622200 copy timeup ,rega 
+7c71 1a220a00 copy rega ,contw 
+7c72 20207c96 branch bn_submod_256 
+
+bn_load_mem:
+7c73 18007220 force 32 ,loopcnt 
+7c74 d8a00ad2 arg mem_regext ,contw 
+7c75 98a08a00 iadd contw ,contw 
+7c76 20207f01 branch memcpy 
+
+bn_load_256:
+7c77 18007208 force 8 ,loopcnt 
+7c78 20207781 branch bn_load_0 
+
+bn_sqrmod_256:
+7c79 1a222400 copy rega ,regb 
+7c7a 20207be1 branch bn_mulmod_256 
+
+bn_add_256:
+7c7b 18007208 force 8 ,loopcnt 
+7c7c 20207712 branch bn_add + 1 
+
+bn_addmod_256:
+7c7d 20407c7b call bn_add_256 
+7c7e 18a22200 copy contw ,rega 
+7c7f 20207c81 branch bn_lshiftmod_ismod_256 
+
+bn_lshiftmod_256:
+7c80 20407cae call bn_lshift_256 
+
+bn_lshiftmod_ismod_256:
+7c81 2a6ffe00 isolate1 0 ,regc 
+7c82 2020fc8a branch bn_lshiftmod_p_256 ,true 
+7c83 da40091e arg mem_p_256 ,regb 
+7c84 1a222600 copy rega ,regc 
+7c85 1a20a3e0 increase -32 ,rega 
+7c86 20407cb1 call bn_bigeq_256 
+7c87 24610000 nrtn positive 
+7c88 1a622200 copy regc ,rega 
+7c89 20207c92 branch sub_p2_256 
+
+bn_lshiftmod_p_256:
+7c8a 20407c92 call sub_p2_256 
+7c8b 1a222600 copy rega ,regc 
+7c8c 1a20a3e0 increase -32 ,rega 
+7c8d da40091e arg mem_p_256 ,regb 
+7c8e 20407cb1 call bn_bigeq_256 
+7c8f 24610000 nrtn positive 
+7c90 1a622200 copy regc ,rega 
+7c91 20207c92 branch sub_p2_256 
+
+sub_p2_256:
+7c92 1a20a3e0 increase -32 ,rega 
+7c93 da40091e arg mem_p_256 ,regb 
+7c94 1a220a00 copy rega ,contw 
+7c95 20207ca9 branch bn_sub_256 
+
+bn_submod_256:
+7c96 20407ca9 call bn_sub_256 
+7c97 2020fca0 branch bn_submod_256_np ,true 
+7c98 18a0a3e0 add contw ,-32 ,rega 
+7c99 da40091e arg mem_p_256 ,regb 
+7c9a 20407cb1 call bn_bigeq_256 
+7c9b 24610000 nrtn positive 
+7c9c da40091e arg mem_p_256 ,regb 
+7c9d 18a0a3e0 add contw ,-32 ,rega 
+7c9e 1a220a00 copy rega ,contw 
+7c9f 20207ca9 branch bn_sub_256 
+
+bn_submod_256_np:
+7ca0 18a0a3e0 add contw ,-32 ,rega 
+7ca1 da40091e arg mem_p_256 ,regb 
+7ca2 1a220a00 copy rega ,contw 
+7ca3 20407c7b call bn_add_256 
+7ca4 20608000 rtn true 
+7ca5 18a0a3e0 add contw ,-32 ,rega 
+7ca6 da40091e arg mem_p_256 ,regb 
+7ca7 1a220a00 copy rega ,contw 
+7ca8 20207c7b branch bn_add_256 
+
+bn_sub_256:
+7ca9 18007208 force 8 ,loopcnt 
+7caa 20207720 branch bn_sub + 1 
+
+bn_rshift_256:
+7cab 18007208 force 8 ,loopcnt 
+7cac 1a20a21c increase 28 ,rega 
+7cad 2020772f branch bn_rshift 
+
+bn_lshift_256:
+7cae 18007208 force 8 ,loopcnt 
+7caf 18002600 force 0 ,regc 
+7cb0 2020773d branch bn_lshift_0 
+
+bn_bigeq_256:
+7cb1 18007208 force 8 ,loopcnt 
+7cb2 1a20a21c increase 28 ,rega 
+7cb3 1a40a41c increase 28 ,regb 
+7cb4 20207707 branch bn_bigeq_0 
+
+bn_eq_zero_256:
+7cb5 e8c40000 ifetch 8 ,contr 
+7cb6 247a0000 nrtn blank 
+7cb7 202076f5 branch bn_eq_zero 
+
+bn_rshifteven_256:
+7cb8 1a226000 copy rega ,alarm 
+
+bn_rshifteven_256_1:
+7cb9 1e022200 copy alarm ,rega 
+7cba ea208000 ifetch 1 ,rega 
+7cbb 2feffe00 isolate1 0 ,pdata 
+7cbc 20608000 rtn true 
+7cbd 20407cab call bn_rshift_256 
+7cbe ea408000 ifetch 1 ,regb 
+7cbf 2fec0000 isolate0 0 ,pdata 
+7cc0 2020fcc8 branch bn_rshifteven_256_0 ,true 
+7cc1 da20091e arg mem_p_256 ,rega 
+7cc2 1a420a00 copy regb ,contw 
+7cc3 20407c7b call bn_add_256 
+7cc4 ea408000 ifetch 1 ,regb 
+7cc5 9a60fe00 iadd regc ,pdata 
+7cc6 e2408000 istore 1 ,regb 
+7cc7 1a40a5e0 increase -32 ,regb 
+
+bn_rshifteven_256_0:
+7cc8 1a40a220 add regb ,32 ,rega 
+7cc9 18007209 force 9 ,loopcnt 
+7cca 2040772f call bn_rshift 
+7ccb 20207cb9 branch bn_rshifteven_256_1 
+
+ui_init:
+7ccc 20402c65 call lpm_disable_exen_output 
+7ccd 20758000 rtn wake 
+7cce 20407cd3 call ui_button_init 
+7ccf 20407d75 call ui_timer_init 
+7cd0 20207d08 branch ui_led_init_global 
+
+ui_dispatch:
+7cd1 20407d29 call ui_led_dispatch 
+7cd2 20207d64 branch ui_timer_check 
+
+ui_button_init:
+7cd3 6800c686 fetch 1 ,mem_ui_button_gpio 
+7cd4 c17f8000 rtneq ui_button_gpio_disable 
+7cd5 98000400 iforce temp 
+7cd6 2040680e call gpio_config_output 
+7cd7 6808c686 fetcht 1 ,mem_ui_button_gpio 
+7cd8 20406825 call gpio_out_inactive 
+7cd9 20000064 nop 100 
+7cda 6808c686 fetcht 1 ,mem_ui_button_gpio 
+7cdb 204067fb call gpio_config_input 
+7cdc 20207cdd branch ui_button_polling 
+
+ui_button_polling:
+7cdd 4779c03e bpatchx patch3e_3 ,mem_patch3e 
+7cde 6800c686 fetch 1 ,mem_ui_button_gpio 
+7cdf c17f8000 rtneq ui_button_gpio_disable 
+7ce0 1fe20400 copy pdata ,temp 
+7ce1 2040681d call gpio_get_bit 
+7ce2 2420fcef nbranch ui_button_up ,true 
+
+ui_button_down:
+7ce3 20407cf9 call ui_button_check_long_press 
+7ce4 68014682 fetch 2 ,mem_ui_state_map 
+7ce5 79207e0c set1 ui_state_btn_down 
+7ce6 60014682 store 2 ,mem_ui_state_map 
+7ce7 6800c679 fetch 1 ,mem_ui_button_last_state 
+7ce8 c1000000 rtneq ui_button_state_down 
+7ce9 70467900 jam ui_button_state_down ,mem_ui_button_last_state 
+7cea 6800c685 fetch 1 ,mem_ui_button_timeout 
+7ceb 6000c678 store 1 ,mem_ui_button_timer 
+7cec 20407d00 call lpm_button_get_wake_lock 
+7ced 700a992c jam bt_evt_button_down ,mem_fifo_temp 
+7cee 20207d86 branch ui_ipc_send_event 
+
+ui_button_up:
+7cef 68014682 fetch 2 ,mem_ui_state_map 
+7cf0 793ffe0c set0 ui_state_btn_down 
+7cf1 60014682 store 2 ,mem_ui_state_map 
+7cf2 6800c679 fetch 1 ,mem_ui_button_last_state 
+7cf3 c1008000 rtneq ui_button_state_up 
+7cf4 70467901 jam ui_button_state_up ,mem_ui_button_last_state 
+7cf5 70467800 jam 0 ,mem_ui_button_timer 
+7cf6 20407d02 call lpm_button_clean_wake_lock 
+7cf7 700a992d jam bt_evt_button_up ,mem_fifo_temp 
+7cf8 20207d86 branch ui_ipc_send_event 
+
+ui_button_check_long_press:
+7cf9 6800c678 fetch 1 ,mem_ui_button_timer 
+7cfa 207a0000 rtn blank 
+7cfb 1fe0ffff increase -1 ,pdata 
+7cfc 6000c678 store 1 ,mem_ui_button_timer 
+7cfd 247a0000 nrtn blank 
+7cfe 700a9910 jam bt_evt_button_long_pressed ,mem_fifo_temp 
+7cff 20207d86 branch ui_ipc_send_event 
+
+lpm_button_get_wake_lock:
+7d00 d8e00007 arg wake_lock_button ,queue 
+7d01 20202c32 branch lpm_get_wake_lock 
+
+lpm_button_clean_wake_lock:
+7d02 d8e00007 arg wake_lock_button ,queue 
+7d03 20202c36 branch lpm_put_wake_lock 
+
+calc_curr_struct_prt:
+7d04 6801421b fetch 2 ,mem_ui_led_struct_ptr 
+7d05 1a2fa40b mul32 rega ,led_offset_length ,regb 
+7d06 9a40a400 iadd regb ,regb 
+7d07 20600000 rtn 
+
+ui_led_init_global:
+7d08 6800c21a fetch 1 ,mem_ui_led_struct_num 
+7d09 207a0000 rtn blank 
+7d0a 1fe27200 copy pdata ,loopcnt 
+7d0b 6801421b fetch 2 ,mem_ui_led_struct_ptr 
+7d0c 1fe22400 copy pdata ,regb 
+
+ui_led_init_loop:
+7d0d 1a40a602 add regb ,led_offset_led_gpio ,regc 
+7d0e ea688000 ifetcht 1 ,regc 
+7d0f 2040680e call gpio_config_output 
+7d10 20407d32 call ui_led_off_static 
+7d11 1a40a40b increase led_offset_length ,regb 
+7d12 c2007d0d loop ui_led_init_loop 
+7d13 20600000 rtn 
+
+ui_led_on_global:
+7d14 20407d04 call calc_curr_struct_prt 
+7d15 58000002 setarg ui_led_state_lighting 
+7d16 e2408000 istore 1 ,regb 
+7d17 20407d5e call ui_led_stop_timer 
+7d18 20207d35 branch ui_led_on_static 
+
+ui_led_blink_stop_global:
+
+ui_led_off_global:
+7d19 20407d04 call calc_curr_struct_prt 
+7d1a 58000003 setarg ui_led_state_darking 
+7d1b e2408000 istore 1 ,regb 
+7d1c 20407d5e call ui_led_stop_timer 
+7d1d 20207d32 branch ui_led_off_static 
+
+ui_led_blink_start_global:
+7d1e 20407d04 call calc_curr_struct_prt 
+7d1f 58000001 setarg ui_led_state_blink_start 
+7d20 e2408000 istore 1 ,regb 
+7d21 580000ff setarg led_infinite_flash_num 
+7d22 e0a08000 istore 1 ,contw 
+7d23 20207d32 branch ui_led_off_static 
+
+ui_led_set_style_global:
+7d24 20407d04 call calc_curr_struct_prt 
+7d25 df20000b arg led_offset_length ,loopcnt 
+7d26 1a620c00 copy regc ,contr 
+7d27 1a420a00 copy regb ,contw 
+7d28 20207ef4 branch memcpy_fast 
+
+ui_led_dispatch:
+7d29 6800c21a fetch 1 ,mem_ui_led_struct_num 
+7d2a 207a0000 rtn blank 
+7d2b da200000 arg 0 ,rega 
+
+ui_led_blink_polling:
+7d2c 20407d38 call ui_led_change_style_by_type 
+7d2d 1a20a201 increase 1 ,rega 
+7d2e 6800c21a fetch 1 ,mem_ui_led_struct_num 
+7d2f 9a267c00 isub rega ,null 
+7d30 20628000 rtn zero 
+7d31 20207d2c branch ui_led_blink_polling 
+
+ui_led_off_static:
+7d32 1a40a602 add regb ,led_offset_led_gpio ,regc 
+7d33 ea688000 ifetcht 1 ,regc 
+7d34 20206825 branch gpio_out_inactive 
+
+ui_led_on_static:
+7d35 1a40a602 add regb ,led_offset_led_gpio ,regc 
+7d36 ea688000 ifetcht 1 ,regc 
+7d37 20206829 branch gpio_out_active 
+
+ui_led_change_style_by_type:
+7d38 1a208e0b add rega ,ui_led_blink ,queue 
+7d39 20407f16 call timer_check 
+7d3a 247a0000 nrtn blank 
+7d3b 20407d04 call calc_curr_struct_prt 
+7d3c ea408000 ifetch 1 ,regb 
+7d3d c0017d35 beq ui_led_state_lighting ,ui_led_on_static 
+7d3e c001fd32 beq ui_led_state_darking ,ui_led_off_static 
+7d3f c0007d32 beq ui_led_state_blink_stop ,ui_led_off_static 
+7d40 c002fd4c beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
+
+ui_led_blink_state_lighting:
+7d41 20407d35 call ui_led_on_static 
+7d42 1a40a607 add regb ,led_offset_cb_ledon ,regc 
+7d43 20407e7c call push_stack 
+7d44 ea610000 ifetch 2 ,regc 
+7d45 20407f9c call callback_func 
+7d46 20407e8c call pop_stack 
+7d47 58000005 setarg ui_led_state_blink_darking 
+7d48 e2408000 istore 1 ,regb 
+7d49 1a40a603 add regb ,led_offset_on_time ,regc 
+7d4a ea610000 ifetch 2 ,regc 
+7d4b 20207d5c branch ui_led_blink_timer_start 
+
+ui_led_blink_state_darking:
+7d4c 20407d32 call ui_led_off_static 
+7d4d 1a40a609 add regb ,led_offset_cb_ledoff ,regc 
+7d4e 20407e7c call push_stack 
+7d4f ea610000 ifetch 2 ,regc 
+7d50 20407f9c call callback_func 
+7d51 20407e8c call pop_stack 
+7d52 1a40a601 add regb ,led_offset_blink_count ,regc 
+7d53 ea608000 ifetch 1 ,regc 
+7d54 c07ffd58 beq led_infinite_flash_num ,ui_led_blink_infinite 
+7d55 1fe0ffff increase -1 ,pdata 
+7d56 e2608000 istore 1 ,regc 
+7d57 203a7d19 branch ui_led_blink_stop_global ,blank 
+
+ui_led_blink_infinite:
+7d58 58000004 setarg ui_led_state_blink_lighting 
+7d59 e2408000 istore 1 ,regb 
+7d5a 1a40a605 add regb ,led_offset_off_time ,regc 
+7d5b ea610000 ifetch 2 ,regc 
+
+ui_led_blink_timer_start:
+7d5c 1a208e0b add rega ,ui_led_blink ,queue 
+7d5d 20207f08 branch timer_init 
+
+ui_led_stop_timer:
+7d5e 58000000 setarg 0 
+7d5f 20207d5c branch ui_led_blink_timer_start 
+
+ui_timer_timeout:
+7d60 58001000 setarg 0x1000 
+7d61 1ff07e00 lshift16 pdata ,pdata 
+7d62 9a40a400 iadd regb ,regb 
+7d63 20600000 rtn 
+
+ui_timer_check:
+7d64 477a403e bpatchx patch3e_4 ,mem_patch3e 
+7d65 da200000 arg 0 ,rega 
+7d66 680a467a fetcht 4 ,mem_ui_timer_last_btclk 
+7d67 1c422400 copy clkn_bt ,regb 
+7d68 1a427e00 copy regb ,pdata 
+7d69 98467c00 isub temp ,null 
+7d6a 24417d60 ncall ui_timer_timeout ,positive 
+
+ui_timer_check_loop:
+7d6b 1a427e00 copy regb ,pdata 
+7d6c 184084a0 increase 160 ,temp 
+7d6d 184084a0 increase 160 ,temp 
+7d6e 98467c00 isub temp ,null 
+7d6f 24217d78 nbranch ui_timer_check_end ,positive 
+7d70 1a20a201 increase 1 ,rega 
+7d71 1a217e0f and rega ,0x0f ,pdata 
+7d72 243a7d6b nbranch ui_timer_check_loop ,blank 
+7d73 da200000 arg 0 ,rega 
+7d74 20407d7f call ui_timer_check_send_evt 
+
+ui_timer_init:
+7d75 1c427e00 copy clkn_bt ,pdata 
+7d76 6002467a store 4 ,mem_ui_timer_last_btclk 
+7d77 20600000 rtn 
+
+ui_timer_check_end:
+7d78 477ac03e bpatchx patch3e_5 ,mem_patch3e 
+7d79 1a227e00 copy rega ,pdata 
+7d7a 207a0000 rtn blank 
+7d7b 18408560 increase -160 ,temp 
+7d7c 18408560 increase -160 ,temp 
+7d7d 793f841c set0 28 ,temp 
+7d7e 600a467a storet 4 ,mem_ui_timer_last_btclk 
+
+ui_timer_check_send_evt:
+7d7f 2020335f branch app_evt_timer 
+
+ui_ipc_get_lock:
+7d80 70466601 jam 1 ,mem_ipc_lock_bt 
+
+ui_ipc_get_lock_wait:
+7d81 6800c667 fetch 1 ,mem_ipc_lock_c51 
+7d82 243a7d81 nbranch ui_ipc_get_lock_wait ,blank 
+7d83 20600000 rtn 
+
+ui_ipc_put_lock:
+7d84 70466600 jam 0 ,mem_ipc_lock_bt 
+7d85 20600000 rtn 
+
+ui_ipc_send_event:
+7d86 477b403e bpatchx patch3e_6 ,mem_patch3e 
+7d87 20407d80 call ui_ipc_get_lock 
+7d88 1a227e00 copy rega ,pdata 
+7d89 60020a91 store 4 ,mem_ipc_rega_temp 
+7d8a da204668 arg mem_ipc_fifo_bt2c51 ,rega 
+7d8b 20407fb8 call fifo_in 
+7d8c 68020a91 fetch 4 ,mem_ipc_rega_temp 
+7d8d 1fe22200 copy pdata ,rega 
+7d8e 20207d84 branch ui_ipc_put_lock 
+
+ui_ipc_send_cmd:
+7d8f 477bc03e bpatchx patch3e_7 ,mem_patch3e 
+7d90 20407d80 call ui_ipc_get_lock 
+7d91 1a227e00 copy rega ,pdata 
+7d92 60020a91 store 4 ,mem_ipc_rega_temp 
+7d93 da204670 arg mem_ipc_fifo_c512bt ,rega 
+7d94 20407fb8 call fifo_in 
+7d95 68020a91 fetch 4 ,mem_ipc_rega_temp 
+7d96 1fe22200 copy pdata ,rega 
+7d97 20207d84 branch ui_ipc_put_lock 
+
+ui_ipc_clean_all_fifo:
+7d98 58000000 setarg 0 
+7d99 60044670 store util_fifo_len ,mem_ipc_fifo_c512bt 
+7d9a 60044668 store util_fifo_len ,mem_ipc_fifo_bt2c51 
+7d9b 20600000 rtn 
+
+check_51cmd:
+7d9c 477c403f bpatchx patch3f_0 ,mem_patch3f 
+7d9d 6800c1ce fetch 1 ,mem_hci_cmd 
+7d9e 247a0000 nrtn blank 
+7d9f da204670 arg mem_ipc_fifo_c512bt ,rega 
+7da0 20407fd0 call fifo_is_empty 
+7da1 207a0000 rtn blank 
+7da2 700a9000 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
+7da3 20407da7 call check_51cmd_once 
+7da4 68008a90 fetch 1 ,mem_ipc_skip_continue_proc 
+7da5 203a7d9c branch check_51cmd ,blank 
+7da6 20600000 rtn 
+
+check_51cmd_once:
+7da7 20407d80 call ui_ipc_get_lock 
+7da8 da204670 arg mem_ipc_fifo_c512bt ,rega 
+7da9 20407fc4 call fifo_out 
+7daa 1fe20400 copy pdata ,temp 
+7dab 20407d84 call ui_ipc_put_lock 
+7dac 477cc03f bpatchx patch3f_1 ,mem_patch3f 
+7dad 18427e00 copy temp ,pdata 
+7dae 207a0000 rtn blank 
+7daf c000fddd beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
+7db0 c0017de2 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
+7db1 c001fde8 beq bt_cmd_reconnect ,check_51cmd_reconnect 
+7db2 c003fded beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
+7db3 c0047dee beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
+7db4 c004fdef beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
+7db5 c005fdf2 beq bt_cmd_start_inquiry ,check_51cmd_inq 
+7db6 c0067df3 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
+7db7 c006fdf4 beq bt_cmd_start_adv ,check_51cmd_adv 
+7db8 c0077dfa beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
+7db9 c007fdff beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
+7dba c0087e05 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
+7dbb c009fe0f beq bt_cmd_led_off ,check_51cmd_led_off 
+7dbc c00a7e11 beq bt_cmd_led_on ,check_51cmd_led_on 
+7dbd c00afe13 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
+7dbe c00b7e15 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
+7dbf c00bfe18 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
+7dc0 c00c7e1a beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
+7dc1 c00cfe1d beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
+7dc2 c00dfe25 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
+7dc3 c00f7e2f beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
+7dc4 60008a99 store 1 ,mem_fifo_temp 
+7dc5 477d403f bpatchx patch3f_2 ,mem_patch3f 
+7dc6 204062bc call lmo_fifo_check 
+7dc7 243a7ddb nbranch check_51cmd_restore ,blank 
+
+check_51cmd_once_continue:
+7dc8 68008a99 fetch 1 ,mem_fifo_temp 
+7dc9 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+7dca c0027dea beq bt_cmd_disconnect ,check_51cmd_disconnect 
+7dcb c002cd17 beq bt_cmd_enter_sniff ,cmd_in_sniff 
+7dcc c0034d26 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
+7dcd c0057df0 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
+7dce c008fe0a beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
+7dcf c0097e0e beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
+7dd0 c00efe26 beq bt_cmd_role_switch ,check_51cmd_role_switch 
+7dd1 c00fe7cc beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
+7dd2 c01067d0 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
+7dd3 c010fe31 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
+7dd4 c012e70b beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
+7dd5 20600000 rtn 
+
+check_51cmd_check_idle:
+7dd6 60008a99 store 1 ,mem_fifo_temp 
+7dd7 20402252 call context_check_idle 
+7dd8 2022fddb branch check_51cmd_restore ,zero 
+7dd9 2040225a call context_search_plap 
+7dda 24628000 nrtn zero 
+
+check_51cmd_restore:
+7ddb 700a9001 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
+7ddc 20207d8f branch ui_ipc_send_cmd 
+
+check_51cmd_start_discovery:
+7ddd 68014682 fetch 2 ,mem_ui_state_map 
+7dde 79207e06 set1 ui_state_bt_discovery 
+7ddf 60014682 store 2 ,mem_ui_state_map 
+7de0 70409303 jam 3 ,mem_scan_mode 
+7de1 20600000 rtn 
+
+check_51cmd_stop_discovery:
+7de2 70468000 jam 0 ,mem_hid_handshake_timer_count 
+7de3 70409300 jam 0 ,mem_scan_mode 
+7de4 68014682 fetch 2 ,mem_ui_state_map 
+7de5 793ffe06 set0 ui_state_bt_discovery 
+7de6 60014682 store 2 ,mem_ui_state_map 
+7de7 20600000 rtn 
+
+check_51cmd_reconnect:
+7de8 7041ce05 jam hci_cmd_create_conn ,mem_hci_cmd 
+7de9 20600000 rtn 
+
+check_51cmd_disconnect:
+7dea 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+7deb 7004ca13 jam other_end_terminated ,mem_disconn_reason_send 
+7dec 20600000 rtn 
+
+check_51cmd_enter_sniff_subrating:
+7ded 20600000 rtn 
+
+check_51cmd_exit_sniff_subrating:
+7dee 20600000 rtn 
+
+check_51cmd_sniff_test:
+7def 20600000 rtn 
+
+check_51cmd_pincode:
+7df0 7004d402 jam pincode_state_pincode_ready ,mem_pincode_state 
+7df1 20204d0a branch cmd_pair 
+
+check_51cmd_inq:
+7df2 20600000 rtn 
+
+check_51cmd_stop_inq:
+7df3 20600000 rtn 
+
+check_51cmd_adv:
+7df4 70436e01 jam on ,mem_le_adv_enable 
+7df5 70448400 jam adv_ind ,mem_le_adv_type 
+7df6 68014682 fetch 2 ,mem_ui_state_map 
+7df7 79207e0b set1 ui_state_ble_adv ,pdata 
+7df8 60014682 store 2 ,mem_ui_state_map 
+7df9 20600000 rtn 
+
+check_51cmd_stop_adv:
+7dfa 68014682 fetch 2 ,mem_ui_state_map 
+7dfb 793ffe0b set0 ui_state_ble_adv ,pdata 
+7dfc 60014682 store 2 ,mem_ui_state_map 
+7dfd 70436e00 jam off ,mem_le_adv_enable 
+7dfe 20600000 rtn 
+
+check_51cmd_direct_adv:
+7dff 70436e01 jam on ,mem_le_adv_enable 
+7e00 70448401 jam adv_direct_ind ,mem_le_adv_type 
+7e01 68014682 fetch 2 ,mem_ui_state_map 
+7e02 79207e0b set1 ui_state_ble_adv ,pdata 
+7e03 60014682 store 2 ,mem_ui_state_map 
+7e04 20600000 rtn 
+
+check_51cmd_stop_direct_adv:
+7e05 68014682 fetch 2 ,mem_ui_state_map 
+7e06 793ffe0b set0 ui_state_ble_adv ,pdata 
+7e07 60014682 store 2 ,mem_ui_state_map 
+7e08 70436e00 jam off ,mem_le_adv_enable 
+7e09 20600000 rtn 
+
+check_51cmd_le_disconnect:
+7e0a 58000014 setarg 20 
+7e0b 6001046d store 2 ,mem_le_superto 
+7e0c 600144ba store 2 ,mem_le_init_superto 
+7e0d 20205c92 branch le_send_terminate_ind_user_terminated 
+
+check_51cmd_ble_update_connect_param:
+7e0e 20205abf branch le_l2cap_tx_update_req 
+
+check_51cmd_led_off:
+7e0f da200000 arg 0 ,rega 
+7e10 20207d19 branch ui_led_off_global 
+
+check_51cmd_led_on:
+7e11 da200000 arg 0 ,rega 
+7e12 20207d14 branch ui_led_on_global 
+
+check_51cmd_led_start_blink:
+7e13 da200000 arg 0 ,rega 
+7e14 20207d1e branch ui_led_blink_start_global 
+
+check_51cmd_le_start_con:
+7e15 70436901 jam on ,mem_le_scan_enable 
+7e16 7041ce1b jam hci_cmd_le_create_conn ,mem_hci_cmd 
+7e17 20600000 rtn 
+
+check_51cmd_start_scan:
+7e18 70436901 jam on ,mem_le_scan_enable 
+7e19 20600000 rtn 
+
+check_51cmd_stop_scan:
+7e1a 70436900 jam off ,mem_le_scan_enable 
+7e1b 7041ce00 jam 0 ,mem_hci_cmd 
+7e1c 20600000 rtn 
+
+check_51cmd_hibernate:
+7e1d 680141eb fetch 2 ,mem_cb_before_hibernate 
+7e1e 20407f9c call callback_func 
+7e1f 6800c686 fetch 1 ,mem_ui_button_gpio 
+7e20 c07ffe23 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
+7e21 1fe20400 copy pdata ,temp 
+7e22 204067fb call gpio_config_input 
+
+check_51cmd_hibernate_btn_disabled:
+7e23 20407d98 call ui_ipc_clean_all_fifo 
+7e24 20202b1f branch lpm_hibernate 
+
+check_51cmd_le_smp_sec_req:
+7e25 20205b02 branch le_send_smp_security_request 
+
+check_51cmd_role_switch:
+7e26 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+7e27 79200003 set1 mark_switch_initiated ,mark 
+7e28 24748000 nrtn master 
+7e29 70455b00 jam switch_flag_init ,mem_switch_flag 
+7e2a 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+7e2b 6800816d fetch 1 ,mem_connection_options 
+7e2c 793ffe02 set0 connection_switch ,pdata 
+7e2d 6000816d store 1 ,mem_connection_options 
+7e2e 20600000 rtn 
+
+check_51cmd_bb_reconn_cancel:
+7e2f 18000e03 force page_length_timer ,queue 
+7e30 20207f07 branch timer_stop 
+
+check_51cmd_dhkey_not_accept:
+7e31 204062f8 call tid_set_reply 
+7e32 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+7e33 20205f9d branch parse_lmp_dhkey_check_reject 
+
+ui_check_paring_button:
+7e34 6800c682 fetch 1 ,mem_ui_state_map 
+7e35 c4060000 rtnbit0 ui_state_btn_down 
+7e36 c4038000 rtnbit0 ui_state_bt_reconnect 
+7e37 20207e2f branch check_51cmd_bb_reconn_cancel 
+
+queue_init:
+7e38 68014218 fetch 2 ,mem_queue_ptr 
+7e39 1fe08a02 add pdata ,queue_offset_curr_num ,contw 
+7e3a 58000000 setarg 0 
+7e3b e0a18000 istore 3 ,contw 
+7e3c 20600000 rtn 
+
+queue_push:
+7e3d 20407fe9 call disable_user 
+7e3e 20407e69 call queue_full 
+7e3f 207a0000 rtn blank 
+7e40 68014218 fetch 2 ,mem_queue_ptr 
+7e41 1fe0a402 add pdata ,queue_offset_curr_num ,regb 
+7e42 ea488000 ifetcht 1 ,regb 
+7e43 18408401 increase 1 ,temp 
+7e44 e2488000 istoret 1 ,regb 
+7e45 efe88000 ifetcht 1 ,pdata 
+7e46 18427200 copy temp ,loopcnt 
+7e47 1fe0a404 add pdata ,queue_offset_write_ptr ,regb 
+7e48 ea408000 ifetch 1 ,regb 
+7e49 984ffe00 imul32 temp ,pdata 
+7e4a 98c08a00 iadd contr ,contw 
+7e4b 1a220c00 copy rega ,contr 
+
+calc_queue_next_ptr:
+7e4c 20407f01 call memcpy 
+7e4d 20407e6d call queue_get_size 
+7e4e 1fe0ffff pincrease -1 
+7e4f ea488000 ifetcht 1 ,regb 
+7e50 18408401 increase 1 ,temp 
+7e51 98410400 iand temp ,temp 
+7e52 e2488000 istoret 1 ,regb 
+7e53 20207fe7 branch enable_user 
+
+queue_pop:
+7e54 20407fe9 call disable_user 
+7e55 20407e65 call queue_empty 
+7e56 207a0000 rtn blank 
+7e57 68014218 fetch 2 ,mem_queue_ptr 
+7e58 1fe0a402 add pdata ,queue_offset_curr_num ,regb 
+7e59 ea488000 ifetcht 1 ,regb 
+7e5a 184085ff increase -1 ,temp 
+7e5b e2488000 istoret 1 ,regb 
+7e5c efe88000 ifetcht 1 ,pdata 
+7e5d 18427200 copy temp ,loopcnt 
+7e5e 1fe0a403 add pdata ,queue_offset_read_ptr ,regb 
+7e5f ea408000 ifetch 1 ,regb 
+7e60 984ffe00 imul32 temp ,pdata 
+7e61 98c08c00 iadd contr ,contr 
+7e62 18c08c01 increase 1 ,contr 
+7e63 1a220a00 copy rega ,contw 
+7e64 20207e4c branch calc_queue_next_ptr 
+
+queue_empty:
+7e65 68014218 fetch 2 ,mem_queue_ptr 
+7e66 1fe08c02 add pdata ,queue_offset_curr_num ,contr 
+7e67 e8c08000 ifetch 1 ,contr 
+7e68 20600000 rtn 
+
+queue_full:
+7e69 20407e6d call queue_get_size 
+7e6a e8c88000 ifetcht 1 ,contr 
+7e6b 98467e00 isub temp ,pdata 
+7e6c 20600000 rtn 
+
+queue_get_size:
+7e6d 68014218 fetch 2 ,mem_queue_ptr 
+7e6e 1fe08c01 add pdata ,queue_offset_length ,contr 
+7e6f e8c08000 ifetch 1 ,contr 
+7e70 20600000 rtn 
+
+right_shift_n:
+7e71 1f267c00 sub loopcnt ,0 ,null 
+7e72 20628000 rtn zero 
+
+right_shift_n_loop:
+7e73 1fe37e00 rshift pdata ,pdata 
+7e74 c2007e73 loop right_shift_n_loop 
+7e75 20600000 rtn 
+
+left_shift_n:
+7e76 18007e01 force 1 ,pdata 
+7e77 1f267c00 sub loopcnt ,0 ,null 
+7e78 20628000 rtn zero 
+
+left_shift_n_loop:
+7e79 1fe3fe00 lshift pdata ,pdata 
+7e7a c2007e79 loop left_shift_n_loop 
+7e7b 20600000 rtn 
+
+push_stack:
+7e7c 18a27e00 deposit contw 
+7e7d 60010abb store 2 ,mem_contw 
+7e7e 600c0aa2 storet 8 ,mem_temp 
+7e7f 19627e00 deposit timeup 
+7e80 60020aaa store 4 ,mem_timeup 
+7e81 20407e85 call push_stack_rega_b_c 
+7e82 18c27e00 deposit contr 
+7e83 60010ab9 store 2 ,mem_contr 
+7e84 20600000 rtn 
+
+push_stack_rega_b_c:
+7e85 1a227e00 deposit rega 
+7e86 60020aae store 4 ,mem_rega 
+7e87 1a427e00 deposit regb 
+7e88 60020ab2 store 4 ,mem_regb 
+7e89 1a627e00 deposit regc 
+7e8a 60018ab6 store 3 ,mem_regc 
+7e8b 20600000 rtn 
+
+pop_stack:
+7e8c 680c0aa2 fetcht 8 ,mem_temp 
+7e8d 68020aaa fetch 4 ,mem_timeup 
+7e8e 98001600 iforce timeup 
+7e8f 20407e95 call pop_stack_rega_b_c 
+7e90 68010abb fetch 2 ,mem_contw 
+7e91 98000a00 iforce contw 
+7e92 68010ab9 fetch 2 ,mem_contr 
+7e93 98000c00 iforce contr 
+7e94 20600000 rtn 
+
+pop_stack_rega_b_c:
+7e95 68020aae fetch 4 ,mem_rega 
+7e96 98002200 iforce rega 
+7e97 68020ab2 fetch 4 ,mem_regb 
+7e98 98002400 iforce regb 
+7e99 68018ab6 fetch 3 ,mem_regc 
+7e9a 98002600 iforce regc 
+7e9b 20600000 rtn 
+
+get_contw:
+7e9c 68010abb fetch 2 ,mem_contw 
+7e9d 1fe20a00 copy pdata ,contw 
+7e9e 20600000 rtn 
+
+get_contr:
+7e9f 68010ab9 fetch 2 ,mem_contr 
+7ea0 1fe20c00 copy pdata ,contr 
+7ea1 20600000 rtn 
+
+store_contw:
+7ea2 18a27e00 copy contw ,pdata 
+7ea3 60010abb store 2 ,mem_contw 
+7ea4 20600000 rtn 
+
+store_contr:
+7ea5 18c27e00 copy contr ,pdata 
+7ea6 60010ab9 store 2 ,mem_contr 
+7ea7 20600000 rtn 
+
+save_cont_pointers:
+7ea8 18a27e00 copy contw ,pdata 
+7ea9 60010a97 store 2 ,mem_hold_contw 
+7eaa 18c27e00 copy contr ,pdata 
+7eab 60010a95 store 2 ,mem_hold_contr 
+7eac 20600000 rtn 
+
+load_cont_pointers:
+7ead 68010a97 fetch 2 ,mem_hold_contw 
+7eae 1fe20a00 copy pdata ,contw 
+7eaf 68010a95 fetch 2 ,mem_hold_contr 
+7eb0 1fe20c00 copy pdata ,contr 
+7eb1 20600000 rtn 
+
+memcpy96:
+7eb2 20407ebd call memcpy32 
+
+memcpy64:
+7eb3 20407ebd call memcpy32 
+7eb4 20207ebd branch memcpy32 
+
+memcpy12:
+7eb5 20407eb9 call memcpy8 
+
+memcpy4:
+7eb6 e8c20000 ifetch 4 ,contr 
+7eb7 e0a20000 istore 4 ,contw 
+7eb8 20600000 rtn 
+
+memcpy8:
+7eb9 e8c40000 ifetch 8 ,contr 
+7eba e0a40000 istore 8 ,contw 
+7ebb 20600000 rtn 
+
+memcpy48:
+7ebc 20407ebf call memcpy16 
+
+memcpy32:
+7ebd 20407eb9 call memcpy8 
+
+memcpy24:
+7ebe 20407eb9 call memcpy8 
+
+memcpy16:
+7ebf 20407eb9 call memcpy8 
+7ec0 20207eb9 branch memcpy8 
+
+delay_10ms:
+7ec1 df20000a arg 10 ,loopcnt 
+
+delay_ms_wait:
+7ec2 20002ee0 nop 12000 
+7ec3 c2007ec2 loop delay_ms_wait 
+7ec4 20600000 rtn 
+
+bn_zero:
+7ec5 18007203 force 3 ,loopcnt 
+
+memset0:
+7ec6 18007e00 force 0 ,pdata 
+
+memset8:
+7ec7 e0a40000 istore 8 ,contw 
+7ec8 c2007ec7 loop memset8 
+7ec9 20600000 rtn 
+
+memset0_8:
+7eca 18007e00 force 0 ,pdata 
+7ecb e0a40000 istore 8 ,contw 
+7ecc 20600000 rtn 
+
+memset0_4:
+7ecd 18007e00 force 0 ,pdata 
+7ece e0a20000 istore 4 ,contw 
+7ecf 20600000 rtn 
+
+clear_mem_256:
+7ed0 18007204 force 4 ,loopcnt 
+7ed1 20207ec6 branch memset0 
+
+clear_mem_512:
+7ed2 18007208 force 8 ,loopcnt 
+7ed3 20207ec6 branch memset0 
+
+clear_mem:
+7ed4 1f227e00 deposit loopcnt 
+7ed5 207a0000 rtn blank 
+7ed6 58000000 setarg 0 
+
+clear_mem_loop:
+7ed7 e0a08000 istore 1 ,contw 
+7ed8 c2007ed7 loop clear_mem_loop 
+7ed9 20600000 rtn 
+
+clear_temp_block:
+7eda df200020 arg 32 ,loopcnt 
+7edb d8a00ac2 arg mem_temp_block0 ,contw 
+7edc 20207ed4 branch clear_mem 
+
+xor_loop:
+7edd ea620000 ifetch 4 ,regc 
+7ede ea2a0000 ifetcht 4 ,rega 
+7edf 9842fe00 ixor temp ,pdata 
+7ee0 e0a20000 istore 4 ,contw 
+7ee1 1a20a204 increase 4 ,rega 
+7ee2 1a60a604 increase 4 ,regc 
+7ee3 c2007edd loop xor_loop 
+7ee4 20600000 rtn 
+
+inverse_data:
+7ee5 477dc03f bpatchx patch3f_3 ,mem_patch3f 
+7ee6 1f227e00 copy loopcnt ,pdata 
+7ee7 1fe67c01 sub pdata ,1 ,null 
+7ee8 20610000 rtn positive 
+7ee9 9a20a400 iadd rega ,regb 
+7eea 1a40a5ff increase -1 ,regb 
+7eeb 1f237200 rshift loopcnt ,loopcnt 
+
+inverse_loop:
+7eec ea288000 ifetcht 1 ,rega 
+7eed ea408000 ifetch 1 ,regb 
+7eee e2208000 istore 1 ,rega 
+7eef e2488000 istoret 1 ,regb 
+7ef0 1a40a5ff increase -1 ,regb 
+7ef1 1a20a201 increase 1 ,rega 
+7ef2 c2007eec loop inverse_loop 
+7ef3 20600000 rtn 
+
+memcpy_fast:
+7ef4 1f227e00 deposit loopcnt 
+7ef5 207a0000 rtn blank 
+
+memcpy_fast_loop:
+7ef6 1f20f3f8 increase -8 ,loopcnt 
+7ef7 20417eb9 call memcpy8 ,positive 
+7ef8 20628000 rtn zero 
+7ef9 20217ef6 branch memcpy_fast_loop ,positive 
+7efa 1f20f208 increase 8 ,loopcnt 
+
+memcpy_fast_loop_four:
+7efb 1f20f3fc increase -4 ,loopcnt 
+7efc 20417eb6 call memcpy4 ,positive 
+7efd 20628000 rtn zero 
+7efe 20217efb branch memcpy_fast_loop_four ,positive 
+7eff 1f20f204 increase 4 ,loopcnt 
+7f00 20207f01 branch memcpy 
+
+memcpy:
+7f01 1f227e00 deposit loopcnt 
+7f02 207a0000 rtn blank 
+
+memcpy_loop:
+7f03 e8c08000 ifetch 1 ,contr 
+7f04 e0a08000 istore 1 ,contw 
+7f05 c2007f03 loop memcpy_loop 
+7f06 20600000 rtn 
+
+timer_stop:
+7f07 58000000 setarg 0 
+
+timer_init:
+7f08 1c430400 rshift clkn_bt ,temp 
+7f09 600a4094 storet 4 ,mem_last_clkn 
+7f0a d8a0419d arg mem_timers ,contw 
+7f0b 98000400 iforce temp 
+7f0c 18e3fe00 lshift queue ,pdata 
+7f0d 98a08a00 iadd contw ,contw 
+7f0e e0a90000 istoret 2 ,contw 
+7f0f 477e403f bpatchx patch3f_4 ,mem_patch3f 
+7f10 20600000 rtn 
+
+timer_check_timeout:
+7f11 d9600800 arg 0x800 ,timeup 
+7f12 19701600 lshift16 timeup ,timeup 
+7f13 9960fe00 iadd timeup ,pdata 
+7f14 20600000 rtn 
+
+timer_reinit:
+7f15 d8e00000 arg 0 ,queue 
+
+timer_check:
+7f16 477ec03f bpatchx patch3f_5 ,mem_patch3f 
+7f17 680a4094 fetcht 4 ,mem_last_clkn 
+7f18 1c437e00 rshift clkn_bt ,pdata 
+7f19 60024094 store 4 ,mem_last_clkn 
+7f1a 98467c00 isub temp ,null 
+7f1b 24417f11 ncall timer_check_timeout ,positive 
+7f1c 98461600 isub temp ,timeup 
+7f1d 19620400 copy timeup ,temp 
+7f1e d8c0419d arg mem_timers ,contr 
+7f1f 18c20a00 copy contr ,contw 
+7f20 df200010 arg 16 ,loopcnt 
+
+timer_loop:
+7f21 e8c10000 ifetch 2 ,contr 
+7f22 98467e00 isub temp ,pdata 
+7f23 20217f25 branch timer_counting ,positive 
+7f24 18007e00 force 0 ,pdata 
+
+timer_counting:
+7f25 e0a10000 istore 2 ,contw 
+7f26 c2007f21 loop timer_loop 
+7f27 d8c0419d arg mem_timers ,contr 
+7f28 18e3fe00 lshift queue ,pdata 
+7f29 98c08c00 iadd contr ,contr 
+7f2a e8c10000 ifetch 2 ,contr 
+7f2b 20600000 rtn 
+
+clk_add:
+7f2c 98408400 iadd temp ,temp 
+7f2d 18427200 copy temp ,loopcnt 
+7f2e 58000ea6 setarg 3750 
+7f2f 9f267e00 isub loopcnt ,pdata 
+7f30 20610000 rtn positive 
+7f31 1fe67e00 sub pdata ,0 ,pdata 
+7f32 18510400 rshift16 temp ,temp 
+7f33 18408401 increase 1 ,temp 
+7f34 18500400 lshift16 temp ,temp 
+7f35 98418400 ior temp ,temp 
+7f36 20600000 rtn 
+
+clk_diff_rt:
+7f37 20407f39 call clk_diff 
+7f38 20207f43 branch clk2rt 
+
+clk_diff:
+7f39 78547c00 disable user 
+7f3a 98467e00 isub temp ,pdata 
+7f3b 20217f3e branch clk_diff_pos ,positive 
+7f3c 78347c00 enable user 
+7f3d 1fe67e00 sub pdata ,0 ,pdata 
+
+clk_diff_pos:
+7f3e c4078000 rtnbit0 15 
+7f3f d85f0ea6 arg -61786 ,temp 
+7f40 9840fe00 iadd temp ,pdata 
+7f41 793ffe40 set0 64 ,pdata 
+7f42 20600000 rtn 
+
+clk2rt:
+7f43 98000c00 iforce contr 
+7f44 1ff17e00 rshift16 pdata ,pdata 
+7f45 d8400ea6 arg 3750 ,temp 
+7f46 984ffe00 imul32 temp ,pdata 
+7f47 98c0fe00 iadd contr ,pdata 
+7f48 20600000 rtn 
+
+clk2lpo:
+7f49 1fed7e00 lshift8 pdata ,pdata 
+7f4a 1ff27e00 lshift4 pdata ,pdata 
+7f4b 6809c16f fetcht 3 ,mem_clks_per_lpo 
+7f4c 9846fc00 idiv temp 
+7f4d 20407f86 call wait_div_end 
+7f4e 18078400 quotient temp 
+7f4f 20600000 rtn 
+
+clk2bt:
+7f50 d8400ea6 arg 3750 ,temp 
+7f51 9846fc00 idiv temp 
+7f52 20407f86 call wait_div_end 
+7f53 1807fe00 quotient pdata 
+7f54 1ff07e00 lshift16 pdata ,pdata 
+
+clk2bt2:
+7f55 18070400 remainder temp 
+7f56 98418400 ior temp ,temp 
+7f57 20600000 rtn 
+
+string2dec_from_uart:
+7f58 d8400000 arg 0 ,temp 
+
+string2dec_from_uart_done:
+7f59 18422600 copy temp ,regc 
+7f5a e8608000 ifetch 1 ,contru 
+7f5b 20407f64 call uchar2dialog 
+7f5c 1a620400 copy regc ,temp 
+7f5d 20407f95 call swap 
+7f5e da40000a arg 10 ,regb 
+7f5f 9a4ffe00 imul32 regb ,pdata 
+7f60 9840fe00 iadd temp ,pdata 
+7f61 1fe20400 copy pdata ,temp 
+7f62 c2007f59 loop string2dec_from_uart_done 
+7f63 20600000 rtn 
+
+uchar2dialog:
+7f64 d840003a arg 0x3a ,temp 
+7f65 98467c00 isub temp ,null 
+7f66 24217f6d nbranch uchar2dialog_number ,positive 
+7f67 d8400061 arg 0x61 ,temp 
+7f68 98467c00 isub temp ,null 
+7f69 20217f70 branch uchar2dialog_a2f ,positive 
+7f6a d8400037 arg 0x37 ,temp 
+7f6b 98467e00 isub temp ,pdata 
+7f6c 20600000 rtn 
+
+uchar2dialog_number:
+7f6d d8400030 arg 0x30 ,temp 
+7f6e 98467e00 isub temp ,pdata 
+7f6f 20600000 rtn 
+
+uchar2dialog_a2f:
+7f70 d8400057 arg 0x57 ,temp 
+7f71 98467e00 isub temp ,pdata 
+7f72 20600000 rtn 
+
+pn9:
+7f73 18426000 copy temp ,alarm 
+7f74 580001ff setarg 0x1ff 
+7f75 18002400 force 0 ,regb 
+
+pn9_loop:
+7f76 1fe92200 rshift3 pdata ,rega 
+7f77 1a232200 rshift rega ,rega 
+7f78 9a22a200 ixor rega ,rega 
+7f79 2a2ffe00 isolate1 0 ,rega 
+7f7a 7920fe09 setflag true ,9 ,pdata 
+7f7b 18430400 rshift temp ,temp 
+7f7c 2feffe00 isolate1 0 ,pdata 
+7f7d 79208407 setflag true ,7 ,temp 
+7f7e 1fe37e00 rshift pdata ,pdata 
+7f7f 1a40a401 increase 1 ,regb 
+7f80 2a400e00 compare 0 ,regb ,0x7 
+7f81 2420ff76 nbranch pn9_loop ,true 
+7f82 e0a88000 istoret 1 ,contw 
+7f83 c2007f76 loop pn9_loop 
+7f84 1e020400 copy alarm ,temp 
+7f85 20600000 rtn 
+
+wait_div_end:
+7f86 207a8000 rtn modone 
+7f87 20207f86 branch wait_div_end 
+
+compare_loop:
+
+string_compare:
+7f88 ea208000 ifetch 1 ,rega 
+7f89 ea488000 ifetcht 1 ,regb 
+7f8a 98467c00 isub temp ,null 
+7f8b 24628000 nrtn zero 
+7f8c 1a20a201 increase 1 ,rega 
+7f8d 1a40a401 increase 1 ,regb 
+7f8e c2007f88 loop string_compare 
+7f8f 18007c00 force 0 ,null 
+7f90 20600000 rtn 
+
+ceiling:
+7f91 98467c00 isub temp ,null 
+7f92 24610000 nrtn positive 
+7f93 18427e00 deposit temp 
+7f94 20600000 rtn 
+
+swap:
+7f95 9840fe00 iadd temp ,pdata 
+7f96 98460400 isub temp ,temp 
+7f97 98467e00 isub temp ,pdata 
+7f98 20600000 rtn 
+
+clean_mem:
+7f99 df200200 arg 0x200 ,loopcnt 
+7f9a d8a04000 arg 0x4000 ,contw 
+7f9b 20207ec6 branch memset0 
+
+callback_func:
+7f9c 207a0000 rtn blank 
+7f9d 1fe27a00 copy pdata ,pc 
+
+wait_uarttx:
+7f9e 6811010e hfetch 2 ,core_uart_txitems 
+7f9f 243a7f9e nbranch wait_uarttx ,blank 
+7fa0 20600000 rtn 
+
+ice_break:
+7fa1 70820301 jam 0x1 ,core_ice_ctrl 
+7fa2 20600000 rtn 
+
+ice_setbp:
+7fa3 60110205 hstore 2 ,core_ice_break0 
+7fa4 68108203 hfetch 1 ,core_ice_ctrl 
+7fa5 79207e04 set1 4 ,pdata 
+7fa6 60108203 hstore 1 ,core_ice_ctrl 
+7fa7 20600000 rtn 
+
+ice_setbp2:
+7fa8 60110207 hstore 2 ,core_ice_break1 
+7fa9 68108203 hfetch 1 ,core_ice_ctrl 
+7faa 79207e06 set1 6 ,pdata 
+7fab 60108203 hstore 1 ,core_ice_ctrl 
+7fac 20600000 rtn 
+
+ice_set_write_bp:
+7fad 60110205 hstore 2 ,core_ice_break0 
+7fae 70820330 jam 0x30 ,core_ice_ctrl 
+7faf 20600000 rtn 
+
+test_enable_white:
+7fb0 68108043 hfetch 1 ,core_config 
+7fb1 793ffe04 set0 whiteoff_bit ,pdata 
+7fb2 60108043 hstore 1 ,core_config 
+7fb3 20600000 rtn 
+
+check_uart_tx_buff:
+7fb4 6811010e hfetch 2 ,core_uart_txitems 
+7fb5 d8400200 arg uart_air_control_threshold ,temp 
+
+pdata_sub_temp:
+7fb6 98467c00 isub temp ,null 
+7fb7 20600000 rtn 
+
+fifo_in:
+7fb8 477f403f bpatchx patch3f_6 ,mem_patch3f 
+7fb9 ea2c0000 ifetcht util_fifo_len ,rega 
+7fba 18417eff and temp ,0xff ,pdata 
+7fbb 243a7fbe nbranch fifo_in_push ,blank 
+7fbc 184cfe00 rshift8 temp ,pdata 
+7fbd e2240000 istore util_fifo_len ,rega 
+
+fifo_in_push:
+7fbe 1a20a207 increase util_fifo_len + util_fifo_offset ,rega 
+7fbf ea208000 ifetch 1 ,rega 
+7fc0 243a2a8c nbranch assert ,blank 
+7fc1 68008a99 fetch 1 ,mem_fifo_temp 
+7fc2 e2208000 istore 1 ,rega 
+7fc3 20600000 rtn 
+
+fifo_out:
+7fc4 477fc03f bpatchx patch3f_7 ,mem_patch3f 
+7fc5 df200008 arg util_fifo_len ,loopcnt 
+7fc6 ea240000 ifetch util_fifo_len ,rega 
+7fc7 207a0000 rtn blank 
+
+fifo_out_loop:
+7fc8 ea208000 ifetch 1 ,rega 
+7fc9 243a7fcd nbranch fifo_out_end ,blank 
+7fca 1a20a201 increase 1 ,rega 
+7fcb c2007fc8 loop fifo_out_loop 
+7fcc 20202a8c branch assert 
+
+fifo_out_end:
+7fcd d8400000 arg 0 ,temp 
+7fce e2288000 istoret 1 ,rega 
+7fcf 20600000 rtn 
+
+fifo_is_empty:
+7fd0 ea240000 ifetch util_fifo_len ,rega 
+7fd1 20600000 rtn 
+
+fifo_is_full:
+7fd2 ea208000 ifetch 1 ,rega 
+7fd3 20600000 rtn 
+
+fifo_is_near_full:
+7fd4 ea210000 ifetch 2 ,rega 
+7fd5 20600000 rtn 
+
+fifo_content_count:
+7fd6 d8400000 arg 0 ,temp 
+
+fifo_content_count_loop:
+7fd7 68008006 fetch 1 ,contr 
+7fd8 c2007fd7 loop fifo_content_count_loop ,blank 
+7fd9 18408401 increase 1 ,temp 
+7fda c2007fd7 loop fifo_content_count_loop 
+7fdb 18427e00 copy temp ,pdata 
+7fdc 20600000 rtn 
+
+not_greater_than:
+7fdd 98467c00 isub temp ,null 
+7fde 24610000 nrtn positive 
+7fdf 18427e00 copy temp ,pdata 
+7fe0 20600000 rtn 
+
+disable_positive:
+7fe1 18007dff force -1 ,null 
+7fe2 20600000 rtn 
+
+enable_positive:
+
+disable_zero:
+7fe3 18007c01 force 1 ,null 
+7fe4 20600000 rtn 
+
+enable_zero:
+7fe5 18007c00 force 0 ,null 
+7fe6 20600000 rtn 
+
+enable_user:
+7fe7 78347c00 enable user 
+7fe8 20600000 rtn 
+
+disable_user:
+7fe9 78547c00 disable user 
+7fea 20600000 rtn 
+
+enable_user2:
+7feb 78367c00 enable user2 
+7fec 20600000 rtn 
+
+disable_user2:
+7fed 78567c00 disable user2 
+7fee 20600000 rtn 
+
+disable_blank:
+7fef 58000001 setarg 1 
+7ff0 20600000 rtn 
+
+enable_blank:
+7ff1 58000000 setarg 0 
+7ff2 20600000 rtn 
+
+reverse_byte:
+7ff3 1f227e00 copy loopcnt ,pdata 
+7ff4 207a0000 rtn blank 
+7ff5 18c27e00 copy contr ,pdata 
+7ff6 9f20fe00 iadd loopcnt ,pdata 
+7ff7 1fe0ffff increase -1 ,pdata 
+7ff8 1fe20c00 copy pdata ,contr 
+
+reverse_loop:
+7ff9 e8c08000 ifetch 1 ,contr 
+7ffa 18c08dfe increase -2 ,contr 
+7ffb e0a08000 istore 1 ,contw 
+7ffc c2007ff9 loop reverse_loop 
+7ffd 20600000 rtn 
+
Index: output/romcode.rom
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/output/romcode.rom	(revision 3239)
+++ /branch/flip_pen/flip_pen_24G&BLE/output/romcode.rom	(working copy)
@@ -22753,4 +22753,1824 @@
 20407786
 da20068e
 da40075e
-d8a00
\ No newline at end of file
+d8a00646
+20207786
+e8c20000
+18002204
+18a08a03
+e0a08000
+1fecfe00
+18a08bfe
+1a20a3ff
+2422f8e8
+18a08a05
+c20078e5
+20600000
+18ebfe00
+99608c00
+e8c20000
+20600000
+18006010
+d96005e6
+1e008ff9
+204078f0
+98000400
+1e008ff0
+204078f0
+98408400
+1e008ffe
+204078f0
+1fee7e01
+98408400
+1e008ff1
+204078f0
+1fee7e00
+98408400
+1e0bfe00
+99608a00
+e0aa0000
+1e00e001
+2e01fe40
+2420f8f6
+20600000
+d8c008fe
+18007007
+e8c20000
+98005e00
+1f00f1ff
+2021790d
+20600000
+4776403d
+204078f4
+d8a006e6
+18007000
+1de27e00
+e0a20000
+1f00f001
+2f01fe08
+2420f916
+204074b9
+d9608700
+de0005e6
+18007240
+ee0a0000
+e9620000
+19609604
+1e00e004
+9840fe00
+18007007
+9de08400
+18007004
+1dee7e03
+98408400
+18007005
+1de27e00
+18007006
+9de2fe00
+18007004
+9de17e00
+18007006
+9de2fe00
+98408400
+18007007
+18425e00
+18007003
+1de27e00
+9840de00
+18007000
+1de27e00
+18007001
+9de10400
+9de1fe00
+18007002
+9de17e00
+98418400
+18007000
+1dee7e02
+9840fe00
+18007007
+9de0de00
+980efc00
+c200791f
+d8c006e6
+18007000
+e8c20000
+9de0de00
+1f00f001
+2f01fe08
+2420f948
+202074bd
+d8a00a3e
+18007007
+1de27e00
+e0a20000
+1f00f1ff
+20217950
+20600000
+d8a005e6
+18c08dfc
+1f262210
+e8c20000
+9842fe00
+e0a20000
+18c08df8
+c2007958
+1a227200
+18427e00
+e0a20000
+c200795f
+20600000
+20407967
+2040794e
+2020798d
+20407967
+2020798d
+d8c009de
+d8a005e6
+18007206
+20407a71
+d8c04642
+18007206
+20407a71
+d8c00a3e
+20407a70
+2040790b
+20407912
+d8c00a2e
+d8a005e6
+20207984
+d8c04642
+d8a005e6
+18007206
+20407a71
+d8c009de
+18007206
+20407a71
+d8c00a2e
+20407a70
+2040790b
+20407912
+d8c00a3e
+d8a005e6
+20407984
+2020798d
+20407a70
+58800000
+1fed7e00
+e0a20000
+18007205
+20407ec6
+58000280
+e0a20000
+20207912
+68020a3e
+da2003e8
+9a26fc00
+20407f86
+18077e00
+600209ba
+1807fe00
+da2003e8
+9a26fc00
+20407f86
+18077e00
+da2003e8
+9a2ffe00
+680a09ba
+9840fe00
+600209ba
+20600000
+70466400
+202079a2
+6800c662
+c081799e
+4776c03d
+58363636
+1fed0400
+18418436
+68010a7e
+1fe20c00
+18007204
+20407955
+2040790b
+20407912
+68010a80
+1fe20c00
+d8a005e6
+18007206
+20407a71
+68010a82
+1fe20c00
+18007206
+20407a71
+58800000
+e0a18000
+6800c664
+e0a08000
+18007e00
+e0a40000
+58000388
+e0a20000
+20407912
+2040794e
+d8c00a3e
+d8a00706
+20407ebd
+585c5c5c
+1fed0400
+1841845c
+68010a7e
+1fe20c00
+18007204
+20407955
+2040790b
+20407912
+d8c00726
+d8a005e6
+18007208
+20407a71
+58800000
+1fed7e00
+e0a20000
+20407ec5
+58000300
+e0a20000
+20407912
+2020794e
+58363636
+1fed0400
+18418436
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+68010a8a
+1fe20c00
+d8a005e6
+20407a70
+68010a8c
+1fe20c00
+20407a70
+5862746c
+1fed7e00
+1fe1fe6b
+e0a20000
+d8c00733
+18007203
+20407a71
+58800000
+1fed7e00
+e0a20000
+18007e00
+e0a40000
+58000380
+e0a20000
+20407912
+2040794e
+d8c00a3e
+d8a00706
+20407ebd
+585c5c5c
+1fed0400
+1841845c
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00726
+d8a005e6
+18007208
+20407a71
+58800000
+1fed7e00
+e0a20000
+20407ec5
+58000300
+e0a20000
+20407912
+2020794e
+6800c662
+c0817a1e
+4777403d
+58363636
+1fed0400
+18418436
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00a3e
+d8a005e6
+20407a70
+d8c00a2e
+20407a70
+20207a33
+58000000
+6002468a
+20207a0f
+58000000
+6002468a
+20207a26
+6800c662
+c0817a21
+58363636
+1fed0400
+18418436
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00a2e
+d8a005e6
+20407a70
+d8c00a3e
+20407a70
+58000000
+e0a40000
+e0a20000
+6802468a
+e0a20000
+18a20400
+70072680
+18420a00
+d8c00736
+20407a70
+20407912
+d8a005e6
+18007207
+20407ec6
+e0a20000
+580003f8
+e0a20000
+20407912
+2040794e
+d8c00a3e
+d8a00706
+20407ebd
+585c5c5c
+1fed0400
+1841845c
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00726
+d8a005e6
+18007208
+20407a71
+58800000
+1fed7e00
+e0a20000
+20407ec5
+58000300
+e0a20000
+20407912
+2020794e
+7005e3c0
+680085e3
+207a0000
+1fe0ffff
+600085e3
+d8c006be
+204076ec
+2020fa5e
+d8c005e6
+d8a00676
+202076f2
+20407803
+680085e3
+1fe0ffff
+600085e3
+d8c006be
+204076ec
+20608000
+20207854
+18007204
+18c08dfc
+e8c20000
+e0a20000
+18c08df8
+c2007a72
+20600000
+4777c03d
+6800c4be
+203a5af0
+20405aec
+20407583
+20207a7d
+6800c4c3
+c1800000
+6800c4c0
+c1800000
+d8a045b2
+18000e0f
+204076a2
+180a7e00
+1fe37e00
+e0a10000
+d8a00766
+d8c045b2
+20407ebd
+d8a00646
+d8c0095e
+20407eb3
+d8a00686
+20407ed0
+70068601
+20407ac7
+7044c003
+20600000
+d8a045d2
+d8c006a6
+20407eb3
+7044c303
+7044c000
+20600000
+680089b9
+c1800000
+6800c4c0
+c1800000
+d8a00766
+d8c045b2
+20407ebd
+d8a00646
+d8c009be
+20407eb3
+d8a00686
+20407ed0
+70068601
+20407ac7
+7044c004
+20600000
+d8a009fe
+d8c006a6
+20407ebd
+7009b903
+7044c000
+20600000
+6800c4be
+207a0000
+6800c4c0
+207a0000
+1fe0fe80
+6000c4c0
+c3838000
+680105e3
+203a7ab9
+20207abf
+4778403e
+20407ad4
+6800c4c0
+c001fa93
+c0027aa9
+20600000
+20407ae6
+680105e3
+1fe0ffff
+600105e3
+d8c00766
+204076ec
+20608000
+20207b37
+4778c03e
+58000100
+600105e3
+680105e3
+207a0000
+1fe0ffff
+600105e3
+d8c00766
+204076ec
+2020faca
+d8c00646
+d8a00706
+20207eb2
+da200746
+d8a00846
+20407ba3
+da200846
+d8a007e6
+20407c79
+da200706
+da4007e6
+d8a006a6
+20407be1
+da200846
+da4007e6
+d8a00826
+20407be1
+da200726
+da400826
+d8a006c6
+20207be1
+da200746
+d8a00826
+20407c79
+da200826
+d8a00846
+20407c79
+da20093e
+da400846
+d8a00846
+20407be1
+da200706
+d8a00826
+20407c79
+d8c00826
+d8a007e6
+20407ebd
+da2007e6
+20407c80
+da200826
+da4007e6
+d8a00826
+20407c7d
+da200826
+da400846
+d8a00826
+20407c7d
+d8c00706
+d8a007e6
+20407ebd
+da200726
+d8a00846
+20407c79
+da2007e6
+20407c80
+da2007e6
+20407c80
+da2007e6
+da400846
+d8a007e6
+20407be1
+da200846
+d8a00806
+20407c79
+da200806
+20407c80
+da200806
+20407c80
+da200806
+20407c80
+d8c00726
+d8a00846
+20407ebd
+da200846
+20407c80
+da200846
+da400746
+d8a00746
+20407be1
+da200826
+d8a00846
+20407c79
+da200846
+da4007e6
+d8a00846
+20407c96
+da200846
+da4007e6
+d8a00706
+20407c96
+da2007e6
+da400706
+d8a00846
+20407c96
+da200846
+da400826
+d8a00846
+20407be1
+da200846
+da400806
+d8a00726
+20207c96
+da200686
+d8a00866
+20407c79
+da200706
+da400866
+d8a00806
+20407be1
+da200686
+da400866
+d8a00866
+20407be1
+da200726
+da400866
+d8a007e6
+20407be1
+da200746
+d8a00866
+20407c79
+da200646
+da400866
+d8a00826
+20407be1
+da200746
+da400866
+d8a00866
+20407be1
+da200666
+da400866
+d8a00846
+20407be1
+da400806
+da200826
+d8a00866
+20407c96
+da200806
+da400826
+d8a00806
+20407c7d
+da4007e6
+da200846
+d8a00826
+20407c96
+da2007e6
+da400846
+d8a007e6
+20407c7d
+da2007e6
+da400866
+d8a007e6
+20407be1
+da200746
+da400686
+d8a00846
+20407be1
+da200846
+da400866
+d8a00746
+20407be1
+da200866
+d8a00866
+20407c79
+da200866
+da400806
+d8a00846
+20407be1
+da200866
+da4007e6
+d8a007e6
+20407be1
+da200826
+d8a00706
+20407c79
+da200706
+da400846
+d8a00706
+20407c96
+d8c00706
+d8a00866
+20407ebd
+da200866
+20407c80
+da200846
+da400866
+d8a00846
+20407c96
+da200846
+da400826
+d8a00826
+20407be1
+da200826
+da4007e6
+d8a00726
+20407c96
+da200726
+da40091e
+d8a00726
+18002600
+68008726
+2feffe00
+2040fc7b
+1a626000
+da200726
+20407cab
+68008745
+2e0ffe00
+7920fe07
+60008745
+20600000
+18a21600
+d8a00806
+20407ed0
+18007e00
+60020826
+70080601
+d8a00786
+20407ed2
+d8c0091e
+d8a007c6
+20407ebd
+1a220c00
+d8a007e6
+20407ebd
+d8c007e6
+20407cb5
+203a7bda
+da2007e6
+da400806
+20407cb8
+da2007c6
+da400786
+20407cb8
+da2007e6
+da4007c6
+20407cb1
+20217bcc
+da2007c6
+da4007e6
+1a220a00
+20407ca9
+da200806
+da400786
+1a420a00
+20407c7b
+ea208000
+9a60a600
+ea408000
+9a60fe00
+e2408000
+20207bb1
+da2007e6
+da4007c6
+1a220a00
+20407ca9
+da200786
+da400806
+1a420a00
+20407c7b
+ea208000
+9a60a600
+ea408000
+9a60fe00
+e2408000
+20207bb1
+da200786
+19620a00
+20407c0a
+da20091e
+19622400
+19620a00
+20207c96
+18a21600
+18007000
+d8a00786
+20407ed2
+d8a00ad2
+20407ed2
+1a220c00
+700ad200
+58000000
+20407c73
+1a420c00
+20407c77
+18000e00
+d8a00786
+d8400ad2
+18e22400
+1a4bfe00
+9840a400
+18000400
+18002600
+e8a20000
+98002200
+ea420000
+1a627000
+9deffe00
+9a20fe00
+9840fe00
+e0a20000
+1fef0400
+1a60a601
+2a61fe08
+2420fbf5
+18427e00
+e0a20000
+18a08be0
+18e08e01
+28e1fe08
+2420fbef
+da200786
+19620a00
+20207c0a
+4779403e
+18a21600
+1a226000
+da4007c6
+1a420a00
+20407ecd
+e0a40000
+1a208c2c
+20407eb9
+20407eb5
+1a422200
+20407c80
+da4007c6
+1e022200
+19620a00
+20407c7d
+da4007c6
+1a420a00
+20407ecd
+e0a40000
+1e008c30
+20407ebf
+20407ecd
+1a422200
+20407c80
+da4007c6
+19622200
+1a220a00
+20407c7d
+da4007c6
+1a420a00
+1e008c20
+20407eb5
+20407ecd
+e0a40000
+1e008c38
+20407eb9
+19622200
+1a220a00
+20407c7d
+da4007c6
+1a420a00
+1e008c24
+20407eb5
+1e008c34
+20407eb5
+1e008c34
+20407eb6
+1e008c20
+20407eb6
+19622200
+1a220a00
+20407c7d
+da4007c6
+1a420a00
+1e008c2c
+20407eb5
+20407ecd
+e0a40000
+1e008c20
+20407eb6
+1e008c28
+20407eb6
+19622200
+1a220a00
+20407c96
+da4007c6
+1a420a00
+1e008c30
+20407eb9
+20407eb9
+18007e00
+e0a40000
+1e008c24
+20407eb6
+1e008c2c
+20407eb6
+19622200
+1a220a00
+20407c96
+da4007c6
+1a420a00
+1e008c34
+20407eb5
+1e008c20
+20407eb5
+20407ecd
+1e008c30
+20407eb6
+19622200
+1a220a00
+20407c96
+da4007c6
+1a420a00
+1e008c38
+20407eb9
+20407ecd
+1e008c24
+20407eb5
+20407ecd
+1e008c34
+20407eb6
+19622200
+1a220a00
+20207c96
+18007220
+d8a00ad2
+98a08a00
+20207f01
+18007208
+20207781
+1a222400
+20207be1
+18007208
+20207712
+20407c7b
+18a22200
+20207c81
+20407cae
+2a6ffe00
+2020fc8a
+da40091e
+1a222600
+1a20a3e0
+20407cb1
+24610000
+1a622200
+20207c92
+20407c92
+1a222600
+1a20a3e0
+da40091e
+20407cb1
+24610000
+1a622200
+20207c92
+1a20a3e0
+da40091e
+1a220a00
+20207ca9
+20407ca9
+2020fca0
+18a0a3e0
+da40091e
+20407cb1
+24610000
+da40091e
+18a0a3e0
+1a220a00
+20207ca9
+18a0a3e0
+da40091e
+1a220a00
+20407c7b
+20608000
+18a0a3e0
+da40091e
+1a220a00
+20207c7b
+18007208
+20207720
+18007208
+1a20a21c
+2020772f
+18007208
+18002600
+2020773d
+18007208
+1a20a21c
+1a40a41c
+20207707
+e8c40000
+247a0000
+202076f5
+1a226000
+1e022200
+ea208000
+2feffe00
+20608000
+20407cab
+ea408000
+2fec0000
+2020fcc8
+da20091e
+1a420a00
+20407c7b
+ea408000
+9a60fe00
+e2408000
+1a40a5e0
+1a40a220
+18007209
+2040772f
+20207cb9
+20402c65
+20758000
+20407cd3
+20407d75
+20207d08
+20407d29
+20207d64
+6800c686
+c17f8000
+98000400
+2040680e
+6808c686
+20406825
+20000064
+6808c686
+204067fb
+20207cdd
+4779c03e
+6800c686
+c17f8000
+1fe20400
+2040681d
+2420fcef
+20407cf9
+68014682
+79207e0c
+60014682
+6800c679
+c1000000
+70467900
+6800c685
+6000c678
+20407d00
+700a992c
+20207d86
+68014682
+793ffe0c
+60014682
+6800c679
+c1008000
+70467901
+70467800
+20407d02
+700a992d
+20207d86
+6800c678
+207a0000
+1fe0ffff
+6000c678
+247a0000
+700a9910
+20207d86
+d8e00007
+20202c32
+d8e00007
+20202c36
+6801421b
+1a2fa40b
+9a40a400
+20600000
+6800c21a
+207a0000
+1fe27200
+6801421b
+1fe22400
+1a40a602
+ea688000
+2040680e
+20407d32
+1a40a40b
+c2007d0d
+20600000
+20407d04
+58000002
+e2408000
+20407d5e
+20207d35
+20407d04
+58000003
+e2408000
+20407d5e
+20207d32
+20407d04
+58000001
+e2408000
+580000ff
+e0a08000
+20207d32
+20407d04
+df20000b
+1a620c00
+1a420a00
+20207ef4
+6800c21a
+207a0000
+da200000
+20407d38
+1a20a201
+6800c21a
+9a267c00
+20628000
+20207d2c
+1a40a602
+ea688000
+20206825
+1a40a602
+ea688000
+20206829
+1a208e0b
+20407f16
+247a0000
+20407d04
+ea408000
+c0017d35
+c001fd32
+c0007d32
+c002fd4c
+20407d35
+1a40a607
+20407e7c
+ea610000
+20407f9c
+20407e8c
+58000005
+e2408000
+1a40a603
+ea610000
+20207d5c
+20407d32
+1a40a609
+20407e7c
+ea610000
+20407f9c
+20407e8c
+1a40a601
+ea608000
+c07ffd58
+1fe0ffff
+e2608000
+203a7d19
+58000004
+e2408000
+1a40a605
+ea610000
+1a208e0b
+20207f08
+58000000
+20207d5c
+58001000
+1ff07e00
+9a40a400
+20600000
+477a403e
+da200000
+680a467a
+1c422400
+1a427e00
+98467c00
+24417d60
+1a427e00
+184084a0
+184084a0
+98467c00
+24217d78
+1a20a201
+1a217e0f
+243a7d6b
+da200000
+20407d7f
+1c427e00
+6002467a
+20600000
+477ac03e
+1a227e00
+207a0000
+18408560
+18408560
+793f841c
+600a467a
+2020335f
+70466601
+6800c667
+243a7d81
+20600000
+70466600
+20600000
+477b403e
+20407d80
+1a227e00
+60020a91
+da204668
+20407fb8
+68020a91
+1fe22200
+20207d84
+477bc03e
+20407d80
+1a227e00
+60020a91
+da204670
+20407fb8
+68020a91
+1fe22200
+20207d84
+58000000
+60044670
+60044668
+20600000
+477c403f
+6800c1ce
+247a0000
+da204670
+20407fd0
+207a0000
+700a9000
+20407da7
+68008a90
+203a7d9c
+20600000
+20407d80
+da204670
+20407fc4
+1fe20400
+20407d84
+477cc03f
+18427e00
+207a0000
+c000fddd
+c0017de2
+c001fde8
+c003fded
+c0047dee
+c004fdef
+c005fdf2
+c0067df3
+c006fdf4
+c0077dfa
+c007fdff
+c0087e05
+c009fe0f
+c00a7e11
+c00afe13
+c00b7e15
+c00bfe18
+c00c7e1a
+c00cfe1d
+c00dfe25
+c00f7e2f
+60008a99
+477d403f
+204062bc
+243a7ddb
+68008a99
+c584fdd6
+c0027dea
+c002cd17
+c0034d26
+c0057df0
+c008fe0a
+c0097e0e
+c00efe26
+c00fe7cc
+c01067d0
+c010fe31
+c012e70b
+20600000
+60008a99
+20402252
+2022fddb
+2040225a
+24628000
+700a9001
+20207d8f
+68014682
+79207e06
+60014682
+70409303
+20600000
+70468000
+70409300
+68014682
+793ffe06
+60014682
+20600000
+7041ce05
+20600000
+70007c07
+7004ca13
+20600000
+20600000
+20600000
+20600000
+7004d402
+20204d0a
+20600000
+20600000
+70436e01
+70448400
+68014682
+79207e0b
+60014682
+20600000
+68014682
+793ffe0b
+60014682
+70436e00
+20600000
+70436e01
+70448401
+68014682
+79207e0b
+60014682
+20600000
+68014682
+793ffe0b
+60014682
+70436e00
+20600000
+58000014
+6001046d
+600144ba
+20205c92
+20205abf
+da200000
+20207d19
+da200000
+20207d14
+da200000
+20207d1e
+70436901
+7041ce1b
+20600000
+70436901
+20600000
+70436900
+7041ce00
+20600000
+680141eb
+20407f9c
+6800c686
+c07ffe23
+1fe20400
+204067fb
+20407d98
+20202b1f
+20205b02
+70007c34
+79200003
+24748000
+70455b00
+70007c13
+6800816d
+793ffe02
+6000816d
+20600000
+18000e03
+20207f07
+204062f8
+70007d41
+20205f9d
+6800c682
+c4060000
+c4038000
+20207e2f
+68014218
+1fe08a02
+58000000
+e0a18000
+20600000
+20407fe9
+20407e69
+207a0000
+68014218
+1fe0a402
+ea488000
+18408401
+e2488000
+efe88000
+18427200
+1fe0a404
+ea408000
+984ffe00
+98c08a00
+1a220c00
+20407f01
+20407e6d
+1fe0ffff
+ea488000
+18408401
+98410400
+e2488000
+20207fe7
+20407fe9
+20407e65
+207a0000
+68014218
+1fe0a402
+ea488000
+184085ff
+e2488000
+efe88000
+18427200
+1fe0a403
+ea408000
+984ffe00
+98c08c00
+18c08c01
+1a220a00
+20207e4c
+68014218
+1fe08c02
+e8c08000
+20600000
+20407e6d
+e8c88000
+98467e00
+20600000
+68014218
+1fe08c01
+e8c08000
+20600000
+1f267c00
+20628000
+1fe37e00
+c2007e73
+20600000
+18007e01
+1f267c00
+20628000
+1fe3fe00
+c2007e79
+20600000
+18a27e00
+60010abb
+600c0aa2
+19627e00
+60020aaa
+20407e85
+18c27e00
+60010ab9
+20600000
+1a227e00
+60020aae
+1a427e00
+60020ab2
+1a627e00
+60018ab6
+20600000
+680c0aa2
+68020aaa
+98001600
+20407e95
+68010abb
+98000a00
+68010ab9
+98000c00
+20600000
+68020aae
+98002200
+68020ab2
+98002400
+68018ab6
+98002600
+20600000
+68010abb
+1fe20a00
+20600000
+68010ab9
+1fe20c00
+20600000
+18a27e00
+60010abb
+20600000
+18c27e00
+60010ab9
+20600000
+18a27e00
+60010a97
+18c27e00
+60010a95
+20600000
+68010a97
+1fe20a00
+68010a95
+1fe20c00
+20600000
+20407ebd
+20407ebd
+20207ebd
+20407eb9
+e8c20000
+e0a20000
+20600000
+e8c40000
+e0a40000
+20600000
+20407ebf
+20407eb9
+20407eb9
+20407eb9
+20207eb9
+df20000a
+20002ee0
+c2007ec2
+20600000
+18007203
+18007e00
+e0a40000
+c2007ec7
+20600000
+18007e00
+e0a40000
+20600000
+18007e00
+e0a20000
+20600000
+18007204
+20207ec6
+18007208
+20207ec6
+1f227e00
+207a0000
+58000000
+e0a08000
+c2007ed7
+20600000
+df200020
+d8a00ac2
+20207ed4
+ea620000
+ea2a0000
+9842fe00
+e0a20000
+1a20a204
+1a60a604
+c2007edd
+20600000
+477dc03f
+1f227e00
+1fe67c01
+20610000
+9a20a400
+1a40a5ff
+1f237200
+ea288000
+ea408000
+e2208000
+e2488000
+1a40a5ff
+1a20a201
+c2007eec
+20600000
+1f227e00
+207a0000
+1f20f3f8
+20417eb9
+20628000
+20217ef6
+1f20f208
+1f20f3fc
+20417eb6
+20628000
+20217efb
+1f20f204
+20207f01
+1f227e00
+207a0000
+e8c08000
+e0a08000
+c2007f03
+20600000
+58000000
+1c430400
+600a4094
+d8a0419d
+98000400
+18e3fe00
+98a08a00
+e0a90000
+477e403f
+20600000
+d9600800
+19701600
+9960fe00
+20600000
+d8e00000
+477ec03f
+680a4094
+1c437e00
+60024094
+98467c00
+24417f11
+98461600
+19620400
+d8c0419d
+18c20a00
+df200010
+e8c10000
+98467e00
+20217f25
+18007e00
+e0a10000
+c2007f21
+d8c0419d
+18e3fe00
+98c08c00
+e8c10000
+20600000
+98408400
+18427200
+58000ea6
+9f267e00
+20610000
+1fe67e00
+18510400
+18408401
+18500400
+98418400
+20600000
+20407f39
+20207f43
+78547c00
+98467e00
+20217f3e
+78347c00
+1fe67e00
+c4078000
+d85f0ea6
+9840fe00
+793ffe40
+20600000
+98000c00
+1ff17e00
+d8400ea6
+984ffe00
+98c0fe00
+20600000
+1fed7e00
+1ff27e00
+6809c16f
+9846fc00
+20407f86
+18078400
+20600000
+d8400ea6
+9846fc00
+20407f86
+1807fe00
+1ff07e00
+18070400
+98418400
+20600000
+d8400000
+18422600
+e8608000
+20407f64
+1a620400
+20407f95
+da40000a
+9a4ffe00
+9840fe00
+1fe20400
+c2007f59
+20600000
+d840003a
+98467c00
+24217f6d
+d8400061
+98467c00
+20217f70
+d8400037
+98467e00
+20600000
+d8400030
+98467e00
+20600000
+d8400057
+98467e00
+20600000
+18426000
+580001ff
+18002400
+1fe92200
+1a232200
+9a22a200
+2a2ffe00
+7920fe09
+18430400
+2feffe00
+79208407
+1fe37e00
+1a40a401
+2a400e00
+2420ff76
+e0a88000
+c2007f76
+1e020400
+20600000
+207a8000
+20207f86
+ea208000
+ea488000
+98467c00
+24628000
+1a20a201
+1a40a401
+c2007f88
+18007c00
+20600000
+98467c00
+24610000
+18427e00
+20600000
+9840fe00
+98460400
+98467e00
+20600000
+df200200
+d8a04000
+20207ec6
+207a0000
+1fe27a00
+6811010e
+243a7f9e
+20600000
+70820301
+20600000
+60110205
+68108203
+79207e04
+60108203
+20600000
+60110207
+68108203
+79207e06
+60108203
+20600000
+60110205
+70820330
+20600000
+68108043
+793ffe04
+60108043
+20600000
+6811010e
+d8400200
+98467c00
+20600000
+477f403f
+ea2c0000
+18417eff
+243a7fbe
+184cfe00
+e2240000
+1a20a207
+ea208000
+243a2a8c
+68008a99
+e2208000
+20600000
+477fc03f
+df200008
+ea240000
+207a0000
+ea208000
+243a7fcd
+1a20a201
+c2007fc8
+20202a8c
+d8400000
+e2288000
+20600000
+ea240000
+20600000
+ea208000
+20600000
+ea210000
+20600000
+d8400000
+68008006
+c2007fd7
+18408401
+c2007fd7
+18427e00
+20600000
+98467c00
+24610000
+18427e00
+20600000
+18007dff
+20600000
+18007c01
+20600000
+18007c00
+20600000
+78347c00
+20600000
+78547c00
+20600000
+78367c00
+20600000
+78567c00
+20600000
+58000001
+20600000
+58000000
+20600000
+1f227e00
+207a0000
+18c27e00
+9f20fe00
+1fe0ffff
+1fe20c00
+e8c08000
+18c08dfe
+e0a08000
+c2007ff9
+20600000
+00000000
+0000a447
Index: program/patch.prog
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/program/patch.prog	(revision 3239)
+++ /branch/flip_pen/flip_pen_24G&BLE/program/patch.prog	(working copy)
@@ -380,7 +380,7 @@
 	invert temp,temp
 	set0 20,temp
 	hstoret 4,core_gpio_pd0
-	rtn
+	branch p_set_usb_gpio_wakeup
 
 p_g24_send_abort_packet:
 	jam 1,mem_24g_abort_pac
@@ -610,6 +610,7 @@
 	jam 0,mem_flip_connect_success
 	fetch 1,mem_flip_device_charging
 	call p_mouse_multi_led_blink_off,blank
+	jam 1,mem_flip_retransmit_fail
 	branch p_g24_tx_attempt_fail
 	
 p_g24_tx_paring_retry:
@@ -1701,8 +1702,8 @@
 	call p_mouse_tx_power_init
 p_g24_long_sleep_set:
 	call p_g24_check_51cmd_stop_24g
-	fetch 1,mem_g24_pair_fail
-	nrtn blank
+	//fetch 1,mem_g24_pair_fail
+	//nrtn blank
 	//arg 0x05,temp
 	//call gpio_clr_wake
 	call p_mouse_setgpio_lpm
@@ -1721,6 +1722,7 @@
 	setarg 0
 	store 3,mem_le_switch_adv_flag
 	jam 1,mem_flip_connect_success
+	jam 0,mem_flip_retransmit_fail
 	call mouse_le_bb_event_connected+3
 	//call p_g24_auto_pair_timeout_clear
 	call mouse_no_data_timer_init
@@ -1745,6 +1747,18 @@
 	arg 0x05,temp
 	call gpio_clr_wake
 	arg 0x14,queue
+	rtn
+	//branch p_set_usb_gpio_wakeup
+	//fetch 4,mem_gpio_wakeup_low
+	//qset0 pdata
+	//store 4,mem_gpio_wakeup_low
+	//fetch 4,mem_gpio_wakeup_high
+	//qset1 pdata
+	//store 4,mem_gpio_wakeup_high
+	//rtn
+	
+p_set_usb_gpio_wakeup:
+	arg 0x14,queue
 	fetch 4,mem_gpio_wakeup_low
 	qset0 pdata
 	store 4,mem_gpio_wakeup_low
@@ -1806,6 +1820,8 @@
 	copy rega,pdata
 	store 2,mem_timer_key
 	jam 0x0a,mem_g24_discon_long_sleep_timeout
+	fetch 1,mem_flip_retransmit_fail
+	ncall p_g24_reconn_start,blank
 	fetch 2,mem_key_long_press_timer
 	increase 1,pdata
 	store 2,mem_key_long_press_timer
Index: sched/mouse.dat
===================================================================
--- /branch/flip_pen/flip_pen_24G&BLE/sched/mouse.dat	(revision 3239)
+++ /branch/flip_pen/flip_pen_24G&BLE/sched/mouse.dat	(working copy)
@@ -424,7 +424,11 @@
 mem_24g_pairing_sm:ff
 mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
 mem_24g_enter_hibernate:00 ee 02	
-mem_firmware_version:13 00
+mem_firmware_version:14 00
+
+mem_flip_retransmit_fail:00
+mem_hibernate_flag:00
+mem_not_show_device_led:00
 
 mem_device_flag:
 02
