Index: format/g24.format
===================================================================
--- /branch/mouse_project/LeXiang/24M_dongle/format/g24.format	(revision 3640)
+++ /branch/mouse_project/LeXiang/24M_dongle/format/g24.format	(working copy)
@@ -126,6 +126,8 @@
 1 mem_24g_txcnt
 1 mem_24g_auto_paring_switch
 1 mem_24g_led_status
+1 mem_24g_pc_sleep
+1 mem_24g_pc_sleep_flag
 
 1 mem_24g_bind_delay_count
 1 mem_24g_work_delay_count
Index: output/eeprom.dat
===================================================================
--- /branch/mouse_project/LeXiang/24M_dongle/output/eeprom.dat	(revision 3640)
+++ /branch/mouse_project/LeXiang/24M_dongle/output/eeprom.dat	(working copy)
@@ -2,24 +2,24 @@
 02
 aa
 55
-ee
-12
+b2
+13
 c2
 84
 00
 0a
 c0
 42
-83
-ff
+84
+30
 c0
 44
-83
-d7
+84
+08
 c0
 00
-03
-f7
+04
+28
 c0
 47
 00
@@ -27,7 +27,7 @@
 c0
 62
 00
-73
+8b
 c0
 7b
 80
@@ -322,8 +322,8 @@
 00
 20
 3a
-49
-43
+00
+5a
 d8
 a0
 0c
@@ -336,6 +336,10 @@
 00
 8b
 24
+c0
+00
+80
+5d
 1f
 e6
 7c
@@ -355,13 +359,41 @@
 c0
 00
 00
-59
+61
 20
 20
 49
 57
 68
 00
+8b
+22
+c2
+82
+00
+56
+20
+60
+00
+00
+68
+00
+8c
+6e
+c3
+83
+80
+00
+20
+40
+00
+87
+20
+20
+49
+88
+68
+00
 8c
 6e
 1f
@@ -378,8 +410,12 @@
 03
 c0
 00
+00
+68
+c0
+00
 80
-5f
+76
 20
 20
 49
@@ -389,9 +425,65 @@
 8c
 6f
 c0
+01
+80
+6b
+20
+20
+49
+77
+68
+00
+8c
+74
+c0
+80
+49
+84
+68
+00
+8c
+75
+c0
+80
+49
+84
+68
+00
+8c
+6e
+c0
+00
+00
+72
+20
+20
+4a
+7e
+68
+00
+8c
+70
+c0
+80
+c9
+84
+70
+49
+7a
+03
+20
+20
+4a
+84
+68
+00
+8c
+6f
+c0
 04
 80
-62
+79
 20
 20
 49
@@ -423,7 +515,7 @@
 24
 5a
 00
-6c
+83
 68
 00
 8d
@@ -431,7 +523,7 @@
 24
 5a
 00
-6f
+86
 20
 20
 4a
@@ -457,6 +549,10 @@
 c9
 78
 70
+0d
+43
+00
+70
 48
 b8
 03
@@ -466,11 +562,11 @@
 00
 70
 49
-81
+83
 00
 70
 49
-79
+7b
 07
 20
 40
@@ -495,19 +591,19 @@
 20
 40
 00
-90
+a8
 20
 40
 01
-6c
+84
 20
 40
 00
-85
+9d
 20
 40
 00
-83
+9b
 68
 00
 c8
@@ -515,15 +611,15 @@
 c0
 00
 01
-c0
+da
 c0
 00
 80
-9a
+b2
 c0
 07
 80
-96
+ae
 20
 60
 00
@@ -531,7 +627,7 @@
 20
 40
 00
-8c
+a4
 20
 20
 65
@@ -543,7 +639,7 @@
 20
 40
 00
-88
+a0
 20
 20
 65
@@ -607,42 +703,42 @@
 20
 40
 00
-a0
+b8
 20
 40
 00
-a4
+bc
 20
 40
 01
-8a
+a2
 20
 20
 00
-97
+af
 20
 40
 00
-a0
+b8
 20
 40
 00
-a4
+bc
 20
 40
-00
-ef
+01
+07
 20
 40
 01
-8a
+a2
 20
 20
 00
-9b
+b3
 70
 49
-7b
+7d
 00
 70
 48
@@ -671,19 +767,19 @@
 20
 40
 00
-aa
+c2
 20
 40
 00
-b8
+d0
 20
 40
 03
-14
+45
 20
 20
 00
-d7
+ef
 68
 00
 c8
@@ -731,15 +827,15 @@
 20
 40
 04
-14
+45
 20
 40
 04
-34
+65
 20
 20
 01
-0b
+23
 68
 00
 c8
@@ -747,7 +843,7 @@
 c0
 00
 80
-d1
+e9
 68
 00
 c8
@@ -755,7 +851,7 @@
 c0
 00
 80
-cb
+e3
 68
 0a
 48
@@ -815,7 +911,7 @@
 20
 20
 04
-34
+65
 70
 48
 b9
@@ -823,7 +919,7 @@
 20
 20
 04
-34
+65
 1c
 42
 7e
@@ -847,7 +943,7 @@
 20
 40
 04
-0f
+40
 60
 08
 c8
@@ -863,19 +959,19 @@
 20
 20
 04
-34
+65
 20
 40
 00
-da
+f2
 20
 40
 00
-e1
+f9
 20
 20
+01
 00
-e8
 68
 00
 c8
@@ -970,12 +1066,12 @@
 00
 20
 40
-00
-f3
+01
+0b
 20
 20
-00
-ff
+01
+17
 68
 00
 c8
@@ -1023,18 +1119,18 @@
 20
 20
 04
-14
+45
 20
 40
 02
-47
+63
 24
 37
 81
-0b
+23
 70
 49
-7a
+7c
 05
 d8
 c0
@@ -1059,19 +1155,19 @@
 c0
 55
 01
-29
+41
 c0
 2a
 81
-36
+4e
 c0
 11
 01
-46
+5e
 c0
 7f
 81
-62
+7a
 d8
 a0
 47
@@ -1107,11 +1203,11 @@
 c0
 00
 81
-16
+2e
 c0
 01
 01
-1a
+32
 20
 60
 00
@@ -1119,7 +1215,7 @@
 68
 00
 c9
-81
+83
 c4
 00
 00
@@ -1135,7 +1231,7 @@
 68
 00
 c9
-81
+83
 c4
 00
 80
@@ -1143,7 +1239,7 @@
 20
 20
 01
-18
+30
 68
 00
 c8
@@ -1155,7 +1251,7 @@
 68
 00
 c9
-81
+83
 1f
 e1
 fe
@@ -1163,7 +1259,7 @@
 60
 00
 c9
-81
+83
 20
 60
 00
@@ -1179,7 +1275,7 @@
 68
 00
 c9
-81
+83
 1f
 e1
 fe
@@ -1187,7 +1283,7 @@
 60
 00
 c9
-81
+83
 20
 60
 00
@@ -1199,11 +1295,11 @@
 c0
 00
 81
-2d
+45
 c0
 01
 01
-33
+4b
 20
 60
 00
@@ -1243,7 +1339,7 @@
 20
 20
 01
-2f
+47
 68
 00
 c8
@@ -1251,11 +1347,11 @@
 c0
 00
 81
-3a
+52
 c0
 01
 01
-40
+58
 20
 60
 00
@@ -1263,7 +1359,7 @@
 20
 40
 01
-2e
+46
 68
 00
 c8
@@ -1271,7 +1367,7 @@
 c0
 00
 81
-3e
+56
 20
 60
 00
@@ -1287,7 +1383,7 @@
 20
 40
 01
-34
+4c
 68
 00
 c8
@@ -1295,7 +1391,7 @@
 c0
 00
 81
-44
+5c
 20
 60
 00
@@ -1315,11 +1411,11 @@
 c0
 00
 81
-4a
+62
 c0
 01
 01
-54
+6c
 20
 60
 00
@@ -1331,7 +1427,7 @@
 c0
 01
 01
-4d
+65
 20
 60
 00
@@ -1339,7 +1435,7 @@
 20
 40
 01
-1d
+35
 68
 00
 c8
@@ -1363,7 +1459,7 @@
 20
 20
 01
-0b
+23
 68
 00
 c8
@@ -1371,7 +1467,7 @@
 c0
 80
 01
-57
+6f
 20
 60
 00
@@ -1379,7 +1475,7 @@
 20
 40
 01
-23
+3b
 68
 00
 c8
@@ -1395,7 +1491,7 @@
 20
 40
 01
-51
+69
 68
 00
 91
@@ -1411,7 +1507,7 @@
 20
 40
 00
-88
+a0
 20
 40
 65
@@ -1427,11 +1523,11 @@
 c0
 00
 81
-66
+7e
 c0
 01
 01
-69
+81
 20
 60
 00
@@ -1543,7 +1639,7 @@
 24
 21
 01
-82
+9a
 58
 00
 49
@@ -1584,6 +1680,14 @@
 80
 04
 ff
+68
+00
+8d
+39
+20
+5a
+03
+15
 20
 40
 48
@@ -1631,11 +1735,11 @@
 c0
 50
 01
-a7
+c1
 c0
 50
 81
-9d
+b7
 c0
 53
 30
@@ -1643,15 +1747,15 @@
 c0
 53
 81
-ac
+c6
 c0
 54
 81
-b2
+cc
 c0
 58
 01
-b4
+ce
 20
 20
 30
@@ -1663,11 +1767,11 @@
 c0
 00
 81
-a2
+bc
 c0
 42
 01
-a5
+bf
 c0
 53
 b0
@@ -1691,11 +1795,11 @@
 20
 40
 00
-a1
+b9
 20
 20
 01
-a2
+bc
 68
 00
 8c
@@ -1703,7 +1807,7 @@
 c0
 40
 81
-aa
+c4
 20
 20
 30
@@ -1711,7 +1815,7 @@
 20
 40
 02
-0b
+25
 20
 20
 30
@@ -1723,7 +1827,7 @@
 c0
 00
 01
-b0
+ca
 c0
 00
 b0
@@ -1767,11 +1871,11 @@
 c0
 01
 81
-be
+d8
 20
 40
 01
-71
+89
 68
 00
 c9
@@ -1779,7 +1883,7 @@
 c0
 01
 81
-be
+d8
 70
 0c
 f7
@@ -1799,35 +1903,35 @@
 20
 40
 01
-e5
+ff
 20
 40
-01
-eb
+02
+05
 20
 40
 02
-1a
+34
 20
 40
 01
-c8
+e2
 20
 40
 01
-cc
+e6
 20
 40
 02
-4b
+67
 20
 40
 01
-8a
+a2
 20
 20
 01
-c1
+db
 68
 00
 c8
@@ -1839,11 +1943,11 @@
 20
 40
 00
-a6
+be
 20
 20
 02
-39
+55
 68
 00
 c8
@@ -1854,12 +1958,12 @@
 00
 20
 40
-00
-f3
+01
+0b
 20
 40
-00
-ff
+01
+17
 68
 00
 c8
@@ -1875,15 +1979,15 @@
 20
 40
 00
-a0
+b8
 20
 40
 02
-37
+53
 20
 20
-01
-e8
+02
+02
 20
 40
 7f
@@ -1979,7 +2083,7 @@
 20
 40
 01
-d6
+f0
 24
 74
 00
@@ -1987,11 +2091,11 @@
 68
 00
 c9
-82
+84
 c2
 83
 00
-9f
+b7
 1f
 e0
 fe
@@ -1999,15 +2103,15 @@
 60
 00
 c9
-82
+84
 20
 40
 02
-04
+1e
 20
 40
-01
-fc
+02
+16
 68
 00
 c8
@@ -2027,11 +2131,11 @@
 c0
 00
 02
-01
+1b
 c0
 00
 82
-09
+23
 20
 60
 00
@@ -2039,7 +2143,7 @@
 68
 00
 c9
-7a
+7c
 20
 7a
 00
@@ -2051,7 +2155,7 @@
 60
 00
 c9
-7a
+7c
 20
 60
 00
@@ -2059,19 +2163,19 @@
 68
 00
 c9
-7a
+7c
 24
 3a
 02
-0b
+25
 20
 20
 00
-a0
+b8
 68
 00
 c9
-79
+7b
 20
 7a
 00
@@ -2083,7 +2187,7 @@
 60
 00
 c9
-79
+7b
 20
 60
 00
@@ -2091,11 +2195,11 @@
 68
 00
 c9
-79
+7b
 24
 3a
 00
-a0
+b8
 70
 48
 a4
@@ -2111,15 +2215,15 @@
 68
 00
 c9
-7f
+81
 20
 5a
 02
-35
+51
 68
 00
 c9
-7c
+7e
 c3
 80
 00
@@ -2131,14 +2235,14 @@
 60
 00
 c9
-7c
+7e
 70
 49
-7b
+7d
 01
 70
 49
-80
+82
 00
 58
 00
@@ -2147,19 +2251,27 @@
 60
 01
 49
-7d
+7f
 70
 48
 5b
 60
 20
 20
-01
-e8
+02
+02
+68
+00
+c8
+a4
+c1
+00
+00
+00
 68
 00
 c9
-7f
+81
 24
 7a
 00
@@ -2167,7 +2279,7 @@
 68
 00
 c9
-7b
+7d
 20
 7a
 00
@@ -2175,7 +2287,7 @@
 20
 40
 01
-d6
+f0
 24
 74
 00
@@ -2183,7 +2295,7 @@
 68
 01
 49
-7d
+7f
 1f
 e0
 fe
@@ -2191,7 +2303,7 @@
 60
 01
 49
-7d
+7f
 d8
 40
 07
@@ -2203,15 +2315,15 @@
 20
 21
 02
-31
+4d
 20
 40
-01
-fc
+02
+16
 68
 00
 c9
-80
+82
 1f
 e0
 fe
@@ -2223,15 +2335,15 @@
 60
 00
 c9
-80
+82
 c0
 00
 02
-2e
+4a
 c0
 00
 82
-0b
+25
 20
 60
 00
@@ -2239,26 +2351,26 @@
 68
 00
 c9
-7a
+7c
 24
 3a
 02
-0b
+25
 20
 20
 02
-44
+60
 70
 49
-7f
+81
 01
 20
 20
 02
-44
+60
 70
 49
-7b
+7d
 00
 20
 60
@@ -2266,7 +2378,7 @@
 00
 70
 49
-7b
+7d
 01
 20
 60
@@ -2314,16 +2426,16 @@
 00
 70
 49
-79
+7b
 00
 70
 49
-7a
+7c
 00
 20
 40
 02
-0e
+28
 70
 48
 a4
@@ -2335,23 +2447,23 @@
 20
 20
 01
-0b
+23
 20
 40
 01
-0b
+23
 20
 40
 04
-4e
+7f
 24
 77
 80
 00
 20
 20
-02
-e8
+03
+04
 68
 00
 c8
@@ -2363,27 +2475,27 @@
 20
 40
 02
-72
+8e
 20
 40
 02
-86
+a2
 20
 40
 02
-47
+63
 24
 37
 81
-0b
+23
 20
 40
 02
-82
+9e
 20
 42
 83
-17
+48
 68
 00
 c8
@@ -2391,7 +2503,7 @@
 20
 5a
 02
-33
+4f
 70
 48
 a4
@@ -2419,23 +2531,23 @@
 24
 42
 82
-69
+85
 20
 40
 01
-0b
+23
 20
 40
 02
-37
+53
 20
 40
 02
-82
+9e
 20
 22
 82
-6b
+87
 68
 02
 48
@@ -2451,7 +2563,7 @@
 20
 22
 82
-6e
+8a
 68
 02
 48
@@ -2467,7 +2579,7 @@
 20
 22
 82
-70
+8c
 20
 60
 00
@@ -2499,7 +2611,7 @@
 20
 20
 02
-6c
+88
 68
 00
 c8
@@ -2507,7 +2619,7 @@
 20
 20
 02
-6c
+88
 68
 00
 c8
@@ -2547,7 +2659,7 @@
 20
 40
 02
-82
+9e
 24
 62
 80
@@ -2607,19 +2719,19 @@
 c0
 00
 02
-a9
+c5
 c0
 00
 82
-c3
+df
 c0
 01
 02
-8f
+ab
 c0
 01
 82
-c3
+df
 20
 60
 00
@@ -2627,7 +2739,7 @@
 20
 40
 01
-2e
+46
 68
 02
 48
@@ -2635,11 +2747,11 @@
 20
 3a
 02
-86
+a2
 20
 40
 04
-14
+45
 68
 00
 c8
@@ -2647,7 +2759,7 @@
 20
 5a
 02
-a4
+c0
 68
 00
 c8
@@ -2667,7 +2779,7 @@
 20
 40
 04
-08
+39
 60
 08
 c8
@@ -2675,7 +2787,7 @@
 20
 40
 04
-0f
+40
 60
 08
 c8
@@ -2695,7 +2807,7 @@
 20
 40
 04
-38
+69
 60
 08
 c8
@@ -2719,7 +2831,7 @@
 20
 40
 04
-3c
+6d
 60
 00
 c8
@@ -2731,7 +2843,7 @@
 20
 40
 01
-34
+4c
 68
 02
 48
@@ -2739,11 +2851,11 @@
 20
 3a
 02
-86
+a2
 20
 40
 04
-14
+45
 68
 00
 c8
@@ -2751,7 +2863,7 @@
 20
 5a
 02
-be
+da
 68
 00
 c8
@@ -2771,7 +2883,7 @@
 20
 40
 04
-08
+39
 60
 08
 c8
@@ -2779,7 +2891,7 @@
 20
 40
 04
-0f
+40
 60
 08
 c8
@@ -2799,7 +2911,7 @@
 20
 40
 04
-38
+69
 60
 08
 c8
@@ -2823,7 +2935,7 @@
 20
 40
 04
-3c
+6d
 60
 00
 c8
@@ -2835,7 +2947,7 @@
 20
 40
 01
-2e
+46
 68
 02
 48
@@ -2843,7 +2955,7 @@
 20
 40
 04
-14
+45
 68
 00
 c8
@@ -2851,7 +2963,7 @@
 20
 5a
 02
-d7
+f3
 68
 00
 c8
@@ -2871,7 +2983,7 @@
 20
 40
 04
-08
+39
 60
 08
 c8
@@ -2879,7 +2991,7 @@
 20
 40
 04
-0f
+40
 60
 08
 c8
@@ -2899,7 +3011,7 @@
 20
 40
 04
-38
+69
 60
 08
 c8
@@ -2991,7 +3103,7 @@
 20
 40
 02
-db
+f7
 68
 00
 c7
@@ -3002,24 +3114,24 @@
 00
 20
 20
-82
-f1
+83
+0d
 20
 40
-02
-f2
+03
+0e
 20
 40
 04
-22
+53
 20
 40
 04
-98
+c9
 20
 20
 04
-90
+c1
 70
 48
 36
@@ -3027,6 +3139,46 @@
 68
 00
 c8
+37
+c0
+00
+83
+12
+c0
+01
+03
+17
+68
+00
+c9
+7a
+c2
+80
+03
+1f
+20
+20
+03
+19
+70
+49
+7a
+00
+20
+60
+00
+00
+68
+00
+c9
+7a
+c2
+80
+83
+23
+68
+00
+c8
 b8
 20
 7a
@@ -3034,16 +3186,60 @@
 00
 c0
 00
-82
-f9
+83
+2a
 c0
 01
 03
-01
+32
 c0
 01
 83
-0b
+3c
+20
+60
+00
+00
+68
+00
+c9
+7a
+79
+3f
+fe
+00
+60
+00
+c9
+7a
+20
+20
+03
+26
+68
+00
+c9
+7a
+79
+3f
+fe
+01
+60
+00
+c9
+7a
+70
+48
+36
+01
+58
+00
+00
+ff
+60
+00
+c7
+d2
 20
 60
 00
@@ -3055,7 +3251,7 @@
 20
 40
 01
-0e
+26
 24
 77
 80
@@ -3083,7 +3279,7 @@
 20
 40
 01
-84
+9c
 24
 74
 00
@@ -3126,12 +3322,12 @@
 b2
 c0
 00
-82
-f9
+83
+2a
 c0
 7f
-82
-f9
+83
+2a
 70
 0d
 43
@@ -3159,23 +3355,23 @@
 20
 40
 02
-47
+63
 24
 37
 81
-0b
+23
 20
 20
 03
-17
+48
 20
 40
 03
-28
+59
 24
 34
 01
-0b
+23
 68
 00
 c8
@@ -3183,7 +3379,7 @@
 20
 3a
 01
-0b
+23
 1f
 e0
 fe
@@ -3215,7 +3411,7 @@
 20
 5a
 02
-37
+53
 68
 00
 c8
@@ -3223,19 +3419,19 @@
 c0
 00
 83
-36
+67
 c0
 01
 03
-56
+87
 c0
 7f
 83
-ab
+dc
 20
 20
 01
-0b
+23
 20
 40
 7f
@@ -3295,11 +3491,11 @@
 20
 40
 01
-1d
+35
 20
 40
 00
-cd
+e5
 68
 00
 c8
@@ -3323,7 +3519,7 @@
 c0
 00
 83
-b5
+e6
 68
 00
 c8
@@ -3351,7 +3547,7 @@
 c0
 67
 83
-b9
+ea
 58
 00
 00
@@ -3375,7 +3571,7 @@
 24
 5a
 03
-4e
+7f
 68
 00
 c8
@@ -3383,7 +3579,7 @@
 20
 5a
 03
-52
+83
 20
 20
 31
@@ -3423,7 +3619,7 @@
 20
 40
 01
-23
+3b
 68
 08
 c8
@@ -3435,7 +3631,7 @@
 20
 20
 83
-b7
+e8
 68
 00
 c8
@@ -3443,19 +3639,19 @@
 c0
 00
 03
-5f
+90
 c0
 01
 03
-94
+c5
 c0
 01
 83
-7b
+ac
 20
 20
 01
-0b
+23
 68
 00
 c8
@@ -3475,7 +3671,7 @@
 20
 40
 03
-70
+a1
 68
 04
 0d
@@ -3483,7 +3679,7 @@
 24
 5a
 03
-73
+a4
 68
 04
 0d
@@ -3491,7 +3687,7 @@
 20
 5a
 03
-77
+a8
 68
 04
 0d
@@ -3523,7 +3719,7 @@
 20
 20
 01
-0b
+23
 d8
 c0
 48
@@ -3575,7 +3771,7 @@
 20
 40
 03
-89
+ba
 68
 01
 0d
@@ -3583,7 +3779,7 @@
 24
 5a
 03
-8c
+bd
 68
 01
 0d
@@ -3591,7 +3787,7 @@
 20
 5a
 03
-90
+c1
 68
 01
 8d
@@ -3623,7 +3819,7 @@
 20
 20
 01
-0b
+23
 d8
 c0
 48
@@ -3675,7 +3871,7 @@
 20
 40
 03
-9e
+cf
 68
 01
 13
@@ -3695,7 +3891,7 @@
 24
 42
 83
-a9
+da
 68
 01
 13
@@ -3707,7 +3903,7 @@
 20
 20
 01
-0b
+23
 d8
 c0
 48
@@ -3767,11 +3963,11 @@
 c0
 00
 83
-af
+e0
 c0
 01
 03
-b2
+e3
 20
 60
 00
@@ -3779,7 +3975,7 @@
 20
 40
 01
-1d
+35
 68
 02
 48
@@ -3787,11 +3983,11 @@
 20
 20
 01
-67
+7f
 20
 40
 01
-23
+3b
 68
 02
 48
@@ -3799,7 +3995,7 @@
 20
 20
 01
-6a
+82
 68
 02
 48
@@ -3807,7 +4003,7 @@
 20
 20
 01
-67
+7f
 68
 02
 48
@@ -3815,7 +4011,7 @@
 20
 20
 01
-6a
+82
 68
 01
 48
@@ -3831,7 +4027,7 @@
 20
 22
 83
-be
+ef
 20
 60
 00
@@ -3843,7 +4039,7 @@
 c0
 61
 03
-cb
+fc
 68
 00
 c9
@@ -3859,7 +4055,7 @@
 20
 40
 01
-7b
+93
 68
 00
 c9
@@ -3879,11 +4075,11 @@
 c0
 60
 81
-bc
+d6
 c0
 61
 03
-cb
+fc
 20
 60
 00
@@ -3903,19 +4099,19 @@
 20
 40
 01
-6c
+84
 68
 00
 c8
 84
 c0
 2a
-83
-d3
+84
+04
 c0
 55
-03
-d5
+04
+06
 20
 60
 00
@@ -4002,12 +4198,12 @@
 de
 c0
 02
-03
-f0
+04
+21
 20
 20
-03
-e9
+04
+1a
 70
 89
 4b
@@ -4123,7 +4319,7 @@
 20
 40
 04
-08
+39
 60
 08
 c8
@@ -4207,7 +4403,7 @@
 c2
 00
 04
-18
+49
 1a
 22
 7e
@@ -4315,7 +4511,7 @@
 20
 40
 04
-38
+69
 60
 08
 c8
@@ -4327,7 +4523,7 @@
 20
 40
 04
-3c
+6d
 18
 40
 84
@@ -4451,7 +4647,7 @@
 20
 40
 04
-45
+76
 78
 57
 fc
@@ -4487,7 +4683,7 @@
 24
 2c
 04
-93
+c4
 78
 46
 fc
@@ -4527,7 +4723,7 @@
 24
 22
 84
-90
+c1
 09
 80
 00
@@ -4551,7 +4747,7 @@
 20
 22
 84
-75
+a6
 68
 00
 c7
@@ -4567,7 +4763,7 @@
 24
 20
 84
-90
+c1
 09
 80
 00
@@ -4591,7 +4787,7 @@
 20
 22
 84
-7f
+b0
 09
 80
 00
@@ -4607,7 +4803,7 @@
 c2
 00
 04
-7b
+ac
 09
 80
 00
@@ -4643,7 +4839,7 @@
 20
 23
 04
-90
+c1
 78
 37
 fc
@@ -4691,11 +4887,11 @@
 20
 40
 04
-01
+32
 20
 20
 04
-90
+c1
 20
 40
 29
@@ -4723,11 +4919,11 @@
 20
 40
 04
-45
+76
 20
 40
 04
-95
+c6
 79
 20
 2a
@@ -4807,7 +5003,7 @@
 c2
 00
 04
-ae
+df
 68
 00
 c8
@@ -4848,8 +5044,8 @@
 60
 00
 00
-8a
-54
+2f
+94
 aa
 55
 01
@@ -5357,7 +5553,7 @@
 55
 01
 00
-82
+84
 49
 00
 aa
@@ -5435,210 +5631,14 @@
 42
 00
 84
-50
-6b
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+55
+aa
+aa
+55
+b9
+92
+37
+10
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-4e
-eb
+d0
+08
Index: output/memmap.format
===================================================================
--- /branch/mouse_project/LeXiang/24M_dongle/output/memmap.format	(revision 3640)
+++ /branch/mouse_project/LeXiang/24M_dongle/output/memmap.format	(working copy)
@@ -1868,12 +1868,14 @@
 0x4976 mem_24g_txcnt
 0x4977 mem_24g_auto_paring_switch
 0x4978 mem_24g_led_status
-0x4979 mem_24g_bind_delay_count
-0x497a mem_24g_work_delay_count
-0x497b mem_24g_mode_switch_2
-0x497c mem_24g_mode_switch_2_init
-0x497d mem_24g_mode_switch_cnt_2
-0x497f mem_24g_mode_switch_exit_2
-0x4980 mem_24g_time_slice_2
-0x4981 mem_dongle_bind_device_living
-0x4982 mem_dongle_close_bind_mode_timer
+0x4979 mem_24g_pc_sleep
+0x497a mem_24g_pc_sleep_flag
+0x497b mem_24g_bind_delay_count
+0x497c mem_24g_work_delay_count
+0x497d mem_24g_mode_switch_2
+0x497e mem_24g_mode_switch_2_init
+0x497f mem_24g_mode_switch_cnt_2
+0x4981 mem_24g_mode_switch_exit_2
+0x4982 mem_24g_time_slice_2
+0x4983 mem_dongle_bind_device_living
+0x4984 mem_dongle_close_bind_mode_timer
Index: output/program.lis
===================================================================
--- /branch/mouse_project/LeXiang/24M_dongle/output/program.lis	(revision 3640)
+++ /branch/mouse_project/LeXiang/24M_dongle/output/program.lis	(working copy)
@@ -1,11 +1,11 @@
               include "bt_format "
               org 0x0000
 0000 c284000a bbit1 8 ,pf_patch_ext 
-0001 c04283ff beq patch10_5 ,p_shutdown_radio 
-0002 c04483d7 beq patch11_1 ,p_set_freq_tx 
-0003 c00003f7 beq patch00_0 ,p_soft_reset 
+0001 c0428430 beq patch10_5 ,p_shutdown_radio 
+0002 c0448408 beq patch11_1 ,p_set_freq_tx 
+0003 c0000428 beq patch00_0 ,p_soft_reset 
 0004 c047000b beq patch11_6 ,p_save_rssi 
-0005 c0620073 beq patch18_4 ,p_app_init 
+0005 c062008b beq patch18_4 ,p_app_init 
 0006 c07b8012 beq patch1e_7 ,p_usb_init 
 0007 c07c004b beq patch1f_0 ,p_usb_status1 
 0008 c07e002a beq patch1f_4 ,p_usb_tx 
@@ -103,1504 +103,1581 @@
 004c 68108a20 hfetch 1 ,core_usb_ep_len 
 004d 60008b24 store 1 ,mem_usb_read_len 
 004e 1fe27200 copy pdata ,loopcnt 
-004f 203a4943 branch usb_rx_no_data ,blank 
+004f 203a005a branch p_usb_rx_no_data ,blank 
 0050 d8a00c6e arg mem_usb_setup ,contw 
 0051 20404946 call usb_rx_read 
 0052 68008b24 fetch 1 ,mem_usb_read_len 
-0053 1fe67c07 sub pdata ,7 ,null 
-0054 20610000 rtn positive 
-0055 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
-0056 1fe17e80 and_into 0x80 ,pdata 
-0057 c0000059 beq out_device ,p_usb_out_device 
-0058 20204957 branch usb_class_type + 2 
+0053 c000805d beq 0x01 ,p_usb_out_one_byte 
+0054 1fe67c07 sub pdata ,7 ,null 
+0055 20610000 rtn positive 
+
+p_usb_class_type:
+0056 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+0057 1fe17e80 and_into 0x80 ,pdata 
+0058 c0000061 beq out_device ,p_usb_out_device 
+0059 20204957 branch usb_class_type + 2 
+
+p_usb_rx_no_data:
+005a 68008b22 fetch 1 ,mem_usb_status 
+005b c2820056 bbit1 usb_status_setup ,p_usb_class_type 
+005c 20600000 rtn 
+
+p_usb_out_one_byte:
+005d 68008c6e fetch 1 ,mem_usb_setup 
+005e c3838000 rtnbit1 7 
+005f 20400087 call p_usb_get_led_status 
+0060 20204988 branch usb0_reply_zerolen 
 
 p_usb_out_device:
-0059 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
-005a 1ff1fe00 rshift4 pdata ,pdata 
-005b 1fe37e00 rshift pdata ,pdata 
-005c 1fe17e03 and_into 0x03 ,pdata 
-005d c000805f beq class_req ,p_usb_out_class_req 
-005e 20204966 branch usb_out_device + 4 
+0061 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+0062 1ff1fe00 rshift4 pdata ,pdata 
+0063 1fe37e00 rshift pdata ,pdata 
+0064 1fe17e03 and_into 0x03 ,pdata 
+0065 c0000068 beq standard_req ,p_usb_out_standard_req 
+0066 c0008076 beq class_req ,p_usb_out_class_req 
+0067 20204966 branch usb_out_device + 4 
+
+p_usb_out_standard_req:
+0068 68008c6f fetch 1 ,mem_usb_setup_brequest 
+0069 c001806b beq set_feature ,p_usb0_request_set_feature 
+006a 20204977 branch usb_out_standard_req + 1 
+
+p_usb0_request_set_feature:
+006b 68008c74 fetch 1 ,mem_usb_setup_blength 
+006c c0804984 bne 0 ,usb0_force_stall 
+006d 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+006e c0804984 bne 0 ,usb0_force_stall 
+006f 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+0070 c0000072 beq out_device ,p_usb0_request_set_feature_out_device 
+0071 20204a7e branch usb0_request_set_feature + 5 
+
+p_usb0_request_set_feature_out_device:
+0072 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+0073 c080c984 bne device_remote_wakeup ,usb0_force_stall 
+0074 70497a03 jam 3 ,mem_24g_pc_sleep_flag 
+0075 20204a84 branch usb0_request_set_feature_out_device + 2 
 
 p_usb_out_class_req:
-005f 68008c6f fetch 1 ,mem_usb_setup_brequest 
-0060 c0048062 beq set_report ,p_usb_set_report 
-0061 2020497f branch usb_out_class_req + 1 
+0076 68008c6f fetch 1 ,mem_usb_setup_brequest 
+0077 c0048079 beq set_report ,p_usb_set_report 
+0078 2020497f branch usb_out_class_req + 1 
 
 p_usb_set_report:
-0062 700d5001 jam 1 ,mem_usb0_get_set_report 
-0063 20404b03 call usb_set_report_resume_judge 
-0064 68010c70 fetch 2 ,mem_usb_setup_bvalue 
-0065 60010d4e store 2 ,mem_usb_setup_bvalue_temp 
-0066 20003a98 nop 15000 
-0067 68108a20 hfetch 1 ,core_usb_ep_len 
-0068 245a006c ncall p_usb_set_report_rxdata ,blank 
-0069 68008d43 fetch 1 ,mem_usb_tx_win_enable 
-006a 245a006f ncall p_usb_get_output_data ,blank 
-006b 20204afd branch usb_set_report + 4 
+0079 700d5001 jam 1 ,mem_usb0_get_set_report 
+007a 20404b03 call usb_set_report_resume_judge 
+007b 68010c70 fetch 2 ,mem_usb_setup_bvalue 
+007c 60010d4e store 2 ,mem_usb_setup_bvalue_temp 
+007d 20003a98 nop 15000 
+007e 68108a20 hfetch 1 ,core_usb_ep_len 
+007f 245a0083 ncall p_usb_set_report_rxdata ,blank 
+0080 68008d43 fetch 1 ,mem_usb_tx_win_enable 
+0081 245a0086 ncall p_usb_get_output_data ,blank 
+0082 20204afd branch usb_set_report + 4 
 
 p_usb_set_report_rxdata:
-006c 1fe27200 copy pdata ,loopcnt 
-006d d8a00c76 arg mem_usb0_setup ,contw 
-006e 20204946 branch usb_rx_read 
+0083 1fe27200 copy pdata ,loopcnt 
+0084 d8a00c76 arg mem_usb0_setup ,contw 
+0085 20204946 branch usb_rx_read 
 
 p_usb_get_output_data:
-006f 68008c76 fetch 1 ,mem_usb0_setup 
-0070 6000c978 store 1 ,mem_24g_led_status 
-0071 7048b803 jam kb_led_ackpayload ,mem_24g_ackpayload_enable 
-0072 20600000 rtn 
+0086 68008c76 fetch 1 ,mem_usb0_setup 
+
+p_usb_get_led_status:
+0087 6000c978 store 1 ,mem_24g_led_status 
+0088 700d4300 jam 0 ,mem_usb_tx_win_enable 
+0089 7048b803 jam kb_led_ackpayload ,mem_24g_ackpayload_enable 
+008a 20600000 rtn 
 
 p_app_init:
-0073 70498100 jam 0 ,mem_dongle_bind_device_living 
-0074 70497907 jam g24_bind_mode_delay ,mem_24g_bind_delay_count 
-0075 204074b9 call enable_authrom 
-0076 680240a0 fetch 4 ,mem_lap 
-0077 6002489f store 4 ,mem_24g_rx_addr 
-0078 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
-0079 2040680e call gpio_config_output 
-007a 20400090 call p_dongle_init 
-007b 2040016c call p_g24_queue_init 
-007c 20400085 call p_dongle_iic_init 
-007d 20400083 call p_dongle_firmware_version_store 
-007e 6800c8ba fetch 1 ,mem_24g_pair_mode 
-007f c00001c0 beq 0x00 ,p_dongle_auto_bind 
-0080 c000809a beq 0x01 ,p_dongle_pc_bind 
-0081 c0078096 beq 0x0f ,p_dongle_all_powerful 
-0082 20600000 rtn 
+008b 70498300 jam 0 ,mem_dongle_bind_device_living 
+008c 70497b07 jam g24_bind_mode_delay ,mem_24g_bind_delay_count 
+008d 204074b9 call enable_authrom 
+008e 680240a0 fetch 4 ,mem_lap 
+008f 6002489f store 4 ,mem_24g_rx_addr 
+0090 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
+0091 2040680e call gpio_config_output 
+0092 204000a8 call p_dongle_init 
+0093 20400184 call p_g24_queue_init 
+0094 2040009d call p_dongle_iic_init 
+0095 2040009b call p_dongle_firmware_version_store 
+0096 6800c8ba fetch 1 ,mem_24g_pair_mode 
+0097 c00001da beq 0x00 ,p_dongle_auto_bind 
+0098 c00080b2 beq 0x01 ,p_dongle_pc_bind 
+0099 c00780ae beq 0x0f ,p_dongle_all_powerful 
+009a 20600000 rtn 
 
 p_dongle_firmware_version_store:
-0083 2040008c call p_dongle_set_firmware_version_eeprom 
-0084 202065d1 branch iicd_write_protect_eep_data 
+009b 204000a4 call p_dongle_set_firmware_version_eeprom 
+009c 202065d1 branch iicd_write_protect_eep_data 
 
 p_dongle_iic_init:
-0085 2040659c call iic_init_390k 
-0086 20400088 call p_dongle_set_kb_bind_eeprom 
-0087 202065df branch iicd_read_eep_data 
+009d 2040659c call iic_init_390k 
+009e 204000a0 call p_dongle_set_kb_bind_eeprom 
+009f 202065df branch iicd_read_eep_data 
 
 p_dongle_set_kb_bind_eeprom:
-0088 da2011c7 arg mem_dongle_kb_bind_flag ,rega 
-0089 da400000 arg dongle_kb_bind_eeprom_offect ,regb 
-008a d8400001 arg 1 ,temp 
-008b 20600000 rtn 
+00a0 da2011c7 arg mem_dongle_kb_bind_flag ,rega 
+00a1 da400000 arg dongle_kb_bind_eeprom_offect ,regb 
+00a2 d8400001 arg 1 ,temp 
+00a3 20600000 rtn 
 
 p_dongle_set_firmware_version_eeprom:
-008c da2013d2 arg mem_firmware_version ,rega 
-008d da400070 arg dongle_firmware_version_offect ,regb 
-008e d8400003 arg 3 ,temp 
-008f 20600000 rtn 
+00a4 da2013d2 arg mem_firmware_version ,rega 
+00a5 da400070 arg dongle_firmware_version_offect ,regb 
+00a6 d8400003 arg 3 ,temp 
+00a7 20600000 rtn 
 
 p_dongle_init:
-0090 6800c1de fetch 1 ,mem_tx_power 
-0091 6000c8ed store 1 ,mem_tx_power_temp 
-0092 df200080 arg 0x80 ,loopcnt 
-0093 d8a00d9e arg mem_rssi_noise_buffer ,contw 
-0094 20407ec6 call memset0 
-0095 202048ea branch usb_init 
+00a8 6800c1de fetch 1 ,mem_tx_power 
+00a9 6000c8ed store 1 ,mem_tx_power_temp 
+00aa df200080 arg 0x80 ,loopcnt 
+00ab d8a00d9e arg mem_rssi_noise_buffer ,contw 
+00ac 20407ec6 call memset0 
+00ad 202048ea branch usb_init 
 
 p_dongle_all_powerful:
-0096 204000a0 call p_dongle_check_mode 
+00ae 204000b8 call p_dongle_check_mode 
 
 p_dongle_all_powerful_loop:
-0097 204000a4 call p_g24_dongle_work_mode 
-0098 2040018a call p_dongle_usb_dispatch 
-0099 20200097 branch p_dongle_all_powerful_loop 
+00af 204000bc call p_g24_dongle_work_mode 
+00b0 204001a2 call p_dongle_usb_dispatch 
+00b1 202000af branch p_dongle_all_powerful_loop 
 
 p_dongle_pc_bind:
-009a 204000a0 call p_dongle_check_mode 
+00b2 204000b8 call p_dongle_check_mode 
 
 p_dongle_pc_bind_loop:
-009b 204000a4 call p_g24_dongle_work_mode 
-009c 204000ef call p_g24_dongle_bind_mode 
-009d 2040018a call p_dongle_usb_dispatch 
-009e 2020009b branch p_dongle_pc_bind_loop 
+00b3 204000bc call p_g24_dongle_work_mode 
+00b4 20400107 call p_g24_dongle_bind_mode 
+00b5 204001a2 call p_dongle_usb_dispatch 
+00b6 202000b3 branch p_dongle_pc_bind_loop 
 
 p_dongle_close_bind_mode:
-009f 70497b00 jam 0 ,mem_24g_mode_switch_2 
+00b7 70497d00 jam 0 ,mem_24g_mode_switch_2 
 
 p_dongle_check_mode:
-00a0 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+00b8 7048b800 jam 0 ,mem_24g_ackpayload_enable 
 
 p_dongle_work_mode_enable:
-00a1 7048a400 jam dongle_work ,mem_dongle_work_mode 
-00a2 7048a300 jam clear_init ,mem_dongle_mode_init 
-00a3 20600000 rtn 
+00b9 7048a400 jam dongle_work ,mem_dongle_work_mode 
+00ba 7048a300 jam clear_init ,mem_dongle_mode_init 
+00bb 20600000 rtn 
 
 p_g24_dongle_work_mode:
-00a4 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-00a5 c1800000 rtnne dongle_work 
+00bc 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+00bd c1800000 rtnne dongle_work 
 
 p_g24_dongle_work_mode_start:
-00a6 204000aa call p_g24_dongle_work_init 
-00a7 204000b8 call p_g24_ch_process 
-00a8 20400314 call p_g24_receive_packet_start 
-00a9 202000d7 branch p_g24_blank_data_process 
+00be 204000c2 call p_g24_dongle_work_init 
+00bf 204000d0 call p_g24_ch_process 
+00c0 20400345 call p_g24_receive_packet_start 
+00c1 202000ef branch p_g24_blank_data_process 
 
 p_g24_dongle_work_init:
-00aa 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-00ab c3800000 rtnbit1 dongle_work 
-00ac 79207e00 set1 dongle_work ,pdata 
-00ad 6000c8a3 store 1 ,mem_dongle_mode_init 
-00ae 6800c8ed fetch 1 ,mem_tx_power_temp 
-00af 6000c1de store 1 ,mem_tx_power 
-00b0 7048b800 jam 0 ,mem_24g_ackpayload_enable 
-00b1 700d3800 jam 0 ,mem_usb_tx_enable 
-00b2 7048b001 jam 1 ,mem_24g_abort_packet 
-00b3 70483500 jam 0 ,mem_24g_pid 
-00b4 6802489f fetch 4 ,mem_24g_rx_addr 
-00b5 20400414 call p_g24_update_addr_and_synccrc8 
-00b6 20400434 call p_g24_ch 
-00b7 2020010b branch p_g24_rx_interrupt_clear 
+00c2 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+00c3 c3800000 rtnbit1 dongle_work 
+00c4 79207e00 set1 dongle_work ,pdata 
+00c5 6000c8a3 store 1 ,mem_dongle_mode_init 
+00c6 6800c8ed fetch 1 ,mem_tx_power_temp 
+00c7 6000c1de store 1 ,mem_tx_power 
+00c8 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+00c9 700d3800 jam 0 ,mem_usb_tx_enable 
+00ca 7048b001 jam 1 ,mem_24g_abort_packet 
+00cb 70483500 jam 0 ,mem_24g_pid 
+00cc 6802489f fetch 4 ,mem_24g_rx_addr 
+00cd 20400445 call p_g24_update_addr_and_synccrc8 
+00ce 20400465 call p_g24_ch 
+00cf 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_ch_process:
-00b8 6800c8b0 fetch 1 ,mem_24g_abort_packet 
-00b9 c00080d1 beq 1 ,p_g24_noise_rssi 
-00ba 6800c8b9 fetch 1 ,mem_24g_hop_packet 
-00bb c00080cb beq 1 ,p_g24_ch_receive_hop_pac 
-00bc 680a48b2 fetcht 4 ,mem_24g_hop_btclk 
-00bd 1c427e00 copy clkn_bt ,pdata 
-00be 98467c00 isub temp ,null 
-00bf 24412d18 ncall g24_timer_timeout ,positive 
-00c0 1fe22400 copy pdata ,regb 
-00c1 680248b2 fetch 4 ,mem_24g_hop_btclk 
-00c2 6808c8b6 fetcht 1 ,mem_24g_hop_interval 
-00c3 98408400 iadd temp ,temp 
-00c4 1a427e00 copy regb ,pdata 
-00c5 98467c00 isub temp ,null 
-00c6 24610000 nrtn positive 
-00c7 793ffe1c set0 28 ,pdata 
-00c8 600248b2 store 4 ,mem_24g_hop_btclk 
-00c9 7048b001 jam 1 ,mem_24g_abort_packet 
-00ca 20200434 branch p_g24_ch 
+00d0 6800c8b0 fetch 1 ,mem_24g_abort_packet 
+00d1 c00080e9 beq 1 ,p_g24_noise_rssi 
+00d2 6800c8b9 fetch 1 ,mem_24g_hop_packet 
+00d3 c00080e3 beq 1 ,p_g24_ch_receive_hop_pac 
+00d4 680a48b2 fetcht 4 ,mem_24g_hop_btclk 
+00d5 1c427e00 copy clkn_bt ,pdata 
+00d6 98467c00 isub temp ,null 
+00d7 24412d18 ncall g24_timer_timeout ,positive 
+00d8 1fe22400 copy pdata ,regb 
+00d9 680248b2 fetch 4 ,mem_24g_hop_btclk 
+00da 6808c8b6 fetcht 1 ,mem_24g_hop_interval 
+00db 98408400 iadd temp ,temp 
+00dc 1a427e00 copy regb ,pdata 
+00dd 98467c00 isub temp ,null 
+00de 24610000 nrtn positive 
+00df 793ffe1c set0 28 ,pdata 
+00e0 600248b2 store 4 ,mem_24g_hop_btclk 
+00e1 7048b001 jam 1 ,mem_24g_abort_packet 
+00e2 20200465 branch p_g24_ch 
 
 p_g24_ch_receive_hop_pac:
-00cb 7048b900 jam 0 ,mem_24g_hop_packet 
-00cc 20200434 branch p_g24_ch 
+00e3 7048b900 jam 0 ,mem_24g_hop_packet 
+00e4 20200465 branch p_g24_ch 
 
 p_g24_ch_timer_reinit:
-00cd 1c427e00 copy clkn_bt ,pdata 
-00ce 600248b2 store 4 ,mem_24g_hop_btclk 
-00cf 7048b100 jam 0 ,mem_24g_rf_laststa 
-00d0 20600000 rtn 
+00e5 1c427e00 copy clkn_bt ,pdata 
+00e6 600248b2 store 4 ,mem_24g_hop_btclk 
+00e7 7048b100 jam 0 ,mem_24g_rf_laststa 
+00e8 20600000 rtn 
 
 p_g24_noise_rssi:
-00d1 da200d9e arg mem_rssi_noise_buffer ,rega 
-00d2 2040040f call p_rssi_average 
-00d3 6008c8ef storet 1 ,mem_rssi_noise_avg 
-00d4 18467c50 sub temp ,rssi_thresh_noise ,null 
-00d5 24610000 nrtn positive 
-00d6 20200434 branch p_g24_ch 
+00e9 da200d9e arg mem_rssi_noise_buffer ,rega 
+00ea 20400440 call p_rssi_average 
+00eb 6008c8ef storet 1 ,mem_rssi_noise_avg 
+00ec 18467c50 sub temp ,rssi_thresh_noise ,null 
+00ed 24610000 nrtn positive 
+00ee 20200465 branch p_g24_ch 
 
 p_g24_blank_data_process:
-00d7 204000da call p_g24_ms_blank_data 
-00d8 204000e1 call p_g24_kb_blank_data 
-00d9 202000e8 branch p_g24_kb_mul_blank_data 
+00ef 204000f2 call p_g24_ms_blank_data 
+00f0 204000f9 call p_g24_kb_blank_data 
+00f1 20200100 branch p_g24_kb_mul_blank_data 
 
 p_g24_ms_blank_data:
-00da 6800c8d5 fetch 1 ,mem_24g_ms_blank_data_enable 
-00db 207a0000 rtn blank 
-00dc d8e0000b arg timer_new_ms_blank ,queue 
-00dd 20407f16 call timer_check 
-00de 247a0000 nrtn blank 
-00df 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
-00e0 20202fa0 branch g24_ms_blank_data_2usb 
+00f2 6800c8d5 fetch 1 ,mem_24g_ms_blank_data_enable 
+00f3 207a0000 rtn blank 
+00f4 d8e0000b arg timer_new_ms_blank ,queue 
+00f5 20407f16 call timer_check 
+00f6 247a0000 nrtn blank 
+00f7 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
+00f8 20202fa0 branch g24_ms_blank_data_2usb 
 
 p_g24_kb_blank_data:
-00e1 6800c8d3 fetch 1 ,mem_24g_kb_blank_data_enable 
-00e2 207a0000 rtn blank 
-00e3 d8e0000e arg timer_new_kb_blank ,queue 
-00e4 20407f16 call timer_check 
-00e5 247a0000 nrtn blank 
-00e6 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
-00e7 20202fac branch g24_kb_blank_data_2usb 
+00f9 6800c8d3 fetch 1 ,mem_24g_kb_blank_data_enable 
+00fa 207a0000 rtn blank 
+00fb d8e0000e arg timer_new_kb_blank ,queue 
+00fc 20407f16 call timer_check 
+00fd 247a0000 nrtn blank 
+00fe 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
+00ff 20202fac branch g24_kb_blank_data_2usb 
 
 p_g24_kb_mul_blank_data:
-00e8 6800c8d4 fetch 1 ,mem_24g_kb_mul_blank_data_enable 
-00e9 207a0000 rtn blank 
-00ea d8e0000c arg timer_new_kb_mul_blank ,queue 
-00eb 20407f16 call timer_check 
-00ec 247a0000 nrtn blank 
-00ed 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
-00ee 20202fb8 branch g24_kb_mul_blank_data_2usb 
+0100 6800c8d4 fetch 1 ,mem_24g_kb_mul_blank_data_enable 
+0101 207a0000 rtn blank 
+0102 d8e0000c arg timer_new_kb_mul_blank ,queue 
+0103 20407f16 call timer_check 
+0104 247a0000 nrtn blank 
+0105 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
+0106 20202fb8 branch g24_kb_mul_blank_data_2usb 
 
 p_g24_dongle_bind_mode:
-00ef 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-00f0 c1808000 rtnne dongle_bind 
-00f1 204000f3 call p_g24_dongle_bind_init 
-00f2 202000ff branch p_g24_dongle_bind_data_process 
+0107 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0108 c1808000 rtnne dongle_bind 
+0109 2040010b call p_g24_dongle_bind_init 
+010a 20200117 branch p_g24_dongle_bind_data_process 
 
 p_g24_dongle_bind_init:
-00f3 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-00f4 c3808000 rtnbit1 dongle_bind 
-00f5 79207e01 set1 dongle_bind ,pdata 
-00f6 6000c8a3 store 1 ,mem_dongle_mode_init 
-00f7 58000000 setarg 0 
-00f8 6001c8a5 store 3 ,mem_dongle_ms_bind_step 
-00f9 7041de04 jam tx_power_f5db ,mem_tx_power 
-00fa 7048b801 jam 1 ,mem_24g_ackpayload_enable 
-00fb 70483500 jam 0 ,mem_24g_pid 
-00fc 7048404e jam g24_pair_ch ,mem_24g_ch 
-00fd 68024842 fetch 4 ,mem_24g_paring_addr 
-00fe 20200414 branch p_g24_update_addr_and_synccrc8 
+010b 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+010c c3808000 rtnbit1 dongle_bind 
+010d 79207e01 set1 dongle_bind ,pdata 
+010e 6000c8a3 store 1 ,mem_dongle_mode_init 
+010f 58000000 setarg 0 
+0110 6001c8a5 store 3 ,mem_dongle_ms_bind_step 
+0111 7041de04 jam tx_power_f5db ,mem_tx_power 
+0112 7048b801 jam 1 ,mem_24g_ackpayload_enable 
+0113 70483500 jam 0 ,mem_24g_pid 
+0114 7048404e jam g24_pair_ch ,mem_24g_ch 
+0115 68024842 fetch 4 ,mem_24g_paring_addr 
+0116 20200445 branch p_g24_update_addr_and_synccrc8 
 
 p_g24_dongle_bind_data_process:
-00ff 20400247 call p_g24_receive_transmit_ack 
-0100 2437810b nbranch p_g24_rx_interrupt_clear ,user3 
-0101 70497a05 jam g24_work_mode_delay ,mem_24g_work_delay_count 
-0102 d8c047b0 arg mem_24g_rxbuf ,contr 
-0103 d8a0487d arg mem_24g_rxdata_temp ,contw 
-0104 df200008 arg 8 ,loopcnt 
-0105 20407f01 call memcpy 
-0106 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
-0107 c0550129 beq datatype_bind ,p_g24_dongle_bind_first_step 
-0108 c02a8136 beq datatype_config ,p_g24_dongle_bind_second_step 
-0109 c0110146 beq datatype_ok ,p_g24_dongle_bind_third_step 
-010a c07f8162 beq 0xff ,p_g24_data_attemp_bind 
+0117 20400263 call p_g24_receive_transmit_ack 
+0118 24378123 nbranch p_g24_rx_interrupt_clear ,user3 
+0119 70497c05 jam g24_work_mode_delay ,mem_24g_work_delay_count 
+011a d8c047b0 arg mem_24g_rxbuf ,contr 
+011b d8a0487d arg mem_24g_rxdata_temp ,contw 
+011c df200008 arg 8 ,loopcnt 
+011d 20407f01 call memcpy 
+011e 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
+011f c0550141 beq datatype_bind ,p_g24_dongle_bind_first_step 
+0120 c02a814e beq datatype_config ,p_g24_dongle_bind_second_step 
+0121 c011015e beq datatype_ok ,p_g24_dongle_bind_third_step 
+0122 c07f817a beq 0xff ,p_g24_data_attemp_bind 
 
 p_g24_rx_interrupt_clear:
-010b d8a047b0 arg mem_24g_rxbuf ,contw 
-010c df200042 arg 66 ,loopcnt 
-010d 20207ed4 branch clear_mem 
+0123 d8a047b0 arg mem_24g_rxbuf ,contw 
+0124 df200042 arg 66 ,loopcnt 
+0125 20207ed4 branch clear_mem 
 
 p_g24_dongle_binding_device_check:
-010e 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-010f c1808000 rtnne dongle_bind 
-0110 6800c8ba fetch 1 ,mem_24g_pair_mode 
-0111 247a0000 nrtn blank 
-0112 6800c7b3 fetch 1 ,mem_24g_rxbuf + 3 
-0113 c0008116 beq bind_mouse ,p_g24_dongle_binding_mouse_status 
-0114 c001011a beq bind_keyboard ,p_g24_dongle_binding_keyboard_status 
-0115 20600000 rtn 
+0126 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0127 c1808000 rtnne dongle_bind 
+0128 6800c8ba fetch 1 ,mem_24g_pair_mode 
+0129 247a0000 nrtn blank 
+012a 6800c7b3 fetch 1 ,mem_24g_rxbuf + 3 
+012b c000812e beq bind_mouse ,p_g24_dongle_binding_mouse_status 
+012c c0010132 beq bind_keyboard ,p_g24_dongle_binding_keyboard_status 
+012d 20600000 rtn 
 
 p_g24_dongle_binding_mouse_status:
-0116 6800c981 fetch 1 ,mem_dongle_bind_device_living 
-0117 c4000000 rtnbit0 0 
+012e 6800c983 fetch 1 ,mem_dongle_bind_device_living 
+012f c4000000 rtnbit0 0 
 
 disable_user3:
-0118 7857fc00 disable user3 
-0119 20600000 rtn 
+0130 7857fc00 disable user3 
+0131 20600000 rtn 
 
 p_g24_dongle_binding_keyboard_status:
-011a 6800c981 fetch 1 ,mem_dongle_bind_device_living 
-011b c4008000 rtnbit0 1 
-011c 20200118 branch disable_user3 
+0132 6800c983 fetch 1 ,mem_dongle_bind_device_living 
+0133 c4008000 rtnbit0 1 
+0134 20200130 branch disable_user3 
 
 p_g24_dongle_binding_mouse_living:
-011d 6800c8ba fetch 1 ,mem_24g_pair_mode 
-011e 247a0000 nrtn blank 
-011f 6800c981 fetch 1 ,mem_dongle_bind_device_living 
-0120 1fe1fe01 or_into 0x01 ,pdata 
-0121 6000c981 store 1 ,mem_dongle_bind_device_living 
-0122 20600000 rtn 
+0135 6800c8ba fetch 1 ,mem_24g_pair_mode 
+0136 247a0000 nrtn blank 
+0137 6800c983 fetch 1 ,mem_dongle_bind_device_living 
+0138 1fe1fe01 or_into 0x01 ,pdata 
+0139 6000c983 store 1 ,mem_dongle_bind_device_living 
+013a 20600000 rtn 
 
 p_g24_dongle_binding_keyboard_living:
-0123 6800c8ba fetch 1 ,mem_24g_pair_mode 
-0124 247a0000 nrtn blank 
-0125 6800c981 fetch 1 ,mem_dongle_bind_device_living 
-0126 1fe1fe02 or_into 0x02 ,pdata 
-0127 6000c981 store 1 ,mem_dongle_bind_device_living 
-0128 20600000 rtn 
+013b 6800c8ba fetch 1 ,mem_24g_pair_mode 
+013c 247a0000 nrtn blank 
+013d 6800c983 fetch 1 ,mem_dongle_bind_device_living 
+013e 1fe1fe02 or_into 0x02 ,pdata 
+013f 6000c983 store 1 ,mem_dongle_bind_device_living 
+0140 20600000 rtn 
 
 p_g24_dongle_bind_first_step:
-0129 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-012a c000812d beq bind_mouse ,p_g24_dongle_bind_first_step_mouse 
-012b c0010133 beq bind_keyboard ,p_g24_dongle_bind_first_step_keyboard 
-012c 20600000 rtn 
+0141 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+0142 c0008145 beq bind_mouse ,p_g24_dongle_bind_first_step_mouse 
+0143 c001014b beq bind_keyboard ,p_g24_dongle_bind_first_step_keyboard 
+0144 20600000 rtn 
 
 p_g24_dongle_bind_first_step_mouse:
-012d 7048a501 jam 1 ,mem_dongle_ms_bind_step 
+0145 7048a501 jam 1 ,mem_dongle_ms_bind_step 
 
 p_g24_dongle_bind_ms_payload_cfg:
-012e 7048a801 jam datatype_mouse ,mem_24g_bind_payload 
+0146 7048a801 jam datatype_mouse ,mem_24g_bind_payload 
 
 p_g24_dongle_bind_payload_cfg:
-012f 7048a980 jam 0x80 ,mem_24g_bind_payload + 1 
-0130 6803489f fetch 6 ,mem_24g_rx_addr 
-0131 600348aa store 6 ,mem_24g_bind_payload + 2 
-0132 20600000 rtn 
+0147 7048a980 jam 0x80 ,mem_24g_bind_payload + 1 
+0148 6803489f fetch 6 ,mem_24g_rx_addr 
+0149 600348aa store 6 ,mem_24g_bind_payload + 2 
+014a 20600000 rtn 
 
 p_g24_dongle_bind_first_step_keyboard:
-0133 7048a601 jam 1 ,mem_dongle_kb_bind_step 
+014b 7048a601 jam 1 ,mem_dongle_kb_bind_step 
 
 p_g24_dongle_bind_kb_payload_cfg:
-0134 7048a802 jam datatype_keyboard ,mem_24g_bind_payload 
-0135 2020012f branch p_g24_dongle_bind_payload_cfg 
+014c 7048a802 jam datatype_keyboard ,mem_24g_bind_payload 
+014d 20200147 branch p_g24_dongle_bind_payload_cfg 
 
 p_g24_dongle_bind_second_step:
-0136 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-0137 c000813a beq bind_mouse ,p_g24_dongle_bind_second_step_mouse 
-0138 c0010140 beq bind_keyboard ,p_g24_dongle_bind_second_step_keyboard 
-0139 20600000 rtn 
+014e 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+014f c0008152 beq bind_mouse ,p_g24_dongle_bind_second_step_mouse 
+0150 c0010158 beq bind_keyboard ,p_g24_dongle_bind_second_step_keyboard 
+0151 20600000 rtn 
 
 p_g24_dongle_bind_second_step_mouse:
-013a 2040012e call p_g24_dongle_bind_ms_payload_cfg 
-013b 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
-013c c000813e beq 1 ,p_g24_dongle_ms_bind_step_set2 
-013d 20600000 rtn 
+0152 20400146 call p_g24_dongle_bind_ms_payload_cfg 
+0153 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
+0154 c0008156 beq 1 ,p_g24_dongle_ms_bind_step_set2 
+0155 20600000 rtn 
 
 p_g24_dongle_ms_bind_step_set2:
-013e 7048a502 jam 2 ,mem_dongle_ms_bind_step 
-013f 20600000 rtn 
+0156 7048a502 jam 2 ,mem_dongle_ms_bind_step 
+0157 20600000 rtn 
 
 p_g24_dongle_bind_second_step_keyboard:
-0140 20400134 call p_g24_dongle_bind_kb_payload_cfg 
-0141 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
-0142 c0008144 beq 1 ,p_g24_dongle_kb_bind_step_set2 
-0143 20600000 rtn 
+0158 2040014c call p_g24_dongle_bind_kb_payload_cfg 
+0159 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
+015a c000815c beq 1 ,p_g24_dongle_kb_bind_step_set2 
+015b 20600000 rtn 
 
 p_g24_dongle_kb_bind_step_set2:
-0144 7048a602 jam 2 ,mem_dongle_kb_bind_step 
-0145 20600000 rtn 
+015c 7048a602 jam 2 ,mem_dongle_kb_bind_step 
+015d 20600000 rtn 
 
 p_g24_dongle_bind_third_step:
-0146 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-0147 c000814a beq bind_mouse ,p_g24_dongle_bind_third_step_mouse 
-0148 c0010154 beq bind_keyboard ,p_g24_dongle_bind_third_step_keyboard 
-0149 20600000 rtn 
+015e 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+015f c0008162 beq bind_mouse ,p_g24_dongle_bind_third_step_mouse 
+0160 c001016c beq bind_keyboard ,p_g24_dongle_bind_third_step_keyboard 
+0161 20600000 rtn 
 
 p_g24_dongle_bind_third_step_mouse:
-014a 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
-014b c001014d beq 2 ,p_g24_dongle_ms_bind_step_success 
-014c 20600000 rtn 
+0162 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
+0163 c0010165 beq 2 ,p_g24_dongle_ms_bind_step_success 
+0164 20600000 rtn 
 
 p_g24_dongle_ms_bind_step_success:
-014d 2040011d call p_g24_dongle_binding_mouse_living 
-014e 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-014f 1fe1fe01 or_into 0x01 ,pdata 
-0150 6000c8a7 store 1 ,mem_dongle_bind_device_status 
+0165 20400135 call p_g24_dongle_binding_mouse_living 
+0166 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+0167 1fe1fe01 or_into 0x01 ,pdata 
+0168 6000c8a7 store 1 ,mem_dongle_bind_device_status 
 
 p_g24_dongle_bind_exit:
-0151 58000000 setarg 0 
-0152 600148a5 store 2 ,mem_dongle_ms_bind_step 
-0153 2020010b branch p_g24_rx_interrupt_clear 
+0169 58000000 setarg 0 
+016a 600148a5 store 2 ,mem_dongle_ms_bind_step 
+016b 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_dongle_bind_third_step_keyboard:
-0154 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
-0155 c0800157 bne 0 ,p_g24_dongle_kb_bind_step_success 
-0156 20600000 rtn 
+016c 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
+016d c080016f bne 0 ,p_g24_dongle_kb_bind_step_success 
+016e 20600000 rtn 
 
 p_g24_dongle_kb_bind_step_success:
-0157 20400123 call p_g24_dongle_binding_keyboard_living 
-0158 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-0159 1fe1fe02 or_into 0x02 ,pdata 
-015a 6000c8a7 store 1 ,mem_dongle_bind_device_status 
-015b 20400151 call p_g24_dongle_bind_exit 
+016f 2040013b call p_g24_dongle_binding_keyboard_living 
+0170 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+0171 1fe1fe02 or_into 0x02 ,pdata 
+0172 6000c8a7 store 1 ,mem_dongle_bind_device_status 
+0173 20400169 call p_g24_dongle_bind_exit 
 
 p_g24_dongle_store_kb_bind_flag:
-015c 680091c7 fetch 1 ,mem_dongle_kb_bind_flag 
-015d c12d0000 rtneq dongle_kb_bind_success 
-015e 7011c75a jam dongle_kb_bind_success ,mem_dongle_kb_bind_flag 
-015f 20400088 call p_dongle_set_kb_bind_eeprom 
-0160 204065d1 call iicd_write_protect_eep_data 
-0161 2020659a branch soft_reset_chip 
+0174 680091c7 fetch 1 ,mem_dongle_kb_bind_flag 
+0175 c12d0000 rtneq dongle_kb_bind_success 
+0176 7011c75a jam dongle_kb_bind_success ,mem_dongle_kb_bind_flag 
+0177 204000a0 call p_dongle_set_kb_bind_eeprom 
+0178 204065d1 call iicd_write_protect_eep_data 
+0179 2020659a branch soft_reset_chip 
 
 p_g24_data_attemp_bind:
-0162 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-0163 c0008166 beq datatype_mouse ,p_g24_data_attemp_mouse_bind 
-0164 c0010169 beq datatype_keyboard ,p_g24_data_attemp_kbd_bind 
-0165 20600000 rtn 
+017a 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+017b c000817e beq datatype_mouse ,p_g24_data_attemp_mouse_bind 
+017c c0010181 beq datatype_keyboard ,p_g24_data_attemp_kbd_bind 
+017d 20600000 rtn 
 
 p_g24_data_attemp_mouse_bind:
-0166 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+017e 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
 
 p_g24_store_mouse_addr:
-0167 600248da store 4 ,mem_24g_ms_addr 
-0168 20600000 rtn 
+017f 600248da store 4 ,mem_24g_ms_addr 
+0180 20600000 rtn 
 
 p_g24_data_attemp_kbd_bind:
-0169 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+0181 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
 
 p_g24_store_kbd_addr:
-016a 600248d6 store 4 ,mem_24g_kb_addr 
-016b 20600000 rtn 
+0182 600248d6 store 4 ,mem_24g_kb_addr 
+0183 20600000 rtn 
 
 p_g24_queue_init:
-016c 70490000 jam 0 ,mem_queue_ele_num 
-016d 58004905 setarg mem_queue_start 
-016e 60014901 store 2 ,mem_queue_read 
-016f 60014903 store 2 ,mem_queue_write 
-0170 20600000 rtn 
+0184 70490000 jam 0 ,mem_queue_ele_num 
+0185 58004905 setarg mem_queue_start 
+0186 60014901 store 2 ,mem_queue_read 
+0187 60014903 store 2 ,mem_queue_write 
+0188 20600000 rtn 
 
 p_g24_queue_put:
-0171 df20001f arg 0x1f ,loopcnt 
-0172 d8400cb6 arg mem_usb0_set_report_data ,temp 
-0173 68014903 fetch 2 ,mem_queue_write 
-0174 1fe20a00 copy pdata ,contw 
-0175 18420c00 copy temp ,contr 
-0176 20407f01 call memcpy 
-0177 6800c900 fetch 1 ,mem_queue_ele_num 
-0178 1fe0fe01 increase 1 ,pdata 
-0179 6000c900 store 1 ,mem_queue_ele_num 
-017a 58004903 setarg mem_queue_write 
+0189 df20001f arg 0x1f ,loopcnt 
+018a d8400cb6 arg mem_usb0_set_report_data ,temp 
+018b 68014903 fetch 2 ,mem_queue_write 
+018c 1fe20a00 copy pdata ,contw 
+018d 18420c00 copy temp ,contr 
+018e 20407f01 call memcpy 
+018f 6800c900 fetch 1 ,mem_queue_ele_num 
+0190 1fe0fe01 increase 1 ,pdata 
+0191 6000c900 store 1 ,mem_queue_ele_num 
+0192 58004903 setarg mem_queue_write 
 
 p_g24_queue_increase:
-017b 1fe22200 copy pdata ,rega 
-017c d8404965 arg mem_queue_end ,temp 
-017d ea210000 ifetch 2 ,rega 
-017e 1fe0fe20 increase queue_ele_length ,pdata 
-017f 98467c00 isub temp ,null 
-0180 24210182 nbranch p_g24_queue_put_end ,positive 
-0181 58004905 setarg mem_queue_start 
+0193 1fe22200 copy pdata ,rega 
+0194 d8404965 arg mem_queue_end ,temp 
+0195 ea210000 ifetch 2 ,rega 
+0196 1fe0fe20 increase queue_ele_length ,pdata 
+0197 98467c00 isub temp ,null 
+0198 2421019a nbranch p_g24_queue_put_end ,positive 
+0199 58004905 setarg mem_queue_start 
 
 p_g24_queue_put_end:
-0182 e2210000 istore 2 ,rega 
-0183 20600000 rtn 
+019a e2210000 istore 2 ,rega 
+019b 20600000 rtn 
 
 p_g24_queue_read_point:
-0184 78547c00 disable user 
-0185 6800c900 fetch 1 ,mem_queue_ele_num 
-0186 207a0000 rtn blank 
-0187 78347c00 enable user 
-0188 68014901 fetch 2 ,mem_queue_read 
-0189 20600000 rtn 
+019c 78547c00 disable user 
+019d 6800c900 fetch 1 ,mem_queue_ele_num 
+019e 207a0000 rtn blank 
+019f 78347c00 enable user 
+01a0 68014901 fetch 2 ,mem_queue_read 
+01a1 20600000 rtn 
 
 p_dongle_usb_dispatch:
-018a 708004ff jam 0xff ,core_write_watchdog 
-018b 204048d3 call usb_isr 
-018c 68008d50 fetch 1 ,mem_usb0_get_set_report 
-018d 207a0000 rtn blank 
-018e 700d5000 jam 0 ,mem_usb0_get_set_report 
-018f 68010d4e fetch 2 ,mem_usb_setup_bvalue_temp 
-0190 d84002ba arg pc_set_report ,temp 
-0191 98467c00 isub temp ,null 
-0192 24628000 nrtn zero 
-0193 68008cb6 fetch 1 ,mem_usb0_set_report_data 
-0194 c1dd0000 rtnne pc_report_id 
-0195 68008cb7 fetch 1 ,mem_usb0_set_report_data + 1 
-0196 c05001a7 beq command_mode ,p_dongle_dispose_cmd_mode 
-0197 c050819d beq command_bind ,p_dongle_dispose_cmd_bind 
-0198 c0533041 beq command_current_project ,dongle_dispose_cmd_current_project 
-0199 c05381ac beq command_current_mode ,p_dongle_dispose_cmd_current_mode 
-019a c05481b2 beq command_current_fw_version ,p_dongle_dispose_cmd_current_fw_version 
-019b c05801b4 beq command_user_defined ,p_dongle_dispose_cmd_user_defined 
-019c 2020302a branch usb0_data_ready_report_set0 
+01a2 708004ff jam 0xff ,core_write_watchdog 
+01a3 68008d39 fetch 1 ,mem_usb_remote_wakeup 
+01a4 205a0315 call p_g24_clear_pc_sleep_flag ,blank 
+01a5 204048d3 call usb_isr 
+01a6 68008d50 fetch 1 ,mem_usb0_get_set_report 
+01a7 207a0000 rtn blank 
+01a8 700d5000 jam 0 ,mem_usb0_get_set_report 
+01a9 68010d4e fetch 2 ,mem_usb_setup_bvalue_temp 
+01aa d84002ba arg pc_set_report ,temp 
+01ab 98467c00 isub temp ,null 
+01ac 24628000 nrtn zero 
+01ad 68008cb6 fetch 1 ,mem_usb0_set_report_data 
+01ae c1dd0000 rtnne pc_report_id 
+01af 68008cb7 fetch 1 ,mem_usb0_set_report_data + 1 
+01b0 c05001c1 beq command_mode ,p_dongle_dispose_cmd_mode 
+01b1 c05081b7 beq command_bind ,p_dongle_dispose_cmd_bind 
+01b2 c0533041 beq command_current_project ,dongle_dispose_cmd_current_project 
+01b3 c05381c6 beq command_current_mode ,p_dongle_dispose_cmd_current_mode 
+01b4 c05481cc beq command_current_fw_version ,p_dongle_dispose_cmd_current_fw_version 
+01b5 c05801ce beq command_user_defined ,p_dongle_dispose_cmd_user_defined 
+01b6 2020302a branch usb0_data_ready_report_set0 
 
 p_dongle_dispose_cmd_bind:
-019d 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
-019e c00081a2 beq com_bind_get ,p_dongle_dispose_cmd_get_bind 
-019f c04201a5 beq com_bind_exit ,p_dongle_dispose_cmd_exit_bind 
-01a0 c053b039 beq com_read_mode ,dongle_dispose_cmd_read_mode 
-01a1 2020302a branch usb0_data_ready_report_set0 
+01b7 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+01b8 c00081bc beq com_bind_get ,p_dongle_dispose_cmd_get_bind 
+01b9 c04201bf beq com_bind_exit ,p_dongle_dispose_cmd_exit_bind 
+01ba c053b039 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+01bb 2020302a branch usb0_data_ready_report_set0 
 
 p_dongle_dispose_cmd_get_bind:
-01a2 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-01a3 60008cf7 store 1 ,mem_usb0_get_report_data + 1 
-01a4 2020303f branch usb0_data_ready_report_set1 
+01bc 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+01bd 60008cf7 store 1 ,mem_usb0_get_report_data + 1 
+01be 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_dispose_cmd_exit_bind:
-01a5 204000a1 call p_dongle_work_mode_enable 
-01a6 202001a2 branch p_dongle_dispose_cmd_get_bind 
+01bf 204000b9 call p_dongle_work_mode_enable 
+01c0 202001bc branch p_dongle_dispose_cmd_get_bind 
 
 p_dongle_dispose_cmd_mode:
-01a7 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
-01a8 c04081aa beq com_mode_bind ,p_dongle_enter_bind_mode 
-01a9 2020302a branch usb0_data_ready_report_set0 
+01c1 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+01c2 c04081c4 beq com_mode_bind ,p_dongle_enter_bind_mode 
+01c3 2020302a branch usb0_data_ready_report_set0 
 
 p_dongle_enter_bind_mode:
-01aa 2040020b call p_g24_bind_mode_enable 
-01ab 2020303f branch usb0_data_ready_report_set1 
+01c4 20400225 call p_g24_bind_mode_enable 
+01c5 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_dispose_cmd_current_mode:
-01ac 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-01ad c00001b0 beq dongle_work ,p_dongle_dispose_in_work_mode 
-01ae c000b039 beq dongle_bind ,dongle_dispose_in_bind_mode 
-01af 20600000 rtn 
+01c6 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+01c7 c00001ca beq dongle_work ,p_dongle_dispose_in_work_mode 
+01c8 c000b039 beq dongle_bind ,dongle_dispose_in_bind_mode 
+01c9 20600000 rtn 
 
 p_dongle_dispose_in_work_mode:
-01b0 700cf7a0 jam command_mode ,mem_usb0_get_report_data + 1 
-01b1 2020303f branch usb0_data_ready_report_set1 
+01ca 700cf7a0 jam command_mode ,mem_usb0_get_report_data + 1 
+01cb 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_dispose_cmd_current_fw_version:
-01b2 700cfa07 jam fw_version3 ,mem_usb0_get_report_data + 4 
-01b3 20203049 branch dongle_dispose_cmd_current_fw_version 
+01cc 700cfa07 jam fw_version3 ,mem_usb0_get_report_data + 4 
+01cd 20203049 branch dongle_dispose_cmd_current_fw_version 
 
 p_dongle_dispose_cmd_user_defined:
-01b4 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
-01b5 c07fe59a beq 0xff ,soft_reset_chip 
+01ce 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+01cf c07fe59a beq 0xff ,soft_reset_chip 
 
 p_dongle_dispose_cmd_ota:
-01b6 7048b802 jam 2 ,mem_24g_ackpayload_enable 
-01b7 6800c900 fetch 1 ,mem_queue_ele_num 
-01b8 c00181be beq queue_ele_count ,p_user_defined_queue_buff_full 
-01b9 20400171 call p_g24_queue_put 
-01ba 6800c900 fetch 1 ,mem_queue_ele_num 
-01bb c00181be beq queue_ele_count ,p_user_defined_queue_buff_full 
+01d0 7048b802 jam 2 ,mem_24g_ackpayload_enable 
+01d1 6800c900 fetch 1 ,mem_queue_ele_num 
+01d2 c00181d8 beq queue_ele_count ,p_user_defined_queue_buff_full 
+01d3 20400189 call p_g24_queue_put 
+01d4 6800c900 fetch 1 ,mem_queue_ele_num 
+01d5 c00181d8 beq queue_ele_count ,p_user_defined_queue_buff_full 
 
 p_user_defined_queue_buff_free:
-01bc 700cf700 jam 0 ,mem_usb0_get_report_data + 1 
-01bd 2020303f branch usb0_data_ready_report_set1 
+01d6 700cf700 jam 0 ,mem_usb0_get_report_data + 1 
+01d7 2020303f branch usb0_data_ready_report_set1 
 
 p_user_defined_queue_buff_full:
-01be 700cf701 jam 1 ,mem_usb0_get_report_data + 1 
-01bf 2020303f branch usb0_data_ready_report_set1 
+01d8 700cf701 jam 1 ,mem_usb0_get_report_data + 1 
+01d9 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_auto_bind:
-01c0 204001e5 call p_g24_mode_switch_init 
+01da 204001ff call p_g24_mode_switch_init 
 
 p_dongle_auto_bind_loop:
-01c1 204001eb call p_g24_mode_switch 
-01c2 2040021a call p_g24_mode_switch_2 
-01c3 204001c8 call p_g24_dongle_work_mode_auto 
-01c4 204001cc call p_g24_dongle_bind_mode_auto 
-01c5 2040024b call p_g24_dongle_search_mode_auto 
-01c6 2040018a call p_dongle_usb_dispatch 
-01c7 202001c1 branch p_dongle_auto_bind_loop 
+01db 20400205 call p_g24_mode_switch 
+01dc 20400234 call p_g24_mode_switch_2 
+01dd 204001e2 call p_g24_dongle_work_mode_auto 
+01de 204001e6 call p_g24_dongle_bind_mode_auto 
+01df 20400267 call p_g24_dongle_search_mode_auto 
+01e0 204001a2 call p_dongle_usb_dispatch 
+01e1 202001db branch p_dongle_auto_bind_loop 
 
 p_g24_dongle_work_mode_auto:
-01c8 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-01c9 c1800000 rtnne dongle_work 
-01ca 204000a6 call p_g24_dongle_work_mode_start 
-01cb 20200239 branch p_g24_rx_nodata_process 
+01e2 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+01e3 c1800000 rtnne dongle_work 
+01e4 204000be call p_g24_dongle_work_mode_start 
+01e5 20200255 branch p_g24_rx_nodata_process 
 
 p_g24_dongle_bind_mode_auto:
-01cc 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-01cd c1808000 rtnne dongle_bind 
-01ce 204000f3 call p_g24_dongle_bind_init 
-01cf 204000ff call p_g24_dongle_bind_data_process 
-01d0 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-01d1 207a0000 rtn blank 
-01d2 7048b700 jam 0 ,mem_24g_mode_switch 
-01d3 204000a0 call p_dongle_check_mode 
-01d4 20400237 call p_g24_enable_nodata_timer 
-01d5 202001e8 branch p_g24_timer_init 
+01e6 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+01e7 c1808000 rtnne dongle_bind 
+01e8 2040010b call p_g24_dongle_bind_init 
+01e9 20400117 call p_g24_dongle_bind_data_process 
+01ea 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+01eb 207a0000 rtn blank 
+01ec 7048b700 jam 0 ,mem_24g_mode_switch 
+01ed 204000b8 call p_dongle_check_mode 
+01ee 20400253 call p_g24_enable_nodata_timer 
+01ef 20200202 branch p_g24_timer_init 
 
 p_g24_timer_check:
-01d6 20407fe9 call disable_user 
-01d7 680a4857 fetcht 4 ,mem_24g_tx_btclk 
-01d8 1c427e00 copy clkn_bt ,pdata 
-01d9 98467c00 isub temp ,null 
-01da 24412d18 ncall g24_timer_timeout ,positive 
-01db 1fe22400 copy pdata ,regb 
-01dc 68024857 fetch 4 ,mem_24g_tx_btclk 
-01dd 6808c85b fetcht 1 ,mem_24g_interval 
-01de 98408400 iadd temp ,temp 
-01df 1a427e00 copy regb ,pdata 
-01e0 98467c00 isub temp ,null 
-01e1 24610000 nrtn positive 
-01e2 793ffe1c set0 28 ,pdata 
-01e3 60024857 store 4 ,mem_24g_tx_btclk 
-01e4 20207fe7 branch enable_user 
+01f0 20407fe9 call disable_user 
+01f1 680a4857 fetcht 4 ,mem_24g_tx_btclk 
+01f2 1c427e00 copy clkn_bt ,pdata 
+01f3 98467c00 isub temp ,null 
+01f4 24412d18 ncall g24_timer_timeout ,positive 
+01f5 1fe22400 copy pdata ,regb 
+01f6 68024857 fetch 4 ,mem_24g_tx_btclk 
+01f7 6808c85b fetcht 1 ,mem_24g_interval 
+01f8 98408400 iadd temp ,temp 
+01f9 1a427e00 copy regb ,pdata 
+01fa 98467c00 isub temp ,null 
+01fb 24610000 nrtn positive 
+01fc 793ffe1c set0 28 ,pdata 
+01fd 60024857 store 4 ,mem_24g_tx_btclk 
+01fe 20207fe7 branch enable_user 
 
 p_g24_mode_switch_init:
-01e5 7048b701 jam 1 ,mem_24g_mode_switch 
-01e6 7048bc00 jam 0 ,mem_24g_time_slice 
-01e7 70485bff jam 0xff ,mem_24g_interval 
+01ff 7048b701 jam 1 ,mem_24g_mode_switch 
+0200 7048bc00 jam 0 ,mem_24g_time_slice 
+0201 70485bff jam 0xff ,mem_24g_interval 
 
 p_g24_timer_init:
-01e8 58000000 setarg 0 
-01e9 60024857 store 4 ,mem_24g_tx_btclk 
-01ea 20600000 rtn 
+0202 58000000 setarg 0 
+0203 60024857 store 4 ,mem_24g_tx_btclk 
+0204 20600000 rtn 
 
 p_g24_mode_switch:
-01eb 6800c8b7 fetch 1 ,mem_24g_mode_switch 
-01ec 207a0000 rtn blank 
-01ed 204001d6 call p_g24_timer_check 
-01ee 24740000 nrtn user 
-01ef 6800c982 fetch 1 ,mem_dongle_close_bind_mode_timer 
-01f0 c283009f bbit1 6 ,p_dongle_close_bind_mode 
-01f1 1fe0fe01 increase 1 ,pdata 
-01f2 6000c982 store 1 ,mem_dongle_close_bind_mode_timer 
-01f3 20400204 call p_g24_bind_mode_delay 
-01f4 204001fc call p_g24_work_mode_delay 
-01f5 6800c8bc fetch 1 ,mem_24g_time_slice 
-01f6 1fe0fe01 increase 1 ,pdata 
-01f7 1fe17e01 and_into 1 ,pdata 
-01f8 6000c8bc store 1 ,mem_24g_time_slice 
-01f9 c0000201 beq 0 ,p_g24_mode_switch_work 
-01fa c0008209 beq 1 ,p_g24_mode_switch_bind 
-01fb 20600000 rtn 
+0205 6800c8b7 fetch 1 ,mem_24g_mode_switch 
+0206 207a0000 rtn blank 
+0207 204001f0 call p_g24_timer_check 
+0208 24740000 nrtn user 
+0209 6800c984 fetch 1 ,mem_dongle_close_bind_mode_timer 
+020a c28300b7 bbit1 6 ,p_dongle_close_bind_mode 
+020b 1fe0fe01 increase 1 ,pdata 
+020c 6000c984 store 1 ,mem_dongle_close_bind_mode_timer 
+020d 2040021e call p_g24_bind_mode_delay 
+020e 20400216 call p_g24_work_mode_delay 
+020f 6800c8bc fetch 1 ,mem_24g_time_slice 
+0210 1fe0fe01 increase 1 ,pdata 
+0211 1fe17e01 and_into 1 ,pdata 
+0212 6000c8bc store 1 ,mem_24g_time_slice 
+0213 c000021b beq 0 ,p_g24_mode_switch_work 
+0214 c0008223 beq 1 ,p_g24_mode_switch_bind 
+0215 20600000 rtn 
 
 p_g24_work_mode_delay:
-01fc 6800c97a fetch 1 ,mem_24g_work_delay_count 
-01fd 207a0000 rtn blank 
-01fe 1fe0ffff increase -1 ,pdata 
-01ff 6000c97a store 1 ,mem_24g_work_delay_count 
-0200 20600000 rtn 
+0216 6800c97c fetch 1 ,mem_24g_work_delay_count 
+0217 207a0000 rtn blank 
+0218 1fe0ffff increase -1 ,pdata 
+0219 6000c97c store 1 ,mem_24g_work_delay_count 
+021a 20600000 rtn 
 
 p_g24_mode_switch_work:
-0201 6800c97a fetch 1 ,mem_24g_work_delay_count 
-0202 243a020b nbranch p_g24_bind_mode_enable ,blank 
-0203 202000a0 branch p_dongle_check_mode 
+021b 6800c97c fetch 1 ,mem_24g_work_delay_count 
+021c 243a0225 nbranch p_g24_bind_mode_enable ,blank 
+021d 202000b8 branch p_dongle_check_mode 
 
 p_g24_bind_mode_delay:
-0204 6800c979 fetch 1 ,mem_24g_bind_delay_count 
-0205 207a0000 rtn blank 
-0206 1fe0ffff increase -1 ,pdata 
-0207 6000c979 store 1 ,mem_24g_bind_delay_count 
-0208 20600000 rtn 
+021e 6800c97b fetch 1 ,mem_24g_bind_delay_count 
+021f 207a0000 rtn blank 
+0220 1fe0ffff increase -1 ,pdata 
+0221 6000c97b store 1 ,mem_24g_bind_delay_count 
+0222 20600000 rtn 
 
 p_g24_mode_switch_bind:
-0209 6800c979 fetch 1 ,mem_24g_bind_delay_count 
-020a 243a00a0 nbranch p_dongle_check_mode ,blank 
+0223 6800c97b fetch 1 ,mem_24g_bind_delay_count 
+0224 243a00b8 nbranch p_dongle_check_mode ,blank 
 
 p_g24_bind_mode_enable:
-020b 7048a401 jam dongle_bind ,mem_dongle_work_mode 
-020c 7048a300 jam clear_init ,mem_dongle_mode_init 
-020d 20600000 rtn 
+0225 7048a401 jam dongle_bind ,mem_dongle_work_mode 
+0226 7048a300 jam clear_init ,mem_dongle_mode_init 
+0227 20600000 rtn 
 
 p_g24_mode_switch_init_2:
-020e 6800c97f fetch 1 ,mem_24g_mode_switch_exit_2 
-020f 205a0235 call p_g24_mode_switch_start_2 ,blank 
-0210 6800c97c fetch 1 ,mem_24g_mode_switch_2_init 
-0211 c3800000 rtnbit1 0 
-0212 79207e00 set1 0 ,pdata 
-0213 6000c97c store 1 ,mem_24g_mode_switch_2_init 
-0214 70497b01 jam 1 ,mem_24g_mode_switch_2 
-0215 70498000 jam 0 ,mem_24g_time_slice_2 
-0216 58000000 setarg 0 
-0217 6001497d store 2 ,mem_24g_mode_switch_cnt_2 
-0218 70485b60 jam 0x60 ,mem_24g_interval 
-0219 202001e8 branch p_g24_timer_init 
+0228 6800c981 fetch 1 ,mem_24g_mode_switch_exit_2 
+0229 205a0251 call p_g24_mode_switch_start_2 ,blank 
+022a 6800c97e fetch 1 ,mem_24g_mode_switch_2_init 
+022b c3800000 rtnbit1 0 
+022c 79207e00 set1 0 ,pdata 
+022d 6000c97e store 1 ,mem_24g_mode_switch_2_init 
+022e 70497d01 jam 1 ,mem_24g_mode_switch_2 
+022f 70498200 jam 0 ,mem_24g_time_slice_2 
+0230 58000000 setarg 0 
+0231 6001497f store 2 ,mem_24g_mode_switch_cnt_2 
+0232 70485b60 jam 0x60 ,mem_24g_interval 
+0233 20200202 branch p_g24_timer_init 
 
 p_g24_mode_switch_2:
-021a 6800c97f fetch 1 ,mem_24g_mode_switch_exit_2 
-021b 247a0000 nrtn blank 
-021c 6800c97b fetch 1 ,mem_24g_mode_switch_2 
-021d 207a0000 rtn blank 
-021e 204001d6 call p_g24_timer_check 
-021f 24740000 nrtn user 
-0220 6801497d fetch 2 ,mem_24g_mode_switch_cnt_2 
-0221 1fe0fe01 increase 1 ,pdata 
-0222 6001497d store 2 ,mem_24g_mode_switch_cnt_2 
-0223 d84007d0 arg 0x7d0 ,temp 
-0224 98467c00 isub temp ,null 
-0225 20210231 branch p_g24_mode_switch_exit_2 ,positive 
-0226 204001fc call p_g24_work_mode_delay 
-0227 6800c980 fetch 1 ,mem_24g_time_slice_2 
-0228 1fe0fe01 increase 1 ,pdata 
-0229 1fe17e01 and_into 1 ,pdata 
-022a 6000c980 store 1 ,mem_24g_time_slice_2 
-022b c000022e beq 0 ,p_g24_mode_switch_search 
-022c c000820b beq 1 ,p_g24_bind_mode_enable 
-022d 20600000 rtn 
+0234 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0235 c1000000 rtneq dongle_work 
+0236 6800c981 fetch 1 ,mem_24g_mode_switch_exit_2 
+0237 247a0000 nrtn blank 
+0238 6800c97d fetch 1 ,mem_24g_mode_switch_2 
+0239 207a0000 rtn blank 
+023a 204001f0 call p_g24_timer_check 
+023b 24740000 nrtn user 
+023c 6801497f fetch 2 ,mem_24g_mode_switch_cnt_2 
+023d 1fe0fe01 increase 1 ,pdata 
+023e 6001497f store 2 ,mem_24g_mode_switch_cnt_2 
+023f d84007d0 arg 0x7d0 ,temp 
+0240 98467c00 isub temp ,null 
+0241 2021024d branch p_g24_mode_switch_exit_2 ,positive 
+0242 20400216 call p_g24_work_mode_delay 
+0243 6800c982 fetch 1 ,mem_24g_time_slice_2 
+0244 1fe0fe01 increase 1 ,pdata 
+0245 1fe17e01 and_into 1 ,pdata 
+0246 6000c982 store 1 ,mem_24g_time_slice_2 
+0247 c000024a beq 0 ,p_g24_mode_switch_search 
+0248 c0008225 beq 1 ,p_g24_bind_mode_enable 
+0249 20600000 rtn 
 
 p_g24_mode_switch_search:
-022e 6800c97a fetch 1 ,mem_24g_work_delay_count 
-022f 243a020b nbranch p_g24_bind_mode_enable ,blank 
-0230 20200244 branch p_g24_search_mode_enable 
+024a 6800c97c fetch 1 ,mem_24g_work_delay_count 
+024b 243a0225 nbranch p_g24_bind_mode_enable ,blank 
+024c 20200260 branch p_g24_search_mode_enable 
 
 p_g24_mode_switch_exit_2:
-0231 70497f01 jam 1 ,mem_24g_mode_switch_exit_2 
-0232 20200244 branch p_g24_search_mode_enable 
+024d 70498101 jam 1 ,mem_24g_mode_switch_exit_2 
+024e 20200260 branch p_g24_search_mode_enable 
 
 p_g24_mode_switch_stop_2:
-0233 70497b00 jam 0 ,mem_24g_mode_switch_2 
-0234 20600000 rtn 
+024f 70497d00 jam 0 ,mem_24g_mode_switch_2 
+0250 20600000 rtn 
 
 p_g24_mode_switch_start_2:
-0235 70497b01 jam 1 ,mem_24g_mode_switch_2 
-0236 20600000 rtn 
+0251 70497d01 jam 1 ,mem_24g_mode_switch_2 
+0252 20600000 rtn 
 
 p_g24_enable_nodata_timer:
-0237 7048bb01 jam 1 ,mem_24g_nodata_timer_enable 
-0238 20203095 branch g24_enable_nodata_timer_init 
+0253 7048bb01 jam 1 ,mem_24g_nodata_timer_enable 
+0254 20203095 branch g24_enable_nodata_timer_init 
 
 p_g24_rx_nodata_process:
-0239 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
-023a c1010000 rtneq 2 
-023b 6800c8bb fetch 1 ,mem_24g_nodata_timer_enable 
-023c 207a0000 rtn blank 
-023d d8e00008 arg timer_nodata ,queue 
-023e 20407f16 call timer_check 
-023f 247a0000 nrtn blank 
-0240 7048bb00 jam 0 ,mem_24g_nodata_timer_enable 
-0241 70497900 jam 0 ,mem_24g_bind_delay_count 
-0242 70497a00 jam 0 ,mem_24g_work_delay_count 
-0243 2040020e call p_g24_mode_switch_init_2 
+0255 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
+0256 c1010000 rtneq 2 
+0257 6800c8bb fetch 1 ,mem_24g_nodata_timer_enable 
+0258 207a0000 rtn blank 
+0259 d8e00008 arg timer_nodata ,queue 
+025a 20407f16 call timer_check 
+025b 247a0000 nrtn blank 
+025c 7048bb00 jam 0 ,mem_24g_nodata_timer_enable 
+025d 70497b00 jam 0 ,mem_24g_bind_delay_count 
+025e 70497c00 jam 0 ,mem_24g_work_delay_count 
+025f 20400228 call p_g24_mode_switch_init_2 
 
 p_g24_search_mode_enable:
-0244 7048a407 jam dongle_search ,mem_dongle_work_mode 
-0245 7048a300 jam clear_init ,mem_dongle_mode_init 
-0246 2020010b branch p_g24_rx_interrupt_clear 
+0260 7048a407 jam dongle_search ,mem_dongle_work_mode 
+0261 7048a300 jam clear_init ,mem_dongle_mode_init 
+0262 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_receive_transmit_ack:
-0247 2040010b call p_g24_rx_interrupt_clear 
-0248 2040044e call p_g24_receive_packet 
-0249 24778000 nrtn user3 
-024a 202002e8 branch p_g24_transmit_ack 
+0263 20400123 call p_g24_rx_interrupt_clear 
+0264 2040047f call p_g24_receive_packet 
+0265 24778000 nrtn user3 
+0266 20200304 branch p_g24_transmit_ack 
 
 p_g24_dongle_search_mode_auto:
-024b 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-024c c1838000 rtnne dongle_search 
-024d 20400272 call p_g24_dongle_search_mode_init 
-024e 20400286 call p_g24_rx_auto_addr_ch_search 
-024f 20400247 call p_g24_receive_transmit_ack 
-0250 2437810b nbranch p_g24_rx_interrupt_clear ,user3 
-0251 20400282 call p_g24_rx_addr_check 
-0252 20428317 call p_g24_receive_packet_parse ,zero 
-0253 6800c8b0 fetch 1 ,mem_24g_abort_packet 
-0254 205a0233 call p_g24_mode_switch_stop_2 ,blank 
-0255 7048a400 jam dongle_work ,mem_dongle_work_mode 
-0256 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-0257 79207e00 set1 dongle_work ,pdata 
-0258 6000c8a3 store 1 ,mem_dongle_mode_init 
-0259 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
-025a 1fe67c02 sub pdata ,2 ,null 
-025b 24428269 ncall p_g24_ackpayload_disable ,zero 
-025c 2040010b call p_g24_rx_interrupt_clear 
-025d 20400237 call p_g24_enable_nodata_timer 
-025e 20400282 call p_g24_rx_addr_check 
-025f 2022826b branch p_g24_dg_ch_num_reinit ,zero 
-0260 6802485e fetch 4 ,mem_24g_addr 
-0261 680a48d6 fetcht 4 ,mem_24g_kb_addr 
-0262 98467c00 isub temp ,null 
-0263 2022826e branch p_g24_kb_ch_num_reinit ,zero 
-0264 6802485e fetch 4 ,mem_24g_addr 
-0265 680a48da fetcht 4 ,mem_24g_ms_addr 
-0266 98467c00 isub temp ,null 
-0267 20228270 branch p_g24_ms_ch_num_reinit ,zero 
-0268 20600000 rtn 
+0267 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0268 c1838000 rtnne dongle_search 
+0269 2040028e call p_g24_dongle_search_mode_init 
+026a 204002a2 call p_g24_rx_auto_addr_ch_search 
+026b 20400263 call p_g24_receive_transmit_ack 
+026c 24378123 nbranch p_g24_rx_interrupt_clear ,user3 
+026d 2040029e call p_g24_rx_addr_check 
+026e 20428348 call p_g24_receive_packet_parse ,zero 
+026f 6800c8b0 fetch 1 ,mem_24g_abort_packet 
+0270 205a024f call p_g24_mode_switch_stop_2 ,blank 
+0271 7048a400 jam dongle_work ,mem_dongle_work_mode 
+0272 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+0273 79207e00 set1 dongle_work ,pdata 
+0274 6000c8a3 store 1 ,mem_dongle_mode_init 
+0275 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
+0276 1fe67c02 sub pdata ,2 ,null 
+0277 24428285 ncall p_g24_ackpayload_disable ,zero 
+0278 20400123 call p_g24_rx_interrupt_clear 
+0279 20400253 call p_g24_enable_nodata_timer 
+027a 2040029e call p_g24_rx_addr_check 
+027b 20228287 branch p_g24_dg_ch_num_reinit ,zero 
+027c 6802485e fetch 4 ,mem_24g_addr 
+027d 680a48d6 fetcht 4 ,mem_24g_kb_addr 
+027e 98467c00 isub temp ,null 
+027f 2022828a branch p_g24_kb_ch_num_reinit ,zero 
+0280 6802485e fetch 4 ,mem_24g_addr 
+0281 680a48da fetcht 4 ,mem_24g_ms_addr 
+0282 98467c00 isub temp ,null 
+0283 2022828c branch p_g24_ms_ch_num_reinit ,zero 
+0284 20600000 rtn 
 
 p_g24_ackpayload_disable:
-0269 7048b800 jam 0 ,mem_24g_ackpayload_enable 
-026a 20600000 rtn 
+0285 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+0286 20600000 rtn 
 
 p_g24_dg_ch_num_reinit:
-026b 6800c8df fetch 1 ,mem_24g_dg_ch_number 
+0287 6800c8df fetch 1 ,mem_24g_dg_ch_number 
 
 p_g24_current_ch_num_reinit:
-026c 6000c841 store 1 ,mem_24g_current_ch_number 
-026d 20600000 rtn 
+0288 6000c841 store 1 ,mem_24g_current_ch_number 
+0289 20600000 rtn 
 
 p_g24_kb_ch_num_reinit:
-026e 6800c8e2 fetch 1 ,mem_24g_kb_ch_number 
-026f 2020026c branch p_g24_current_ch_num_reinit 
+028a 6800c8e2 fetch 1 ,mem_24g_kb_ch_number 
+028b 20200288 branch p_g24_current_ch_num_reinit 
 
 p_g24_ms_ch_num_reinit:
-0270 6800c8e5 fetch 1 ,mem_24g_ms_ch_number 
-0271 2020026c branch p_g24_current_ch_num_reinit 
+028c 6800c8e5 fetch 1 ,mem_24g_ms_ch_number 
+028d 20200288 branch p_g24_current_ch_num_reinit 
 
 p_g24_dongle_search_mode_init:
-0272 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-0273 c3838000 rtnbit1 dongle_search 
-0274 79207e07 set1 dongle_search ,pdata 
-0275 6000c8a3 store 1 ,mem_dongle_mode_init 
-0276 7048bc00 jam 0 ,mem_24g_time_slice 
-0277 7048b801 jam 1 ,mem_24g_ackpayload_enable 
-0278 58000000 setarg 0 
-0279 6001c8f5 store 3 ,mem_rssi_noise_dg_index 
-027a 6003c8e0 store 7 ,mem_24g_dg_config_ch_once 
-027b 20400282 call p_g24_rx_addr_check 
-027c 24628000 nrtn zero 
-027d 6800c841 fetch 1 ,mem_24g_current_ch_number 
-027e 6000c8df store 1 ,mem_24g_dg_ch_number 
-027f 6800c840 fetch 1 ,mem_24g_ch 
-0280 6000c8de store 1 ,mem_24g_dg_last_ch 
-0281 20600000 rtn 
+028e 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+028f c3838000 rtnbit1 dongle_search 
+0290 79207e07 set1 dongle_search ,pdata 
+0291 6000c8a3 store 1 ,mem_dongle_mode_init 
+0292 7048bc00 jam 0 ,mem_24g_time_slice 
+0293 7048b801 jam 1 ,mem_24g_ackpayload_enable 
+0294 58000000 setarg 0 
+0295 6001c8f5 store 3 ,mem_rssi_noise_dg_index 
+0296 6003c8e0 store 7 ,mem_24g_dg_config_ch_once 
+0297 2040029e call p_g24_rx_addr_check 
+0298 24628000 nrtn zero 
+0299 6800c841 fetch 1 ,mem_24g_current_ch_number 
+029a 6000c8df store 1 ,mem_24g_dg_ch_number 
+029b 6800c840 fetch 1 ,mem_24g_ch 
+029c 6000c8de store 1 ,mem_24g_dg_last_ch 
+029d 20600000 rtn 
 
 p_g24_rx_addr_check:
-0282 6802485e fetch 4 ,mem_24g_addr 
-0283 680a489f fetcht 4 ,mem_24g_rx_addr 
-0284 98467c00 isub temp ,null 
-0285 20600000 rtn 
+029e 6802485e fetch 4 ,mem_24g_addr 
+029f 680a489f fetcht 4 ,mem_24g_rx_addr 
+02a0 98467c00 isub temp ,null 
+02a1 20600000 rtn 
 
 p_g24_rx_auto_addr_ch_search:
-0286 6800c8bc fetch 1 ,mem_24g_time_slice 
-0287 1fe0fe01 increase 1 ,pdata 
-0288 1fe17e03 and_into 3 ,pdata 
-0289 6000c8bc store 1 ,mem_24g_time_slice 
-028a c00002a9 beq 0 ,p_g24_rx_auto_bind_config_kb 
-028b c00082c3 beq 1 ,p_g24_rx_auto_bind_config_dongle 
-028c c001028f beq 2 ,p_g24_rx_auto_bind_config_mouse 
-028d c00182c3 beq 3 ,p_g24_rx_auto_bind_config_dongle 
-028e 20600000 rtn 
+02a2 6800c8bc fetch 1 ,mem_24g_time_slice 
+02a3 1fe0fe01 increase 1 ,pdata 
+02a4 1fe17e03 and_into 3 ,pdata 
+02a5 6000c8bc store 1 ,mem_24g_time_slice 
+02a6 c00002c5 beq 0 ,p_g24_rx_auto_bind_config_kb 
+02a7 c00082df beq 1 ,p_g24_rx_auto_bind_config_dongle 
+02a8 c00102ab beq 2 ,p_g24_rx_auto_bind_config_mouse 
+02a9 c00182df beq 3 ,p_g24_rx_auto_bind_config_dongle 
+02aa 20600000 rtn 
 
 p_g24_rx_auto_bind_config_mouse:
-028f 2040012e call p_g24_dongle_bind_ms_payload_cfg 
-0290 680248da fetch 4 ,mem_24g_ms_addr 
-0291 203a0286 branch p_g24_rx_auto_addr_ch_search ,blank 
-0292 20400414 call p_g24_update_addr_and_synccrc8 
-0293 6800c8e6 fetch 1 ,mem_24g_ms_config_ch_once 
-0294 205a02a4 call p_g24_ms_config_ch_once ,blank 
-0295 6800c8e4 fetch 1 ,mem_24g_ms_last_ch 
-0296 6000c840 store 1 ,mem_24g_ch 
-0297 6808c8f7 fetcht 1 ,mem_rssi_noise_ms_index 
-0298 da200f9e arg mem_rssi_noise_ms_buffer ,rega 
-0299 20400408 call p_rssi_store 
-029a 6008c8f7 storet 1 ,mem_rssi_noise_ms_index 
-029b 2040040f call p_rssi_average 
-029c 6008c8f4 storet 1 ,mem_rssi_noise_ms_avg 
-029d 18467c50 sub temp ,rssi_thresh_noise ,null 
-029e 24610000 nrtn positive 
-029f 6808c8e5 fetcht 1 ,mem_24g_ms_ch_number 
-02a0 20400438 call p_g24_ch_map_size 
-02a1 6008c8e5 storet 1 ,mem_24g_ms_ch_number 
-02a2 6000c8e4 store 1 ,mem_24g_ms_last_ch 
-02a3 20600000 rtn 
+02ab 20400146 call p_g24_dongle_bind_ms_payload_cfg 
+02ac 680248da fetch 4 ,mem_24g_ms_addr 
+02ad 203a02a2 branch p_g24_rx_auto_addr_ch_search ,blank 
+02ae 20400445 call p_g24_update_addr_and_synccrc8 
+02af 6800c8e6 fetch 1 ,mem_24g_ms_config_ch_once 
+02b0 205a02c0 call p_g24_ms_config_ch_once ,blank 
+02b1 6800c8e4 fetch 1 ,mem_24g_ms_last_ch 
+02b2 6000c840 store 1 ,mem_24g_ch 
+02b3 6808c8f7 fetcht 1 ,mem_rssi_noise_ms_index 
+02b4 da200f9e arg mem_rssi_noise_ms_buffer ,rega 
+02b5 20400439 call p_rssi_store 
+02b6 6008c8f7 storet 1 ,mem_rssi_noise_ms_index 
+02b7 20400440 call p_rssi_average 
+02b8 6008c8f4 storet 1 ,mem_rssi_noise_ms_avg 
+02b9 18467c50 sub temp ,rssi_thresh_noise ,null 
+02ba 24610000 nrtn positive 
+02bb 6808c8e5 fetcht 1 ,mem_24g_ms_ch_number 
+02bc 20400469 call p_g24_ch_map_size 
+02bd 6008c8e5 storet 1 ,mem_24g_ms_ch_number 
+02be 6000c8e4 store 1 ,mem_24g_ms_last_ch 
+02bf 20600000 rtn 
 
 p_g24_ms_config_ch_once:
-02a4 7048e601 jam 1 ,mem_24g_ms_config_ch_once 
-02a5 d8400000 arg 0 ,temp 
-02a6 2040043c call p_g24_ch_calc 
-02a7 6000c8e4 store 1 ,mem_24g_ms_last_ch 
-02a8 20600000 rtn 
+02c0 7048e601 jam 1 ,mem_24g_ms_config_ch_once 
+02c1 d8400000 arg 0 ,temp 
+02c2 2040046d call p_g24_ch_calc 
+02c3 6000c8e4 store 1 ,mem_24g_ms_last_ch 
+02c4 20600000 rtn 
 
 p_g24_rx_auto_bind_config_kb:
-02a9 20400134 call p_g24_dongle_bind_kb_payload_cfg 
-02aa 680248d6 fetch 4 ,mem_24g_kb_addr 
-02ab 203a0286 branch p_g24_rx_auto_addr_ch_search ,blank 
-02ac 20400414 call p_g24_update_addr_and_synccrc8 
-02ad 6800c8e3 fetch 1 ,mem_24g_kb_config_ch_once 
-02ae 205a02be call p_g24_kb_config_ch_once ,blank 
-02af 6800c8e1 fetch 1 ,mem_24g_kb_last_ch 
-02b0 6000c840 store 1 ,mem_24g_ch 
-02b1 6808c8f6 fetcht 1 ,mem_rssi_noise_kb_index 
-02b2 da20109e arg mem_rssi_noise_kb_buffer ,rega 
-02b3 20400408 call p_rssi_store 
-02b4 6008c8f6 storet 1 ,mem_rssi_noise_kb_index 
-02b5 2040040f call p_rssi_average 
-02b6 6008c8f3 storet 1 ,mem_rssi_noise_kb_avg 
-02b7 18467c50 sub temp ,rssi_thresh_noise ,null 
-02b8 24610000 nrtn positive 
-02b9 6808c8e2 fetcht 1 ,mem_24g_kb_ch_number 
-02ba 20400438 call p_g24_ch_map_size 
-02bb 6008c8e2 storet 1 ,mem_24g_kb_ch_number 
-02bc 6000c8e1 store 1 ,mem_24g_kb_last_ch 
-02bd 20600000 rtn 
+02c5 2040014c call p_g24_dongle_bind_kb_payload_cfg 
+02c6 680248d6 fetch 4 ,mem_24g_kb_addr 
+02c7 203a02a2 branch p_g24_rx_auto_addr_ch_search ,blank 
+02c8 20400445 call p_g24_update_addr_and_synccrc8 
+02c9 6800c8e3 fetch 1 ,mem_24g_kb_config_ch_once 
+02ca 205a02da call p_g24_kb_config_ch_once ,blank 
+02cb 6800c8e1 fetch 1 ,mem_24g_kb_last_ch 
+02cc 6000c840 store 1 ,mem_24g_ch 
+02cd 6808c8f6 fetcht 1 ,mem_rssi_noise_kb_index 
+02ce da20109e arg mem_rssi_noise_kb_buffer ,rega 
+02cf 20400439 call p_rssi_store 
+02d0 6008c8f6 storet 1 ,mem_rssi_noise_kb_index 
+02d1 20400440 call p_rssi_average 
+02d2 6008c8f3 storet 1 ,mem_rssi_noise_kb_avg 
+02d3 18467c50 sub temp ,rssi_thresh_noise ,null 
+02d4 24610000 nrtn positive 
+02d5 6808c8e2 fetcht 1 ,mem_24g_kb_ch_number 
+02d6 20400469 call p_g24_ch_map_size 
+02d7 6008c8e2 storet 1 ,mem_24g_kb_ch_number 
+02d8 6000c8e1 store 1 ,mem_24g_kb_last_ch 
+02d9 20600000 rtn 
 
 p_g24_kb_config_ch_once:
-02be 7048e301 jam 1 ,mem_24g_kb_config_ch_once 
-02bf d8400000 arg 0 ,temp 
-02c0 2040043c call p_g24_ch_calc 
-02c1 6000c8e1 store 1 ,mem_24g_kb_last_ch 
-02c2 20600000 rtn 
+02da 7048e301 jam 1 ,mem_24g_kb_config_ch_once 
+02db d8400000 arg 0 ,temp 
+02dc 2040046d call p_g24_ch_calc 
+02dd 6000c8e1 store 1 ,mem_24g_kb_last_ch 
+02de 20600000 rtn 
 
 p_g24_rx_auto_bind_config_dongle:
-02c3 2040012e call p_g24_dongle_bind_ms_payload_cfg 
-02c4 6802489f fetch 4 ,mem_24g_rx_addr 
-02c5 20400414 call p_g24_update_addr_and_synccrc8 
-02c6 6800c8e0 fetch 1 ,mem_24g_dg_config_ch_once 
-02c7 205a02d7 call p_g24_dg_config_ch_once ,blank 
-02c8 6800c8de fetch 1 ,mem_24g_dg_last_ch 
-02c9 6000c840 store 1 ,mem_24g_ch 
-02ca 6808c8f5 fetcht 1 ,mem_rssi_noise_dg_index 
-02cb da200e9e arg mem_rssi_noise_dg_buffer ,rega 
-02cc 20400408 call p_rssi_store 
-02cd 6008c8f5 storet 1 ,mem_rssi_noise_dg_index 
-02ce 2040040f call p_rssi_average 
-02cf 6008c8f2 storet 1 ,mem_rssi_noise_dg_avg 
-02d0 18467c50 sub temp ,rssi_thresh_noise ,null 
-02d1 24610000 nrtn positive 
-02d2 6808c8df fetcht 1 ,mem_24g_dg_ch_number 
-02d3 20400438 call p_g24_ch_map_size 
-02d4 6008c8df storet 1 ,mem_24g_dg_ch_number 
-02d5 6000c8de store 1 ,mem_24g_dg_last_ch 
-02d6 20600000 rtn 
+02df 20400146 call p_g24_dongle_bind_ms_payload_cfg 
+02e0 6802489f fetch 4 ,mem_24g_rx_addr 
+02e1 20400445 call p_g24_update_addr_and_synccrc8 
+02e2 6800c8e0 fetch 1 ,mem_24g_dg_config_ch_once 
+02e3 205a02f3 call p_g24_dg_config_ch_once ,blank 
+02e4 6800c8de fetch 1 ,mem_24g_dg_last_ch 
+02e5 6000c840 store 1 ,mem_24g_ch 
+02e6 6808c8f5 fetcht 1 ,mem_rssi_noise_dg_index 
+02e7 da200e9e arg mem_rssi_noise_dg_buffer ,rega 
+02e8 20400439 call p_rssi_store 
+02e9 6008c8f5 storet 1 ,mem_rssi_noise_dg_index 
+02ea 20400440 call p_rssi_average 
+02eb 6008c8f2 storet 1 ,mem_rssi_noise_dg_avg 
+02ec 18467c50 sub temp ,rssi_thresh_noise ,null 
+02ed 24610000 nrtn positive 
+02ee 6808c8df fetcht 1 ,mem_24g_dg_ch_number 
+02ef 20400469 call p_g24_ch_map_size 
+02f0 6008c8df storet 1 ,mem_24g_dg_ch_number 
+02f1 6000c8de store 1 ,mem_24g_dg_last_ch 
+02f2 20600000 rtn 
 
 p_g24_dg_config_ch_once:
-02d7 7048e001 jam 1 ,mem_24g_dg_config_ch_once 
-02d8 6800c8de fetch 1 ,mem_24g_dg_last_ch 
-02d9 6000c840 store 1 ,mem_24g_ch 
-02da 20600000 rtn 
+02f3 7048e001 jam 1 ,mem_24g_dg_config_ch_once 
+02f4 6800c8de fetch 1 ,mem_24g_dg_last_ch 
+02f5 6000c840 store 1 ,mem_24g_ch 
+02f6 20600000 rtn 
 
 p_g24_read_len_pid_crc:
-02db 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
-02dc 1fe97e00 rshift3 pdata ,pdata 
-02dd 6000c834 store 1 ,mem_24g_rxdata_length 
-02de 1fe0fe01 increase 1 ,pdata 
-02df d8c047b1 arg mem_24g_rxbuf + 1 ,contr 
-02e0 98c08c00 iadd contr ,contr 
-02e1 e8c18000 ifetch 3 ,contr 
-02e2 6001c873 store 3 ,mem_24g_sta_crc 
-02e3 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
-02e4 1fe37e00 rshift pdata ,pdata 
-02e5 1fe17e03 and pdata ,0x03 ,pdata 
-02e6 6000c879 store 1 ,mem_24g_sta_pid 
-02e7 20600000 rtn 
+02f7 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
+02f8 1fe97e00 rshift3 pdata ,pdata 
+02f9 6000c834 store 1 ,mem_24g_rxdata_length 
+02fa 1fe0fe01 increase 1 ,pdata 
+02fb d8c047b1 arg mem_24g_rxbuf + 1 ,contr 
+02fc 98c08c00 iadd contr ,contr 
+02fd e8c18000 ifetch 3 ,contr 
+02fe 6001c873 store 3 ,mem_24g_sta_crc 
+02ff 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
+0300 1fe37e00 rshift pdata ,pdata 
+0301 1fe17e03 and pdata ,0x03 ,pdata 
+0302 6000c879 store 1 ,mem_24g_sta_pid 
+0303 20600000 rtn 
 
 p_g24_transmit_ack:
-02e8 6800c7b0 fetch 1 ,mem_24g_rxbuf 
-02e9 6000c837 store 1 ,mem_24g_data_type 
-02ea 204002db call p_g24_read_len_pid_crc 
-02eb 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
-02ec 2feffe00 isolate1 bit_ack_24g ,pdata 
-02ed 202082f1 branch p_g24tx_no_ack ,true 
+0304 6800c7b0 fetch 1 ,mem_24g_rxbuf 
+0305 6000c837 store 1 ,mem_24g_data_type 
+0306 204002f7 call p_g24_read_len_pid_crc 
+0307 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
+0308 2feffe00 isolate1 bit_ack_24g ,pdata 
+0309 2020830d branch p_g24tx_no_ack ,true 
 
 p_g24tx_with_ack:
-02ee 204002f2 call p_g24_ackpayload_prep 
-02ef 20400422 call p_g24_transmit_prep 
-02f0 20400498 call p_g24_transmit 
+030a 2040030e call p_g24_ackpayload_prep 
+030b 20400453 call p_g24_transmit_prep 
+030c 204004c9 call p_g24_transmit 
 
 p_g24tx_no_ack:
-02f1 20200490 branch p_g24_end_of_packet 
+030d 202004c1 branch p_g24_end_of_packet 
 
 p_g24_ackpayload_prep:
-02f2 70483600 jam 0 ,mem_24g_datalen 
-02f3 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
-02f4 207a0000 rtn blank 
-02f5 c00082f9 beq bind_ackpayload ,p_g24_bind_ackpayload_prep 
-02f6 c0010301 beq user_ackpayload ,p_g24_user_ackpayload_prep 
-02f7 c001830b beq kb_led_ackpayload ,p_g24_kb_led_ackpayload_prep 
-02f8 20600000 rtn 
+030e 70483600 jam 0 ,mem_24g_datalen 
+030f 6800c837 fetch 1 ,mem_24g_data_type 
+0310 c0008312 beq 0x01 ,p_g24_ackpayload_prep_mouse 
+0311 c0010317 beq 0x02 ,p_g24_ackpayload_prep_keyboard 
+
+p_g24_ackpayload_prep_mouse:
+0312 6800c97a fetch 1 ,mem_24g_pc_sleep_flag 
+0313 c280031f bbit1 0 ,p_g24_pc_sleep_ackpayload_prep_mouse 
+0314 20200319 branch p_g24_ackpayload_prep_end 
+
+p_g24_clear_pc_sleep_flag:
+0315 70497a00 jam 0 ,mem_24g_pc_sleep_flag 
+0316 20600000 rtn 
+
+p_g24_ackpayload_prep_keyboard:
+0317 6800c97a fetch 1 ,mem_24g_pc_sleep_flag 
+0318 c2808323 bbit1 1 ,p_g24_pc_sleep_ackpayload_prep_keyboard 
+
+p_g24_ackpayload_prep_end:
+0319 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
+031a 207a0000 rtn blank 
+031b c000832a beq bind_ackpayload ,p_g24_bind_ackpayload_prep 
+031c c0010332 beq user_ackpayload ,p_g24_user_ackpayload_prep 
+031d c001833c beq kb_led_ackpayload ,p_g24_kb_led_ackpayload_prep 
+031e 20600000 rtn 
+
+p_g24_pc_sleep_ackpayload_prep_mouse:
+031f 6800c97a fetch 1 ,mem_24g_pc_sleep_flag 
+0320 793ffe00 set0 0 ,pdata 
+0321 6000c97a store 1 ,mem_24g_pc_sleep_flag 
+0322 20200326 branch p_g24_pc_sleep_ackpayload_prep 
+
+p_g24_pc_sleep_ackpayload_prep_keyboard:
+0323 6800c97a fetch 1 ,mem_24g_pc_sleep_flag 
+0324 793ffe01 set0 1 ,pdata 
+0325 6000c97a store 1 ,mem_24g_pc_sleep_flag 
+
+p_g24_pc_sleep_ackpayload_prep:
+0326 70483601 jam 0x01 ,mem_24g_datalen 
+0327 580000ff setarg 0xff 
+0328 6000c7d2 store 1 ,mem_24g_txbuf 
+0329 20600000 rtn 
 
 p_g24_bind_ackpayload_prep:
-02f9 7048b801 jam 1 ,mem_24g_ackpayload_enable 
-02fa 2040010e call p_g24_dongle_binding_device_check 
-02fb 24778000 nrtn user3 
-02fc 70483608 jam 0x08 ,mem_24g_datalen 
-02fd df200008 arg 0x08 ,loopcnt 
-02fe d8c048a8 arg mem_24g_bind_payload ,contr 
-02ff d8a047d2 arg mem_24g_txbuf ,contw 
-0300 20207f01 branch memcpy 
+032a 7048b801 jam 1 ,mem_24g_ackpayload_enable 
+032b 20400126 call p_g24_dongle_binding_device_check 
+032c 24778000 nrtn user3 
+032d 70483608 jam 0x08 ,mem_24g_datalen 
+032e df200008 arg 0x08 ,loopcnt 
+032f d8c048a8 arg mem_24g_bind_payload ,contr 
+0330 d8a047d2 arg mem_24g_txbuf ,contw 
+0331 20207f01 branch memcpy 
 
 p_g24_user_ackpayload_prep:
-0301 20400184 call p_g24_queue_read_point 
-0302 24740000 nrtn user 
-0303 7048361f jam 0x1f ,mem_24g_datalen 
-0304 df20001f arg 0x1f ,loopcnt 
-0305 1fe20c00 copy pdata ,contr 
-0306 d8a047d2 arg mem_24g_txbuf ,contw 
-0307 20407f01 call memcpy 
-0308 680147d5 fetch 2 ,mem_24g_txbuf + 3 
-0309 600148eb store 2 ,mem_24g_ota_sta_pid 
-030a 20600000 rtn 
+0332 2040019c call p_g24_queue_read_point 
+0333 24740000 nrtn user 
+0334 7048361f jam 0x1f ,mem_24g_datalen 
+0335 df20001f arg 0x1f ,loopcnt 
+0336 1fe20c00 copy pdata ,contr 
+0337 d8a047d2 arg mem_24g_txbuf ,contw 
+0338 20407f01 call memcpy 
+0339 680147d5 fetch 2 ,mem_24g_txbuf + 3 
+033a 600148eb store 2 ,mem_24g_ota_sta_pid 
+033b 20600000 rtn 
 
 p_g24_kb_led_ackpayload_prep:
-030b 6800c7b2 fetch 1 ,mem_24g_rxbuf + 2 
-030c c00082f9 beq 0x01 ,p_g24_bind_ackpayload_prep 
-030d c07f82f9 beq 0xff ,p_g24_bind_ackpayload_prep 
-030e 700d4300 jam 0 ,mem_usb_tx_win_enable 
-030f 70483601 jam 0x01 ,mem_24g_datalen 
-0310 df200001 arg 0x01 ,loopcnt 
-0311 d8c04978 arg mem_24g_led_status ,contr 
-0312 d8a047d2 arg mem_24g_txbuf ,contw 
-0313 20207f01 branch memcpy 
+033c 6800c7b2 fetch 1 ,mem_24g_rxbuf + 2 
+033d c000832a beq 0x01 ,p_g24_bind_ackpayload_prep 
+033e c07f832a beq 0xff ,p_g24_bind_ackpayload_prep 
+033f 700d4300 jam 0 ,mem_usb_tx_win_enable 
+0340 70483601 jam 0x01 ,mem_24g_datalen 
+0341 df200001 arg 0x01 ,loopcnt 
+0342 d8c04978 arg mem_24g_led_status ,contr 
+0343 d8a047d2 arg mem_24g_txbuf ,contw 
+0344 20207f01 branch memcpy 
 
 p_g24_receive_packet_start:
-0314 20400247 call p_g24_receive_transmit_ack 
-0315 2437810b nbranch p_g24_rx_interrupt_clear ,user3 
-0316 20200317 branch p_g24_receive_packet_parse 
+0345 20400263 call p_g24_receive_transmit_ack 
+0346 24378123 nbranch p_g24_rx_interrupt_clear ,user3 
+0347 20200348 branch p_g24_receive_packet_parse 
 
 p_g24_receive_packet_parse:
-0317 20400328 call p_g24_receive_packet_parse_pid_crc 
-0318 2434010b nbranch p_g24_rx_interrupt_clear ,user 
-0319 6800c834 fetch 1 ,mem_24g_rxdata_length 
-031a 203a010b branch p_g24_rx_interrupt_clear ,blank 
-031b 1fe0fe02 increase 2 ,pdata 
-031c 98007200 iforce loopcnt 
-031d d8c047b0 arg mem_24g_rxbuf ,contr 
-031e d8a0487d arg mem_24g_rxdata_temp ,contw 
-031f 20407f01 call memcpy 
-0320 7048b700 jam 0 ,mem_24g_mode_switch 
-0321 6800c8ba fetch 1 ,mem_24g_pair_mode 
-0322 205a0237 call p_g24_enable_nodata_timer ,blank 
-0323 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
-0324 c0008336 beq 0x01 ,p_g24_data_type1 
-0325 c0010356 beq 0x02 ,p_g24_data_type2 
-0326 c07f83ab beq 0xff ,p_g24_data_attemp 
-0327 2020010b branch p_g24_rx_interrupt_clear 
+0348 20400359 call p_g24_receive_packet_parse_pid_crc 
+0349 24340123 nbranch p_g24_rx_interrupt_clear ,user 
+034a 6800c834 fetch 1 ,mem_24g_rxdata_length 
+034b 203a0123 branch p_g24_rx_interrupt_clear ,blank 
+034c 1fe0fe02 increase 2 ,pdata 
+034d 98007200 iforce loopcnt 
+034e d8c047b0 arg mem_24g_rxbuf ,contr 
+034f d8a0487d arg mem_24g_rxdata_temp ,contw 
+0350 20407f01 call memcpy 
+0351 7048b700 jam 0 ,mem_24g_mode_switch 
+0352 6800c8ba fetch 1 ,mem_24g_pair_mode 
+0353 205a0253 call p_g24_enable_nodata_timer ,blank 
+0354 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
+0355 c0008367 beq 0x01 ,p_g24_data_type1 
+0356 c0010387 beq 0x02 ,p_g24_data_type2 
+0357 c07f83dc beq 0xff ,p_g24_data_attemp 
+0358 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_receive_packet_parse_pid_crc:
-0328 20407fe9 call disable_user 
-0329 6800c879 fetch 1 ,mem_24g_sta_pid 
-032a 6808c87a fetcht 1 ,mem_24g_last_pid 
-032b 98467c00 isub temp ,null 
-032c 2442ffe7 ncall enable_user ,zero 
-032d 6800c879 fetch 1 ,mem_24g_sta_pid 
-032e 6000c87a store 1 ,mem_24g_last_pid 
-032f 6801c873 fetch 3 ,mem_24g_sta_crc 
-0330 6809c876 fetcht 3 ,mem_24g_last_crc 
-0331 98467c00 isub temp ,null 
-0332 2442ffe7 ncall enable_user ,zero 
-0333 6801c873 fetch 3 ,mem_24g_sta_crc 
-0334 6001c876 store 3 ,mem_24g_last_crc 
-0335 20600000 rtn 
+0359 20407fe9 call disable_user 
+035a 6800c879 fetch 1 ,mem_24g_sta_pid 
+035b 6808c87a fetcht 1 ,mem_24g_last_pid 
+035c 98467c00 isub temp ,null 
+035d 2442ffe7 ncall enable_user ,zero 
+035e 6800c879 fetch 1 ,mem_24g_sta_pid 
+035f 6000c87a store 1 ,mem_24g_last_pid 
+0360 6801c873 fetch 3 ,mem_24g_sta_crc 
+0361 6809c876 fetcht 3 ,mem_24g_last_crc 
+0362 98467c00 isub temp ,null 
+0363 2442ffe7 ncall enable_user ,zero 
+0364 6801c873 fetch 3 ,mem_24g_sta_crc 
+0365 6001c876 store 3 ,mem_24g_last_crc 
+0366 20600000 rtn 
 
 p_g24_data_type1:
-0336 2040011d call p_g24_dongle_binding_mouse_living 
-0337 204000cd call p_g24_ch_timer_reinit 
-0338 6800c8b0 fetch 1 ,mem_24g_abort_packet 
-0339 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
-033a 284ffe03 isolate1 bit_abort ,temp 
-033b 7920fe00 setflag true ,0 ,pdata 
-033c 6000c8b0 store 1 ,mem_24g_abort_packet 
-033d c00083b5 beq 1 ,p_g24_data_attemp_mouse_abort 
-033e 6800c8b9 fetch 1 ,mem_24g_hop_packet 
-033f 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
-0340 284ffe04 isolate1 bit_hop ,temp 
-0341 7920fe00 setflag true ,0 ,pdata 
-0342 6000c8b9 store 1 ,mem_24g_hop_packet 
-0343 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-0344 c06783b9 beq cmd_ota ,p_g24_ota_process 
-0345 58000001 setarg ms_report_id 
-0346 60008d54 store 1 ,mem_usb_mouse_data 
-0347 6803c880 fetch 7 ,mem_24g_rxdata_temp + 3 
-0348 e0a38000 istore 7 ,contw 
-0349 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-034a 245a034e ncall p_g24_ms_enable_blank_data_forcibly ,blank 
-034b 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-034c 205a0352 call p_g24_ms_disable_blank_data_forcibly ,blank 
-034d 202031b8 branch g24_data_type1_usbtx_enable 
+0367 20400135 call p_g24_dongle_binding_mouse_living 
+0368 204000e5 call p_g24_ch_timer_reinit 
+0369 6800c8b0 fetch 1 ,mem_24g_abort_packet 
+036a 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
+036b 284ffe03 isolate1 bit_abort ,temp 
+036c 7920fe00 setflag true ,0 ,pdata 
+036d 6000c8b0 store 1 ,mem_24g_abort_packet 
+036e c00083e6 beq 1 ,p_g24_data_attemp_mouse_abort 
+036f 6800c8b9 fetch 1 ,mem_24g_hop_packet 
+0370 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
+0371 284ffe04 isolate1 bit_hop ,temp 
+0372 7920fe00 setflag true ,0 ,pdata 
+0373 6000c8b9 store 1 ,mem_24g_hop_packet 
+0374 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+0375 c06783ea beq cmd_ota ,p_g24_ota_process 
+0376 58000001 setarg ms_report_id 
+0377 60008d54 store 1 ,mem_usb_mouse_data 
+0378 6803c880 fetch 7 ,mem_24g_rxdata_temp + 3 
+0379 e0a38000 istore 7 ,contw 
+037a 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+037b 245a037f ncall p_g24_ms_enable_blank_data_forcibly ,blank 
+037c 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+037d 205a0383 call p_g24_ms_disable_blank_data_forcibly ,blank 
+037e 202031b8 branch g24_data_type1_usbtx_enable 
 
 p_g24_ms_enable_blank_data_forcibly:
-034e 7048d501 jam 1 ,mem_24g_ms_blank_data_enable 
-034f 58000180 setarg timer_new_ms_blank_delay 
-0350 d8e0000b arg timer_new_ms_blank ,queue 
-0351 20207f08 branch timer_init 
+037f 7048d501 jam 1 ,mem_24g_ms_blank_data_enable 
+0380 58000180 setarg timer_new_ms_blank_delay 
+0381 d8e0000b arg timer_new_ms_blank ,queue 
+0382 20207f08 branch timer_init 
 
 p_g24_ms_disable_blank_data_forcibly:
-0352 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
-0353 58000000 setarg 0 
-0354 d8e0000b arg timer_new_ms_blank ,queue 
-0355 20207f08 branch timer_init 
+0383 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
+0384 58000000 setarg 0 
+0385 d8e0000b arg timer_new_ms_blank ,queue 
+0386 20207f08 branch timer_init 
 
 p_g24_data_type2:
-0356 20400123 call p_g24_dongle_binding_keyboard_living 
-0357 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
-0358 284ffe03 isolate1 bit_abort ,temp 
-0359 202083b7 branch p_g24_data_attemp_kbd_abort ,true 
-035a 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-035b c000035f beq 0 ,p_g24_data_type2_data1 
-035c c0010394 beq 2 ,p_g24_data_type2_data3 
-035d c001837b beq 3 ,p_g24_data_type2_data2 
-035e 2020010b branch p_g24_rx_interrupt_clear 
+0387 2040013b call p_g24_dongle_binding_keyboard_living 
+0388 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
+0389 284ffe03 isolate1 bit_abort ,temp 
+038a 202083e8 branch p_g24_data_attemp_kbd_abort ,true 
+038b 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+038c c0000390 beq 0 ,p_g24_data_type2_data1 
+038d c00103c5 beq 2 ,p_g24_data_type2_data3 
+038e c00183ac beq 3 ,p_g24_data_type2_data2 
+038f 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_data1:
-035f 6800c882 fetch 1 ,mem_24g_rxdata_temp + 5 
-0360 6000c8b8 store 1 ,mem_24g_ackpayload_enable 
-0361 70488200 jam 0 ,mem_24g_rxdata_temp + 5 
-0362 d8a00d64 arg mem_usb_kb_data ,contw 
-0363 20400370 call p_g24_data_type2_copy_data1 
-0364 68040d64 fetch 8 ,mem_usb_kb_data 
-0365 245a0373 ncall p_g24_kb_enable_blank_data_forcibly ,blank 
-0366 68040d64 fetch 8 ,mem_usb_kb_data 
-0367 205a0377 call p_g24_kb_disable_blank_data_forcibly ,blank 
-0368 68040d64 fetch 8 ,mem_usb_kb_data 
-0369 600448bd store 8 ,mem_24g_kb_data_sta_data 
-036a 680c48c5 fetcht 8 ,mem_24g_kb_data_last_data 
-036b 98467c00 isub temp ,null 
-036c 2442b1ed ncall g24_kb_data_into_ep1_fifo ,zero 
-036d 680448bd fetch 8 ,mem_24g_kb_data_sta_data 
-036e 600448c5 store 8 ,mem_24g_kb_data_last_data 
-036f 2020010b branch p_g24_rx_interrupt_clear 
+0390 6800c882 fetch 1 ,mem_24g_rxdata_temp + 5 
+0391 6000c8b8 store 1 ,mem_24g_ackpayload_enable 
+0392 70488200 jam 0 ,mem_24g_rxdata_temp + 5 
+0393 d8a00d64 arg mem_usb_kb_data ,contw 
+0394 204003a1 call p_g24_data_type2_copy_data1 
+0395 68040d64 fetch 8 ,mem_usb_kb_data 
+0396 245a03a4 ncall p_g24_kb_enable_blank_data_forcibly ,blank 
+0397 68040d64 fetch 8 ,mem_usb_kb_data 
+0398 205a03a8 call p_g24_kb_disable_blank_data_forcibly ,blank 
+0399 68040d64 fetch 8 ,mem_usb_kb_data 
+039a 600448bd store 8 ,mem_24g_kb_data_sta_data 
+039b 680c48c5 fetcht 8 ,mem_24g_kb_data_last_data 
+039c 98467c00 isub temp ,null 
+039d 2442b1ed ncall g24_kb_data_into_ep1_fifo ,zero 
+039e 680448bd fetch 8 ,mem_24g_kb_data_sta_data 
+039f 600448c5 store 8 ,mem_24g_kb_data_last_data 
+03a0 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_copy_data1:
-0370 d8c04881 arg mem_24g_rxdata_temp + 4 ,contr 
-0371 df200008 arg 8 ,loopcnt 
-0372 20207f01 branch memcpy 
+03a1 d8c04881 arg mem_24g_rxdata_temp + 4 ,contr 
+03a2 df200008 arg 8 ,loopcnt 
+03a3 20207f01 branch memcpy 
 
 p_g24_kb_enable_blank_data_forcibly:
-0373 7048d301 jam 1 ,mem_24g_kb_blank_data_enable 
-0374 58000180 setarg timer_new_kb_blank_delay 
-0375 d8e0000e arg timer_new_kb_blank ,queue 
-0376 20207f08 branch timer_init 
+03a4 7048d301 jam 1 ,mem_24g_kb_blank_data_enable 
+03a5 58000180 setarg timer_new_kb_blank_delay 
+03a6 d8e0000e arg timer_new_kb_blank ,queue 
+03a7 20207f08 branch timer_init 
 
 p_g24_kb_disable_blank_data_forcibly:
-0377 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
-0378 58000000 setarg 0 
-0379 d8e0000e arg timer_new_kb_blank ,queue 
-037a 20207f08 branch timer_init 
+03a8 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
+03a9 58000000 setarg 0 
+03aa d8e0000e arg timer_new_kb_blank ,queue 
+03ab 20207f08 branch timer_init 
 
 p_g24_data_type2_data2:
-037b d8a00d74 arg mem_usb_kb_multikey ,contw 
-037c 20400389 call p_g24_data_type2_copy_data2 
-037d 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
-037e 245a038c ncall p_g24_kb_mul_enable_blank_data_forcibly ,blank 
-037f 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
-0380 205a0390 call p_g24_kb_mul_disable_blank_data_forcibly ,blank 
-0381 68018d74 fetch 3 ,mem_usb_kb_multikey 
-0382 6001c8cd store 3 ,mem_24g_kb_multikey_sta_data 
-0383 6809c8d0 fetcht 3 ,mem_24g_kb_multikey_last_data 
-0384 98467c00 isub temp ,null 
-0385 2442b207 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
-0386 6801c8cd fetch 3 ,mem_24g_kb_multikey_sta_data 
-0387 6001c8d0 store 3 ,mem_24g_kb_multikey_last_data 
-0388 2020010b branch p_g24_rx_interrupt_clear 
+03ac d8a00d74 arg mem_usb_kb_multikey ,contw 
+03ad 204003ba call p_g24_data_type2_copy_data2 
+03ae 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
+03af 245a03bd ncall p_g24_kb_mul_enable_blank_data_forcibly ,blank 
+03b0 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
+03b1 205a03c1 call p_g24_kb_mul_disable_blank_data_forcibly ,blank 
+03b2 68018d74 fetch 3 ,mem_usb_kb_multikey 
+03b3 6001c8cd store 3 ,mem_24g_kb_multikey_sta_data 
+03b4 6809c8d0 fetcht 3 ,mem_24g_kb_multikey_last_data 
+03b5 98467c00 isub temp ,null 
+03b6 2442b207 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+03b7 6801c8cd fetch 3 ,mem_24g_kb_multikey_sta_data 
+03b8 6001c8d0 store 3 ,mem_24g_kb_multikey_last_data 
+03b9 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_copy_data2:
-0389 d8c04880 arg mem_24g_rxdata_temp + 3 ,contr 
-038a df200003 arg 3 ,loopcnt 
-038b 20207f01 branch memcpy 
+03ba d8c04880 arg mem_24g_rxdata_temp + 3 ,contr 
+03bb df200003 arg 3 ,loopcnt 
+03bc 20207f01 branch memcpy 
 
 p_g24_kb_mul_enable_blank_data_forcibly:
-038c 7048d401 jam 1 ,mem_24g_kb_mul_blank_data_enable 
-038d 58000180 setarg timer_new_kb_mul_blank_delay 
-038e d8e0000c arg timer_new_kb_mul_blank ,queue 
-038f 20207f08 branch timer_init 
+03bd 7048d401 jam 1 ,mem_24g_kb_mul_blank_data_enable 
+03be 58000180 setarg timer_new_kb_mul_blank_delay 
+03bf d8e0000c arg timer_new_kb_mul_blank ,queue 
+03c0 20207f08 branch timer_init 
 
 p_g24_kb_mul_disable_blank_data_forcibly:
-0390 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
-0391 58000000 setarg 0 
-0392 d8e0000c arg timer_new_kb_mul_blank ,queue 
-0393 20207f08 branch timer_init 
+03c1 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
+03c2 58000000 setarg 0 
+03c3 d8e0000c arg timer_new_kb_mul_blank ,queue 
+03c4 20207f08 branch timer_init 
 
 p_g24_data_type2_data3:
-0394 d8a013bc arg mem_usb_kb_system ,contw 
-0395 2040039e call p_g24_data_type2_copy_data3 
-0396 680113bc fetch 2 ,mem_usb_kb_system 
-0397 600113cc store 2 ,mem_usb_kb_system_sta_data 
-0398 680913cf fetcht 2 ,mem_usb_kb_system_last_data 
-0399 98467c00 isub temp ,null 
-039a 244283a9 ncall p_g24_kb_sys_data_into_ep2_fifo ,zero 
-039b 680113cc fetch 2 ,mem_usb_kb_system_sta_data 
-039c 600113cf store 2 ,mem_usb_kb_system_last_data 
-039d 2020010b branch p_g24_rx_interrupt_clear 
+03c5 d8a013bc arg mem_usb_kb_system ,contw 
+03c6 204003cf call p_g24_data_type2_copy_data3 
+03c7 680113bc fetch 2 ,mem_usb_kb_system 
+03c8 600113cc store 2 ,mem_usb_kb_system_sta_data 
+03c9 680913cf fetcht 2 ,mem_usb_kb_system_last_data 
+03ca 98467c00 isub temp ,null 
+03cb 244283da ncall p_g24_kb_sys_data_into_ep2_fifo ,zero 
+03cc 680113cc fetch 2 ,mem_usb_kb_system_sta_data 
+03cd 600113cf store 2 ,mem_usb_kb_system_last_data 
+03ce 20200123 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_copy_data3:
-039e d8c04880 arg mem_24g_rxdata_temp + 3 ,contr 
-039f df200002 arg 2 ,loopcnt 
-03a0 20207f01 branch memcpy 
+03cf d8c04880 arg mem_24g_rxdata_temp + 3 ,contr 
+03d0 df200002 arg 2 ,loopcnt 
+03d1 20207f01 branch memcpy 
 
 p_g24_kb_sys_enable_blank_data_forcibly:
-03a1 7048d401 jam 1 ,mem_24g_kb_mul_blank_data_enable 
-03a2 58000180 setarg timer_new_kb_mul_blank_delay 
-03a3 d8e0000c arg timer_new_kb_mul_blank ,queue 
-03a4 20207f08 branch timer_init 
+03d2 7048d401 jam 1 ,mem_24g_kb_mul_blank_data_enable 
+03d3 58000180 setarg timer_new_kb_mul_blank_delay 
+03d4 d8e0000c arg timer_new_kb_mul_blank ,queue 
+03d5 20207f08 branch timer_init 
 
 p_g24_kb_sys_disable_blank_data_forcibly:
-03a5 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
-03a6 58000000 setarg 0 
-03a7 d8e0000c arg timer_new_kb_mul_blank ,queue 
-03a8 20207f08 branch timer_init 
+03d6 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
+03d7 58000000 setarg 0 
+03d8 d8e0000c arg timer_new_kb_mul_blank ,queue 
+03d9 20207f08 branch timer_init 
 
 p_g24_kb_sys_data_into_ep2_fifo:
-03a9 700d5222 jam usb_ep2_systemkey ,mem_usb_ep2_data 
-03aa 202031b9 branch g24_data_type1_usbtx_enable_ep2 
+03da 700d5222 jam usb_ep2_systemkey ,mem_usb_ep2_data 
+03db 202031b9 branch g24_data_type1_usbtx_enable_ep2 
 
 p_g24_data_attemp:
-03ab 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-03ac c00083af beq datatype_mouse ,p_g24_data_attemp_mouse 
-03ad c00103b2 beq datatype_keyboard ,p_g24_data_attemp_kbd 
-03ae 20600000 rtn 
+03dc 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+03dd c00083e0 beq datatype_mouse ,p_g24_data_attemp_mouse 
+03de c00103e3 beq datatype_keyboard ,p_g24_data_attemp_kbd 
+03df 20600000 rtn 
 
 p_g24_data_attemp_mouse:
-03af 2040011d call p_g24_dongle_binding_mouse_living 
-03b0 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
-03b1 20200167 branch p_g24_store_mouse_addr 
+03e0 20400135 call p_g24_dongle_binding_mouse_living 
+03e1 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+03e2 2020017f branch p_g24_store_mouse_addr 
 
 p_g24_data_attemp_kbd:
-03b2 20400123 call p_g24_dongle_binding_keyboard_living 
-03b3 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
-03b4 2020016a branch p_g24_store_kbd_addr 
+03e3 2040013b call p_g24_dongle_binding_keyboard_living 
+03e4 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+03e5 20200182 branch p_g24_store_kbd_addr 
 
 p_g24_data_attemp_mouse_abort:
-03b5 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
-03b6 20200167 branch p_g24_store_mouse_addr 
+03e6 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
+03e7 2020017f branch p_g24_store_mouse_addr 
 
 p_g24_data_attemp_kbd_abort:
-03b7 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
-03b8 2020016a branch p_g24_store_kbd_addr 
+03e8 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
+03e9 20200182 branch p_g24_store_kbd_addr 
 
 p_g24_ota_process:
-03b9 68014882 fetch 2 ,mem_24g_rxdata_temp + 5 
-03ba 680948eb fetcht 2 ,mem_24g_ota_sta_pid 
-03bb 98467c00 isub temp ,null 
-03bc 202283be branch p_g24_ota_next_pac ,zero 
-03bd 20600000 rtn 
+03ea 68014882 fetch 2 ,mem_24g_rxdata_temp + 5 
+03eb 680948eb fetcht 2 ,mem_24g_ota_sta_pid 
+03ec 98467c00 isub temp ,null 
+03ed 202283ef branch p_g24_ota_next_pac ,zero 
+03ee 20600000 rtn 
 
 p_g24_ota_next_pac:
-03be 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
-03bf c06103cb beq cmd_ota_exit ,p_g24_ota_exit_process 
-03c0 6800c900 fetch 1 ,mem_queue_ele_num 
-03c1 207a0000 rtn blank 
-03c2 58004901 setarg mem_queue_read 
-03c3 2040017b call p_g24_queue_increase 
-03c4 6800c900 fetch 1 ,mem_queue_ele_num 
-03c5 1fe0ffff increase -1 ,pdata 
-03c6 6000c900 store 1 ,mem_queue_ele_num 
-03c7 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
-03c8 c06081bc beq cmd_ota_data ,p_user_defined_queue_buff_free 
-03c9 c06103cb beq cmd_ota_exit ,p_g24_ota_exit_process 
-03ca 20600000 rtn 
+03ef 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
+03f0 c06103fc beq cmd_ota_exit ,p_g24_ota_exit_process 
+03f1 6800c900 fetch 1 ,mem_queue_ele_num 
+03f2 207a0000 rtn blank 
+03f3 58004901 setarg mem_queue_read 
+03f4 20400193 call p_g24_queue_increase 
+03f5 6800c900 fetch 1 ,mem_queue_ele_num 
+03f6 1fe0ffff increase -1 ,pdata 
+03f7 6000c900 store 1 ,mem_queue_ele_num 
+03f8 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
+03f9 c06081d6 beq cmd_ota_data ,p_user_defined_queue_buff_free 
+03fa c06103fc beq cmd_ota_exit ,p_g24_ota_exit_process 
+03fb 20600000 rtn 
 
 p_g24_ota_exit_process:
-03cb 58000000 setarg 0 
-03cc 600148eb store 2 ,mem_24g_ota_sta_pid 
-03cd 6000c8b8 store 1 ,mem_24g_ackpayload_enable 
-03ce 2040016c call p_g24_queue_init 
-03cf 6800c884 fetch 1 ,mem_24g_rxdata_temp + 7 
-03d0 c02a83d3 beq ota_sta_success ,p_g24_ota_exit_success 
-03d1 c05503d5 beq ota_sta_fail ,p_g24_ota_exit_fail 
-03d2 20600000 rtn 
+03fc 58000000 setarg 0 
+03fd 600148eb store 2 ,mem_24g_ota_sta_pid 
+03fe 6000c8b8 store 1 ,mem_24g_ackpayload_enable 
+03ff 20400184 call p_g24_queue_init 
+0400 6800c884 fetch 1 ,mem_24g_rxdata_temp + 7 
+0401 c02a8404 beq ota_sta_success ,p_g24_ota_exit_success 
+0402 c0550406 beq ota_sta_fail ,p_g24_ota_exit_fail 
+0403 20600000 rtn 
 
 p_g24_ota_exit_success:
-03d3 700cf702 jam 2 ,mem_usb0_get_report_data + 1 
-03d4 2020303f branch usb0_data_ready_report_set1 
+0404 700cf702 jam 2 ,mem_usb0_get_report_data + 1 
+0405 2020303f branch usb0_data_ready_report_set1 
 
 p_g24_ota_exit_fail:
-03d5 700cf703 jam 3 ,mem_usb0_get_report_data + 1 
-03d6 2020303f branch usb0_data_ready_report_set1 
+0406 700cf703 jam 3 ,mem_usb0_get_report_data + 1 
+0407 2020303f branch usb0_data_ready_report_set1 
 
 p_set_freq_tx:
-03d7 60088017 storet 1 ,mem_last_freq 
-03d8 1840a200 add temp ,0 ,rega 
-03d9 20402981 call rf_write_freq 
-03da 58000500 setarg param_pll_setup 
-03db 20402a8f call sleep 
+0408 60088017 storet 1 ,mem_last_freq 
+0409 1840a200 add temp ,0 ,rega 
+040a 20402981 call rf_write_freq 
+040b 58000500 setarg param_pll_setup 
+040c 20402a8f call sleep 
 
 p_rf_tx_enable:
-03dc 70890601 jam 0x1 ,rfen_adc 
-03dd 7089003c jam 0x3c ,rfen_rx 
-03de 708901e0 jam 0xe0 ,rfen_tx 
-03df 2000000a nop 10 
-03e0 70890201 jam 0x01 ,rfen_mdm 
-03e1 7089023d jam 0x3d ,rfen_mdm 
-03e2 2000000a nop 10 
-03e3 708903b7 jam 0xb7 ,rfen_sn 
-03e4 2000000a nop 10 
-03e5 7089027d jam 0x7d ,rfen_mdm 
-03e6 6800c1de fetch 1 ,mem_tx_power 
-03e7 c00203f0 beq tx_power_f5db ,p_set_tx_power_f5db 
-03e8 202003e9 branch p_set_tx_power_5db 
+040d 70890601 jam 0x1 ,rfen_adc 
+040e 7089003c jam 0x3c ,rfen_rx 
+040f 708901e0 jam 0xe0 ,rfen_tx 
+0410 2000000a nop 10 
+0411 70890201 jam 0x01 ,rfen_mdm 
+0412 7089023d jam 0x3d ,rfen_mdm 
+0413 2000000a nop 10 
+0414 708903b7 jam 0xb7 ,rfen_sn 
+0415 2000000a nop 10 
+0416 7089027d jam 0x7d ,rfen_mdm 
+0417 6800c1de fetch 1 ,mem_tx_power 
+0418 c0020421 beq tx_power_f5db ,p_set_tx_power_f5db 
+0419 2020041a branch p_set_tx_power_5db 
 
 p_set_tx_power_5db:
-03e9 70894bba jam 0xba ,0x894b 
-03ea 708955d0 jam 0xd0 ,0x8955 
-03eb 708956e0 jam 0xe0 ,0x8956 
-03ec 70895788 jam 0x88 ,0x8957 
-03ed 7089583c jam 0x3c ,0x8958 
-03ee 70895910 jam 0x10 ,0x8959 
-03ef 20202953 branch set_tx_power_5db 
+041a 70894bba jam 0xba ,0x894b 
+041b 708955d0 jam 0xd0 ,0x8955 
+041c 708956e0 jam 0xe0 ,0x8956 
+041d 70895788 jam 0x88 ,0x8957 
+041e 7089583c jam 0x3c ,0x8958 
+041f 70895910 jam 0x10 ,0x8959 
+0420 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-03f0 70894bba jam 0xba ,0x894b 
-03f1 708955d0 jam 0xd0 ,0x8955 
-03f2 708956c0 jam 0xc0 ,0x8956 
-03f3 70895788 jam 0x88 ,0x8957 
-03f4 7089586c jam 0x6c ,0x8958 
-03f5 70895910 jam 0x10 ,0x8959 
-03f6 2020295b branch set_tx_power_f5db 
+0421 70894bba jam 0xba ,0x894b 
+0422 708955d0 jam 0xd0 ,0x8955 
+0423 708956c0 jam 0xc0 ,0x8956 
+0424 70895788 jam 0x88 ,0x8957 
+0425 7089586c jam 0x6c ,0x8958 
+0426 70895910 jam 0x10 ,0x8959 
+0427 2020295b branch set_tx_power_f5db 
 
 p_soft_reset:
-03f7 20800000 clear_stack 
-03f8 68108043 hfetch 1 ,core_config 
-03f9 79207e03 set1 watchdog_bit ,pdata 
-03fa 60108043 hstore 1 ,core_config 
-03fb 2040640d call spi_ncs_gpio_init 
-03fc 70895b86 jam 0x86 ,0x895b 
-03fd 70895ca0 jam 0xa0 ,0x895c 
-03fe 20202004 branch soft_reset + 3 
+0428 20800000 clear_stack 
+0429 68108043 hfetch 1 ,core_config 
+042a 79207e03 set1 watchdog_bit ,pdata 
+042b 60108043 hstore 1 ,core_config 
+042c 2040640d call spi_ncs_gpio_init 
+042d 70895b86 jam 0x86 ,0x895b 
+042e 70895ca0 jam 0xa0 ,0x895c 
+042f 20202004 branch soft_reset + 3 
 
 p_shutdown_radio:
-03ff 18002a08 force 8 ,radio_ctrl 
-0400 202028fa branch shutdown_radio + 1 
+0430 18002a08 force 8 ,radio_ctrl 
+0431 202028fa branch shutdown_radio + 1 
 
 p_rssi_noise:
-0401 204029bb call save_rssi 
-0402 207a0000 rtn blank 
-0403 6808c8f0 fetcht 1 ,mem_rssi_noise_index 
-0404 da200d9e arg mem_rssi_noise_buffer ,rega 
-0405 20400408 call p_rssi_store 
-0406 6008c8f0 storet 1 ,mem_rssi_noise_index 
-0407 20600000 rtn 
+0432 204029bb call save_rssi 
+0433 207a0000 rtn blank 
+0434 6808c8f0 fetcht 1 ,mem_rssi_noise_index 
+0435 da200d9e arg mem_rssi_noise_buffer ,rega 
+0436 20400439 call p_rssi_store 
+0437 6008c8f0 storet 1 ,mem_rssi_noise_index 
+0438 20600000 rtn 
 
 p_rssi_store:
-0408 1a227e00 copy rega ,pdata 
-0409 98408a00 iadd temp ,contw 
-040a 68008018 fetch 1 ,mem_rssi 
-040b e0a08000 istore 1 ,contw 
-040c 18408401 increase 1 ,temp 
-040d 184104ff and_into rssi_buf_len_noise ,temp 
-040e 20600000 rtn 
+0439 1a227e00 copy rega ,pdata 
+043a 98408a00 iadd temp ,contw 
+043b 68008018 fetch 1 ,mem_rssi 
+043c e0a08000 istore 1 ,contw 
+043d 18408401 increase 1 ,temp 
+043e 184104ff and_into rssi_buf_len_noise ,temp 
+043f 20600000 rtn 
 
 p_rssi_average:
-040f d8400000 arg 0 ,temp 
-0410 df200100 arg rssi_buf_len_noise + 1 ,loopcnt 
-0411 1a220c00 copy rega ,contr 
-0412 20202e64 branch rssi_average_loop 
-0413 20600000 rtn 
+0440 d8400000 arg 0 ,temp 
+0441 df200100 arg rssi_buf_len_noise + 1 ,loopcnt 
+0442 1a220c00 copy rega ,contr 
+0443 20202e64 branch rssi_average_loop 
+0444 20600000 rtn 
 
 p_g24_update_addr_and_synccrc8:
-0414 6002485e store 4 ,mem_24g_addr 
+0445 6002485e store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
-0415 da200000 arg 0 ,rega 
-0416 df200004 arg 4 ,loopcnt 
-0417 d8c0485e arg mem_24g_addr ,contr 
+0446 da200000 arg 0 ,rega 
+0447 df200004 arg 4 ,loopcnt 
+0448 d8c0485e arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
-0418 e8c08000 ifetch 1 ,contr 
-0419 9a20a200 iadd rega ,rega 
-041a c2000418 loop p_g24_syncword_crc8_loop 
-041b 1a227e00 copy rega ,pdata 
-041c 600148e7 store 2 ,mem_24g_syncword 
-041d 6800c8e7 fetch 1 ,mem_24g_syncword 
-041e 6808c8e8 fetcht 1 ,mem_24g_syncword + 1 
-041f 9840fe00 iadd temp ,pdata 
-0420 6000c8e9 store 1 ,mem_24g_syncword_crc8 
-0421 20600000 rtn 
+0449 e8c08000 ifetch 1 ,contr 
+044a 9a20a200 iadd rega ,rega 
+044b c2000449 loop p_g24_syncword_crc8_loop 
+044c 1a227e00 copy rega ,pdata 
+044d 600148e7 store 2 ,mem_24g_syncword 
+044e 6800c8e7 fetch 1 ,mem_24g_syncword 
+044f 6808c8e8 fetcht 1 ,mem_24g_syncword + 1 
+0450 9840fe00 iadd temp ,pdata 
+0451 6000c8e9 store 1 ,mem_24g_syncword_crc8 
+0452 20600000 rtn 
 
 p_g24_transmit_prep:
-0422 6800c836 fetch 1 ,mem_24g_datalen 
-0423 1fe0fe02 increase 2 ,pdata 
-0424 6000c838 store 1 ,mem_24g_txlen 
-0425 6800c837 fetch 1 ,mem_24g_data_type 
-0426 6000c7f2 store 1 ,mem_24g_txpayload 
-0427 6800c836 fetch 1 ,mem_24g_datalen 
-0428 1fe9fe00 lshift3 pdata ,pdata 
-0429 6808c835 fetcht 1 ,mem_24g_pid 
-042a 18410403 and temp ,0x03 ,temp 
-042b 18438400 lshift temp ,temp 
-042c 9841fe00 ior temp ,pdata 
-042d 6808c872 fetcht 1 ,mem_24g_no_ack 
-042e 9840fe00 iadd temp ,pdata 
-042f e0a08000 istore 1 ,contw 
-0430 6800c836 fetch 1 ,mem_24g_datalen 
-0431 98007200 iforce loopcnt 
-0432 d8c047d2 arg mem_24g_txbuf ,contr 
-0433 20207f01 branch memcpy 
+0453 6800c836 fetch 1 ,mem_24g_datalen 
+0454 1fe0fe02 increase 2 ,pdata 
+0455 6000c838 store 1 ,mem_24g_txlen 
+0456 6800c837 fetch 1 ,mem_24g_data_type 
+0457 6000c7f2 store 1 ,mem_24g_txpayload 
+0458 6800c836 fetch 1 ,mem_24g_datalen 
+0459 1fe9fe00 lshift3 pdata ,pdata 
+045a 6808c835 fetcht 1 ,mem_24g_pid 
+045b 18410403 and temp ,0x03 ,temp 
+045c 18438400 lshift temp ,temp 
+045d 9841fe00 ior temp ,pdata 
+045e 6808c872 fetcht 1 ,mem_24g_no_ack 
+045f 9840fe00 iadd temp ,pdata 
+0460 e0a08000 istore 1 ,contw 
+0461 6800c836 fetch 1 ,mem_24g_datalen 
+0462 98007200 iforce loopcnt 
+0463 d8c047d2 arg mem_24g_txbuf ,contr 
+0464 20207f01 branch memcpy 
 
 p_g24_ch:
-0434 6808c841 fetcht 1 ,mem_24g_current_ch_number 
-0435 20400438 call p_g24_ch_map_size 
-0436 6008c841 storet 1 ,mem_24g_current_ch_number 
-0437 20600000 rtn 
+0465 6808c841 fetcht 1 ,mem_24g_current_ch_number 
+0466 20400469 call p_g24_ch_map_size 
+0467 6008c841 storet 1 ,mem_24g_current_ch_number 
+0468 20600000 rtn 
 
 p_g24_ch_map_size:
-0438 2040043c call p_g24_ch_calc 
-0439 18408401 increase 1 ,temp 
-043a 18410403 and_into 3 ,temp 
-043b 20600000 rtn 
+0469 2040046d call p_g24_ch_calc 
+046a 18408401 increase 1 ,temp 
+046b 18410403 and_into 3 ,temp 
+046c 20600000 rtn 
 
 p_g24_ch_calc:
-043c 6800c85e fetch 1 ,mem_24g_addr 
-043d 1fe17e03 and_into 0x03 ,pdata 
-043e 1fefa204 mul32 pdata ,4 ,rega 
-043f 58004847 setarg mem_24g_ch_map1 
-0440 9a20fe00 iadd rega ,pdata 
-0441 98408c00 iadd temp ,contr 
-0442 e8c08000 ifetch 1 ,contr 
-0443 6000c840 store 1 ,mem_24g_ch 
-0444 20600000 rtn 
+046d 6800c85e fetch 1 ,mem_24g_addr 
+046e 1fe17e03 and_into 0x03 ,pdata 
+046f 1fefa204 mul32 pdata ,4 ,rega 
+0470 58004847 setarg mem_24g_ch_map1 
+0471 9a20fe00 iadd rega ,pdata 
+0472 98408c00 iadd temp ,contr 
+0473 e8c08000 ifetch 1 ,contr 
+0474 6000c840 store 1 ,mem_24g_ch 
+0475 20600000 rtn 
 
 p_g24_prep:
-0445 7844fc00 disable enable_crc 
-0446 7843fc00 disable enable_white 
-0447 58555555 setarg 0x555555 
-0448 98001e00 iforce crc24_init 
-0449 6800c840 fetch 1 ,mem_24g_ch 
-044a 1fed8400 reverse pdata ,temp 
-044b 79200401 set1 1 ,temp 
-044c 18431c00 rshift temp ,white_init 
-044d 20600000 rtn 
+0476 7844fc00 disable enable_crc 
+0477 7843fc00 disable enable_white 
+0478 58555555 setarg 0x555555 
+0479 98001e00 iforce crc24_init 
+047a 6800c840 fetch 1 ,mem_24g_ch 
+047b 1fed8400 reverse pdata ,temp 
+047c 79200401 set1 1 ,temp 
+047d 18431c00 rshift temp ,white_init 
+047e 20600000 rtn 
 
 p_g24_receive_packet:
-044e 204053c4 call le_enable 
-044f 6802485e fetch 4 ,mem_24g_addr 
-0450 98001200 iforce access 
-0451 20402918 call set_sync_on 
-0452 6808c840 fetcht 1 ,mem_24g_ch 
-0453 2040291f call set_freq_rx 
-0454 58000500 setarg param_pll_setup 
-0455 20402a8f call sleep 
-0456 20402924 call rf_rx_enable 
+047f 204053c4 call le_enable 
+0480 6802485e fetch 4 ,mem_24g_addr 
+0481 98001200 iforce access 
+0482 20402918 call set_sync_on 
+0483 6808c840 fetcht 1 ,mem_24g_ch 
+0484 2040291f call set_freq_rx 
+0485 58000500 setarg param_pll_setup 
+0486 20402a8f call sleep 
+0487 20402924 call rf_rx_enable 
 
 p_g24_receive_rxon:
-0457 20400445 call p_g24_prep 
-0458 7857fc00 disable user3 
-0459 7826fc00 enable decode_fec0 
-045a 7830fc00 enable is_rx 
-045b 78507c00 disable is_tx 
-045c 78287c00 enable swfine 
-045d 68014839 fetch 2 ,mem_24g_rx_window 
-045e 98003600 iforce stop_watch 
-045f 37c18400 correlate null ,timeout 
-0460 242c0493 nbranch p_g24_sync_timeout ,sync 
-0461 7846fc00 disable decode_fec0 
-0462 7825fc00 enable decode_fec1 
-0463 7823fc00 enable enable_white 
-0464 7824fc00 enable enable_crc 
-0465 09800008 parse demod ,bucket ,8 
-0466 19897e00 rshift3 pwindow ,pdata 
-0467 6000c8ea store 1 ,mem_24g_get_syncword_crc8 
-0468 6808c8e9 fetcht 1 ,mem_24g_syncword_crc8 
-0469 98467c00 isub temp ,null 
-046a 24228490 nbranch p_g24_end_of_packet ,zero 
-046b 09800008 parse demod ,bucket ,8 
-046c 19897e00 rshift3 pwindow ,pdata 
-046d 6000c7b0 store 1 ,mem_24g_rxbuf 
-046e 6800c87c fetch 1 ,mem_24g_mode 
-046f 1fe67c02 sub pdata ,rx_24g ,null 
-0470 20228475 branch p_g24_receive_skip ,zero 
-0471 6800c7b0 fetch 1 ,mem_24g_rxbuf 
-0472 6808c837 fetcht 1 ,mem_24g_data_type 
-0473 a8400e00 icompare bits_data ,temp 
-0474 24208490 nbranch p_g24_end_of_packet ,true 
+0488 20400476 call p_g24_prep 
+0489 7857fc00 disable user3 
+048a 7826fc00 enable decode_fec0 
+048b 7830fc00 enable is_rx 
+048c 78507c00 disable is_tx 
+048d 78287c00 enable swfine 
+048e 68014839 fetch 2 ,mem_24g_rx_window 
+048f 98003600 iforce stop_watch 
+0490 37c18400 correlate null ,timeout 
+0491 242c04c4 nbranch p_g24_sync_timeout ,sync 
+0492 7846fc00 disable decode_fec0 
+0493 7825fc00 enable decode_fec1 
+0494 7823fc00 enable enable_white 
+0495 7824fc00 enable enable_crc 
+0496 09800008 parse demod ,bucket ,8 
+0497 19897e00 rshift3 pwindow ,pdata 
+0498 6000c8ea store 1 ,mem_24g_get_syncword_crc8 
+0499 6808c8e9 fetcht 1 ,mem_24g_syncword_crc8 
+049a 98467c00 isub temp ,null 
+049b 242284c1 nbranch p_g24_end_of_packet ,zero 
+049c 09800008 parse demod ,bucket ,8 
+049d 19897e00 rshift3 pwindow ,pdata 
+049e 6000c7b0 store 1 ,mem_24g_rxbuf 
+049f 6800c87c fetch 1 ,mem_24g_mode 
+04a0 1fe67c02 sub pdata ,rx_24g ,null 
+04a1 202284a6 branch p_g24_receive_skip ,zero 
+04a2 6800c7b0 fetch 1 ,mem_24g_rxbuf 
+04a3 6808c837 fetcht 1 ,mem_24g_data_type 
+04a4 a8400e00 icompare bits_data ,temp 
+04a5 242084c1 nbranch p_g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-0475 09800008 parse demod ,bucket ,8 
-0476 19897e00 rshift3 pwindow ,pdata 
-0477 e0a08000 istore 1 ,contw 
-0478 1fe97e00 rshift3 pdata ,pdata 
-0479 1fe1721f and pdata ,0x1f ,loopcnt 
-047a 2022847f branch p_g24rx_nopayload ,zero 
+04a6 09800008 parse demod ,bucket ,8 
+04a7 19897e00 rshift3 pwindow ,pdata 
+04a8 e0a08000 istore 1 ,contw 
+04a9 1fe97e00 rshift3 pdata ,pdata 
+04aa 1fe1721f and pdata ,0x1f ,loopcnt 
+04ab 202284b0 branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-047b 09800008 parse demod ,bucket ,8 
-047c 19897e00 rshift3 pwindow ,pdata 
-047d e0a08000 istore 1 ,contw 
-047e c200047b loop p_g24rx_loop 
+04ac 09800008 parse demod ,bucket ,8 
+04ad 19897e00 rshift3 pwindow ,pdata 
+04ae e0a08000 istore 1 ,contw 
+04af c20004ac loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-047f 09800018 parse demod ,bucket ,24 
-0480 78287c00 enable swfine 
-0481 db600664 arg param_sifs ,stop_watch 
-0482 1fef7e00 rshift32 pdata ,pdata 
-0483 1ff17e00 rshift16 pdata ,pdata 
-0484 e0a18000 istore 3 ,contw 
-0485 7845fc00 disable decode_fec1 
-0486 204029bb call save_rssi 
-0487 20230490 branch p_g24_end_of_packet ,crc_failed 
-0488 7837fc00 enable user3 
-0489 68008017 fetch 1 ,mem_last_freq 
-048a 1fe0a200 add pdata ,0 ,rega 
-048b 20402981 call rf_write_freq 
-048c 7846fc00 disable decode_fec0 
-048d 20402918 call set_sync_on 
-048e 20600000 rtn 
-048f 20600000 rtn 
+04b0 09800018 parse demod ,bucket ,24 
+04b1 78287c00 enable swfine 
+04b2 db600664 arg param_sifs ,stop_watch 
+04b3 1fef7e00 rshift32 pdata ,pdata 
+04b4 1ff17e00 rshift16 pdata ,pdata 
+04b5 e0a18000 istore 3 ,contw 
+04b6 7845fc00 disable decode_fec1 
+04b7 204029bb call save_rssi 
+04b8 202304c1 branch p_g24_end_of_packet ,crc_failed 
+04b9 7837fc00 enable user3 
+04ba 68008017 fetch 1 ,mem_last_freq 
+04bb 1fe0a200 add pdata ,0 ,rega 
+04bc 20402981 call rf_write_freq 
+04bd 7846fc00 disable decode_fec0 
+04be 20402918 call set_sync_on 
+04bf 20600000 rtn 
+04c0 20600000 rtn 
 
 p_g24_end_of_packet:
-0490 784dfc00 disable encode_fec1 
-0491 7845fc00 disable decode_fec1 
-0492 2020264d branch end_of_packet 
+04c1 784dfc00 disable encode_fec1 
+04c2 7845fc00 disable decode_fec1 
+04c3 2020264d branch end_of_packet 
 
 p_g24_sync_timeout:
-0493 20400401 call p_rssi_noise 
-0494 20200490 branch p_g24_end_of_packet 
+04c4 20400432 call p_rssi_noise 
+04c5 202004c1 branch p_g24_end_of_packet 
 
 p_g24_set_freq_tx:
-0495 20402918 call set_sync_on 
-0496 6808c840 fetcht 1 ,mem_24g_ch 
-0497 20202933 branch set_freq_tx 
+04c6 20402918 call set_sync_on 
+04c7 6808c840 fetcht 1 ,mem_24g_ch 
+04c8 20202933 branch set_freq_tx 
 
 p_g24_transmit:
-0498 204053c4 call le_enable 
-0499 6802485e fetch 4 ,mem_24g_addr 
-049a 98001200 iforce access 
-049b 20400445 call p_g24_prep 
-049c 20400495 call p_g24_set_freq_tx 
-049d 79202a00 set1 txgfsk ,radio_ctrl 
-049e 782efc00 enable encode_fec0 
-049f 78307c00 enable is_tx 
-04a0 7850fc00 disable is_rx 
-04a1 19317e00 rshift16 access ,pdata 
-04a2 1fecfe00 rshift8 pdata ,pdata 
-04a3 1ff1fe00 rshift4 pdata ,pdata 
-04a4 08008628 inject mod ,40 
-04a5 784efc00 disable encode_fec0 
-04a6 782dfc00 enable encode_fec1 
-04a7 7823fc00 enable enable_white 
-04a8 7824fc00 enable enable_crc 
-04a9 6800c8e9 fetch 1 ,mem_24g_syncword_crc8 
-04aa 08008608 inject mod ,8 
-04ab 6800c838 fetch 1 ,mem_24g_txlen 
-04ac 98007200 iforce loopcnt 
-04ad d8c047f2 arg mem_24g_txpayload ,contr 
+04c9 204053c4 call le_enable 
+04ca 6802485e fetch 4 ,mem_24g_addr 
+04cb 98001200 iforce access 
+04cc 20400476 call p_g24_prep 
+04cd 204004c6 call p_g24_set_freq_tx 
+04ce 79202a00 set1 txgfsk ,radio_ctrl 
+04cf 782efc00 enable encode_fec0 
+04d0 78307c00 enable is_tx 
+04d1 7850fc00 disable is_rx 
+04d2 19317e00 rshift16 access ,pdata 
+04d3 1fecfe00 rshift8 pdata ,pdata 
+04d4 1ff1fe00 rshift4 pdata ,pdata 
+04d5 08008628 inject mod ,40 
+04d6 784efc00 disable encode_fec0 
+04d7 782dfc00 enable encode_fec1 
+04d8 7823fc00 enable enable_white 
+04d9 7824fc00 enable enable_crc 
+04da 6800c8e9 fetch 1 ,mem_24g_syncword_crc8 
+04db 08008608 inject mod ,8 
+04dc 6800c838 fetch 1 ,mem_24g_txlen 
+04dd 98007200 iforce loopcnt 
+04de d8c047f2 arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
-04ae e8c08000 ifetch 1 ,contr 
-04af 08008608 inject mod ,8 
-04b0 c20004ae loop p_g24tr_loop 
-04b1 6800c8ee fetch 1 ,mem_rssi_hex 
-04b2 08008608 inject mod ,8 
-04b3 78247c00 enable enable_parity 
-04b4 08008618 inject mod ,24 
-04b5 78447c00 disable enable_parity 
-04b6 37d38200 until null ,tx_clear 
-04b7 20000064 nop 100 
-04b8 784efc00 disable encode_fec0 
-04b9 784dfc00 disable encode_fec1 
-04ba 20600000 rtn 
+04df e8c08000 ifetch 1 ,contr 
+04e0 08008608 inject mod ,8 
+04e1 c20004df loop p_g24tr_loop 
+04e2 6800c8ee fetch 1 ,mem_rssi_hex 
+04e3 08008608 inject mod ,8 
+04e4 78247c00 enable enable_parity 
+04e5 08008618 inject mod ,24 
+04e6 78447c00 disable enable_parity 
+04e7 37d38200 until null ,tx_clear 
+04e8 20000064 nop 100 
+04e9 784efc00 disable encode_fec0 
+04ea 784dfc00 disable encode_fec1 
+04eb 20600000 rtn 
               org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/LeXiang/24M_dongle/program/patch.prog	(revision 3640)
+++ /branch/mouse_project/LeXiang/24M_dongle/program/patch.prog	(working copy)
@@ -111,23 +111,61 @@
 	hfetch 1,core_usb_ep_len
 	store 1,mem_usb_read_len
 	copy pdata,loopcnt
-	branch usb_rx_no_data,blank
+	branch p_usb_rx_no_data,blank
 	arg mem_usb_setup,contw
 	call usb_rx_read
 	fetch 1,mem_usb_read_len
+	beq 0x01,p_usb_out_one_byte	// HUAWEI pad led status
 	sub pdata,7,null
-	rtn positive 
+	rtn positive
+p_usb_class_type:	
 	fetch 1,mem_usb_setup_bmRequestType
 	and_into 0x80,pdata
 	beq OUT_DEVICE,p_usb_out_device
 	branch usb_class_type+2
+
+p_usb_rx_no_data:
+	fetch 1,mem_usb_status
+	bbit1 USB_STATUS_SETUP,p_usb_class_type
+	rtn
+
+p_usb_out_one_byte:
+	fetch 1,mem_usb_setup
+	rtnbit1 7	// OUT_DEVICE
+	call p_usb_get_led_status
+	branch usb0_reply_zerolen
+
+	
 p_usb_out_device:
 	fetch 1,mem_usb_setup_bmRequestType
 	rshift4 pdata,pdata
 	rshift pdata,pdata
 	and_into 0x03,pdata
-	beq CLASS_REQ,p_usb_out_class_req	
+	beq STANDARD_REQ,p_usb_out_standard_req
+	beq CLASS_REQ,p_usb_out_class_req
 	branch usb_out_device+4
+
+p_usb_out_standard_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq SET_FEATURE,p_usb0_request_set_feature
+	branch usb_out_standard_req+1
+
+p_usb0_request_set_feature:
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq OUT_DEVICE,p_usb0_request_set_feature_out_device
+	branch usb0_request_set_feature+5
+
+
+p_usb0_request_set_feature_out_device:
+	fetch 1,mem_usb_setup_bValue
+	bne DEVICE_REMOTE_WAKEUP,usb0_force_stall
+	jam 3,mem_24g_pc_sleep_flag
+	branch usb0_request_set_feature_out_device+2
+	
 p_usb_out_class_req:
 	fetch 1,mem_usb_setup_bRequest
 	beq SET_REPORT,p_usb_set_report
@@ -150,7 +188,9 @@
 
 p_usb_get_output_data:
 	fetch 1,mem_usb0_setup
+p_usb_get_led_status:
 	store 1,mem_24g_led_status
+	jam 0,mem_usb_tx_win_enable
 	jam KB_LED_ACKPAYLOAD,mem_24g_ackpayload_enable
 	rtn
 
@@ -532,7 +572,8 @@
 
 p_dongle_usb_dispatch:
 	jam 0xff,core_write_watchdog
-
+	fetch 1,mem_usb_remote_wakeup
+	call p_g24_clear_pc_sleep_flag,blank
 	call usb_isr
 	fetch 1,mem_usb0_get_set_report
 	rtn blank
@@ -725,6 +766,8 @@
 	branch p_g24_timer_init
 
 p_g24_mode_switch_2:
+	fetch 1,mem_dongle_work_mode
+	rtneq DONGLE_WORK
 	fetch 1,mem_24g_mode_switch_exit_2
 	nrtn blank
 	fetch 1,mem_24g_mode_switch_2
@@ -740,7 +783,7 @@
 	branch p_g24_mode_switch_exit_2,positive
 
 	call p_g24_work_mode_delay
-
+	
 	fetch 1,mem_24g_time_slice_2
 	increase 1,pdata
 	and_into 1,pdata
@@ -1014,6 +1057,23 @@
 
 p_g24_ackpayload_prep:
 	jam 0,mem_24g_datalen
+	fetch 1,mem_24g_data_type
+	beq 0x01,p_g24_ackpayload_prep_mouse
+	beq 0x02,p_g24_ackpayload_prep_keyboard
+p_g24_ackpayload_prep_mouse:
+	fetch 1,mem_24g_pc_sleep_flag
+	bbit1 0,p_g24_pc_sleep_ackpayload_prep_mouse
+	branch p_g24_ackpayload_prep_end
+
+p_g24_clear_pc_sleep_flag:
+	jam 0,mem_24g_pc_sleep_flag
+	rtn
+
+
+p_g24_ackpayload_prep_keyboard:
+	fetch 1,mem_24g_pc_sleep_flag
+	bbit1 1,p_g24_pc_sleep_ackpayload_prep_keyboard
+p_g24_ackpayload_prep_end:
 	fetch 1,mem_24g_ackpayload_enable
 	rtn blank
 	beq BIND_ACKPAYLOAD,p_g24_bind_ackpayload_prep
@@ -1021,6 +1081,22 @@
 	beq KB_LED_ACKPAYLOAD,p_g24_kb_led_ackpayload_prep
 	rtn
 
+p_g24_pc_sleep_ackpayload_prep_mouse:
+	fetch 1,mem_24g_pc_sleep_flag
+	set0 0,pdata
+	store 1,mem_24g_pc_sleep_flag
+	branch p_g24_pc_sleep_ackpayload_prep
+
+p_g24_pc_sleep_ackpayload_prep_keyboard:
+	fetch 1,mem_24g_pc_sleep_flag
+	set0 1,pdata
+	store 1,mem_24g_pc_sleep_flag
+p_g24_pc_sleep_ackpayload_prep:
+	jam 0x01,mem_24g_datalen
+	setarg 0xff
+	store 1,mem_24g_txbuf
+	rtn
+
 p_g24_bind_ackpayload_prep:
 	jam 1,mem_24g_ackpayload_enable
 	call p_g24_dongle_binding_device_check	//works on auto pair only
